8 i      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                                               ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ 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 [ \ ] ^ _ ` 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 { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgh0non-portable (MPTCs and functional dependencies)internal (non-stable)robdockins AT fastmail DOT fmNone Finger trees with element type a", annotated with measures of type v. ' The operations enforce the constraint i v a. O(1). The empty sequence. O(1). A singleton sequence. O(n)4. Create a sequence from a finite list of elements. O(1)0. Add an element to the left end of a sequence. O(1)1. Add an element to the right end of a sequence. O(1). Is this the empty sequence? O(1)&. Analyse the left end of a sequence. O(1)'. Analyse the right end of a sequence. O(log(min(n1,n2))). Concatenate two sequences. O(log(min(i,n-i)))2. Split a sequence at a point where the predicate ) on the accumulated measure changes from j to k. O(n). The reverse of a sequence. ^lmnopqrstuvwxyz{|}~      Tnmloqprvutswxyz{|}~  GHC, Hugs (MPTC and FD)internal (unstable)robdockins AT fastmail DOT fmNone[ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst[ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst[ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst[ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstGHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone^uvwxyz{|}~Luvwxyz{|}~Luwxyz|}~{v[uvwxyz{|}~GHC / Hugs (MPTC and FD)internal (unstable)robdockins AT fastmail DOT fmNone----GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNoneI      !"#$%&9      !"#$%&9 #$%     "!&F      !"#$%&GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNoneG'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_9'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_9'*+W,X-Y./Z0123U)4[56\789:;<V=>?]^@ABCDEFGHIJKLMNOPQRS_T(E'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNoneF`abcdefghijklmnopqrstuvwxyz{|}~9`abcdefghijklmnopqrstuvwxyz{|}~9`cdefghijklbmnopqrstuvwxyz{|}~aD`abcdefghijklmnopqrstuvwxyz{|}~GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNoneF99D GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNoneP     F     F     P      GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNoneA set of values a, implemented as bitwise operations. Useful E for members of class Enum with no more elements than there are bits  in Word. O(1). Is this the empty set? O(1)%. The number of elements in the set. O(1). Is the element in the set? "O(1). The empty set. #O(1). Create a singleton set. $O(1). Insert an element in a set. B If the set already contains an element equal to the given value, $ it is replaced with the new value. &O(1) . Delete an element from a set. )O(1)9. Is this a proper subset? (ie. a subset but not equal). *O(1). Is this a subset?  (s1 * s2) tells whether s1 is a subset of s2. +O(1) . The minimal element of a set. ,O(1) . The maximal element of a set. -O(1). Delete the minimal element. .O(1). Delete the maximal element. <The union of a list of sets: (unions == V = "). =O(1). The union of two sets. BO(1). Difference of two sets. DO(1) . The intersection of two sets. FO(1)1. The complement of a set with its universe set.  complement can be used 1 with bounded types for which the universe set " will be automatically created. GO(n)2. Filter all elements that satisfy the predicate. HO(n)F. Partition the set into two sets, one with all elements that satisfy 1 the predicate and one with all elements that don't satisfy the predicate.  See also split. IO(n).  I f s! is the set obtained by applying f to each element of s. It'>s worth noting that the size of the result may be smaller if,  for some (x,y), x /= y && f x == f y KO(1)> Changes the type of the elements in the set without changing & the representation. Equivalant to map (toEnum . fromEnum), and  to (fromBits . toBits)). This method is operationally a no-op. LO(1)0 Get the underlying bit-encoded representation. ) This method is operationally a no-op. MO(1)6 Create an EnumSet from a bit-encoded representation. ) This method is operationally a no-op. k      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab !"#K !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abK"#Z$\=<&'(a-.124356789:;DBC)*^ !NOPQGHb/+0,RSVWTUXY_J`[%]>?@AEIKFLMj      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab !"# GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNoneWc$%defghijklmnopqrstuvwxyz{|}~&'()*+,-./01234Fcdefghijklmnopqrstuvwxyz{|}~Fcfgijklemnopqrstuvwxyz{|}~hdUc%$defghijklmnopqrstuvwxyz{|}~&'()*+,-./01234 GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNoneI56789:;<=>?@AB;;G65789:;<=>?@AB GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone]CDEFGH      !"#$%&'()*+,-./IJKLMNOPQRSL      !"#$%&'()*+,-./L      !"#$%&'()*+,-./\CDEFGH      !"#$%&'()*+,-./IJKLMNOPQRSGHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone[0TU1V234567W89:;X<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{YZ[\]^_`abL0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{L02345678:<=?9;>@AB\C]DEF^_`abcdefghijklmnopGHIJKLMNqrstOPuvwxyz{QRSTUVWXYZ[1Y0UT1V234567W89:;X<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{YZ[\]^_`abGHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNonee|cdefg}hijkl~mnopqrstuvwxyz{|}J|}~J|~}b|cdefg}hijkl~mnopqrstuvwxyz{|}GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone[~     J     J     X~     GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNoneZ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[L !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[L<= >?!@A"B#$%&'()*+,-.CDEFGHI/01234JKLMNO5PSQRTUVWXYZ6789:;[X !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone^\]^_`abcdefghijklmnopqrstuvwxyz{|}~L\]^_`abcdefghijklmnopqrstuvwxyz{|}~L\^_`bcegdfhijklmnopqrstuvawxyz{|}~]Z\]^_`abcdefghijklmnopqrstuvwxyz{|}~GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone[OOZGHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone]      !"#$%&'()*+,-./0123456789:;<=>?@ABL      !"#$%&'()*+,-./0123456789:;<=>?@ABL      !"#$%&'()*+,-./1023456789:;<=>?@AB\      !"#$%&'()*+,-./0123456789:;<=>?@ABGHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone[CDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~OCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~OCHIJKLMNPRSUOQTVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz|{}~DEFGZCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~GHC, Hugs (MPTC and FD)internal (unstable)robdockins AT fastmail DOT fmNone7777GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone      !"#$%&'()*+,-./0h      !"#$%&'()*+,-./0h     "# !$%&'()*+,-./0      !"#$%&'()*+,-./0GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone123         456789:;<=> ?@ABCD EFGHIJKLMNOPQRS TUVWXYZ[\]^_`abc  defghijklmnopqrstuvwxyz{|}~               !f123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~f1456789:;<=>?@AbcBCDEFGHIJK3[\]^_LMNOPQRSTUVWXYZ`adhjkflmopqrstuvw|}~eignxyz{2123         456789:;<=> ?@ABCD EFGHIJKLMNOPQRS TUVWXYZ[\]^_`abc  defghijklmnopqrstuvwxyz{|}~               !GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNoner " # $ % & ' ( ) * +hhr " # $ % & ' ( ) * +GHC, Hugs (MPTC and FD)stablerobdockins AT fastmail DOT fmNone , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K      !"#$%&'()* L M+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQ NR OS PT QUVW RX SY TZ U[\]^_ V`a Wbcdefg X Y Zh [ \ ] ^ _ ` a b c d e f g h i j k lj      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghj     23 +,/01hHIJKLMN456789:;<=>?@ACBDEFGOPQRTVWXZ\]!')-&(*.^_`abcdefSUY["$#%g , / . - 0 1 2 4 3 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K      !"#$%&'()* L M+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQ NR OS PT QUVW RX SY TZ U[\]^_ V`a Wbcdefg X Y Zh [ \ ] ^ _ ` a b c d e f g h i j k l m !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~&').,+!"#$*-3( []&'+    #$ &'+    #$ &'+    #$ &'+    #$    & '    +  #   $                             +   & '                         !  " # $  %      # $   & '  +               # $                   &  ' ( & '    +                  # $   & ' ) * . , - +  3 ( # $ ! " &')*.,-+3( #$!"+&')*.( 3#$,-!"&')*.,-+3 #$(!"&'),-+#$*.3( !"&'),+!"#$*.-3( )* &')*.,-+3( !"#$&')*.,-+3( #$!"+* &')*.,-+3( !"#$,-./0]123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY&' +Z[\]^_`abcdefgh   ijklmnop#$qrs tuvwxyz{|Y&' +Z[\_` tuvwxydefghz|#$i k j lmnop]sqr^c{Y&' +Z[\^_`ab#$]   sqr tuvwxycdefghijklmnopz{|Y}~&' +Z[\^_`abmonp]#$sqr utvwxycdefghz{|i j k l                                                                                          !"#$$%%&'()*+, -./ 01 023456789:;<=>?@ 5ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno!pqrstuvwxyz{ab|}~`abefcdgLY`abefcdgEdisonCore-1.2.2Data.Edison.Concrete.FingerTreeData.Edison.Seq.DefaultsData.Edison.Seq.BinaryRandListData.Edison.Coll.Defaults Data.Edison.Coll.LazyPairingHeapData.Edison.Coll.LeftistHeapData.Edison.Coll.SkewHeapData.Edison.Coll.SplayHeapData.Edison.Coll.StandardSetData.Edison.Coll.EnumSetData.Edison.Coll.UnbalancedSetData.Edison.Coll.MinHeapData.Edison.Seq.BankersQueueData.Edison.Seq.BraunSeqData.Edison.Seq.FingerSeqData.Edison.Seq.JoinListData.Edison.Seq.MyersStackData.Edison.Seq.RandListData.Edison.Seq.RevSeqData.Edison.Seq.SimpleQueueData.Edison.Seq.SizedSeqData.Edison.Assoc.DefaultsData.Edison.Assoc.AssocListData.Edison.Assoc.PatriciaLoMapData.Edison.Assoc.StandardMapData.Edison.Assoc.TernaryTrieSplit FingerTreestructuralInvariantsizefoldFTtoListreduce1reduce1'strict strictWithmapTreeempty singletonfromListlconsrconsnulllviewrviewappendsplit takeUntil dropUntil splitTreereverserconsUsingAppendrconsUsingFoldrappendUsingFoldr rviewDefaultrtailUsingLviewrtailMUsingLviewconcatUsingFoldrreverseUsingReverseOntoreverseUsingListsreverseOntoUsingFoldlreverseOntoUsingReversefromListUsingConstoListUsingFoldr mapUsingFoldrconcatMapUsingFoldrfoldrUsingListsfoldr'UsingListsfoldlUsingListsfoldl'UsingListsfoldr1UsingListsfoldr1'UsingListsfoldl1UsingListsfoldl1'UsingListsfold1UsingFoldfold1'UsingFold'foldr1UsingLviewfoldr1'UsingLviewfoldl1UsingFoldlfoldl1'UsingFoldl'reducerUsingReduce1reducer'UsingReduce1'reducelUsingReduce1reducel'UsingReduce1'reduce1UsingListsreduce1'UsingListscopyUsingListsinBoundsUsingDropinBoundsUsingLookupMinBoundsUsingSizelookupUsingLookupMlookupUsingDroplookupWithDefaultUsingLookupMlookupWithDefaultUsingDroplookupMUsingDropfilterUsingLviewfilterUsingListsfilterUsingFoldrpartitionUsingListspartitionUsingFoldrupdateUsingAdjustupdateUsingSplitAtadjustUsingListsadjustUsingSplitAtmapWithIndexUsingListsfoldrWithIndexUsingListsfoldrWithIndex'UsingListsfoldlWithIndexUsingListsfoldlWithIndex'UsingListstakeUsingListstakeUsingLviewdropUsingListsdropUsingLtailsplitAtDefaultsplitAtUsingLview subseqDefaulttakeWhileUsingLviewdropWhileUsingLviewsplitWhileUsingLview zipUsingLviewzip3UsingLviewzipWithUsingLviewzipWith3UsingLview zipUsingListszip3UsingListszipWithUsingListszipWith3UsingListsunzipUsingListsunzipUsingFoldrunzip3UsingListsunzip3UsingFoldrunzipWithUsingListsunzipWithUsingFoldrunzipWith3UsingListsunzipWith3UsingFoldrshowsPrecUsingToListreadsPrecUsingFromListdefaultCompare dropMatch tokenMatch readSParens maybeParensSeq moduleNamecopylheadlheadMltailltailMrheadrheadMmapfoldfold'fold1fold1'foldrfoldr'foldlfoldl'inBoundslookuplookupMlookupWithDefaultadjusttakedroprtailrtailMconcat reverseOnto concatMapfoldr1foldr1'foldl1foldl1'reducerreducelreducer'reducel'update mapWithIndexfoldrWithIndexfoldlWithIndexfoldrWithIndex'foldlWithIndex'splitAtfilter partitionsubseq takeWhile dropWhile splitWhilezipzip3zipWithzipWith3unzipunzip3 unzipWith unzipWith3insertSeqUsingUnioninsertSeqUsingFoldrmemberUsingFoldcountUsingMemberlookupAllUsingLookupMdeleteSeqUsingDeleteunionSeqUsingFoldlunionSeqUsingFoldl'unionSeqUsingReducefromSeqUsingFoldrfromSeqUsingUnionSeqtoSeqUsingFold unsafeInsertMaxUsingUnsafeAppendtoOrdSeqUsingFoldr$unsafeFromOrdSeqUsingUnsafeInsertMindisjointUsingToOrdListintersectWitnessUsingToOrdListlookupUsingLookupAlllookupMUsingLookupAlllookupWithDefaultUsingLookupAlldeleteMaxUsingMaxViewfromSeqWithUsingInsertWithinsertUsingInsertWithunionUsingUnionWithfilterUsingOrdListspartitionUsingOrdLists!intersectionUsingIntersectionWithdifferenceUsingOrdLists"symmetricDifferenceUsingDifferenceproperSubsetUsingOrdListssubsetUsingOrdListsproperSubsetOnOrdListssubsetOnOrdListsinsertSeqWithUsingInsertWithunionlUsingUnionWithunionrUsingUnionWithunionWithUsingOrdListsunionSeqWithUsingReducerintersectionWithUsingOrdListsunsafeMapMonotonicUsingFoldrcompareUsingToOrdListHeapinsertuniondelete deleteAll deleteSeqmembercount deleteMinunsafeInsertMinunsafeInsertMax unsafeAppendfilterLTfilterLEfilterGTfilterGEpartitionLT_GEpartitionLE_GTpartitionLT_GTtoSeq lookupAllminViewminElemmaxViewmaxElemunsafeMapMonotonicfromSeq insertSequnionSequnsafeFromOrdSeq deleteMaxtoOrdSeqSet intersection differencesymmetricDifference properSubsetsubset fromSeqWith insertWith insertSeqWithunionlunionr unionWith unionSeqWithintersectionWith complement setCoercetoBitsfromBits fromOrdSeqMinfromColltoCollRev instanceNameSizedsingletonUsingInsertfromSeqUsingInsertSeqdeleteSeqUsingFoldrmemberUsingLookupMsizeUsingElementspartitionUsingFilterfold1UsingElementselementsUsingFoldnullUsingElementsinsertWithUsingLookupMfromSeqWithUsingInsertSeqWith#fromSeqWithKeyUsingInsertSeqWithKeyinsertWithKeyUsingInsertWith"insertSeqWithKeyUsingInsertWithKeyunionSeqWithUsingReduceunionSeqWithUsingFoldrtoSeqUsingFoldWithKeykeysUsingFoldWithKeyunionWithUsingInsertWithunionWithKeyUsingInsertWithKeyunionSeqWithKeyUsingReduceunionSeqWithKeyUsingFoldrintersectionWithUsingLookupMintersectionWithKeyUsingLookupMdifferenceUsingDeleteproperSubsetUsingSubsetsubsetUsingMembersubmapByUsingLookupMproperSubmapByUsingSubmapBysameMapByUsingOrdListssameMapByUsingSubmapBylookupAndDeleteDefaultlookupAndDeleteMDefaultlookupAndDeleteAllDefaultadjustOrInsertUsingMemberadjustOrDeleteDefaultadjustOrDeleteAllDefaultminElemUsingMinViewdeleteMinUsingMinView!minElemWithKeyUsingMinViewWithKeymaxElemUsingMaxView!maxElemWithKeyUsingMaxViewWithKeytoOrdSeqUsingFoldrWithKeyshowsPrecUsingToOrdListreadsPrecUsingUnsafeFromOrdSeqFMlookupAndDeletelookupAndDeleteMlookupAndDeleteAllelements adjustAlladjustOrInsertadjustAllOrInsertadjustOrDeleteadjustOrDeleteAllkeys mapWithKey foldWithKey foldWithKey' filterWithKeypartitionWithKeyminViewWithKeyminElemWithKeymaxViewWithKeymaxElemWithKey foldrWithKey foldrWithKey' foldlWithKey foldlWithKey' insertWithKeyinsertSeqWithKeyfromSeqWithKeyproperSubmapBysubmapBy sameMapBy properSubmapsubmapsameMap unionWithKeyunionSeqWithKeyintersectionWithKeymergeVFM mergeKVFMEdisonAPI-1.2.2Data.Edison.PreludeMeasuredghc-prim GHC.TypesFalseTrueDeepSingleEmptyNodeNode3Node2DigitFourThreeTwoOne foldDigit reduceDigit digitToList sizeDigitsizeNodefoldNode nodeToListnode2node3 nodeToDigitdeepsizeFTftToList reduce1_auxmapNodemapDigit consDigitrcons0 snocDigit lheadDigit ltailDigit rheadDigit rtailDigit digitToTree appendTree0 addDigits0 appendTree1 addDigits1 appendTree2 addDigits2 appendTree3 addDigits3 appendTree4 addDigits4 mappendValdeepLdeepR splitNode splitDigit reverseTree reverseNode reverseDigittwothreefour$fCoArbitraryFingerTree$fArbitraryFingerTree$fCoArbitraryNode$fArbitraryNode$fCoArbitraryDigit$fArbitraryDigit$fShowFingerTree$fOrdFingerTree$fEqFingerTree$fMeasuredvFingerTree$fMeasuredvNode$fMeasuredvDigitOddEvenEhalfmkEvenlookFunmapFstmapSnd $fMonoidSeq$fCoArbitrarySeq$fArbitrarySeq $fReadSeq $fShowSeq$fOrdSeq$fMonadPlusSeq $fMonadSeq $fFunctorSeq $fSequenceSeqH2H1makeH2maxView' $fOrdHeap $fMonoidHeap$fCoArbitraryHeap$fArbitraryHeap $fReadHeap $fShowHeap$fEqHeap$fOrdCollHeapa $fCollHeapa$fOrdCollXHeapa $fCollXHeapaLnodeT$fCoArbitrarySet$fArbitrarySet $fOrdSetSeta $fOrdSetXSeta $fSetSeta $fSetXSeta $fOrdCollSeta $fCollSeta$fOrdCollXSeta $fCollXSeta wordLengthcheck countBitsbitcountlsbmsblowMaskhighMask foldrBits foldrBits_aux foldrBits'foldrBits_aux' foldlBits foldlBits_aux foldlBits'foldlBits_aux'$fOrdSet $fMonoidSet $fReadSet $fShowSet$fEqSetMfromPrimtoPrim$fOrdMin $fMonoidMin$fCoArbitraryMin$fArbitraryMin $fReadMin $fShowMin $fOrdCollMina $fCollMina$fOrdCollXMina $fCollXMinaQmakeQrevfoldr revfoldr'revfoldl revfoldl'$fEqSeqBcombinedelAtElemSizeMunSizeMunElemunSeqmapElem mapUnElem$fCoArbitraryElem$fArbitraryElem$fMeasuredSizeMElem $fMonoidSizeMACjumpTree strictTreestrictWithTreeN $fMonoidRev$fCoArbitraryRev$fArbitraryRev $fReadRev $fShowRev$fOrdRev$fEqRev$fMonadPlusRev $fMonadRev $fFunctorRev $fSequenceRev $fMonoidSized$fCoArbitrarySized$fArbitrarySized $fReadSized $fShowSized $fOrdSized $fEqSized$fMonadPlusSized $fMonadSized$fFunctorSized$fSequenceSizedIuinsertmergeFM toRandList mergeSortFMfoldrFMfoldr1FMfoldrFM' foldr1FM'foldlFMfoldlFM'foldrWithKeyFMfoldrWithKeyFM'foldlWithKeyFMfoldlWithKeyFM' takeWhileFM dropWhileFMspanFMfindMinfindMax $fMonoidFM$fCoArbitraryFM $fArbitraryFM$fReadFM$fShowFM$fOrdFM$fEqFM $fFunctorFM$fOrdFiniteMapFMk$fFiniteMapFMk $fOrdAssocFMk $fAssocFMk$fOrdFiniteMapXFMk$fFiniteMapXFMk$fOrdAssocXFMk $fAssocXFMkinvmakeBlmakeBrmakeB lowestBit branchingBitmaskzeroBit matchPrefixjoinkeepRdoLookupAndDeletesubset' ordListFM ordListFM_rev$fOrdFiniteMapFMInt$fOrdFiniteMapXFMInt$fOrdAssocFMInt$fOrdAssocXFMInt$fFiniteMapFMInt$fFiniteMapXFMInt $fAssocFMInt $fAssocXFMInt$fCoArbitraryMap$fArbitraryMap$fOrdFiniteMapMapk$fFiniteMapMapk$fOrdAssocMapk $fAssocMapk$fOrdFiniteMapXMapk$fFiniteMapXMapk$fOrdAssocXMapk $fAssocXMapkFMBCtxRFMB'FMBbalancesizeFMBmkFMB lookupFMB listToFMBaddToFMBaddToFMlookupAndDelFromFMBlookupAndDelFromFM delFromFMB delFromFM mkBalancedFMBmkVBalancedFMB appendFMBmapVFMmapVFMBmapKVFMnullFMBnullFMsplayFMB mergeVFMB mergeKVFMBbasecasecomb minViewFMBminViewWithKeyFMB minElemFMBminElemWithKeyFMB maxViewFMBmaxViewWithKeyFMB maxElemFMBmaxElemWithKeyFMB filterL_FMB filterG_FMBkeyInvariantFMB actualSizeFMBstructuralInvariantFMBcoarbitrary_maybecoarbitrary_fmb$fOrdFiniteMapFM[]$fOrdFiniteMapXFM[]$fOrdAssocFM[]$fOrdAssocXFM[]$fFiniteMapFM[]$fFiniteMapXFM[] $fAssocFM[] $fAssocXFM[]