!=}X      !"#$%&'()*+,-./0123456789:;<=>?@ A B C D E F G H I J K LMNOPQRSTUVW None*"#&',.1245678=>?@ACFHJMPRSUVX_`g xXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ None*"#&',.1245678=>?@ACFHJMPRSUVX_`guNone*"#&',.1245678=>?@ACFHJMPRSUVX_`g None*"#&',.1245678=>?@ACFHJMPRSUVX_`g None*"#&',.1245678=>?@ACFHJMPRSUVX_`g,^iriHTTP being by far the most common use-case for resource identifiers, it's been isolated into a dedicated data-type, which is optimised for that particular case.*Compared to the general URI definition it:(only supports the HTTP and HTTPS schemes+misses the Username and Password componentsrequires the Host component*requires the Path component to be absolute iriSince the exact structure of the query string is not standardised and methods used to parse the query string may differ between websites, we simply represent it as percent-decoded bytes.See  *https://en.wikipedia.org/wiki/Query_string.-iri!Thorough structure of IRI or URI.)  !"$#%&'*)(+,-.None*"#&',.1245678=>?@ACFHJMPRSUVX_`g.None*"#&',.1245678=>?@ACFHJMPRSUVX_`g0None*"#&',.1245678=>?@ACFHJMPRSUVX_`g1None*"#&',.1245678=>?@ACFHJMPRSUVX_`g3None*"#&',.1245678=>?@ACFHJMPRSUVX_`g4None*"#&',.1245678=>?@ACFHJMPRSUVX_`g7p/iri(Try to specialize a general IRI to HTTP 0iriGeneralize an HTTP IRI to IRI /0None*"#&',.1245678=>?@ACFHJMPRSUVX_`g9-iri7-bit 23None*"#&',.1245678=>?@ACFHJMPRSUVX_`g?|iri Reference: unreserved = ALPHA  DIGIT  "-"  "."  "_" / "~" iri Reference: query = *( pchar  " " / "?" ) nNotice that we've added the "|" char, because some real life URIs seem to contain it. Also we've excluded the / char, because it gets decoded as a space char. None*"#&',.1245678=>?@ACFHJMPRSUVX_`gGKiri Reference: iquery = *( ipchar  iprivate  ""  "?" ) nNotice that we've added the "|" char, because some real life URIs seem to contain it. Also we've excluded the / char, because it gets decoded as a space char.irinNotice that we've added the "|" char, because some real life URIs seem to contain it. Also we've excluded the / char, because it gets decoded as a space char. None*"#&',.1245678=>?@ACFHJMPRSUVX_`gIiri,Church encoding of a UTF8-encoded character.None*"#&',.1245678=>?@ACFHJMPRSUVX_`gKONone*"#&',.1245678=>?@ACFHJMPRSUVX_`gMiriApply URL-encoding to text iriApply URL-encoding to text 12None*"#&',.1245678=>?@ACFHJMPRSUVX_`gOm1212None*"#&',.1245678=>?@ACFHJMPRSUVX_`gR3iriRender as a Unicode IRI text 4iriRender as a Unicode IRI text 34None*"#&',.1245678=>?@ACFHJMPRSUVX_`gSNone*"#&',.1245678=>?@ACFHJMPRSUVX_`gU-+  !"#$%&'()*+,-./0+-.+,'*)(%&"$# !  /0None*"#&',.1245678=>?@ACFHJMPRSUVX_`gX 3434None*"#&',.1245678=>?@ACFHJMPRSUVX_`gYNone*"#&',.1245678=>?@ACFHJMPRSUVX_`g_65iriDParser of a well-formed IRI conforming to the RFC3987 standard into -. Performs URL-decoding.6iriSame as 56, but optimized specifially for the case of HTTP IRIs.iri,Domain label with Punycode decoding applied.iri"The stuff after the question mark.5656None*"#&',.1245678=>?@ACFHJMPRSUVX_`gcr7iriDParser of a well-formed IRI conforming to the RFC3987 standard into -. Performs URL-decoding.8iriSame as 76, but optimized specifially for the case of HTTP IRIs.7878None*"#&',.1245678=>?@ACFHJMPRSUVX_`gi9iripParser of a well-formed URI conforming to the RFC3986 or RFC3987 standards. Performs URL- and Punycode-decoding.:iriSame as 96, but optimized specifially for the case of HTTP URIs.iri7Domain label with Punycode decoding applied if need be.iri.The stuff after the question or the hash mark.9:;9:;None*"#&',.1245678=>?@ACFHJMPRSUVX_`gm<iri-# literal from ASCII representation.=iri# literal from ASCII representation.>iri-! literal from IRI representation.?iri! literal from IRI representation.<=>?<=>? None*"#&',.1245678=>?@ACFHJMPRSUVX_`gu4@irimParser of a well-formed URI conforming to the RFC3986 standard into IRI. Performs URL- and Punycode-decoding.AiriSame as @6, but optimized specifially for the case of HTTP URIs.BiriDomain name parser.CiriFAssuming we have a valid URI as input, extract the query part from it.iriIAssuming we have a valid URI as input, extract the fragment part from it.@ABC@ABC None*"#&',.1245678=>?@ACFHJMPRSUVX_`gw\iriApply URL-encoding to text DEFGHIDEFGHI None*"#&',.1245678=>?@ACFHJMPRSUVX_`gzJiriRender as URI ASCII bytes KiriRender as URI ASCII bytes JKJK None*"#&',.1245678=>?@ACFHJMPRSUVX_`g{ LMNOPQRSTUVWNone*"#&',.1245678=>?@ACFHJMPRSUVX_`g}[LMNOPQRSTUVWLMNOPQRSTUVW!"#$%&''(())**++,,-./0011234567899:;<==>?@ABBCCDEFGFGFGFGHIJHIFG H I J K H I L M N O H I P Q R S T U V W X Y Z [\]^_`a\bc\bd\ef\gh\ij\ik\]l\]m_no\pq\rs_nt\]u\vw\]x_`y\z{\z|\}~\\]\\\\\\\\\\\\___\\\\\\\\\\\\\\\\\\\\\\\\z\z\z\z\z\z\z\z\z\z\z\z\]\]\]\]\]\\\\\\\\\\\\\\\\]\]\]\\\\\\\\________\\\\\\z\z\\\\\\\\\\\\\\\\z\z\z\z\z\z\\\\\\\\\\ \  \  \ \ \]\]\]\]\]\]\\\\\\\\\\ \!\"\#\$\%\&\'\()\(*\(+\(,\(-\./\]0\]1\]2\]3\]4\]5\]6\]7_89_8:_8;_8<_8=_8>_8?\@A\@B\@C\@DEFG\HI\HJ\HK_8L_8M_8N_8O\zP\zQ_`R\eS_8T_8U\VW\VX\VY\VZ\[\\[]\^_\^`\^a_8b_8c\]d\ef\ef\eg\^h\ei\ej\eklmn\opqrsqrtqruvwx\yz{|}\~\\\\\\\]\]\]\]\]\]\]\]\]\p\p\p\p\p\p\p\p\p\p\p\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\e\e\e\e\e\e\e\e\e\e\e\e\e\e\e\e\\\\\\\\\\\\\\\\\\\\\\\\\\\v\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \ \ \ \ \\\\\\\\\\\\\\\\ \!\"\#\$\%\&\'(\')\'*\'+\,-\,.\,/\,0\12\13\45\67\68\9:\9;\9<\=>\=?\=@\=A\BC\BD\BE\BF\BG\BH\BI\BJ\BK\LM\NO\NP\NQ\NR\ST\SU\SV\WX\WY\}Z\}[\}\\}]\}^\}_\}`\}a\}b\}c\}d\}e\}f\}g\hi\hj\hk\hl\hl\hm\hn\ro\rp\rq\rr\rs\rt\ru\rv\rw\rx\ry\rz\({\(|\(}\(~\(\(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\g\g\g\g\g\g\g\g\g\g\g\g\g\g\g\g\g\g\g\g\g\g\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \ \ \ \ \\\\\\\\\\\\\\\\ \!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\0\1\2\3\4\5\6\7\8\9\:\;\<\=\>\?@\?A\?B\?C\?D\?E\?F\?G\?H\?I\?J\?K\?K\?L\?L\?M\?M\?N\?N\?O\?O\?P\?P\?Q\?Q\?R\?R\ST\SU\SV\SW\SX\SY\SZ\S[\S\\S]\S^\S_\S`\Sa\Sb\Sc\Sd\Se\Sf\Sg\Sh\Si\Sj\Sk\Sl\Sm\Sn\So\Sp\Sq\Sr\Ss\St\Su\Sv\Sw\Sx\Sy\Sz\S{\S|\S}\S~\S~\S\S\S\S\S\S\S\S\S\S\S\S\S\S\S\S\S\\\\\\\\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\p\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\~\~\~\~\~\~\~\~\~\~\~\\\\\\\\\\\\\\\\\\\\p\p\p\p\p\p\p\p \p \p\  \  \  \ \\\\\\\\\\\\\\\\ \!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\0\1\2\3\4\5\6\7\89\89\8:\;\<\=\>\?\@\A\B\C\D\E\F\G\H\I\J\K\L\M\N\OP\OP\OQ\RS\RT\RU\RU\RV\RW\RW\RX\RY\RY\RZ\R[\R[\R\\R]\R]\R^\R_\R_\R`\Ra\Ra\Rb\cd\ce\cf\cg\ch\ci\cj\ck\cl\cm\cn\co\cp\cq\cr\cs\ct\cu\cv\cw\cx\cy\cz\c{\c|\c}\c~\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\c\\\\\\\\\^\^\^\^\^\^\^\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\e\e\e\e\[\[\[\[\[\[\[\[\[\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\V\V\V\\ \ \ \ \ \\\\\\\\\\\\\\\\\\\ \!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\0\1\2\3\4\5\6\7\89\8:\8;\8<\=\>?\>@\>A\>B\>C\>D\>E\>F\>G\>H\>I\>J\>K\>L\>M\>N\>O\>P\>Q\>R\>S\>T\>U\>V\>W\>X\>Y\>Z\>[\>\\>]\^_\`a\`b\`c\od\oe\of\zg\zh\zi\zj\zk\zl\zm\zn\zo\zp\qr\s\t\u\v\w\x\y\bz\b{\b|\b}\b~\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\\\\\\\\\\i\i\i\\\\\\\\\\\\\\\]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\\\\R\\___qrqrqrqrqrqrqrqrqrqr        M!&"#$%&'()*+L,-./0*.L01-)23456789,:,; < 8=iri-0.4-6utNI10Cmpx1Ay6lBJs6Kb Iri.OpticsIri.DataIri.Rendering.TextBuilderIri.Rendering.TextIri.Parsing.Attoparsec.TextIri.Parsing.Text!Iri.Parsing.Attoparsec.ByteStringIri.QuasiQuoterIri.Parsing.ByteStringIri.Rendering.Ptr.PokingIri.Rendering.ByteString Iri.PreludeIri.PercentEncodingIri.Optics.Basics Iri.MonadPlusIri.Data.TypesIri.Data.Instances.LiftIri.Data.Instances.GenericIri.Data.Instances.HashableIri.Data.Instances.EqIri.Data.Instances.OrdIri.Data.FunctionsIri.CodePointPredicates.CoreIri.CodePointPredicates.Rfc3986Iri.CodePointPredicates.Rfc3987Iri.Utf8CodePoint Iri.Vector"Iri.Rendering.TextBuilder.InternalIri.Rendering.Text.InternalIri.Data.Instances.ShowIri.Rendering.Ptr.PokeIri.Optics.Defs Traversal' TraversalPrism'PrismLens'LensSecurityHttpIriFragmentQuery PathSegmentPathPort PresentPort MissingPort DomainLabelRegNameHost NamedHostIpV4HostIpV6HostPasswordPresentPasswordMissingPasswordUserUserInfoPresentUserInfoMissingUserInfo Authority HierarchyAuthorisedHierarchyAbsoluteHierarchyRelativeHierarchySchemeIrihttpIriFromIriiriFromHttpIriirihttpIriurihttpUriregNameuriQueryschemehostpathquery textIriIritextIriHttpIri byteStringIribyteStringHttpIribyteStringTextInUtf8 iriHttpIri iriScheme iriHierarchyiriQuery iriFragmentschemeByteStringfragmentByteStringbaseGHC.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>>=>>returnfail Data.DataDatagfoldlgunfoldtoConstr dataTypeOf dataCast1 dataCast2gmapTgmapQlgmapQrgmapQgmapQigmapMgmapMpgmapMoFunctorfmap<$GHC.NumNum+*-negate fromIntegerabssignumOrd>=minmax><compare<=GHC.ReadReadreadList readsPrecreadPrec readListPrecReal toRational RealFloat floatRadix floatDigits floatRange decodeFloat encodeFloatexponent significand scaleFloatisNaN isInfiniteisDenormalizedisNegativeZeroisIEEEatan2RealFracproperFractiontruncateroundceilingfloorGHC.ShowShow showsPrecshowshowListGHC.ArrIxindexrangeinRange rangeSizeData.Typeable.InternalTypeableControl.Monad.FixMonadFixmfix Data.StringIsString fromString Applicativepure<*>*><*liftA2 Data.FoldableFoldablefoldltoListfoldrlengthfoldMapnullfoldl'foldl1sumproductfoldr1maximumminimumelemfoldfoldr'Data.Traversable TraversabletraversemapM sequenceAsequence GHC.GenericsGeneric Semigroup<>sconcatstimesMonoidmemptymappendmconcat GHC.TypesBoolFalseTrueCharDoubleFloatIntGHC.IntInt8Int16Int32Int64 integer-gmpGHC.Integer.TypeInteger GHC.MaybeMaybeNothingJustOrderingLTEQGTRatioRational RealWorld StablePtrIOWordGHC.WordWord8Word16Word32Word64GHC.PtrPtrFunPtr Data.EitherEitherLeftRight CoercibleTyConliftMData.Functor.ContravariantOpgetOpeither Contravariant contramap>$bytestring-0.10.8.2Data.ByteString.Internal ByteString Data.Functor<$>'hashable-1.2.7.0-2SI038axTEd7AEZJ275kpiData.Hashable.ClassHashable hashWithSalthash text-1.2.3.1Data.Text.InternalText Unsafe.Coerce unsafeCoerce4unordered-containers-0.2.10.0-LgoTL3wbBEY5bZIDJiyxW4Data.HashMap.BaseHashMapGHC.ForeignPtr ForeignPtrGHC.IO.Handle.TypesHandleGHC.STST GHC.UnicodeisSpaceisAlphaisDigit Text.ReadreadString Alternativeemptymany<|>some MonadPlusmzeromplusuntangle ioException heapOverflow stackOverflowcannotCompactMutablecannotCompactPinnedcannotCompactFunctionallocationLimitExceededblockedIndefinitelyOnSTMblockedIndefinitelyOnMVarunsupportedOperation Data.Complexphase magnitudepolarcismkPolar conjugateimagPartrealPartComplex:+ Data.Fixed showFixedmod'divMod'div'FixedMkFixed HasResolution resolutionE0UniE1DeciE2CentiE3MilliE6MicroE9NanoE12PicocomparisonEquivalencedefaultEquivalencedefaultComparison>$$<>$<$<phantom Predicate getPredicate Comparison getComparison EquivalencegetEquivalenceData.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 waitQSemNnewQSemNQSemNControl.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^<<<<^>>^^>>returnAArrowarrfirstsecond***&&&Kleisli runKleisli ArrowZero zeroArrow ArrowPlus<+> ArrowChoice|||+++leftright ArrowApplyapp ArrowMonad ArrowLooploopData.Functor.IdentityIdentity runIdentity(openBinaryTempFileWithDefaultPermissions"openTempFileWithDefaultPermissionsopenBinaryTempFile openTempFilefixIOwithBinaryFilewithFilehPrinthReadylocaleEncodingreadIOreadLn appendFile writeFilereadFileinteract getContentsgetLinegetCharputStrLnputStrputChar GHC.IO.HandlehShowhSetNewlineModehSetBinaryModehIsTerminalDevicehGetEchohSetEcho hIsSeekable hGetBuffering hIsWritable hIsReadable hIsClosedhIsOpenhTellhSeekhSetPosnhGetPosn hGetEncoding hSetEncoding hSetBuffering hLookAheadisEOFhIsEOF hSetFileSize hFileSizehClose HandlePosnGHC.IO.Handle.FDopenBinaryFileopenFilestderrstdinGHC.IO.Handle.TexthGetBufNonBlocking hGetBufSomehGetBufhPutBufNonBlockinghPutBuf hPutStrLnhPutStrhPutChar hGetContentshGetLinehGetChar hWaitForInput GHC.Conc.IO registerDelay threadDelay closeFdWithioManagerCapabilitiesChangedensureIOManagerIsRunningGHC.Conc.Signal runHandlers setHandlerSignal HandlerFunControl.Concurrent.MVar mkWeakMVaraddMVarFinalizermodifyMVarMaskedmodifyMVarMasked_ modifyMVar modifyMVar_withMVarMaskedwithMVarswapMVarGHC.IO.EncodingmkTextEncodingchar8utf32beutf32leutf32utf16beutf16leutf16utf8_bomutf8latin1System.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 newTVarIOnewTVarcatchSTMthrowSTMorElseretry atomically unsafeIOToSTMnewStablePtrPrimMVarmkWeakThreadIdthreadCapability threadStatus runSparksparpseq labelThreadyield myThreadIdthrowTo killThread childHandler numSparksgetNumProcessorssetNumCapabilitiesgetNumCapabilitiesnumCapabilitiesforkOnWithUnmaskforkOnforkIOWithUnmaskforkIOdisableAllocationLimitenableAllocationLimitgetAllocationCountersetAllocationCounterreportHeapOverflowThreadId BlockReason BlockedOnMVarBlockedOnBlackHoleBlockedOnException BlockedOnSTMBlockedOnForeignCallBlockedOnOther ThreadStatus ThreadRunningThreadFinished ThreadBlocked ThreadDiedPrimMVarSTMTVar dynTypeRepdynAppdynApply fromDynamicfromDynDynamicioErrorasyncExceptionFromExceptionasyncExceptionToExceptionBlockedIndefinitelyOnMVarBlockedIndefinitelyOnSTMDeadlockAllocationLimitExceededCompactionFailedAssertionFailedSomeAsyncExceptionAsyncException StackOverflow HeapOverflow ThreadKilled UserInterruptArrayExceptionIndexOutOfBoundsUndefinedElementFixIOExceptionExitCode ExitSuccess ExitFailure IOErrorTypeEOF AlreadyExists NoSuchThing ResourceBusyResourceExhaustedIllegalOperationPermissionDenied UserErrorUnsatisfiedConstraints SystemError ProtocolError OtherErrorInvalidArgumentInappropriateType HardwareFaultUnsupportedOperation TimeExpiredResourceVanished InterruptedhFlushstdoutnoNewlineTranslationnativeNewlineModeuniversalNewlineMode nativeNewline BufferMode NoBuffering LineBufferingBlockBufferingNewlineLFCRLF NewlineModeinputNLoutputNL GHC.IO.DeviceSeekMode AbsoluteSeek RelativeSeek SeekFromEnd Data.IORefatomicWriteIORefatomicModifyIORef'atomicModifyIORef modifyIORef' modifyIORef mkWeakIORefGHC.IO.Encoding.Types TextEncodingForeign.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 getProductAltgetAlt 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 readMaybe readEitherreads fromRightfromLeftisRightisLeftpartitionEithersrightsleftsData.Ord comparingDown Data.Proxy asProxyTypeOfProxyKProxyControl.Category>>><<<Categoryid.Data.Type.Equality:~:Refl:~~:HRefl Foreign.Ptr intPtrToPtr ptrToIntPtr wordPtrToPtr ptrToWordPtrfreeHaskellFunPtrWordPtrIntPtr GHC.IO.IOModeIOModeReadMode WriteMode AppendMode ReadWriteModeForeign.StorableStorablepeek peekElemOff pokeElemOff peekByteOff pokeByteOffpokecastPtrToStablePtrcastStablePtrToPtrdeRefStablePtr 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 byteSwap16toTitletoUppertoLowerisLowerisUpperisPrint isControl isAlphaNumisSymbol isPunctuation isHexDigit isOctDigit 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&onfixvoid$><&>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$!flipconstordapliftM5liftM4liftM3liftM2when=<<liftA3liftA<**>GHC.Err undefinederrorWithoutStackTraceerrorstimesIdempotentMonoid SomeException&&||not(contravariant-1.5-4tjvhiNPMk29NhGPKE1GIF$Data.Functor.Contravariant.DivisiblechosenlostliftD conquereddivided Divisibledivideconquer DecidablechooselosetraverseHashed mapHashedunhashedhashedhashByteArrayWithSalt hashByteArrayhashPtrWithSalthashPtr hashUsingHashed&profunctors-5.3-EKyA5bSYVzs2cFJVjyRR00Data.Profunctor.Unsafe Profunctor#..#dimaplmaprmapip-1.4.1-5UIN449bWPN4P7NzBhG4Q7Net.IPv6IPv6Net.IPv4IPv4Data.Profunctor.ChoiceuncotambaraSum cotambaraSum untambaraSum tambaraSumChoiceleft'right' TambaraSum runTambaraSum PastroSumCochoiceunleftunright CotambaraSum CopastroSumrunCopastroSumData.Profunctor.Strong uncotambara cotambaraunpastropastro untambaratambarauncurry'Strongfirst'second'Tambara runTambaraPastroCostrongunfirstunsecond CotambaraCopastro runCopastro&vector-0.12.0.2-H1Eu1OCXL0L9y980iV8EwU Data.VectorVector matchHexBytematchPercentEncodedBytesIso'Isoprismprism'lensfoldByteStringseptimalcached oneOfChars inCharRange nonSeptimalcontrolasciiAlphanumeric unreservedunencodedQuery subDelims domainLabelunencodedPathSegmentunencodedFragmentunencodedQueryComponentunencodedUserInfoComponentunencodedRegNameucsprivate Utf8CodePointcharunicodeCodePointurlEncodedBytesurlEncodedTexturlEncodedByte queryBodyqueryOrFragmentBody uriFragment