úÎÙL     portable experimentalekmett@gmail.com TrustworthyA  which supports efficient * operations over run-length encoded data. "A single run with a strict length )  !"#$%&'()*+,-./0123456789   &  !"#$%&'()*+,-./0123456789non-portable (type families) experimentalekmett@gmail.com Trustworthy An LZ78 compressed . O(n) Construct an LZ78-compressed  using a HashMap internally.  O(n log n) Contruct an LZ78-compressed  using a Map internally. O(n^2) Contruct an LZ78-compressed 6 using a list internally, requires an instance of Eq,  less efficient than encode. A type-constrained : operation O(n). Recompress with ;  O(n log n). Recompress with < O(n^2). Recompress with = exposes internal structure * >?@ABCDEFGHIJKLMNOPQRSTUVWX    &   >?@ABCDEFGHIJKLMNOPQRSTUVWXnon-portable (type families) experimentalekmett@gmail.com Safe-Inferred  Y          !"#$%&'()*+,-./0123456789:;<=>?=>@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\compressed-3.0.3!Data.Compressed.RunLengthEncodingData.Compressed.Internal.LZ78Data.Compressed.LZ78RLEgetRLERun runLengthtoRunsfromRunsencodedecoderecodeEntryLZ78NilConsToken encodeOrdencodeEq recodeOrdrecodeEqentriesreducers-3.0.1Data.Generator Generator mapReduce encodeList$fAdjustableRLE $fLookupRLE$fZipRLE$fEqRLE $fHashableRLE$fGeneratorRLE $fFoldableRLE $fMonoidRLE $fReduceraRLE $fMonadRLE $fBindRLE$fApplicativeRLE $fApplyRLE $fPointedRLE $fFunctorRLE$fSemigroupRLE$fMeasuredCountRun$fFoldable1Run $fFoldableRun $fMonadRun $fBindRun$fApplicativeRun$fComonadApplyRun $fApplyRun $fPointedRun $fFunctorRun $fComonadRun $fExtendRun$fOrdRunreducehashable-1.2.0.10Data.Hashable.ClassHashableghc-prim GHC.ClassesOrdEq $fZipLZ78$fFoldableWithKeyLZ78$fIndexableLZ78 $fLookupLZ78$fAdjustableLZ78 $fMonadLZ78$fApplicativeLZ78$fHashableEntry $fOrdEntry $fEqEntry$fComonadEntry $fExtendEntry$fFunctorEntry$fFoldableLZ78 $fPointedLZ78 $fFunctorLZ78$fGeneratorLZ78 $fReadLZ78 $fOrdLZ78$fEqLZ78 $fShowLZ78$fHashableToken$fComonadToken $fExtendToken$fTraversableToken$fFoldableToken$fFunctorToken