### A schedule names Raptor (RFC 5053), the code MBMS download uses

- **The code** ([extensions/carousel.md](extensions/carousel.md) §4.1, §5.5): an entry's `fec` may be `raptor` (FEC
  Encoding ID 1), with RFC 5053's F, T, Z, N and Al. They are held to its fields and to its block sizes: from 4 source
  symbols, the fewest its §5.7 indexes, to 8,192, with ESIs in 16 bits. A receiver of 3GPP MBMS download supports the
  code (TS 26.346 §7.2.2), so a schedule of such a session can state what is sent.
- **What is held** (carousel §5.3, §6.3, §7): RFC 5053 states no bound on a decoder's failure, and an independent
  implementation of it failed on 14 to 31 blocks in 100 at *K* + 2. So a Raptor block is held at *K* and a margin this
  text sets by measurement, 8, 16 or 28 symbols at overhead 0, 1 or 2, and `failure_one_in` is `null`. `tests/carousel.rs`
  decodes each Raptor object a case holds available with that implementation, a development dependency, from what a
  receiver within the case's loss bound holds, and holds a fixed sample of decoders to the measurement.
- **`no-code` stays the default** (carousel §11), where the IETF's disclosures on RFC 5053 stay stated for implementers.
- **Breaking:** `record:corpus:wai/live-conformance/carousel/vectors.json`: the case `fec_unknown` named `raptor`, which is
  now a code, and names `lt` instead. A verifier takes `raptor` as a code at jwp-receipts §3.1 step 2.
- **Breaking:** `api:rust:wai::claim_receipt::Fec::Raptor`, `api:rust:wai::claim_receipt::Oti::Raptor`,
  `api:rust:wai::claim_receipt::schedule::Fec::Raptor` and `api:rust:wai::claim_receipt::schedule::Oti::Raptor`: the new
  code. A match over either enum takes the new arm.
