fact: Definition WrapDecoder {A B C} (f: forall n, ByteBuffer.t n -> option (A * B * C)) := fun (bs: bytes) => match f _ (projT2 bs) with | Some pkt => Some (fst (fst pkt)) | None => None end.
imports: BinNat Coq.Lists.List Bedrock.Word Fiat.Common.EnumType Fiat.Narcissus.Formats.ByteBuffer Fiat.Narcissus.Examples.NetworkStack.IPv4Header Fiat.Narcissus.Examples.NetworkStack.UDP_Packet Fiat.Narcissus.Examples.NetworkStack.TCP_Packet