Alpha RPCs - Reference

Alpha RPCs - Reference#

This page describes the RPCs specific to the particular version of the Tezos protocol specified above. (The protocol-independent RPCs are described in this other page.)

Warning

This list could be missing RPC endpoints. The OpenAPI specification may be used to retrieve the complete list of protocol RPCs and their associated schemas (search the .json files that are linked from that page).

Note that the RPCs served under a given prefix can also be listed using the client, e.g.:

octez-client rpc list /chains/main/blocks/head/context/constants

Any RPC endpoint may also be described, using the describe RPC to retrieve all JSON and binary schemas, e.g.:

octez-client rpc get /describe/chains/main/blocks/head/context/constants

Note

The protocol-specific RPCs are all served under the prefix /chains/<chain_id>/blocks/<block_id>/. To make the RPC reference more readable, this prefix is not repeated every time below, but instead shortened as ../<block_id>.

The <block_id> can be:

  1. Block-hash - Hash in Base58Check notation.

  2. Alias - One of the following: genesis / head / caboose / savepoint / checkpoint.

  3. Block-level - as an integer

    One can also specify the relative positions of the block with respect to the above block identifiers. For ex. head~N or <Block-hash>+N, where N is an integer, denotes the Nth block before (~) or after (+) the given block identifier, respectively.

Index#

  • ../<block_id> (GET)

    • ../<block_id>/context

      • ../<block_id>/context/adaptive_issuance_launch_cycle (GET)

      • ../<block_id>/context/cache

        • ../<block_id>/context/cache/contracts

          • ../<block_id>/context/cache/contracts/all (GET)

          • ../<block_id>/context/cache/contracts/rank (POST)

          • ../<block_id>/context/cache/contracts/size (GET)

          • ../<block_id>/context/cache/contracts/size_limit (GET)

      • ../<block_id>/context/constants (GET)

        • ../<block_id>/context/constants/errors (GET)

        • ../<block_id>/context/constants/parametric (GET)

      • ../<block_id>/context/denunciations (GET)

      • ../<block_id>/context/issuance

        • ../<block_id>/context/issuance/current_yearly_rate (GET)

        • ../<block_id>/context/issuance/current_yearly_rate_details (GET)

        • ../<block_id>/context/issuance/current_yearly_rate_exact (GET)

        • ../<block_id>/context/issuance/expected_issuance (GET)

        • ../<block_id>/context/issuance/issuance_per_minute (GET)

      • ../<block_id>/context/liquidity_baking

        • ../<block_id>/context/liquidity_baking/cpmm_address (GET)

      • ../<block_id>/context/merkle_tree (GET)

      • ../<block_id>/context/merkle_tree_v2 (GET)

      • ../<block_id>/context/nonces

        • ../<block_id>/context/nonces/<block_level> (GET)

      • ../<block_id>/context/raw

        • ../<block_id>/context/raw/bytes (GET)

        • ../<block_id>/context/raw/json (<dyn>)

      • ../<block_id>/context/sapling

        • ../<block_id>/context/sapling/<sapling_state_id>

          • ../<block_id>/context/sapling/<sapling_state_id>/get_diff (GET)

      • ../<block_id>/context/seed (POST)

      • ../<block_id>/context/seed_computation (GET)

      • ../<block_id>/context/total_frozen_stake (GET)

      • ../<block_id>/context/total_supply (GET)

    • ../<block_id>/hash (GET)

    • ../<block_id>/header (GET)

      • ../<block_id>/header/protocol_data (GET)

        • ../<block_id>/header/protocol_data/raw (GET)

      • ../<block_id>/header/raw (GET)

      • ../<block_id>/header/shell (GET)

    • ../<block_id>/helpers

      • ../<block_id>/helpers/complete

        • ../<block_id>/helpers/complete/<prefix> (GET)

      • ../<block_id>/helpers/forge_block_header (POST)

      • ../<block_id>/helpers/preapply

        • ../<block_id>/helpers/preapply/block (POST)

        • ../<block_id>/helpers/preapply/operations (POST)

    • ../<block_id>/live_blocks (GET)

    • ../<block_id>/metadata (GET)

    • ../<block_id>/metadata_hash (GET)

    • ../<block_id>/operation_hashes (GET)

      • ../<block_id>/operation_hashes/<list_offset> (GET)

        • ../<block_id>/operation_hashes/<list_offset>/<operation_offset> (GET)

    • ../<block_id>/operation_metadata_hashes (GET)

      • ../<block_id>/operation_metadata_hashes/<list_offset> (GET)

        • ../<block_id>/operation_metadata_hashes/<list_offset>/<operation_offset> (GET)

    • ../<block_id>/operations (GET)

      • ../<block_id>/operations/<list_offset> (GET)

        • ../<block_id>/operations/<list_offset>/<operation_offset> (GET)

    • ../<block_id>/operations_metadata_hash (GET)

    • ../<block_id>/protocols (GET)

    • ../<block_id>/resulting_context_hash (GET)

    • ../<block_id>/votes

      • ../<block_id>/votes/ballot_list (GET)

      • ../<block_id>/votes/ballots (GET)

      • ../<block_id>/votes/current_period (GET)

      • ../<block_id>/votes/current_proposal (GET)

      • ../<block_id>/votes/current_quorum (GET)

      • ../<block_id>/votes/listings (GET)

      • ../<block_id>/votes/proposal_count

        • ../<block_id>/votes/proposal_count/<pkh> (GET)

      • ../<block_id>/votes/proposals (GET)

      • ../<block_id>/votes/successor_period (GET)

      • ../<block_id>/votes/total_voting_power (GET)

Full description#

GET ../<block_id>?[version=<version>]&[force_metadata]&[metadata=<metadata_rpc_arg>]

All the information about a block. The associated metadata may not be present depending on the history mode and block's distance from the head.

Optional query arguments :

  • version = <version>
  • force_metadata : DEPRECATED: Forces to recompute the operations metadata if it was considered as too large.
  • metadata = <metadata_rpc_arg> : Specifies whether or not if the operations metadata should be returned. To get the metadata, even if it is needed to recompute them, use "always". To avoid getting the metadata, use "never". By default, the metadata will be returned depending on the node's metadata size limit policy.

  { /* block_info_encoding_v1 */
    "protocol": "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK",
    "chain_id": $Chain_id,
    "hash": $block_hash,
    "header": $raw_block_header,
    "metadata"?: $block_header_metadata,
    "operations": [ [ $operation ... ] ... ] }
  $Blinded public key hash:
    /* A blinded public key hash (Base58Check-encoded) */
    $unistring
  $Chain_id:
    /* Network identifier (Base58Check-encoded) */
    $unistring
  $Context_hash:
    /* A hash of context (Base58Check-encoded) */
    $unistring
  $DAL_commitment:
    /* Commitment representation for the DAL (Base58Check-encoded) */
    $unistring
  $Ed25519.Public_key_hash:
    /* An Ed25519 public key hash (Base58Check-encoded) */
    $unistring
  $Operation_hash:
    /* A Tezos operation ID (Base58Check-encoded) */
    $unistring
  $Operation_list_list_hash:
    /* A list of list of operations (Base58Check-encoded) */
    $unistring
  $Protocol_hash:
    /* A Tezos protocol ID (Base58Check-encoded) */
    $unistring
  $Signature.Public_key:
    /* A Ed25519, Secp256k1, or P256 public key (Base58Check-encoded) */
    $unistring
  $Signature.Public_key_hash:
    /* A Ed25519, Secp256k1, P256, or BLS public key hash
       (Base58Check-encoded) */
    $unistring
  $Signature.V1:
    /* A Ed25519, Secp256k1, P256 or BLS signature (Base58Check-encoded) */
    $unistring
  $Zk_rollup_hash:
    /* A zk rollup address (Base58Check-encoded) */
    $unistring
  $alpha.adaptive_issuance_vote: "on" || "off" || "pass"
  $alpha.apply_internal_results.alpha.operation_result:
    { /* transaction */
      "kind": "transaction",
      "source": $alpha.transaction_destination,
      "nonce": integer ∈ [0, 2^16-1],
      "amount": $alpha.mutez,
      "destination": $alpha.transaction_destination,
      "parameters"?: { "entrypoint": $alpha.entrypoint,
                       "value": any },
      "result": $alpha.operation.alpha.internal_operation_result.transaction }
    || { /* origination */
         "kind": "origination",
         "source": $alpha.transaction_destination,
         "nonce": integer ∈ [0, 2^16-1],
         "balance": $alpha.mutez,
         "delegate"?: $Signature.Public_key_hash,
         "script": $alpha.scripted.contracts,
         "result":
           $alpha.operation.alpha.internal_operation_result.origination }
    || { /* delegation */
         "kind": "delegation",
         "source": $alpha.transaction_destination,
         "nonce": integer ∈ [0, 2^16-1],
         "delegate"?: $Signature.Public_key_hash,
         "result":
           $alpha.operation.alpha.internal_operation_result.delegation }
    || { /* event */
         "kind": "event",
         "source": $alpha.transaction_destination,
         "nonce": integer ∈ [0, 2^16-1],
         "type": $micheline.alpha.michelson_v1.expression,
         "tag"?: $alpha.entrypoint,
         "payload"?: $micheline.alpha.michelson_v1.expression,
         "result": $alpha.operation.alpha.internal_operation_result.event }
  $alpha.big_map_id:
    /* Big map identifier
       A big map identifier */
    $bignum
  $alpha.block_header.alpha.full_header:
    /* Shell header
       Block header's shell-related content. It contains information such as
       the block level, its predecessor and timestamp. */
    { "level": integer ∈ [-2^31-1, 2^31],
      "proto": integer ∈ [0, 255],
      "predecessor": $block_hash,
      "timestamp": $timestamp.protocol,
      "validation_pass": integer ∈ [0, 255],
      "operations_hash": $Operation_list_list_hash,
      "fitness": $fitness,
      "context": $Context_hash,
      "payload_hash": $value_hash,
      "payload_round": integer ∈ [-2^31-1, 2^31],
      "proof_of_work_nonce": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
      "seed_nonce_hash"?: $cycle_nonce,
      "liquidity_baking_toggle_vote": $alpha.liquidity_baking_vote,
      "adaptive_issuance_vote": $alpha.adaptive_issuance_vote,
      "signature": $Signature.V1 }
  $alpha.bond_id:
    { /* Smart_rollup_bond_id */
      "smart_rollup": $smart_rollup_address }
  $alpha.contract_id:
    /* A contract handle
       A contract notation as given to an RPC or inside scripts. Can be a
       base58 implicit contract hash or a base58 originated contract hash. */
    $unistring
  $alpha.contract_id.originated:
    /* A contract handle -- originated account
       A contract notation as given to an RPC or inside scripts. Can be a
       base58 originated contract hash. */
    $unistring
  $alpha.entrypoint:
    /* entrypoint
       Named entrypoint to a Michelson smart contract */
    "default"
    || "root"
    || "do"
    || "set_delegate"
    || "remove_delegate"
    || "deposit"
    || "stake"
    || "unstake"
    || "finalize_unstake"
    || "set_delegate_parameters"
    || $unistring
    /* named */
  $alpha.error:
    /* The full list of RPC errors would be too long to include.
       It is available at RPC `/errors` (GET).
       Errors specific to protocol Alpha have an id that starts with
       `proto.alpha`. */
    any
  $alpha.frozen_staker:
    /* frozen_staker
       Abstract notion of staker used in operation receipts for frozen
       deposits, either a single staker or all the stakers delegating to some
       delegate. */
    { /* Single */
      "contract": $alpha.contract_id,
      "delegate": $Signature.Public_key_hash }
    || { /* Shared */
         "delegate": $Signature.Public_key_hash }
    || { /* Baker */
         "baker_own_stake": $Signature.Public_key_hash }
    || { /* Baker_edge */
         "baker_edge": $Signature.Public_key_hash }
  $alpha.inlined.attestation:
    /* An operation's shell header. */
    { "branch": $block_hash,
      "operations": $alpha.inlined.attestation_mempool.contents,
      "signature"?: $Signature.V1 }
  $alpha.inlined.attestation_mempool.contents:
    { /* Attestation */
      "kind": "attestation",
      "slot": integer ∈ [0, 2^16-1],
      "level": integer ∈ [0, 2^31],
      "round": integer ∈ [-2^31-1, 2^31],
      "block_payload_hash": $value_hash }
    || { /* Attestation_with_dal */
         "kind": "attestation_with_dal",
         "slot": integer ∈ [0, 2^16-1],
         "level": integer ∈ [0, 2^31],
         "round": integer ∈ [-2^31-1, 2^31],
         "block_payload_hash": $value_hash,
         "dal_attestation": $bignum }
  $alpha.inlined.preattestation:
    /* An operation's shell header. */
    { "branch": $block_hash,
      "operations": $alpha.inlined.preattestation.contents,
      "signature"?: $Signature.V1 }
  $alpha.inlined.preattestation.contents:
    { /* Preattestation */
      "kind": "preattestation",
      "slot": integer ∈ [0, 2^16-1],
      "level": integer ∈ [0, 2^31],
      "round": integer ∈ [-2^31-1, 2^31],
      "block_payload_hash": $value_hash }
  $alpha.lazy_storage_diff:
    [ { /* big_map */
        "kind": "big_map",
        "id": $alpha.big_map_id,
        "diff":
          { /* update */
            "action": "update",
            "updates":
              [ { "key_hash": $script_expr,
                  "key": $micheline.alpha.michelson_v1.expression,
                  "value"?: $micheline.alpha.michelson_v1.expression } ... ] }
          || { /* remove */
               "action": "remove" }
          || { /* copy */
               "action": "copy",
               "source": $alpha.big_map_id,
               "updates":
                 [ { "key_hash": $script_expr,
                     "key": $micheline.alpha.michelson_v1.expression,
                     "value"?: $micheline.alpha.michelson_v1.expression } ... ] }
          || { /* alloc */
               "action": "alloc",
               "updates":
                 [ { "key_hash": $script_expr,
                     "key": $micheline.alpha.michelson_v1.expression,
                     "value"?: $micheline.alpha.michelson_v1.expression } ... ],
               "key_type": $micheline.alpha.michelson_v1.expression,
               "value_type": $micheline.alpha.michelson_v1.expression } }
      || { /* sapling_state */
           "kind": "sapling_state",
           "id": $alpha.sapling_state_id,
           "diff":
             { /* update */
               "action": "update",
               "updates":
                 { "commitments_and_ciphertexts":
                     [ [ $sapling.transaction.commitment,
                         $sapling.transaction.ciphertext ] ... ],
                   "nullifiers": [ $sapling.transaction.nullifier ... ] } }
             || { /* remove */
                  "action": "remove" }
             || { /* copy */
                  "action": "copy",
                  "source": $alpha.sapling_state_id,
                  "updates":
                    { "commitments_and_ciphertexts":
                        [ [ $sapling.transaction.commitment,
                            $sapling.transaction.ciphertext ] ... ],
                      "nullifiers": [ $sapling.transaction.nullifier ... ] } }
             || { /* alloc */
                  "action": "alloc",
                  "updates":
                    { "commitments_and_ciphertexts":
                        [ [ $sapling.transaction.commitment,
                            $sapling.transaction.ciphertext ] ... ],
                      "nullifiers": [ $sapling.transaction.nullifier ... ] },
                  "memo_size": integer ∈ [0, 2^16-1] } } ... ]
  $alpha.liquidity_baking_vote: "on" || "off" || "pass"
  $alpha.michelson.v1.primitives:
    "SHA256"
    | "GT"
    | "RIGHT"
    | "SAPLING_EMPTY_STATE"
    | "False"
    | "RENAME"
    | "CAST"
    | "tx_rollup_l2_address"
    | "PACK"
    | "BYTES"
    | "timestamp"
    | "bls12_381_g2"
    | "Pair"
    | "IF_LEFT"
    | "contract"
    | "mutez"
    | "storage"
    | "PAIR"
    | "view"
    | "UNPACK"
    | "ADD"
    | "DROP"
    | "big_map"
    | "MUL"
    | "NAT"
    | "SELF"
    | "CONTRACT"
    | "CDR"
    | "SAPLING_VERIFY_UPDATE"
    | "pair"
    | "LSL"
    | "int"
    | "operation"
    | "SHA512"
    | "CREATE_ACCOUNT"
    | "BLAKE2B"
    | "SPLIT_TICKET"
    | "LEFT"
    | "never"
    | "unit"
    | "address"
    | "signature"
    | "CHAIN_ID"
    | "constant"
    | "SLICE"
    | "SENDER"
    | "IMPLICIT_ACCOUNT"
    | "key_hash"
    | "AMOUNT"
    | "CHECK_SIGNATURE"
    | "sapling_state"
    | "LT"
    | "EXEC"
    | "Elt"
    | "EMIT"
    | "NONE"
    | "CREATE_CONTRACT"
    | "LSR"
    | "SET_DELEGATE"
    | "OPEN_CHEST"
    | "TRANSFER_TOKENS"
    | "Some"
    | "parameter"
    | "set"
    | "bls12_381_fr"
    | "EDIV"
    | "None"
    | "STEPS_TO_QUOTA"
    | "key"
    | "ABS"
    | "list"
    | "NEVER"
    | "map"
    | "CAR"
    | "IF"
    | "GET_AND_UPDATE"
    | "CONCAT"
    | "LOOP"
    | "DIG"
    | "KECCAK"
    | "Lambda_rec"
    | "SOME"
    | "option"
    | "SUB"
    | "INT"
    | "PUSH"
    | "CONS"
    | "Unit"
    | "ISNAT"
    | "NEG"
    | "XOR"
    | "APPLY"
    | "UNPAIR"
    | "JOIN_TICKETS"
    | "SIZE"
    | "lambda"
    | "AND"
    | "NEQ"
    | "or"
    | "BALANCE"
    | "UNIT"
    | "VOTING_POWER"
    | "OR"
    | "LAMBDA"
    | "chest"
    | "LOOP_LEFT"
    | "True"
    | "Right"
    | "Ticket"
    | "HASH_KEY"
    | "DUG"
    | "sapling_transaction"
    | "SUB_MUTEZ"
    | "EMPTY_BIG_MAP"
    | "MEM"
    | "IF_NONE"
    | "nat"
    | "TOTAL_VOTING_POWER"
    | "LE"
    | "Left"
    | "chest_key"
    | "READ_TICKET"
    | "ticket"
    | "bls12_381_g1"
    | "LEVEL"
    | "VIEW"
    | "string"
    | "PAIRING_CHECK"
    | "LAMBDA_REC"
    | "NOW"
    | "SHA3"
    | "bool"
    | "MIN_BLOCK_TIME"
    | "GET"
    | "bytes"
    | "sapling_transaction_deprecated"
    | "NIL"
    | "IF_CONS"
    | "GE"
    | "NOT"
    | "SWAP"
    | "ITER"
    | "ADDRESS"
    | "TICKET"
    | "DUP"
    | "EMPTY_MAP"
    | "UPDATE"
    | "chain_id"
    | "TICKET_DEPRECATED"
    | "EMPTY_SET"
    | "FAILWITH"
    | "MAP"
    | "SOURCE"
    | "DIP"
    | "COMPARE"
    | "EQ"
    | "SELF_ADDRESS"
    | "code"
  $alpha.mutez: $positive_bignum
  $alpha.operation.alpha.contents:
    { /* Preattestation */
      "kind": "preattestation",
      "slot": integer ∈ [0, 2^16-1],
      "level": integer ∈ [0, 2^31],
      "round": integer ∈ [-2^31-1, 2^31],
      "block_payload_hash": $value_hash }
    || { /* Attestation */
         "kind": "attestation",
         "slot": integer ∈ [0, 2^16-1],
         "level": integer ∈ [0, 2^31],
         "round": integer ∈ [-2^31-1, 2^31],
         "block_payload_hash": $value_hash }
    || { /* Attestation_with_dal */
         "kind": "attestation_with_dal",
         "slot": integer ∈ [0, 2^16-1],
         "level": integer ∈ [0, 2^31],
         "round": integer ∈ [-2^31-1, 2^31],
         "block_payload_hash": $value_hash,
         "dal_attestation": $bignum }
    || { /* Double_preattestation_evidence */
         "kind": "double_preattestation_evidence",
         "op1": $alpha.inlined.preattestation,
         "op2": $alpha.inlined.preattestation }
    || { /* Double_attestation_evidence */
         "kind": "double_attestation_evidence",
         "op1": $alpha.inlined.attestation,
         "op2": $alpha.inlined.attestation }
    || { /* Seed_nonce_revelation */
         "kind": "seed_nonce_revelation",
         "level": integer ∈ [0, 2^31],
         "nonce": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
    || { /* Vdf_revelation */
         "kind": "vdf_revelation",
         "solution":
           [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/, /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ] }
    || { /* Double_baking_evidence */
         "kind": "double_baking_evidence",
         "bh1": $alpha.block_header.alpha.full_header,
         "bh2": $alpha.block_header.alpha.full_header }
    || { /* Activate_account */
         "kind": "activate_account",
         "pkh": $Ed25519.Public_key_hash,
         "secret": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
    || { /* Proposals */
         "kind": "proposals",
         "source": $Signature.Public_key_hash,
         "period": integer ∈ [-2^31-1, 2^31],
         "proposals": [ $Protocol_hash ... ] }
    || { /* Ballot */
         "kind": "ballot",
         "source": $Signature.Public_key_hash,
         "period": integer ∈ [-2^31-1, 2^31],
         "proposal": $Protocol_hash,
         "ballot": "nay" | "yay" | "pass" }
    || { /* Reveal */
         "kind": "reveal",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "public_key": $Signature.Public_key }
    || { /* Transaction */
         "kind": "transaction",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "amount": $alpha.mutez,
         "destination": $alpha.contract_id,
         "parameters"?: { "entrypoint": $alpha.entrypoint,
                          "value": any } }
    || { /* Origination */
         "kind": "origination",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "balance": $alpha.mutez,
         "delegate"?: $Signature.Public_key_hash,
         "script": $alpha.scripted.contracts }
    || { /* Delegation */
         "kind": "delegation",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "delegate"?: $Signature.Public_key_hash }
    || { /* Set_deposits_limit */
         "kind": "set_deposits_limit",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "limit"?: $alpha.mutez }
    || { /* Increase_paid_storage */
         "kind": "increase_paid_storage",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "amount": $bignum,
         "destination": $alpha.contract_id.originated }
    || { /* Update_consensus_key */
         "kind": "update_consensus_key",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "pk": $Signature.Public_key }
    || { /* Drain_delegate */
         "kind": "drain_delegate",
         "consensus_key": $Signature.Public_key_hash,
         "delegate": $Signature.Public_key_hash,
         "destination": $Signature.Public_key_hash }
    || { /* Failing_noop */
         "kind": "failing_noop",
         "arbitrary": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
    || { /* Register_global_constant */
         "kind": "register_global_constant",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "value": any }
    || { /* Transfer_ticket */
         "kind": "transfer_ticket",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "ticket_contents": any,
         "ticket_ty": any,
         "ticket_ticketer": $alpha.contract_id,
         "ticket_amount": $positive_bignum,
         "destination": $alpha.contract_id,
         "entrypoint": $unistring }
    || { /* Dal_publish_commitment */
         "kind": "dal_publish_commitment",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "slot_header":
           { "slot_index": integer ∈ [0, 255],
             "commitment": $DAL_commitment,
             "commitment_proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ } }
    || { /* Smart_rollup_originate */
         "kind": "smart_rollup_originate",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "pvm_kind": "wasm_2_0_0" | "arith" | "riscv",
         "kernel": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
         "parameters_ty": any,
         "whitelist"?: [ $Signature.Public_key_hash ... ] }
    || { /* Smart_rollup_add_messages */
         "kind": "smart_rollup_add_messages",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "message": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ] }
    || { /* Smart_rollup_cement */
         "kind": "smart_rollup_cement",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address }
    || { /* Smart_rollup_publish */
         "kind": "smart_rollup_publish",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "commitment":
           { "compressed_state": $smart_rollup_state_hash,
             "inbox_level": integer ∈ [0, 2^31],
             "predecessor": $smart_rollup_commitment_hash,
             "number_of_ticks": $int64 } }
    || { /* Smart_rollup_refute */
         "kind": "smart_rollup_refute",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "opponent": $Signature.Public_key_hash,
         "refutation":
           { /* Start */
             "refutation_kind": "start",
             "player_commitment_hash": $smart_rollup_commitment_hash,
             "opponent_commitment_hash": $smart_rollup_commitment_hash }
           || { /* Move */
                "refutation_kind": "move",
                "choice": $positive_bignum,
                "step":
                  [ { "state"?: $smart_rollup_state_hash,
                      "tick": $positive_bignum } ... ]
                  /* Dissection */
                  || { /* Proof */
                       "pvm_step": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
                       "input_proof"?:
                         { /* inbox proof */
                           "input_proof_kind": "inbox_proof",
                           "level": integer ∈ [0, 2^31],
                           "message_counter": $positive_bignum,
                           "serialized_proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
                         || { /* reveal proof */
                              "input_proof_kind": "reveal_proof",
                              "reveal_proof":
                                { /* raw data proof */
                                  "reveal_proof_kind": "raw_data_proof",
                                  "raw_data": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
                                || { /* metadata proof */
                                     "reveal_proof_kind": "metadata_proof" }
                                || { /* dal page proof */
                                     "reveal_proof_kind": "dal_page_proof",
                                     "dal_page_id":
                                       { "published_level":
                                           integer ∈ [0, 2^31],
                                         "slot_index": integer ∈ [0, 255],
                                         "page_index":
                                           integer ∈ [-2^15, 2^15-1] },
                                     "dal_proof":
                                       /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
                                || { /* dal parameters proof */
                                     "reveal_proof_kind":
                                       "dal_parameters_proof" } }
                         || { /* first input */
                              "input_proof_kind": "first_input" } } } }
    || { /* Smart_rollup_timeout */
         "kind": "smart_rollup_timeout",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "stakers":
           { "alice": $Signature.Public_key_hash,
             "bob": $Signature.Public_key_hash } }
    || { /* Smart_rollup_execute_outbox_message */
         "kind": "smart_rollup_execute_outbox_message",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "cemented_commitment": $smart_rollup_commitment_hash,
         "output_proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
    || { /* Smart_rollup_recover_bond */
         "kind": "smart_rollup_recover_bond",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "staker": $Signature.Public_key_hash }
    || { /* Zk_rollup_origination */
         "kind": "zk_rollup_origination",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "public_parameters": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
         "circuits_info":
           [ [ $unistring,
               { /* Public */
                 "public": any }
               || { /* Private */
                    "private": any }
               || { /* Fee */
                    "fee": any } ] ... ],
         "init_state": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ],
         "nb_ops": integer ∈ [-2^30, 2^30] }
    || { /* Zk_rollup_publish */
         "kind": "zk_rollup_publish",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "zk_rollup": $Zk_rollup_hash,
         "op":
           [ [ { "op_code": integer ∈ [-2^30, 2^30],
                 "price": { "id": $script_expr,
                            "amount": $bignum },
                 "l1_dst": $Signature.Public_key_hash,
                 "rollup_id": $Zk_rollup_hash,
                 "payload": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ] },
               { /* Some */
                 "contents": $micheline.alpha.michelson_v1.expression,
                 "ty": $micheline.alpha.michelson_v1.expression,
                 "ticketer": $alpha.contract_id }
               || null
               /* None */ ] ... ] }
    || { /* Zk_rollup_update */
         "kind": "zk_rollup_update",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "zk_rollup": $Zk_rollup_hash,
         "update":
           { "pending_pis":
               [ [ $unistring,
                   { "new_state": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ],
                     "fee": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
                     "exit_validity": boolean } ] ... ],
             "private_pis":
               [ [ $unistring,
                   { "new_state": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ],
                     "fee": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ } ] ... ],
             "fee_pi": { "new_state": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ] },
             "proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ } }
  $alpha.operation.alpha.contents_and_signature:
    { "contents": [ $alpha.operation.alpha.contents ... ],
      "signature"?: $Signature.V1 }
  $alpha.operation.alpha.internal_operation_result.delegation:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum,
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum,
         "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates }
  $alpha.operation.alpha.internal_operation_result.event:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum }
  $alpha.operation.alpha.internal_operation_result.origination:
    { /* Applied */
      "status": "applied",
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
      "originated_contracts"?: [ $alpha.contract_id.originated ... ],
      "consumed_milligas"?: $positive_bignum,
      "storage_size"?: $bignum,
      "paid_storage_size_diff"?: $bignum,
      "lazy_storage_diff"?: $alpha.lazy_storage_diff }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
         "originated_contracts"?: [ $alpha.contract_id.originated ... ],
         "consumed_milligas"?: $positive_bignum,
         "storage_size"?: $bignum,
         "paid_storage_size_diff"?: $bignum,
         "lazy_storage_diff"?: $alpha.lazy_storage_diff }
  $alpha.operation.alpha.internal_operation_result.transaction:
    /* Applied */
    { /* To_contract */
      "status": "applied",
      "storage"?: $micheline.alpha.michelson_v1.expression,
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
      "ticket_receipt"?:
        [ { "ticket_token":
              { "ticketer": $alpha.contract_id,
                "content_type": $micheline.alpha.michelson_v1.expression,
                "content": $micheline.alpha.michelson_v1.expression },
            "updates":
              [ { "account": $alpha.transaction_destination,
                  "amount": $bignum } ... ] } ... ],
      "originated_contracts"?: [ $alpha.contract_id.originated ... ],
      "consumed_milligas"?: $positive_bignum,
      "storage_size"?: $bignum,
      "paid_storage_size_diff"?: $bignum,
      "allocated_destination_contract"?: boolean,
      "lazy_storage_diff"?: $alpha.lazy_storage_diff }
    || { /* To_smart_rollup */
         "status": "applied",
         "consumed_milligas"?: $positive_bignum,
         "ticket_receipt":
           [ { "ticket_token":
                 { "ticketer": $alpha.contract_id,
                   "content_type": $micheline.alpha.michelson_v1.expression,
                   "content": $micheline.alpha.michelson_v1.expression },
               "updates":
                 [ { "account": $alpha.transaction_destination,
                     "amount": $bignum } ... ] } ... ] }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || /* Backtracked */
    { /* To_contract */
      "status": "backtracked",
      "errors"?: [ $alpha.error ... ],
      "storage"?: $micheline.alpha.michelson_v1.expression,
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
      "ticket_receipt"?:
        [ { "ticket_token":
              { "ticketer": $alpha.contract_id,
                "content_type": $micheline.alpha.michelson_v1.expression,
                "content": $micheline.alpha.michelson_v1.expression },
            "updates":
              [ { "account": $alpha.transaction_destination,
                  "amount": $bignum } ... ] } ... ],
      "originated_contracts"?: [ $alpha.contract_id.originated ... ],
      "consumed_milligas"?: $positive_bignum,
      "storage_size"?: $bignum,
      "paid_storage_size_diff"?: $bignum,
      "allocated_destination_contract"?: boolean,
      "lazy_storage_diff"?: $alpha.lazy_storage_diff }
    || { /* To_smart_rollup */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum,
         "ticket_receipt":
           [ { "ticket_token":
                 { "ticketer": $alpha.contract_id,
                   "content_type": $micheline.alpha.michelson_v1.expression,
                   "content": $micheline.alpha.michelson_v1.expression },
               "updates":
                 [ { "account": $alpha.transaction_destination,
                     "amount": $bignum } ... ] } ... ] }
  $alpha.operation.alpha.operation_contents_and_result:
    { /* Attestation */
      "kind": "attestation",
      "slot": integer ∈ [0, 2^16-1],
      "level": integer ∈ [0, 2^31],
      "round": integer ∈ [-2^31-1, 2^31],
      "block_payload_hash": $value_hash,
      "metadata":
        { "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
          "delegate": $Signature.Public_key_hash,
          "consensus_power": integer ∈ [-2^30, 2^30],
          "consensus_key": $Signature.Public_key_hash } }
    || { /* Attestation_with_dal */
         "kind": "attestation_with_dal",
         "slot": integer ∈ [0, 2^16-1],
         "level": integer ∈ [0, 2^31],
         "round": integer ∈ [-2^31-1, 2^31],
         "block_payload_hash": $value_hash,
         "dal_attestation": $bignum,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "delegate": $Signature.Public_key_hash,
             "consensus_power": integer ∈ [-2^30, 2^30],
             "consensus_key": $Signature.Public_key_hash } }
    || { /* Preattestation */
         "kind": "preattestation",
         "slot": integer ∈ [0, 2^16-1],
         "level": integer ∈ [0, 2^31],
         "round": integer ∈ [-2^31-1, 2^31],
         "block_payload_hash": $value_hash,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "delegate": $Signature.Public_key_hash,
             "consensus_power": integer ∈ [-2^30, 2^30],
             "consensus_key": $Signature.Public_key_hash } }
    || { /* Double_attestation_evidence */
         "kind": "double_attestation_evidence",
         "op1": $alpha.inlined.attestation,
         "op2": $alpha.inlined.attestation,
         "metadata":
           { "forbidden_delegate"?: $Signature.Public_key_hash,
             "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates } }
    || { /* Double_preattestation_evidence */
         "kind": "double_preattestation_evidence",
         "op1": $alpha.inlined.preattestation,
         "op2": $alpha.inlined.preattestation,
         "metadata":
           { "forbidden_delegate"?: $Signature.Public_key_hash,
             "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates } }
    || { /* Seed_nonce_revelation */
         "kind": "seed_nonce_revelation",
         "level": integer ∈ [0, 2^31],
         "nonce": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates } }
    || { /* Vdf_revelation */
         "kind": "vdf_revelation",
         "solution":
           [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/, /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ],
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates } }
    || { /* Double_baking_evidence */
         "kind": "double_baking_evidence",
         "bh1": $alpha.block_header.alpha.full_header,
         "bh2": $alpha.block_header.alpha.full_header,
         "metadata":
           { "forbidden_delegate"?: $Signature.Public_key_hash,
             "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates } }
    || { /* Activate_account */
         "kind": "activate_account",
         "pkh": $Ed25519.Public_key_hash,
         "secret": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates } }
    || { /* Proposals */
         "kind": "proposals",
         "source": $Signature.Public_key_hash,
         "period": integer ∈ [-2^31-1, 2^31],
         "proposals": [ $Protocol_hash ... ],
         "metadata": {  } }
    || { /* Ballot */
         "kind": "ballot",
         "source": $Signature.Public_key_hash,
         "period": integer ∈ [-2^31-1, 2^31],
         "proposal": $Protocol_hash,
         "ballot": "nay" | "yay" | "pass",
         "metadata": {  } }
    || { /* Drain_delegate */
         "kind": "drain_delegate",
         "consensus_key": $Signature.Public_key_hash,
         "delegate": $Signature.Public_key_hash,
         "destination": $Signature.Public_key_hash,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "allocated_destination_contract"?: boolean } }
    || { /* Reveal */
         "kind": "reveal",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "public_key": $Signature.Public_key,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.reveal,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Transaction */
         "kind": "transaction",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "amount": $alpha.mutez,
         "destination": $alpha.contract_id,
         "parameters"?: { "entrypoint": $alpha.entrypoint,
                          "value": any },
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.transaction,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Origination */
         "kind": "origination",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "balance": $alpha.mutez,
         "delegate"?: $Signature.Public_key_hash,
         "script": $alpha.scripted.contracts,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.origination,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Delegation */
         "kind": "delegation",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "delegate"?: $Signature.Public_key_hash,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.delegation,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Register_global_constant */
         "kind": "register_global_constant",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "value": any,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.register_global_constant,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Set_deposits_limit */
         "kind": "set_deposits_limit",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "limit"?: $alpha.mutez,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.set_deposits_limit,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Increase_paid_storage */
         "kind": "increase_paid_storage",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "amount": $bignum,
         "destination": $alpha.contract_id.originated,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.increase_paid_storage,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Update_consensus_key */
         "kind": "update_consensus_key",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "pk": $Signature.Public_key,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.update_consensus_key,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Transfer_ticket */
         "kind": "transfer_ticket",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "ticket_contents": any,
         "ticket_ty": any,
         "ticket_ticketer": $alpha.contract_id,
         "ticket_amount": $positive_bignum,
         "destination": $alpha.contract_id,
         "entrypoint": $unistring,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.transfer_ticket,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Dal_publish_commitment */
         "kind": "dal_publish_commitment",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "slot_header":
           { "slot_index": integer ∈ [0, 255],
             "commitment": $DAL_commitment,
             "commitment_proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ },
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.dal_publish_commitment,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Smart_rollup_originate */
         "kind": "smart_rollup_originate",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "pvm_kind": "wasm_2_0_0" | "arith" | "riscv",
         "kernel": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
         "parameters_ty": any,
         "whitelist"?: [ $Signature.Public_key_hash ... ],
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.smart_rollup_originate,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Smart_rollup_add_messages */
         "kind": "smart_rollup_add_messages",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "message": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ],
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.smart_rollup_add_messages,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Smart_rollup_cement */
         "kind": "smart_rollup_cement",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.smart_rollup_cement,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Smart_rollup_publish */
         "kind": "smart_rollup_publish",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "commitment":
           { "compressed_state": $smart_rollup_state_hash,
             "inbox_level": integer ∈ [0, 2^31],
             "predecessor": $smart_rollup_commitment_hash,
             "number_of_ticks": $int64 },
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.smart_rollup_publish,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Smart_rollup_refute */
         "kind": "smart_rollup_refute",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "opponent": $Signature.Public_key_hash,
         "refutation":
           { /* Start */
             "refutation_kind": "start",
             "player_commitment_hash": $smart_rollup_commitment_hash,
             "opponent_commitment_hash": $smart_rollup_commitment_hash }
           || { /* Move */
                "refutation_kind": "move",
                "choice": $positive_bignum,
                "step":
                  [ { "state"?: $smart_rollup_state_hash,
                      "tick": $positive_bignum } ... ]
                  /* Dissection */
                  || { /* Proof */
                       "pvm_step": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
                       "input_proof"?:
                         { /* inbox proof */
                           "input_proof_kind": "inbox_proof",
                           "level": integer ∈ [0, 2^31],
                           "message_counter": $positive_bignum,
                           "serialized_proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
                         || { /* reveal proof */
                              "input_proof_kind": "reveal_proof",
                              "reveal_proof":
                                { /* raw data proof */
                                  "reveal_proof_kind": "raw_data_proof",
                                  "raw_data": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
                                || { /* metadata proof */
                                     "reveal_proof_kind": "metadata_proof" }
                                || { /* dal page proof */
                                     "reveal_proof_kind": "dal_page_proof",
                                     "dal_page_id":
                                       { "published_level":
                                           integer ∈ [0, 2^31],
                                         "slot_index": integer ∈ [0, 255],
                                         "page_index":
                                           integer ∈ [-2^15, 2^15-1] },
                                     "dal_proof":
                                       /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
                                || { /* dal parameters proof */
                                     "reveal_proof_kind":
                                       "dal_parameters_proof" } }
                         || { /* first input */
                              "input_proof_kind": "first_input" } } },
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.smart_rollup_refute,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Smart_rollup_timeout */
         "kind": "smart_rollup_timeout",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "stakers":
           { "alice": $Signature.Public_key_hash,
             "bob": $Signature.Public_key_hash },
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.smart_rollup_timeout,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Smart_rollup_execute_outbox_message */
         "kind": "smart_rollup_execute_outbox_message",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "cemented_commitment": $smart_rollup_commitment_hash,
         "output_proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.smart_rollup_execute_outbox_message,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Smart_rollup_recover_bond */
         "kind": "smart_rollup_recover_bond",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "staker": $Signature.Public_key_hash,
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.smart_rollup_recover_bond,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Zk_rollup_origination */
         "kind": "zk_rollup_origination",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "public_parameters": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
         "circuits_info":
           [ [ $unistring,
               { /* Public */
                 "public": any }
               || { /* Private */
                    "private": any }
               || { /* Fee */
                    "fee": any } ] ... ],
         "init_state": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ],
         "nb_ops": integer ∈ [-2^30, 2^30],
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.zk_rollup_origination,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Zk_rollup_publish */
         "kind": "zk_rollup_publish",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "zk_rollup": $Zk_rollup_hash,
         "op":
           [ [ { "op_code": integer ∈ [-2^30, 2^30],
                 "price": { "id": $script_expr,
                            "amount": $bignum },
                 "l1_dst": $Signature.Public_key_hash,
                 "rollup_id": $Zk_rollup_hash,
                 "payload": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ] },
               { /* Some */
                 "contents": $micheline.alpha.michelson_v1.expression,
                 "ty": $micheline.alpha.michelson_v1.expression,
                 "ticketer": $alpha.contract_id }
               || null
               /* None */ ] ... ],
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.zk_rollup_publish,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
    || { /* Zk_rollup_update */
         "kind": "zk_rollup_update",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "zk_rollup": $Zk_rollup_hash,
         "update":
           { "pending_pis":
               [ [ $unistring,
                   { "new_state": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ],
                     "fee": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
                     "exit_validity": boolean } ] ... ],
             "private_pis":
               [ [ $unistring,
                   { "new_state": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ],
                     "fee": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ } ] ... ],
             "fee_pi": { "new_state": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ] },
             "proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ },
         "metadata":
           { "balance_updates"?:
               $alpha.operation_metadata.alpha.balance_updates,
             "operation_result":
               $alpha.operation.alpha.operation_result.zk_rollup_update,
             "internal_operation_results"?:
               [ $alpha.apply_internal_results.alpha.operation_result ... ] } }
  $alpha.operation.alpha.operation_result.dal_publish_commitment:
    { /* Applied */
      "status": "applied",
      "slot_header":
        { /* v0 */
          "version": "0",
          "level": integer ∈ [0, 2^31],
          "index": integer ∈ [0, 255],
          "commitment": $DAL_commitment },
      "consumed_milligas"?: $positive_bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "slot_header":
           { /* v0 */
             "version": "0",
             "level": integer ∈ [0, 2^31],
             "index": integer ∈ [0, 255],
             "commitment": $DAL_commitment },
         "consumed_milligas"?: $positive_bignum }
  $alpha.operation.alpha.operation_result.delegation:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum,
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum,
         "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates }
  $alpha.operation.alpha.operation_result.increase_paid_storage:
    { /* Applied */
      "status": "applied",
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
      "consumed_milligas"?: $positive_bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
         "consumed_milligas"?: $positive_bignum }
  $alpha.operation.alpha.operation_result.origination:
    { /* Applied */
      "status": "applied",
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
      "originated_contracts"?: [ $alpha.contract_id.originated ... ],
      "consumed_milligas"?: $positive_bignum,
      "storage_size"?: $bignum,
      "paid_storage_size_diff"?: $bignum,
      "lazy_storage_diff"?: $alpha.lazy_storage_diff }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
         "originated_contracts"?: [ $alpha.contract_id.originated ... ],
         "consumed_milligas"?: $positive_bignum,
         "storage_size"?: $bignum,
         "paid_storage_size_diff"?: $bignum,
         "lazy_storage_diff"?: $alpha.lazy_storage_diff }
  $alpha.operation.alpha.operation_result.register_global_constant:
    { /* Applied */
      "status": "applied",
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
      "consumed_milligas"?: $positive_bignum,
      "storage_size"?: $bignum,
      "global_address": $script_expr }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
         "consumed_milligas"?: $positive_bignum,
         "storage_size"?: $bignum,
         "global_address": $script_expr }
  $alpha.operation.alpha.operation_result.reveal:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum }
  $alpha.operation.alpha.operation_result.set_deposits_limit:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum }
  $alpha.operation.alpha.operation_result.smart_rollup_add_messages:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum }
  $alpha.operation.alpha.operation_result.smart_rollup_cement:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum,
      "inbox_level": integer ∈ [0, 2^31],
      "commitment_hash": $smart_rollup_commitment_hash }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum,
         "inbox_level": integer ∈ [0, 2^31],
         "commitment_hash": $smart_rollup_commitment_hash }
  $alpha.operation.alpha.operation_result.smart_rollup_execute_outbox_message:
    { /* Applied */
      "status": "applied",
      "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
      "ticket_updates":
        [ { "ticket_token":
              { "ticketer": $alpha.contract_id,
                "content_type": $micheline.alpha.michelson_v1.expression,
                "content": $micheline.alpha.michelson_v1.expression },
            "updates":
              [ { "account": $alpha.transaction_destination,
                  "amount": $bignum } ... ] } ... ],
      "whitelist_update"?:
        { /* Public */
          "kind": "public" }
        || { /* Private */
             "kind": "update",
             "whitelist": [ $Signature.Public_key_hash ... ] },
      "consumed_milligas"?: $positive_bignum,
      "paid_storage_size_diff"?: $bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
         "ticket_updates":
           [ { "ticket_token":
                 { "ticketer": $alpha.contract_id,
                   "content_type": $micheline.alpha.michelson_v1.expression,
                   "content": $micheline.alpha.michelson_v1.expression },
               "updates":
                 [ { "account": $alpha.transaction_destination,
                     "amount": $bignum } ... ] } ... ],
         "whitelist_update"?:
           { /* Public */
             "kind": "public" }
           || { /* Private */
                "kind": "update",
                "whitelist": [ $Signature.Public_key_hash ... ] },
         "consumed_milligas"?: $positive_bignum,
         "paid_storage_size_diff"?: $bignum }
  $alpha.operation.alpha.operation_result.smart_rollup_originate:
    { /* Applied */
      "status": "applied",
      "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
      "address": $smart_rollup_address,
      "genesis_commitment_hash": $smart_rollup_commitment_hash,
      "consumed_milligas"?: $positive_bignum,
      "size": $bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
         "address": $smart_rollup_address,
         "genesis_commitment_hash": $smart_rollup_commitment_hash,
         "consumed_milligas"?: $positive_bignum,
         "size": $bignum }
  $alpha.operation.alpha.operation_result.smart_rollup_publish:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum,
      "staked_hash": $smart_rollup_commitment_hash,
      "published_at_level": integer ∈ [0, 2^31],
      "balance_updates": $alpha.operation_metadata.alpha.balance_updates }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum,
         "staked_hash": $smart_rollup_commitment_hash,
         "published_at_level": integer ∈ [0, 2^31],
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates }
  $alpha.operation.alpha.operation_result.smart_rollup_recover_bond:
    { /* Applied */
      "status": "applied",
      "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
      "consumed_milligas"?: $positive_bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
         "consumed_milligas"?: $positive_bignum }
  $alpha.operation.alpha.operation_result.smart_rollup_refute:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum,
      "game_status":
        "ongoing"
        || { /* Ended */
             "result":
               { /* Loser */
                 "kind": "loser",
                 "reason": "conflict_resolved" || "timeout",
                 "player": $Signature.Public_key_hash }
               || { /* Draw */
                    "kind": "draw" } },
      "balance_updates": $alpha.operation_metadata.alpha.balance_updates }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum,
         "game_status":
           "ongoing"
           || { /* Ended */
                "result":
                  { /* Loser */
                    "kind": "loser",
                    "reason": "conflict_resolved" || "timeout",
                    "player": $Signature.Public_key_hash }
                  || { /* Draw */
                       "kind": "draw" } },
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates }
  $alpha.operation.alpha.operation_result.smart_rollup_timeout:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum,
      "game_status":
        "ongoing"
        || { /* Ended */
             "result":
               { /* Loser */
                 "kind": "loser",
                 "reason": "conflict_resolved" || "timeout",
                 "player": $Signature.Public_key_hash }
               || { /* Draw */
                    "kind": "draw" } },
      "balance_updates": $alpha.operation_metadata.alpha.balance_updates }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum,
         "game_status":
           "ongoing"
           || { /* Ended */
                "result":
                  { /* Loser */
                    "kind": "loser",
                    "reason": "conflict_resolved" || "timeout",
                    "player": $Signature.Public_key_hash }
                  || { /* Draw */
                       "kind": "draw" } },
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates }
  $alpha.operation.alpha.operation_result.transaction:
    /* Applied */
    { /* To_contract */
      "status": "applied",
      "storage"?: $micheline.alpha.michelson_v1.expression,
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
      "ticket_updates"?:
        [ { "ticket_token":
              { "ticketer": $alpha.contract_id,
                "content_type": $micheline.alpha.michelson_v1.expression,
                "content": $micheline.alpha.michelson_v1.expression },
            "updates":
              [ { "account": $alpha.transaction_destination,
                  "amount": $bignum } ... ] } ... ],
      "originated_contracts"?: [ $alpha.contract_id.originated ... ],
      "consumed_milligas"?: $positive_bignum,
      "storage_size"?: $bignum,
      "paid_storage_size_diff"?: $bignum,
      "allocated_destination_contract"?: boolean,
      "lazy_storage_diff"?: $alpha.lazy_storage_diff }
    || { /* To_smart_rollup */
         "status": "applied",
         "consumed_milligas"?: $positive_bignum,
         "ticket_updates":
           [ { "ticket_token":
                 { "ticketer": $alpha.contract_id,
                   "content_type": $micheline.alpha.michelson_v1.expression,
                   "content": $micheline.alpha.michelson_v1.expression },
               "updates":
                 [ { "account": $alpha.transaction_destination,
                     "amount": $bignum } ... ] } ... ] }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || /* Backtracked */
    { /* To_contract */
      "status": "backtracked",
      "errors"?: [ $alpha.error ... ],
      "storage"?: $micheline.alpha.michelson_v1.expression,
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
      "ticket_updates"?:
        [ { "ticket_token":
              { "ticketer": $alpha.contract_id,
                "content_type": $micheline.alpha.michelson_v1.expression,
                "content": $micheline.alpha.michelson_v1.expression },
            "updates":
              [ { "account": $alpha.transaction_destination,
                  "amount": $bignum } ... ] } ... ],
      "originated_contracts"?: [ $alpha.contract_id.originated ... ],
      "consumed_milligas"?: $positive_bignum,
      "storage_size"?: $bignum,
      "paid_storage_size_diff"?: $bignum,
      "allocated_destination_contract"?: boolean,
      "lazy_storage_diff"?: $alpha.lazy_storage_diff }
    || { /* To_smart_rollup */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum,
         "ticket_updates":
           [ { "ticket_token":
                 { "ticketer": $alpha.contract_id,
                   "content_type": $micheline.alpha.michelson_v1.expression,
                   "content": $micheline.alpha.michelson_v1.expression },
               "updates":
                 [ { "account": $alpha.transaction_destination,
                     "amount": $bignum } ... ] } ... ] }
  $alpha.operation.alpha.operation_result.transfer_ticket:
    { /* Applied */
      "status": "applied",
      "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
      "ticket_updates":
        [ { "ticket_token":
              { "ticketer": $alpha.contract_id,
                "content_type": $micheline.alpha.michelson_v1.expression,
                "content": $micheline.alpha.michelson_v1.expression },
            "updates":
              [ { "account": $alpha.transaction_destination,
                  "amount": $bignum } ... ] } ... ],
      "consumed_milligas"?: $positive_bignum,
      "paid_storage_size_diff"?: $bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
         "ticket_updates":
           [ { "ticket_token":
                 { "ticketer": $alpha.contract_id,
                   "content_type": $micheline.alpha.michelson_v1.expression,
                   "content": $micheline.alpha.michelson_v1.expression },
               "updates":
                 [ { "account": $alpha.transaction_destination,
                     "amount": $bignum } ... ] } ... ],
         "consumed_milligas"?: $positive_bignum,
         "paid_storage_size_diff"?: $bignum }
  $alpha.operation.alpha.operation_result.update_consensus_key:
    { /* Applied */
      "status": "applied",
      "consumed_milligas"?: $positive_bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "consumed_milligas"?: $positive_bignum }
  $alpha.operation.alpha.operation_result.zk_rollup_origination:
    { /* Applied */
      "status": "applied",
      "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
      "originated_zk_rollup": $Zk_rollup_hash,
      "consumed_milligas"?: $positive_bignum,
      "size": $bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
         "originated_zk_rollup": $Zk_rollup_hash,
         "consumed_milligas"?: $positive_bignum,
         "size": $bignum }
  $alpha.operation.alpha.operation_result.zk_rollup_publish:
    { /* Applied */
      "status": "applied",
      "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
      "consumed_milligas"?: $positive_bignum,
      "size": $bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
         "consumed_milligas"?: $positive_bignum,
         "size": $bignum }
  $alpha.operation.alpha.operation_result.zk_rollup_update:
    { /* Applied */
      "status": "applied",
      "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
      "consumed_milligas"?: $positive_bignum,
      "paid_storage_size_diff"?: $bignum }
    || { /* Failed */
         "status": "failed",
         "errors": [ $alpha.error ... ] }
    || { /* Skipped */
         "status": "skipped" }
    || { /* Backtracked */
         "status": "backtracked",
         "errors"?: [ $alpha.error ... ],
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
         "consumed_milligas"?: $positive_bignum,
         "paid_storage_size_diff"?: $bignum }
  $alpha.operation.alpha.operation_with_metadata:
    { /* Operation_with_metadata */
      "contents":
        [ $alpha.operation.alpha.operation_contents_and_result ... ],
      "signature"?: $Signature.V1 }
    || { /* Operation_without_metadata */
         "contents": [ $alpha.operation.alpha.contents ... ],
         "signature"?: $Signature.V1 }
  $alpha.operation.alpha.successful_manager_operation_result:
    { /* reveal */
      "kind": "reveal",
      "consumed_milligas"?: $positive_bignum }
    || /* transaction */
    { /* To_contract */
      "kind": "transaction",
      "storage"?: $micheline.alpha.michelson_v1.expression,
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
      "ticket_updates"?:
        [ { "ticket_token":
              { "ticketer": $alpha.contract_id,
                "content_type": $micheline.alpha.michelson_v1.expression,
                "content": $micheline.alpha.michelson_v1.expression },
            "updates":
              [ { "account": $alpha.transaction_destination,
                  "amount": $bignum } ... ] } ... ],
      "originated_contracts"?: [ $alpha.contract_id.originated ... ],
      "consumed_milligas"?: $positive_bignum,
      "storage_size"?: $bignum,
      "paid_storage_size_diff"?: $bignum,
      "allocated_destination_contract"?: boolean,
      "lazy_storage_diff"?: $alpha.lazy_storage_diff }
    || { /* To_smart_rollup */
         "kind": "transaction",
         "consumed_milligas"?: $positive_bignum,
         "ticket_updates":
           [ { "ticket_token":
                 { "ticketer": $alpha.contract_id,
                   "content_type": $micheline.alpha.michelson_v1.expression,
                   "content": $micheline.alpha.michelson_v1.expression },
               "updates":
                 [ { "account": $alpha.transaction_destination,
                     "amount": $bignum } ... ] } ... ] }
    || { /* origination */
         "kind": "origination",
         "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
         "originated_contracts"?: [ $alpha.contract_id.originated ... ],
         "consumed_milligas"?: $positive_bignum,
         "storage_size"?: $bignum,
         "paid_storage_size_diff"?: $bignum,
         "lazy_storage_diff"?: $alpha.lazy_storage_diff }
    || { /* delegation */
         "kind": "delegation",
         "consumed_milligas"?: $positive_bignum,
         "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates }
    || { /* update_consensus_key */
         "kind": "update_consensus_key",
         "consumed_milligas"?: $positive_bignum }
    || { /* set_deposits_limit */
         "kind": "set_deposits_limit",
         "consumed_milligas"?: $positive_bignum }
    || { /* increase_paid_storage */
         "kind": "increase_paid_storage",
         "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
         "consumed_milligas"?: $positive_bignum }
    || { /* smart_rollup_originate */
         "kind": "smart_rollup_originate",
         "balance_updates": $alpha.operation_metadata.alpha.balance_updates,
         "address": $smart_rollup_address,
         "genesis_commitment_hash": $smart_rollup_commitment_hash,
         "consumed_milligas"?: $positive_bignum,
         "size": $bignum }
  $alpha.operation_metadata.alpha.balance_updates:
    [ { /* Contract */
        "kind": "contract",
        "contract": $alpha.contract_id,
        "change": $int64,
        "origin": "block" }
      || { /* Contract */
           "kind": "contract",
           "contract": $alpha.contract_id,
           "change": $int64,
           "origin": "migration" }
      || { /* Contract */
           "kind": "contract",
           "contract": $alpha.contract_id,
           "change": $int64,
           "origin": "subsidy" }
      || { /* Contract */
           "kind": "contract",
           "contract": $alpha.contract_id,
           "change": $int64,
           "origin": "simulation" }
      || { /* Contract */
           "kind": "contract",
           "contract": $alpha.contract_id,
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Block_fees */
           "kind": "accumulator",
           "category": "block fees",
           "change": $int64,
           "origin": "block" }
      || { /* Block_fees */
           "kind": "accumulator",
           "category": "block fees",
           "change": $int64,
           "origin": "migration" }
      || { /* Block_fees */
           "kind": "accumulator",
           "category": "block fees",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Block_fees */
           "kind": "accumulator",
           "category": "block fees",
           "change": $int64,
           "origin": "simulation" }
      || { /* Block_fees */
           "kind": "accumulator",
           "category": "block fees",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Deposits */
           "kind": "freezer",
           "category": "deposits",
           "staker": $alpha.frozen_staker,
           "change": $int64,
           "origin": "block" }
      || { /* Deposits */
           "kind": "freezer",
           "category": "deposits",
           "staker": $alpha.frozen_staker,
           "change": $int64,
           "origin": "migration" }
      || { /* Deposits */
           "kind": "freezer",
           "category": "deposits",
           "staker": $alpha.frozen_staker,
           "change": $int64,
           "origin": "subsidy" }
      || { /* Deposits */
           "kind": "freezer",
           "category": "deposits",
           "staker": $alpha.frozen_staker,
           "change": $int64,
           "origin": "simulation" }
      || { /* Deposits */
           "kind": "freezer",
           "category": "deposits",
           "staker": $alpha.frozen_staker,
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Nonce_revelation_rewards */
           "kind": "minted",
           "category": "nonce revelation rewards",
           "change": $int64,
           "origin": "block" }
      || { /* Nonce_revelation_rewards */
           "kind": "minted",
           "category": "nonce revelation rewards",
           "change": $int64,
           "origin": "migration" }
      || { /* Nonce_revelation_rewards */
           "kind": "minted",
           "category": "nonce revelation rewards",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Nonce_revelation_rewards */
           "kind": "minted",
           "category": "nonce revelation rewards",
           "change": $int64,
           "origin": "simulation" }
      || { /* Nonce_revelation_rewards */
           "kind": "minted",
           "category": "nonce revelation rewards",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Attesting_rewards */
           "kind": "minted",
           "category": "attesting rewards",
           "change": $int64,
           "origin": "block" }
      || { /* Attesting_rewards */
           "kind": "minted",
           "category": "attesting rewards",
           "change": $int64,
           "origin": "migration" }
      || { /* Attesting_rewards */
           "kind": "minted",
           "category": "attesting rewards",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Attesting_rewards */
           "kind": "minted",
           "category": "attesting rewards",
           "change": $int64,
           "origin": "simulation" }
      || { /* Attesting_rewards */
           "kind": "minted",
           "category": "attesting rewards",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Baking_rewards */
           "kind": "minted",
           "category": "baking rewards",
           "change": $int64,
           "origin": "block" }
      || { /* Baking_rewards */
           "kind": "minted",
           "category": "baking rewards",
           "change": $int64,
           "origin": "migration" }
      || { /* Baking_rewards */
           "kind": "minted",
           "category": "baking rewards",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Baking_rewards */
           "kind": "minted",
           "category": "baking rewards",
           "change": $int64,
           "origin": "simulation" }
      || { /* Baking_rewards */
           "kind": "minted",
           "category": "baking rewards",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Baking_bonuses */
           "kind": "minted",
           "category": "baking bonuses",
           "change": $int64,
           "origin": "block" }
      || { /* Baking_bonuses */
           "kind": "minted",
           "category": "baking bonuses",
           "change": $int64,
           "origin": "migration" }
      || { /* Baking_bonuses */
           "kind": "minted",
           "category": "baking bonuses",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Baking_bonuses */
           "kind": "minted",
           "category": "baking bonuses",
           "change": $int64,
           "origin": "simulation" }
      || { /* Baking_bonuses */
           "kind": "minted",
           "category": "baking bonuses",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Storage_fees */
           "kind": "burned",
           "category": "storage fees",
           "change": $int64,
           "origin": "block" }
      || { /* Storage_fees */
           "kind": "burned",
           "category": "storage fees",
           "change": $int64,
           "origin": "migration" }
      || { /* Storage_fees */
           "kind": "burned",
           "category": "storage fees",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Storage_fees */
           "kind": "burned",
           "category": "storage fees",
           "change": $int64,
           "origin": "simulation" }
      || { /* Storage_fees */
           "kind": "burned",
           "category": "storage fees",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Double_signing_punishments */
           "kind": "burned",
           "category": "punishments",
           "change": $int64,
           "origin": "block" }
      || { /* Double_signing_punishments */
           "kind": "burned",
           "category": "punishments",
           "change": $int64,
           "origin": "migration" }
      || { /* Double_signing_punishments */
           "kind": "burned",
           "category": "punishments",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Double_signing_punishments */
           "kind": "burned",
           "category": "punishments",
           "change": $int64,
           "origin": "simulation" }
      || { /* Double_signing_punishments */
           "kind": "burned",
           "category": "punishments",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Lost_attesting_rewards */
           "kind": "burned",
           "category": "lost attesting rewards",
           "delegate": $Signature.Public_key_hash,
           "participation": boolean,
           "revelation": boolean,
           "change": $int64,
           "origin": "block" }
      || { /* Lost_attesting_rewards */
           "kind": "burned",
           "category": "lost attesting rewards",
           "delegate": $Signature.Public_key_hash,
           "participation": boolean,
           "revelation": boolean,
           "change": $int64,
           "origin": "migration" }
      || { /* Lost_attesting_rewards */
           "kind": "burned",
           "category": "lost attesting rewards",
           "delegate": $Signature.Public_key_hash,
           "participation": boolean,
           "revelation": boolean,
           "change": $int64,
           "origin": "subsidy" }
      || { /* Lost_attesting_rewards */
           "kind": "burned",
           "category": "lost attesting rewards",
           "delegate": $Signature.Public_key_hash,
           "participation": boolean,
           "revelation": boolean,
           "change": $int64,
           "origin": "simulation" }
      || { /* Lost_attesting_rewards */
           "kind": "burned",
           "category": "lost attesting rewards",
           "delegate": $Signature.Public_key_hash,
           "participation": boolean,
           "revelation": boolean,
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Liquidity_baking_subsidies */
           "kind": "minted",
           "category": "subsidy",
           "change": $int64,
           "origin": "block" }
      || { /* Liquidity_baking_subsidies */
           "kind": "minted",
           "category": "subsidy",
           "change": $int64,
           "origin": "migration" }
      || { /* Liquidity_baking_subsidies */
           "kind": "minted",
           "category": "subsidy",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Liquidity_baking_subsidies */
           "kind": "minted",
           "category": "subsidy",
           "change": $int64,
           "origin": "simulation" }
      || { /* Liquidity_baking_subsidies */
           "kind": "minted",
           "category": "subsidy",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Burned */
           "kind": "burned",
           "category": "burned",
           "change": $int64,
           "origin": "block" }
      || { /* Burned */
           "kind": "burned",
           "category": "burned",
           "change": $int64,
           "origin": "migration" }
      || { /* Burned */
           "kind": "burned",
           "category": "burned",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Burned */
           "kind": "burned",
           "category": "burned",
           "change": $int64,
           "origin": "simulation" }
      || { /* Burned */
           "kind": "burned",
           "category": "burned",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Commitments */
           "kind": "commitment",
           "category": "commitment",
           "committer": $Blinded public key hash,
           "change": $int64,
           "origin": "block" }
      || { /* Commitments */
           "kind": "commitment",
           "category": "commitment",
           "committer": $Blinded public key hash,
           "change": $int64,
           "origin": "migration" }
      || { /* Commitments */
           "kind": "commitment",
           "category": "commitment",
           "committer": $Blinded public key hash,
           "change": $int64,
           "origin": "subsidy" }
      || { /* Commitments */
           "kind": "commitment",
           "category": "commitment",
           "committer": $Blinded public key hash,
           "change": $int64,
           "origin": "simulation" }
      || { /* Commitments */
           "kind": "commitment",
           "category": "commitment",
           "committer": $Blinded public key hash,
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Bootstrap */
           "kind": "minted",
           "category": "bootstrap",
           "change": $int64,
           "origin": "block" }
      || { /* Bootstrap */
           "kind": "minted",
           "category": "bootstrap",
           "change": $int64,
           "origin": "migration" }
      || { /* Bootstrap */
           "kind": "minted",
           "category": "bootstrap",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Bootstrap */
           "kind": "minted",
           "category": "bootstrap",
           "change": $int64,
           "origin": "simulation" }
      || { /* Bootstrap */
           "kind": "minted",
           "category": "bootstrap",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Invoice */
           "kind": "minted",
           "category": "invoice",
           "change": $int64,
           "origin": "block" }
      || { /* Invoice */
           "kind": "minted",
           "category": "invoice",
           "change": $int64,
           "origin": "migration" }
      || { /* Invoice */
           "kind": "minted",
           "category": "invoice",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Invoice */
           "kind": "minted",
           "category": "invoice",
           "change": $int64,
           "origin": "simulation" }
      || { /* Invoice */
           "kind": "minted",
           "category": "invoice",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Initial_commitments */
           "kind": "minted",
           "category": "commitment",
           "change": $int64,
           "origin": "block" }
      || { /* Initial_commitments */
           "kind": "minted",
           "category": "commitment",
           "change": $int64,
           "origin": "migration" }
      || { /* Initial_commitments */
           "kind": "minted",
           "category": "commitment",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Initial_commitments */
           "kind": "minted",
           "category": "commitment",
           "change": $int64,
           "origin": "simulation" }
      || { /* Initial_commitments */
           "kind": "minted",
           "category": "commitment",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Minted */
           "kind": "minted",
           "category": "minted",
           "change": $int64,
           "origin": "block" }
      || { /* Minted */
           "kind": "minted",
           "category": "minted",
           "change": $int64,
           "origin": "migration" }
      || { /* Minted */
           "kind": "minted",
           "category": "minted",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Minted */
           "kind": "minted",
           "category": "minted",
           "change": $int64,
           "origin": "simulation" }
      || { /* Minted */
           "kind": "minted",
           "category": "minted",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Frozen_bonds */
           "kind": "freezer",
           "category": "bonds",
           "contract": $alpha.contract_id,
           "bond_id": $alpha.bond_id,
           "change": $int64,
           "origin": "block" }
      || { /* Frozen_bonds */
           "kind": "freezer",
           "category": "bonds",
           "contract": $alpha.contract_id,
           "bond_id": $alpha.bond_id,
           "change": $int64,
           "origin": "migration" }
      || { /* Frozen_bonds */
           "kind": "freezer",
           "category": "bonds",
           "contract": $alpha.contract_id,
           "bond_id": $alpha.bond_id,
           "change": $int64,
           "origin": "subsidy" }
      || { /* Frozen_bonds */
           "kind": "freezer",
           "category": "bonds",
           "contract": $alpha.contract_id,
           "bond_id": $alpha.bond_id,
           "change": $int64,
           "origin": "simulation" }
      || { /* Frozen_bonds */
           "kind": "freezer",
           "category": "bonds",
           "contract": $alpha.contract_id,
           "bond_id": $alpha.bond_id,
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Smart_rollup_refutation_punishments */
           "kind": "burned",
           "category": "smart_rollup_refutation_punishments",
           "change": $int64,
           "origin": "block" }
      || { /* Smart_rollup_refutation_punishments */
           "kind": "burned",
           "category": "smart_rollup_refutation_punishments",
           "change": $int64,
           "origin": "migration" }
      || { /* Smart_rollup_refutation_punishments */
           "kind": "burned",
           "category": "smart_rollup_refutation_punishments",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Smart_rollup_refutation_punishments */
           "kind": "burned",
           "category": "smart_rollup_refutation_punishments",
           "change": $int64,
           "origin": "simulation" }
      || { /* Smart_rollup_refutation_punishments */
           "kind": "burned",
           "category": "smart_rollup_refutation_punishments",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Smart_rollup_refutation_rewards */
           "kind": "minted",
           "category": "smart_rollup_refutation_rewards",
           "change": $int64,
           "origin": "block" }
      || { /* Smart_rollup_refutation_rewards */
           "kind": "minted",
           "category": "smart_rollup_refutation_rewards",
           "change": $int64,
           "origin": "migration" }
      || { /* Smart_rollup_refutation_rewards */
           "kind": "minted",
           "category": "smart_rollup_refutation_rewards",
           "change": $int64,
           "origin": "subsidy" }
      || { /* Smart_rollup_refutation_rewards */
           "kind": "minted",
           "category": "smart_rollup_refutation_rewards",
           "change": $int64,
           "origin": "simulation" }
      || { /* Smart_rollup_refutation_rewards */
           "kind": "minted",
           "category": "smart_rollup_refutation_rewards",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Unstaked_deposits */
           "kind": "freezer",
           "category": "unstaked_deposits",
           "staker": $alpha.staker,
           "cycle": integer ∈ [-2^31-1, 2^31],
           "change": $int64,
           "origin": "block" }
      || { /* Unstaked_deposits */
           "kind": "freezer",
           "category": "unstaked_deposits",
           "staker": $alpha.staker,
           "cycle": integer ∈ [-2^31-1, 2^31],
           "change": $int64,
           "origin": "migration" }
      || { /* Unstaked_deposits */
           "kind": "freezer",
           "category": "unstaked_deposits",
           "staker": $alpha.staker,
           "cycle": integer ∈ [-2^31-1, 2^31],
           "change": $int64,
           "origin": "subsidy" }
      || { /* Unstaked_deposits */
           "kind": "freezer",
           "category": "unstaked_deposits",
           "staker": $alpha.staker,
           "cycle": integer ∈ [-2^31-1, 2^31],
           "change": $int64,
           "origin": "simulation" }
      || { /* Unstaked_deposits */
           "kind": "freezer",
           "category": "unstaked_deposits",
           "staker": $alpha.staker,
           "cycle": integer ∈ [-2^31-1, 2^31],
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Staking_delegator_numerator */
           "kind": "staking",
           "category": "delegator_numerator",
           "delegator": $alpha.contract_id,
           "change": $int64,
           "origin": "block" }
      || { /* Staking_delegator_numerator */
           "kind": "staking",
           "category": "delegator_numerator",
           "delegator": $alpha.contract_id,
           "change": $int64,
           "origin": "migration" }
      || { /* Staking_delegator_numerator */
           "kind": "staking",
           "category": "delegator_numerator",
           "delegator": $alpha.contract_id,
           "change": $int64,
           "origin": "subsidy" }
      || { /* Staking_delegator_numerator */
           "kind": "staking",
           "category": "delegator_numerator",
           "delegator": $alpha.contract_id,
           "change": $int64,
           "origin": "simulation" }
      || { /* Staking_delegator_numerator */
           "kind": "staking",
           "category": "delegator_numerator",
           "delegator": $alpha.contract_id,
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Staking_delegate_denominator */
           "kind": "staking",
           "category": "delegate_denominator",
           "delegate": $Signature.Public_key_hash,
           "change": $int64,
           "origin": "block" }
      || { /* Staking_delegate_denominator */
           "kind": "staking",
           "category": "delegate_denominator",
           "delegate": $Signature.Public_key_hash,
           "change": $int64,
           "origin": "migration" }
      || { /* Staking_delegate_denominator */
           "kind": "staking",
           "category": "delegate_denominator",
           "delegate": $Signature.Public_key_hash,
           "change": $int64,
           "origin": "subsidy" }
      || { /* Staking_delegate_denominator */
           "kind": "staking",
           "category": "delegate_denominator",
           "delegate": $Signature.Public_key_hash,
           "change": $int64,
           "origin": "simulation" }
      || { /* Staking_delegate_denominator */
           "kind": "staking",
           "category": "delegate_denominator",
           "delegate": $Signature.Public_key_hash,
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* DAL_attesting_rewards */
           "kind": "minted",
           "category": "DAL attesting rewards",
           "change": $int64,
           "origin": "block" }
      || { /* DAL_attesting_rewards */
           "kind": "minted",
           "category": "DAL attesting rewards",
           "change": $int64,
           "origin": "migration" }
      || { /* DAL_attesting_rewards */
           "kind": "minted",
           "category": "DAL attesting rewards",
           "change": $int64,
           "origin": "subsidy" }
      || { /* DAL_attesting_rewards */
           "kind": "minted",
           "category": "DAL attesting rewards",
           "change": $int64,
           "origin": "simulation" }
      || { /* DAL_attesting_rewards */
           "kind": "minted",
           "category": "DAL attesting rewards",
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash }
      || { /* Lost_DAL_attesting_rewards */
           "kind": "burned",
           "category": "lost DAL attesting rewards",
           "delegate": $Signature.Public_key_hash,
           "change": $int64,
           "origin": "block" }
      || { /* Lost_DAL_attesting_rewards */
           "kind": "burned",
           "category": "lost DAL attesting rewards",
           "delegate": $Signature.Public_key_hash,
           "change": $int64,
           "origin": "migration" }
      || { /* Lost_DAL_attesting_rewards */
           "kind": "burned",
           "category": "lost DAL attesting rewards",
           "delegate": $Signature.Public_key_hash,
           "change": $int64,
           "origin": "subsidy" }
      || { /* Lost_DAL_attesting_rewards */
           "kind": "burned",
           "category": "lost DAL attesting rewards",
           "delegate": $Signature.Public_key_hash,
           "change": $int64,
           "origin": "simulation" }
      || { /* Lost_DAL_attesting_rewards */
           "kind": "burned",
           "category": "lost DAL attesting rewards",
           "delegate": $Signature.Public_key_hash,
           "change": $int64,
           "origin": "delayed_operation",
           "delayed_operation_hash": $Operation_hash } ... ]
  $alpha.sapling_state_id:
    /* Sapling state identifier
       A sapling state identifier */
    $bignum
  $alpha.scripted.contracts: { "code": any,
                               "storage": any }
  $alpha.staker:
    /* unstaked_frozen_staker
       Abstract notion of staker used in operation receipts for unstaked
       frozen deposits, either a single staker or all the stakers delegating
       to some delegate. */
    { /* Single */
      "contract": $alpha.contract_id,
      "delegate": $Signature.Public_key_hash }
    || { /* Shared */
         "delegate": $Signature.Public_key_hash }
  $alpha.transaction_destination:
    /* A destination of a transaction
       A destination notation compatible with the contract notation as given
       to an RPC or inside scripts. Can be a base58 implicit contract hash, a
       base58 originated contract hash, a base58 originated transaction
       rollup, or a base58 originated smart rollup. */
    $unistring
  $bignum:
    /* Big number
       Decimal representation of a big number */
    string
  $block_hash:
    /* A block identifier (Base58Check-encoded) */
    $unistring
  $block_header_metadata:
    { "protocol": "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK",
      "next_protocol": "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK",
      "test_chain_status": $test_chain_status,
      "max_operations_ttl": integer ∈ [-2^30, 2^30],
      "max_operation_data_length": integer ∈ [-2^30, 2^30],
      "max_block_header_length": integer ∈ [-2^30, 2^30],
      "max_operation_list_length":
        [ { "max_size": integer ∈ [-2^30, 2^30],
            "max_op"?: integer ∈ [-2^30, 2^30] } ... ],
      "proposer": $Signature.Public_key_hash,
      "baker": $Signature.Public_key_hash,
      "level_info":
        { "level":
            integer ∈ [0, 2^31]
            /* The level of the block relative to genesis. This is also the
               Shell's notion of level. */,
          "level_position":
            integer ∈ [-2^31-1, 2^31]
            /* The level of the block relative to the successor of the
               genesis block. More precisely, it is the position of the block
               relative to the block that starts the "Alpha family" of
               protocols, which includes all protocols except Genesis (that
               is, from 001 onwards). */,
          "cycle":
            integer ∈ [-2^31-1, 2^31]
            /* The current cycle's number. Note that cycles are a
               protocol-specific notion. As a result, the cycle number starts
               at 0 with the first block of the Alpha family of protocols. */,
          "cycle_position":
            integer ∈ [-2^31-1, 2^31]
            /* The current level of the block relative to the first block of
               the current cycle. */,
          "expected_commitment":
            boolean
            /* Tells whether the baker of this block has to commit a seed
               nonce hash. */ },
      "voting_period_info":
        { "voting_period":
            { /* The voting period to which the block belongs. */
              "index":
                integer ∈ [-2^31-1, 2^31]
                /* The voting period's index. Starts at 0 with the first
                   block of the Alpha family of protocols. */,
              "kind":
                /* One of the several kinds of periods in the voting
                   procedure. */
                "proposal"
                || "exploration"
                || "cooldown"
                || "promotion"
                || "adoption",
              "start_position":
                integer ∈ [-2^31-1, 2^31]
                /* The relative position of the first level of the period
                   with respect to the first level of the Alpha family of
                   protocols. */ },
          "position":
            integer ∈ [-2^31-1, 2^31]
            /* The position of the block within the voting period. */,
          "remaining":
            integer ∈ [-2^31-1, 2^31]
            /* The number of blocks remaining till the end of the voting
               period. */ },
      "nonce_hash": $cycle_nonce /* Some */ || null /* None */,
      "deactivated": [ $Signature.Public_key_hash ... ],
      "balance_updates"?: $alpha.operation_metadata.alpha.balance_updates,
      "liquidity_baking_toggle_ema": integer ∈ [-2^31-1, 2^31],
      "adaptive_issuance_vote_ema": integer ∈ [-2^31-1, 2^31],
      "adaptive_issuance_activation_cycle"?: integer ∈ [-2^31-1, 2^31],
      "implicit_operations_results":
        [ $alpha.operation.alpha.successful_manager_operation_result ... ],
      "proposer_consensus_key": $Signature.Public_key_hash,
      "baker_consensus_key": $Signature.Public_key_hash,
      "consumed_milligas": $positive_bignum,
      "dal_attestation": $bignum }
  $cycle_nonce:
    /* A nonce hash (Base58Check-encoded) */
    $unistring
  $fitness:
    /* Block fitness
       The fitness, or score, of a block, that allow the Tezos to decide
       which chain is the best. A fitness value is a list of byte sequences.
       They are compared as follows: shortest lists are smaller; lists of the
       same length are compared according to the lexicographical order. */
    [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ]
  $int64:
    /* 64 bit integers
       Decimal representation of 64 bit integers */
    string
  $micheline.alpha.michelson_v1.expression:
    { /* Int */
      "int": $bignum }
    || { /* String */
         "string": $unistring }
    || { /* Bytes */
         "bytes": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
    || [ $micheline.alpha.michelson_v1.expression ... ]
    /* Sequence */
    || { /* Prim__generic
            Generic primitive (any number of args with or without
            annotations) */
         "prim": $alpha.michelson.v1.primitives,
         "args"?: [ $micheline.alpha.michelson_v1.expression ... ],
         "annots"?: [ $unistring ... ] }
  $operation:
    { /* An operation's shell header. */
      "protocol": "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK",
      "chain_id": $Chain_id,
      "hash": $Operation_hash,
      "branch": $block_hash,
      "contents": [ $alpha.operation.alpha.contents ... ],
      "signature"?: $Signature.V1,
      "metadata": "too large" }
    || { /* An operation's shell header. */
         "protocol": "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK",
         "chain_id": $Chain_id,
         "hash": $Operation_hash,
         "branch": $block_hash,
         "contents": [ $alpha.operation.alpha.contents ... ],
         "signature"?: $Signature.V1 }
    || { /* An operation's shell header. */
         "protocol": "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK",
         "chain_id": $Chain_id,
         "hash": $Operation_hash,
         "branch": $block_hash,
         "contents":
           [ $alpha.operation.alpha.operation_contents_and_result ... ],
         "signature"?: $Signature.V1 }
    || { /* An operation's shell header. */
         "protocol": "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK",
         "chain_id": $Chain_id,
         "hash": $Operation_hash,
         "branch": $block_hash,
         "contents": [ $alpha.operation.alpha.contents ... ],
         "signature"?: $Signature.V1 }
  $positive_bignum:
    /* Positive big number
       Decimal representation of a positive big number */
    string
  $raw_block_header:
    /* Shell header
       Block header's shell-related content. It contains information such as
       the block level, its predecessor and timestamp. */
    { "level": integer ∈ [-2^31-1, 2^31],
      "proto": integer ∈ [0, 255],
      "predecessor": $block_hash,
      "timestamp": $timestamp.protocol,
      "validation_pass": integer ∈ [0, 255],
      "operations_hash": $Operation_list_list_hash,
      "fitness": $fitness,
      "context": $Context_hash,
      "payload_hash": $value_hash,
      "payload_round": integer ∈ [-2^31-1, 2^31],
      "proof_of_work_nonce": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
      "seed_nonce_hash"?: $cycle_nonce,
      "liquidity_baking_toggle_vote": $alpha.liquidity_baking_vote,
      "adaptive_issuance_vote": $alpha.adaptive_issuance_vote,
      "signature": $Signature.V1 }
  $sapling.DH.epk: /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  $sapling.transaction.ciphertext:
    { "cv": $sapling.transaction.commitment_value,
      "epk": $sapling.DH.epk,
      "payload_enc": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
      "nonce_enc": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
      "payload_out": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
      "nonce_out": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
  $sapling.transaction.commitment: /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  $sapling.transaction.commitment_value: /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  $sapling.transaction.nullifier: /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  $script_expr:
    /* A script expression ID (Base58Check-encoded) */
    $unistring
  $smart_rollup_address:
    /* A smart rollup address (Base58Check-encoded) */
    $unistring
  $smart_rollup_commitment_hash:
    /* The hash of a commitment of a smart rollup (Base58Check-encoded) */
    $unistring
  $smart_rollup_state_hash:
    /* The hash of the VM state of a smart rollup (Base58Check-encoded) */
    $unistring
  $test_chain_status:
    /* The status of the test chain: not_running (there is no test chain at
       the moment), forking (the test chain is being setup), running (the
       test chain is running). */
    { /* Not_running */
      "status": "not_running" }
    || { /* Forking */
         "status": "forking",
         "protocol": $Protocol_hash,
         "expiration": $timestamp.protocol }
    || { /* Running */
         "status": "running",
         "chain_id": $Chain_id,
         "genesis": $block_hash,
         "protocol": $Protocol_hash,
         "expiration": $timestamp.protocol }
  $timestamp.protocol:
    /* A timestamp as seen by the protocol: second-level precision, epoch
       based. */
    $unistring
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  $value_hash:
    /* Hash of a consensus value (Base58Check-encoded) */
    $unistring
  +--------------------------------+----------------------+-------------------------------------+
  | Name                           | Size                 | Contents                            |
  +================================+======================+=====================================+
  | chain_id                       | 4 bytes              | bytes                               |
  +--------------------------------+----------------------+-------------------------------------+
  | hash                           | 32 bytes             | bytes                               |
  +--------------------------------+----------------------+-------------------------------------+
  | # bytes in next field          | 4 bytes              | unsigned 30-bit big-endian integer  |
  +--------------------------------+----------------------+-------------------------------------+
  | header                         | Variable             | $raw_block_header                   |
  +--------------------------------+----------------------+-------------------------------------+
  | ? presence of field "metadata" | 1 byte               | boolean (0 for false, 255 for true) |
  +--------------------------------+----------------------+-------------------------------------+
  | metadata                       | Determined from data | $X_0                                |
  +--------------------------------+----------------------+-------------------------------------+
  | # bytes in next field          | 4 bytes              | unsigned 30-bit big-endian integer  |
  +--------------------------------+----------------------+-------------------------------------+
  | operations                     | Variable             | sequence of $X_78                   |
  +--------------------------------+----------------------+-------------------------------------+


  fitness.elem
  ************

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  alpha.per_block_votes (1 byte, 8-bit tag)
  *****************************************

  case_0 (tag 0)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_1 (tag 1)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_2 (tag 2)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_4 (tag 4)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_5 (tag 5)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_6 (tag 6)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_8 (tag 8)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_9 (tag 9)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_10 (tag 10)
  ================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  raw_block_header
  ****************

  +---------------------------------------+----------+-------------------------------------+
  | Name                                  | Size     | Contents                            |
  +=======================================+==========+=====================================+
  | level                                 | 4 bytes  | signed 32-bit big-endian integer    |
  +---------------------------------------+----------+-------------------------------------+
  | proto                                 | 1 byte   | unsigned 8-bit integer              |
  +---------------------------------------+----------+-------------------------------------+
  | predecessor                           | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | timestamp                             | 8 bytes  | signed 64-bit big-endian integer    |
  +---------------------------------------+----------+-------------------------------------+
  | validation_pass                       | 1 byte   | unsigned 8-bit integer              |
  +---------------------------------------+----------+-------------------------------------+
  | operations_hash                       | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | # bytes in field "fitness"            | 4 bytes  | unsigned 30-bit big-endian integer  |
  +---------------------------------------+----------+-------------------------------------+
  | fitness                               | Variable | sequence of $fitness.elem           |
  +---------------------------------------+----------+-------------------------------------+
  | context                               | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | payload_hash                          | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | payload_round                         | 4 bytes  | signed 32-bit big-endian integer    |
  +---------------------------------------+----------+-------------------------------------+
  | proof_of_work_nonce                   | 8 bytes  | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | ? presence of field "seed_nonce_hash" | 1 byte   | boolean (0 for false, 255 for true) |
  +---------------------------------------+----------+-------------------------------------+
  | seed_nonce_hash                       | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | per_block_votes                       | 1 byte   | $alpha.per_block_votes              |
  +---------------------------------------+----------+-------------------------------------+
  | signature                             | Variable | bytes                               |
  +---------------------------------------+----------+-------------------------------------+


  test_chain_status (Determined from data, 8-bit tag)
  ***************************************************

  Not_running (tag 0)
  ===================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Forking (tag 1)
  ===============

  +------------+----------+----------------------------------+
  | Name       | Size     | Contents                         |
  +============+==========+==================================+
  | Tag        | 1 byte   | unsigned 8-bit integer           |
  +------------+----------+----------------------------------+
  | protocol   | 32 bytes | bytes                            |
  +------------+----------+----------------------------------+
  | expiration | 8 bytes  | signed 64-bit big-endian integer |
  +------------+----------+----------------------------------+


  Running (tag 2)
  ===============

  +------------+----------+----------------------------------+
  | Name       | Size     | Contents                         |
  +============+==========+==================================+
  | Tag        | 1 byte   | unsigned 8-bit integer           |
  +------------+----------+----------------------------------+
  | chain_id   | 4 bytes  | bytes                            |
  +------------+----------+----------------------------------+
  | genesis    | 32 bytes | bytes                            |
  +------------+----------+----------------------------------+
  | protocol   | 32 bytes | bytes                            |
  +------------+----------+----------------------------------+
  | expiration | 8 bytes  | signed 64-bit big-endian integer |
  +------------+----------+----------------------------------+


  X_2
  ***

  +------------------------------+---------+-------------------------------------------------------------------------+
  | Name                         | Size    | Contents                                                                |
  +==============================+=========+=========================================================================+
  | max_size                     | 4 bytes | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------+---------+-------------------------------------------------------------------------+
  | ? presence of field "max_op" | 1 byte  | boolean (0 for false, 255 for true)                                     |
  +------------------------------+---------+-------------------------------------------------------------------------+
  | max_op                       | 4 bytes | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------+---------+-------------------------------------------------------------------------+


  X_1
  ***

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_2                   |
  +-----------------------+----------+------------------------------------+


  public_key_hash (21 bytes, 8-bit tag)
  *************************************

  Ed25519 (tag 0)
  ===============

  +-------------------------+----------+------------------------+
  | Name                    | Size     | Contents               |
  +=========================+==========+========================+
  | Tag                     | 1 byte   | unsigned 8-bit integer |
  +-------------------------+----------+------------------------+
  | Ed25519.Public_key_hash | 20 bytes | bytes                  |
  +-------------------------+----------+------------------------+


  Secp256k1 (tag 1)
  =================

  +---------------------------+----------+------------------------+
  | Name                      | Size     | Contents               |
  +===========================+==========+========================+
  | Tag                       | 1 byte   | unsigned 8-bit integer |
  +---------------------------+----------+------------------------+
  | Secp256k1.Public_key_hash | 20 bytes | bytes                  |
  +---------------------------+----------+------------------------+


  P256 (tag 2)
  ============

  +----------------------+----------+------------------------+
  | Name                 | Size     | Contents               |
  +======================+==========+========================+
  | Tag                  | 1 byte   | unsigned 8-bit integer |
  +----------------------+----------+------------------------+
  | P256.Public_key_hash | 20 bytes | bytes                  |
  +----------------------+----------+------------------------+


  Bls (tag 3)
  ===========

  +---------------------------+----------+------------------------+
  | Name                      | Size     | Contents               |
  +===========================+==========+========================+
  | Tag                       | 1 byte   | unsigned 8-bit integer |
  +---------------------------+----------+------------------------+
  | Bls12_381.Public_key_hash | 20 bytes | bytes                  |
  +---------------------------+----------+------------------------+


  X_3
  ***

  +---------------------+---------+-------------------------------------+
  | Name                | Size    | Contents                            |
  +=====================+=========+=====================================+
  | level               | 4 bytes | signed 32-bit big-endian integer    |
  +---------------------+---------+-------------------------------------+
  | level_position      | 4 bytes | signed 32-bit big-endian integer    |
  +---------------------+---------+-------------------------------------+
  | cycle               | 4 bytes | signed 32-bit big-endian integer    |
  +---------------------+---------+-------------------------------------+
  | cycle_position      | 4 bytes | signed 32-bit big-endian integer    |
  +---------------------+---------+-------------------------------------+
  | expected_commitment | 1 byte  | boolean (0 for false, 255 for true) |
  +---------------------+---------+-------------------------------------+


  X_6 (1 byte, 8-bit tag)
  ***********************

  Proposal (tag 0)
  ================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  exploration (tag 1)
  ===================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Cooldown (tag 2)
  ================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Promotion (tag 3)
  =================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Adoption (tag 4)
  ================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  X_5
  ***

  +----------------+---------+----------------------------------+
  | Name           | Size    | Contents                         |
  +================+=========+==================================+
  | index          | 4 bytes | signed 32-bit big-endian integer |
  +----------------+---------+----------------------------------+
  | kind           | 1 byte  | $X_6                             |
  +----------------+---------+----------------------------------+
  | start_position | 4 bytes | signed 32-bit big-endian integer |
  +----------------+---------+----------------------------------+


  X_4
  ***

  +---------------+---------+----------------------------------+
  | Name          | Size    | Contents                         |
  +===============+=========+==================================+
  | voting_period | 9 bytes | $X_5                             |
  +---------------+---------+----------------------------------+
  | position      | 4 bytes | signed 32-bit big-endian integer |
  +---------------+---------+----------------------------------+
  | remaining     | 4 bytes | signed 32-bit big-endian integer |
  +---------------+---------+----------------------------------+


  X_7 (Determined from data, 8-bit tag)
  *************************************

  None (tag 0)
  ============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Some (tag 1)
  ============

  +-------------+----------+------------------------+
  | Name        | Size     | Contents               |
  +=============+==========+========================+
  | Tag         | 1 byte   | unsigned 8-bit integer |
  +-------------+----------+------------------------+
  | cycle_nonce | 32 bytes | bytes                  |
  +-------------+----------+------------------------+


  alpha.contract_id (22 bytes, 8-bit tag)
  ***************************************

  Implicit (tag 0)
  ================

  +---------------------------+----------+------------------------+
  | Name                      | Size     | Contents               |
  +===========================+==========+========================+
  | Tag                       | 1 byte   | unsigned 8-bit integer |
  +---------------------------+----------+------------------------+
  | Signature.Public_key_hash | 21 bytes | $public_key_hash       |
  +---------------------------+----------+------------------------+


  Originated (tag 1)
  ==================

  +---------------+----------+------------------------+
  | Name          | Size     | Contents               |
  +===============+==========+========================+
  | Tag           | 1 byte   | unsigned 8-bit integer |
  +---------------+----------+------------------------+
  | Contract_hash | 20 bytes | bytes                  |
  +---------------+----------+------------------------+
  | padding       | 1 byte   | padding                |
  +---------------+----------+------------------------+


  alpha.staker (Determined from data, 8-bit tag)
  **********************************************

  Single (tag 0)
  ==============

  +----------+----------+------------------------+
  | Name     | Size     | Contents               |
  +==========+==========+========================+
  | Tag      | 1 byte   | unsigned 8-bit integer |
  +----------+----------+------------------------+
  | contract | 22 bytes | $alpha.contract_id     |
  +----------+----------+------------------------+
  | delegate | 21 bytes | $public_key_hash       |
  +----------+----------+------------------------+


  Shared (tag 1)
  ==============

  +----------+----------+------------------------+
  | Name     | Size     | Contents               |
  +==========+==========+========================+
  | Tag      | 1 byte   | unsigned 8-bit integer |
  +----------+----------+------------------------+
  | delegate | 21 bytes | $public_key_hash       |
  +----------+----------+------------------------+


  alpha.bond_id (21 bytes, 8-bit tag)
  ***********************************

  Smart_rollup_bond_id (tag 1)
  ============================

  +--------------+----------+------------------------+
  | Name         | Size     | Contents               |
  +==============+==========+========================+
  | Tag          | 1 byte   | unsigned 8-bit integer |
  +--------------+----------+------------------------+
  | smart_rollup | 20 bytes | bytes                  |
  +--------------+----------+------------------------+


  alpha.frozen_staker (Determined from data, 8-bit tag)
  *****************************************************

  Single (tag 0)
  ==============

  +----------+----------+------------------------+
  | Name     | Size     | Contents               |
  +==========+==========+========================+
  | Tag      | 1 byte   | unsigned 8-bit integer |
  +----------+----------+------------------------+
  | contract | 22 bytes | $alpha.contract_id     |
  +----------+----------+------------------------+
  | delegate | 21 bytes | $public_key_hash       |
  +----------+----------+------------------------+


  Shared (tag 1)
  ==============

  +----------+----------+------------------------+
  | Name     | Size     | Contents               |
  +==========+==========+========================+
  | Tag      | 1 byte   | unsigned 8-bit integer |
  +----------+----------+------------------------+
  | delegate | 21 bytes | $public_key_hash       |
  +----------+----------+------------------------+


  Baker (tag 2)
  =============

  +-----------------+----------+------------------------+
  | Name            | Size     | Contents               |
  +=================+==========+========================+
  | Tag             | 1 byte   | unsigned 8-bit integer |
  +-----------------+----------+------------------------+
  | baker_own_stake | 21 bytes | $public_key_hash       |
  +-----------------+----------+------------------------+


  Baker_edge (tag 3)
  ==================

  +------------+----------+------------------------+
  | Name       | Size     | Contents               |
  +============+==========+========================+
  | Tag        | 1 byte   | unsigned 8-bit integer |
  +------------+----------+------------------------+
  | baker_edge | 21 bytes | $public_key_hash       |
  +------------+----------+------------------------+


  X_9 (Determined from data, 8-bit tag)
  *************************************

  Contract (tag 0)
  ================

  +----------+----------+----------------------------------+
  | Name     | Size     | Contents                         |
  +==========+==========+==================================+
  | Tag      | 1 byte   | unsigned 8-bit integer           |
  +----------+----------+----------------------------------+
  | contract | 22 bytes | $alpha.contract_id               |
  +----------+----------+----------------------------------+
  | change   | 8 bytes  | signed 64-bit big-endian integer |
  +----------+----------+----------------------------------+


  Block_fees (tag 2)
  ==================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Deposits (tag 4)
  ================

  +--------+----------------------+----------------------------------+
  | Name   | Size                 | Contents                         |
  +========+======================+==================================+
  | Tag    | 1 byte               | unsigned 8-bit integer           |
  +--------+----------------------+----------------------------------+
  | staker | Determined from data | $alpha.frozen_staker             |
  +--------+----------------------+----------------------------------+
  | change | 8 bytes              | signed 64-bit big-endian integer |
  +--------+----------------------+----------------------------------+


  Nonce_revelation_rewards (tag 5)
  ================================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Attesting_rewards (tag 7)
  =========================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Baking_rewards (tag 8)
  ======================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Baking_bonuses (tag 9)
  ======================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Storage_fees (tag 11)
  =====================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Double_signing_punishments (tag 12)
  ===================================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Lost_attesting_rewards (tag 13)
  ===============================

  +---------------+----------+-------------------------------------+
  | Name          | Size     | Contents                            |
  +===============+==========+=====================================+
  | Tag           | 1 byte   | unsigned 8-bit integer              |
  +---------------+----------+-------------------------------------+
  | delegate      | 21 bytes | $public_key_hash                    |
  +---------------+----------+-------------------------------------+
  | participation | 1 byte   | boolean (0 for false, 255 for true) |
  +---------------+----------+-------------------------------------+
  | revelation    | 1 byte   | boolean (0 for false, 255 for true) |
  +---------------+----------+-------------------------------------+
  | change        | 8 bytes  | signed 64-bit big-endian integer    |
  +---------------+----------+-------------------------------------+


  Liquidity_baking_subsidies (tag 14)
  ===================================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Burned (tag 15)
  ===============

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Commitments (tag 16)
  ====================

  +-----------+----------+----------------------------------+
  | Name      | Size     | Contents                         |
  +===========+==========+==================================+
  | Tag       | 1 byte   | unsigned 8-bit integer           |
  +-----------+----------+----------------------------------+
  | committer | 20 bytes | bytes                            |
  +-----------+----------+----------------------------------+
  | change    | 8 bytes  | signed 64-bit big-endian integer |
  +-----------+----------+----------------------------------+


  Bootstrap (tag 17)
  ==================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Invoice (tag 18)
  ================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Initial_commitments (tag 19)
  ============================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Minted (tag 20)
  ===============

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Frozen_bonds (tag 21)
  =====================

  +----------+----------+----------------------------------+
  | Name     | Size     | Contents                         |
  +==========+==========+==================================+
  | Tag      | 1 byte   | unsigned 8-bit integer           |
  +----------+----------+----------------------------------+
  | contract | 22 bytes | $alpha.contract_id               |
  +----------+----------+----------------------------------+
  | bond_id  | 21 bytes | $alpha.bond_id                   |
  +----------+----------+----------------------------------+
  | change   | 8 bytes  | signed 64-bit big-endian integer |
  +----------+----------+----------------------------------+


  Smart_rollup_refutation_punishments (tag 24)
  ============================================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Smart_rollup_refutation_rewards (tag 25)
  ========================================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Unstaked_deposits (tag 26)
  ==========================

  +--------+----------------------+----------------------------------+
  | Name   | Size                 | Contents                         |
  +========+======================+==================================+
  | Tag    | 1 byte               | unsigned 8-bit integer           |
  +--------+----------------------+----------------------------------+
  | staker | Determined from data | $alpha.staker                    |
  +--------+----------------------+----------------------------------+
  | cycle  | 4 bytes              | signed 32-bit big-endian integer |
  +--------+----------------------+----------------------------------+
  | change | 8 bytes              | signed 64-bit big-endian integer |
  +--------+----------------------+----------------------------------+


  Staking_delegator_numerator (tag 27)
  ====================================

  +-----------+----------+----------------------------------+
  | Name      | Size     | Contents                         |
  +===========+==========+==================================+
  | Tag       | 1 byte   | unsigned 8-bit integer           |
  +-----------+----------+----------------------------------+
  | delegator | 22 bytes | $alpha.contract_id               |
  +-----------+----------+----------------------------------+
  | change    | 8 bytes  | signed 64-bit big-endian integer |
  +-----------+----------+----------------------------------+


  Staking_delegate_denominator (tag 28)
  =====================================

  +----------+----------+----------------------------------+
  | Name     | Size     | Contents                         |
  +==========+==========+==================================+
  | Tag      | 1 byte   | unsigned 8-bit integer           |
  +----------+----------+----------------------------------+
  | delegate | 21 bytes | $public_key_hash                 |
  +----------+----------+----------------------------------+
  | change   | 8 bytes  | signed 64-bit big-endian integer |
  +----------+----------+----------------------------------+


  DAL_attesting_rewards (tag 29)
  ==============================

  +--------+---------+----------------------------------+
  | Name   | Size    | Contents                         |
  +========+=========+==================================+
  | Tag    | 1 byte  | unsigned 8-bit integer           |
  +--------+---------+----------------------------------+
  | change | 8 bytes | signed 64-bit big-endian integer |
  +--------+---------+----------------------------------+


  Lost_DAL_attesting_rewards (tag 30)
  ===================================

  +----------+----------+----------------------------------+
  | Name     | Size     | Contents                         |
  +==========+==========+==================================+
  | Tag      | 1 byte   | unsigned 8-bit integer           |
  +----------+----------+----------------------------------+
  | delegate | 21 bytes | $public_key_hash                 |
  +----------+----------+----------------------------------+
  | change   | 8 bytes  | signed 64-bit big-endian integer |
  +----------+----------+----------------------------------+


  X_10 (Determined from data, 8-bit tag)
  **************************************

  Block_application (tag 0)
  =========================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Protocol_migration (tag 1)
  ==========================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Subsidy (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Simulation (tag 3)
  ==================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Delayed_operation (tag 4)
  =========================

  +------------------------+----------+------------------------+
  | Name                   | Size     | Contents               |
  +========================+==========+========================+
  | Tag                    | 1 byte   | unsigned 8-bit integer |
  +------------------------+----------+------------------------+
  | delayed_operation_hash | 32 bytes | bytes                  |
  +------------------------+----------+------------------------+


  X_8
  ***

  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_9     |
  +-----------------+----------------------+----------+
  | Unnamed field 1 | Determined from data | $X_10    |
  +-----------------+----------------------+----------+


  N.t
  ***

  A variable-length sequence of bytes encoding a Zarith natural number. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). Size bits ignored, the data is the binary representation of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | N.t  | Determined from data | bytes    |
  +------+----------------------+----------+


  Z.t
  ***

  A variable-length sequence of bytes encoding a Zarith integer. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). The second most significant bit of the first byte is reserved for the sign (0 for positive, 1 for negative). Size and sign bits ignored, the data is the binary representation of the absolute value of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | Z.t  | Determined from data | bytes    |
  +------+----------------------+----------+


  alpha.contract_id.originated (22 bytes, 8-bit tag)
  **************************************************

  Originated (tag 1)
  ==================

  +---------------+----------+------------------------+
  | Name          | Size     | Contents               |
  +===============+==========+========================+
  | Tag           | 1 byte   | unsigned 8-bit integer |
  +---------------+----------+------------------------+
  | Contract_hash | 20 bytes | bytes                  |
  +---------------+----------+------------------------+
  | padding       | 1 byte   | padding                |
  +---------------+----------+------------------------+


  sapling.transaction.ciphertext
  ******************************

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | cv                    | 32 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+
  | epk                   | 32 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | payload_enc           | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+
  | nonce_enc             | 24 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+
  | payload_out           | 80 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+
  | nonce_out             | 24 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+


  X_24
  ****

  +-----------------+----------------------+---------------------------------+
  | Name            | Size                 | Contents                        |
  +=================+======================+=================================+
  | Unnamed field 0 | 32 bytes             | bytes                           |
  +-----------------+----------------------+---------------------------------+
  | Unnamed field 1 | Determined from data | $sapling.transaction.ciphertext |
  +-----------------+----------------------+---------------------------------+


  X_23
  ****

  +-----------------------------+----------+------------------------------------+
  | Name                        | Size     | Contents                           |
  +=============================+==========+====================================+
  | # bytes in next field       | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------------+----------+------------------------------------+
  | commitments_and_ciphertexts | Variable | sequence of $X_24                  |
  +-----------------------------+----------+------------------------------------+
  | # bytes in next field       | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------------+----------+------------------------------------+
  | nullifiers                  | Variable | sequence of bytes                  |
  +-----------------------------+----------+------------------------------------+


  X_29 (Determined from data, 8-bit tag)
  **************************************

  update (tag 0)
  ==============

  +---------+----------------------+------------------------+
  | Name    | Size                 | Contents               |
  +=========+======================+========================+
  | Tag     | 1 byte               | unsigned 8-bit integer |
  +---------+----------------------+------------------------+
  | updates | Determined from data | $X_23                  |
  +---------+----------------------+------------------------+


  remove (tag 1)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  copy (tag 2)
  ============

  +---------+----------------------+------------------------+
  | Name    | Size                 | Contents               |
  +=========+======================+========================+
  | Tag     | 1 byte               | unsigned 8-bit integer |
  +---------+----------------------+------------------------+
  | source  | Determined from data | $Z.t                   |
  +---------+----------------------+------------------------+
  | updates | Determined from data | $X_23                  |
  +---------+----------------------+------------------------+


  alloc (tag 3)
  =============

  +-----------+----------------------+------------------------------------+
  | Name      | Size                 | Contents                           |
  +===========+======================+====================================+
  | Tag       | 1 byte               | unsigned 8-bit integer             |
  +-----------+----------------------+------------------------------------+
  | updates   | Determined from data | $X_23                              |
  +-----------+----------------------+------------------------------------+
  | memo_size | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------+----------------------+------------------------------------+


  alpha.michelson.v1.primitives (Enumeration: unsigned 8-bit integer):
  ********************************************************************

  +-------------+--------------------------------+
  | Case number | Encoded string                 |
  +=============+================================+
  | 0           | parameter                      |
  +-------------+--------------------------------+
  | 1           | storage                        |
  +-------------+--------------------------------+
  | 2           | code                           |
  +-------------+--------------------------------+
  | 3           | False                          |
  +-------------+--------------------------------+
  | 4           | Elt                            |
  +-------------+--------------------------------+
  | 5           | Left                           |
  +-------------+--------------------------------+
  | 6           | None                           |
  +-------------+--------------------------------+
  | 7           | Pair                           |
  +-------------+--------------------------------+
  | 8           | Right                          |
  +-------------+--------------------------------+
  | 9           | Some                           |
  +-------------+--------------------------------+
  | 10          | True                           |
  +-------------+--------------------------------+
  | 11          | Unit                           |
  +-------------+--------------------------------+
  | 12          | PACK                           |
  +-------------+--------------------------------+
  | 13          | UNPACK                         |
  +-------------+--------------------------------+
  | 14          | BLAKE2B                        |
  +-------------+--------------------------------+
  | 15          | SHA256                         |
  +-------------+--------------------------------+
  | 16          | SHA512                         |
  +-------------+--------------------------------+
  | 17          | ABS                            |
  +-------------+--------------------------------+
  | 18          | ADD                            |
  +-------------+--------------------------------+
  | 19          | AMOUNT                         |
  +-------------+--------------------------------+
  | 20          | AND                            |
  +-------------+--------------------------------+
  | 21          | BALANCE                        |
  +-------------+--------------------------------+
  | 22          | CAR                            |
  +-------------+--------------------------------+
  | 23          | CDR                            |
  +-------------+--------------------------------+
  | 24          | CHECK_SIGNATURE                |
  +-------------+--------------------------------+
  | 25          | COMPARE                        |
  +-------------+--------------------------------+
  | 26          | CONCAT                         |
  +-------------+--------------------------------+
  | 27          | CONS                           |
  +-------------+--------------------------------+
  | 28          | CREATE_ACCOUNT                 |
  +-------------+--------------------------------+
  | 29          | CREATE_CONTRACT                |
  +-------------+--------------------------------+
  | 30          | IMPLICIT_ACCOUNT               |
  +-------------+--------------------------------+
  | 31          | DIP                            |
  +-------------+--------------------------------+
  | 32          | DROP                           |
  +-------------+--------------------------------+
  | 33          | DUP                            |
  +-------------+--------------------------------+
  | 34          | EDIV                           |
  +-------------+--------------------------------+
  | 35          | EMPTY_MAP                      |
  +-------------+--------------------------------+
  | 36          | EMPTY_SET                      |
  +-------------+--------------------------------+
  | 37          | EQ                             |
  +-------------+--------------------------------+
  | 38          | EXEC                           |
  +-------------+--------------------------------+
  | 39          | FAILWITH                       |
  +-------------+--------------------------------+
  | 40          | GE                             |
  +-------------+--------------------------------+
  | 41          | GET                            |
  +-------------+--------------------------------+
  | 42          | GT                             |
  +-------------+--------------------------------+
  | 43          | HASH_KEY                       |
  +-------------+--------------------------------+
  | 44          | IF                             |
  +-------------+--------------------------------+
  | 45          | IF_CONS                        |
  +-------------+--------------------------------+
  | 46          | IF_LEFT                        |
  +-------------+--------------------------------+
  | 47          | IF_NONE                        |
  +-------------+--------------------------------+
  | 48          | INT                            |
  +-------------+--------------------------------+
  | 49          | LAMBDA                         |
  +-------------+--------------------------------+
  | 50          | LE                             |
  +-------------+--------------------------------+
  | 51          | LEFT                           |
  +-------------+--------------------------------+
  | 52          | LOOP                           |
  +-------------+--------------------------------+
  | 53          | LSL                            |
  +-------------+--------------------------------+
  | 54          | LSR                            |
  +-------------+--------------------------------+
  | 55          | LT                             |
  +-------------+--------------------------------+
  | 56          | MAP                            |
  +-------------+--------------------------------+
  | 57          | MEM                            |
  +-------------+--------------------------------+
  | 58          | MUL                            |
  +-------------+--------------------------------+
  | 59          | NEG                            |
  +-------------+--------------------------------+
  | 60          | NEQ                            |
  +-------------+--------------------------------+
  | 61          | NIL                            |
  +-------------+--------------------------------+
  | 62          | NONE                           |
  +-------------+--------------------------------+
  | 63          | NOT                            |
  +-------------+--------------------------------+
  | 64          | NOW                            |
  +-------------+--------------------------------+
  | 65          | OR                             |
  +-------------+--------------------------------+
  | 66          | PAIR                           |
  +-------------+--------------------------------+
  | 67          | PUSH                           |
  +-------------+--------------------------------+
  | 68          | RIGHT                          |
  +-------------+--------------------------------+
  | 69          | SIZE                           |
  +-------------+--------------------------------+
  | 70          | SOME                           |
  +-------------+--------------------------------+
  | 71          | SOURCE                         |
  +-------------+--------------------------------+
  | 72          | SENDER                         |
  +-------------+--------------------------------+
  | 73          | SELF                           |
  +-------------+--------------------------------+
  | 74          | STEPS_TO_QUOTA                 |
  +-------------+--------------------------------+
  | 75          | SUB                            |
  +-------------+--------------------------------+
  | 76          | SWAP                           |
  +-------------+--------------------------------+
  | 77          | TRANSFER_TOKENS                |
  +-------------+--------------------------------+
  | 78          | SET_DELEGATE                   |
  +-------------+--------------------------------+
  | 79          | UNIT                           |
  +-------------+--------------------------------+
  | 80          | UPDATE                         |
  +-------------+--------------------------------+
  | 81          | XOR                            |
  +-------------+--------------------------------+
  | 82          | ITER                           |
  +-------------+--------------------------------+
  | 83          | LOOP_LEFT                      |
  +-------------+--------------------------------+
  | 84          | ADDRESS                        |
  +-------------+--------------------------------+
  | 85          | CONTRACT                       |
  +-------------+--------------------------------+
  | 86          | ISNAT                          |
  +-------------+--------------------------------+
  | 87          | CAST                           |
  +-------------+--------------------------------+
  | 88          | RENAME                         |
  +-------------+--------------------------------+
  | 89          | bool                           |
  +-------------+--------------------------------+
  | 90          | contract                       |
  +-------------+--------------------------------+
  | 91          | int                            |
  +-------------+--------------------------------+
  | 92          | key                            |
  +-------------+--------------------------------+
  | 93          | key_hash                       |
  +-------------+--------------------------------+
  | 94          | lambda                         |
  +-------------+--------------------------------+
  | 95          | list                           |
  +-------------+--------------------------------+
  | 96          | map                            |
  +-------------+--------------------------------+
  | 97          | big_map                        |
  +-------------+--------------------------------+
  | 98          | nat                            |
  +-------------+--------------------------------+
  | 99          | option                         |
  +-------------+--------------------------------+
  | 100         | or                             |
  +-------------+--------------------------------+
  | 101         | pair                           |
  +-------------+--------------------------------+
  | 102         | set                            |
  +-------------+--------------------------------+
  | 103         | signature                      |
  +-------------+--------------------------------+
  | 104         | string                         |
  +-------------+--------------------------------+
  | 105         | bytes                          |
  +-------------+--------------------------------+
  | 106         | mutez                          |
  +-------------+--------------------------------+
  | 107         | timestamp                      |
  +-------------+--------------------------------+
  | 108         | unit                           |
  +-------------+--------------------------------+
  | 109         | operation                      |
  +-------------+--------------------------------+
  | 110         | address                        |
  +-------------+--------------------------------+
  | 111         | SLICE                          |
  +-------------+--------------------------------+
  | 112         | DIG                            |
  +-------------+--------------------------------+
  | 113         | DUG                            |
  +-------------+--------------------------------+
  | 114         | EMPTY_BIG_MAP                  |
  +-------------+--------------------------------+
  | 115         | APPLY                          |
  +-------------+--------------------------------+
  | 116         | chain_id                       |
  +-------------+--------------------------------+
  | 117         | CHAIN_ID                       |
  +-------------+--------------------------------+
  | 118         | LEVEL                          |
  +-------------+--------------------------------+
  | 119         | SELF_ADDRESS                   |
  +-------------+--------------------------------+
  | 120         | never                          |
  +-------------+--------------------------------+
  | 121         | NEVER                          |
  +-------------+--------------------------------+
  | 122         | UNPAIR                         |
  +-------------+--------------------------------+
  | 123         | VOTING_POWER                   |
  +-------------+--------------------------------+
  | 124         | TOTAL_VOTING_POWER             |
  +-------------+--------------------------------+
  | 125         | KECCAK                         |
  +-------------+--------------------------------+
  | 126         | SHA3                           |
  +-------------+--------------------------------+
  | 127         | PAIRING_CHECK                  |
  +-------------+--------------------------------+
  | 128         | bls12_381_g1                   |
  +-------------+--------------------------------+
  | 129         | bls12_381_g2                   |
  +-------------+--------------------------------+
  | 130         | bls12_381_fr                   |
  +-------------+--------------------------------+
  | 131         | sapling_state                  |
  +-------------+--------------------------------+
  | 132         | sapling_transaction_deprecated |
  +-------------+--------------------------------+
  | 133         | SAPLING_EMPTY_STATE            |
  +-------------+--------------------------------+
  | 134         | SAPLING_VERIFY_UPDATE          |
  +-------------+--------------------------------+
  | 135         | ticket                         |
  +-------------+--------------------------------+
  | 136         | TICKET_DEPRECATED              |
  +-------------+--------------------------------+
  | 137         | READ_TICKET                    |
  +-------------+--------------------------------+
  | 138         | SPLIT_TICKET                   |
  +-------------+--------------------------------+
  | 139         | JOIN_TICKETS                   |
  +-------------+--------------------------------+
  | 140         | GET_AND_UPDATE                 |
  +-------------+--------------------------------+
  | 141         | chest                          |
  +-------------+--------------------------------+
  | 142         | chest_key                      |
  +-------------+--------------------------------+
  | 143         | OPEN_CHEST                     |
  +-------------+--------------------------------+
  | 144         | VIEW                           |
  +-------------+--------------------------------+
  | 145         | view                           |
  +-------------+--------------------------------+
  | 146         | constant                       |
  +-------------+--------------------------------+
  | 147         | SUB_MUTEZ                      |
  +-------------+--------------------------------+
  | 148         | tx_rollup_l2_address           |
  +-------------+--------------------------------+
  | 149         | MIN_BLOCK_TIME                 |
  +-------------+--------------------------------+
  | 150         | sapling_transaction            |
  +-------------+--------------------------------+
  | 151         | EMIT                           |
  +-------------+--------------------------------+
  | 152         | Lambda_rec                     |
  +-------------+--------------------------------+
  | 153         | LAMBDA_REC                     |
  +-------------+--------------------------------+
  | 154         | TICKET                         |
  +-------------+--------------------------------+
  | 155         | BYTES                          |
  +-------------+--------------------------------+
  | 156         | NAT                            |
  +-------------+--------------------------------+
  | 157         | Ticket                         |
  +-------------+--------------------------------+


  micheline.alpha.michelson_v1.expression (Determined from data, 8-bit tag)
  *************************************************************************

  Int (tag 0)
  ===========

  +------+----------------------+------------------------+
  | Name | Size                 | Contents               |
  +======+======================+========================+
  | Tag  | 1 byte               | unsigned 8-bit integer |
  +------+----------------------+------------------------+
  | int  | Determined from data | $Z.t                   |
  +------+----------------------+------------------------+


  String (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | string                | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  Sequence (tag 2)
  ================

  +-----------------------+----------+------------------------------------------------------+
  | Name                  | Size     | Contents                                             |
  +=======================+==========+======================================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer                               |
  +-----------------------+----------+------------------------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer                   |
  +-----------------------+----------+------------------------------------------------------+
  | Unnamed field 0       | Variable | sequence of $micheline.alpha.michelson_v1.expression |
  +-----------------------+----------+------------------------------------------------------+


  Prim__no_args__no_annots (tag 3)
  ================================

  +------+--------+------------------------------------------------------------------------------------+
  | Name | Size   | Contents                                                                           |
  +======+========+====================================================================================+
  | Tag  | 1 byte | unsigned 8-bit integer                                                             |
  +------+--------+------------------------------------------------------------------------------------+
  | prim | 1 byte | unsigned 8-bit integer encoding an enumeration (see alpha.michelson.v1.primitives) |
  +------+--------+------------------------------------------------------------------------------------+


  Prim__no_args__some_annots (tag 4)
  ==================================

  +-----------------------+----------+------------------------------------------------------------------------------------+
  | Name                  | Size     | Contents                                                                           |
  +=======================+==========+====================================================================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer                                                             |
  +-----------------------+----------+------------------------------------------------------------------------------------+
  | prim                  | 1 byte   | unsigned 8-bit integer encoding an enumeration (see alpha.michelson.v1.primitives) |
  +-----------------------+----------+------------------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer                                                 |
  +-----------------------+----------+------------------------------------------------------------------------------------+
  | annots                | Variable | bytes                                                                              |
  +-----------------------+----------+------------------------------------------------------------------------------------+


  Prim__1_arg__no_annots (tag 5)
  ==============================

  +------+----------------------+------------------------------------------------------------------------------------+
  | Name | Size                 | Contents                                                                           |
  +======+======================+====================================================================================+
  | Tag  | 1 byte               | unsigned 8-bit integer                                                             |
  +------+----------------------+------------------------------------------------------------------------------------+
  | prim | 1 byte               | unsigned 8-bit integer encoding an enumeration (see alpha.michelson.v1.primitives) |
  +------+----------------------+------------------------------------------------------------------------------------+
  | arg  | Determined from data | $micheline.alpha.michelson_v1.expression                                           |
  +------+----------------------+------------------------------------------------------------------------------------+


  Prim__1_arg__some_annots (tag 6)
  ================================

  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | Name                  | Size                 | Contents                                                                           |
  +=======================+======================+====================================================================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer                                                             |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | prim                  | 1 byte               | unsigned 8-bit integer encoding an enumeration (see alpha.michelson.v1.primitives) |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | arg                   | Determined from data | $micheline.alpha.michelson_v1.expression                                           |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                                 |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | annots                | Variable             | bytes                                                                              |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+


  Prim__2_args__no_annots (tag 7)
  ===============================

  +------+----------------------+------------------------------------------------------------------------------------+
  | Name | Size                 | Contents                                                                           |
  +======+======================+====================================================================================+
  | Tag  | 1 byte               | unsigned 8-bit integer                                                             |
  +------+----------------------+------------------------------------------------------------------------------------+
  | prim | 1 byte               | unsigned 8-bit integer encoding an enumeration (see alpha.michelson.v1.primitives) |
  +------+----------------------+------------------------------------------------------------------------------------+
  | arg1 | Determined from data | $micheline.alpha.michelson_v1.expression                                           |
  +------+----------------------+------------------------------------------------------------------------------------+
  | arg2 | Determined from data | $micheline.alpha.michelson_v1.expression                                           |
  +------+----------------------+------------------------------------------------------------------------------------+


  Prim__2_args__some_annots (tag 8)
  =================================

  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | Name                  | Size                 | Contents                                                                           |
  +=======================+======================+====================================================================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer                                                             |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | prim                  | 1 byte               | unsigned 8-bit integer encoding an enumeration (see alpha.michelson.v1.primitives) |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | arg1                  | Determined from data | $micheline.alpha.michelson_v1.expression                                           |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | arg2                  | Determined from data | $micheline.alpha.michelson_v1.expression                                           |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                                 |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+
  | annots                | Variable             | bytes                                                                              |
  +-----------------------+----------------------+------------------------------------------------------------------------------------+


  Prim__generic (tag 9)
  =====================

  +-----------------------+----------+------------------------------------------------------------------------------------+
  | Name                  | Size     | Contents                                                                           |
  +=======================+==========+====================================================================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer                                                             |
  +-----------------------+----------+------------------------------------------------------------------------------------+
  | prim                  | 1 byte   | unsigned 8-bit integer encoding an enumeration (see alpha.michelson.v1.primitives) |
  +-----------------------+----------+------------------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer                                                 |
  +-----------------------+----------+------------------------------------------------------------------------------------+
  | args                  | Variable | sequence of $micheline.alpha.michelson_v1.expression                               |
  +-----------------------+----------+------------------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer                                                 |
  +-----------------------+----------+------------------------------------------------------------------------------------+
  | annots                | Variable | bytes                                                                              |
  +-----------------------+----------+------------------------------------------------------------------------------------+


  Bytes (tag 10)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | bytes                 | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  X_30
  ****

  +-----------------------------+----------------------+------------------------------------------+
  | Name                        | Size                 | Contents                                 |
  +=============================+======================+==========================================+
  | key_hash                    | 32 bytes             | bytes                                    |
  +-----------------------------+----------------------+------------------------------------------+
  | key                         | Determined from data | $micheline.alpha.michelson_v1.expression |
  +-----------------------------+----------------------+------------------------------------------+
  | ? presence of field "value" | 1 byte               | boolean (0 for false, 255 for true)      |
  +-----------------------------+----------------------+------------------------------------------+
  | value                       | Determined from data | $micheline.alpha.michelson_v1.expression |
  +-----------------------------+----------------------+------------------------------------------+


  X_41 (Determined from data, 8-bit tag)
  **************************************

  update (tag 0)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | updates               | Variable | sequence of $X_30                  |
  +-----------------------+----------+------------------------------------+


  remove (tag 1)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  copy (tag 2)
  ============

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | Determined from data | $Z.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | updates               | Variable             | sequence of $X_30                  |
  +-----------------------+----------------------+------------------------------------+


  alloc (tag 3)
  =============

  +-----------------------+----------------------+------------------------------------------+
  | Name                  | Size                 | Contents                                 |
  +=======================+======================+==========================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer                   |
  +-----------------------+----------------------+------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer       |
  +-----------------------+----------------------+------------------------------------------+
  | updates               | Variable             | sequence of $X_30                        |
  +-----------------------+----------------------+------------------------------------------+
  | key_type              | Determined from data | $micheline.alpha.michelson_v1.expression |
  +-----------------------+----------------------+------------------------------------------+
  | value_type            | Determined from data | $micheline.alpha.michelson_v1.expression |
  +-----------------------+----------------------+------------------------------------------+


  X_42 (Determined from data, 8-bit tag)
  **************************************

  big_map (tag 0)
  ===============

  +------+----------------------+------------------------+
  | Name | Size                 | Contents               |
  +======+======================+========================+
  | Tag  | 1 byte               | unsigned 8-bit integer |
  +------+----------------------+------------------------+
  | id   | Determined from data | $Z.t                   |
  +------+----------------------+------------------------+
  | diff | Determined from data | $X_41                  |
  +------+----------------------+------------------------+


  sapling_state (tag 1)
  =====================

  +------+----------------------+------------------------+
  | Name | Size                 | Contents               |
  +======+======================+========================+
  | Tag  | 1 byte               | unsigned 8-bit integer |
  +------+----------------------+------------------------+
  | id   | Determined from data | $Z.t                   |
  +------+----------------------+------------------------+
  | diff | Determined from data | $X_29                  |
  +------+----------------------+------------------------+


  alpha.lazy_storage_diff
  ***********************

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_42                  |
  +-----------------------+----------+------------------------------------+


  X_44
  ****

  +--------------+----------------------+------------------------------------------+
  | Name         | Size                 | Contents                                 |
  +==============+======================+==========================================+
  | ticketer     | 22 bytes             | $alpha.contract_id                       |
  +--------------+----------------------+------------------------------------------+
  | content_type | Determined from data | $micheline.alpha.michelson_v1.expression |
  +--------------+----------------------+------------------------------------------+
  | content      | Determined from data | $micheline.alpha.michelson_v1.expression |
  +--------------+----------------------+------------------------------------------+


  alpha.transaction_destination (22 bytes, 8-bit tag)
  ***************************************************

  Implicit (tag 0)
  ================

  +---------------------------+----------+------------------------+
  | Name                      | Size     | Contents               |
  +===========================+==========+========================+
  | Tag                       | 1 byte   | unsigned 8-bit integer |
  +---------------------------+----------+------------------------+
  | Signature.Public_key_hash | 21 bytes | $public_key_hash       |
  +---------------------------+----------+------------------------+


  Originated (tag 1)
  ==================

  +---------------+----------+------------------------+
  | Name          | Size     | Contents               |
  +===============+==========+========================+
  | Tag           | 1 byte   | unsigned 8-bit integer |
  +---------------+----------+------------------------+
  | Contract_hash | 20 bytes | bytes                  |
  +---------------+----------+------------------------+
  | padding       | 1 byte   | padding                |
  +---------------+----------+------------------------+


  Smart_rollup (tag 3)
  ====================

  +----------------------+----------+------------------------+
  | Name                 | Size     | Contents               |
  +======================+==========+========================+
  | Tag                  | 1 byte   | unsigned 8-bit integer |
  +----------------------+----------+------------------------+
  | smart_rollup_address | 20 bytes | bytes                  |
  +----------------------+----------+------------------------+
  | padding              | 1 byte   | padding                |
  +----------------------+----------+------------------------+


  Zk_rollup (tag 4)
  =================

  +----------------+----------+------------------------+
  | Name           | Size     | Contents               |
  +================+==========+========================+
  | Tag            | 1 byte   | unsigned 8-bit integer |
  +----------------+----------+------------------------+
  | Zk_rollup_hash | 20 bytes | bytes                  |
  +----------------+----------+------------------------+
  | padding        | 1 byte   | padding                |
  +----------------+----------+------------------------+


  X_47
  ****

  +---------+----------------------+--------------------------------+
  | Name    | Size                 | Contents                       |
  +=========+======================+================================+
  | account | 22 bytes             | $alpha.transaction_destination |
  +---------+----------------------+--------------------------------+
  | amount  | Determined from data | $Z.t                           |
  +---------+----------------------+--------------------------------+


  X_43
  ****

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | ticket_token          | Determined from data | $X_44                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | updates               | Variable             | sequence of $X_47                  |
  +-----------------------+----------------------+------------------------------------+


  X_77 (Determined from data, 8-bit tag)
  **************************************

  To_contract (tag 0)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | Name                                                              | Size                 | Contents                                  |
  +===================================================================+======================+===========================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | ? presence of field "storage"                                     | 1 byte               | boolean (0 for false, 255 for true)       |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | storage                                                           | Determined from data | $micheline.alpha.michelson_v1.expression  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                          |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | ticket_updates                                                    | Variable             | sequence of $X_43                         |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | originated_contracts                                              | Variable             | sequence of $alpha.contract_id.originated |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | storage_size                                                      | Determined from data | $Z.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | allocated_destination_contract                                    | 1 byte               | boolean (0 for false, 255 for true)       |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | ? presence of field "lazy_storage_diff"                           | 1 byte               | boolean (0 for false, 255 for true)       |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | lazy_storage_diff                                                 | Determined from data | $alpha.lazy_storage_diff                  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+


  To_smart_rollup (tag 2)
  =======================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | consumed_milligas     | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | ticket_updates        | Variable             | sequence of $X_43                  |
  +-----------------------+----------------------+------------------------------------+


  alpha.operation.alpha.successful_manager_operation_result (Determined from data, 8-bit tag)
  *******************************************************************************************

  reveal (tag 0)
  ==============

  +-------------------+----------------------+------------------------+
  | Name              | Size                 | Contents               |
  +===================+======================+========================+
  | Tag               | 1 byte               | unsigned 8-bit integer |
  +-------------------+----------------------+------------------------+
  | consumed_milligas | Determined from data | $N.t                   |
  +-------------------+----------------------+------------------------+


  transaction (tag 1)
  ===================

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | Determined from data | $X_77                  |
  +-----------------+----------------------+------------------------+


  origination (tag 2)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | Name                                                              | Size                 | Contents                                  |
  +===================================================================+======================+===========================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                          |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | originated_contracts                                              | Variable             | sequence of $alpha.contract_id.originated |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | storage_size                                                      | Determined from data | $Z.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | ? presence of field "lazy_storage_diff"                           | 1 byte               | boolean (0 for false, 255 for true)       |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | lazy_storage_diff                                                 | Determined from data | $alpha.lazy_storage_diff                  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+


  delegation (tag 3)
  ==================

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  set_deposits_limit (tag 5)
  ==========================

  +-------------------+----------------------+------------------------+
  | Name              | Size                 | Contents               |
  +===================+======================+========================+
  | Tag               | 1 byte               | unsigned 8-bit integer |
  +-------------------+----------------------+------------------------+
  | consumed_milligas | Determined from data | $N.t                   |
  +-------------------+----------------------+------------------------+


  update_consensus_key (tag 6)
  ============================

  +-------------------+----------------------+------------------------+
  | Name              | Size                 | Contents               |
  +===================+======================+========================+
  | Tag               | 1 byte               | unsigned 8-bit integer |
  +-------------------+----------------------+------------------------+
  | consumed_milligas | Determined from data | $N.t                   |
  +-------------------+----------------------+------------------------+


  increase_paid_storage (tag 9)
  =============================

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  smart_rollup_originate (tag 200)
  ================================

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | address                                                           | 20 bytes             | bytes                              |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | genesis_commitment_hash                                           | 32 bytes             | bytes                              |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | size                                                              | Determined from data | $Z.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  X_0
  ***

  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                                |
  +===================================================================+======================+=========================================================================+
  | # bytes in next 25 fields                                         | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | test_chain_status                                                 | Determined from data | $test_chain_status                                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_operations_ttl                                                | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_operation_data_length                                         | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_block_header_length                                           | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_operation_list_length                                         | Determined from data | $X_1                                                                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | proposer                                                          | 21 bytes             | $public_key_hash                                                        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | baker                                                             | 21 bytes             | $public_key_hash                                                        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | level_info                                                        | 17 bytes             | $X_3                                                                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | voting_period_info                                                | 17 bytes             | $X_4                                                                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | nonce_hash                                                        | Determined from data | $X_7                                                                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | deactivated                                                       | Variable             | sequence of $public_key_hash                                            |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | liquidity_baking_toggle_ema                                       | 4 bytes              | signed 32-bit big-endian integer                                        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | adaptive_issuance_vote_ema                                        | 4 bytes              | signed 32-bit big-endian integer                                        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | ? presence of field "adaptive_issuance_activation_cycle"          | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | adaptive_issuance_activation_cycle                                | 4 bytes              | signed 32-bit big-endian integer                                        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | implicit_operations_results                                       | Variable             | sequence of $alpha.operation.alpha.successful_manager_operation_result  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | proposer_consensus_key                                            | 21 bytes             | $public_key_hash                                                        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | baker_consensus_key                                               | 21 bytes             | $public_key_hash                                                        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                                                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | dal_attestation                                                   | Determined from data | $Z.t                                                                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+


  X_81
  ****

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  X_82
  ****

  +-----------------------+----------+-------------------------------------+
  | Name                  | Size     | Contents                            |
  +=======================+==========+=====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer  |
  +-----------------------+----------+-------------------------------------+
  | new_state             | Variable | sequence of bytes                   |
  +-----------------------+----------+-------------------------------------+
  | fee                   | 32 bytes | bytes                               |
  +-----------------------+----------+-------------------------------------+
  | exit_validity         | 1 byte   | boolean (0 for false, 255 for true) |
  +-----------------------+----------+-------------------------------------+


  X_80
  ****

  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_81    |
  +-----------------+----------------------+----------+
  | Unnamed field 1 | Determined from data | $X_82    |
  +-----------------+----------------------+----------+


  X_85
  ****

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | new_state             | Variable | sequence of bytes                  |
  +-----------------------+----------+------------------------------------+
  | fee                   | 32 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+


  X_83
  ****

  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_81    |
  +-----------------+----------------------+----------+
  | Unnamed field 1 | Determined from data | $X_85    |
  +-----------------+----------------------+----------+


  X_86
  ****

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of bytes                  |
  +-----------------------+----------+------------------------------------+


  X_79
  ****

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | pending_pis           | Variable             | sequence of $X_80                  |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | private_pis           | Variable             | sequence of $X_83                  |
  +-----------------------+----------------------+------------------------------------+
  | fee_pi                | Determined from data | $X_86                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | proof                 | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+


  X_89
  ****

  +--------+----------------------+----------+
  | Name   | Size                 | Contents |
  +========+======================+==========+
  | id     | 32 bytes             | bytes    |
  +--------+----------------------+----------+
  | amount | Determined from data | $Z.t     |
  +--------+----------------------+----------+


  X_88
  ****

  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | Name                  | Size                 | Contents                                                                |
  +=======================+======================+=========================================================================+
  | op_code               | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | price                 | Determined from data | $X_89                                                                   |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | l1_dst                | 21 bytes             | $public_key_hash                                                        |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | rollup_id             | 20 bytes             | bytes                                                                   |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | payload               | Variable             | sequence of bytes                                                       |
  +-----------------------+----------------------+-------------------------------------------------------------------------+


  X_92 (Determined from data, 8-bit tag)
  **************************************

  None (tag 0)
  ============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Some (tag 1)
  ============

  +----------+----------------------+------------------------------------------+
  | Name     | Size                 | Contents                                 |
  +==========+======================+==========================================+
  | Tag      | 1 byte               | unsigned 8-bit integer                   |
  +----------+----------------------+------------------------------------------+
  | contents | Determined from data | $micheline.alpha.michelson_v1.expression |
  +----------+----------------------+------------------------------------------+
  | ty       | Determined from data | $micheline.alpha.michelson_v1.expression |
  +----------+----------------------+------------------------------------------+
  | ticketer | 22 bytes             | $alpha.contract_id                       |
  +----------+----------------------+------------------------------------------+


  X_87
  ****

  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_88    |
  +-----------------+----------------------+----------+
  | Unnamed field 1 | Determined from data | $X_92    |
  +-----------------+----------------------+----------+


  X_95 (1 byte, 8-bit tag)
  ************************

  Public (tag 0)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Private (tag 1)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Fee (tag 2)
  ===========

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  X_93
  ****

  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_81    |
  +-----------------+----------------------+----------+
  | Unnamed field 1 | 1 byte               | $X_95    |
  +-----------------+----------------------+----------+


  X_96
  ****

  +------------------+----------+------------------------+
  | Name             | Size     | Contents               |
  +==================+==========+========================+
  | slot_index       | 1 byte   | unsigned 8-bit integer |
  +------------------+----------+------------------------+
  | commitment       | 48 bytes | bytes                  |
  +------------------+----------+------------------------+
  | commitment_proof | 96 bytes | bytes                  |
  +------------------+----------+------------------------+


  X_97
  ****

  +-------+----------+------------------+
  | Name  | Size     | Contents         |
  +=======+==========+==================+
  | alice | 21 bytes | $public_key_hash |
  +-------+----------+------------------+
  | bob   | 21 bytes | $public_key_hash |
  +-------+----------+------------------+


  X_98
  ****

  +-----------------+---------+----------------------------------+
  | Name            | Size    | Contents                         |
  +=================+=========+==================================+
  | published_level | 4 bytes | signed 32-bit big-endian integer |
  +-----------------+---------+----------------------------------+
  | slot_index      | 1 byte  | unsigned 8-bit integer           |
  +-----------------+---------+----------------------------------+
  | page_index      | 2 bytes | signed 16-bit big-endian integer |
  +-----------------+---------+----------------------------------+


  X_99 (Determined from data, 8-bit tag)
  **************************************

  raw data proof (tag 0)
  ======================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 2 bytes  | unsigned 16-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | raw_data              | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  metadata proof (tag 1)
  ======================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  dal page proof (tag 2)
  ======================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | dal_page_id           | 7 bytes  | $X_98                              |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | dal_proof             | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  dal parameters proof (tag 3)
  ============================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  X_100 (Determined from data, 8-bit tag)
  ***************************************

  inbox proof (tag 0)
  ===================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | level                 | 4 bytes              | signed 32-bit big-endian integer   |
  +-----------------------+----------------------+------------------------------------+
  | message_counter       | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | serialized_proof      | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+


  reveal proof (tag 1)
  ====================

  +--------------+----------------------+------------------------+
  | Name         | Size                 | Contents               |
  +==============+======================+========================+
  | Tag          | 1 byte               | unsigned 8-bit integer |
  +--------------+----------------------+------------------------+
  | reveal_proof | Determined from data | $X_99                  |
  +--------------+----------------------+------------------------+


  first input (tag 2)
  ===================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  X_101
  *****

  +-----------------------------+----------------------+-------------------------------------+
  | Name                        | Size                 | Contents                            |
  +=============================+======================+=====================================+
  | ? presence of field "state" | 1 byte               | boolean (0 for false, 255 for true) |
  +-----------------------------+----------------------+-------------------------------------+
  | state                       | 32 bytes             | bytes                               |
  +-----------------------------+----------------------+-------------------------------------+
  | tick                        | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+


  X_102 (Determined from data, 8-bit tag)
  ***************************************

  Dissection (tag 0)
  ==================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_101                 |
  +-----------------------+----------+------------------------------------+


  Proof (tag 1)
  =============

  +-----------------------------------+----------------------+-------------------------------------+
  | Name                              | Size                 | Contents                            |
  +===================================+======================+=====================================+
  | Tag                               | 1 byte               | unsigned 8-bit integer              |
  +-----------------------------------+----------------------+-------------------------------------+
  | # bytes in next field             | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-----------------------------------+----------------------+-------------------------------------+
  | pvm_step                          | Variable             | bytes                               |
  +-----------------------------------+----------------------+-------------------------------------+
  | ? presence of field "input_proof" | 1 byte               | boolean (0 for false, 255 for true) |
  +-----------------------------------+----------------------+-------------------------------------+
  | input_proof                       | Determined from data | $X_100                              |
  +-----------------------------------+----------------------+-------------------------------------+


  X_103 (Determined from data, 8-bit tag)
  ***************************************

  Start (tag 0)
  =============

  +--------------------------+----------+------------------------+
  | Name                     | Size     | Contents               |
  +==========================+==========+========================+
  | Tag                      | 1 byte   | unsigned 8-bit integer |
  +--------------------------+----------+------------------------+
  | player_commitment_hash   | 32 bytes | bytes                  |
  +--------------------------+----------+------------------------+
  | opponent_commitment_hash | 32 bytes | bytes                  |
  +--------------------------+----------+------------------------+


  Move (tag 1)
  ============

  +--------+----------------------+------------------------+
  | Name   | Size                 | Contents               |
  +========+======================+========================+
  | Tag    | 1 byte               | unsigned 8-bit integer |
  +--------+----------------------+------------------------+
  | choice | Determined from data | $N.t                   |
  +--------+----------------------+------------------------+
  | step   | Determined from data | $X_102                 |
  +--------+----------------------+------------------------+


  X_104
  *****

  +------------------+----------+----------------------------------+
  | Name             | Size     | Contents                         |
  +==================+==========+==================================+
  | compressed_state | 32 bytes | bytes                            |
  +------------------+----------+----------------------------------+
  | inbox_level      | 4 bytes  | signed 32-bit big-endian integer |
  +------------------+----------+----------------------------------+
  | predecessor      | 32 bytes | bytes                            |
  +------------------+----------+----------------------------------+
  | number_of_ticks  | 8 bytes  | signed 64-bit big-endian integer |
  +------------------+----------+----------------------------------+


  X_106 (Enumeration: unsigned 8-bit integer):
  ********************************************

  +-------------+----------------+
  | Case number | Encoded string |
  +=============+================+
  | 0           | arith          |
  +-------------+----------------+
  | 1           | wasm_2_0_0     |
  +-------------+----------------+
  | 2           | riscv          |
  +-------------+----------------+


  X_107
  *****

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $public_key_hash       |
  +-----------------------+----------+------------------------------------+


  public_key (Determined from data, 8-bit tag)
  ********************************************

  Ed25519 (tag 0)
  ===============

  +--------------------+----------+------------------------+
  | Name               | Size     | Contents               |
  +====================+==========+========================+
  | Tag                | 1 byte   | unsigned 8-bit integer |
  +--------------------+----------+------------------------+
  | Ed25519.Public_key | 32 bytes | bytes                  |
  +--------------------+----------+------------------------+


  Secp256k1 (tag 1)
  =================

  +----------------------+----------+------------------------+
  | Name                 | Size     | Contents               |
  +======================+==========+========================+
  | Tag                  | 1 byte   | unsigned 8-bit integer |
  +----------------------+----------+------------------------+
  | Secp256k1.Public_key | 33 bytes | bytes                  |
  +----------------------+----------+------------------------+


  P256 (tag 2)
  ============

  +-----------------+----------+------------------------+
  | Name            | Size     | Contents               |
  +=================+==========+========================+
  | Tag             | 1 byte   | unsigned 8-bit integer |
  +-----------------+----------+------------------------+
  | P256.Public_key | 33 bytes | bytes                  |
  +-----------------+----------+------------------------+


  Bls (tag 3)
  ===========

  +----------------------+----------+------------------------+
  | Name                 | Size     | Contents               |
  +======================+==========+========================+
  | Tag                  | 1 byte   | unsigned 8-bit integer |
  +----------------------+----------+------------------------+
  | Bls12_381.Public_key | 48 bytes | bytes                  |
  +----------------------+----------+------------------------+


  alpha.scripted.contracts
  ************************

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | code                  | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | storage               | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  alpha.entrypoint (Determined from data, 8-bit tag)
  **************************************************

  default (tag 0)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  root (tag 1)
  ============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  do (tag 2)
  ==========

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  set_delegate (tag 3)
  ====================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  remove_delegate (tag 4)
  =======================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  deposit (tag 5)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  stake (tag 6)
  =============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  unstake (tag 7)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  finalize_unstake (tag 8)
  ========================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  set_delegate_parameters (tag 9)
  ===============================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  named (tag 255)
  ===============

  +-----------------------+----------+------------------------+
  | Name                  | Size     | Contents               |
  +=======================+==========+========================+
  | Tag                   | 1 byte   | unsigned 8-bit integer |
  +-----------------------+----------+------------------------+
  | # bytes in next field | 1 byte   | unsigned 8-bit integer |
  +-----------------------+----------+------------------------+
  | Unnamed field 0       | Variable | bytes                  |
  +-----------------------+----------+------------------------+


  X_108
  *****

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | entrypoint            | Determined from data | $alpha.entrypoint                  |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | value                 | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+


  X_109
  *****

  +-----------------+-----------+----------+
  | Name            | Size      | Contents |
  +=================+===========+==========+
  | Unnamed field 0 | 100 bytes | bytes    |
  +-----------------+-----------+----------+
  | Unnamed field 1 | 100 bytes | bytes    |
  +-----------------+-----------+----------+


  alpha.inlined.preattestation.contents (43 bytes, 8-bit tag)
  ***********************************************************

  Preattestation (tag 20)
  =======================

  +--------------------+----------+------------------------------------+
  | Name               | Size     | Contents                           |
  +====================+==========+====================================+
  | Tag                | 1 byte   | unsigned 8-bit integer             |
  +--------------------+----------+------------------------------------+
  | slot               | 2 bytes  | unsigned 16-bit big-endian integer |
  +--------------------+----------+------------------------------------+
  | level              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | round              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | block_payload_hash | 32 bytes | bytes                              |
  +--------------------+----------+------------------------------------+


  alpha.inlined.preattestation
  ****************************

  +------------+----------+----------------------------------------+
  | Name       | Size     | Contents                               |
  +============+==========+========================================+
  | branch     | 32 bytes | bytes                                  |
  +------------+----------+----------------------------------------+
  | operations | 43 bytes | $alpha.inlined.preattestation.contents |
  +------------+----------+----------------------------------------+
  | signature  | Variable | bytes                                  |
  +------------+----------+----------------------------------------+


  alpha.inlined.attestation_mempool.contents (Determined from data, 8-bit tag)
  ****************************************************************************

  Attestation (tag 21)
  ====================

  +--------------------+----------+------------------------------------+
  | Name               | Size     | Contents                           |
  +====================+==========+====================================+
  | Tag                | 1 byte   | unsigned 8-bit integer             |
  +--------------------+----------+------------------------------------+
  | slot               | 2 bytes  | unsigned 16-bit big-endian integer |
  +--------------------+----------+------------------------------------+
  | level              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | round              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | block_payload_hash | 32 bytes | bytes                              |
  +--------------------+----------+------------------------------------+


  Attestation_with_dal (tag 23)
  =============================

  +--------------------+----------------------+------------------------------------+
  | Name               | Size                 | Contents                           |
  +====================+======================+====================================+
  | Tag                | 1 byte               | unsigned 8-bit integer             |
  +--------------------+----------------------+------------------------------------+
  | slot               | 2 bytes              | unsigned 16-bit big-endian integer |
  +--------------------+----------------------+------------------------------------+
  | level              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | round              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | block_payload_hash | 32 bytes             | bytes                              |
  +--------------------+----------------------+------------------------------------+
  | dal_attestation    | Determined from data | $Z.t                               |
  +--------------------+----------------------+------------------------------------+


  alpha.inlined.attestation
  *************************

  +------------+----------------------+---------------------------------------------+
  | Name       | Size                 | Contents                                    |
  +============+======================+=============================================+
  | branch     | 32 bytes             | bytes                                       |
  +------------+----------------------+---------------------------------------------+
  | operations | Determined from data | $alpha.inlined.attestation_mempool.contents |
  +------------+----------------------+---------------------------------------------+
  | signature  | Variable             | bytes                                       |
  +------------+----------------------+---------------------------------------------+


  alpha.operation.alpha.contents (Determined from data, 8-bit tag)
  ****************************************************************

  Seed_nonce_revelation (tag 1)
  =============================

  +-------+----------+----------------------------------+
  | Name  | Size     | Contents                         |
  +=======+==========+==================================+
  | Tag   | 1 byte   | unsigned 8-bit integer           |
  +-------+----------+----------------------------------+
  | level | 4 bytes  | signed 32-bit big-endian integer |
  +-------+----------+----------------------------------+
  | nonce | 32 bytes | bytes                            |
  +-------+----------+----------------------------------+


  Double_attestation_evidence (tag 2)
  ===================================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | op1                   | Variable | $alpha.inlined.attestation         |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | op2                   | Variable | $alpha.inlined.attestation         |
  +-----------------------+----------+------------------------------------+


  Double_baking_evidence (tag 3)
  ==============================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | bh1                   | Variable | $raw_block_header                  |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | bh2                   | Variable | $raw_block_header                  |
  +-----------------------+----------+------------------------------------+


  Activate_account (tag 4)
  ========================

  +--------+----------+------------------------+
  | Name   | Size     | Contents               |
  +========+==========+========================+
  | Tag    | 1 byte   | unsigned 8-bit integer |
  +--------+----------+------------------------+
  | pkh    | 20 bytes | bytes                  |
  +--------+----------+------------------------+
  | secret | 20 bytes | bytes                  |
  +--------+----------+------------------------+


  Proposals (tag 5)
  =================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | source                | 21 bytes | $public_key_hash                   |
  +-----------------------+----------+------------------------------------+
  | period                | 4 bytes  | signed 32-bit big-endian integer   |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | proposals             | Variable | sequence of at most 20 bytes       |
  +-----------------------+----------+------------------------------------+


  Ballot (tag 6)
  ==============

  +----------+----------+----------------------------------+
  | Name     | Size     | Contents                         |
  +==========+==========+==================================+
  | Tag      | 1 byte   | unsigned 8-bit integer           |
  +----------+----------+----------------------------------+
  | source   | 21 bytes | $public_key_hash                 |
  +----------+----------+----------------------------------+
  | period   | 4 bytes  | signed 32-bit big-endian integer |
  +----------+----------+----------------------------------+
  | proposal | 32 bytes | bytes                            |
  +----------+----------+----------------------------------+
  | ballot   | 1 byte   | signed 8-bit integer             |
  +----------+----------+----------------------------------+


  Double_preattestation_evidence (tag 7)
  ======================================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | op1                   | Variable | $alpha.inlined.preattestation      |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | op2                   | Variable | $alpha.inlined.preattestation      |
  +-----------------------+----------+------------------------------------+


  Vdf_revelation (tag 8)
  ======================

  +----------+-----------+------------------------+
  | Name     | Size      | Contents               |
  +==========+===========+========================+
  | Tag      | 1 byte    | unsigned 8-bit integer |
  +----------+-----------+------------------------+
  | solution | 200 bytes | $X_109                 |
  +----------+-----------+------------------------+


  Drain_delegate (tag 9)
  ======================

  +---------------+----------+------------------------+
  | Name          | Size     | Contents               |
  +===============+==========+========================+
  | Tag           | 1 byte   | unsigned 8-bit integer |
  +---------------+----------+------------------------+
  | consensus_key | 21 bytes | $public_key_hash       |
  +---------------+----------+------------------------+
  | delegate      | 21 bytes | $public_key_hash       |
  +---------------+----------+------------------------+
  | destination   | 21 bytes | $public_key_hash       |
  +---------------+----------+------------------------+


  Failing_noop (tag 17)
  =====================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | arbitrary             | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  Preattestation (tag 20)
  =======================

  +--------------------+----------+------------------------------------+
  | Name               | Size     | Contents                           |
  +====================+==========+====================================+
  | Tag                | 1 byte   | unsigned 8-bit integer             |
  +--------------------+----------+------------------------------------+
  | slot               | 2 bytes  | unsigned 16-bit big-endian integer |
  +--------------------+----------+------------------------------------+
  | level              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | round              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | block_payload_hash | 32 bytes | bytes                              |
  +--------------------+----------+------------------------------------+


  Attestation (tag 21)
  ====================

  +--------------------+----------+------------------------------------+
  | Name               | Size     | Contents                           |
  +====================+==========+====================================+
  | Tag                | 1 byte   | unsigned 8-bit integer             |
  +--------------------+----------+------------------------------------+
  | slot               | 2 bytes  | unsigned 16-bit big-endian integer |
  +--------------------+----------+------------------------------------+
  | level              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | round              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | block_payload_hash | 32 bytes | bytes                              |
  +--------------------+----------+------------------------------------+


  Attestation_with_dal (tag 23)
  =============================

  +--------------------+----------------------+------------------------------------+
  | Name               | Size                 | Contents                           |
  +====================+======================+====================================+
  | Tag                | 1 byte               | unsigned 8-bit integer             |
  +--------------------+----------------------+------------------------------------+
  | slot               | 2 bytes              | unsigned 16-bit big-endian integer |
  +--------------------+----------------------+------------------------------------+
  | level              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | round              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | block_payload_hash | 32 bytes             | bytes                              |
  +--------------------+----------------------+------------------------------------+
  | dal_attestation    | Determined from data | $Z.t                               |
  +--------------------+----------------------+------------------------------------+


  Reveal (tag 107)
  ================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | public_key    | Determined from data | $public_key            |
  +---------------+----------------------+------------------------+


  Transaction (tag 108)
  =====================

  +----------------------------------+----------------------+-------------------------------------+
  | Name                             | Size                 | Contents                            |
  +==================================+======================+=====================================+
  | Tag                              | 1 byte               | unsigned 8-bit integer              |
  +----------------------------------+----------------------+-------------------------------------+
  | source                           | 21 bytes             | $public_key_hash                    |
  +----------------------------------+----------------------+-------------------------------------+
  | fee                              | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | counter                          | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | gas_limit                        | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | storage_limit                    | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | amount                           | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | destination                      | 22 bytes             | $alpha.contract_id                  |
  +----------------------------------+----------------------+-------------------------------------+
  | ? presence of field "parameters" | 1 byte               | boolean (0 for false, 255 for true) |
  +----------------------------------+----------------------+-------------------------------------+
  | parameters                       | Determined from data | $X_108                              |
  +----------------------------------+----------------------+-------------------------------------+


  Origination (tag 109)
  =====================

  +--------------------------------+----------------------+-------------------------------------+
  | Name                           | Size                 | Contents                            |
  +================================+======================+=====================================+
  | Tag                            | 1 byte               | unsigned 8-bit integer              |
  +--------------------------------+----------------------+-------------------------------------+
  | source                         | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+
  | fee                            | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | counter                        | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | gas_limit                      | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | storage_limit                  | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | balance                        | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | ? presence of field "delegate" | 1 byte               | boolean (0 for false, 255 for true) |
  +--------------------------------+----------------------+-------------------------------------+
  | delegate                       | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+
  | script                         | Determined from data | $alpha.scripted.contracts           |
  +--------------------------------+----------------------+-------------------------------------+


  Delegation (tag 110)
  ====================

  +--------------------------------+----------------------+-------------------------------------+
  | Name                           | Size                 | Contents                            |
  +================================+======================+=====================================+
  | Tag                            | 1 byte               | unsigned 8-bit integer              |
  +--------------------------------+----------------------+-------------------------------------+
  | source                         | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+
  | fee                            | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | counter                        | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | gas_limit                      | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | storage_limit                  | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | ? presence of field "delegate" | 1 byte               | boolean (0 for false, 255 for true) |
  +--------------------------------+----------------------+-------------------------------------+
  | delegate                       | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+


  Register_global_constant (tag 111)
  ==================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | value                 | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+


  Set_deposits_limit (tag 112)
  ============================

  +-----------------------------+----------------------+-------------------------------------+
  | Name                        | Size                 | Contents                            |
  +=============================+======================+=====================================+
  | Tag                         | 1 byte               | unsigned 8-bit integer              |
  +-----------------------------+----------------------+-------------------------------------+
  | source                      | 21 bytes             | $public_key_hash                    |
  +-----------------------------+----------------------+-------------------------------------+
  | fee                         | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | counter                     | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | gas_limit                   | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | storage_limit               | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | ? presence of field "limit" | 1 byte               | boolean (0 for false, 255 for true) |
  +-----------------------------+----------------------+-------------------------------------+
  | limit                       | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+


  Increase_paid_storage (tag 113)
  ===============================

  +---------------+----------------------+-------------------------------+
  | Name          | Size                 | Contents                      |
  +===============+======================+===============================+
  | Tag           | 1 byte               | unsigned 8-bit integer        |
  +---------------+----------------------+-------------------------------+
  | source        | 21 bytes             | $public_key_hash              |
  +---------------+----------------------+-------------------------------+
  | fee           | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | counter       | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | gas_limit     | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | storage_limit | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | amount        | Determined from data | $Z.t                          |
  +---------------+----------------------+-------------------------------+
  | destination   | 22 bytes             | $alpha.contract_id.originated |
  +---------------+----------------------+-------------------------------+


  Update_consensus_key (tag 114)
  ==============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | pk            | Determined from data | $public_key            |
  +---------------+----------------------+------------------------+


  Transfer_ticket (tag 158)
  =========================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | ticket_contents       | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | ticket_ty             | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | ticket_ticketer       | 22 bytes             | $alpha.contract_id                 |
  +-----------------------+----------------------+------------------------------------+
  | ticket_amount         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | destination           | 22 bytes             | $alpha.contract_id                 |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | entrypoint            | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+


  Smart_rollup_originate (tag 200)
  ================================

  +---------------------------------+----------------------+------------------------------------------------------------+
  | Name                            | Size                 | Contents                                                   |
  +=================================+======================+============================================================+
  | Tag                             | 1 byte               | unsigned 8-bit integer                                     |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | source                          | 21 bytes             | $public_key_hash                                           |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | fee                             | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | counter                         | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | gas_limit                       | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | storage_limit                   | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | pvm_kind                        | 1 byte               | unsigned 8-bit integer encoding an enumeration (see X_106) |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | # bytes in next field           | 4 bytes              | unsigned 30-bit big-endian integer                         |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | kernel                          | Variable             | bytes                                                      |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | # bytes in next field           | 4 bytes              | unsigned 30-bit big-endian integer                         |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | parameters_ty                   | Variable             | bytes                                                      |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | ? presence of field "whitelist" | 1 byte               | boolean (0 for false, 255 for true)                        |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | whitelist                       | Determined from data | $X_107                                                     |
  +---------------------------------+----------------------+------------------------------------------------------------+


  Smart_rollup_add_messages (tag 201)
  ===================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | message               | Variable             | sequence of $X_81                  |
  +-----------------------+----------------------+------------------------------------+


  Smart_rollup_cement (tag 202)
  =============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+


  Smart_rollup_publish (tag 203)
  ==============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | commitment    | 76 bytes             | $X_104                 |
  +---------------+----------------------+------------------------+


  Smart_rollup_refute (tag 204)
  =============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | opponent      | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | refutation    | Determined from data | $X_103                 |
  +---------------+----------------------+------------------------+


  Smart_rollup_timeout (tag 205)
  ==============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | stakers       | 42 bytes             | $X_97                  |
  +---------------+----------------------+------------------------+


  Smart_rollup_execute_outbox_message (tag 206)
  =============================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | rollup                | 20 bytes             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | cemented_commitment   | 32 bytes             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | output_proof          | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+


  Smart_rollup_recover_bond (tag 207)
  ===================================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | staker        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+


  Dal_publish_commitment (tag 230)
  ================================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | slot_header   | 145 bytes            | $X_96                  |
  +---------------+----------------------+------------------------+


  Zk_rollup_origination (tag 250)
  ===============================

  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | Name                  | Size                 | Contents                                                                |
  +=======================+======================+=========================================================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer                                                  |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | source                | 21 bytes             | $public_key_hash                                                        |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | fee                   | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | counter               | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | gas_limit             | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | storage_limit         | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | public_parameters     | Variable             | bytes                                                                   |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | circuits_info         | Variable             | sequence of $X_93                                                       |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | init_state            | Variable             | sequence of bytes                                                       |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | nb_ops                | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-----------------------+----------------------+-------------------------------------------------------------------------+


  Zk_rollup_publish (tag 251)
  ===========================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | zk_rollup             | 20 bytes             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | op                    | Variable             | sequence of $X_87                  |
  +-----------------------+----------------------+------------------------------------+


  Zk_rollup_update (tag 252)
  ==========================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | zk_rollup     | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | update        | Determined from data | $X_79                  |
  +---------------+----------------------+------------------------+


  X_122
  *****

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  alpha.operation.alpha.operation_result.zk_rollup_update (Determined from data, 8-bit tag)
  *****************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  alpha.operation.alpha.internal_operation_result.event (Determined from data, 8-bit tag)
  ***************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------+----------------------+------------------------+
  | Name              | Size                 | Contents               |
  +===================+======================+========================+
  | Tag               | 1 byte               | unsigned 8-bit integer |
  +-------------------+----------------------+------------------------+
  | consumed_milligas | Determined from data | $N.t                   |
  +-------------------+----------------------+------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +------------------------------+----------------------+-------------------------------------+
  | Name                         | Size                 | Contents                            |
  +==============================+======================+=====================================+
  | Tag                          | 1 byte               | unsigned 8-bit integer              |
  +------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors" | 1 byte               | boolean (0 for false, 255 for true) |
  +------------------------------+----------------------+-------------------------------------+
  | errors                       | Determined from data | $X_122                              |
  +------------------------------+----------------------+-------------------------------------+
  | consumed_milligas            | Determined from data | $N.t                                |
  +------------------------------+----------------------+-------------------------------------+


  alpha.operation.alpha.internal_operation_result.delegation (Determined from data, 8-bit tag)
  ********************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  alpha.operation.alpha.internal_operation_result.origination (Determined from data, 8-bit tag)
  *********************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | Name                                                              | Size                 | Contents                                  |
  +===================================================================+======================+===========================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                          |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | originated_contracts                                              | Variable             | sequence of $alpha.contract_id.originated |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | storage_size                                                      | Determined from data | $Z.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | ? presence of field "lazy_storage_diff"                           | 1 byte               | boolean (0 for false, 255 for true)       |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | lazy_storage_diff                                                 | Determined from data | $alpha.lazy_storage_diff                  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | Name                                                              | Size                 | Contents                                  |
  +===================================================================+======================+===========================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true)       |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | errors                                                            | Determined from data | $X_122                                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                          |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | originated_contracts                                              | Variable             | sequence of $alpha.contract_id.originated |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | storage_size                                                      | Determined from data | $Z.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | ? presence of field "lazy_storage_diff"                           | 1 byte               | boolean (0 for false, 255 for true)       |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | lazy_storage_diff                                                 | Determined from data | $alpha.lazy_storage_diff                  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+


  X_222 (Determined from data, 8-bit tag)
  ***************************************

  To_contract (tag 0)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | Name                                                              | Size                 | Contents                                  |
  +===================================================================+======================+===========================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | ? presence of field "storage"                                     | 1 byte               | boolean (0 for false, 255 for true)       |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | storage                                                           | Determined from data | $micheline.alpha.michelson_v1.expression  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                          |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | ticket_receipt                                                    | Variable             | sequence of $X_43                         |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer        |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | originated_contracts                                              | Variable             | sequence of $alpha.contract_id.originated |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | storage_size                                                      | Determined from data | $Z.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                                      |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | allocated_destination_contract                                    | 1 byte               | boolean (0 for false, 255 for true)       |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | ? presence of field "lazy_storage_diff"                           | 1 byte               | boolean (0 for false, 255 for true)       |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+
  | lazy_storage_diff                                                 | Determined from data | $alpha.lazy_storage_diff                  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------+


  To_smart_rollup (tag 2)
  =======================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | consumed_milligas     | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | ticket_receipt        | Variable             | sequence of $X_43                  |
  +-----------------------+----------------------+------------------------------------+


  alpha.operation.alpha.internal_operation_result.transaction (Determined from data, 8-bit tag)
  *********************************************************************************************

  Applied (tag 0)
  ===============

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | Determined from data | $X_222                 |
  +-----------------+----------------------+------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +------------------------------+----------------------+-------------------------------------+
  | Name                         | Size                 | Contents                            |
  +==============================+======================+=====================================+
  | Tag                          | 1 byte               | unsigned 8-bit integer              |
  +------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors" | 1 byte               | boolean (0 for false, 255 for true) |
  +------------------------------+----------------------+-------------------------------------+
  | errors                       | Determined from data | $X_122                              |
  +------------------------------+----------------------+-------------------------------------+
  | Unnamed field 0              | Determined from data | $X_222                              |
  +------------------------------+----------------------+-------------------------------------+


  alpha.apply_internal_results.alpha.operation_result (Determined from data, 8-bit tag)
  *************************************************************************************

  transaction (tag 1)
  ===================

  +----------------------------------+----------------------+--------------------------------------------------------------+
  | Name                             | Size                 | Contents                                                     |
  +==================================+======================+==============================================================+
  | Tag                              | 1 byte               | unsigned 8-bit integer                                       |
  +----------------------------------+----------------------+--------------------------------------------------------------+
  | source                           | 22 bytes             | $alpha.transaction_destination                               |
  +----------------------------------+----------------------+--------------------------------------------------------------+
  | nonce                            | 2 bytes              | unsigned 16-bit big-endian integer                           |
  +----------------------------------+----------------------+--------------------------------------------------------------+
  | amount                           | Determined from data | $N.t                                                         |
  +----------------------------------+----------------------+--------------------------------------------------------------+
  | destination                      | 22 bytes             | $alpha.transaction_destination                               |
  +----------------------------------+----------------------+--------------------------------------------------------------+
  | ? presence of field "parameters" | 1 byte               | boolean (0 for false, 255 for true)                          |
  +----------------------------------+----------------------+--------------------------------------------------------------+
  | parameters                       | Determined from data | $X_108                                                       |
  +----------------------------------+----------------------+--------------------------------------------------------------+
  | result                           | Determined from data | $alpha.operation.alpha.internal_operation_result.transaction |
  +----------------------------------+----------------------+--------------------------------------------------------------+


  origination (tag 2)
  ===================

  +--------------------------------+----------------------+--------------------------------------------------------------+
  | Name                           | Size                 | Contents                                                     |
  +================================+======================+==============================================================+
  | Tag                            | 1 byte               | unsigned 8-bit integer                                       |
  +--------------------------------+----------------------+--------------------------------------------------------------+
  | source                         | 22 bytes             | $alpha.transaction_destination                               |
  +--------------------------------+----------------------+--------------------------------------------------------------+
  | nonce                          | 2 bytes              | unsigned 16-bit big-endian integer                           |
  +--------------------------------+----------------------+--------------------------------------------------------------+
  | balance                        | Determined from data | $N.t                                                         |
  +--------------------------------+----------------------+--------------------------------------------------------------+
  | ? presence of field "delegate" | 1 byte               | boolean (0 for false, 255 for true)                          |
  +--------------------------------+----------------------+--------------------------------------------------------------+
  | delegate                       | 21 bytes             | $public_key_hash                                             |
  +--------------------------------+----------------------+--------------------------------------------------------------+
  | script                         | Determined from data | $alpha.scripted.contracts                                    |
  +--------------------------------+----------------------+--------------------------------------------------------------+
  | result                         | Determined from data | $alpha.operation.alpha.internal_operation_result.origination |
  +--------------------------------+----------------------+--------------------------------------------------------------+


  delegation (tag 3)
  ==================

  +--------------------------------+----------------------+-------------------------------------------------------------+
  | Name                           | Size                 | Contents                                                    |
  +================================+======================+=============================================================+
  | Tag                            | 1 byte               | unsigned 8-bit integer                                      |
  +--------------------------------+----------------------+-------------------------------------------------------------+
  | source                         | 22 bytes             | $alpha.transaction_destination                              |
  +--------------------------------+----------------------+-------------------------------------------------------------+
  | nonce                          | 2 bytes              | unsigned 16-bit big-endian integer                          |
  +--------------------------------+----------------------+-------------------------------------------------------------+
  | ? presence of field "delegate" | 1 byte               | boolean (0 for false, 255 for true)                         |
  +--------------------------------+----------------------+-------------------------------------------------------------+
  | delegate                       | 21 bytes             | $public_key_hash                                            |
  +--------------------------------+----------------------+-------------------------------------------------------------+
  | result                         | Determined from data | $alpha.operation.alpha.internal_operation_result.delegation |
  +--------------------------------+----------------------+-------------------------------------------------------------+


  event (tag 4)
  =============

  +-------------------------------+----------------------+--------------------------------------------------------+
  | Name                          | Size                 | Contents                                               |
  +===============================+======================+========================================================+
  | Tag                           | 1 byte               | unsigned 8-bit integer                                 |
  +-------------------------------+----------------------+--------------------------------------------------------+
  | source                        | 22 bytes             | $alpha.transaction_destination                         |
  +-------------------------------+----------------------+--------------------------------------------------------+
  | nonce                         | 2 bytes              | unsigned 16-bit big-endian integer                     |
  +-------------------------------+----------------------+--------------------------------------------------------+
  | type                          | Determined from data | $micheline.alpha.michelson_v1.expression               |
  +-------------------------------+----------------------+--------------------------------------------------------+
  | ? presence of field "tag"     | 1 byte               | boolean (0 for false, 255 for true)                    |
  +-------------------------------+----------------------+--------------------------------------------------------+
  | tag                           | Determined from data | $alpha.entrypoint                                      |
  +-------------------------------+----------------------+--------------------------------------------------------+
  | ? presence of field "payload" | 1 byte               | boolean (0 for false, 255 for true)                    |
  +-------------------------------+----------------------+--------------------------------------------------------+
  | payload                       | Determined from data | $micheline.alpha.michelson_v1.expression               |
  +-------------------------------+----------------------+--------------------------------------------------------+
  | result                        | Determined from data | $alpha.operation.alpha.internal_operation_result.event |
  +-------------------------------+----------------------+--------------------------------------------------------+


  X_118
  *****

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.zk_rollup_update         |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  alpha.operation.alpha.operation_result.zk_rollup_publish (Determined from data, 8-bit tag)
  ******************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | size                                                              | Determined from data | $Z.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | size                                                              | Determined from data | $Z.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  X_264
  *****

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.zk_rollup_publish        |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  alpha.operation.alpha.operation_result.zk_rollup_origination (Determined from data, 8-bit tag)
  **********************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | originated_zk_rollup                                              | 20 bytes             | bytes                              |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | size                                                              | Determined from data | $Z.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | originated_zk_rollup                                              | 20 bytes             | bytes                               |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | size                                                              | Determined from data | $Z.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  X_407
  *****

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.zk_rollup_origination    |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  X_553 (54 bytes, 8-bit tag)
  ***************************

  v0 (tag 0)
  ==========

  +------------+----------+----------------------------------+
  | Name       | Size     | Contents                         |
  +============+==========+==================================+
  | Tag        | 1 byte   | unsigned 8-bit integer           |
  +------------+----------+----------------------------------+
  | level      | 4 bytes  | signed 32-bit big-endian integer |
  +------------+----------+----------------------------------+
  | index      | 1 byte   | unsigned 8-bit integer           |
  +------------+----------+----------------------------------+
  | commitment | 48 bytes | bytes                            |
  +------------+----------+----------------------------------+


  alpha.operation.alpha.operation_result.dal_publish_commitment (Determined from data, 8-bit tag)
  ***********************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------+----------------------+------------------------+
  | Name              | Size                 | Contents               |
  +===================+======================+========================+
  | Tag               | 1 byte               | unsigned 8-bit integer |
  +-------------------+----------------------+------------------------+
  | slot_header       | 54 bytes             | $X_553                 |
  +-------------------+----------------------+------------------------+
  | consumed_milligas | Determined from data | $N.t                   |
  +-------------------+----------------------+------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +------------------------------+----------------------+-------------------------------------+
  | Name                         | Size                 | Contents                            |
  +==============================+======================+=====================================+
  | Tag                          | 1 byte               | unsigned 8-bit integer              |
  +------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors" | 1 byte               | boolean (0 for false, 255 for true) |
  +------------------------------+----------------------+-------------------------------------+
  | errors                       | Determined from data | $X_122                              |
  +------------------------------+----------------------+-------------------------------------+
  | slot_header                  | 54 bytes             | $X_553                              |
  +------------------------------+----------------------+-------------------------------------+
  | consumed_milligas            | Determined from data | $N.t                                |
  +------------------------------+----------------------+-------------------------------------+


  X_548
  *****

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.dal_publish_commitment   |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  alpha.operation.alpha.operation_result.smart_rollup_recover_bond (Determined from data, 8-bit tag)
  **************************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  X_684
  *****

  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                          |
  +===================================================================+======================+===================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.smart_rollup_recover_bond |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------------------------------------+


  X_838 (Determined from data, 8-bit tag)
  ***************************************

  Public (tag 0)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Private (tag 1)
  ===============

  +-----------+----------------------+------------------------+
  | Name      | Size                 | Contents               |
  +===========+======================+========================+
  | Tag       | 1 byte               | unsigned 8-bit integer |
  +-----------+----------------------+------------------------+
  | whitelist | Determined from data | $X_107                 |
  +-----------+----------------------+------------------------+


  alpha.operation.alpha.operation_result.smart_rollup_execute_outbox_message (Determined from data, 8-bit tag)
  ************************************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ticket_updates                                                    | Variable             | sequence of $X_43                   |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "whitelist_update"                            | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | whitelist_update                                                  | Determined from data | $X_838                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ticket_updates                                                    | Variable             | sequence of $X_43                   |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "whitelist_update"                            | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | whitelist_update                                                  | Determined from data | $X_838                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  X_824
  *****

  +-------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                                    |
  +===================================================================+======================+=============================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                                          |
  +-------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                            |
  +-------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.smart_rollup_execute_outbox_message |
  +-------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                                          |
  +-------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result            |
  +-------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------+


  X_984 (1 byte, 8-bit tag)
  *************************

  Conflict_resolved (tag 0)
  =========================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Timeout (tag 1)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  X_985 (Determined from data, 8-bit tag)
  ***************************************

  Loser (tag 0)
  =============

  +--------+----------+------------------------+
  | Name   | Size     | Contents               |
  +========+==========+========================+
  | Tag    | 1 byte   | unsigned 8-bit integer |
  +--------+----------+------------------------+
  | reason | 1 byte   | $X_984                 |
  +--------+----------+------------------------+
  | player | 21 bytes | $public_key_hash       |
  +--------+----------+------------------------+


  Draw (tag 1)
  ============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  X_986 (Determined from data, 8-bit tag)
  ***************************************

  Ongoing (tag 0)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Ended (tag 1)
  =============

  +--------+----------------------+------------------------+
  | Name   | Size                 | Contents               |
  +========+======================+========================+
  | Tag    | 1 byte               | unsigned 8-bit integer |
  +--------+----------------------+------------------------+
  | result | Determined from data | $X_985                 |
  +--------+----------------------+------------------------+


  alpha.operation.alpha.operation_result.smart_rollup_timeout (Determined from data, 8-bit tag)
  *********************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | game_status                                                       | Determined from data | $X_986                             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | game_status                                                       | Determined from data | $X_986                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  X_979
  *****

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.smart_rollup_timeout     |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  alpha.operation.alpha.operation_result.smart_rollup_publish (Determined from data, 8-bit tag)
  *********************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | staked_hash                                                       | 32 bytes             | bytes                              |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | published_at_level                                                | 4 bytes              | signed 32-bit big-endian integer   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | staked_hash                                                       | 32 bytes             | bytes                               |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | published_at_level                                                | 4 bytes              | signed 32-bit big-endian integer    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  X_1278
  ******

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.smart_rollup_publish     |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  alpha.operation.alpha.operation_result.smart_rollup_cement (Determined from data, 8-bit tag)
  ********************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------+----------------------+----------------------------------+
  | Name              | Size                 | Contents                         |
  +===================+======================+==================================+
  | Tag               | 1 byte               | unsigned 8-bit integer           |
  +-------------------+----------------------+----------------------------------+
  | consumed_milligas | Determined from data | $N.t                             |
  +-------------------+----------------------+----------------------------------+
  | inbox_level       | 4 bytes              | signed 32-bit big-endian integer |
  +-------------------+----------------------+----------------------------------+
  | commitment_hash   | 32 bytes             | bytes                            |
  +-------------------+----------------------+----------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +------------------------------+----------------------+-------------------------------------+
  | Name                         | Size                 | Contents                            |
  +==============================+======================+=====================================+
  | Tag                          | 1 byte               | unsigned 8-bit integer              |
  +------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors" | 1 byte               | boolean (0 for false, 255 for true) |
  +------------------------------+----------------------+-------------------------------------+
  | errors                       | Determined from data | $X_122                              |
  +------------------------------+----------------------+-------------------------------------+
  | consumed_milligas            | Determined from data | $N.t                                |
  +------------------------------+----------------------+-------------------------------------+
  | inbox_level                  | 4 bytes              | signed 32-bit big-endian integer    |
  +------------------------------+----------------------+-------------------------------------+
  | commitment_hash              | 32 bytes             | bytes                               |
  +------------------------------+----------------------+-------------------------------------+


  X_1418
  ******

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.smart_rollup_cement      |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  X_1553
  ******

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.internal_operation_result.event           |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  alpha.operation.alpha.operation_result.smart_rollup_originate (Determined from data, 8-bit tag)
  ***********************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | address                                                           | 20 bytes             | bytes                              |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | genesis_commitment_hash                                           | 32 bytes             | bytes                              |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | size                                                              | Determined from data | $Z.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | address                                                           | 20 bytes             | bytes                               |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | genesis_commitment_hash                                           | 32 bytes             | bytes                               |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | size                                                              | Determined from data | $Z.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  X_1689
  ******

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.smart_rollup_originate   |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  alpha.operation.alpha.operation_result.transfer_ticket (Determined from data, 8-bit tag)
  ****************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | ticket_updates                                                    | Variable             | sequence of $X_43                  |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ticket_updates                                                    | Variable             | sequence of $X_43                   |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | paid_storage_size_diff                                            | Determined from data | $Z.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  X_1829
  ******

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.transfer_ticket          |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  alpha.operation.alpha.operation_result.register_global_constant (Determined from data, 8-bit tag)
  *************************************************************************************************

  Applied (tag 0)
  ===============

  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | Name                                                              | Size                 | Contents                           |
  +===================================================================+======================+====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer             |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                   |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | storage_size                                                      | Determined from data | $Z.t                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------+
  | global_address                                                    | 32 bytes             | bytes                              |
  +-------------------------------------------------------------------+----------------------+------------------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | Name                                                              | Size                 | Contents                            |
  +===================================================================+======================+=====================================+
  | Tag                                                               | 1 byte               | unsigned 8-bit integer              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors"                                      | 1 byte               | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | errors                                                            | Determined from data | $X_122                              |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | consumed_milligas                                                 | Determined from data | $N.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | storage_size                                                      | Determined from data | $Z.t                                |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+
  | global_address                                                    | 32 bytes             | bytes                               |
  +-------------------------------------------------------------------+----------------------+-------------------------------------+


  X_2387
  ******

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.register_global_constant |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  X_2527
  ******

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.internal_operation_result.delegation      |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  X_2667
  ******

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.internal_operation_result.origination     |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  alpha.operation.alpha.operation_result.transaction (Determined from data, 8-bit tag)
  ************************************************************************************

  Applied (tag 0)
  ===============

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | Determined from data | $X_77                  |
  +-----------------+----------------------+------------------------+


  Failed (tag 1)
  ==============

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | errors                | Variable | sequence of $X_81                  |
  +-----------------------+----------+------------------------------------+


  Skipped (tag 2)
  ===============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Backtracked (tag 3)
  ===================

  +------------------------------+----------------------+-------------------------------------+
  | Name                         | Size                 | Contents                            |
  +==============================+======================+=====================================+
  | Tag                          | 1 byte               | unsigned 8-bit integer              |
  +------------------------------+----------------------+-------------------------------------+
  | ? presence of field "errors" | 1 byte               | boolean (0 for false, 255 for true) |
  +------------------------------+----------------------+-------------------------------------+
  | errors                       | Determined from data | $X_122                              |
  +------------------------------+----------------------+-------------------------------------+
  | Unnamed field 0              | Determined from data | $X_77                               |
  +------------------------------+----------------------+-------------------------------------+


  X_2848
  ******

  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | Name                                                              | Size                 | Contents                                                         |
  +===================================================================+======================+==================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | balance_updates                                                   | Variable             | sequence of $X_8                                                 |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | operation_result                                                  | Determined from data | $alpha.operation.alpha.operation_result.transaction              |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | # bytes in next field                                             | 4 bytes              | unsigned 30-bit big-endian integer                               |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+
  | internal_operation_results                                        | Variable             | sequence of $alpha.apply_internal_results.alpha.operation_result |
  +-------------------------------------------------------------------+----------------------+------------------------------------------------------------------+


  X_3186
  ******

  +-------------------------------------------------------------------+----------+-------------------------------------------------------------------------+
  | Name                                                              | Size     | Contents                                                                |
  +===================================================================+==========+=========================================================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes  | unsigned 30-bit big-endian integer                                      |
  +-------------------------------------------------------------------+----------+-------------------------------------------------------------------------+
  | balance_updates                                                   | Variable | sequence of $X_8                                                        |
  +-------------------------------------------------------------------+----------+-------------------------------------------------------------------------+
  | delegate                                                          | 21 bytes | $public_key_hash                                                        |
  +-------------------------------------------------------------------+----------+-------------------------------------------------------------------------+
  | consensus_power                                                   | 4 bytes  | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-------------------------------------------------------------------+----------+-------------------------------------------------------------------------+
  | consensus_key                                                     | 21 bytes | $public_key_hash                                                        |
  +-------------------------------------------------------------------+----------+-------------------------------------------------------------------------+


  X_3198
  ******

  +-------------------------------------------------------------------+----------+-------------------------------------+
  | Name                                                              | Size     | Contents                            |
  +===================================================================+==========+=====================================+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes  | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------+-------------------------------------+
  | balance_updates                                                   | Variable | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------+-------------------------------------+
  | allocated_destination_contract                                    | 1 byte   | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------+-------------------------------------+


  alpha.operation_metadata.alpha.balance_updates
  **********************************************

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_8                   |
  +-----------------------+----------+------------------------------------+


  X_3206
  ******

  +-------------------------------------------------------------------+----------+-------------------------------------+
  | Name                                                              | Size     | Contents                            |
  +===================================================================+==========+=====================================+
  | ? presence of field "forbidden_delegate"                          | 1 byte   | boolean (0 for false, 255 for true) |
  +-------------------------------------------------------------------+----------+-------------------------------------+
  | forbidden_delegate                                                | 21 bytes | $public_key_hash                    |
  +-------------------------------------------------------------------+----------+-------------------------------------+
  | # bytes in field "alpha.operation_metadata.alpha.balance_updates" | 4 bytes  | unsigned 30-bit big-endian integer  |
  +-------------------------------------------------------------------+----------+-------------------------------------+
  | balance_updates                                                   | Variable | sequence of $X_8                    |
  +-------------------------------------------------------------------+----------+-------------------------------------+


  alpha.operation.alpha.operation_contents_and_result (Determined from data, 8-bit tag)
  *************************************************************************************

  Seed_nonce_revelation (tag 1)
  =============================

  +----------+----------------------+-------------------------------------------------+
  | Name     | Size                 | Contents                                        |
  +==========+======================+=================================================+
  | Tag      | 1 byte               | unsigned 8-bit integer                          |
  +----------+----------------------+-------------------------------------------------+
  | level    | 4 bytes              | signed 32-bit big-endian integer                |
  +----------+----------------------+-------------------------------------------------+
  | nonce    | 32 bytes             | bytes                                           |
  +----------+----------------------+-------------------------------------------------+
  | metadata | Determined from data | $alpha.operation_metadata.alpha.balance_updates |
  +----------+----------------------+-------------------------------------------------+


  Double_attestation_evidence (tag 2)
  ===================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | op1                   | Variable             | $alpha.inlined.attestation         |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | op2                   | Variable             | $alpha.inlined.attestation         |
  +-----------------------+----------------------+------------------------------------+
  | metadata              | Determined from data | $X_3206                            |
  +-----------------------+----------------------+------------------------------------+


  Double_baking_evidence (tag 3)
  ==============================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | bh1                   | Variable             | $raw_block_header                  |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | bh2                   | Variable             | $raw_block_header                  |
  +-----------------------+----------------------+------------------------------------+
  | metadata              | Determined from data | $X_3206                            |
  +-----------------------+----------------------+------------------------------------+


  Activate_account (tag 4)
  ========================

  +----------+----------------------+-------------------------------------------------+
  | Name     | Size                 | Contents                                        |
  +==========+======================+=================================================+
  | Tag      | 1 byte               | unsigned 8-bit integer                          |
  +----------+----------------------+-------------------------------------------------+
  | pkh      | 20 bytes             | bytes                                           |
  +----------+----------------------+-------------------------------------------------+
  | secret   | 20 bytes             | bytes                                           |
  +----------+----------------------+-------------------------------------------------+
  | metadata | Determined from data | $alpha.operation_metadata.alpha.balance_updates |
  +----------+----------------------+-------------------------------------------------+


  Proposals (tag 5)
  =================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | source                | 21 bytes | $public_key_hash                   |
  +-----------------------+----------+------------------------------------+
  | period                | 4 bytes  | signed 32-bit big-endian integer   |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | proposals             | Variable | sequence of at most 20 bytes       |
  +-----------------------+----------+------------------------------------+


  Ballot (tag 6)
  ==============

  +----------+----------+----------------------------------+
  | Name     | Size     | Contents                         |
  +==========+==========+==================================+
  | Tag      | 1 byte   | unsigned 8-bit integer           |
  +----------+----------+----------------------------------+
  | source   | 21 bytes | $public_key_hash                 |
  +----------+----------+----------------------------------+
  | period   | 4 bytes  | signed 32-bit big-endian integer |
  +----------+----------+----------------------------------+
  | proposal | 32 bytes | bytes                            |
  +----------+----------+----------------------------------+
  | ballot   | 1 byte   | signed 8-bit integer             |
  +----------+----------+----------------------------------+


  Double_preattestation_evidence (tag 7)
  ======================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | op1                   | Variable             | $alpha.inlined.preattestation      |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | op2                   | Variable             | $alpha.inlined.preattestation      |
  +-----------------------+----------------------+------------------------------------+
  | metadata              | Determined from data | $X_3206                            |
  +-----------------------+----------------------+------------------------------------+


  Vdf_revelation (tag 8)
  ======================

  +----------+----------------------+-------------------------------------------------+
  | Name     | Size                 | Contents                                        |
  +==========+======================+=================================================+
  | Tag      | 1 byte               | unsigned 8-bit integer                          |
  +----------+----------------------+-------------------------------------------------+
  | solution | 200 bytes            | $X_109                                          |
  +----------+----------------------+-------------------------------------------------+
  | metadata | Determined from data | $alpha.operation_metadata.alpha.balance_updates |
  +----------+----------------------+-------------------------------------------------+


  Drain_delegate (tag 9)
  ======================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | consensus_key | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | delegate      | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | destination   | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | metadata      | Determined from data | $X_3198                |
  +---------------+----------------------+------------------------+


  Preattestation (tag 20)
  =======================

  +--------------------+----------------------+------------------------------------+
  | Name               | Size                 | Contents                           |
  +====================+======================+====================================+
  | Tag                | 1 byte               | unsigned 8-bit integer             |
  +--------------------+----------------------+------------------------------------+
  | slot               | 2 bytes              | unsigned 16-bit big-endian integer |
  +--------------------+----------------------+------------------------------------+
  | level              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | round              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | block_payload_hash | 32 bytes             | bytes                              |
  +--------------------+----------------------+------------------------------------+
  | metadata           | Determined from data | $X_3186                            |
  +--------------------+----------------------+------------------------------------+


  Attestation (tag 21)
  ====================

  +--------------------+----------------------+------------------------------------+
  | Name               | Size                 | Contents                           |
  +====================+======================+====================================+
  | Tag                | 1 byte               | unsigned 8-bit integer             |
  +--------------------+----------------------+------------------------------------+
  | slot               | 2 bytes              | unsigned 16-bit big-endian integer |
  +--------------------+----------------------+------------------------------------+
  | level              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | round              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | block_payload_hash | 32 bytes             | bytes                              |
  +--------------------+----------------------+------------------------------------+
  | metadata           | Determined from data | $X_3186                            |
  +--------------------+----------------------+------------------------------------+


  Attestation_with_dal (tag 23)
  =============================

  +--------------------+----------------------+------------------------------------+
  | Name               | Size                 | Contents                           |
  +====================+======================+====================================+
  | Tag                | 1 byte               | unsigned 8-bit integer             |
  +--------------------+----------------------+------------------------------------+
  | slot               | 2 bytes              | unsigned 16-bit big-endian integer |
  +--------------------+----------------------+------------------------------------+
  | level              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | round              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | block_payload_hash | 32 bytes             | bytes                              |
  +--------------------+----------------------+------------------------------------+
  | dal_attestation    | Determined from data | $Z.t                               |
  +--------------------+----------------------+------------------------------------+
  | metadata           | Determined from data | $X_3186                            |
  +--------------------+----------------------+------------------------------------+


  Reveal (tag 107)
  ================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | public_key    | Determined from data | $public_key            |
  +---------------+----------------------+------------------------+
  | metadata      | Determined from data | $X_1553                |
  +---------------+----------------------+------------------------+


  Transaction (tag 108)
  =====================

  +----------------------------------+----------------------+-------------------------------------+
  | Name                             | Size                 | Contents                            |
  +==================================+======================+=====================================+
  | Tag                              | 1 byte               | unsigned 8-bit integer              |
  +----------------------------------+----------------------+-------------------------------------+
  | source                           | 21 bytes             | $public_key_hash                    |
  +----------------------------------+----------------------+-------------------------------------+
  | fee                              | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | counter                          | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | gas_limit                        | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | storage_limit                    | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | amount                           | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | destination                      | 22 bytes             | $alpha.contract_id                  |
  +----------------------------------+----------------------+-------------------------------------+
  | ? presence of field "parameters" | 1 byte               | boolean (0 for false, 255 for true) |
  +----------------------------------+----------------------+-------------------------------------+
  | parameters                       | Determined from data | $X_108                              |
  +----------------------------------+----------------------+-------------------------------------+
  | metadata                         | Determined from data | $X_2848                             |
  +----------------------------------+----------------------+-------------------------------------+


  Origination (tag 109)
  =====================

  +--------------------------------+----------------------+-------------------------------------+
  | Name                           | Size                 | Contents                            |
  +================================+======================+=====================================+
  | Tag                            | 1 byte               | unsigned 8-bit integer              |
  +--------------------------------+----------------------+-------------------------------------+
  | source                         | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+
  | fee                            | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | counter                        | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | gas_limit                      | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | storage_limit                  | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | balance                        | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | ? presence of field "delegate" | 1 byte               | boolean (0 for false, 255 for true) |
  +--------------------------------+----------------------+-------------------------------------+
  | delegate                       | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+
  | script                         | Determined from data | $alpha.scripted.contracts           |
  +--------------------------------+----------------------+-------------------------------------+
  | metadata                       | Determined from data | $X_2667                             |
  +--------------------------------+----------------------+-------------------------------------+


  Delegation (tag 110)
  ====================

  +--------------------------------+----------------------+-------------------------------------+
  | Name                           | Size                 | Contents                            |
  +================================+======================+=====================================+
  | Tag                            | 1 byte               | unsigned 8-bit integer              |
  +--------------------------------+----------------------+-------------------------------------+
  | source                         | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+
  | fee                            | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | counter                        | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | gas_limit                      | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | storage_limit                  | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | ? presence of field "delegate" | 1 byte               | boolean (0 for false, 255 for true) |
  +--------------------------------+----------------------+-------------------------------------+
  | delegate                       | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+
  | metadata                       | Determined from data | $X_2527                             |
  +--------------------------------+----------------------+-------------------------------------+


  Register_global_constant (tag 111)
  ==================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | value                 | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | metadata              | Determined from data | $X_2387                            |
  +-----------------------+----------------------+------------------------------------+


  Set_deposits_limit (tag 112)
  ============================

  +-----------------------------+----------------------+-------------------------------------+
  | Name                        | Size                 | Contents                            |
  +=============================+======================+=====================================+
  | Tag                         | 1 byte               | unsigned 8-bit integer              |
  +-----------------------------+----------------------+-------------------------------------+
  | source                      | 21 bytes             | $public_key_hash                    |
  +-----------------------------+----------------------+-------------------------------------+
  | fee                         | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | counter                     | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | gas_limit                   | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | storage_limit               | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | ? presence of field "limit" | 1 byte               | boolean (0 for false, 255 for true) |
  +-----------------------------+----------------------+-------------------------------------+
  | limit                       | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | metadata                    | Determined from data | $X_1553                             |
  +-----------------------------+----------------------+-------------------------------------+


  Increase_paid_storage (tag 113)
  ===============================

  +---------------+----------------------+-------------------------------+
  | Name          | Size                 | Contents                      |
  +===============+======================+===============================+
  | Tag           | 1 byte               | unsigned 8-bit integer        |
  +---------------+----------------------+-------------------------------+
  | source        | 21 bytes             | $public_key_hash              |
  +---------------+----------------------+-------------------------------+
  | fee           | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | counter       | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | gas_limit     | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | storage_limit | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | amount        | Determined from data | $Z.t                          |
  +---------------+----------------------+-------------------------------+
  | destination   | 22 bytes             | $alpha.contract_id.originated |
  +---------------+----------------------+-------------------------------+
  | metadata      | Determined from data | $X_684                        |
  +---------------+----------------------+-------------------------------+


  Update_consensus_key (tag 114)
  ==============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | pk            | Determined from data | $public_key            |
  +---------------+----------------------+------------------------+
  | metadata      | Determined from data | $X_1553                |
  +---------------+----------------------+------------------------+


  Transfer_ticket (tag 158)
  =========================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | ticket_contents       | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | ticket_ty             | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | ticket_ticketer       | 22 bytes             | $alpha.contract_id                 |
  +-----------------------+----------------------+------------------------------------+
  | ticket_amount         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | destination           | 22 bytes             | $alpha.contract_id                 |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | entrypoint            | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | metadata              | Determined from data | $X_1829                            |
  +-----------------------+----------------------+------------------------------------+


  Smart_rollup_originate (tag 200)
  ================================

  +---------------------------------+----------------------+------------------------------------------------------------+
  | Name                            | Size                 | Contents                                                   |
  +=================================+======================+============================================================+
  | Tag                             | 1 byte               | unsigned 8-bit integer                                     |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | source                          | 21 bytes             | $public_key_hash                                           |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | fee                             | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | counter                         | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | gas_limit                       | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | storage_limit                   | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | pvm_kind                        | 1 byte               | unsigned 8-bit integer encoding an enumeration (see X_106) |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | # bytes in next field           | 4 bytes              | unsigned 30-bit big-endian integer                         |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | kernel                          | Variable             | bytes                                                      |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | # bytes in next field           | 4 bytes              | unsigned 30-bit big-endian integer                         |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | parameters_ty                   | Variable             | bytes                                                      |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | ? presence of field "whitelist" | 1 byte               | boolean (0 for false, 255 for true)                        |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | whitelist                       | Determined from data | $X_107                                                     |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | metadata                        | Determined from data | $X_1689                                                    |
  +---------------------------------+----------------------+------------------------------------------------------------+


  Smart_rollup_add_messages (tag 201)
  ===================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | message               | Variable             | sequence of $X_81                  |
  +-----------------------+----------------------+------------------------------------+
  | metadata              | Determined from data | $X_1553                            |
  +-----------------------+----------------------+------------------------------------+


  Smart_rollup_cement (tag 202)
  =============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | metadata      | Determined from data | $X_1418                |
  +---------------+----------------------+------------------------+


  Smart_rollup_publish (tag 203)
  ==============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | commitment    | 76 bytes             | $X_104                 |
  +---------------+----------------------+------------------------+
  | metadata      | Determined from data | $X_1278                |
  +---------------+----------------------+------------------------+


  Smart_rollup_refute (tag 204)
  =============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | opponent      | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | refutation    | Determined from data | $X_103                 |
  +---------------+----------------------+------------------------+
  | metadata      | Determined from data | $X_979                 |
  +---------------+----------------------+------------------------+


  Smart_rollup_timeout (tag 205)
  ==============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | stakers       | 42 bytes             | $X_97                  |
  +---------------+----------------------+------------------------+
  | metadata      | Determined from data | $X_979                 |
  +---------------+----------------------+------------------------+


  Smart_rollup_execute_outbox_message (tag 206)
  =============================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | rollup                | 20 bytes             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | cemented_commitment   | 32 bytes             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | output_proof          | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | metadata              | Determined from data | $X_824                             |
  +-----------------------+----------------------+------------------------------------+


  Smart_rollup_recover_bond (tag 207)
  ===================================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | staker        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | metadata      | Determined from data | $X_684                 |
  +---------------+----------------------+------------------------+


  Dal_publish_commitment (tag 230)
  ================================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | slot_header   | 145 bytes            | $X_96                  |
  +---------------+----------------------+------------------------+
  | metadata      | Determined from data | $X_548                 |
  +---------------+----------------------+------------------------+


  Zk_rollup_origination (tag 250)
  ===============================

  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | Name                  | Size                 | Contents                                                                |
  +=======================+======================+=========================================================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer                                                  |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | source                | 21 bytes             | $public_key_hash                                                        |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | fee                   | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | counter               | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | gas_limit             | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | storage_limit         | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | public_parameters     | Variable             | bytes                                                                   |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | circuits_info         | Variable             | sequence of $X_93                                                       |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | init_state            | Variable             | sequence of bytes                                                       |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | nb_ops                | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | metadata              | Determined from data | $X_407                                                                  |
  +-----------------------+----------------------+-------------------------------------------------------------------------+


  Zk_rollup_publish (tag 251)
  ===========================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | zk_rollup             | 20 bytes             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | op                    | Variable             | sequence of $X_87                  |
  +-----------------------+----------------------+------------------------------------+
  | metadata              | Determined from data | $X_264                             |
  +-----------------------+----------------------+------------------------------------+


  Zk_rollup_update (tag 252)
  ==========================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | zk_rollup     | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | update        | Determined from data | $X_79                  |
  +---------------+----------------------+------------------------+
  | metadata      | Determined from data | $X_118                 |
  +---------------+----------------------+------------------------+


  X_3224 (Variable, 8-bit tag)
  ****************************

  Operation_with_metadata (tag 0)
  ===============================

  +-----------------------+----------+------------------------------------------------------------------+
  | Name                  | Size     | Contents                                                         |
  +=======================+==========+==================================================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer                                           |
  +-----------------------+----------+------------------------------------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer                               |
  +-----------------------+----------+------------------------------------------------------------------+
  | contents              | Variable | sequence of $alpha.operation.alpha.operation_contents_and_result |
  +-----------------------+----------+------------------------------------------------------------------+
  | signature             | Variable | bytes                                                            |
  +-----------------------+----------+------------------------------------------------------------------+


  Operation_without_metadata (tag 1)
  ==================================

  +-----------------------+----------+---------------------------------------------+
  | Name                  | Size     | Contents                                    |
  +=======================+==========+=============================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer                      |
  +-----------------------+----------+---------------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer          |
  +-----------------------+----------+---------------------------------------------+
  | contents              | Variable | sequence of $alpha.operation.alpha.contents |
  +-----------------------+----------+---------------------------------------------+
  | signature             | Variable | bytes                                       |
  +-----------------------+----------+---------------------------------------------+


  bls_signature_prefix (33 bytes, 8-bit tag)
  ******************************************

  Bls_prefix (tag 3)
  ==================

  +-----------------+----------+------------------------+
  | Name            | Size     | Contents               |
  +=================+==========+========================+
  | Tag             | 1 byte   | unsigned 8-bit integer |
  +-----------------+----------+------------------------+
  | Unnamed field 0 | 32 bytes | bytes                  |
  +-----------------+----------+------------------------+


  alpha.operation.alpha.contents_or_signature_prefix (Determined from data, 8-bit tag)
  ************************************************************************************

  Seed_nonce_revelation (tag 1)
  =============================

  +-------+----------+----------------------------------+
  | Name  | Size     | Contents                         |
  +=======+==========+==================================+
  | Tag   | 1 byte   | unsigned 8-bit integer           |
  +-------+----------+----------------------------------+
  | level | 4 bytes  | signed 32-bit big-endian integer |
  +-------+----------+----------------------------------+
  | nonce | 32 bytes | bytes                            |
  +-------+----------+----------------------------------+


  Double_attestation_evidence (tag 2)
  ===================================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | op1                   | Variable | $alpha.inlined.attestation         |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | op2                   | Variable | $alpha.inlined.attestation         |
  +-----------------------+----------+------------------------------------+


  Double_baking_evidence (tag 3)
  ==============================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | bh1                   | Variable | $raw_block_header                  |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | bh2                   | Variable | $raw_block_header                  |
  +-----------------------+----------+------------------------------------+


  Activate_account (tag 4)
  ========================

  +--------+----------+------------------------+
  | Name   | Size     | Contents               |
  +========+==========+========================+
  | Tag    | 1 byte   | unsigned 8-bit integer |
  +--------+----------+------------------------+
  | pkh    | 20 bytes | bytes                  |
  +--------+----------+------------------------+
  | secret | 20 bytes | bytes                  |
  +--------+----------+------------------------+


  Proposals (tag 5)
  =================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | source                | 21 bytes | $public_key_hash                   |
  +-----------------------+----------+------------------------------------+
  | period                | 4 bytes  | signed 32-bit big-endian integer   |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | proposals             | Variable | sequence of at most 20 bytes       |
  +-----------------------+----------+------------------------------------+


  Ballot (tag 6)
  ==============

  +----------+----------+----------------------------------+
  | Name     | Size     | Contents                         |
  +==========+==========+==================================+
  | Tag      | 1 byte   | unsigned 8-bit integer           |
  +----------+----------+----------------------------------+
  | source   | 21 bytes | $public_key_hash                 |
  +----------+----------+----------------------------------+
  | period   | 4 bytes  | signed 32-bit big-endian integer |
  +----------+----------+----------------------------------+
  | proposal | 32 bytes | bytes                            |
  +----------+----------+----------------------------------+
  | ballot   | 1 byte   | signed 8-bit integer             |
  +----------+----------+----------------------------------+


  Double_preattestation_evidence (tag 7)
  ======================================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | op1                   | Variable | $alpha.inlined.preattestation      |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | op2                   | Variable | $alpha.inlined.preattestation      |
  +-----------------------+----------+------------------------------------+


  Vdf_revelation (tag 8)
  ======================

  +----------+-----------+------------------------+
  | Name     | Size      | Contents               |
  +==========+===========+========================+
  | Tag      | 1 byte    | unsigned 8-bit integer |
  +----------+-----------+------------------------+
  | solution | 200 bytes | $X_109                 |
  +----------+-----------+------------------------+


  Drain_delegate (tag 9)
  ======================

  +---------------+----------+------------------------+
  | Name          | Size     | Contents               |
  +===============+==========+========================+
  | Tag           | 1 byte   | unsigned 8-bit integer |
  +---------------+----------+------------------------+
  | consensus_key | 21 bytes | $public_key_hash       |
  +---------------+----------+------------------------+
  | delegate      | 21 bytes | $public_key_hash       |
  +---------------+----------+------------------------+
  | destination   | 21 bytes | $public_key_hash       |
  +---------------+----------+------------------------+


  Failing_noop (tag 17)
  =====================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | arbitrary             | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  Preattestation (tag 20)
  =======================

  +--------------------+----------+------------------------------------+
  | Name               | Size     | Contents                           |
  +====================+==========+====================================+
  | Tag                | 1 byte   | unsigned 8-bit integer             |
  +--------------------+----------+------------------------------------+
  | slot               | 2 bytes  | unsigned 16-bit big-endian integer |
  +--------------------+----------+------------------------------------+
  | level              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | round              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | block_payload_hash | 32 bytes | bytes                              |
  +--------------------+----------+------------------------------------+


  Attestation (tag 21)
  ====================

  +--------------------+----------+------------------------------------+
  | Name               | Size     | Contents                           |
  +====================+==========+====================================+
  | Tag                | 1 byte   | unsigned 8-bit integer             |
  +--------------------+----------+------------------------------------+
  | slot               | 2 bytes  | unsigned 16-bit big-endian integer |
  +--------------------+----------+------------------------------------+
  | level              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | round              | 4 bytes  | signed 32-bit big-endian integer   |
  +--------------------+----------+------------------------------------+
  | block_payload_hash | 32 bytes | bytes                              |
  +--------------------+----------+------------------------------------+


  Attestation_with_dal (tag 23)
  =============================

  +--------------------+----------------------+------------------------------------+
  | Name               | Size                 | Contents                           |
  +====================+======================+====================================+
  | Tag                | 1 byte               | unsigned 8-bit integer             |
  +--------------------+----------------------+------------------------------------+
  | slot               | 2 bytes              | unsigned 16-bit big-endian integer |
  +--------------------+----------------------+------------------------------------+
  | level              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | round              | 4 bytes              | signed 32-bit big-endian integer   |
  +--------------------+----------------------+------------------------------------+
  | block_payload_hash | 32 bytes             | bytes                              |
  +--------------------+----------------------+------------------------------------+
  | dal_attestation    | Determined from data | $Z.t                               |
  +--------------------+----------------------+------------------------------------+


  Reveal (tag 107)
  ================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | public_key    | Determined from data | $public_key            |
  +---------------+----------------------+------------------------+


  Transaction (tag 108)
  =====================

  +----------------------------------+----------------------+-------------------------------------+
  | Name                             | Size                 | Contents                            |
  +==================================+======================+=====================================+
  | Tag                              | 1 byte               | unsigned 8-bit integer              |
  +----------------------------------+----------------------+-------------------------------------+
  | source                           | 21 bytes             | $public_key_hash                    |
  +----------------------------------+----------------------+-------------------------------------+
  | fee                              | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | counter                          | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | gas_limit                        | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | storage_limit                    | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | amount                           | Determined from data | $N.t                                |
  +----------------------------------+----------------------+-------------------------------------+
  | destination                      | 22 bytes             | $alpha.contract_id                  |
  +----------------------------------+----------------------+-------------------------------------+
  | ? presence of field "parameters" | 1 byte               | boolean (0 for false, 255 for true) |
  +----------------------------------+----------------------+-------------------------------------+
  | parameters                       | Determined from data | $X_108                              |
  +----------------------------------+----------------------+-------------------------------------+


  Origination (tag 109)
  =====================

  +--------------------------------+----------------------+-------------------------------------+
  | Name                           | Size                 | Contents                            |
  +================================+======================+=====================================+
  | Tag                            | 1 byte               | unsigned 8-bit integer              |
  +--------------------------------+----------------------+-------------------------------------+
  | source                         | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+
  | fee                            | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | counter                        | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | gas_limit                      | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | storage_limit                  | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | balance                        | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | ? presence of field "delegate" | 1 byte               | boolean (0 for false, 255 for true) |
  +--------------------------------+----------------------+-------------------------------------+
  | delegate                       | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+
  | script                         | Determined from data | $alpha.scripted.contracts           |
  +--------------------------------+----------------------+-------------------------------------+


  Delegation (tag 110)
  ====================

  +--------------------------------+----------------------+-------------------------------------+
  | Name                           | Size                 | Contents                            |
  +================================+======================+=====================================+
  | Tag                            | 1 byte               | unsigned 8-bit integer              |
  +--------------------------------+----------------------+-------------------------------------+
  | source                         | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+
  | fee                            | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | counter                        | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | gas_limit                      | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | storage_limit                  | Determined from data | $N.t                                |
  +--------------------------------+----------------------+-------------------------------------+
  | ? presence of field "delegate" | 1 byte               | boolean (0 for false, 255 for true) |
  +--------------------------------+----------------------+-------------------------------------+
  | delegate                       | 21 bytes             | $public_key_hash                    |
  +--------------------------------+----------------------+-------------------------------------+


  Register_global_constant (tag 111)
  ==================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | value                 | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+


  Set_deposits_limit (tag 112)
  ============================

  +-----------------------------+----------------------+-------------------------------------+
  | Name                        | Size                 | Contents                            |
  +=============================+======================+=====================================+
  | Tag                         | 1 byte               | unsigned 8-bit integer              |
  +-----------------------------+----------------------+-------------------------------------+
  | source                      | 21 bytes             | $public_key_hash                    |
  +-----------------------------+----------------------+-------------------------------------+
  | fee                         | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | counter                     | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | gas_limit                   | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | storage_limit               | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+
  | ? presence of field "limit" | 1 byte               | boolean (0 for false, 255 for true) |
  +-----------------------------+----------------------+-------------------------------------+
  | limit                       | Determined from data | $N.t                                |
  +-----------------------------+----------------------+-------------------------------------+


  Increase_paid_storage (tag 113)
  ===============================

  +---------------+----------------------+-------------------------------+
  | Name          | Size                 | Contents                      |
  +===============+======================+===============================+
  | Tag           | 1 byte               | unsigned 8-bit integer        |
  +---------------+----------------------+-------------------------------+
  | source        | 21 bytes             | $public_key_hash              |
  +---------------+----------------------+-------------------------------+
  | fee           | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | counter       | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | gas_limit     | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | storage_limit | Determined from data | $N.t                          |
  +---------------+----------------------+-------------------------------+
  | amount        | Determined from data | $Z.t                          |
  +---------------+----------------------+-------------------------------+
  | destination   | 22 bytes             | $alpha.contract_id.originated |
  +---------------+----------------------+-------------------------------+


  Update_consensus_key (tag 114)
  ==============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | pk            | Determined from data | $public_key            |
  +---------------+----------------------+------------------------+


  Transfer_ticket (tag 158)
  =========================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | ticket_contents       | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | ticket_ty             | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | ticket_ticketer       | 22 bytes             | $alpha.contract_id                 |
  +-----------------------+----------------------+------------------------------------+
  | ticket_amount         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | destination           | 22 bytes             | $alpha.contract_id                 |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | entrypoint            | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+


  Smart_rollup_originate (tag 200)
  ================================

  +---------------------------------+----------------------+------------------------------------------------------------+
  | Name                            | Size                 | Contents                                                   |
  +=================================+======================+============================================================+
  | Tag                             | 1 byte               | unsigned 8-bit integer                                     |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | source                          | 21 bytes             | $public_key_hash                                           |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | fee                             | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | counter                         | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | gas_limit                       | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | storage_limit                   | Determined from data | $N.t                                                       |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | pvm_kind                        | 1 byte               | unsigned 8-bit integer encoding an enumeration (see X_106) |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | # bytes in next field           | 4 bytes              | unsigned 30-bit big-endian integer                         |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | kernel                          | Variable             | bytes                                                      |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | # bytes in next field           | 4 bytes              | unsigned 30-bit big-endian integer                         |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | parameters_ty                   | Variable             | bytes                                                      |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | ? presence of field "whitelist" | 1 byte               | boolean (0 for false, 255 for true)                        |
  +---------------------------------+----------------------+------------------------------------------------------------+
  | whitelist                       | Determined from data | $X_107                                                     |
  +---------------------------------+----------------------+------------------------------------------------------------+


  Smart_rollup_add_messages (tag 201)
  ===================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | message               | Variable             | sequence of $X_81                  |
  +-----------------------+----------------------+------------------------------------+


  Smart_rollup_cement (tag 202)
  =============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+


  Smart_rollup_publish (tag 203)
  ==============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | commitment    | 76 bytes             | $X_104                 |
  +---------------+----------------------+------------------------+


  Smart_rollup_refute (tag 204)
  =============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | opponent      | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | refutation    | Determined from data | $X_103                 |
  +---------------+----------------------+------------------------+


  Smart_rollup_timeout (tag 205)
  ==============================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | stakers       | 42 bytes             | $X_97                  |
  +---------------+----------------------+------------------------+


  Smart_rollup_execute_outbox_message (tag 206)
  =============================================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | rollup                | 20 bytes             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | cemented_commitment   | 32 bytes             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | output_proof          | Variable             | bytes                              |
  +-----------------------+----------------------+------------------------------------+


  Smart_rollup_recover_bond (tag 207)
  ===================================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | rollup        | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | staker        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+


  Dal_publish_commitment (tag 230)
  ================================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | slot_header   | 145 bytes            | $X_96                  |
  +---------------+----------------------+------------------------+


  Zk_rollup_origination (tag 250)
  ===============================

  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | Name                  | Size                 | Contents                                                                |
  +=======================+======================+=========================================================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer                                                  |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | source                | 21 bytes             | $public_key_hash                                                        |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | fee                   | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | counter               | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | gas_limit             | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | storage_limit         | Determined from data | $N.t                                                                    |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | public_parameters     | Variable             | bytes                                                                   |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | circuits_info         | Variable             | sequence of $X_93                                                       |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer                                      |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | init_state            | Variable             | sequence of bytes                                                       |
  +-----------------------+----------------------+-------------------------------------------------------------------------+
  | nb_ops                | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-----------------------+----------------------+-------------------------------------------------------------------------+


  Zk_rollup_publish (tag 251)
  ===========================

  +-----------------------+----------------------+------------------------------------+
  | Name                  | Size                 | Contents                           |
  +=======================+======================+====================================+
  | Tag                   | 1 byte               | unsigned 8-bit integer             |
  +-----------------------+----------------------+------------------------------------+
  | source                | 21 bytes             | $public_key_hash                   |
  +-----------------------+----------------------+------------------------------------+
  | fee                   | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | counter               | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | gas_limit             | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | storage_limit         | Determined from data | $N.t                               |
  +-----------------------+----------------------+------------------------------------+
  | zk_rollup             | 20 bytes             | bytes                              |
  +-----------------------+----------------------+------------------------------------+
  | # bytes in next field | 4 bytes              | unsigned 30-bit big-endian integer |
  +-----------------------+----------------------+------------------------------------+
  | op                    | Variable             | sequence of $X_87                  |
  +-----------------------+----------------------+------------------------------------+


  Zk_rollup_update (tag 252)
  ==========================

  +---------------+----------------------+------------------------+
  | Name          | Size                 | Contents               |
  +===============+======================+========================+
  | Tag           | 1 byte               | unsigned 8-bit integer |
  +---------------+----------------------+------------------------+
  | source        | 21 bytes             | $public_key_hash       |
  +---------------+----------------------+------------------------+
  | fee           | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | counter       | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | gas_limit     | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | storage_limit | Determined from data | $N.t                   |
  +---------------+----------------------+------------------------+
  | zk_rollup     | 20 bytes             | bytes                  |
  +---------------+----------------------+------------------------+
  | update        | Determined from data | $X_79                  |
  +---------------+----------------------+------------------------+


  Signature_prefix (tag 255)
  ==========================

  +------------------+----------+------------------------+
  | Name             | Size     | Contents               |
  +==================+==========+========================+
  | Tag              | 1 byte   | unsigned 8-bit integer |
  +------------------+----------+------------------------+
  | signature_prefix | 33 bytes | $bls_signature_prefix  |
  +------------------+----------+------------------------+


  X_3287 (Variable, 8-bit tag)
  ****************************

  Operation with too large metadata (tag 0)
  =========================================

  +-------------------------------+----------+-----------------------------------------------------------------+
  | Name                          | Size     | Contents                                                        |
  +===============================+==========+=================================================================+
  | Tag                           | 1 byte   | unsigned 8-bit integer                                          |
  +-------------------------------+----------+-----------------------------------------------------------------+
  | contents_and_signature_prefix | Variable | sequence of $alpha.operation.alpha.contents_or_signature_prefix |
  +-------------------------------+----------+-----------------------------------------------------------------+
  | signature_suffix              | 64 bytes | bytes                                                           |
  +-------------------------------+----------+-----------------------------------------------------------------+


  Operation without metadata (tag 1)
  ==================================

  +-------------------------------+----------+-----------------------------------------------------------------+
  | Name                          | Size     | Contents                                                        |
  +===============================+==========+=================================================================+
  | Tag                           | 1 byte   | unsigned 8-bit integer                                          |
  +-------------------------------+----------+-----------------------------------------------------------------+
  | contents_and_signature_prefix | Variable | sequence of $alpha.operation.alpha.contents_or_signature_prefix |
  +-------------------------------+----------+-----------------------------------------------------------------+
  | signature_suffix              | 64 bytes | bytes                                                           |
  +-------------------------------+----------+-----------------------------------------------------------------+


  Operation with metadata (tag 2)
  ===============================

  +-----------------+----------+------------------------+
  | Name            | Size     | Contents               |
  +=================+==========+========================+
  | Tag             | 1 byte   | unsigned 8-bit integer |
  +-----------------+----------+------------------------+
  | Unnamed field 0 | Variable | $X_3224                |
  +-----------------+----------+------------------------+


  operation
  *********

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | chain_id              | 4 bytes  | bytes                              |
  +-----------------------+----------+------------------------------------+
  | hash                  | 32 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | branch                | 32 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | $X_3287                            |
  +-----------------------+----------+------------------------------------+


  X_78
  ****

  +--------------------------+----------+------------------------------------+
  | Name                     | Size     | Contents                           |
  +==========================+==========+====================================+
  | # bytes in next 2 fields | 4 bytes  | unsigned 30-bit big-endian integer |
  +--------------------------+----------+------------------------------------+
  | # bytes in next field    | 4 bytes  | unsigned 30-bit big-endian integer |
  +--------------------------+----------+------------------------------------+
  | Unnamed field 0          | Variable | sequence of $operation             |
  +--------------------------+----------+------------------------------------+

  

GET ../<block_id>/context/adaptive_issuance_launch_cycle

Returns the cycle at which the launch of the Adaptive Issuance feature is set to happen. A result of None means that the feature is not yet set to launch.

  integer ∈ [-2^31-1, 2^31] /* Some */ || null /* None */
  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_0     |
  +-----------------+----------------------+----------+


  X_0 (Determined from data, 8-bit tag)
  *************************************

  None (tag 0)
  ============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Some (tag 1)
  ============

  +-----------------+---------+----------------------------------+
  | Name            | Size    | Contents                         |
  +=================+=========+==================================+
  | Tag             | 1 byte  | unsigned 8-bit integer           |
  +-----------------+---------+----------------------------------+
  | Unnamed field 0 | 4 bytes | signed 32-bit big-endian integer |
  +-----------------+---------+----------------------------------+

  

GET ../<block_id>/context/cache/contracts/all

Return the list of cached contracts

  [ [ $Contract_hash, integer ∈ [-2^30, 2^30] ] ... ]
  $Contract_hash:
    /* A contract ID (Base58Check-encoded) */
    $unistring
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_0                   |
  +-----------------------+----------+------------------------------------+


  X_0
  ***

  +-----------------+----------+-------------------------------------------------------------------------+
  | Name            | Size     | Contents                                                                |
  +=================+==========+=========================================================================+
  | Unnamed field 0 | 20 bytes | bytes                                                                   |
  +-----------------+----------+-------------------------------------------------------------------------+
  | Unnamed field 1 | 4 bytes  | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-----------------+----------+-------------------------------------------------------------------------+

  

POST ../<block_id>/context/cache/contracts/rank

Return the number of cached contracts older than the provided contract

  $unistring
  /* A contract handle -- originated account
     A contract notation as given to an RPC or inside scripts. Can be a
     base58 originated contract hash. */
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +-----------------+----------+----------+
  | Name            | Size     | Contents |
  +=================+==========+==========+
  | Unnamed field 0 | 22 bytes | $X_0     |
  +-----------------+----------+----------+


  X_0 (22 bytes, 8-bit tag)
  *************************

  Originated (tag 1)
  ==================

  +---------------+----------+------------------------+
  | Name          | Size     | Contents               |
  +===============+==========+========================+
  | Tag           | 1 byte   | unsigned 8-bit integer |
  +---------------+----------+------------------------+
  | Contract_hash | 20 bytes | bytes                  |
  +---------------+----------+------------------------+
  | padding       | 1 byte   | padding                |
  +---------------+----------+------------------------+

  
  integer ∈ [-2^30, 2^30] /* Some */ || null /* None */
  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_0     |
  +-----------------+----------------------+----------+


  X_0 (Determined from data, 8-bit tag)
  *************************************

  None (tag 0)
  ============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Some (tag 1)
  ============

  +-----------------+---------+-------------------------------------------------------------------------+
  | Name            | Size    | Contents                                                                |
  +=================+=========+=========================================================================+
  | Tag             | 1 byte  | unsigned 8-bit integer                                                  |
  +-----------------+---------+-------------------------------------------------------------------------+
  | Unnamed field 0 | 4 bytes | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-----------------+---------+-------------------------------------------------------------------------+

  

GET ../<block_id>/context/cache/contracts/size

Return the size of the contract cache

  integer ∈ [-2^30, 2^30]
  +-----------------+---------+-------------------------------------------------------------------------+
  | Name            | Size    | Contents                                                                |
  +=================+=========+=========================================================================+
  | Unnamed field 0 | 4 bytes | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-----------------+---------+-------------------------------------------------------------------------+


  

GET ../<block_id>/context/cache/contracts/size_limit

Return the size limit of the contract cache

  integer ∈ [-2^30, 2^30]
  +-----------------+---------+-------------------------------------------------------------------------+
  | Name            | Size    | Contents                                                                |
  +=================+=========+=========================================================================+
  | Unnamed field 0 | 4 bytes | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-----------------+---------+-------------------------------------------------------------------------+


  

GET ../<block_id>/context/constants

All constants

  { "proof_of_work_nonce_size": integer ∈ [0, 255],
    "nonce_length": integer ∈ [0, 255],
    "max_anon_ops_per_block": integer ∈ [0, 255],
    "max_operation_data_length": integer ∈ [-2^30, 2^30],
    "max_proposals_per_delegate": integer ∈ [0, 255],
    "max_micheline_node_count": integer ∈ [-2^30, 2^30],
    "max_micheline_bytes_limit": integer ∈ [-2^30, 2^30],
    "max_allowed_global_constants_depth": integer ∈ [-2^30, 2^30],
    "cache_layout_size": integer ∈ [0, 255],
    "michelson_maximum_type_size": integer ∈ [0, 2^16-1],
    "max_slashing_period": integer ∈ [0, 255],
    "smart_rollup_max_wrapped_proof_binary_size": integer ∈ [-2^30, 2^30],
    "smart_rollup_message_size_limit": integer ∈ [-2^30, 2^30],
    "smart_rollup_max_number_of_messages_per_level": $positive_bignum,
    "consensus_rights_delay": integer ∈ [0, 255],
    "blocks_preservation_cycles": integer ∈ [0, 255],
    "delegate_parameters_activation_delay": integer ∈ [0, 255],
    "tolerated_inactivity_period": integer ∈ [0, 255],
    "blocks_per_cycle": integer ∈ [-2^31-1, 2^31],
    "blocks_per_commitment": integer ∈ [-2^31-1, 2^31],
    "nonce_revelation_threshold": integer ∈ [-2^31-1, 2^31],
    "cycles_per_voting_period": integer ∈ [-2^31-1, 2^31],
    "hard_gas_limit_per_operation": $bignum,
    "hard_gas_limit_per_block": $bignum,
    "proof_of_work_threshold": $int64,
    "minimal_stake": $alpha.mutez,
    "minimal_frozen_stake": $alpha.mutez,
    "vdf_difficulty": $int64,
    "origination_size": integer ∈ [-2^30, 2^30],
    "issuance_weights":
      { "base_total_issued_per_minute": $alpha.mutez,
        "baking_reward_fixed_portion_weight": integer ∈ [-2^30, 2^30],
        "baking_reward_bonus_weight": integer ∈ [-2^30, 2^30],
        "attesting_reward_weight": integer ∈ [-2^30, 2^30],
        "seed_nonce_revelation_tip_weight": integer ∈ [-2^30, 2^30],
        "vdf_revelation_tip_weight": integer ∈ [-2^30, 2^30],
        "dal_rewards_weight": integer ∈ [-2^30, 2^30] },
    "cost_per_byte": $alpha.mutez,
    "hard_storage_limit_per_operation": $bignum,
    "quorum_min": integer ∈ [-2^31-1, 2^31],
    "quorum_max": integer ∈ [-2^31-1, 2^31],
    "min_proposal_quorum": integer ∈ [-2^31-1, 2^31],
    "liquidity_baking_subsidy": $alpha.mutez,
    "liquidity_baking_toggle_ema_threshold": integer ∈ [-2^31-1, 2^31],
    "max_operations_time_to_live": integer ∈ [-2^15, 2^15-1],
    "minimal_block_delay": $int64,
    "delay_increment_per_round": $int64,
    "consensus_committee_size": integer ∈ [-2^30, 2^30],
    "consensus_threshold": integer ∈ [-2^30, 2^30],
    "minimal_participation_ratio":
      { "numerator": integer ∈ [0, 2^16-1],
        "denominator": integer ∈ [0, 2^16-1] },
    "limit_of_delegation_over_baking": integer ∈ [0, 255],
    "percentage_of_frozen_deposits_slashed_per_double_baking":
      integer ∈ [0, 2^16-1],
    "percentage_of_frozen_deposits_slashed_per_double_attestation":
      integer ∈ [0, 2^16-1],
    "max_slashing_per_block": integer ∈ [0, 2^16-1],
    "max_slashing_threshold": integer ∈ [-2^30, 2^30],
    "testnet_dictator"?: $Signature.Public_key_hash,
    "initial_seed"?: $random,
    "cache_script_size": integer ∈ [-2^30, 2^30],
    "cache_stake_distribution_cycles": integer ∈ [-128, 127],
    "cache_sampler_state_cycles": integer ∈ [-128, 127],
    "dal_parametric":
      { "feature_enable": boolean,
        "incentives_enable": boolean,
        "number_of_slots": integer ∈ [0, 2^16-1],
        "attestation_lag": integer ∈ [0, 255],
        "attestation_threshold": integer ∈ [0, 255],
        "minimal_participation_ratio":
          { "numerator": $bignum,
            "denominator": $bignum },
        "rewards_ratio": { "numerator": $bignum,
                           "denominator": $bignum },
        "redundancy_factor": integer ∈ [0, 255],
        "page_size": integer ∈ [0, 2^16-1],
        "slot_size": integer ∈ [-2^30, 2^30],
        "number_of_shards": integer ∈ [0, 2^16-1] },
    "smart_rollup_arith_pvm_enable": boolean,
    "smart_rollup_origination_size": integer ∈ [-2^30, 2^30],
    "smart_rollup_challenge_window_in_blocks": integer ∈ [-2^30, 2^30],
    "smart_rollup_stake_amount": $alpha.mutez,
    "smart_rollup_commitment_period_in_blocks": integer ∈ [-2^30, 2^30],
    "smart_rollup_max_lookahead_in_blocks": integer ∈ [-2^31-1, 2^31],
    "smart_rollup_max_active_outbox_levels": integer ∈ [-2^31-1, 2^31],
    "smart_rollup_max_outbox_messages_per_level": integer ∈ [-2^30, 2^30],
    "smart_rollup_number_of_sections_in_dissection": integer ∈ [0, 255],
    "smart_rollup_timeout_period_in_blocks": integer ∈ [-2^30, 2^30],
    "smart_rollup_max_number_of_cemented_commitments":
      integer ∈ [-2^30, 2^30],
    "smart_rollup_max_number_of_parallel_games": integer ∈ [-2^30, 2^30],
    "smart_rollup_reveal_activation_level":
      { "raw_data": { "Blake2B": integer ∈ [0, 2^31] },
        "metadata": integer ∈ [0, 2^31],
        "dal_page": integer ∈ [0, 2^31],
        "dal_parameters": integer ∈ [0, 2^31],
        "dal_attested_slots_validity_lag": integer ∈ [-2^30, 2^30] },
    "smart_rollup_private_enable": boolean,
    "smart_rollup_riscv_pvm_enable": boolean,
    "zk_rollup_enable": boolean,
    "zk_rollup_origination_size": integer ∈ [-2^30, 2^30],
    "zk_rollup_min_pending_to_process": integer ∈ [-2^30, 2^30],
    "zk_rollup_max_ticket_payload_size": integer ∈ [-2^30, 2^30],
    "global_limit_of_staking_over_baking": integer ∈ [0, 255],
    "edge_of_staking_over_delegation": integer ∈ [0, 255],
    "adaptive_issuance_launch_ema_threshold": integer ∈ [-2^31-1, 2^31],
    "adaptive_rewards_params":
      { "issuance_ratio_final_min":
          { "numerator": $bignum,
            "denominator": $bignum },
        "issuance_ratio_final_max":
          { "numerator": $bignum,
            "denominator": $bignum },
        "issuance_ratio_initial_min":
          { "numerator": $bignum,
            "denominator": $bignum },
        "issuance_ratio_initial_max":
          { "numerator": $bignum,
            "denominator": $bignum },
        "initial_period": integer ∈ [0, 255],
        "transition_period": integer ∈ [0, 255],
        "max_bonus": $int64,
        "growth_rate": { "numerator": $bignum,
                         "denominator": $bignum },
        "center_dz": { "numerator": $bignum,
                       "denominator": $bignum },
        "radius_dz": { "numerator": $bignum,
                       "denominator": $bignum } },
    "adaptive_issuance_activation_vote_enable": boolean,
    "adaptive_issuance_force_activation": boolean,
    "ns_enable": boolean,
    "direct_ticket_spending_enable": boolean,
    "aggregate_attestation": boolean,
    "allow_tz4_delegate_enable": boolean,
    "all_bakers_attest_enable": boolean }
  $Signature.Public_key_hash:
    /* A Ed25519, Secp256k1, P256, or BLS public key hash
       (Base58Check-encoded) */
    $unistring
  $alpha.mutez: $positive_bignum
  $bignum:
    /* Big number
       Decimal representation of a big number */
    string
  $int64:
    /* 64 bit integers
       Decimal representation of 64 bit integers */
    string
  $positive_bignum:
    /* Positive big number
       Decimal representation of a positive big number */
    string
  $random:
    /* A random generation state (Base58Check-encoded) */
    $unistring
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | Name                                                         | Size                 | Contents                                                                |
  +==============================================================+======================+=========================================================================+
  | proof_of_work_nonce_size                                     | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | nonce_length                                                 | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_anon_ops_per_block                                       | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_operation_data_length                                    | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_proposals_per_delegate                                   | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_micheline_node_count                                     | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_micheline_bytes_limit                                    | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_allowed_global_constants_depth                           | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cache_layout_size                                            | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | michelson_maximum_type_size                                  | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_slashing_period                                          | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_wrapped_proof_binary_size                   | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_message_size_limit                              | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_number_of_messages_per_level                | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | consensus_rights_delay                                       | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | blocks_preservation_cycles                                   | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | delegate_parameters_activation_delay                         | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | tolerated_inactivity_period                                  | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | blocks_per_cycle                                             | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | blocks_per_commitment                                        | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | nonce_revelation_threshold                                   | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cycles_per_voting_period                                     | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | hard_gas_limit_per_operation                                 | Determined from data | $Z.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | hard_gas_limit_per_block                                     | Determined from data | $Z.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | proof_of_work_threshold                                      | 8 bytes              | signed 64-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | minimal_stake                                                | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | minimal_frozen_stake                                         | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | vdf_difficulty                                               | 8 bytes              | signed 64-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | origination_size                                             | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | issuance_weights                                             | Determined from data | $X_0                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cost_per_byte                                                | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | hard_storage_limit_per_operation                             | Determined from data | $Z.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | quorum_min                                                   | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | quorum_max                                                   | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | min_proposal_quorum                                          | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | liquidity_baking_subsidy                                     | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | liquidity_baking_toggle_ema_threshold                        | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_operations_time_to_live                                  | 2 bytes              | signed 16-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | minimal_block_delay                                          | 8 bytes              | signed 64-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | delay_increment_per_round                                    | 8 bytes              | signed 64-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | consensus_committee_size                                     | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | consensus_threshold                                          | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | minimal_participation_ratio                                  | 4 bytes              | $X_1                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | limit_of_delegation_over_baking                              | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | percentage_of_frozen_deposits_slashed_per_double_baking      | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | percentage_of_frozen_deposits_slashed_per_double_attestation | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_slashing_per_block                                       | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_slashing_threshold                                       | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | ? presence of field "testnet_dictator"                       | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | testnet_dictator                                             | 21 bytes             | $public_key_hash                                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | ? presence of field "initial_seed"                           | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | initial_seed                                                 | 32 bytes             | bytes                                                                   |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cache_script_size                                            | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cache_stake_distribution_cycles                              | 1 byte               | signed 8-bit integer                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cache_sampler_state_cycles                                   | 1 byte               | signed 8-bit integer                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | dal_parametric                                               | Determined from data | $X_2                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_arith_pvm_enable                                | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_origination_size                                | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_challenge_window_in_blocks                      | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_stake_amount                                    | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_commitment_period_in_blocks                     | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_lookahead_in_blocks                         | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_active_outbox_levels                        | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_outbox_messages_per_level                   | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_number_of_sections_in_dissection                | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_timeout_period_in_blocks                        | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_number_of_cemented_commitments              | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_number_of_parallel_games                    | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_reveal_activation_level                         | 20 bytes             | $X_5                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_private_enable                                  | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_riscv_pvm_enable                                | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | zk_rollup_enable                                             | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | zk_rollup_origination_size                                   | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | zk_rollup_min_pending_to_process                             | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | zk_rollup_max_ticket_payload_size                            | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | global_limit_of_staking_over_baking                          | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | edge_of_staking_over_delegation                              | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | adaptive_issuance_launch_ema_threshold                       | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | adaptive_rewards_params                                      | Determined from data | $X_6                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | adaptive_issuance_activation_vote_enable                     | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | adaptive_issuance_force_activation                           | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | ns_enable                                                    | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | direct_ticket_spending_enable                                | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | aggregate_attestation                                        | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | allow_tz4_delegate_enable                                    | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | all_bakers_attest_enable                                     | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+


  N.t
  ***

  A variable-length sequence of bytes encoding a Zarith natural number. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). Size bits ignored, the data is the binary representation of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | N.t  | Determined from data | bytes    |
  +------+----------------------+----------+


  Z.t
  ***

  A variable-length sequence of bytes encoding a Zarith integer. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). The second most significant bit of the first byte is reserved for the sign (0 for positive, 1 for negative). Size and sign bits ignored, the data is the binary representation of the absolute value of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | Z.t  | Determined from data | bytes    |
  +------+----------------------+----------+


  X_0
  ***

  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | Name                               | Size                 | Contents                                                                |
  +====================================+======================+=========================================================================+
  | base_total_issued_per_minute       | Determined from data | $N.t                                                                    |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | baking_reward_fixed_portion_weight | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | baking_reward_bonus_weight         | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | attesting_reward_weight            | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | seed_nonce_revelation_tip_weight   | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | vdf_revelation_tip_weight          | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | dal_rewards_weight                 | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+


  X_1
  ***

  +-------------+---------+------------------------------------+
  | Name        | Size    | Contents                           |
  +=============+=========+====================================+
  | numerator   | 2 bytes | unsigned 16-bit big-endian integer |
  +-------------+---------+------------------------------------+
  | denominator | 2 bytes | unsigned 16-bit big-endian integer |
  +-------------+---------+------------------------------------+


  public_key_hash (21 bytes, 8-bit tag)
  *************************************

  Ed25519 (tag 0)
  ===============

  +-------------------------+----------+------------------------+
  | Name                    | Size     | Contents               |
  +=========================+==========+========================+
  | Tag                     | 1 byte   | unsigned 8-bit integer |
  +-------------------------+----------+------------------------+
  | Ed25519.Public_key_hash | 20 bytes | bytes                  |
  +-------------------------+----------+------------------------+


  Secp256k1 (tag 1)
  =================

  +---------------------------+----------+------------------------+
  | Name                      | Size     | Contents               |
  +===========================+==========+========================+
  | Tag                       | 1 byte   | unsigned 8-bit integer |
  +---------------------------+----------+------------------------+
  | Secp256k1.Public_key_hash | 20 bytes | bytes                  |
  +---------------------------+----------+------------------------+


  P256 (tag 2)
  ============

  +----------------------+----------+------------------------+
  | Name                 | Size     | Contents               |
  +======================+==========+========================+
  | Tag                  | 1 byte   | unsigned 8-bit integer |
  +----------------------+----------+------------------------+
  | P256.Public_key_hash | 20 bytes | bytes                  |
  +----------------------+----------+------------------------+


  Bls (tag 3)
  ===========

  +---------------------------+----------+------------------------+
  | Name                      | Size     | Contents               |
  +===========================+==========+========================+
  | Tag                       | 1 byte   | unsigned 8-bit integer |
  +---------------------------+----------+------------------------+
  | Bls12_381.Public_key_hash | 20 bytes | bytes                  |
  +---------------------------+----------+------------------------+


  X_3
  ***

  +-------------+----------------------+----------+
  | Name        | Size                 | Contents |
  +=============+======================+==========+
  | numerator   | Determined from data | $Z.t     |
  +-------------+----------------------+----------+
  | denominator | Determined from data | $Z.t     |
  +-------------+----------------------+----------+


  X_2
  ***

  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | Name                        | Size                 | Contents                                                                |
  +=============================+======================+=========================================================================+
  | feature_enable              | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | incentives_enable           | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | number_of_slots             | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | attestation_lag             | 1 byte               | unsigned 8-bit integer                                                  |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | attestation_threshold       | 1 byte               | unsigned 8-bit integer                                                  |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | minimal_participation_ratio | Determined from data | $X_3                                                                    |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | rewards_ratio               | Determined from data | $X_3                                                                    |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | redundancy_factor           | 1 byte               | unsigned 8-bit integer                                                  |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | page_size                   | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | slot_size                   | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | number_of_shards            | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+


  X_5
  ***

  +---------------------------------+---------+-------------------------------------------------------------------------+
  | Name                            | Size    | Contents                                                                |
  +=================================+=========+=========================================================================+
  | raw_data                        | 4 bytes | signed 32-bit big-endian integer                                        |
  +---------------------------------+---------+-------------------------------------------------------------------------+
  | metadata                        | 4 bytes | signed 32-bit big-endian integer                                        |
  +---------------------------------+---------+-------------------------------------------------------------------------+
  | dal_page                        | 4 bytes | signed 32-bit big-endian integer                                        |
  +---------------------------------+---------+-------------------------------------------------------------------------+
  | dal_parameters                  | 4 bytes | signed 32-bit big-endian integer                                        |
  +---------------------------------+---------+-------------------------------------------------------------------------+
  | dal_attested_slots_validity_lag | 4 bytes | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +---------------------------------+---------+-------------------------------------------------------------------------+


  X_6
  ***

  +----------------------------+----------------------+----------------------------------+
  | Name                       | Size                 | Contents                         |
  +============================+======================+==================================+
  | issuance_ratio_final_min   | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | issuance_ratio_final_max   | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | issuance_ratio_initial_min | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | issuance_ratio_initial_max | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | initial_period             | 1 byte               | unsigned 8-bit integer           |
  +----------------------------+----------------------+----------------------------------+
  | transition_period          | 1 byte               | unsigned 8-bit integer           |
  +----------------------------+----------------------+----------------------------------+
  | max_bonus                  | 8 bytes              | signed 64-bit big-endian integer |
  +----------------------------+----------------------+----------------------------------+
  | growth_rate                | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | center_dz                  | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | radius_dz                  | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+

  

GET ../<block_id>/context/constants/errors

Schema for all the RPC errors from this protocol version

  any
  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  

GET ../<block_id>/context/constants/parametric

Parametric constants

  { "consensus_rights_delay": integer ∈ [0, 255],
    "blocks_preservation_cycles": integer ∈ [0, 255],
    "delegate_parameters_activation_delay": integer ∈ [0, 255],
    "tolerated_inactivity_period": integer ∈ [0, 255],
    "blocks_per_cycle": integer ∈ [-2^31-1, 2^31],
    "blocks_per_commitment": integer ∈ [-2^31-1, 2^31],
    "nonce_revelation_threshold": integer ∈ [-2^31-1, 2^31],
    "cycles_per_voting_period": integer ∈ [-2^31-1, 2^31],
    "hard_gas_limit_per_operation": $bignum,
    "hard_gas_limit_per_block": $bignum,
    "proof_of_work_threshold": $int64,
    "minimal_stake": $alpha.mutez,
    "minimal_frozen_stake": $alpha.mutez,
    "vdf_difficulty": $int64,
    "origination_size": integer ∈ [-2^30, 2^30],
    "issuance_weights":
      { "base_total_issued_per_minute": $alpha.mutez,
        "baking_reward_fixed_portion_weight": integer ∈ [-2^30, 2^30],
        "baking_reward_bonus_weight": integer ∈ [-2^30, 2^30],
        "attesting_reward_weight": integer ∈ [-2^30, 2^30],
        "seed_nonce_revelation_tip_weight": integer ∈ [-2^30, 2^30],
        "vdf_revelation_tip_weight": integer ∈ [-2^30, 2^30],
        "dal_rewards_weight": integer ∈ [-2^30, 2^30] },
    "cost_per_byte": $alpha.mutez,
    "hard_storage_limit_per_operation": $bignum,
    "quorum_min": integer ∈ [-2^31-1, 2^31],
    "quorum_max": integer ∈ [-2^31-1, 2^31],
    "min_proposal_quorum": integer ∈ [-2^31-1, 2^31],
    "liquidity_baking_subsidy": $alpha.mutez,
    "liquidity_baking_toggle_ema_threshold": integer ∈ [-2^31-1, 2^31],
    "max_operations_time_to_live": integer ∈ [-2^15, 2^15-1],
    "minimal_block_delay": $int64,
    "delay_increment_per_round": $int64,
    "consensus_committee_size": integer ∈ [-2^30, 2^30],
    "consensus_threshold": integer ∈ [-2^30, 2^30],
    "minimal_participation_ratio":
      { "numerator": integer ∈ [0, 2^16-1],
        "denominator": integer ∈ [0, 2^16-1] },
    "limit_of_delegation_over_baking": integer ∈ [0, 255],
    "percentage_of_frozen_deposits_slashed_per_double_baking":
      integer ∈ [0, 2^16-1],
    "percentage_of_frozen_deposits_slashed_per_double_attestation":
      integer ∈ [0, 2^16-1],
    "max_slashing_per_block": integer ∈ [0, 2^16-1],
    "max_slashing_threshold": integer ∈ [-2^30, 2^30],
    "testnet_dictator"?: $Signature.Public_key_hash,
    "initial_seed"?: $random,
    "cache_script_size": integer ∈ [-2^30, 2^30],
    "cache_stake_distribution_cycles": integer ∈ [-128, 127],
    "cache_sampler_state_cycles": integer ∈ [-128, 127],
    "dal_parametric":
      { "feature_enable": boolean,
        "incentives_enable": boolean,
        "number_of_slots": integer ∈ [0, 2^16-1],
        "attestation_lag": integer ∈ [0, 255],
        "attestation_threshold": integer ∈ [0, 255],
        "minimal_participation_ratio":
          { "numerator": $bignum,
            "denominator": $bignum },
        "rewards_ratio": { "numerator": $bignum,
                           "denominator": $bignum },
        "redundancy_factor": integer ∈ [0, 255],
        "page_size": integer ∈ [0, 2^16-1],
        "slot_size": integer ∈ [-2^30, 2^30],
        "number_of_shards": integer ∈ [0, 2^16-1] },
    "smart_rollup_arith_pvm_enable": boolean,
    "smart_rollup_origination_size": integer ∈ [-2^30, 2^30],
    "smart_rollup_challenge_window_in_blocks": integer ∈ [-2^30, 2^30],
    "smart_rollup_stake_amount": $alpha.mutez,
    "smart_rollup_commitment_period_in_blocks": integer ∈ [-2^30, 2^30],
    "smart_rollup_max_lookahead_in_blocks": integer ∈ [-2^31-1, 2^31],
    "smart_rollup_max_active_outbox_levels": integer ∈ [-2^31-1, 2^31],
    "smart_rollup_max_outbox_messages_per_level": integer ∈ [-2^30, 2^30],
    "smart_rollup_number_of_sections_in_dissection": integer ∈ [0, 255],
    "smart_rollup_timeout_period_in_blocks": integer ∈ [-2^30, 2^30],
    "smart_rollup_max_number_of_cemented_commitments":
      integer ∈ [-2^30, 2^30],
    "smart_rollup_max_number_of_parallel_games": integer ∈ [-2^30, 2^30],
    "smart_rollup_reveal_activation_level":
      { "raw_data": { "Blake2B": integer ∈ [0, 2^31] },
        "metadata": integer ∈ [0, 2^31],
        "dal_page": integer ∈ [0, 2^31],
        "dal_parameters": integer ∈ [0, 2^31],
        "dal_attested_slots_validity_lag": integer ∈ [-2^30, 2^30] },
    "smart_rollup_private_enable": boolean,
    "smart_rollup_riscv_pvm_enable": boolean,
    "zk_rollup_enable": boolean,
    "zk_rollup_origination_size": integer ∈ [-2^30, 2^30],
    "zk_rollup_min_pending_to_process": integer ∈ [-2^30, 2^30],
    "zk_rollup_max_ticket_payload_size": integer ∈ [-2^30, 2^30],
    "global_limit_of_staking_over_baking": integer ∈ [0, 255],
    "edge_of_staking_over_delegation": integer ∈ [0, 255],
    "adaptive_issuance_launch_ema_threshold": integer ∈ [-2^31-1, 2^31],
    "adaptive_rewards_params":
      { "issuance_ratio_final_min":
          { "numerator": $bignum,
            "denominator": $bignum },
        "issuance_ratio_final_max":
          { "numerator": $bignum,
            "denominator": $bignum },
        "issuance_ratio_initial_min":
          { "numerator": $bignum,
            "denominator": $bignum },
        "issuance_ratio_initial_max":
          { "numerator": $bignum,
            "denominator": $bignum },
        "initial_period": integer ∈ [0, 255],
        "transition_period": integer ∈ [0, 255],
        "max_bonus": $int64,
        "growth_rate": { "numerator": $bignum,
                         "denominator": $bignum },
        "center_dz": { "numerator": $bignum,
                       "denominator": $bignum },
        "radius_dz": { "numerator": $bignum,
                       "denominator": $bignum } },
    "adaptive_issuance_activation_vote_enable": boolean,
    "adaptive_issuance_force_activation": boolean,
    "ns_enable": boolean,
    "direct_ticket_spending_enable": boolean,
    "aggregate_attestation": boolean,
    "allow_tz4_delegate_enable": boolean,
    "all_bakers_attest_enable": boolean }
  $Signature.Public_key_hash:
    /* A Ed25519, Secp256k1, P256, or BLS public key hash
       (Base58Check-encoded) */
    $unistring
  $alpha.mutez: $positive_bignum
  $bignum:
    /* Big number
       Decimal representation of a big number */
    string
  $int64:
    /* 64 bit integers
       Decimal representation of 64 bit integers */
    string
  $positive_bignum:
    /* Positive big number
       Decimal representation of a positive big number */
    string
  $random:
    /* A random generation state (Base58Check-encoded) */
    $unistring
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | Name                                                         | Size                 | Contents                                                                |
  +==============================================================+======================+=========================================================================+
  | consensus_rights_delay                                       | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | blocks_preservation_cycles                                   | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | delegate_parameters_activation_delay                         | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | tolerated_inactivity_period                                  | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | blocks_per_cycle                                             | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | blocks_per_commitment                                        | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | nonce_revelation_threshold                                   | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cycles_per_voting_period                                     | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | hard_gas_limit_per_operation                                 | Determined from data | $Z.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | hard_gas_limit_per_block                                     | Determined from data | $Z.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | proof_of_work_threshold                                      | 8 bytes              | signed 64-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | minimal_stake                                                | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | minimal_frozen_stake                                         | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | vdf_difficulty                                               | 8 bytes              | signed 64-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | origination_size                                             | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | issuance_weights                                             | Determined from data | $X_0                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cost_per_byte                                                | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | hard_storage_limit_per_operation                             | Determined from data | $Z.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | quorum_min                                                   | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | quorum_max                                                   | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | min_proposal_quorum                                          | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | liquidity_baking_subsidy                                     | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | liquidity_baking_toggle_ema_threshold                        | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_operations_time_to_live                                  | 2 bytes              | signed 16-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | minimal_block_delay                                          | 8 bytes              | signed 64-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | delay_increment_per_round                                    | 8 bytes              | signed 64-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | consensus_committee_size                                     | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | consensus_threshold                                          | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | minimal_participation_ratio                                  | 4 bytes              | $X_1                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | limit_of_delegation_over_baking                              | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | percentage_of_frozen_deposits_slashed_per_double_baking      | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | percentage_of_frozen_deposits_slashed_per_double_attestation | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_slashing_per_block                                       | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | max_slashing_threshold                                       | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | ? presence of field "testnet_dictator"                       | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | testnet_dictator                                             | 21 bytes             | $public_key_hash                                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | ? presence of field "initial_seed"                           | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | initial_seed                                                 | 32 bytes             | bytes                                                                   |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cache_script_size                                            | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cache_stake_distribution_cycles                              | 1 byte               | signed 8-bit integer                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | cache_sampler_state_cycles                                   | 1 byte               | signed 8-bit integer                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | dal_parametric                                               | Determined from data | $X_2                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_arith_pvm_enable                                | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_origination_size                                | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_challenge_window_in_blocks                      | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_stake_amount                                    | Determined from data | $N.t                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_commitment_period_in_blocks                     | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_lookahead_in_blocks                         | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_active_outbox_levels                        | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_outbox_messages_per_level                   | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_number_of_sections_in_dissection                | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_timeout_period_in_blocks                        | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_number_of_cemented_commitments              | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_max_number_of_parallel_games                    | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_reveal_activation_level                         | 20 bytes             | $X_5                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_private_enable                                  | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | smart_rollup_riscv_pvm_enable                                | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | zk_rollup_enable                                             | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | zk_rollup_origination_size                                   | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | zk_rollup_min_pending_to_process                             | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | zk_rollup_max_ticket_payload_size                            | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | global_limit_of_staking_over_baking                          | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | edge_of_staking_over_delegation                              | 1 byte               | unsigned 8-bit integer                                                  |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | adaptive_issuance_launch_ema_threshold                       | 4 bytes              | signed 32-bit big-endian integer                                        |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | adaptive_rewards_params                                      | Determined from data | $X_6                                                                    |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | adaptive_issuance_activation_vote_enable                     | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | adaptive_issuance_force_activation                           | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | ns_enable                                                    | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | direct_ticket_spending_enable                                | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | aggregate_attestation                                        | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | allow_tz4_delegate_enable                                    | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+
  | all_bakers_attest_enable                                     | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +--------------------------------------------------------------+----------------------+-------------------------------------------------------------------------+


  Z.t
  ***

  A variable-length sequence of bytes encoding a Zarith integer. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). The second most significant bit of the first byte is reserved for the sign (0 for positive, 1 for negative). Size and sign bits ignored, the data is the binary representation of the absolute value of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | Z.t  | Determined from data | bytes    |
  +------+----------------------+----------+


  N.t
  ***

  A variable-length sequence of bytes encoding a Zarith natural number. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). Size bits ignored, the data is the binary representation of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | N.t  | Determined from data | bytes    |
  +------+----------------------+----------+


  X_0
  ***

  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | Name                               | Size                 | Contents                                                                |
  +====================================+======================+=========================================================================+
  | base_total_issued_per_minute       | Determined from data | $N.t                                                                    |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | baking_reward_fixed_portion_weight | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | baking_reward_bonus_weight         | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | attesting_reward_weight            | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | seed_nonce_revelation_tip_weight   | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | vdf_revelation_tip_weight          | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+
  | dal_rewards_weight                 | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +------------------------------------+----------------------+-------------------------------------------------------------------------+


  X_1
  ***

  +-------------+---------+------------------------------------+
  | Name        | Size    | Contents                           |
  +=============+=========+====================================+
  | numerator   | 2 bytes | unsigned 16-bit big-endian integer |
  +-------------+---------+------------------------------------+
  | denominator | 2 bytes | unsigned 16-bit big-endian integer |
  +-------------+---------+------------------------------------+


  public_key_hash (21 bytes, 8-bit tag)
  *************************************

  Ed25519 (tag 0)
  ===============

  +-------------------------+----------+------------------------+
  | Name                    | Size     | Contents               |
  +=========================+==========+========================+
  | Tag                     | 1 byte   | unsigned 8-bit integer |
  +-------------------------+----------+------------------------+
  | Ed25519.Public_key_hash | 20 bytes | bytes                  |
  +-------------------------+----------+------------------------+


  Secp256k1 (tag 1)
  =================

  +---------------------------+----------+------------------------+
  | Name                      | Size     | Contents               |
  +===========================+==========+========================+
  | Tag                       | 1 byte   | unsigned 8-bit integer |
  +---------------------------+----------+------------------------+
  | Secp256k1.Public_key_hash | 20 bytes | bytes                  |
  +---------------------------+----------+------------------------+


  P256 (tag 2)
  ============

  +----------------------+----------+------------------------+
  | Name                 | Size     | Contents               |
  +======================+==========+========================+
  | Tag                  | 1 byte   | unsigned 8-bit integer |
  +----------------------+----------+------------------------+
  | P256.Public_key_hash | 20 bytes | bytes                  |
  +----------------------+----------+------------------------+


  Bls (tag 3)
  ===========

  +---------------------------+----------+------------------------+
  | Name                      | Size     | Contents               |
  +===========================+==========+========================+
  | Tag                       | 1 byte   | unsigned 8-bit integer |
  +---------------------------+----------+------------------------+
  | Bls12_381.Public_key_hash | 20 bytes | bytes                  |
  +---------------------------+----------+------------------------+


  X_3
  ***

  +-------------+----------------------+----------+
  | Name        | Size                 | Contents |
  +=============+======================+==========+
  | numerator   | Determined from data | $Z.t     |
  +-------------+----------------------+----------+
  | denominator | Determined from data | $Z.t     |
  +-------------+----------------------+----------+


  X_2
  ***

  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | Name                        | Size                 | Contents                                                                |
  +=============================+======================+=========================================================================+
  | feature_enable              | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | incentives_enable           | 1 byte               | boolean (0 for false, 255 for true)                                     |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | number_of_slots             | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | attestation_lag             | 1 byte               | unsigned 8-bit integer                                                  |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | attestation_threshold       | 1 byte               | unsigned 8-bit integer                                                  |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | minimal_participation_ratio | Determined from data | $X_3                                                                    |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | rewards_ratio               | Determined from data | $X_3                                                                    |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | redundancy_factor           | 1 byte               | unsigned 8-bit integer                                                  |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | page_size                   | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | slot_size                   | 4 bytes              | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+
  | number_of_shards            | 2 bytes              | unsigned 16-bit big-endian integer                                      |
  +-----------------------------+----------------------+-------------------------------------------------------------------------+


  X_5
  ***

  +---------------------------------+---------+-------------------------------------------------------------------------+
  | Name                            | Size    | Contents                                                                |
  +=================================+=========+=========================================================================+
  | raw_data                        | 4 bytes | signed 32-bit big-endian integer                                        |
  +---------------------------------+---------+-------------------------------------------------------------------------+
  | metadata                        | 4 bytes | signed 32-bit big-endian integer                                        |
  +---------------------------------+---------+-------------------------------------------------------------------------+
  | dal_page                        | 4 bytes | signed 32-bit big-endian integer                                        |
  +---------------------------------+---------+-------------------------------------------------------------------------+
  | dal_parameters                  | 4 bytes | signed 32-bit big-endian integer                                        |
  +---------------------------------+---------+-------------------------------------------------------------------------+
  | dal_attested_slots_validity_lag | 4 bytes | signed 31-bit big-endian integer in the range -1073741824 to 1073741823 |
  +---------------------------------+---------+-------------------------------------------------------------------------+


  X_6
  ***

  +----------------------------+----------------------+----------------------------------+
  | Name                       | Size                 | Contents                         |
  +============================+======================+==================================+
  | issuance_ratio_final_min   | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | issuance_ratio_final_max   | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | issuance_ratio_initial_min | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | issuance_ratio_initial_max | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | initial_period             | 1 byte               | unsigned 8-bit integer           |
  +----------------------------+----------------------+----------------------------------+
  | transition_period          | 1 byte               | unsigned 8-bit integer           |
  +----------------------------+----------------------+----------------------------------+
  | max_bonus                  | 8 bytes              | signed 64-bit big-endian integer |
  +----------------------------+----------------------+----------------------------------+
  | growth_rate                | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | center_dz                  | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+
  | radius_dz                  | Determined from data | $X_3                             |
  +----------------------------+----------------------+----------------------------------+

  

GET ../<block_id>/context/denunciations

Returns the denunciations for misbehavior in the current cycle.

  [ { "slashed_delegate": $Signature.Public_key_hash,
      "operation_hash": $Operation_hash,
      "rewarded": $Signature.Public_key_hash,
      "misbehaviour":
        { "level": integer ∈ [0, 2^31],
          "round": integer ∈ [-2^31-1, 2^31],
          "kind": "attestation" | "block" | "preattestation" } } ... ]
  $Operation_hash:
    /* A Tezos operation ID (Base58Check-encoded) */
    $unistring
  $Signature.Public_key_hash:
    /* A Ed25519, Secp256k1, P256, or BLS public key hash
       (Base58Check-encoded) */
    $unistring
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_0                   |
  +-----------------------+----------+------------------------------------+


  public_key_hash (21 bytes, 8-bit tag)
  *************************************

  Ed25519 (tag 0)
  ===============

  +-------------------------+----------+------------------------+
  | Name                    | Size     | Contents               |
  +=========================+==========+========================+
  | Tag                     | 1 byte   | unsigned 8-bit integer |
  +-------------------------+----------+------------------------+
  | Ed25519.Public_key_hash | 20 bytes | bytes                  |
  +-------------------------+----------+------------------------+


  Secp256k1 (tag 1)
  =================

  +---------------------------+----------+------------------------+
  | Name                      | Size     | Contents               |
  +===========================+==========+========================+
  | Tag                       | 1 byte   | unsigned 8-bit integer |
  +---------------------------+----------+------------------------+
  | Secp256k1.Public_key_hash | 20 bytes | bytes                  |
  +---------------------------+----------+------------------------+


  P256 (tag 2)
  ============

  +----------------------+----------+------------------------+
  | Name                 | Size     | Contents               |
  +======================+==========+========================+
  | Tag                  | 1 byte   | unsigned 8-bit integer |
  +----------------------+----------+------------------------+
  | P256.Public_key_hash | 20 bytes | bytes                  |
  +----------------------+----------+------------------------+


  Bls (tag 3)
  ===========

  +---------------------------+----------+------------------------+
  | Name                      | Size     | Contents               |
  +===========================+==========+========================+
  | Tag                       | 1 byte   | unsigned 8-bit integer |
  +---------------------------+----------+------------------------+
  | Bls12_381.Public_key_hash | 20 bytes | bytes                  |
  +---------------------------+----------+------------------------+


  X_2 (Enumeration: unsigned 8-bit integer):
  ******************************************

  +-------------+----------------+
  | Case number | Encoded string |
  +=============+================+
  | 0           | preattestation |
  +-------------+----------------+
  | 1           | attestation    |
  +-------------+----------------+
  | 2           | block          |
  +-------------+----------------+


  X_1
  ***

  +-------+---------+----------------------------------------------------------+
  | Name  | Size    | Contents                                                 |
  +=======+=========+==========================================================+
  | level | 4 bytes | signed 32-bit big-endian integer                         |
  +-------+---------+----------------------------------------------------------+
  | round | 4 bytes | signed 32-bit big-endian integer                         |
  +-------+---------+----------------------------------------------------------+
  | kind  | 1 byte  | unsigned 8-bit integer encoding an enumeration (see X_2) |
  +-------+---------+----------------------------------------------------------+


  X_0
  ***

  +------------------+----------+------------------+
  | Name             | Size     | Contents         |
  +==================+==========+==================+
  | slashed_delegate | 21 bytes | $public_key_hash |
  +------------------+----------+------------------+
  | operation_hash   | 32 bytes | bytes            |
  +------------------+----------+------------------+
  | rewarded         | 21 bytes | $public_key_hash |
  +------------------+----------+------------------+
  | misbehaviour     | 9 bytes  | $X_1             |
  +------------------+----------+------------------+

  

GET ../<block_id>/context/issuance/current_yearly_rate

Returns the current expected maximum yearly issuance rate (in %). The value only includes participation rewards (and does not include liquidity baking)

  /* Universal string representation
     Either a plain UTF8 string, or a sequence of bytes for strings that
     contain invalid byte sequences. */
  string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  

GET ../<block_id>/context/issuance/current_yearly_rate_details

Returns the static and dynamic parts of the current expected maximum yearly issuance rate (in %). The value only includes participation rewards (and does not include liquidity baking)

  { "static":
      { "numerator": $positive_bignum,
        "denominator": $positive_bignum },
    "dynamic":
      { "numerator": $positive_bignum,
        "denominator": $positive_bignum } }
  $positive_bignum:
    /* Positive big number
       Decimal representation of a positive big number */
    string
  +---------+----------------------+----------+
  | Name    | Size                 | Contents |
  +=========+======================+==========+
  | static  | Determined from data | $X_0     |
  +---------+----------------------+----------+
  | dynamic | Determined from data | $X_0     |
  +---------+----------------------+----------+


  N.t
  ***

  A variable-length sequence of bytes encoding a Zarith natural number. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). Size bits ignored, the data is the binary representation of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | N.t  | Determined from data | bytes    |
  +------+----------------------+----------+


  X_0
  ***

  +-------------+----------------------+----------+
  | Name        | Size                 | Contents |
  +=============+======================+==========+
  | numerator   | Determined from data | $N.t     |
  +-------------+----------------------+----------+
  | denominator | Determined from data | $N.t     |
  +-------------+----------------------+----------+

  

GET ../<block_id>/context/issuance/current_yearly_rate_exact

Returns the current expected maximum yearly issuance rate (exact quotient) (in %). The value only includes participation rewards (and does not include liquidity baking)

  { "numerator": $positive_bignum,
    "denominator": $positive_bignum }
  $positive_bignum:
    /* Positive big number
       Decimal representation of a positive big number */
    string
  +-------------+----------------------+----------+
  | Name        | Size                 | Contents |
  +=============+======================+==========+
  | numerator   | Determined from data | $N.t     |
  +-------------+----------------------+----------+
  | denominator | Determined from data | $N.t     |
  +-------------+----------------------+----------+


  N.t
  ***

  A variable-length sequence of bytes encoding a Zarith natural number. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). Size bits ignored, the data is the binary representation of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | N.t  | Determined from data | bytes    |
  +------+----------------------+----------+

  

GET ../<block_id>/context/issuance/expected_issuance

Returns the expected issued tez for the provided block and the next 'consensus_rights_delay' cycles (in mutez)

  [ { "cycle": integer ∈ [-2^31-1, 2^31],
      "baking_reward_fixed_portion": $alpha.mutez,
      "baking_reward_bonus_per_slot": $alpha.mutez,
      "attesting_reward_per_slot": $alpha.mutez,
      "seed_nonce_revelation_tip": $alpha.mutez,
      "vdf_revelation_tip": $alpha.mutez } ... ]
  $alpha.mutez: $positive_bignum
  $positive_bignum:
    /* Positive big number
       Decimal representation of a positive big number */
    string
  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_0                   |
  +-----------------------+----------+------------------------------------+


  N.t
  ***

  A variable-length sequence of bytes encoding a Zarith natural number. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). Size bits ignored, the data is the binary representation of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | N.t  | Determined from data | bytes    |
  +------+----------------------+----------+


  X_0
  ***

  +------------------------------+----------------------+----------------------------------+
  | Name                         | Size                 | Contents                         |
  +==============================+======================+==================================+
  | cycle                        | 4 bytes              | signed 32-bit big-endian integer |
  +------------------------------+----------------------+----------------------------------+
  | baking_reward_fixed_portion  | Determined from data | $N.t                             |
  +------------------------------+----------------------+----------------------------------+
  | baking_reward_bonus_per_slot | Determined from data | $N.t                             |
  +------------------------------+----------------------+----------------------------------+
  | attesting_reward_per_slot    | Determined from data | $N.t                             |
  +------------------------------+----------------------+----------------------------------+
  | seed_nonce_revelation_tip    | Determined from data | $N.t                             |
  +------------------------------+----------------------+----------------------------------+
  | vdf_revelation_tip           | Determined from data | $N.t                             |
  +------------------------------+----------------------+----------------------------------+

  

GET ../<block_id>/context/issuance/issuance_per_minute

Returns the current expected maximum issuance per minute (in mutez). The value only includes participation rewards (and does not include liquidity baking)

  $positive_bignum
  $positive_bignum:
    /* Positive big number
       Decimal representation of a positive big number */
    string
  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $N.t     |
  +-----------------+----------------------+----------+


  N.t
  ***

  A variable-length sequence of bytes encoding a Zarith natural number. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). Size bits ignored, the data is the binary representation of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | N.t  | Determined from data | bytes    |
  +------+----------------------+----------+

  

GET ../<block_id>/context/liquidity_baking/cpmm_address

Liquidity baking CPMM address

  $unistring
  /* A contract handle -- originated account
     A contract notation as given to an RPC or inside scripts. Can be a
     base58 originated contract hash. */
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +-----------------+----------+----------+
  | Name            | Size     | Contents |
  +=================+==========+==========+
  | Unnamed field 0 | 22 bytes | $X_0     |
  +-----------------+----------+----------+


  X_0 (22 bytes, 8-bit tag)
  *************************

  Originated (tag 1)
  ==================

  +---------------+----------+------------------------+
  | Name          | Size     | Contents               |
  +===============+==========+========================+
  | Tag           | 1 byte   | unsigned 8-bit integer |
  +---------------+----------+------------------------+
  | Contract_hash | 20 bytes | bytes                  |
  +---------------+----------+------------------------+
  | padding       | 1 byte   | padding                |
  +---------------+----------+------------------------+

  

GET ../<block_id>/context/merkle_tree(/<context_path>)*?[holey=<bool>]

Returns the merkle tree of a piece of context.

Optional query arguments :

  • holey = <bool> : Send only hashes, omit data of key

  $merkle_tree /* Some */ || null /* None */
  $merkle_tree:
    [ [ $unistring,
        [ boolean, $unistring ]
        /* Hash */
        || $raw_context
        /* Data */
        || $merkle_tree
        /* Continue */ ] ... ]
  $raw_context:
    /^([a-zA-Z0-9][a-zA-Z0-9])*$/
    /* Key */
    || { /* Dir */
         *: $raw_context }
    || null
    /* Cut */
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_8     |
  +-----------------+----------------------+----------+


  X_2
  ***

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  X_3
  ***

  +-----------------+----------------------+--------------+
  | Name            | Size                 | Contents     |
  +=================+======================+==============+
  | Unnamed field 0 | Determined from data | $X_2         |
  +-----------------+----------------------+--------------+
  | Unnamed field 1 | Determined from data | $raw_context |
  +-----------------+----------------------+--------------+


  raw_context (Determined from data, 8-bit tag)
  *********************************************

  Key (tag 0)
  ===========

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  Dir (tag 1)
  ===========

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_3                   |
  +-----------------------+----------+------------------------------------+


  Cut (tag 2)
  ===========

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  X_7 (Determined from data, 8-bit tag)
  *************************************

  Hash (tag 0)
  ============

  +-----------------+----------------------+-------------------------------------+
  | Name            | Size                 | Contents                            |
  +=================+======================+=====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer              |
  +-----------------+----------------------+-------------------------------------+
  | Unnamed field 0 | 1 byte               | boolean (0 for false, 255 for true) |
  +-----------------+----------------------+-------------------------------------+
  | Unnamed field 1 | Determined from data | $X_2                                |
  +-----------------+----------------------+-------------------------------------+


  Data (tag 1)
  ============

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | Determined from data | $raw_context           |
  +-----------------+----------------------+------------------------+


  Continue (tag 2)
  ================

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | Determined from data | $merkle_tree           |
  +-----------------+----------------------+------------------------+


  X_1
  ***

  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_2     |
  +-----------------+----------------------+----------+
  | Unnamed field 1 | Determined from data | $X_7     |
  +-----------------+----------------------+----------+


  merkle_tree
  ***********

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_1                   |
  +-----------------------+----------+------------------------------------+


  X_8 (Determined from data, 8-bit tag)
  *************************************

  None (tag 0)
  ============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Some (tag 1)
  ============

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | Determined from data | $merkle_tree           |
  +-----------------+----------------------+------------------------+

  

GET ../<block_id>/context/merkle_tree_v2(/<context_path>)*?[holey=<bool>]

Returns the Irmin merkle tree of a piece of context.

Optional query arguments :

  • holey = <bool> : Send only hashes, omit data of key

  { /* Some */
    "version": integer ∈ [-2^15, 2^15-1],
    "before":
      { /* Value */
        "value": $Context_hash }
      || { /* Node */
           "node": $Context_hash },
    "after":
      { /* Value */
        "value": $Context_hash }
      || { /* Node */
           "node": $Context_hash },
    "state": $tree_encoding }
  || null
  /* None */
  $Context_hash:
    /* A hash of context (Base58Check-encoded) */
    $unistring
  $inode_tree:
    { /* Inode_tree */
      "inode_tree":
        { "length": $int64,
          "proofs":
            { /* sparse_proof */
              "sparse_proof": [ [ integer ∈ [0, 255], $inode_tree ] ... ] }
            || { /* dense_proof */
                 "dense_proof": [ $inode_tree ... ] } } }
    || { /* other_inode_trees */
         "other_inode_trees":
           { /* Inode_values */
             "inode_values":
               [ [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/, $tree_encoding ] ... ] }
           || { /* other_inode_trees */
                "other_inode_trees":
                  { /* Blinded_inode */
                    "blinded_inode": $Context_hash }
                  || { /* Inode_extender */
                       "inode_extender":
                         { "length": $int64,
                           "segment": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
                           "proof": $inode_tree } }
                  || { /* None */
                       "none": any } } }
  $int64:
    /* 64 bit integers
       Decimal representation of 64 bit integers */
    string
  $tree_encoding:
    { /* Inode */
      "inode":
        { "length": $int64,
          "proofs":
            { /* sparse_proof */
              "sparse_proof": [ [ integer ∈ [0, 255], $inode_tree ] ... ] }
            || { /* dense_proof */
                 "dense_proof": [ $inode_tree ... ] } } }
    || { /* other_trees */
         "other_trees":
           { /* Node */
             "node":
               [ [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/, $tree_encoding ] ... ] }
           || { /* other_trees */
                "other_trees":
                  { /* Value */
                    "value":
                      /^([a-zA-Z0-9][a-zA-Z0-9])*$/
                      /* short_bytes */
                      || /^([a-zA-Z0-9][a-zA-Z0-9])*$/
                      /* medium_bytes */
                      || any
                      /* long_bytes
                         This case is void. No data is accepted. */
                      || /^([a-zA-Z0-9][a-zA-Z0-9])*$/
                      /* unlimited_bytes */ }
                  || { /* Blinded_value */
                       "blinded_value": $Context_hash }
                  || { /* Blinded_node */
                       "blinded_node": $Context_hash }
                  || { /* Extender */
                       "extender":
                         { "length": $int64,
                           "segment": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
                           "proof": $inode_tree } }
                  || { /* None */
                       "none": any } } }
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_53821 |
  +-----------------+----------------------+----------+


  X_0
  ***

  +-----------------------+----------+------------------------+
  | Name                  | Size     | Contents               |
  +=======================+==========+========================+
  | # bytes in next field | 1 byte   | unsigned 8-bit integer |
  +-----------------------+----------+------------------------+
  | Unnamed field 0       | Variable | bytes                  |
  +-----------------------+----------+------------------------+


  X_6
  ***

  +-----------------------+----------+------------------------+
  | Name                  | Size     | Contents               |
  +=======================+==========+========================+
  | # bytes in next field | 1 byte   | unsigned 8-bit integer |
  +-----------------------+----------+------------------------+
  | Unnamed field 0       | Variable | bytes                  |
  +-----------------------+----------+------------------------+


  X_5
  ***

  +-----------------+----------------------+----------------+
  | Name            | Size                 | Contents       |
  +=================+======================+================+
  | Unnamed field 0 | Determined from data | $X_6           |
  +-----------------+----------------------+----------------+
  | Unnamed field 1 | Determined from data | $tree_encoding |
  +-----------------+----------------------+----------------+


  X_132
  *****

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 1 | Determined from data | $inode_tree            |
  +-----------------+----------------------+------------------------+


  X_131
  *****

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_132                 |
  +-----------------------+----------+------------------------------------+


  inode_tree (Determined from data, 8-bit tag)
  ********************************************

  Inode_tree (tag 0)
  ==================

  +-----------------+--------+------------------------+
  | Name            | Size   | Contents               |
  +=================+========+========================+
  | Tag             | 1 byte | unsigned 8-bit integer |
  +-----------------+--------+------------------------+
  | Unnamed field 0 | 1 byte | unsigned 8-bit integer |
  +-----------------+--------+------------------------+


  Inode_tree (tag 1)
  ==================

  +-----------------+---------+------------------------------------+
  | Name            | Size    | Contents                           |
  +=================+=========+====================================+
  | Tag             | 1 byte  | unsigned 8-bit integer             |
  +-----------------+---------+------------------------------------+
  | Unnamed field 0 | 2 bytes | unsigned 16-bit big-endian integer |
  +-----------------+---------+------------------------------------+


  Inode_tree (tag 2)
  ==================

  +-----------------+---------+----------------------------------+
  | Name            | Size    | Contents                         |
  +=================+=========+==================================+
  | Tag             | 1 byte  | unsigned 8-bit integer           |
  +-----------------+---------+----------------------------------+
  | Unnamed field 0 | 4 bytes | signed 32-bit big-endian integer |
  +-----------------+---------+----------------------------------+


  Inode_tree (tag 3)
  ==================

  +-----------------+---------+----------------------------------+
  | Name            | Size    | Contents                         |
  +=================+=========+==================================+
  | Tag             | 1 byte  | unsigned 8-bit integer           |
  +-----------------+---------+----------------------------------+
  | Unnamed field 0 | 8 bytes | signed 64-bit big-endian integer |
  +-----------------+---------+----------------------------------+


  Inode_tree (tag 4)
  ==================

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 1 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode_tree (tag 5)
  ==================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 1 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 6)
  ==================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 1 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 7)
  ==================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 1 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 8)
  ==================

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 2 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode_tree (tag 9)
  ==================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 2 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 10)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 2 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 11)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 2 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 12)
  ===================

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 3 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode_tree (tag 13)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 3 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 14)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 3 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 15)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 3 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 16)
  ===================

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 4 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode_tree (tag 17)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 4 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 18)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 4 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 19)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 4 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 20)
  ===================

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 5 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode_tree (tag 21)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 5 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 22)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 5 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 23)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 5 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 24)
  ===================

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 6 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode_tree (tag 25)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 6 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 26)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 6 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 27)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 6 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 28)
  ===================

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 7 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode_tree (tag 29)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 7 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 30)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 7 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 31)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 7 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 32)
  ===================

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 8 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode_tree (tag 33)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 8 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 34)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 8 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 35)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 8 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 36)
  ===================

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 9 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode_tree (tag 37)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 9 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 38)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 9 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 39)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 9 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 40)
  ===================

  +-----------------+----------------------+-------------------------------+
  | Name            | Size                 | Contents                      |
  +=================+======================+===============================+
  | Tag             | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 10 $X_132 |
  +-----------------+----------------------+-------------------------------+


  Inode_tree (tag 41)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 10 $X_132      |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 42)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 10 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 43)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 10 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 44)
  ===================

  +-----------------+----------------------+-------------------------------+
  | Name            | Size                 | Contents                      |
  +=================+======================+===============================+
  | Tag             | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 11 $X_132 |
  +-----------------+----------------------+-------------------------------+


  Inode_tree (tag 45)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 11 $X_132      |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 46)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 11 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 47)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 11 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 48)
  ===================

  +-----------------+----------------------+-------------------------------+
  | Name            | Size                 | Contents                      |
  +=================+======================+===============================+
  | Tag             | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 12 $X_132 |
  +-----------------+----------------------+-------------------------------+


  Inode_tree (tag 49)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 12 $X_132      |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 50)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 12 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 51)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 12 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 52)
  ===================

  +-----------------+----------------------+-------------------------------+
  | Name            | Size                 | Contents                      |
  +=================+======================+===============================+
  | Tag             | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 13 $X_132 |
  +-----------------+----------------------+-------------------------------+


  Inode_tree (tag 53)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 13 $X_132      |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 54)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 13 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 55)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 13 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 56)
  ===================

  +-----------------+----------------------+-------------------------------+
  | Name            | Size                 | Contents                      |
  +=================+======================+===============================+
  | Tag             | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 14 $X_132 |
  +-----------------+----------------------+-------------------------------+


  Inode_tree (tag 57)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 14 $X_132      |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 58)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 14 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 59)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 14 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 60)
  ===================

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 1 | Determined from data | $X_131                 |
  +-----------------+----------------------+------------------------+


  Inode_tree (tag 61)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | $X_131                             |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 62)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | $X_131                           |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 63)
  ===================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | $X_131                           |
  +-----------------+----------------------+----------------------------------+


  Inode_tree (tag 64)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 32 $inode_tree |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 65)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 32 $inode_tree |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 66)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer   |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 32 $inode_tree |
  +-----------------+----------------------+------------------------------------+


  Inode_tree (tag 67)
  ===================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer   |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 32 $inode_tree |
  +-----------------+----------------------+------------------------------------+


  other_inode_trees (tag 128)
  ===========================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  other_inode_trees (tag 129)
  ===========================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 1 $X_5 |
  +-----------------+----------+----------------------------+


  other_inode_trees (tag 130)
  ===========================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 2 $X_5 |
  +-----------------+----------+----------------------------+


  other_inode_trees (tag 131)
  ===========================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 3 $X_5 |
  +-----------------+----------+----------------------------+


  other_inode_trees (tag 132)
  ===========================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 4 $X_5 |
  +-----------------+----------+----------------------------+


  other_inode_trees (tag 133)
  ===========================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 5 $X_5 |
  +-----------------+----------+----------------------------+


  other_inode_trees (tag 134)
  ===========================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 6 $X_5 |
  +-----------------+----------+----------------------------+


  other_inode_trees (tag 135)
  ===========================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 7 $X_5 |
  +-----------------+----------+----------------------------+


  other_inode_trees (tag 136)
  ===========================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 8 $X_5 |
  +-----------------+----------+----------------------------+


  other_inode_trees (tag 137)
  ===========================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 9 $X_5 |
  +-----------------+----------+----------------------------+


  other_inode_trees (tag 138)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 10 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 139)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 11 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 140)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 12 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 141)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 13 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 142)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 14 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 143)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 15 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 144)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 16 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 145)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 17 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 146)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 18 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 147)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 19 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 148)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 20 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 149)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 21 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 150)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 22 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 151)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 23 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 152)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 24 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 153)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 25 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 154)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 26 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 155)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 27 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 156)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 28 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 157)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 29 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 158)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 30 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 159)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 31 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 160)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 32 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 161)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 33 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 162)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 34 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 163)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 35 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 164)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 36 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 165)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 37 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 166)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 38 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 167)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 39 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 168)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 40 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 169)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 41 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 170)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 42 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 171)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 43 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 172)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 44 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 173)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 45 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 174)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 46 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 175)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 47 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 176)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 48 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 177)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 49 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 178)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 50 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 179)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 51 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 180)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 52 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 181)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 53 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 182)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 54 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 183)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 55 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 184)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 56 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 185)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 57 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 186)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 58 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 187)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 59 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 188)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 60 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 189)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 61 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 190)
  ===========================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 62 $X_5 |
  +-----------------+----------+-----------------------------+


  other_inode_trees (tag 191)
  ===========================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_5                   |
  +-----------------------+----------+------------------------------------+


  other_inode_trees (tag 192)
  ===========================

  +--------------+----------+------------------------+
  | Name         | Size     | Contents               |
  +==============+==========+========================+
  | Tag          | 1 byte   | unsigned 8-bit integer |
  +--------------+----------+------------------------+
  | Context_hash | 32 bytes | bytes                  |
  +--------------+----------+------------------------+


  other_inode_trees (tag 208)
  ===========================

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 1 | Determined from data | $X_0                   |
  +-----------------+----------------------+------------------------+
  | Unnamed field 2 | Determined from data | $inode_tree            |
  +-----------------+----------------------+------------------------+


  other_inode_trees (tag 209)
  ===========================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | $X_0                               |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 2 | Determined from data | $inode_tree                        |
  +-----------------+----------------------+------------------------------------+


  other_inode_trees (tag 210)
  ===========================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | $X_0                             |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 2 | Determined from data | $inode_tree                      |
  +-----------------+----------------------+----------------------------------+


  other_inode_trees (tag 211)
  ===========================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | $X_0                             |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 2 | Determined from data | $inode_tree                      |
  +-----------------+----------------------+----------------------------------+


  other_inode_trees (tag 224)
  ===========================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  tree_encoding (Determined from data, 8-bit tag)
  ***********************************************

  Inode (tag 0)
  =============

  +-----------------+--------+------------------------+
  | Name            | Size   | Contents               |
  +=================+========+========================+
  | Tag             | 1 byte | unsigned 8-bit integer |
  +-----------------+--------+------------------------+
  | Unnamed field 0 | 1 byte | unsigned 8-bit integer |
  +-----------------+--------+------------------------+


  Inode (tag 1)
  =============

  +-----------------+---------+------------------------------------+
  | Name            | Size    | Contents                           |
  +=================+=========+====================================+
  | Tag             | 1 byte  | unsigned 8-bit integer             |
  +-----------------+---------+------------------------------------+
  | Unnamed field 0 | 2 bytes | unsigned 16-bit big-endian integer |
  +-----------------+---------+------------------------------------+


  Inode (tag 2)
  =============

  +-----------------+---------+----------------------------------+
  | Name            | Size    | Contents                         |
  +=================+=========+==================================+
  | Tag             | 1 byte  | unsigned 8-bit integer           |
  +-----------------+---------+----------------------------------+
  | Unnamed field 0 | 4 bytes | signed 32-bit big-endian integer |
  +-----------------+---------+----------------------------------+


  Inode (tag 3)
  =============

  +-----------------+---------+----------------------------------+
  | Name            | Size    | Contents                         |
  +=================+=========+==================================+
  | Tag             | 1 byte  | unsigned 8-bit integer           |
  +-----------------+---------+----------------------------------+
  | Unnamed field 0 | 8 bytes | signed 64-bit big-endian integer |
  +-----------------+---------+----------------------------------+


  Inode (tag 4)
  =============

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 1 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode (tag 5)
  =============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 1 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 6)
  =============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 1 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 7)
  =============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 1 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 8)
  =============

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 2 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode (tag 9)
  =============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 2 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 10)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 2 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 11)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 2 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 12)
  ==============

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 3 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode (tag 13)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 3 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 14)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 3 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 15)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 3 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 16)
  ==============

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 4 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode (tag 17)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 4 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 18)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 4 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 19)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 4 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 20)
  ==============

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 5 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode (tag 21)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 5 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 22)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 5 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 23)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 5 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 24)
  ==============

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 6 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode (tag 25)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 6 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 26)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 6 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 27)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 6 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 28)
  ==============

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 7 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode (tag 29)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 7 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 30)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 7 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 31)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 7 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 32)
  ==============

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 8 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode (tag 33)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 8 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 34)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 8 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 35)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 8 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 36)
  ==============

  +-----------------+----------------------+------------------------------+
  | Name            | Size                 | Contents                     |
  +=================+======================+==============================+
  | Tag             | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer       |
  +-----------------+----------------------+------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 9 $X_132 |
  +-----------------+----------------------+------------------------------+


  Inode (tag 37)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 9 $X_132       |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 38)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 9 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 39)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 9 $X_132     |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 40)
  ==============

  +-----------------+----------------------+-------------------------------+
  | Name            | Size                 | Contents                      |
  +=================+======================+===============================+
  | Tag             | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 10 $X_132 |
  +-----------------+----------------------+-------------------------------+


  Inode (tag 41)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 10 $X_132      |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 42)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 10 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 43)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 10 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 44)
  ==============

  +-----------------+----------------------+-------------------------------+
  | Name            | Size                 | Contents                      |
  +=================+======================+===============================+
  | Tag             | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 11 $X_132 |
  +-----------------+----------------------+-------------------------------+


  Inode (tag 45)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 11 $X_132      |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 46)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 11 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 47)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 11 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 48)
  ==============

  +-----------------+----------------------+-------------------------------+
  | Name            | Size                 | Contents                      |
  +=================+======================+===============================+
  | Tag             | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 12 $X_132 |
  +-----------------+----------------------+-------------------------------+


  Inode (tag 49)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 12 $X_132      |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 50)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 12 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 51)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 12 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 52)
  ==============

  +-----------------+----------------------+-------------------------------+
  | Name            | Size                 | Contents                      |
  +=================+======================+===============================+
  | Tag             | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 13 $X_132 |
  +-----------------+----------------------+-------------------------------+


  Inode (tag 53)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 13 $X_132      |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 54)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 13 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 55)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 13 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 56)
  ==============

  +-----------------+----------------------+-------------------------------+
  | Name            | Size                 | Contents                      |
  +=================+======================+===============================+
  | Tag             | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer        |
  +-----------------+----------------------+-------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 14 $X_132 |
  +-----------------+----------------------+-------------------------------+


  Inode (tag 57)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 14 $X_132      |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 58)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 14 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 59)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 14 $X_132    |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 60)
  ==============

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 1 | Determined from data | $X_131                 |
  +-----------------+----------------------+------------------------+


  Inode (tag 61)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | $X_131                             |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 62)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | $X_131                           |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 63)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | $X_131                           |
  +-----------------+----------------------+----------------------------------+


  Inode (tag 64)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 32 $inode_tree |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 65)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 32 $inode_tree |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 66)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer   |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 32 $inode_tree |
  +-----------------+----------------------+------------------------------------+


  Inode (tag 67)
  ==============

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer   |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | sequence of exactly 32 $inode_tree |
  +-----------------+----------------------+------------------------------------+


  other_trees (tag 128)
  =====================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  other_trees (tag 129)
  =====================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 1 $X_5 |
  +-----------------+----------+----------------------------+


  other_trees (tag 130)
  =====================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 2 $X_5 |
  +-----------------+----------+----------------------------+


  other_trees (tag 131)
  =====================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 3 $X_5 |
  +-----------------+----------+----------------------------+


  other_trees (tag 132)
  =====================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 4 $X_5 |
  +-----------------+----------+----------------------------+


  other_trees (tag 133)
  =====================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 5 $X_5 |
  +-----------------+----------+----------------------------+


  other_trees (tag 134)
  =====================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 6 $X_5 |
  +-----------------+----------+----------------------------+


  other_trees (tag 135)
  =====================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 7 $X_5 |
  +-----------------+----------+----------------------------+


  other_trees (tag 136)
  =====================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 8 $X_5 |
  +-----------------+----------+----------------------------+


  other_trees (tag 137)
  =====================

  +-----------------+----------+----------------------------+
  | Name            | Size     | Contents                   |
  +=================+==========+============================+
  | Tag             | 1 byte   | unsigned 8-bit integer     |
  +-----------------+----------+----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 9 $X_5 |
  +-----------------+----------+----------------------------+


  other_trees (tag 138)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 10 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 139)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 11 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 140)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 12 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 141)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 13 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 142)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 14 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 143)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 15 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 144)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 16 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 145)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 17 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 146)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 18 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 147)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 19 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 148)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 20 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 149)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 21 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 150)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 22 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 151)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 23 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 152)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 24 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 153)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 25 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 154)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 26 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 155)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 27 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 156)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 28 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 157)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 29 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 158)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 30 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 159)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 31 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 160)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 32 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 161)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 33 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 162)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 34 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 163)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 35 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 164)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 36 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 165)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 37 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 166)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 38 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 167)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 39 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 168)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 40 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 169)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 41 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 170)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 42 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 171)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 43 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 172)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 44 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 173)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 45 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 174)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 46 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 175)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 47 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 176)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 48 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 177)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 49 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 178)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 50 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 179)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 51 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 180)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 52 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 181)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 53 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 182)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 54 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 183)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 55 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 184)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 56 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 185)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 57 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 186)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 58 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 187)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 59 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 188)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 60 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 189)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 61 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 190)
  =====================

  +-----------------+----------+-----------------------------+
  | Name            | Size     | Contents                    |
  +=================+==========+=============================+
  | Tag             | 1 byte   | unsigned 8-bit integer      |
  +-----------------+----------+-----------------------------+
  | Unnamed field 0 | Variable | sequence of exactly 62 $X_5 |
  +-----------------+----------+-----------------------------+


  other_trees (tag 191)
  =====================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_5                   |
  +-----------------------+----------+------------------------------------+


  other_trees (tag 192)
  =====================

  +-----------------------+----------+------------------------+
  | Name                  | Size     | Contents               |
  +=======================+==========+========================+
  | Tag                   | 1 byte   | unsigned 8-bit integer |
  +-----------------------+----------+------------------------+
  | # bytes in next field | 1 byte   | unsigned 8-bit integer |
  +-----------------------+----------+------------------------+
  | Unnamed field 0       | Variable | bytes                  |
  +-----------------------+----------+------------------------+


  other_trees (tag 193)
  =====================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 2 bytes  | unsigned 16-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  other_trees (tag 195)
  =====================

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  other_trees (tag 200)
  =====================

  +--------------+----------+------------------------+
  | Name         | Size     | Contents               |
  +==============+==========+========================+
  | Tag          | 1 byte   | unsigned 8-bit integer |
  +--------------+----------+------------------------+
  | Context_hash | 32 bytes | bytes                  |
  +--------------+----------+------------------------+


  other_trees (tag 208)
  =====================

  +--------------+----------+------------------------+
  | Name         | Size     | Contents               |
  +==============+==========+========================+
  | Tag          | 1 byte   | unsigned 8-bit integer |
  +--------------+----------+------------------------+
  | Context_hash | 32 bytes | bytes                  |
  +--------------+----------+------------------------+


  other_trees (tag 216)
  =====================

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 1 | Determined from data | $X_0                   |
  +-----------------+----------------------+------------------------+
  | Unnamed field 2 | Determined from data | $inode_tree            |
  +-----------------+----------------------+------------------------+


  other_trees (tag 217)
  =====================

  +-----------------+----------------------+------------------------------------+
  | Name            | Size                 | Contents                           |
  +=================+======================+====================================+
  | Tag             | 1 byte               | unsigned 8-bit integer             |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 0 | 2 bytes              | unsigned 16-bit big-endian integer |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 1 | Determined from data | $X_0                               |
  +-----------------+----------------------+------------------------------------+
  | Unnamed field 2 | Determined from data | $inode_tree                        |
  +-----------------+----------------------+------------------------------------+


  other_trees (tag 218)
  =====================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 4 bytes              | signed 32-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | $X_0                             |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 2 | Determined from data | $inode_tree                      |
  +-----------------+----------------------+----------------------------------+


  other_trees (tag 219)
  =====================

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 8 bytes              | signed 64-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | Determined from data | $X_0                             |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 2 | Determined from data | $inode_tree                      |
  +-----------------+----------------------+----------------------------------+


  other_trees (tag 224)
  =====================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  X_53820 (Determined from data, 8-bit tag)
  *****************************************

  case_0 (tag 0)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 2 bytes              | signed 16-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | 32 bytes             | bytes                            |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 2 | 32 bytes             | bytes                            |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 3 | Determined from data | $tree_encoding                   |
  +-----------------+----------------------+----------------------------------+


  case_1 (tag 1)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 2 bytes              | signed 16-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | 32 bytes             | bytes                            |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 2 | 32 bytes             | bytes                            |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 3 | Determined from data | $tree_encoding                   |
  +-----------------+----------------------+----------------------------------+


  case_2 (tag 2)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 2 bytes              | signed 16-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | 32 bytes             | bytes                            |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 2 | 32 bytes             | bytes                            |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 3 | Determined from data | $tree_encoding                   |
  +-----------------+----------------------+----------------------------------+


  case_3 (tag 3)
  ==============

  +-----------------+----------------------+----------------------------------+
  | Name            | Size                 | Contents                         |
  +=================+======================+==================================+
  | Tag             | 1 byte               | unsigned 8-bit integer           |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 0 | 2 bytes              | signed 16-bit big-endian integer |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 1 | 32 bytes             | bytes                            |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 2 | 32 bytes             | bytes                            |
  +-----------------+----------------------+----------------------------------+
  | Unnamed field 3 | Determined from data | $tree_encoding                   |
  +-----------------+----------------------+----------------------------------+


  X_53821 (Determined from data, 8-bit tag)
  *****************************************

  None (tag 0)
  ============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  Some (tag 1)
  ============

  +-----------------+----------------------+------------------------+
  | Name            | Size                 | Contents               |
  +=================+======================+========================+
  | Tag             | 1 byte               | unsigned 8-bit integer |
  +-----------------+----------------------+------------------------+
  | Unnamed field 0 | Determined from data | $X_53820               |
  +-----------------+----------------------+------------------------+

  

GET ../<block_id>/context/nonces/<block_level>

Info about the nonce of a previous block.

  { /* Revealed */
    "nonce": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
  || { /* Missing */
       "hash": $cycle_nonce }
  || { /* Forgotten */
        }
  $cycle_nonce:
    /* A nonce hash (Base58Check-encoded) */
    $unistring
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_0     |
  +-----------------+----------------------+----------+


  X_0 (Determined from data, 8-bit tag)
  *************************************

  Revealed (tag 0)
  ================

  +-------+----------+------------------------+
  | Name  | Size     | Contents               |
  +=======+==========+========================+
  | Tag   | 1 byte   | unsigned 8-bit integer |
  +-------+----------+------------------------+
  | nonce | 32 bytes | bytes                  |
  +-------+----------+------------------------+


  Missing (tag 1)
  ===============

  +------+----------+------------------------+
  | Name | Size     | Contents               |
  +======+==========+========================+
  | Tag  | 1 byte   | unsigned 8-bit integer |
  +------+----------+------------------------+
  | hash | 32 bytes | bytes                  |
  +------+----------+------------------------+


  Forgotten (tag 2)
  =================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+

  

GET ../<block_id>/context/raw/bytes(/<context_path>)*?[depth=<uint>]

Returns the raw context.

Optional query arguments :

  • depth = <uint>

  $raw_context
  $raw_context:
    /^([a-zA-Z0-9][a-zA-Z0-9])*$/
    /* Key */
    || { /* Dir */
         *: $raw_context }
    || null
    /* Cut */
  +-----------------+----------------------+--------------+
  | Name            | Size                 | Contents     |
  +=================+======================+==============+
  | Unnamed field 0 | Determined from data | $raw_context |
  +-----------------+----------------------+--------------+


  X_1
  ***

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  X_0
  ***

  +-----------------+----------------------+--------------+
  | Name            | Size                 | Contents     |
  +=================+======================+==============+
  | Unnamed field 0 | Determined from data | $X_1         |
  +-----------------+----------------------+--------------+
  | Unnamed field 1 | Determined from data | $raw_context |
  +-----------------+----------------------+--------------+


  raw_context (Determined from data, 8-bit tag)
  *********************************************

  Key (tag 0)
  ===========

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  Dir (tag 1)
  ===========

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | Tag                   | 1 byte   | unsigned 8-bit integer             |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_0                   |
  +-----------------------+----------+------------------------------------+


  Cut (tag 2)
  ===========

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+

  

GET ../<block_id>/context/sapling/<sapling_state_id>/get_diff?[offset_commitment=<uint63>]&[offset_nullifier=<uint63>]

Returns the root and a diff of a state starting from an optional offset which is zero by default.

Optional query arguments :

  • offset_commitment = <uint63> : Commitments and ciphertexts are returned from the specified offset up to the most recent.
  • offset_nullifier = <uint63> : Nullifiers are returned from the specified offset up to the most recent.

  { "root": $sapling.transaction.commitment_hash,
    "commitments_and_ciphertexts":
      [ [ $sapling.transaction.commitment, $sapling.transaction.ciphertext ] ... ],
    "nullifiers": [ $sapling.transaction.nullifier ... ] }
  $sapling.DH.epk: /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  $sapling.transaction.ciphertext:
    { "cv": $sapling.transaction.commitment_value,
      "epk": $sapling.DH.epk,
      "payload_enc": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
      "nonce_enc": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
      "payload_out": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
      "nonce_out": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
  $sapling.transaction.commitment: /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  $sapling.transaction.commitment_hash: /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  $sapling.transaction.commitment_value: /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  $sapling.transaction.nullifier: /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  +-----------------------------+----------+------------------------------------+
  | Name                        | Size     | Contents                           |
  +=============================+==========+====================================+
  | root                        | 32 bytes | bytes                              |
  +-----------------------------+----------+------------------------------------+
  | # bytes in next field       | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------------+----------+------------------------------------+
  | commitments_and_ciphertexts | Variable | sequence of $X_0                   |
  +-----------------------------+----------+------------------------------------+
  | # bytes in next field       | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------------+----------+------------------------------------+
  | nullifiers                  | Variable | sequence of bytes                  |
  +-----------------------------+----------+------------------------------------+


  sapling.transaction.ciphertext
  ******************************

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | cv                    | 32 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+
  | epk                   | 32 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | payload_enc           | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+
  | nonce_enc             | 24 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+
  | payload_out           | 80 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+
  | nonce_out             | 24 bytes | bytes                              |
  +-----------------------+----------+------------------------------------+


  X_0
  ***

  +-----------------+----------------------+---------------------------------+
  | Name            | Size                 | Contents                        |
  +=================+======================+=================================+
  | Unnamed field 0 | 32 bytes             | bytes                           |
  +-----------------+----------------------+---------------------------------+
  | Unnamed field 1 | Determined from data | $sapling.transaction.ciphertext |
  +-----------------+----------------------+---------------------------------+

  

POST ../<block_id>/context/seed

Seed of the cycle to which the block belongs.

  {  }
  This value's binary representation is empty. It takes zero (0) bytes of output.
  
  /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  +-----------------+----------+----------+
  | Name            | Size     | Contents |
  +=================+==========+==========+
  | Unnamed field 0 | 32 bytes | bytes    |
  +-----------------+----------+----------+


  

GET ../<block_id>/context/seed_computation

Seed computation status

  { /* Nonce revelation stage */
    "nonce_revelation_stage": any }
  || { /* VDF revelation stage */
       "seed_discriminant": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
       "seed_challenge": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
  || { /* Computation finished */
       "computation_finished": any }
  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $X_0     |
  +-----------------+----------------------+----------+


  X_0 (Determined from data, 8-bit tag)
  *************************************

  Nonce revelation stage (tag 0)
  ==============================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  VDF revelation stage (tag 1)
  ============================

  +-------------------+----------+------------------------+
  | Name              | Size     | Contents               |
  +===================+==========+========================+
  | Tag               | 1 byte   | unsigned 8-bit integer |
  +-------------------+----------+------------------------+
  | seed_discriminant | 32 bytes | bytes                  |
  +-------------------+----------+------------------------+
  | seed_challenge    | 32 bytes | bytes                  |
  +-------------------+----------+------------------------+


  Computation finished (tag 2)
  ============================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+

  

GET ../<block_id>/context/total_frozen_stake

Returns the total stake (in mutez) frozen on the chain

  $positive_bignum
  $positive_bignum:
    /* Positive big number
       Decimal representation of a positive big number */
    string
  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $N.t     |
  +-----------------+----------------------+----------+


  N.t
  ***

  A variable-length sequence of bytes encoding a Zarith natural number. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). Size bits ignored, the data is the binary representation of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | N.t  | Determined from data | bytes    |
  +------+----------------------+----------+

  

GET ../<block_id>/context/total_supply

Returns the total supply (in mutez) available on the chain

  $positive_bignum
  $positive_bignum:
    /* Positive big number
       Decimal representation of a positive big number */
    string
  +-----------------+----------------------+----------+
  | Name            | Size                 | Contents |
  +=================+======================+==========+
  | Unnamed field 0 | Determined from data | $N.t     |
  +-----------------+----------------------+----------+


  N.t
  ***

  A variable-length sequence of bytes encoding a Zarith natural number. Each byte has a running unary size bit: the most significant bit of each byte indicates whether this is the last byte in the sequence (0) or whether the sequence continues (1). Size bits ignored, the data is the binary representation of the number in little-endian order.

  +------+----------------------+----------+
  | Name | Size                 | Contents |
  +======+======================+==========+
  | N.t  | Determined from data | bytes    |
  +------+----------------------+----------+

  

GET ../<block_id>/hash

The block's hash, its unique identifier.

  $unistring
  /* A block identifier (Base58Check-encoded) */
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +------------+----------+----------+
  | Name       | Size     | Contents |
  +============+==========+==========+
  | block_hash | 32 bytes | bytes    |
  +------------+----------+----------+


  

GET ../<block_id>/header

The whole block header.

  { /* Shell header
       Block header's shell-related content. It contains information such as
       the block level, its predecessor and timestamp. */
    "protocol": "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK",
    "chain_id": $Chain_id,
    "hash": $block_hash,
    "level": integer ∈ [-2^31-1, 2^31],
    "proto": integer ∈ [0, 255],
    "predecessor": $block_hash,
    "timestamp": $timestamp.protocol,
    "validation_pass": integer ∈ [0, 255],
    "operations_hash": $Operation_list_list_hash,
    "fitness": $fitness,
    "context": $Context_hash,
    "payload_hash": $value_hash,
    "payload_round": integer ∈ [-2^31-1, 2^31],
    "proof_of_work_nonce": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
    "seed_nonce_hash"?: $cycle_nonce,
    "liquidity_baking_toggle_vote": $alpha.liquidity_baking_vote,
    "adaptive_issuance_vote": $alpha.adaptive_issuance_vote,
    "signature": $Signature.V1 }
  $Chain_id:
    /* Network identifier (Base58Check-encoded) */
    $unistring
  $Context_hash:
    /* A hash of context (Base58Check-encoded) */
    $unistring
  $Operation_list_list_hash:
    /* A list of list of operations (Base58Check-encoded) */
    $unistring
  $Signature.V1:
    /* A Ed25519, Secp256k1, P256 or BLS signature (Base58Check-encoded) */
    $unistring
  $alpha.adaptive_issuance_vote: "on" || "off" || "pass"
  $alpha.liquidity_baking_vote: "on" || "off" || "pass"
  $block_hash:
    /* A block identifier (Base58Check-encoded) */
    $unistring
  $cycle_nonce:
    /* A nonce hash (Base58Check-encoded) */
    $unistring
  $fitness:
    /* Block fitness
       The fitness, or score, of a block, that allow the Tezos to decide
       which chain is the best. A fitness value is a list of byte sequences.
       They are compared as follows: shortest lists are smaller; lists of the
       same length are compared according to the lexicographical order. */
    [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ]
  $timestamp.protocol:
    /* A timestamp as seen by the protocol: second-level precision, epoch
       based. */
    $unistring
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  $value_hash:
    /* Hash of a consensus value (Base58Check-encoded) */
    $unistring
  +---------------------------------------+----------+-------------------------------------+
  | Name                                  | Size     | Contents                            |
  +=======================================+==========+=====================================+
  | chain_id                              | 4 bytes  | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | hash                                  | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | level                                 | 4 bytes  | signed 32-bit big-endian integer    |
  +---------------------------------------+----------+-------------------------------------+
  | proto                                 | 1 byte   | unsigned 8-bit integer              |
  +---------------------------------------+----------+-------------------------------------+
  | predecessor                           | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | timestamp                             | 8 bytes  | signed 64-bit big-endian integer    |
  +---------------------------------------+----------+-------------------------------------+
  | validation_pass                       | 1 byte   | unsigned 8-bit integer              |
  +---------------------------------------+----------+-------------------------------------+
  | operations_hash                       | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | # bytes in field "fitness"            | 4 bytes  | unsigned 30-bit big-endian integer  |
  +---------------------------------------+----------+-------------------------------------+
  | fitness                               | Variable | sequence of $fitness.elem           |
  +---------------------------------------+----------+-------------------------------------+
  | context                               | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | payload_hash                          | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | payload_round                         | 4 bytes  | signed 32-bit big-endian integer    |
  +---------------------------------------+----------+-------------------------------------+
  | proof_of_work_nonce                   | 8 bytes  | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | ? presence of field "seed_nonce_hash" | 1 byte   | boolean (0 for false, 255 for true) |
  +---------------------------------------+----------+-------------------------------------+
  | seed_nonce_hash                       | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | per_block_votes                       | 1 byte   | $alpha.per_block_votes              |
  +---------------------------------------+----------+-------------------------------------+
  | signature                             | Variable | bytes                               |
  +---------------------------------------+----------+-------------------------------------+


  fitness.elem
  ************

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  alpha.per_block_votes (1 byte, 8-bit tag)
  *****************************************

  case_0 (tag 0)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_1 (tag 1)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_2 (tag 2)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_4 (tag 4)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_5 (tag 5)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_6 (tag 6)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_8 (tag 8)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_9 (tag 9)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_10 (tag 10)
  ================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+

  

GET ../<block_id>/header/protocol_data

The version-specific fragment of the block header.

  { "protocol": "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK",
    "payload_hash": $value_hash,
    "payload_round": integer ∈ [-2^31-1, 2^31],
    "proof_of_work_nonce": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
    "seed_nonce_hash"?: $cycle_nonce,
    "liquidity_baking_toggle_vote": $alpha.liquidity_baking_vote,
    "adaptive_issuance_vote": $alpha.adaptive_issuance_vote,
    "signature": $Signature.V1 }
  $Signature.V1:
    /* A Ed25519, Secp256k1, P256 or BLS signature (Base58Check-encoded) */
    $unistring
  $alpha.adaptive_issuance_vote: "on" || "off" || "pass"
  $alpha.liquidity_baking_vote: "on" || "off" || "pass"
  $cycle_nonce:
    /* A nonce hash (Base58Check-encoded) */
    $unistring
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  $value_hash:
    /* Hash of a consensus value (Base58Check-encoded) */
    $unistring
  +---------------------------------------+----------+-------------------------------------+
  | Name                                  | Size     | Contents                            |
  +=======================================+==========+=====================================+
  | payload_hash                          | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | payload_round                         | 4 bytes  | signed 32-bit big-endian integer    |
  +---------------------------------------+----------+-------------------------------------+
  | proof_of_work_nonce                   | 8 bytes  | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | ? presence of field "seed_nonce_hash" | 1 byte   | boolean (0 for false, 255 for true) |
  +---------------------------------------+----------+-------------------------------------+
  | seed_nonce_hash                       | 32 bytes | bytes                               |
  +---------------------------------------+----------+-------------------------------------+
  | per_block_votes                       | 1 byte   | $alpha.per_block_votes              |
  +---------------------------------------+----------+-------------------------------------+
  | signature                             | Variable | bytes                               |
  +---------------------------------------+----------+-------------------------------------+


  alpha.per_block_votes (1 byte, 8-bit tag)
  *****************************************

  case_0 (tag 0)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_1 (tag 1)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_2 (tag 2)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_4 (tag 4)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_5 (tag 5)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_6 (tag 6)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_8 (tag 8)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_9 (tag 9)
  ==============

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+


  case_10 (tag 10)
  ================

  +------+--------+------------------------+
  | Name | Size   | Contents               |
  +======+========+========================+
  | Tag  | 1 byte | unsigned 8-bit integer |
  +------+--------+------------------------+

  

GET ../<block_id>/header/protocol_data/raw

The version-specific fragment of the block header (unparsed).

  /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  

GET ../<block_id>/header/raw

The whole block header (unparsed).

  /^([a-zA-Z0-9][a-zA-Z0-9])*$/
  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  

GET ../<block_id>/header/shell

The shell-specific fragment of the block header.

  { /* Shell header
       Block header's shell-related content. It contains information such as
       the block level, its predecessor and timestamp. */
    "level": integer ∈ [-2^31-1, 2^31],
    "proto": integer ∈ [0, 255],
    "predecessor": $block_hash,
    "timestamp": $timestamp.protocol,
    "validation_pass": integer ∈ [0, 255],
    "operations_hash": $Operation_list_list_hash,
    "fitness": $fitness,
    "context": $Context_hash }
  $Context_hash:
    /* A hash of context (Base58Check-encoded) */
    $unistring
  $Operation_list_list_hash:
    /* A list of list of operations (Base58Check-encoded) */
    $unistring
  $block_hash:
    /* A block identifier (Base58Check-encoded) */
    $unistring
  $fitness:
    /* Block fitness
       The fitness, or score, of a block, that allow the Tezos to decide
       which chain is the best. A fitness value is a list of byte sequences.
       They are compared as follows: shortest lists are smaller; lists of the
       same length are compared according to the lexicographical order. */
    [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ]
  $timestamp.protocol:
    /* A timestamp as seen by the protocol: second-level precision, epoch
       based. */
    $unistring
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +----------------------------+----------+------------------------------------+
  | Name                       | Size     | Contents                           |
  +============================+==========+====================================+
  | level                      | 4 bytes  | signed 32-bit big-endian integer   |
  +----------------------------+----------+------------------------------------+
  | proto                      | 1 byte   | unsigned 8-bit integer             |
  +----------------------------+----------+------------------------------------+
  | predecessor                | 32 bytes | bytes                              |
  +----------------------------+----------+------------------------------------+
  | timestamp                  | 8 bytes  | signed 64-bit big-endian integer   |
  +----------------------------+----------+------------------------------------+
  | validation_pass            | 1 byte   | unsigned 8-bit integer             |
  +----------------------------+----------+------------------------------------+
  | operations_hash            | 32 bytes | bytes                              |
  +----------------------------+----------+------------------------------------+
  | # bytes in field "fitness" | 4 bytes  | unsigned 30-bit big-endian integer |
  +----------------------------+----------+------------------------------------+
  | fitness                    | Variable | sequence of $fitness.elem          |
  +----------------------------+----------+------------------------------------+
  | context                    | 32 bytes | bytes                              |
  +----------------------------+----------+------------------------------------+


  fitness.elem
  ************

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+

  

GET ../<block_id>/helpers/complete/<prefix>

Try to complete a prefix of a Base58Check-encoded data. This RPC is actually able to complete hashes of block, operations, public_keys and contracts.

  [ $unistring ... ]
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | sequence of $X_0                   |
  +-----------------------+----------+------------------------------------+


  X_0
  ***

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+

  

POST ../<block_id>/helpers/forge_block_header

Forge a block header

  { /* Block header
       Block header. It contains both shell and protocol specific data. */
    "level": integer ∈ [-2^31-1, 2^31],
    "proto": integer ∈ [0, 255],
    "predecessor": $block_hash,
    "timestamp": $timestamp.protocol,
    "validation_pass": integer ∈ [0, 255],
    "operations_hash": $Operation_list_list_hash,
    "fitness": $fitness,
    "context": $Context_hash,
    "protocol_data": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
  $Context_hash:
    /* A hash of context (Base58Check-encoded) */
    $unistring
  $Operation_list_list_hash:
    /* A list of list of operations (Base58Check-encoded) */
    $unistring
  $block_hash:
    /* A block identifier (Base58Check-encoded) */
    $unistring
  $fitness:
    /* Block fitness
       The fitness, or score, of a block, that allow the Tezos to decide
       which chain is the best. A fitness value is a list of byte sequences.
       They are compared as follows: shortest lists are smaller; lists of the
       same length are compared according to the lexicographical order. */
    [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ]
  $timestamp.protocol:
    /* A timestamp as seen by the protocol: second-level precision, epoch
       based. */
    $unistring
  $unistring:
    /* Universal string representation
       Either a plain UTF8 string, or a sequence of bytes for strings that
       contain invalid byte sequences. */
    string || { "invalid_utf8_string": [ integer ∈ [0, 255] ... ] }
  +----------------------------+----------+------------------------------------+
  | Name                       | Size     | Contents                           |
  +============================+==========+====================================+
  | level                      | 4 bytes  | signed 32-bit big-endian integer   |
  +----------------------------+----------+------------------------------------+
  | proto                      | 1 byte   | unsigned 8-bit integer             |
  +----------------------------+----------+------------------------------------+
  | predecessor                | 32 bytes | bytes                              |
  +----------------------------+----------+------------------------------------+
  | timestamp                  | 8 bytes  | signed 64-bit big-endian integer   |
  +----------------------------+----------+------------------------------------+
  | validation_pass            | 1 byte   | unsigned 8-bit integer             |
  +----------------------------+----------+------------------------------------+
  | operations_hash            | 32 bytes | bytes                              |
  +----------------------------+----------+------------------------------------+
  | # bytes in field "fitness" | 4 bytes  | unsigned 30-bit big-endian integer |
  +----------------------------+----------+------------------------------------+
  | fitness                    | Variable | sequence of $fitness.elem          |
  +----------------------------+----------+------------------------------------+
  | context                    | 32 bytes | bytes                              |
  +----------------------------+----------+------------------------------------+
  | protocol_data              | Variable | bytes                              |
  +----------------------------+----------+------------------------------------+


  fitness.elem
  ************

  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | Unnamed field 0       | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+

  
  { "block": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
  +-----------------------+----------+------------------------------------+
  | Name                  | Size     | Contents                           |
  +=======================+==========+====================================+
  | # bytes in next field | 4 bytes  | unsigned 30-bit big-endian integer |
  +-----------------------+----------+------------------------------------+
  | block                 | Variable | bytes                              |
  +-----------------------+----------+------------------------------------+


  

POST ../<block_id>/helpers/preapply/block?[sort]&[timestamp=<date>]

Simulate the validation of a block that would contain the given operations and return the resulting fitness and context hash.

Optional query arguments :

  • sort
  • timestamp = <date>

  { "protocol_data":
      { "protocol": "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK",
        "payload_hash": $value_hash,
        "payload_round": integer ∈ [-2^31-1, 2^31],
        "proof_of_work_nonce": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
        "seed_nonce_hash"?: $cycle_nonce,
        "liquidity_baking_toggle_vote": $alpha.liquidity_baking_vote,
        "adaptive_issuance_vote": $alpha.adaptive_issuance_vote,
        "signature": $Signature.V1 },
    "operations": [ [ $next_operation ... ] ... ] }
  $Context_hash:
    /* A hash of context (Base58Check-encoded) */
    $unistring
  $DAL_commitment:
    /* Commitment representation for the DAL (Base58Check-encoded) */
    $unistring
  $Ed25519.Public_key_hash:
    /* An Ed25519 public key hash (Base58Check-encoded) */
    $unistring
  $Operation_list_list_hash:
    /* A list of list of operations (Base58Check-encoded) */
    $unistring
  $Protocol_hash:
    /* A Tezos protocol ID (Base58Check-encoded) */
    $unistring
  $Signature.Public_key:
    /* A Ed25519, Secp256k1, or P256 public key (Base58Check-encoded) */
    $unistring
  $Signature.Public_key_hash:
    /* A Ed25519, Secp256k1, P256, or BLS public key hash
       (Base58Check-encoded) */
    $unistring
  $Signature.V1:
    /* A Ed25519, Secp256k1, P256 or BLS signature (Base58Check-encoded) */
    $unistring
  $Zk_rollup_hash:
    /* A zk rollup address (Base58Check-encoded) */
    $unistring
  $alpha.adaptive_issuance_vote: "on" || "off" || "pass"
  $alpha.block_header.alpha.full_header:
    /* Shell header
       Block header's shell-related content. It contains information such as
       the block level, its predecessor and timestamp. */
    { "level": integer ∈ [-2^31-1, 2^31],
      "proto": integer ∈ [0, 255],
      "predecessor": $block_hash,
      "timestamp": $timestamp.protocol,
      "validation_pass": integer ∈ [0, 255],
      "operations_hash": $Operation_list_list_hash,
      "fitness": $fitness,
      "context": $Context_hash,
      "payload_hash": $value_hash,
      "payload_round": integer ∈ [-2^31-1, 2^31],
      "proof_of_work_nonce": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
      "seed_nonce_hash"?: $cycle_nonce,
      "liquidity_baking_toggle_vote": $alpha.liquidity_baking_vote,
      "adaptive_issuance_vote": $alpha.adaptive_issuance_vote,
      "signature": $Signature.V1 }
  $alpha.contract_id:
    /* A contract handle
       A contract notation as given to an RPC or inside scripts. Can be a
       base58 implicit contract hash or a base58 originated contract hash. */
    $unistring
  $alpha.contract_id.originated:
    /* A contract handle -- originated account
       A contract notation as given to an RPC or inside scripts. Can be a
       base58 originated contract hash. */
    $unistring
  $alpha.entrypoint:
    /* entrypoint
       Named entrypoint to a Michelson smart contract */
    "default"
    || "root"
    || "do"
    || "set_delegate"
    || "remove_delegate"
    || "deposit"
    || "stake"
    || "unstake"
    || "finalize_unstake"
    || "set_delegate_parameters"
    || $unistring
    /* named */
  $alpha.inlined.attestation:
    /* An operation's shell header. */
    { "branch": $block_hash,
      "operations": $alpha.inlined.attestation_mempool.contents,
      "signature"?: $Signature.V1 }
  $alpha.inlined.attestation_mempool.contents:
    { /* Attestation */
      "kind": "attestation",
      "slot": integer ∈ [0, 2^16-1],
      "level": integer ∈ [0, 2^31],
      "round": integer ∈ [-2^31-1, 2^31],
      "block_payload_hash": $value_hash }
    || { /* Attestation_with_dal */
         "kind": "attestation_with_dal",
         "slot": integer ∈ [0, 2^16-1],
         "level": integer ∈ [0, 2^31],
         "round": integer ∈ [-2^31-1, 2^31],
         "block_payload_hash": $value_hash,
         "dal_attestation": $bignum }
  $alpha.inlined.preattestation:
    /* An operation's shell header. */
    { "branch": $block_hash,
      "operations": $alpha.inlined.preattestation.contents,
      "signature"?: $Signature.V1 }
  $alpha.inlined.preattestation.contents:
    { /* Preattestation */
      "kind": "preattestation",
      "slot": integer ∈ [0, 2^16-1],
      "level": integer ∈ [0, 2^31],
      "round": integer ∈ [-2^31-1, 2^31],
      "block_payload_hash": $value_hash }
  $alpha.liquidity_baking_vote: "on" || "off" || "pass"
  $alpha.michelson.v1.primitives:
    "SHA256"
    | "GT"
    | "RIGHT"
    | "SAPLING_EMPTY_STATE"
    | "False"
    | "RENAME"
    | "CAST"
    | "tx_rollup_l2_address"
    | "PACK"
    | "BYTES"
    | "timestamp"
    | "bls12_381_g2"
    | "Pair"
    | "IF_LEFT"
    | "contract"
    | "mutez"
    | "storage"
    | "PAIR"
    | "view"
    | "UNPACK"
    | "ADD"
    | "DROP"
    | "big_map"
    | "MUL"
    | "NAT"
    | "SELF"
    | "CONTRACT"
    | "CDR"
    | "SAPLING_VERIFY_UPDATE"
    | "pair"
    | "LSL"
    | "int"
    | "operation"
    | "SHA512"
    | "CREATE_ACCOUNT"
    | "BLAKE2B"
    | "SPLIT_TICKET"
    | "LEFT"
    | "never"
    | "unit"
    | "address"
    | "signature"
    | "CHAIN_ID"
    | "constant"
    | "SLICE"
    | "SENDER"
    | "IMPLICIT_ACCOUNT"
    | "key_hash"
    | "AMOUNT"
    | "CHECK_SIGNATURE"
    | "sapling_state"
    | "LT"
    | "EXEC"
    | "Elt"
    | "EMIT"
    | "NONE"
    | "CREATE_CONTRACT"
    | "LSR"
    | "SET_DELEGATE"
    | "OPEN_CHEST"
    | "TRANSFER_TOKENS"
    | "Some"
    | "parameter"
    | "set"
    | "bls12_381_fr"
    | "EDIV"
    | "None"
    | "STEPS_TO_QUOTA"
    | "key"
    | "ABS"
    | "list"
    | "NEVER"
    | "map"
    | "CAR"
    | "IF"
    | "GET_AND_UPDATE"
    | "CONCAT"
    | "LOOP"
    | "DIG"
    | "KECCAK"
    | "Lambda_rec"
    | "SOME"
    | "option"
    | "SUB"
    | "INT"
    | "PUSH"
    | "CONS"
    | "Unit"
    | "ISNAT"
    | "NEG"
    | "XOR"
    | "APPLY"
    | "UNPAIR"
    | "JOIN_TICKETS"
    | "SIZE"
    | "lambda"
    | "AND"
    | "NEQ"
    | "or"
    | "BALANCE"
    | "UNIT"
    | "VOTING_POWER"
    | "OR"
    | "LAMBDA"
    | "chest"
    | "LOOP_LEFT"
    | "True"
    | "Right"
    | "Ticket"
    | "HASH_KEY"
    | "DUG"
    | "sapling_transaction"
    | "SUB_MUTEZ"
    | "EMPTY_BIG_MAP"
    | "MEM"
    | "IF_NONE"
    | "nat"
    | "TOTAL_VOTING_POWER"
    | "LE"
    | "Left"
    | "chest_key"
    | "READ_TICKET"
    | "ticket"
    | "bls12_381_g1"
    | "LEVEL"
    | "VIEW"
    | "string"
    | "PAIRING_CHECK"
    | "LAMBDA_REC"
    | "NOW"
    | "SHA3"
    | "bool"
    | "MIN_BLOCK_TIME"
    | "GET"
    | "bytes"
    | "sapling_transaction_deprecated"
    | "NIL"
    | "IF_CONS"
    | "GE"
    | "NOT"
    | "SWAP"
    | "ITER"
    | "ADDRESS"
    | "TICKET"
    | "DUP"
    | "EMPTY_MAP"
    | "UPDATE"
    | "chain_id"
    | "TICKET_DEPRECATED"
    | "EMPTY_SET"
    | "FAILWITH"
    | "MAP"
    | "SOURCE"
    | "DIP"
    | "COMPARE"
    | "EQ"
    | "SELF_ADDRESS"
    | "code"
  $alpha.mutez: $positive_bignum
  $alpha.operation.alpha.contents:
    { /* Preattestation */
      "kind": "preattestation",
      "slot": integer ∈ [0, 2^16-1],
      "level": integer ∈ [0, 2^31],
      "round": integer ∈ [-2^31-1, 2^31],
      "block_payload_hash": $value_hash }
    || { /* Attestation */
         "kind": "attestation",
         "slot": integer ∈ [0, 2^16-1],
         "level": integer ∈ [0, 2^31],
         "round": integer ∈ [-2^31-1, 2^31],
         "block_payload_hash": $value_hash }
    || { /* Attestation_with_dal */
         "kind": "attestation_with_dal",
         "slot": integer ∈ [0, 2^16-1],
         "level": integer ∈ [0, 2^31],
         "round": integer ∈ [-2^31-1, 2^31],
         "block_payload_hash": $value_hash,
         "dal_attestation": $bignum }
    || { /* Double_preattestation_evidence */
         "kind": "double_preattestation_evidence",
         "op1": $alpha.inlined.preattestation,
         "op2": $alpha.inlined.preattestation }
    || { /* Double_attestation_evidence */
         "kind": "double_attestation_evidence",
         "op1": $alpha.inlined.attestation,
         "op2": $alpha.inlined.attestation }
    || { /* Seed_nonce_revelation */
         "kind": "seed_nonce_revelation",
         "level": integer ∈ [0, 2^31],
         "nonce": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
    || { /* Vdf_revelation */
         "kind": "vdf_revelation",
         "solution":
           [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/, /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ] }
    || { /* Double_baking_evidence */
         "kind": "double_baking_evidence",
         "bh1": $alpha.block_header.alpha.full_header,
         "bh2": $alpha.block_header.alpha.full_header }
    || { /* Activate_account */
         "kind": "activate_account",
         "pkh": $Ed25519.Public_key_hash,
         "secret": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
    || { /* Proposals */
         "kind": "proposals",
         "source": $Signature.Public_key_hash,
         "period": integer ∈ [-2^31-1, 2^31],
         "proposals": [ $Protocol_hash ... ] }
    || { /* Ballot */
         "kind": "ballot",
         "source": $Signature.Public_key_hash,
         "period": integer ∈ [-2^31-1, 2^31],
         "proposal": $Protocol_hash,
         "ballot": "nay" | "yay" | "pass" }
    || { /* Reveal */
         "kind": "reveal",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "public_key": $Signature.Public_key }
    || { /* Transaction */
         "kind": "transaction",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "amount": $alpha.mutez,
         "destination": $alpha.contract_id,
         "parameters"?: { "entrypoint": $alpha.entrypoint,
                          "value": any } }
    || { /* Origination */
         "kind": "origination",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "balance": $alpha.mutez,
         "delegate"?: $Signature.Public_key_hash,
         "script": $alpha.scripted.contracts }
    || { /* Delegation */
         "kind": "delegation",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "delegate"?: $Signature.Public_key_hash }
    || { /* Set_deposits_limit */
         "kind": "set_deposits_limit",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "limit"?: $alpha.mutez }
    || { /* Increase_paid_storage */
         "kind": "increase_paid_storage",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "amount": $bignum,
         "destination": $alpha.contract_id.originated }
    || { /* Update_consensus_key */
         "kind": "update_consensus_key",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "pk": $Signature.Public_key }
    || { /* Drain_delegate */
         "kind": "drain_delegate",
         "consensus_key": $Signature.Public_key_hash,
         "delegate": $Signature.Public_key_hash,
         "destination": $Signature.Public_key_hash }
    || { /* Failing_noop */
         "kind": "failing_noop",
         "arbitrary": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
    || { /* Register_global_constant */
         "kind": "register_global_constant",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "value": any }
    || { /* Transfer_ticket */
         "kind": "transfer_ticket",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "ticket_contents": any,
         "ticket_ty": any,
         "ticket_ticketer": $alpha.contract_id,
         "ticket_amount": $positive_bignum,
         "destination": $alpha.contract_id,
         "entrypoint": $unistring }
    || { /* Dal_publish_commitment */
         "kind": "dal_publish_commitment",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "slot_header":
           { "slot_index": integer ∈ [0, 255],
             "commitment": $DAL_commitment,
             "commitment_proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ } }
    || { /* Smart_rollup_originate */
         "kind": "smart_rollup_originate",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "pvm_kind": "wasm_2_0_0" | "arith" | "riscv",
         "kernel": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
         "parameters_ty": any,
         "whitelist"?: [ $Signature.Public_key_hash ... ] }
    || { /* Smart_rollup_add_messages */
         "kind": "smart_rollup_add_messages",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "message": [ /^([a-zA-Z0-9][a-zA-Z0-9])*$/ ... ] }
    || { /* Smart_rollup_cement */
         "kind": "smart_rollup_cement",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address }
    || { /* Smart_rollup_publish */
         "kind": "smart_rollup_publish",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "commitment":
           { "compressed_state": $smart_rollup_state_hash,
             "inbox_level": integer ∈ [0, 2^31],
             "predecessor": $smart_rollup_commitment_hash,
             "number_of_ticks": $int64 } }
    || { /* Smart_rollup_refute */
         "kind": "smart_rollup_refute",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "opponent": $Signature.Public_key_hash,
         "refutation":
           { /* Start */
             "refutation_kind": "start",
             "player_commitment_hash": $smart_rollup_commitment_hash,
             "opponent_commitment_hash": $smart_rollup_commitment_hash }
           || { /* Move */
                "refutation_kind": "move",
                "choice": $positive_bignum,
                "step":
                  [ { "state"?: $smart_rollup_state_hash,
                      "tick": $positive_bignum } ... ]
                  /* Dissection */
                  || { /* Proof */
                       "pvm_step": /^([a-zA-Z0-9][a-zA-Z0-9])*$/,
                       "input_proof"?:
                         { /* inbox proof */
                           "input_proof_kind": "inbox_proof",
                           "level": integer ∈ [0, 2^31],
                           "message_counter": $positive_bignum,
                           "serialized_proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
                         || { /* reveal proof */
                              "input_proof_kind": "reveal_proof",
                              "reveal_proof":
                                { /* raw data proof */
                                  "reveal_proof_kind": "raw_data_proof",
                                  "raw_data": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
                                || { /* metadata proof */
                                     "reveal_proof_kind": "metadata_proof" }
                                || { /* dal page proof */
                                     "reveal_proof_kind": "dal_page_proof",
                                     "dal_page_id":
                                       { "published_level":
                                           integer ∈ [0, 2^31],
                                         "slot_index": integer ∈ [0, 255],
                                         "page_index":
                                           integer ∈ [-2^15, 2^15-1] },
                                     "dal_proof":
                                       /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
                                || { /* dal parameters proof */
                                     "reveal_proof_kind":
                                       "dal_parameters_proof" } }
                         || { /* first input */
                              "input_proof_kind": "first_input" } } } }
    || { /* Smart_rollup_timeout */
         "kind": "smart_rollup_timeout",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "stakers":
           { "alice": $Signature.Public_key_hash,
             "bob": $Signature.Public_key_hash } }
    || { /* Smart_rollup_execute_outbox_message */
         "kind": "smart_rollup_execute_outbox_message",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "cemented_commitment": $smart_rollup_commitment_hash,
         "output_proof": /^([a-zA-Z0-9][a-zA-Z0-9])*$/ }
    || { /* Smart_rollup_recover_bond */
         "kind": "smart_rollup_recover_bond",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "rollup": $smart_rollup_address,
         "staker": $Signature.Public_key_hash }
    || { /* Zk_rollup_origination */
         "kind": "zk_rollup_origination",
         "source": $Signature.Public_key_hash,
         "fee": $alpha.mutez,
         "counter": $positive_bignum,
         "gas_limit": $positive_bignum,
         "storage_limit": $positive_bignum,
         "public_p