C+      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     None       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijstuvxyz{|}~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGH    u   v%} *&#",$'! )(t`_6CDE.?@/8=ABab|{~HGF9:;<2345710sj^-zyxxLJI+MK]XW\[ZYRQPNOVUTSiecdfgh>FG     None  map = fmap   empty = mempty   (++) = mappend   concat = mconcat  & intercalate = mconcat .: intersperse -Compute the sum of a finite list of numbers. 1Compute the product of a finite list of numbers. !Convert a value to readable Text Parse Text to a value 'The readIO function is similar to read 6 except that it signals parse failure to the IO monad & instead of terminating the program. 9Read a file and return the contents of the file as Text. # The entire file is read strictly. Write Text to a file. = The file is truncated to zero length before writing begins. !Write Text to the end of a file. Note that this is not the standard Data.Text.Encoding.decodeUtf8. That M function will throw impure exceptions on any decoding errors. This function  instead uses  decodeLenient.  IJK LM !"#$%&'()*+N,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]O^_`abcdefghijPQRklmnopqrstuvwxyz{|}~STUVWXYZ[\]^_`abcdefghijklmnopqrstu vwxyz{|}~!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGH     + qrponmklw     !"#$%&'()*+,-./0123456789/:;<=>?&@ABCDCECFCGCHIJIKLMNCOPCQCRSTSUSVWXYCZC[W\W]C^C_C`abcabdabefgfhijfkflmnomnpmnqmnrmnsmntmnumnvmnwmnxmnymnzmn{mn|mn}mn~ 7<<<7////////////////////////////////   <<<<     77 W $!$"$#$A%A&A'A(A)*+,->./01234W5W6W789898:;< =>?@>AB>CD>EF>GHIJKLMNOPQRSTUVWXYZ[\]^_`abicidieifghgigjgkglgmgngogpgqgrgsgtgugvgwgxgygzg{g|g}g~gggggggggggggggg     basic-prelude-0.3.10 CorePrelude BasicPreludebaseGHC.Errerrorghc-primGHC.Primseq System.IOprint Data.TuplefstsndGHC.Base otherwise$GHC.Num fromInteger-GHC.Real fromRationalGHC.EnumenumFrom enumFromThen enumFromToenumFromThenTo GHC.Classes==>=negatefail>>=>>fmapreturn Control.Arrowfirst Data.String fromString fromIntegral realToFrac toInteger toRationalBoundedEnumEq GHC.FloatFloating FractionalIntegralMonadFunctorNumOrdGHC.ReadReadReal RealFloatRealFracGHC.ShowShowData.Typeable.InternalTypeableIsStringControl.Applicative Applicative GHC.TypesBoolCharDoubleFloatIntGHC.IntInt32Int64 integer-gmpGHC.Integer.TypeIntegerOrderingRationalIOWordGHC.WordWord8Word32Word64 Data.EitherEitherStringFalseTrueLeftRightLTEQGThashable-1.2.2.0Data.Hashable.Classhash hashWithSaltHashable GHC.Exception fromException toExceptionGHC.IO.Exception IOException Exception SomeExceptionlifted-base-0.2.3.0Control.Exception.Lifted onExceptionfinallybracketOnErrorbracket_bracketuninterruptibleMask_uninterruptibleMaskmask_masktryJusttry handleJusthandle catchJustcatchthrowIO Data.Maybe fromMaybeJustNothingbytestring-0.10.0.2Data.ByteString.Internal ByteString text-1.2.0.0Data.Text.InternalTextsystem-filepath-0.4.12Filesystem.Path<.> hasExtensionbasenamefilename directoryFilesystem.Path.InternalFilePath Data.MonoidmappendData.Text.Lazy.IO getContentsinteract Data.Text.IOgetLineData.Text.Encoding encodeUtf8 Data.TextunwordsunlineslineswordsmemptyMaybePrelude$!uncurry readsPrectransformers-0.4.1.0Control.Monad.IO.ClassliftIOMonadIOControl.Monad.Trans.Classliftunordered-containers-0.2.5.1 Data.HashSetHashSetData.HashMap.BaseHashMapminvector-0.10.12.1 Data.VectorVectorData.Vector.Unboxed.BaseUnboxForeign.StorableStorablemaxcompare><=</=Text.ParserCombinators.ReadPReadSShowS showsPrecshowListtruncateroundproperFractionfloorceilingremquotRemquotmoddivModdivrecip/readListsignumabs+* significand scaleFloatisNegativeZeroisNaN isInfiniteisIEEEisDenormalized floatRange floatRadix floatDigitsexponent encodeFloat decodeFloatatan2tanhtansqrtsinhsinpilogBaselogexpcoshcosatanhatanasinhasinacoshacos**toEnumsuccpredfromEnumminBoundmaxBound||not&& Text.ReadreadsreadLnputChargetCharshows showString showParenshowCharoddlcmgcdeven^^^ readParenlexsubtract undefineduntilflipconstasTypeOfcurrymaybeeither Control.Monad=<<Monoidmconcat<>Control.Category.second***&&&<$pure<*><**><|> Data.Functor<$>id>=>typeOf maybeToListmapMaybe listToMaybe isNothingisJust catMaybesrightspartitionEithersleftsData.OrdDown comparing Data.Functiononswapcontainers-0.5.0.0 Data.Map.BaseMap Data.Set.BaseSetData.IntMap.BaseIntMapData.IntSet.BaseIntSet Data.SequenceSeqSVectorUVector LByteStringLTextequatinggetArgsputStrputStrLnreadArgsmapempty++concat intercalatesumproductshowreadreadIOreadFile writeFile appendFile textToString ltextToString decodeUtf8readMayioErrorIOError userError IOErrorTypeSystem.IO.Error userErrorType tryIOErrorpermissionErrorType modifyIOError mkIOErrorisUserErrorType isUserErrorisPermissionErrorTypeisPermissionErrorisIllegalOperationErrorTypeisIllegalOperationisFullErrorType isFullErrorisEOFErrorType isEOFErrorisDoesNotExistErrorTypeisDoesNotExistErrorisAlreadyInUseErrorTypeisAlreadyInUseErrorisAlreadyExistsErrorTypeisAlreadyExistsErrorioeSetLocation ioeSetHandleioeSetFileNameioeSetErrorTypeioeSetErrorStringioeGetLocation ioeGetHandleioeGetFileNameioeGetErrorTypeioeGetErrorStringillegalOperationErrorType fullErrorType eofErrorTypedoesNotExistErrorType catchIOErrorannotateIOErroralreadyInUseErrorTypealreadyExistsErrorTypefoldrGHC.ListfilterzipguardliftM MonadPlus!! Data.ListunfoldrtailheadzipWith3zipWithzip3unzip3unzip takeWhiletakesplitAtspanscanr1scanrscanl1scanlreverse replicaterepeatornullnotElemlookuplengthlastiterateinitfoldr1foldlelem dropWhiledropcycle concatMapbreakanyandallminimummaximumfoldl1 sequence_sequencemapM_mapMmzeromplusap zipWithM_zipWithMwhenvoidunless replicateM_ replicateMmsummfilter mapAndUnzipMliftM5liftM4liftM3liftM2joinforeverforM_forMfoldM_foldMfilterM<=< transpose interspersesortByzipWith7zipWith6zipWith5zipWith4zip7zip6zip5zip4unzip7unzip6unzip5unzip4unionByuniontails subsequences stripPrefixsort permutations partitionnubBynub minimumBy maximumBy mapAccumR mapAccumL isSuffixOf isPrefixOf isInfixOf intersectBy intersectinsertByinsertinitsgroupBygroup genericTakegenericSplitAtgenericReplicate genericLength genericIndex genericDropfoldl1'foldl' findIndices findIndexfind elemIndices elemIndex dropWhileEnddeleteFirstsBydeleteBydelete\\