OJDE      !"#$%&'()*+,-./0123456789:;<=>?@ABCDNoneMFixed integers are stored in little-endian form without additional encoding. 1Signed integers are stored in a zz-encoded form. *A list that is stored in a packed format. A E F( used to select packed sequence encoding/ decoding.   fields use G and H& when encoding and decoding messages. Packed values. Lists of values. %Required fields. Parsing will return  if a $ value is not found while decoding. 7Optional fields. Values that are not found will return I. 5Functions for wrapping and unwrapping record fields. 5 When applied they will have types similar to these:   ::   (%  ) ->    ::   ->   (%  )   ::    (%   ) -> J     :: J    ->    (%   )   ::    (% K) -> [K]  :: [K] ->    (% K)   ::    (% ) -> []  :: [] ->    (% ) Extract a value from it's  representation. Wrap it back up again. 5An isomorphism lens compatible with the lens package 4To provide consistent instances for serialization a E F is needed to  make  fields have the same shape as ,  and  .  This is the  F with a L instance. MFields are merely a way to hold a field tag along with its type, this shouldn'#t normally be referenced directly. CThis provides better error messages than older versions which used  : is a newtype wrapped used to break overlapping instances " for encoding and decoding values : is a newtype wrapped used to break overlapping instances " for encoding and decoding values "": is a newtype wrapped used to break overlapping instances " for encoding and decoding values %% selects the normal/4typical way for encoding scalar (primitive) values. MIso:   (  n (  a)) = [a]  NIso:   (  n (% a)) = [a]  OIso:   ( n (  a)) = [a]  PIso:   ( n (% a)) = [a]  QIso:   ( n (  a)) = J a  RIso:   ( n (% a)) = J a  SIso:   ( n (  a)) = a  TIso:   ( n (% a)) = a  1  !"#$%&'MNOPQRSTU(  !"#$%&'   !"#$%&'MNOPQRSTUNone,4A representation of the wire format as described in   Fhttps://developers.google.com/protocol-buffers/docs/encoding#structure -For: fixed32, sfixed32, float .For: groups (deprecated) /For: groups (deprecated) 0>For: string, bytes, embedded messages, packed repeated fields 1For: fixed64, sfixed64, double 2>For: int32, int64, uint32, uint64, sint32, sint64, bool, enum 3Field identifiers \()*+,-./0123V4WXYZ[56789\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ()*+,-./0123V4YZ[56789T()*+,210/.-3V4WXYZ[56789\]^_`abcdefghijklmnopqrstuvwxyz{|}~None<#Encode a Protocol Buffers message. =YEncode a Protocol Buffers message prefixed with a zz-encoded 32-bit integer describing it' s length. Untyped message encoding :;<=:;<= :;<=None@#Decode a Protocol Buffers message. AYDecode a Protocol Buffers message prefixed with a zz-encoded 32-bit integer describing it' s length. IfoldMapM implemented in a way that defers using (mempty :: b) unless the G Foldable is empty, this allows the gross hack of pretending Always is 4 a Monoid while strictly evaluating the accumulator Untyped message decoding,  ? =   >?@A>?@A>?@ANoneB3The way to embed a message within another message. @ These embedded messages are stored as length-delimited fields.  For example:  data Inner = Inner  { innerField ::   (  )  } deriving (, L)   instance : Inner  instance > Inner  data Outer = Outer  { outerField ::   ( Inner)  } deriving (, L)   instance : Outer  instance > Outer Iso:   ( n (B a)) = [a]  Iso:   ( n (B a)) = J a  Iso:   ( n (B a)) = a  BCDBCDBCDNone0  !"#$%&'()*+,-./0123456789BCD03,210/.-54*+()6789%&' "#$ ! BCDNone %:;<=>?@AB:;<=>?@A % B !!"##$%&'()*+,--.//01&23'456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUSVWSXYSXZS[\S[]^_`Sabcdefghijklmnopqrstuvwxyz{|}~SVScde protobuf-0.1Data.ProtocolBuffersData.ProtocolBuffers.InternalData.ProtocolBuffers.TypesControl.AlternativeemptyData.TypeLevelD1 Data.TextTextD2Data.IntInt32D3D4 Data.WordWord64Data.Functor.IdentityIdentity Data.TaggedTaggedData.ProtocolBuffers.WireData.ProtocolBuffers.EncodeData.ProtocolBuffers.DecodeData.ProtocolBuffers.MessageRequiredValueInt64MessageFixedSigned PackedList unPackedList PackedFieldrunPackedField EnumerationrunEnumerationPackedRepeatedOptionalHasField FieldTypegetFieldputFieldfieldAlways runAlwaysFieldrunField RepeatedField runRepeated OptionalField runOptional RequiredField runRequiredrunValue DecodeWire decodeWire EncodeWire encodeWire WireField Fixed32FieldEndField StartFieldDelimitedField Fixed64Field VarintFieldTag getWireField wireFieldTag zzEncode32 zzEncode64 zzDecode32 zzDecode64Encodeencode encodeMessageencodeLengthPrefixedMessageDecodedecode decodeMessagedecodeLengthPrefixedMessage runMessagebaseData.Traversable TraversableGHC.BaseFunctorGHC.EnumfromEnumtoEnum Data.MaybeNothingMaybeghc-prim GHC.TypesDoubleGHC.ShowShow$fHasFieldField$fHasFieldField0$fHasFieldField1$fHasFieldField2$fHasFieldField3$fHasFieldField4$fHasFieldField5$fHasFieldField6$fMonoidAlwaysgetVarintPrefixedBS putWireField putWireTag getVarInt putVarSInt putVarUInt$fDecodeWireEnumeration$fDecodeWireEnumeration0$fEncodeWireEnumeration$fDecodeWirePackedList$fEncodeWirePackedList$fDecodeWirePackedList0$fEncodeWirePackedList0$fDecodeWirePackedList1$fEncodeWirePackedList1$fDecodeWirePackedList2$fEncodeWirePackedList2$fDecodeWirePackedList3$fEncodeWirePackedList3$fDecodeWirePackedList4$fEncodeWirePackedList4$fDecodeWirePackedList5$fEncodeWirePackedList5$fDecodeWirePackedList6$fEncodeWirePackedList6$fDecodeWirePackedList7$fEncodeWirePackedList7$fDecodeWirePackedList8$fEncodeWirePackedList8$fDecodeWirePackedList9$fEncodeWirePackedList9$fDecodeWirePackedList10$fEncodeWirePackedList10$fDecodeWirePackedList11$fEncodeWirePackedList11$fDecodeWireText$fEncodeWireText$fDecodeWire[]$fEncodeWire[]$fDecodeWireByteString$fEncodeWireByteString$fDecodeWireDouble$fEncodeWireDouble$fDecodeWireFloat$fEncodeWireFloat$fDecodeWireBool$fEncodeWireBool$fDecodeWireFixed$fEncodeWireFixed$fDecodeWireFixed0$fEncodeWireFixed0$fDecodeWireFixed1$fEncodeWireFixed1$fDecodeWireFixed2$fEncodeWireFixed2$fDecodeWireSigned$fEncodeWireSigned$fDecodeWireSigned0$fEncodeWireSigned0$fDecodeWireWord64$fEncodeWireWord64$fDecodeWireWord32$fEncodeWireWord32$fDecodeWireInt64$fEncodeWireInt64$fDecodeWireInt32$fEncodeWireInt32$fDecodeWireMaybe$fEncodeWireMaybe$fDecodeWireValue$fEncodeWireValue$fDecodeWireWireField$fEncodeWireWireField$fEncodeWire[]0$fEncodeHashMapGEncodegencode $fGEncodeK1 $fGEncode:+: $fGEncode:*: $fGEncodeM1foldMapM$fDecodeHashMapidGDecodegdecode fieldDecode $fGDecodeK1 $fGDecodeK10 $fGDecodeK11 $fGDecodeK12 $fGDecodeK13 $fGDecodeK14 $fGDecode:+: $fGDecode:*: $fGDecodeM1 GHC.GenericsGenericGMessageNFDatagrnfGMessageMonoidgmemptygmappend$fDecodeWireMessage $fEncodeWiref$fGMessageNFDataU1$fGMessageNFDataK1$fGMessageNFData:+:$fGMessageNFData:*:$fGMessageNFDataM1$fNFDataMessage$fGMessageMonoidU1$fGMessageMonoidK1$fGMessageMonoid:+:$fGMessageMonoid:*:$fGMessageMonoidM1$fMonoidMessage