I1_4      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123Noneerror applied to Text Since 0.4.1  ! " #$%&'() *+,-./012345FI6789:;<=GH>LMN?@ABCDEJKPOQVWXZY456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\_`mn]o^srqptuvwxzyYZw) " ! .*'&0(+%$#-,=GH>LMN5FI6@EJK_ABCD9:;<?874m2`3XWVtvuxzy1QPOOsrqp/on None  map = fmap empty = mempty! (++) = mappend" concat = mconcat# $intercalate = mconcat .: intersperse$,Compute the sum of a finite list of numbers.%0Compute the product of a finite list of numbers.& Convert a value to readable Text'$Convert a value to readable IsString Since 0.3.12(Parse Text to a value)The readIO function is similar to read except that it signals parse failure to the IO monad instead of terminating the program.*[Read a file and return the contents of the file as Text. The entire file is read strictly.+RWrite Text to a file. The file is truncated to zero length before writing begins., Write Text to the end of a file./OThis function assumes file paths are encoded in UTF8. If it cannot decode the n&, the result is just an approximation. Since 0.3.130 Since 0.3.131 Since 0.3.132Note that this is not the standard Data.Text.Encoding.decodeUtf8b. That function will throw impure exceptions on any decoding errors. This function instead uses  decodeLenient. !"#$%&'()*+,-./0123_`ab ! " #$%&'() *}~+,-./012abclkjihgfed3UTSR45FI6789:;<=GH>LMN?@ABCDEJKPOcdefghijklmnoQpqrsXWVZY[\]456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ^[\_tuvwxyz{|}`~mn]o^srqptuvwxzy{|      !"#$%&'()*+,-./0123F2lkjihgfedcbacba3UTSR !"#$%&'()*+,    -./012 .~}^|{3]\[ !"#$%&'()*+,-./0123!5            !"#$%&' ( ) * + , -./01234 5 6 789:;1<=>?@A"B CDEFG HIJIKILIMINOPOQRST UIVWIXIYZ[Z\Z]^_I` a bIc^d^eIfIgIhijiklmFnFoFpFq r s tuvuwxyxzx{|}~DDDDDDDDDDDDD^^^^999911111111111111111111111111111111>>>>>>>>                     !"#$%#$&'()'(*'(+,-.,-/,-0,-1,-2,-3,-4,-5,-6,-7,-8,-9,-:,-;,-<,-=>?@>AB>AC>DE>FG>FH>FI>FJ>KLMNOPQRPSTUVWUXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{z|z}z~zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzl lllllllllllllFFFDDDDDDDDDDDDD          ! " # $ % & '(*basic-prelude-0.6.1-Hwc88gNqDxD38DFytJhrPO CorePrelude BasicPreludeghc-primGHC.Primseqbase 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 toRationalmemptymappendmconcat<*>pure*>BoundedEnumEq GHC.FloatFloating FractionalIntegralMonadFunctorNumOrdGHC.ReadReadReal RealFloatRealFracGHC.ShowShowData.Typeable.InternalTypeableIsString Applicative Data.FoldableFoldableData.Traversable TraversableMonoid GHC.TypesBoolCharDoubleFloatIntGHC.IntInt32Int64 integer-gmpGHC.Integer.TypeIntegerMaybeOrderingRationalIOWordGHC.WordWord8Word32Word64 Data.EitherEitherFalseNothingJustTrueLeftRightLTEQGTControl.Monad.IO.ClassliftIOMonadIO Control.Monad>=>sequencemapM sequenceAtraverse&&&***secondControl.Category.id System.IOreadLngetCharputChar Text.ReadreadsForeign.StorableStorableasumminimummaximumelemlengthnullfoldl1foldr1foldl'foldlfoldr'foldrfoldMap Data.Monoid<>GHC.IOFilePathGHC.IO.Exception IOException GHC.ExceptiondisplayException fromException toException ExceptionpartitionEithersrightsleftseitherData.Ord comparingDownlex readParenreadList readsPrecText.ParserCombinators.ReadPReadSatanhacoshasinhtanhcoshsinhatanacosasintancossinlogBase**sqrtlogexppiatan2isIEEEisNegativeZeroisDenormalized isInfiniteisNaN scaleFloat significandexponent encodeFloat decodeFloat floatRange floatDigits floatRadix Data.Boolbool Data.Functionon Data.Functor<$>lcmgcd^^^oddevendivModquotRemmoddivremquotrecip/floorceilingroundtruncateproperFractionmaxBoundminBoundfromEnumtoEnumpredsucc showParen showStringshowCharshowsShowSshowListshow showsPrec Data.MaybemapMaybe catMaybes listToMaybe maybeToList fromMaybe isNothingisJustmaybeswapuncurrycurrysubtractsignumabs*+asTypeOfuntil$!flipconst=<<<$<*<|>StringGHC.Err undefinederror SomeException/=compare<=&&||not<>maxminbytestring-0.10.8.1Data.ByteString.Internal ByteStringcontainers-0.5.7.1 Data.SequenceSeqData.IntMap.BaseIntMapData.IntSet.BaseIntSet Data.Map.BaseMap Data.Set.BaseSetfilepath-1.4.1.0System.FilePath.Posix<.>'hashable-1.2.4.0-Ctl752zbguF6QanxurLOm2Data.Hashable.Classhash hashWithSaltHashable*lifted-base-0.2.3.8-LSXKdE75JIl3uzD4Y2GaXOControl.Exception.Lifted onExceptionfinallybracketOnErrorbracket_bracketuninterruptibleMask_uninterruptibleMaskmask_masktryJusttry handleJusthandle catchJustcatchthrowIO#text-1.2.2.1-9Yh8rJoh8fO2JMLWffT3QsData.Text.InternalTextData.Text.Lazy.IO getContentsinteract Data.Text.IOgetLine Data.TextunwordsunlineslineswordsData.Text.Encoding encodeUtf8transformers-0.5.2.0Control.Monad.Trans.Classlift2unordered-containers-0.2.7.1-5INwdG7O5Jdakf1CqKoOB Data.HashSetHashSetData.HashMap.BaseHashMap&vector-0.11.0.0-6uB77qGCxR6GPLxI2sqsX3 Data.VectorVectorData.Vector.Unboxed.BaseUnboxSVectorUVector LByteStringLTextequatinggetArgsputStrputStrLnprintreadArgsterrormapempty++concat intercalatesumproducttshowfromShowreadreadIOreadFile writeFile appendFile textToString ltextToStringfpToText fpFromText fpToString decodeUtf8readMaySystem.IO.Error catchIOErrorannotateIOError modifyIOErrorioeSetFileName ioeSetHandleioeSetLocationioeSetErrorStringioeSetErrorTypeioeGetFileName ioeGetHandleioeGetLocationioeGetErrorStringioeGetErrorTypeisUserErrorTypeisPermissionErrorTypeisIllegalOperationErrorTypeisEOFErrorTypeisFullErrorTypeisAlreadyInUseErrorTypeisDoesNotExistErrorTypeisAlreadyExistsErrorType userErrorTypepermissionErrorTypeillegalOperationErrorType eofErrorType fullErrorTypealreadyInUseErrorTypedoesNotExistErrorTypealreadyExistsErrorType isUserErrorisPermissionErrorisIllegalOperation isEOFError isFullErrorisAlreadyInUseErrorisDoesNotExistErrorisAlreadyExistsError mkIOError tryIOErrorioError IOErrorType userErrorIOErrorGHC.Listfilterzipguardjoin Data.ListisSubsequenceOfmfilter<$!>unless replicateM_ replicateMfoldM_foldM zipWithM_zipWithM mapAndUnzipMforever<=<filterM mapAccumR mapAccumLforMfindnotElem minimumBy maximumByallanyorand concatMapmsum sequence_forM_mapM_ Data.OldListunfoldrsortOnsortBysort permutations subsequencestailsinitsgroupBygroupdeleteFirstsByunzip7unzip6unzip5unzip4zipWith7zipWith6zipWith5zipWith4zip7zip6zip5zip4genericReplicate genericIndexgenericSplitAt genericDrop genericTake genericLengthinsertByinsert partition transpose intersperse intersectBy intersectunionByunion\\deleteBydeletenubBynub isInfixOf isSuffixOf isPrefixOf findIndices findIndex elemIndices elemIndex stripPrefix dropWhileEndvoidunzip3unzipzipWith3zipWithzip3!!lookupreversebreakspansplitAtdroptake dropWhile takeWhilecycle replicaterepeatiteratescanr1scanrscanl'scanl1scanlfoldl1'initlasttailunconsheadapliftM5liftM4liftM3liftM2liftMwhen MonadPlusmzeromplus