!zC      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRST U V W X 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 x y z { | } ~                              Safe>@A4fMNOPQRMNOPQRR4Unsafe>@AFV5' ! #76543210/.-,+*)('&%$#"$ %(  +,EDCBA@?>=<;:98-.9:;=>?@kAmBGIJKMNSTVWefghij)*!{|}~S ! #76543210/.-,+*)('&%$#"$ %(  +,EDCBA@?>=<;:98-.9:;=>?@kAmBGIJKMNSTVWefghij)*!{|}~SS0 Safe>@A;`TWVUTUVW Safe>@ABe protoludeThe C operator lifted to a monad. If the first argument evaluates to p. the second argument will not be evaluated.f protolude# lifted to an Applicative. Unlike e the operator is not short-circuiting.g protoludeThe C operator lifted to a monad. If the first argument evaluates to l. the second argument will not be evaluated.h protolude# lifted to an Applicative. Unlike g the operator is not short-circuiting. `abcdefgh abcd`gehfe2f2g3h3Safe,>@AHC  Trustworthy=>?@ADbijklmnoijnoklm Safe=>?@AG> protoludeConvert from one Unicode textual type to another. Not for serialization/deserialization, so doesn't have instances for bytestrings.Safe>@AG None -.>@AEFHXH Trustworthy>@AISafe>@AI 'wxyz 'xzyw4Safe>@AJC Trustworthy>@AJ"&     "&      Trustworthy,2>@AMy protolude/Uncatchable exceptions thrown and never caught.Safe>@AMSafe>@ANSafe>@AP' protolude Alias for  Trustworthy =>?@AP   Trustworthy>@AQ   Trustworthy>@AV\  protolude8The identity function, returns the give value unchanged. protolude)Apply a function n times to a given value protoludeThe print function outputs a value of any printable type to the standard output device. Printable types are those that are instances of class Show; print converts values to strings for output using the show operation and adds a newline. protoludeLifted throwIO protoludeLifted throwTo protolude-Do nothing returning unit inside applicative. protoludeLift an M- operation with 1 argument into another monad protoludeLift an M. operation with 2 arguments into another monad protolude#Terminate main process with failure ! "#76543210/.-,+*)('&%$#"$ %&'(  )*+,EDCBA@?>=<;:98-./01234c56789:;< =>lp?@kAmBCDEFGHnoIstuJKLMNOPQRSTUqrVWXYZ[\]^_`abdefghij~          !"#$%&'()*+,.-/0123456789:<;>=@?BADCFEHGJIKLMNOPQRSTUVWXYZ[]\_^a`cbedgfihnmlkjqpotsruvwxyz{|}~ !"#$%&'()*+,-vwxyz{|}      FGHIJKLMNOPQRSTUVWXYZonmlkjihgfedcba`_^]\[srqptuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRS`abcdefghf ! #76543210/.-,+*)('&%$#"$ %(  +,EDCBA@?>=<;:98-.9:;=>?@kAmBGIJKMNSTVWefghij)*{|}~Stuv>lp`abcdefgh'wxyzUqr2MNOPQR+,.-0123456789:<;>=@?BADCFEHGJIYZ[]\_^a`cbedgfihnmlkjqpovwxyz{|}1")Istu   3<  /  0  ()*+,-./01#$%&' !"KL /VKLMNOX2BCDEFNOPQRFGHWXYZonmlkjihgfedcba`_^]\[srqp?IJKLMNOPQRSTUHno4c5678XYZ[\]^_`abdvwxyz{|}3456789:;<=>?@ABCDEFGHIJ*~tsru~ !"#$%&'(PQRSTUVWL Unsafe>@Ay. !"!#$%&'&()*+,+-+.+/0102&34567)8)9):);<=>?@A+B+C0DEF)G)HIJ&K0LMN)OEP)QRSTUVWXYZ[\]^]_]`]a]bcdefghijklmlnlolplqrsrtrurvwxyz{l|)})~llll]]]]]]]]]]]]]llcllllzzllll]]]]]]]]E)))))))))))))))))))))++             !"#$%&%'%(%)*+*,*-*./0/1/2/34567689:9;9<9<9=9>9?9@9@ABACgDjEFGHIHJHK<L<M<N<O<P<Q<R<S<T<U<V<W<X<YZ[Z\Z]Z]^_^`^`abcdedfdghijkjljmjnjojpjqjrjstutvwxwywzwz{|}~}}}}}}}}}}}}}}}}}}}}}}}}}}d[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]] ]] ] ]] ] ]]]]]]]]]]]]]]]]]]] e!e"e#e$e%e%c&c&'(')'*'+','-'.'/'0'1'2'3'4'5'6'7'8'9:;:<=>=?=@=ABCDEFGHIJKJLJLMNMNOPOQORORSTSUSVSWSXSYS1Z[Z\]^]_]`]a]bcdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzE{E|E}E~EEEEEEEEEEE)))))))))))))))))))))))++++++RRRR!!!     &&&&& !"#$%&'()*+,-./0123456789:;<0=0>0?0@0A0B0C0D0E0FGHIJKLJMNJOPJQRJSTUVWUVXUVYUVZUV[\]^\]_\]`\]abcdefgefhefiefjefkeflemnemoempemqemrestesuesvbwxbwxbwybwzbw{bw|bw}bw~bwbbbbbbbbbbbbbbbbwbw 3 2 1 0                                                                          !"#$%&'()*+c,b-./0123456789:;<=>?@ABCDEFGH IJKLMNOPQRSTUVWXYZ[Z\Z]Z^Z_`abcZdZeZfZgZhZijkjkjljmjmjnjojojpqqrsstuuvwwxyyz{{|}}~&protolude-0.3.0-2wdl5ADWXt8DxyUh9xtxakProtolude.Base ProtoludeProtolude.MonadProtolude.FunctorProtolude.PartialProtolude.ListProtolude.EitherProtolude.ApplicativeProtolude.BifunctorProtolude.BoolProtolude.ConvProtolude.ConvertTextProtolude.ErrorProtolude.ExceptionsProtolude.PanicProtolude.SafeProtolude.SemiringProtolude.ShowProtolude.DebugProtolude.UnsafeProtolude.CallStackbaseGHC.Base++ghc-primGHC.PrimseqGHC.Listfilterzip System.IOprint Data.Tuplefstsnd otherwise$GHC.Num fromInteger-GHC.Real fromRationalGHC.EnumenumFrom enumFromThen enumFromToenumFromThenTo GHC.Classes==>=negate>>=>>fmapreturn fromIntegral realToFrac toInteger toRational Control.Monadguardjoin<*>pure*>BoundedEnumEq GHC.FloatFloating FractionalIntegralMonadFunctorNumOrdGHC.ReadReadReal RealFloatRealFracGHC.ShowShowData.Typeable.InternalTypeableControl.Monad.Fail MonadFail Data.StringIsString Applicative Data.FoldableFoldable GHC.GenericsGenericGeneric1Datatype ConstructorSelector GHC.TypeNatsKnownNat GHC.TypeLits KnownSymbolGHC.OverloadedLabelsIsLabel Semigroup GHC.RecordsHasField GHC.TypesBoolCharDoubleFloatIntGHC.IntInt8Int16Int32Int64 integer-gmpGHC.Integer.TypeInteger GHC.MaybeMaybeOrderingRatioRational GHC.Stable StablePtrIOWordGHC.WordWord8Word16Word32Word64GHC.PtrPtrFunPtr Data.EitherEitherType ConstraintV1U1K1M1:+::*::.:Rec0D1C1S1RepURecNatSymbolCmpNat Coercible GHC.StaticPtr StaticPtrGHC.Stack.Types CallStackD#FalseF#NothingJustTrueLeftRightLTEQGTPrefixIInfixILeftAssociativeRightAssociativeNotAssociativeMetaDataMetaConsMetaSelGHC.IO.Handle.TypesHandleGHC.STST GHC.Conc.SyncforkOnWithUnmaskforkIOWithUnmaskforkOnControl.ConcurrentforkOSThreadId"async-2.2.2-JNOgs3QkEuXLm97AkAPhACControl.Concurrent.Async concurrentlyrace_racelink2linkwaitBothwaitEitherCancel waitEither_ waitEitherwaitEitherCatchCancelwaitEitherCatch waitAnyCancelwaitAnywaitAnyCatchCancel waitAnyCatch cancelWithcancelpoll waitCatchwait withAsyncOnwithAsyncBound withAsyncasyncOn asyncBoundasync asyncThreadIdAsyncrunConcurrently ConcurrentlyshowSignedFloatintegralEnumFromThenTointegralEnumFromTointegralEnumFromThenintegralEnumFromgcdWord'gcdInt'^^%^^^%^numericEnumFromThenTonumericEnumFromTonumericEnumFromThennumericEnumFrom notANumberinfinity ratioPrec1 ratioPrecunderflowError overflowErrorratioZeroDenominatorError divZeroErrorreduceboundedEnumFromThenboundedEnumFrommaxIntminInt Data.Complexphase magnitudepolarcismkPolar conjugateimagPartrealPart:+Complex Data.VoidvacuousabsurdVoidData.Semigroupoption mtimesDefaultdiffcycle1 WrappedMonoid getOptionOptionthreadWaitWriteSTMthreadWaitReadSTMthreadWaitWritethreadWaitReadrunInUnboundThreadrunInBoundThreadisCurrentThreadBoundforkOSWithUnmask forkFinallyrtsSupportsBoundThreadsControl.Concurrent.ChanwriteList2ChangetChanContentsdupChanreadChan writeChannewChanChanControl.Concurrent.QSem signalQSemwaitQSemnewQSemQSemControl.Concurrent.QSemN signalQSemN waitQSemNnewQSemNQSemNData.Bifunctorsecondfirstbimap BifunctorData.List.NonEmptynonEmptyGHC.ExecutionStackshowStackTrace getStackTraceGHC.ExecutionStack.Internal sourceColumn sourceLineSrcLocsrcLoc functionName objectNameLocationControl.Monad.IO.ClassliftIOMonadIO fromLabelgetFieldSystem.EnvironmentgetArgs System.Exit exitSuccess exitFailureexitWithmfilter<$!>unless replicateM_ replicateMfoldM_foldM zipWithM_zipWithM mapAndUnzipMforever<=<>=>filterMControl.Applicativeoptional getZipListZipListData.Functor.Identity runIdentityIdentitywithFileputStrLnputStrGHC.IO.Handle.FDopenFilestderrstdin GHC.Conc.IO threadDelayControl.Concurrent.MVar mkWeakMVaraddMVarFinalizermodifyMVarMaskedmodifyMVarMasked_ modifyMVar modifyMVar_withMVarMaskedwithMVarswapMVar GHC.StackwithFrozenCallStack callStackControl.ExceptionallowInterruptcatchesHandlerControl.Monad.ST.ImpfixSTControl.Exception.BasebracketOnErrorbracket_finallybracket onExceptiontryJusttry mapException handleJusthandle catchJustPatternMatchFail RecSelError RecConError RecUpdError NoMethodError TypeErrorNonTerminationNestedAtomicallycatchSTMthrowSTMorElseretry atomicallymkWeakThreadIdthreadCapabilityyield myThreadId killThreadsetNumCapabilitiesgetNumCapabilitiesforkIOSTMGHC.IO.ExceptionioErrorasyncExceptionFromExceptionasyncExceptionToExceptionBlockedIndefinitelyOnMVarBlockedIndefinitelyOnSTMDeadlockAllocationLimitExceededCompactionFailedAssertionFailedSomeAsyncException UserInterrupt ThreadKilled HeapOverflow StackOverflowAsyncExceptionUndefinedElementIndexOutOfBoundsArrayException ExitFailure ExitSuccessExitCodestdoutGHC.IOevaluateuninterruptibleMaskuninterruptibleMask_maskmask_getMaskingState interruptiblecatchFilePathMaskedUninterruptibleMaskedInterruptibleUnmasked MaskingState IOException GHC.ExceptionprettyCallStack prettySrcLoc ErrorCallErrorCallWithLocationGHC.Exception.Type SomeExceptiondisplayException fromException toException ExceptionRatioZeroDenominatorDenormal DivideByZeroLossOfPrecision UnderflowOverflowArithException Data.TypeablegcasteqTcasttypeReptypeOfTypeRepData.Functor.ConstgetConstConstfindnotElem minimumBy maximumByallanyorand concatMapconcatmsumasum sequence_ sequenceA_forM_mapM_for_ traverse_foldlMfoldrMproductsumminimummaximumelemlengthnulltoListfoldl1foldr1foldl'foldlfoldr'foldrfoldMapfoldData.Semigroup.Internal stimesMonoidstimesIdempotentunK1unM1R1L1unComp1Comp1 isNewtype packageName moduleName datatypeName conIsRecord conFixityconNameInfixPrefixFixityFixityI AssociativityselDecidedStrictnessselSourceStrictnessselSourceUnpackednessselNametofromMeta someSymbolVal someNatVal symbolValnatVal SomeSymbolSomeNat Data.OldListunfoldrsortBysort permutations subsequencestailsinitsgroupBygroupgenericReplicategenericSplitAt genericDrop genericTake genericLength transpose intercalate intersperse isPrefixOf Data.CharisLetter digitToInt Text.Readread readMaybe readEitherreads fromRightfromLeftisRightisLeftpartitionEithersrightsleftseitherData.Ord comparingDown Data.ProxyProxyData.Type.Coercionrepr coerceWithCoercionData.Type.Equality gcastWithcastWithtranssymRefl:~: Foreign.PtrWordPtrIntPtr GHC.IO.IOMode ReadWriteMode AppendMode WriteModeReadModeIOModeForeign.StorableStorable showFloatlog1mexplog1pexpexpm1log1patanhacoshasinhtanhcoshsinhatanacosasintancossinlogBase**sqrtlogexppiatan2isIEEEisNegativeZeroisDenormalized isInfiniteisNaN scaleFloat significandexponent encodeFloat decodeFloat floatRange floatDigits floatRadix byteSwap64 byteSwap32 byteSwap16 GHC.UnicodetoTitletoUppertoLowerisLowerisUpperisPrint isControl isAlphaNumisAlpha isHexDigitisDigitisSpaceisAsciirunST Data.BitstoIntegralSizedpopCountDefaulttestBitDefault bitDefaultpopCountrotateRrotateLshiftRshiftLisSignedbitSize bitSizeMaybetestBit complementBitclearBitsetBitbitzeroBitsrotateshift complementxor.|..&.BitscountTrailingZeroscountLeadingZeros finiteBitSize FiniteBits Data.Function&onfix Data.Functorvoid$><&><$>lcmgcd^^^oddeven showSigned denominator numerator%divModquotRemmoddivremquotrecip/floorceilingroundtruncateproperFractionmaxBoundminBoundfromEnumtoEnumpredsuccGHC.Charchr intToDigitshowListshow showsPrecunzipzipWith!!reversebreaksplitAtdroptake dropWhile takeWhilecycle replicaterepeatiteratescanrscanl'scanlinitlasttailhead Data.MaybemapMaybe catMaybes listToMaybe maybeToList fromMaybefromJust isNothingisJustmaybeswapuncurrycurryGHC.MVar isEmptyMVar tryReadMVar tryPutMVar tryTakeMVarputMVarreadMVartakeMVarnewMVar newEmptyMVarMVarsubtractsignumabs*+ GHC.Stack.CCScurrentCallStackasTypeOfuntilflip.constordapliftM5liftM4liftM3liftM2liftMwhen=<<liftA3liftA<**>stimessconcat<$<*liftA2manysome<|>empty Alternativemplusmzero MonadPlus:|NonEmpty getCallStack HasCallStackstimesIdempotentMonoid/=<=compare&&||not<>maxminbytestring-0.10.8.2Data.ByteString.Internal ByteStringcontainers-0.6.0.1Data.IntMap.InternalIntMapData.IntSet.InternalIntSetData.Map.InternalMapData.Sequence.InternalSeqData.Set.InternalSetdeepseq-1.4.4.0Control.DeepSeqforce$!!deepseqrnfNFData'hashable-1.3.0.0-1RsrIcitxVDKffGN1TuMlmData.Hashable.Class hashUsinghash hashWithSaltHashabletransformers-0.5.5.0Control.Monad.Trans.Classlift mtl-2.2.2Control.Monad.State.Classgetsmodifystateputget MonadStateControl.Monad.Reader.Classasksreaderlocalask MonadReaderControl.Monad.Error.Class catchError throwError MonadErrorControl.Monad.Trans.ExceptExceptTExcept runExcept mapExcept withExcept runExceptT mapExceptT withExceptTControl.Monad.Trans.ReaderReaderT runReaderTReader runReaderControl.Monad.Trans.State.LazyStateT runStateTStaterunState evalState execState withState evalStateT execStateT stm-2.5.0.0Control.Monad.STMcheck text-1.2.3.1 Data.Text.IOgetLine getContentsinteract appendFile writeFilereadFileData.Text.Lazy fromStricttoStrict Data.TextunwordsunlineslineswordsData.Text.Encoding encodeUtf8 decodeUtf8' decodeUtf8decodeUtf8WithData.Text.InternalTextData.Text.Encoding.Errorreplaceignore lenientDecode strictDecodeOnError OnDecodeErrorUnicodeExceptioncatchEthrowEorAltorEmptyeitherApurerliftAA2<<*>>$!$fBifunctorConst$fBifunctorEither$fBifunctor(,,,,,,)$fBifunctor(,,,,,)$fBifunctor(,,,,)$fBifunctor(,,,)$fBifunctor(,,)$fBifunctor(,)boolwhenMunlessMifMguardM||^<||>&&^<&&> StringConvstrConvLeniencyLenientStricttoStoSL$fStringConvTextByteString$fStringConvTextByteString0$fStringConvTextText$fStringConvTextText0$fStringConvText[]$fStringConvTextText1$fStringConvTextText2$fStringConvTextByteString1$fStringConvTextByteString2$fStringConvText[]0$fStringConvByteStringText$fStringConvByteStringText0 $fStringConvByteStringByteString!$fStringConvByteStringByteString0$fStringConvByteString[]$fStringConvByteStringText1$fStringConvByteStringText2!$fStringConvByteStringByteString1!$fStringConvByteStringByteString2$fStringConvByteString[]0$fStringConv[]Text$fStringConv[]Text0$fStringConv[]ByteString$fStringConv[]ByteString0$fStringConv[][] $fEqLeniency$fShowLeniency $fOrdLeniency$fEnumLeniency$fBoundedLeniency ConvertTexttoUtf8 toUtf8Lazy$fConvertTextTextText$fConvertTextTextText0$fConvertTextText[]$fConvertTextTextText1$fConvertTextTextText2$fConvertTextText[]0$fConvertText[]Text$fConvertText[]Text0$fConvertText[][] leftToMaybe rightToMaybe maybeToRight maybeToLeft maybeEmpty maybeToEithererrorhushnotetryIO<<$>>foreachsortOnordNublist concatMapMliftM'liftM2' FatalErrorfatalErrorMessagepanic$fExceptionFatalError$fShowFatalErrorheadMayheadDefinitMayinitDefinitSafetailMaytailDeftailSafelastMaylastDef minimumMay maximumMay minimumDef maximumDef foldr1May foldl1May foldl1May'atMayatDefSemiringone<.>zeroPrinthPutStr hPutStrLnputErrLnputTextputLText putByteStringputLByteString putErrText $fPrint[]$fPrintByteString$fPrintByteString0 $fPrintText $fPrintText0tracetraceIO traceShow traceShowId traceShowMtraceMtraceIdnotImplemented undefinedwitness LByteStringLTextidentitymapunconsunsnocapplyNthrowIOthrowTopassguardedguardedAliftIO1liftIO2die unsafeHead unsafeTail unsafeInit unsafeLastunsafeFromJust unsafeIndex unsafeThrow unsafeReadmemptyData.Traversable TraversabletraversemapM sequenceAsequence<>MonoidmappendmconcatfoldMapDefault fmapDefault mapAccumR mapAccumLforMfor Data.MonoidFirstgetFirstLastgetLastApgetApDualgetDualEndoappEndoAllgetAllAnygetAnySumgetSumProduct getProductAltgetAlt