! f      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  None*"#&',.1245678=>?@ACFHJMPRSUVX_`g      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789 None*"#&',.1245678=>?@ACFHJMPRSUVX_`g!p:ptrRadix ptrNumber : None*"#&',.1245678=>?@ACFHJMPRSUVX_`g";<= (c) 2010 Simon Meier Original serialization code from 'Data.Binary.Builder': (c) Lennart Kolmodin, Ross Patterson BSD3-styleNone+"#&',.1245678=>?@ACFHJMPRSUVX_`g+G>ptrRight-shift of a f.?ptrRight-shift of a h.@ptrRight-shift of a i.AptrRight-shift of a j.Bptr6Select an implementation depending on the bit-size of fms. Currently, it produces a runtime failure if the bitsize is different. This is detected by the testsuite.>?@ABNone+"#&',.1245678=>?@ACFHJMPRSUVX_`g0ptrBig-endian word of 2 bytes.ptrLittle-endian word of 2 bytes.ptrBig-endian word of 4 bytes.ptrLittle-endian word of 4 bytes.ptrBig-endian word of 8 bytes.ptrLittle-endian word of 8 bytes.ptrAllocate a new byte array with memcpy.  None*"#&',.1245678=>?@ACFHJMPRSUVX_`g3{CptrUnsigned ASCII integral DEFCGNone*"#&',.1245678=>?@ACFHJMPRSUVX_`g<ptr7A codec, which encodes and decodes the same type. E.g., pword8AndWord32 :: InvPokeAndPeek (Word8, Word32) word8AndWord32 = (,) <$> lmap fst word8 <*> lmap snd beWord32ptr6Encoder and decoder of the same binary representation.vYou can compose both the covariant and contravariant parameters of PokeAndPeek using Applicative and Profunctor. E.g., }word8AndWord32 :: PokeAndPeek (Word8, Word32) (Word8, Word32) word8AndWord32 = (,) <$> lmap fst word8 <*> lmap snd beWord32   None*"#&',.1245678=>?@ACFHJMPRSUVX_`g?$ptrCSpecification of a sized and errorless writing action to a pointer.$%&'()*+,-./012$%&'()*+,-./012None*"#&',.1245678=>?@ACFHJMPRSUVX_`gG5ptrTAn efficiently composable unmaterialised specification of how to populate a pointer.Once composed it can be materialized into a specific data-structure like ByteString or to directly populate a pointer in some low-level API.6ptr-Amount of bytes the encoded data will occupy.GException-free action, which populates the pointer to the encoded data.CptrUnsigned ASCII integral 56789:;<=>?@ABCDEFGHI56789:;<=>?@ABCDEFGHINone*"#&',.1245678=>?@ACFHJMPRSUVX_`gLMptrUnbound parser, whose peeking action decides how much input to consume, and merely informs the executor about how many bytes it consumed.\ptr*Unsigned integral number encoded in ASCII.MNOPQRSTUVWXYZ[\MNOPQRSTUVWXYZ[\None*"#&',.1245678=>?@ACFHJMPRSUVX_`gPgptrVDecode the remaining bytes, whithout moving the parser's cursor. Useful for debugging.sptr*Unsigned integral number encoded in ASCII.`abcdefghijklmnopqrs`abcdefghijklmnopqrsNone*"#&',.1245678=>?@ACFHJMPRSUVX_`g\TptrGiven the length of the data and a specification of its sequential consumption, produces Peek, which results in Just the successfully taken value, or Nothing, if the specified length of data wasn't enough.ptrGiven the length of the data and a specification of its sequential consumption, produces Peek, which results in Just the successfully taken value, or Nothing, if the specified length of data wasn't enough.ptrBA standard idiom, where a header specifies the length of the body.ZProduces Peek, which itself produces another Peek, which is the same as the result of the  function. z{|}~ z{|}~None*"#&',.1245678=>?@ACFHJMPRSUVX_`gdMptrEA wrapper of a receiving action, which extends it with bufferization.Hptr\Exception-free action to receive another chunk of bytes. E.g., an exception-free wrapper of Network.Socket.recvBufBufferSize of the buffer Chunk sizeptrTReceive as many bytes as is required by the provided decoder and decode immediately.!If all you need is just to get a  chunk then use the  decoder. None*"#&',.1245678=>?@ACFHJMPRSUVX_`geI !"#$%&&'()*+,-./0122'()*+,-.3456789::;<'()*+,-.=3>4?@A7BCDEFFGH3'+,-.IJKLMNOPQRRGHS3TU'+,-.VIJKLMNWXYZ[\]]'+,-.^3_`abcdef g _ fhijklmhnohnphqrhsthuvhuwhixhiykz{h|}h~kzhihhiklhhhhhihhhhhhhhhhhhkkkhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhihihihihhhhhhhhhhhhhhhhihihihhhhhhhhkkkkkkkkhhhhhhhhhhhhhhhhhhhhhhhhhhhhh h h h h h h h h hhhhhGhhhihihihi hi!hi"h#$h#%h#&h#'h#;h#<h#(h#)h#*h#+h#,h#-h#.h#/h#0h#1h#2h34h35h36h37h38h9:hi;hi<hi=hi>hi?hi@hiAhiBkCDkCEkCFkCGkCHkCIkCJhKLhKMhKNhKOPQRhSThSUhSVkCWkCXkCYkCZh[h\kl]hq^kC_kC`habhachadhaehfghfhhijhikhilkCmkCnhophqrhsth|uh|vh|wh|xh|yh|zh|{h||h|}h|~h|hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh h h h h hhhhhhhhhhhhhhhh !h "h #h $h%&h%'h()h*+h*,h-.h-/h-0h12h13h14h15h67h68h69h6:h6;h6<h6=h6>h6?h@AhBChBDhBEhBFhGHhGIhGJhKLhKMhNhOhPhQhRhShThUhVhWhXhYhZh[h\]h\^h\_h\`h\`h\ah\bh~ch~dh~eh~fh~gh~hh~ih~jh~kh~lh~mh~nh3oh3ph3qh3rh3sh3thuvhuwhuxhuyhuzhu{hu|hu}hu}hu~hhhhhhhhhhhhhhhhhhhhhhhhhhhhhshshshshshshshshshshshshhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh h h h h hhhhhhhhhhhhhhhhhhh h!h"h#h$h%h&h'h(h)h*h+h+h,h-h.h/h0h1h2h3h4h5h6h7h8h9h9h:h:h;h<h=h>h?h@h@hABhAChADhAEhAFhAGhAHhAIhAJhAKhALhAMhANhAOhAPhQRhQShQThQUhQVhQWhQXhQYhQZhQ[hQ\hQ]hQ^hQ_hQ`hQahQbhQchQdhQehQfhQghhihhjhhkhhlhhmhhnhhohhphhqhhrhhshtuhtvhtwhtxhtyhtzht{ht|ht}ht~hthhhhhh|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|h|hhhhhhhhhhhhohohohohohohohohohohohhhhhhhhhhhhhhhhhhhh|h|h|h|h|h|h|h|h|h|hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh h h h h hhhhhhhhh#h#h#h#h#h#h#h#h#h#h# h#!h#"h##h#$h#%h#&h#'h#(h#)h*+h*+h*,h-.h-/h-0h-0h-1h-2h-2h-3h-4h-4h-5h-6h-6h-7h-8h-8h-9h-:h-:h-;h-<h=>h?@h?Ah?Bh?Ch?Dh?Eh?Fh?Gh?Hh?Ih?Jh?Kh?Lh?Mh?Nh?Oh?Ph?Qh?Rh?Sh?Th?Uh?Vh?Wh?Xh?Yh?Zh?[h?\h?]h?^h?_h?`h?ah?bh?ch?dh?eh?fh?gh?hh?ih?jh?kh?lh?mh?nh?oh?ph?qh?rh?sh?th?uh?vh?whxyhxzhx{hx|hx}h~h~h~h~hihihihihihihihihhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhfh=hqhqhqhqhfhfhfhfhfhfhfhfhfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhahahahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh h h h h hhhhhhhhhhhhshhhhh h!h"h#h$h%h&h'h(h)h*h+h,h-h.h/h0h1h2h3h4h5h6h7h8h9h:h;<h=>h=?h=@hABhAChADhAEhFhGhHhIhJhKhLhMhNhOhPQhRhShThUhVhWhXhnYhnZhn[hn\hn]hn^hn_hn`hnahnbhnchndhnehnfhnghnhhnihnjhnkhnlhnmhnnhnohnphnqhnrhnshnthnuhnvhwxhwyhwzhw{hw|hw}hw~hwhwhuhuhuhhhhhhhhhhhhhhhihihihihihihihihihihihihihihihihihihihihihihihihihihihihhhh-hhkkk                   !"#"$"%"&"'"(")"*"+",","-"."/010203040506070808090:0;<=<>?@ABACADEFEFEGEHIJKLKMNONPNQNRSTSUSVSWSXSYSZS[S\]^_`_a_b_c_d e f g f h i j k lmnopqdr#ptr-0.16.7.1-82GglLaNCtsIYRpURKZVsuPtr.IOPtr.PokeAndPeekPtr.Poke Ptr.PokingPtr.ParseUnbound Ptr.ParsePtr.Peek Ptr.ReceivePtr.ByteString Ptr.PreludePtr.ListPtr.Receive.CorePtr.UncheckedShifting Ptr.PokeIO peekStorable peekWord8 peekBEWord16 peekLEWord16 peekBEWord32 peekLEWord32 peekBEWord64 peekLEWord64 peekBytespeekShortByteString!peekNullTerminatedShortByteString pokeStorable pokeWord8 pokeWord8Off pokeBEWord16 pokeBEWord32 pokeBEWord64 pokeLEWord16 pokeLEWord32 pokeLEWord64pokeBytesTrimming pokeBytesInvPokeAndPeek PokeAndPeekword8leWord16leWord32leWord64beWord16beWord32beWord64bytes$fApplicativePokeAndPeek$fFunctorPokeAndPeek$fProfunctorPokeAndPeekPoke pokeAndPeek asciiChar asciiDigit asciiHexDigitvector$fDivisiblePoke$fContravariantPokePokingnulllengthpoke asciiIntegralasciiPaddedAndTrimmedIntegralasciiUtcTimeInIso8601listintercalateVector$fIsStringPoking$fMonoidPoking$fSemigroupPoking ParseUnboundfailionullTerminatedBytesnullTerminatedShortByteString bytesWhile skipWhile foldWhileunsignedASCIIIntegral$fMonadParseUnbound$fApplicativeParseUnbound$fFunctorParseUnboundParsemapInIOlimitingpeekRemaindersallBytes$fMonadIOParse$fMonadPlusParse $fMonadParse$fAlternativeParse$fApplicativeParse$fFunctorParsePeekshortByteStringparse parseUnboundpeekAmountAndParse$fApplicativePeek $fFunctorPeekReceivecreatepeekpokingbaseGHC.Base++ghc-primGHC.PrimseqGHC.Listfilterzip GHC.Stable newStablePtr System.IOprint Data.Tuplefstsnd otherwiseassert GHC.MagiclazyGHC.IO.Exception assertError Debug.TracetraceinlinemapGHC.Exts groupWith$coerceGHC.Real fromIntegral realToFrac Control.Monadguard Data.DynamictoDynjoinGHC.EnumBoundedminBoundmaxBoundEnumenumFrom enumFromThenenumFromThenTo enumFromTofromEnumtoEnumsuccpred GHC.ClassesEq==/= GHC.FloatFloatingpiexplogsqrt**logBasesincostanasinacosatansinhcoshtanhasinhacoshatanhlog1pexpm1log1pexplog1mexp Fractional fromRational/recipIntegral toIntegerquotremdivmodquotRemdivModMonad>>=>>return Data.DataDatagfoldlgunfoldtoConstr dataTypeOf dataCast1 dataCast2gmapTgmapQlgmapQrgmapQgmapQigmapMgmapMpgmapMoFunctorfmap<$GHC.NumNum+*-negate fromIntegerabssignumOrd>=minmax><compare<=GHC.ReadRead readsPrecreadListreadPrec readListPrecReal toRational RealFloat floatRadix floatDigits floatRange decodeFloat encodeFloatexponent significand scaleFloatisNaN isInfiniteisDenormalizedisNegativeZeroisIEEEatan2RealFracproperFractiontruncateroundceilingfloorGHC.ShowShow showsPrecshowshowListGHC.ArrIxrangeindexinRange rangeSizeData.Typeable.InternalTypeableControl.Monad.FixMonadFixmfixControl.Monad.Fail MonadFail Data.StringIsString fromString Applicativepure<*>*>liftA2<* Data.FoldableFoldabletoListfoldrfoldMapfoldlfoldl'foldl1sumproductfoldr1maximumminimumelemfoldfoldr'Data.Traversable TraversabletraversemapM sequenceAsequence GHC.GenericsGeneric Semigroup<>sconcatstimesMonoidmemptymappendmconcat GHC.TypesBoolFalseTrueCharDoubleFloatIntGHC.IntInt8Int16Int32Int64 integer-gmpGHC.Integer.TypeInteger GHC.MaybeMaybeNothingJustOrderingLTEQGTRatioRational RealWorld StablePtrIOWordGHC.WordWord8Word16Word32Word64GHC.PtrPtrFunPtr Data.EitherEitherLeftRight CoercibleTyConGHC.ForeignPtr ForeignPtrGHC.IO.Handle.TypesHandleGHC.STSTuntangle ioException heapOverflow stackOverflowcannotCompactMutablecannotCompactPinnedcannotCompactFunctionallocationLimitExceededblockedIndefinitelyOnSTMblockedIndefinitelyOnMVarunsupportedOperation Data.Complexphase magnitudepolarcismkPolar conjugateimagPartrealPartComplex:+ Data.Fixed showFixedmod'divMod'div'FixedMkFixed HasResolution resolutionE0UniE1DeciE2CentiE3MilliE6MicroE9NanoE12PicoData.Functor.ContravariantcomparisonEquivalencedefaultEquivalencedefaultComparison>$$<>$<$<phantom Contravariant contramap>$ Predicate getPredicate Comparison getComparison EquivalencegetEquivalenceOpgetOpData.Functor.ComposeCompose getCompose Data.VoidvacuousabsurdVoidData.Semigroupoption mtimesDefaultdiffcycle1MingetMinMaxgetMaxArgArgMinArgMaxFirstgetFirstLastgetLast WrappedMonoid WrapMonoid unwrapMonoidOption getOptionsortWith tyconModule tyconUQname isNorepType mkNoRepType mkCharConstr mkRealConstrmkIntegralConstr mkCharType mkFloatType mkIntTypemaxConstrIndex constrIndex indexConstr isAlgType readConstr showConstr constrFixity constrFieldsdataTypeConstrsmkConstr mkDataType repConstr constrRep constrType dataTypeRep dataTypeName fromConstrM fromConstrB fromConstrDataTypeConstrDataRepIntRepFloatRepAlgRepCharRepNoRep ConstrRep AlgConstr IntConstr FloatConstr CharConstrConIndexFixityPrefixInfixSystem.TimeouttimeoutControl.ConcurrentthreadWaitWriteSTMthreadWaitReadSTMthreadWaitWritethreadWaitReadrunInUnboundThreadrunInBoundThreadisCurrentThreadBoundforkOSWithUnmaskforkOS forkFinallyrtsSupportsBoundThreadsControl.Concurrent.ChanwriteList2ChangetChanContentsdupChanreadChan writeChannewChanChanControl.Concurrent.QSem signalQSemwaitQSemnewQSemQSemControl.Concurrent.QSemN signalQSemN waitQSemNnewQSemNQSemNData.Bifunctor BifunctorfirstsecondbimapControl.Monad.IO.ClassMonadIOliftIO Data.RatioapproxRational Data.STRef modifySTRef' modifySTRef Data.Unique hashUnique newUniqueUniqueGHC.StableName eqStableNamehashStableNamemakeStableName StableNameSystem.EnvironmentgetEnvironment withProgNamewithArgsunsetEnvsetEnv lookupEnvgetEnv getProgNamegetArgs!System.Environment.ExecutablePathgetExecutablePath System.Exitdie exitSuccess exitFailureexitWith System.Mem performGCperformMajorGCperformMinorGC Text.PrintfhPrintfprintfmfilter<$!>unless replicateM_ replicateMfoldM_foldM zipWithM_zipWithM mapAndUnzipMforever<=<>=>filterM Data.Version makeVersion parseVersion showVersionVersion versionBranch versionTags traceMarkerIO traceMarker traceEventIO traceEvent traceStack traceShowMtraceM traceShowId traceShowtraceId putTraceMsgtraceIOfoldMapDefault fmapDefault mapAccumR mapAccumLforMforControl.Applicativeoptional WrappedMonad WrapMonad unwrapMonad WrappedArrow WrapArrow unwrapArrowZipList getZipList Control.ArrowleftApp^<<<<^>>^^>>returnAArrowarr***&&&Kleisli runKleisli ArrowZero zeroArrow ArrowPlus<+> ArrowChoice|||+++leftright ArrowApplyapp ArrowMonad ArrowLooploopreadIOreadLn appendFile writeFilereadFileinteract getContentsgetLinegetCharputStrLnputStrputChar GHC.IO.HandlehClose GHC.Conc.IO registerDelay threadDelay closeFdWithioManagerCapabilitiesChangedensureIOManagerIsRunningGHC.Conc.Signal runHandlers setHandlerSignal HandlerFunControl.Concurrent.MVar mkWeakMVaraddMVarFinalizermodifyMVarMaskedmodifyMVarMasked_ modifyMVar modifyMVar_withMVarMaskedwithMVarswapMVarSystem.IO.Unsafe unsafeFixIOControl.ExceptionallowInterruptcatchesHandlerControl.Monad.ST.ImpfixSTSystem.IO.Error catchIOErrorannotateIOError modifyIOErrorioeSetFileName ioeSetHandleioeSetLocationioeSetErrorStringioeSetErrorTypeioeGetFileName ioeGetHandleioeGetLocationioeGetErrorStringioeGetErrorTypeisUserErrorTypeisPermissionErrorTypeisIllegalOperationErrorTypeisEOFErrorTypeisFullErrorTypeisAlreadyInUseErrorTypeisDoesNotExistErrorTypeisAlreadyExistsErrorType userErrorTypepermissionErrorTypeillegalOperationErrorType eofErrorType fullErrorTypealreadyInUseErrorTypedoesNotExistErrorTypealreadyExistsErrorType isUserErrorisPermissionErrorisIllegalOperation isEOFError isFullErrorisAlreadyInUseErrorisDoesNotExistErrorisAlreadyExistsError mkIOError tryIOErrorControl.Exception.BasebracketOnErrorbracket_finallybracket onExceptiontryJusttry mapException handleJusthandle catchJustPatternMatchFail RecSelError RecConError RecUpdError NoMethodError TypeErrorNonTerminationNestedAtomically GHC.Conc.SyncgetUncaughtExceptionHandlersetUncaughtExceptionHandler reportErrorreportStackOverflow writeTVarreadTVar readTVarIO newTVarIOnewTVarcatchSTMthrowSTMretry atomically unsafeIOToSTMnewStablePtrPrimMVarmkWeakThreadIdthreadCapability threadStatus runSparksparpseq labelThreadyield myThreadIdthrowTo killThread childHandler numSparksgetNumProcessorssetNumCapabilitiesgetNumCapabilitiesnumCapabilitiesforkOnWithUnmaskforkOnforkIOWithUnmaskforkIOdisableAllocationLimitenableAllocationLimitgetAllocationCountersetAllocationCounterreportHeapOverflowThreadId BlockReason BlockedOnMVarBlockedOnBlackHoleBlockedOnException BlockedOnSTMBlockedOnForeignCallBlockedOnOther ThreadStatus ThreadRunningThreadFinished ThreadBlocked ThreadDiedPrimMVarSTMTVar dynTypeRepdynAppdynApply fromDynamicfromDynDynamicForeign.Marshal.PoolpooledNewArray0pooledNewArray pooledNewpooledReallocArray0pooledReallocArraypooledMallocArray0pooledMallocArraypooledReallocBytes pooledReallocpooledMallocBytes pooledMallocwithPoolfreePoolnewPoolPoolForeign.Marshal.Array advancePtr lengthArray0 moveArray copyArray withArrayLen0 withArray0 withArrayLen withArray newArray0newArray pokeArray0 pokeArray peekArray0 peekArray reallocArray0 reallocArray allocaArray0 allocaArray callocArray0 callocArray mallocArray0 mallocArrayForeign.Marshal.Utils fillBytes moveBytes copyByteswithMany maybePeek maybeWithmaybeNewtoBoolfromBoolwithnewForeign.Marshal.Allocfree reallocBytesreallocallocaBytesAligned allocaBytesalloca callocBytes mallocBytescallocmalloc finalizerFreeForeign.Marshal.Error throwIfNull throwIfNeg_ throwIfNegthrowIf_throwIfioErrorasyncExceptionFromExceptionasyncExceptionToExceptionBlockedIndefinitelyOnMVarBlockedIndefinitelyOnSTMDeadlockAllocationLimitExceededCompactionFailedAssertionFailedSomeAsyncExceptionAsyncException StackOverflow HeapOverflow ThreadKilled UserInterruptArrayExceptionIndexOutOfBoundsUndefinedElementFixIOExceptionExitCode ExitSuccess ExitFailure IOErrorTypeEOF AlreadyExists NoSuchThing ResourceBusyResourceExhaustedIllegalOperationPermissionDenied UserErrorUnsatisfiedConstraints SystemError ProtocolError OtherErrorInvalidArgumentInappropriateType HardwareFaultUnsupportedOperation TimeExpiredResourceVanished Interrupted Data.IORefatomicWriteIORefatomicModifyIORef'atomicModifyIORef modifyIORef' modifyIORef mkWeakIORefForeign.ForeignPtr.ImpmallocForeignPtrArray0mallocForeignPtrArraynewForeignPtrEnvwithForeignPtr newForeignPtrfinalizeForeignPtrplusForeignPtrcastForeignPtrtouchForeignPtrnewForeignPtr_addForeignPtrFinalizerEnvaddForeignPtrFinalizermallocForeignPtrBytesmallocForeignPtr FinalizerPtrFinalizerEnvPtr GHC.IORef writeIORef readIORefnewIORefIORefGHC.IOevaluateuninterruptibleMaskuninterruptibleMask_maskmask_getMaskingState interruptiblethrowIOcatchstToIOFilePath MaskingStateUnmaskedMaskedInterruptibleMaskedUninterruptible userError IOExceptionIOError ioe_handleioe_type ioe_locationioe_description ioe_errno ioe_filename GHC.Exceptionthrow ErrorCallErrorCallWithLocationGHC.Exception.Type Exception toException fromExceptiondisplayExceptionArithExceptionOverflow UnderflowLossOfPrecision DivideByZeroDenormalRatioZeroDenominator Data.TypeabletypeOf7typeOf6typeOf5typeOf4typeOf3typeOf2typeOf1 rnfTypeReptypeRepFingerprint typeRepTyCon typeRepArgs splitTyConAppmkFunTy funResultTygcast2gcast1gcasteqTcast showsTypeReptypeReptypeOfTypeReprnfTyContyConFingerprint tyConName tyConModule tyConPackageData.Functor.ConstConstgetConstfindnotElem minimumBy maximumByallanyorand concatMapconcatmsumasum sequence_ sequenceA_forM_mapM_for_ traverse_foldlMfoldrM Data.MonoidApgetApData.Semigroup.Internal stimesMonoidstimesIdempotentDualgetDualEndoappEndoAllgetAllAnygetAnySumgetSumProduct getProductgetAlt Unsafe.Coerce unsafeCoerce Data.OldListunwordswordsunlineslinesunfoldrsortBysort permutations subsequencestailsinitsgroupBygroupdeleteFirstsByunzip7unzip6unzip5unzip4zipWith7zipWith6zipWith5zipWith4zip7zip6zip5zip4genericReplicate genericIndexgenericSplitAt genericDrop genericTake genericLengthinsertByinsert partition transpose intercalate intersperse intersectBy intersectunionByunion\\deleteBydeletenubBynub isInfixOf isSuffixOf isPrefixOf findIndices findIndex elemIndices elemIndex stripPrefix dropWhileEnd Data.Char isSeparatorisNumberisMarkisLetter digitToInt Text.Readread readMaybe readEitherreads fromRightfromLeftisRightisLeftpartitionEithersrightsleftseitherData.Ord comparingDown Data.Proxy asProxyTypeOfProxyKProxyControl.Category>>><<<Categoryid.Data.Type.Equality:~:Refl:~~:HRefl Foreign.Ptr intPtrToPtr ptrToIntPtr wordPtrToPtr ptrToWordPtrfreeHaskellFunPtrWordPtrIntPtrForeign.StorableStorablesizeOf alignment peekElemOff pokeElemOff peekByteOff pokeByteOffcastPtrToStablePtrcastStablePtrToPtrdeRefStablePtr freeStablePtrcastPtrToFunPtrcastFunPtrToPtr castFunPtr nullFunPtrminusPtralignPtrplusPtrcastPtrnullPtrNumericshowOctshowHex showIntAtBase showHFloat showGFloatAlt showFFloatAlt showGFloat showFFloat showEFloatshowInt readSigned readFloatreadHexreadDecreadOctreadInt lexDigits readLitChar lexLitCharlex readParenText.ParserCombinators.ReadPrec readS_to_Prec readPrec_to_S readP_to_Prec readPrec_to_PReadPrecText.ParserCombinators.ReadP readS_to_P readP_to_SReadSReadPfromRat floatToDigits showFloat byteSwap64 byteSwap32 byteSwap16 GHC.UnicodetoTitletoUppertoLowerisLowerisUpperisPrint isControl isAlphaNumisAlphaisSymbol isPunctuation isHexDigit isOctDigitisDigitisSpace isAsciiUpper isAsciiLowerisLatin1isAsciigeneralCategoryGeneralCategoryFormatControlUppercaseLetterLowercaseLetterTitlecaseLetterModifierLetter OtherLetterNonSpacingMarkSpacingCombiningMark EnclosingMark DecimalNumber LetterNumber OtherNumberConnectorPunctuationDashPunctuationOpenPunctuationClosePunctuation InitialQuote FinalQuoteOtherPunctuation MathSymbolCurrencySymbolModifierSymbol OtherSymbolSpace LineSeparatorParagraphSeparator Surrogate PrivateUse NotAssigned GHC.STRef writeSTRef readSTRefnewSTRefSTRefrunST Data.BitstoIntegralSizedpopCountDefaulttestBitDefault bitDefaultBits.&..|.xor complementshiftrotatezeroBitsbitsetBitclearBit complementBittestBit bitSizeMaybebitSizeisSignedshiftL unsafeShiftLshiftR unsafeShiftRrotateLrotateRpopCount FiniteBits finiteBitSizecountLeadingZeroscountTrailingZeros Data.Boolbool Data.Function&onfix Data.Functorvoid$><&><$>lcmgcd^^^oddeven showSigned denominator numerator%GHC.Charchr intToDigit showLitChar showParen showStringshowCharshowsShowSunzip3unzipzipWith3zipWithzip3!!lookupreversebreakspansplitAtdroptake dropWhile takeWhilecycle replicaterepeatiterate'iteratescanr1scanrscanl'scanl1scanlfoldl1'initlasttailhead Data.MaybemapMaybe catMaybes listToMaybe maybeToList fromMaybefromJust isNothingisJustmaybeswapuncurrycurry GHC.IO.UnsafeunsafeInterleaveIOunsafeDupablePerformIOunsafePerformIOGHC.MVar isEmptyMVar tryReadMVar tryPutMVar tryTakeMVarputMVarreadMVartakeMVarnewMVar newEmptyMVarMVarsubtractasTypeOfuntil$!flipconstordapliftM5liftM4liftM3liftM2liftMwhen=<<liftA3liftA<**> Alternativeempty<|>somemany MonadPlusmzeromplusNonEmpty:|StringGHC.Err undefinederrorWithoutStackTraceerrorstimesIdempotentMonoid SomeException&&||notbytestring-0.10.8.2Data.ByteString.Short.InternalShortByteStringData.ByteString.Internal ByteString*contravariant-1.5.2-1ZQM8SswnWXJmdlHRX0Vig$Data.Functor.Contravariant.DivisiblechosenlostliftD conquereddivided Divisibledivideconquer Decidablechooselose(profunctors-5.5.2-KC2L325It2EIdUumqsPs2KData.Profunctor.MappingMappingmap'roamData.Profunctor.ChoiceChoiceleft'right'CochoiceunleftunrightData.Profunctor.Closedcurry'ClosedclosedData.Profunctor.Stronguncurry'Strongfirst'second'CostrongunfirstunsecondData.Profunctor.Types:->StarrunStarCostar runCostarForget runForgetData.Profunctor.Unsafe Profunctor#..#dimaplmaprmap text-1.2.3.1Data.Text.InternalText time-1.8.0.2Data.Time.Format formatTimeNumericPadOption FormatTimeformatCharacterData.Time.Format.Parse readsTimereadTime parseTime readPTime readSTimeparseTimeOrError parseTimeM ParseTime buildTime&Data.Time.LocalTime.Internal.ZonedTimeutcToLocalZonedTime getZonedTimezonedTimeToUTCutcToZonedTime ZonedTimezonedTimeToLocalTime zonedTimeZoneData.Time.Format.Localerfc822DateFormatiso8601DateFormatdefaultTimeLocale TimeLocalewDaysmonthsamPm dateTimeFmtdateFmttimeFmt time12FmtknownTimeZones&Data.Time.LocalTime.Internal.LocalTimelocalTimeToUT1ut1ToLocalTimelocalTimeToUTCutcToLocalTime LocalTimelocalDaylocalTimeOfDay&Data.Time.LocalTime.Internal.TimeOfDaytimeOfDayToDayFractiondayFractionToTimeOfDaytimeOfDayToTimetimeToTimeOfDaylocalToUTCTimeOfDayutcToLocalTimeOfDaymakeTimeOfDayValidmiddaymidnight TimeOfDaytodHourtodMintodSec%Data.Time.LocalTime.Internal.TimeZonegetCurrentTimeZone getTimeZoneutctimeZoneOffsetStringtimeZoneOffsetString'hoursToTimeZoneminutesToTimeZoneTimeZonetimeZoneMinutestimeZoneSummerOnly timeZoneName Data.Time.Clock.Internal.UTCDiff diffUTCTime addUTCTimeData.Time.Clock.POSIXgetCurrentTime&Data.Time.Clock.Internal.UniversalTime UniversalTime ModJulianDategetModJulianDate Data.Time.Clock.Internal.UTCTimeUTCTimeutctDay utctDayTime#Data.Time.Clock.Internal.SystemTimegetTime_resolution(Data.Time.Clock.Internal.NominalDiffTime nominalDayNominalDiffTime!Data.Time.Clock.Internal.DiffTimediffTimeToPicosecondspicosecondsToDiffTimesecondsToDiffTimeDiffTimeData.Time.Calendar.GregorianaddGregorianYearsRollOveraddGregorianYearsClipaddGregorianMonthsRollOveraddGregorianMonthsClipgregorianMonthLength showGregorianfromGregorianValid fromGregorian toGregorianData.Time.Calendar.OrdinalDate isLeapYearData.Time.Calendar.DaysdiffDaysaddDaysDayModifiedJulianDaytoModifiedJulianDay reverseDigitswrite fetchManyshiftr_w shiftr_w16 shiftr_w32 shiftr_w64caseWordSize_32_64asciiUnsignedIntegralPokeIO sequentially concurrentlyreverseAsciiDigits