úÎ!´>¨tĪ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĸŖ¤Ĩϧ¨ŠĒĢŦ­Ž¯°ą˛ŗ´ĩšēģŧŊžŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎ"Lennart Kolmodin, Galois Inc. 2009BSD3-style (see LICENSE)"Trevor Elliott <trevor@galois.com> Portability :NoneDQV[%7Īcereal!Have we read all available input?cereal.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.cereal‚Supply 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 ŌU 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 ByteStringcereal˙Run 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. Additional to the result of get it returns the number of consumed bytes and the rest of the input.ÔcerealRun the Get monad applies a ĶĢ-based parser on the input ByteString. Additional to the result of get it returns the number of consumed bytes and the rest of the input, even in the event of a failure. cereal„Run the Get monad over a Lazy ByteString. Note that this will not run the Get parser lazily, but will operate on lazy ByteStrings. cereal„Run 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 nK bytes of input are available, return the current input, otherwise fail. cereal‰Isolate 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 nU 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 nH bytes as a ByteString until end of this chunk, without consuming them.cerealfGet the number of remaining unparsed bytes. Useful for checking whether all input has been consumed.WARNING: when run with  runGetPartialZ, 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  runGetPartialH, 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 nZ 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.-cerealbGet a list in the following format: Word64 (big endian format) element 1 ... element n.cereal“Get an IArray in the following format: index (lower bound) index (upper bound) Word64 (big endian format) element 1 ... element n/cerealfGet 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.5cerealpRead in a Maybe in the following format: Word8 (0 for Nothing, anything else for Just) element (when Just)6cereal€Read an Either, in the following format: Word8 (0 for Left, anything else for Right) element a when 0, element b otherwise7cerealDRead 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 <trevor@galois.com> Portability :Safe;=1"Ccereal<Put merely lifts Builder into a Writer monad, applied to ().Dcereal@The PutM type. A Writer monad over the efficient Builder monoid.HcerealRun the C monadIcerealRun the C monad with a serialiserJcerealRun the C+ monad with a serialiser and get its resultKcerealRun the C monad with a serialiserLcerealRun the C monad with a serialiserMcerealRun the C) monad and get the result and underlying ÕNcerealfPop the ByteString we have constructed so far, if any, yielding a new chunk in the result ByteString.Ocereal/Efficiently write a byte into the output bufferPcereal/Efficiently write an int into the output bufferQcereal•An efficient primitive to write a strict ByteString into the output buffer. It flushes the current buffer, and writes the argument into a new chunk.ScerealfWrite a lazy ByteString efficiently, simply appending the lazy ByteString chunks to the output bufferTcereal#Write a Word16 in big endian formatUcereal&Write a Word16 in little endian formatVcereal#Write a Word32 in big endian formatWcereal&Write a Word32 in little endian formatXcereal#Write a Word64 in big endian formatYcereal&Write a Word64 in little endian formatZcerealO(1).˙0 Write a single native machine word. The word is written 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. Values written this way are not portable to different endian or word sized machines, without conversion.[cerealO(1).V Write a Word16 in native host order and host endianness. For portability issues see  putWordhost.\cerealO(1).V Write a Word32 in native host order and host endianness. For portability issues see  putWordhost.]cerealO(1).‹ Write a Word64 in native host order On a 32 bit machine we write two host order Word32s, in big endian form. For portability issues see  putWordhost.^cereal"Write a Int16 in big endian format_cereal%Write a Int16 in little endian format`cereal"Write a Int32 in big endian formatacereal%Write a Int32 in little endian formatbcereal"Write a Int64 in big endian formatccereal%Write a Int64 in little endian formatdcerealO(1).˙, Write a single native machine int. The int is written in host order, host endian form, for the machine you're on. On a 64 bit machine the Int is an 8 byte value, on a 32 bit machine, 4 bytes. Values written this way are not portable to different endian or int sized machines, without conversion.ecerealO(1).U Write a Int16 in native host order and host endianness. For portability issues see  putInthost.fcerealO(1).U Write a Int32 in native host order and host endianness. For portability issues see  putInthost.gcerealO(1).‰ Write a Int64 in native host order On a 32 bit machine we write two host order Int32s, in big endian form. For portability issues see  putInthost.scereal]Put a nested structure by first putting a length field and then putting the encoded value.2BCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrs2CDEFBIJKLMGHNOPQSRTVX^`bUWY_acZ[\]defghijklmnopqrsNone<V•ˇycereal-Read a Float in little endian IEEE-754 formatzcereal*Read a Float in big endian IEEE-754 format{cereal.Read a Double in little endian IEEE-754 format|cereal+Read a Double in big endian IEEE-754 format}cereal.Write a Float in little endian IEEE-754 format~cereal+Write a Float in big endian IEEE-754 formatcereal/Write a Double in little endian IEEE-754 format€cereal,Write a Double in big endian IEEE-754 formatyz{|}~€yz{|}~€"Lennart Kolmodin, Galois Inc. 2009BSD3-style (see LICENSE)"Trevor Elliott <trevor@galois.com> Portability :None 7;<=FSTVĻD …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 monadˆcerealAEncode a value using binary serialization to a strict ByteString.‰cereal?Encode a value using binary serialization to a lazy ByteString.ŠcerealPDecode a value from a strict ByteString, reconstructing the original structure.‹cerealNDecode a value from a lazy ByteString, reconstructing the original structure.ŒcerealVPerform an action, failing if the read result does not match the argument provided.ŽcerealAlways fails to serialize’cerealAlways fails to deserialize  !"#$%&'()*+,-./012345678BCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrsyz{|}~€‚ƒ„…‡†ˆ‰Š‹Œ …‡†ˆ‰Š‹Œƒ„‚×      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIHJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĸŖ¤Ĩϧ¨ŠĒĢŦ­Ž¯°ą˛ŗ´ĩšēģŧŊžŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎĪĐŅŌĶÔÕÖרŲ×ÚÛ‹Ü×ŨŪÔßāá%cereal-0.5.7.0-49LByqUPqEFKjQY7PPLwySData.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$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:+:MorebaseGHC.BaseStringbytestring-0.10.8.2Data.ByteStringemptyData.ByteString.Internal ByteString runGetState' Data.ByteString.Builder.InternalBuilder GHC.GenericsGeneric