# Molecule Union as Size Header ## Metadata **Status**:: #x **Zettel**:: #zettel/fleeting **Created**:: [[2024-03-07]] ## Synopsis [※ Discord](https://discord.com/channels/657799690070523914/980237827122032730/1214879969810059314) ``` array Uint48 <byte; 6>; array Hash32 <byte; 32>; struct Unspent { txHash: HexString, // 32 bytes ownedQuantity: byte, // 1 byte } array Unspents<T> [byte; <T>]; // Variant parametric to T struct ReceiptData<T> { depositAmount: Uint48, // 6 bytes depositQuantity: byte, // 1 byte ownedQuantity: byte, // 1 byte unspents: Unspents<T>, // 33 * T bytes } union ReceiptData { ReceiptData<0>, ReceiptData<1>, ... ReceiptData<255>, } ```