bCx      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWX Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w  Safe-Inferredxyz{|} Safe-Inferred ~   NoneDCall once at the start, then call repeatedly to get Time values out QLike offsetTime, but results will never decrease (though they may stay the same)      Safe-Inferred  Safe-Inferred;Find the first instance of needle in haystack. ) The first element of the returned tuple  is the prefix of haystack before needle is matched. The second  is the remainder of haystack, starting with the match.  Examples:  + breakOn "::" "a::b::c" == ("a", "::b::c") * breakOn "/" "foobar" == ("foobar", "") Laws: a \needle haystack -> let (prefix,match) = breakOn needle haystack in prefix ++ match == haystack < Similar to ;#, but searches from the end of the  string. 9The first element of the returned tuple is the prefix of haystack ' up to and including the last match of needle. The second is the  remainder of haystack, following the match. . breakOnEnd "::" "a::b::c" == ("a::b::", "c") =0Break a list into pieces separated by the first ? list argument, consuming the delimiter. An empty delimiter is 0 invalid, and will cause an error to be raised.  Examples:  8 splitOn "\r\n" "a\r\nb\r\nd\r\ne" == ["a","b","d","e"] : splitOn "aaa" "aaaXaaaXaaaXaaa" == ["","X","X","X",""] . splitOn "x" "x" == ["",""] + splitOn "x" "" == [""] and 6 \s x -> s /= "" ==> intercalate s (splitOn s x) == x B \c x -> splitOn [c] x == split (==c) x >7Splits a list into components delimited by separators, @ where the predicate returns True for a separator element. The C resulting components do not contain the separators. Two adjacent = separators result in an empty component in the output. eg. 0 split (=='a') "aabbaca" == ["","","bb","c",""] ! split (=='a') "" == [""] ?5Return the prefix of the second string if its suffix " matches the entire first string.  Examples: * stripSuffix "bar" "foobar" == Just "foo" * stripSuffix "" "baz" == Just "baz" ' stripSuffix "foo" "quux" == Nothing * !"#$%&'()*+,-./0123456789:;<=>?@ !"#$%&'()*+,-./0123456789:;<=>?@+)*(&'+,: !01/.-#"56%?$234789;<=>@* !"#$%&'()*+,-./0123456789:;<=>?@ Safe-InferredAB   ABABAB Safe-InferredCDEFG    CDEFGEFCDGCDEFG Safe-InferredHIJKLMNOPQRSTUVW9 !"#$%&'()*+,-./0123456789:HIJKLMNOPQRSTUVWHIJKLMNOPQTURSVWHIJKLMNOPQRSTUVW  Safe-InferredXY%;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]XYXYXY  Safe-InferredZSPrint an exception, but if that exception itself contains exceptions, simply print  <NestedException>;. Since Haskell is a lazy language it is possible to throw ^ exceptions that are themselves undefined. This function is useful to report them to users. [CIgnore any exceptions thrown by the action and continue as normal. Z[\]^_`abcde^[_`abcdefghijklmnopqrstuvwxyz{|}~Z[\]^_`abcde \Z[]_a^`bcde Z[\]^_`abcde^ Nonefgfgfgfg Nonehijklmnopqrstux     hijklmnopqrstuhijklmnopqturshijklmnopqrstu  Safe-InferredvOn GHC 7.6 and above with the  -threaded flag, brackets a call to w. ! On lower versions (which lack w/) this function just runs the argument action. w A version of wF that works on all versions of GHC, but has no effect before GHC 7.6. vwC !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMN~OPQRSTUVWXYZ[\]^vwvwvwNonex  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxvw\Z[]_a^`bcdeHIJKLMNOPQTURSVWEFCDGAB)*(&'+,: !01/.-#"56%?$234789;<=>@ XYfghijklmnopqturs _ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk l m n o p q r s t u v w x y z { | } ~        !"#"$"%"&'(')'*'+','-'./0123454678494:4;4<4=4>4?4@4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4XYZ[YZ\YZ]YZ^YZ_YZ`YZaYZbYZcYZdYZeYZfYZgYZhYZiYZjYZkYZlYZmYZnYZoYZpYZqYZrYZsYZtYZuYZvYZwYZxYZyYZzYZ{YZ|YZ} ~                    !"#$%&'()*+,-./01233456768696:;<;=;>;?;@ABCBDBEBFBGBHBIBJBKBLMNMOMPMQMRMSMTUVUWUXUYZ[Z\Z]Z^_`_a_b_c_d_e_f_g_hijklkmknkokpkqkrksktuvwxyz{|}~ extra-0.2System.Environment.ExtraData.IORef.ExtraData.List.Extra Numeric.ExtraSystem.Time.ExtraData.Tuple.ExtraData.Either.ExtraControl.Monad.ExtraSystem.Directory.ExtraControl.Exception.ExtraSystem.Info.ExtraSystem.IO.ExtraControl.Concurrent.ExtraExtrabaseSystem.Environment lookupEnv!System.Environment.ExecutablePathgetExecutablePath Data.IORefatomicWriteIORefatomicModifyIORef' modifyIORef' Data.List dropWhileEndshowDP intToDouble intToFloat floatToDouble doubleToFloatsleep subtractTimeshowTime offsetTimeoffsetTimeIncreasedurationfst3snd3thd3concat3concat2dupechopreprepsfordisjointdistinctlistunconsunsnocconssnoctakeEnddropEnd concatUnzip takeWhileEnd stripStartstripEndstriplowerupper dropAroundword1sortOngroupOnnubOn groupSort groupSortOnmergemergeByreplacebreakEndspanEndwordsBylinesBy firstJustdrop1breakOn breakOnEndsplitOnsplit stripSuffixchunksOf writeIORef'atomicWriteIORef'fromLeft fromRightisLeftisRight fromEitherwhenJustunit partitionM concatMapMloopMwhileMifMnotM||^&&^anyMallMorMandMfindM firstJustMwithCurrentDirectorygetDirectoryContentsRecursive showExceptionignoreretrycatch_ catchJust_handle_ handleJust_try_tryJust_ catchBool handleBooltryBool isWindowsgetProcessorCountreadFileEncoding readFileUTF8readFileBinary readFile'readFileEncoding' readFileUTF8'readFileBinary'writeFileEncoding writeFileUTF8writeFileBinary captureOutput withBuffering withTempFile withTempDirwithNumCapabilitiessetNumCapabilitiesgetEnvironment withProgNamewithArgsgetEnv getProgNamegetArgsNumericshowOctshowHex showIntAtBase showGFloat showFFloat showEFloatshowInt readSigned readFloatreadHexreadDecreadOctreadIntGHC.Read lexDigits GHC.FloatfromRat floatToDigits showFloatGHC.Real showSigned Data.TuplefstsndswapuncurrycurryGHC.Base++foldrGHC.Listconcatfilterzipmapunwordswordsunlineslinesproductsumfoldl1'foldl1foldl'unfoldrsortBysort permutations subsequencestailsinitsgroupBygroupdeleteFirstsByunzip7unzip6unzip5unzip4zipWith7zipWith6zipWith5zipWith4zip7zip6zip5zip4genericReplicate genericIndexgenericSplitAt genericDrop genericTake genericLength minimumBy maximumByminimummaximuminsertByinsert mapAccumR mapAccumL partition transpose intercalate intersperse intersectBy intersectunionByunion\\deleteBydeletenubBynub isInfixOf isSuffixOf isPrefixOf findIndices findIndexfind elemIndices elemIndex stripPrefixunzip3unzipzipWith3zipWithzip3!! concatMaplookupnotElemelemallanyorandreversebreakspansplitAtdroptake dropWhile takeWhilecycle replicaterepeatiteratescanr1scanrfoldr1scanl1scanlfoldllengthnullinitlasttailheadatomicModifyIORef modifyIORef mkWeakIORef GHC.IORef writeIORef readIORefnewIORefIORef Data.EitherEitherLeftRightpartitionEithersrightsleftseitherfail>>=>>fmapreturn Control.MonadguardliftMMonadFunctor MonadPlusmfilterapliftM5liftM4liftM3liftM2unlesswhen replicateM_ replicateMfoldM_foldM zipWithM_zipWithM mapAndUnzipMjoinvoidforever<=<>=>msumforM_forMfilterMmapM_mapM sequence_sequence=<<mplusmzerodirectory-1.2.0.1System.DirectorygetTemporaryDirectorygetUserDocumentsDirectorygetAppUserDataDirectorygetHomeDirectorygetModificationTime doesFileExistdoesDirectoryExistsetCurrentDirectorygetCurrentDirectorygetDirectoryContentsfindFilefindExecutablemakeRelativeToCurrentDirectorycanonicalizePathcopyFile renameFilerenameDirectory removeFileremoveDirectoryRecursiveremoveDirectorycreateDirectoryIfMissingcreateDirectorycopyPermissionssetPermissionsgetPermissionssetOwnerSearchablesetOwnerExecutablesetOwnerWritablesetOwnerReadableemptyPermissions searchable executablewritablereadable PermissionsboolassertControl.ExceptionallowInterruptcatchesHandlerControl.Exception.BasebracketOnErrorbracket_finallybracket onExceptiontryJusttry mapException handleJusthandle catchJustcatchPatternMatchFail RecSelError RecConError RecUpdError NoMethodErrorNonTerminationNestedAtomically GHC.Conc.SyncthrowToGHC.IO.ExceptionioErrorBlockedIndefinitelyOnMVarBlockedIndefinitelyOnSTMDeadlockAssertionFailed StackOverflow HeapOverflow ThreadKilled UserInterruptAsyncExceptionIndexOutOfBoundsUndefinedElementArrayExceptionGHC.IOevaluateuninterruptibleMaskuninterruptibleMask_maskmask_blockedgetMaskingStateunblockblockthrowIOUnmaskedMaskedInterruptibleMaskedUninterruptible MaskingState IOException GHC.Exceptionthrow SomeException fromException toException Exception ErrorCallOverflow UnderflowLossOfPrecision DivideByZeroDenormalRatioZeroDenominatorArithExceptiongetNumberOfProcessors System.Info compilerNamearchoscompilerVersioncreateTempDirectory mkPrivateDir System.IOprintghc-prim GHC.TypesIOgetLineGHC.IO.Handle.TypesHandle(openBinaryTempFileWithDefaultPermissions"openTempFileWithDefaultPermissionsopenBinaryTempFile openTempFilefixIOwithBinaryFilewithFilehPrinthReadylocaleEncodingreadIOreadLn appendFile writeFilereadFileinteract getContentsgetCharputStrLnputStrputCharGHC.IO.Handle.FDopenBinaryFileopenFileisEOFstderrstdin GHC.IO.HandlehShowhSetNewlineModehSetBinaryModehIsTerminalDevicehGetEchohSetEcho hIsSeekable hGetBuffering hIsWritable hIsReadable hIsClosedhIsOpenhTellhSeekhSetPosnhGetPosn hGetEncoding hSetEncoding hSetBuffering hLookAheadhIsEOF hSetFileSize hFileSizehClose HandlePosnGHC.IO.Handle.TexthGetBufNonBlocking hGetBufSomehGetBufhPutBufNonBlockinghPutBuf hPutStrLnhPutStrhPutChar hGetContentshGetLinehGetChar hWaitForInputGHC.IO.EncodingmkTextEncodingchar8utf32beutf32leutf32utf16beutf16leutf16utf8_bomutf8latin1stdouthFlushnoNewlineTranslationnativeNewlineModeuniversalNewlineMode nativeNewline NoBuffering LineBufferingBlockBuffering BufferModeLFCRLFNewlineoutputNLinputNL NewlineModeGHC.IO.Encoding.Types TextEncoding GHC.IO.Device AbsoluteSeek RelativeSeek SeekFromEndSeekMode GHC.IO.IOModeReadMode WriteMode AppendMode ReadWriteModeIOModeFilePathControl.ConcurrentthreadWaitWritethreadWaitReadrunInUnboundThreadrunInBoundThreadisCurrentThreadBoundforkOSnmergeIOmergeIO forkFinallyrtsSupportsBoundThreadsControl.Concurrent.SampleVarisEmptySampleVarwriteSampleVar readSampleVaremptySampleVar newSampleVarnewEmptySampleVar SampleVarControl.Concurrent.QSemN signalQSemN waitQSemNnewQSemNQSemNControl.Concurrent.QSem signalQSemwaitQSemnewQSemQSemControl.Concurrent.ChanwriteList2ChangetChanContents isEmptyChan unGetChandupChanreadChan writeChannewChanChan GHC.Conc.IO threadDelayControl.Concurrent.MVar mkWeakMVaraddMVarFinalizermodifyMVarMaskedmodifyMVarMasked_ modifyMVar modifyMVar_withMVarswapMVarreadMVarmkWeakThreadIdthreadCapabilityyield myThreadId killThreadgetNumCapabilitiesforkOnWithUnmaskforkOnforkIOWithUnmaskforkIOUnmaskedforkIOThreadIdGHC.MVar isEmptyMVar tryPutMVar tryTakeMVarputMVartakeMVarnewMVar newEmptyMVarMVar