B+H      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     None   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQR !"#$%&'()*+,-./0123456789:;<=>?@ABCDEVFWGXYZ\]^_`abcdefglmnopqrstuvwxyz{|}~RPQd'  ,(%$.&)#" !}|{zyxwvutsrqponml+*~8EFG0AB1:?CDV;<=>4567932`_^]\MLKacbNegf/IHOJZYX-W@ 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 TextParse Text to a valueThe 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.Note 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.  HIJ KLM !"#$%&'()*+,-N./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTU !"#$%&'()*+,-./0123456789:;<=>?@ABCDEOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~VFWGXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     +     kj[ihUTS          ! "#$%&'()*+,+-./01234 5 6789:;1<=>?@A%B+CDEDFDGDHDIJKJLMNODPQDRDSTUTVTWXY ZD[D\X]X^D_D`Da+b+c+d#e#f#ghijklmlnopqrqsqtuvwxyzy{y|}~XXXX999911111111111111111111111111111111>>>>>>>        y        !"#$%&'()*+,*-.*-/*-0*-1*-2*-3'45'67'68'69'6:;<=>?=@ABCDEFGHIJK'LM'LN'OPQRSTUVWXYZ[\]^_`abcbdbebfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbxbybzb{b|b}b~bbbbbbbbbbbwwww      basic-prelude-0.3.11 CorePrelude BasicPreludebaseGHC.Errerrorghc-primGHC.Primseq Data.TuplefstsndGHC.Base otherwise$ undefinedGHC.Num fromInteger-GHC.Real fromRationalGHC.EnumenumFrom enumFromThen enumFromToenumFromThenTo GHC.Classes==>=negatefail>>=>>fmapreturn Control.Arrowfirst Data.String fromString fromIntegral realToFrac toInteger toRationalControl.Applicative<*>pureBoundedEnumEq GHC.FloatFloating FractionalIntegralMonadFunctorNumOrdGHC.ReadReadReal RealFloatRealFracGHC.ShowShowData.Typeable.InternalTypeableIsString Applicative GHC.TypesBoolCharDoubleFloatIntGHC.IntInt32Int64 integer-gmpGHC.Integer.TypeIntegerOrderingRationalIOWordGHC.WordWord8Word32Word64 Data.EitherEitherStringFalseTrueLeftRightLTEQGT<**><|>&&&***second Data.Functionon Data.Functor<$>Control.Category.idPrelude$! System.IOreadLngetCharputCharForeign.StorableStorableGHC.IO.Exception IOException GHC.Exception fromException toException Exception Text.Readreads Data.Monoid<>mconcatmappendmemptyMonoidpartitionEithersrightsleftseitherData.Ord comparingDownlex readParenreadList readsPrecacoshatanhasinhcoshtanhsinhacosatanasincostansinlogBase**logsqrtexppiatan2isIEEEisNegativeZeroisDenormalized isInfiniteisNaN scaleFloat significandexponent encodeFloat decodeFloat floatRange floatDigits floatRadixlcmgcd^^^oddevendivModquotRemmoddivremquotrecip/floorceilingroundtruncateproperFractionmaxBoundminBoundfromEnumtoEnumpredsuccText.ParserCombinators.ReadPReadS showParen showStringshowCharshowsShowSshowList showsPrec Control.Monad>=>=<< Data.MaybemapMaybe catMaybes listToMaybe maybeToList fromMaybe isNothingisJustmaybeNothingJustMaybeswapuncurrycurrysubtractsignumabs*+asTypeOfuntilflipconst<$ SomeException/=compare<=&&||not<>maxminbytestring-0.10.4.0Data.ByteString.Internal ByteStringcontainers-0.5.5.1Data.IntMap.BaseIntMapData.IntSet.BaseIntSet Data.Map.BaseMap Data.Set.BaseSet Data.SequenceSeqtransformers-0.3.0.0Control.Monad.IO.ClassliftIOMonadIOControl.Monad.Trans.Classlifthashable-1.2.3.1Data.Hashable.Class hashWithSalthashHashablevector-0.10.12.2Data.Vector.Unboxed.BaseUnboxlifted-base-0.2.3.3Control.Exception.LifteduninterruptibleMask_uninterruptibleMasktryJusttrythrowIO onExceptionmask_mask handleJusthandlefinally catchJustcatchbracket_bracketOnErrorbracket text-1.2.0.3Data.Text.InternalTextsystem-filepath-0.4.13Filesystem.Path.InternalFilePathFilesystem.Path hasExtensionfilename directorybasename<.> Data.Text.IOgetLine Data.Textwordsunwordsunlineslines Data.VectorVectorunordered-containers-0.2.5.1Data.HashMap.BaseHashMap Data.HashSetHashSetSVectorUVector LByteStringLTextequatinggetArgsputStrputStrLnprintreadArgsData.Text.Lazy.IOinteract getContentsData.Text.Encoding encodeUtf8mapempty++concat intercalatesumproductshowreadreadIOreadFile writeFile appendFile textToString ltextToString decodeUtf8readMaySystem.IO.Error catchIOErrorannotateIOError modifyIOErrorioeSetFileName ioeSetHandleioeSetLocationioeSetErrorStringioeSetErrorTypeioeGetFileName ioeGetHandleioeGetLocationioeGetErrorStringioeGetErrorTypeisUserErrorTypeisPermissionErrorTypeisIllegalOperationErrorTypeisEOFErrorTypeisFullErrorTypeisAlreadyInUseErrorTypeisDoesNotExistErrorTypeisAlreadyExistsErrorType userErrorTypepermissionErrorTypeillegalOperationErrorType eofErrorType fullErrorTypealreadyInUseErrorTypedoesNotExistErrorTypealreadyExistsErrorType isUserErrorisPermissionErrorisIllegalOperation isEOFError isFullErrorisAlreadyInUseErrorisDoesNotExistErrorisAlreadyExistsError mkIOError tryIOErrorioError IOErrorType userErrorIOErrorfoldrGHC.ListfilterzipguardliftMjoin MonadPlus Data.Listfoldl1'foldl1foldl'unfoldrsortBysort permutations subsequencestailsinitsgroupBygroupdeleteFirstsByunzip7unzip6unzip5unzip4zipWith7zipWith6zipWith5zipWith4zip7zip6zip5zip4genericReplicate genericIndexgenericSplitAt genericDrop genericTake genericLength minimumBy maximumByminimummaximuminsertByinsert mapAccumR mapAccumL partition transpose intersperse intersectBy intersectunionByunion\\deleteBydeletenubBynub isInfixOf isSuffixOf isPrefixOf findIndices findIndexfind elemIndices elemIndex stripPrefix dropWhileEndmfilterapliftM5liftM4liftM3liftM2unlesswhen replicateM_ replicateMfoldM_foldM zipWithM_zipWithM mapAndUnzipMvoidforever<=<msumforM_forMfilterMmapM_mapM sequence_sequencemplusmzerounzip3unzipzipWith3zipWithzip3!! concatMaplookupnotElemelemallanyorandreversebreakspansplitAtdroptake dropWhile takeWhilecycle replicaterepeatiteratescanr1scanrfoldr1scanl1scanlfoldllengthnullinitlasttailhead