h$2-      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~"Lennart Kolmodin, Galois Inc. 2009BSD3-style (see LICENSE)"Trevor Elliott Noneg5cereal.The Get monad is an Exception and State monad.cerealThe result of a parse.cerealThe parse failed. The 0 is the message describing the error, if any.cerealSupply this continuation with more input so that the parser can resume. To indicate that no more input is available, use an  string.cerealThe parse succeeded. The  is the input that had not yet been consumed (if any) when the parse succeeded.cerealRun the Get monad applies a %-based parser on the input ByteStringcerealRun the get monad on a single chunk, providing an optional length for the remaining, unseen input, with Nothing indicating that it's not clear how much input is left. For example, with a lazy ByteString, the optional length represents the sum of the lengths of all remaining chunks.cerealRun the Get monad applies a %-based parser on the input ByteString cerealRun the Get monad applies a -based parser on the input ByteString, starting at the specified offset. In addition to the result of get it returns the rest of the input. cerealRun the Get monad over a Lazy ByteString. Note that this will not run the Get parser lazily, but will operate on lazy ByteStrings. cerealRun the Get monad over a Lazy ByteString. Note that this does not run the Get parser lazily, but will operate on lazy ByteStrings. cereal If at least n bytes of input are available, return the current input, otherwise fail. cerealIsolate an action to operating within a fixed block of bytes. The action is required to consume all the bytes that it is isolated to.cereal Skip ahead n bytes. Fails if fewer than n bytes are available.cerealSkip ahead up to n bytes in the current chunk. No error if there aren't enough bytes, or if less than n bytes are skipped.cerealRun ga4, but return without consuming its input. Fails if ga fails.cerealLike , but consume the input if gma returns 'Just _'. Fails if gma fails.cerealLike , but consume the input if gea returns 'Right _'. Fails if gea fails.cerealGet the next up to n bytes as a ByteString until end of this chunk, without consuming them.cerealGet the number of remaining unparsed bytes. Useful for checking whether all input has been consumed.WARNING: when run with  runGetPartial, remaining will only return the number of bytes that are remaining in the current input.cereal)Test whether all input has been consumed.WARNING: when run with  runGetPartial, isEmpty will only tell you if you're at the end of the current chunk.cereal An efficient 5 method for strict ByteStrings. Fails if fewer than n bytes are left in the input. This function creates a fresh copy of the underlying bytes.cerealPull n. bytes from the input, as a strict ByteString.cereal Read a Int8 from the monad statecereal!Read a Int16 in big endian formatcereal$Read a Int16 in little endian formatcereal!Read a Int32 in big endian formatcereal$Read a Int32 in little endian formatcereal!Read a Int64 in big endian format cereal$Read a Int64 in little endian format!cereal!Read a Word8 from the monad state"cereal"Read a Word16 in big endian format#cereal%Read a Word16 in little endian format$cereal"Read a Word32 in big endian format%cereal%Read a Word32 in little endian format&cereal"Read a Word64 in big endian format'cereal%Read a Word64 in little endian format(cerealO(1). Read a single native machine word. The word is read in host order, host endian form, for the machine you're on. On a 64 bit machine the Word is an 8 byte value, on a 32 bit machine, 4 bytes.)cerealO(1).? Read a 2 byte Word16 in native host order and host endianness.*cerealO(1).8 Read a Word32 in native host order and host endianness.+cerealO(1).8 Read a Word64 in native host order and host endianness.-cerealGet a list in the following format: Word64 (big endian format) element 1 ... element n.cerealGet an IArray in the following format: index (lower bound) index (upper bound) Word64 (big endian format) element 1 ... element n/cerealGet a sequence in the following format: Word64 (big endian format) element 1 ... element n0cerealRead as a list of lists.1cereal+Read as a list of pairs of key and element.2cereal+Read as a list of pairs of int and element.3cerealRead as a list of elements.4cerealRead as a list of ints.5cerealRead in a Maybe in the following format: Word8 (0 for Nothing, anything else for Just) element (when Just)6cerealRead an Either, in the following format: Word8 (0 for Left, anything else for Right) element a when 0, element b otherwise7cerealRead in a length and then read a nested structure of that length.8cereal-Get the number of bytes read up to this point9  !"#$%&'()*+,-./0123456789  8!"$&#%' ()*+,-.0/1234567"Lennart Kolmodin, Galois Inc. 2009BSD3-style (see LICENSE)"Trevor Elliott  Safe-Inferred>%"CcerealNone 9>?, cereal%If your compiler has support for the  DeriveGeneric and DefaultSignatures language extensions ( ghc >= 7.2.1), the  and 4 methods will have default generic implementations.!To use this option, simply add a  deriving ( clause to your datatype and declare a 2 instance for it without giving a definition for  and .cereal Encode a value in the Put monad.cerealDecode a value in the Get monadcerealEncode a value using binary serialization to a strict ByteString.cereal?Encode a value using binary serialization to a lazy ByteString.cerealDecode a value from a strict ByteString, reconstructing the original structure.cerealDecode a value from a lazy ByteString, reconstructing the original structure.cerealPerform an action, failing if the read result does not match the argument provided.cerealAlways fails to serializecerealAlways fails to deserialize  !"#$%&'()*+,-./012345678BCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrsyz{|}~       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIHJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~%cereal-0.5.8.2-5UJXaPWD8cs9Tpo4Yvc2XhData.Serialize.GetData.Serialize.PutData.Serialize.IEEE754Data.SerializeGetResultFailPartialDonelabelrunGet runGetChunk runGetPartial runGetState runGetLazyrunGetLazyStateensureisolateskip uncheckedSkip lookAhead lookAheadM lookAheadEuncheckedLookAhead remainingisEmpty getByteStringgetLazyByteStringgetShortByteStringgetBytesgetInt8 getInt16be getInt16le getInt32be getInt32le getInt64be getInt64legetWord8 getWord16be getWord16le getWord32be getWord32le getWord64be getWord64le getWordhost getWord16host getWord32host getWord64hostgetTwoOf getListOf getIArrayOfgetSeqOf getTreeOfgetMapOf getIntMapOfgetSetOf getIntSetOf getMaybeOf getEitherOf getNested bytesRead$fFunctorResult $fShowResult$fMonadPlusGet$fMonadFailGet $fMonadGet$fAlternativeGet$fApplicativeGet $fFunctorGet$fEqMorePutterPutPutMunPut putBuilderexecPutrunPutrunPutM runPutLazy runPutMLazyrunPutMBuilderflushputWord8putInt8 putByteStringputShortByteStringputLazyByteString putWord16be putWord16le putWord32be putWord32le putWord64be putWord64le putWordhost putWord16host putWord32host putWord64host putInt16be putInt16le putInt32be putInt32le putInt64be putInt64le putInthost putInt16host putInt32host putInt64hostputTwoOf putListOf putIArrayOfputSeqOf putTreeOfputMapOf putIntMapOfputSetOf putIntSetOf putMaybeOf putEitherOf putNested $fMonoidPutM$fSemigroupPutM $fMonadPutM$fApplicativePutM $fFunctorPutM getFloat32le getFloat32be getFloat64le getFloat64be putFloat32le putFloat32be putFloat64le putFloat64be GSerializeGetgGet GSerializePutgPut Serializeputgetencode encodeLazydecode decodeLazyexpect$fGSerializePut:*:$fGSerializePutV1$fGSerializePutU1$fGSerializePutM1$fGSerializeGet:*:$fGSerializeGetV1$fGSerializeGetU1$fGSerializeGetM1$fGSerializeGetK1$fGSerializePutK1$fSerializeUArray$fSerializeArray$fSerializeTree$fSerializeFloat$fSerializeDouble$fSerializeSeq$fSerializeIntMap$fSerializeIntSet$fSerializeMap$fSerializeSet$fSerializeShortByteString$fSerializeByteString$fSerializeByteString0$fSerializeEither$fSerializeMaybe $fSerialize[]$fSerializeLast$fSerializeFirst$fSerializeProduct$fSerializeSum$fSerializeAny$fSerializeAll$fSerializeDual$fSerialize(,,,,,,,,,)$fSerialize(,,,,,,,,)$fSerialize(,,,,,,,)$fSerialize(,,,,,,)$fSerialize(,,,,,)$fSerialize(,,,,)$fSerialize(,,,)$fSerialize(,,)$fSerialize(,)$fSerializeChar$fSerializeNatural$fSerializeRatio$fSerializeInteger$fSerializeInt$fSerializeWord$fSerializeInt64$fSerializeInt32$fSerializeInt16$fSerializeInt8$fSerializeWord64$fSerializeWord32$fSerializeWord16$fSerializeWord8$fSerializeOrdering$fSerializeBool $fSerialize() $fPutSumM1 $fPutSum:+: $fGetSumM1 $fGetSum:+: $fSumSizeM1 $fSumSize:+:$fGSerializeGet:+:$fGSerializePut:+:baseGHC.BaseStringbytestring-0.10.10.0Data.ByteStringemptyData.ByteString.Internal ByteString Data.ByteString.Builder.InternalBuilder GHC.GenericsGeneric