0)uu      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstSafe&'+,-;<=>?FSTV3Open-family for the ordering operation in the sort =Value-level quick sort that respects the type-level ordering AType-level quick sort for normalising the representation of sets Construct a subsetset s from a superset t *Value-level counterpart to the type-level   Note: the value-level case for equal types is not define here, but should be given per-application, e.g., custom merging behaviour may be required %Remove duplicates from a sorted list ASplitting a union a set, given the sets we want to split it into Delete elements from a set -List append (essentially set disjoint union) Union of sets u2Useful properties to be able to refer to someties &Predicate to check if in the set form ;At the type level, normalise the list form to the set form <At the value level, noramlise the list form to the set form  "   vwxy   z{Safe&'+,-;<=>?FSTV':Construct a submap s from a supermap t <CSplitting a union of maps, given the maps we want to split it into |=Value-level quick sort that respects the type-level ordering C;At the type level, normalise the list form to the map form D-Predicate to check if in normalised map form EUpdatability as a type class FUpdate a map with m at variable v with a value of type t to produce a map of type n G)Membership test a type class (predicate) HDValue-level lookup of elements from a map, via type class predicate IZA value-level heterogenously-typed Map (with type-level representation in terms of lists) L4Pair a symbol (representing a variable) with a type N!Membership test as type function O)Type-level lookup of elements from a map P"Delete elements from a map by key QHOpen type family for combining values in a map (that have the same key) }Apply Q6 to values with matching key (removes duplicate keys) RUnion of two finite maps SA key-value pair U<At the value level, noramlise the list form to the map form V'Union of two finite maps (normalising) ~,Append of two finite maps (non normalising) :;<=>?@ABCDEFGHIJKLMNOPQRSTUV#STRBVLMIJKQ@A>??ONP<==GHHEFFDCU:;; :;<=>?@A|EFGHIJKLMSTT4      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGGHIJKLM NOPQRSTUVWXY;Z:./0156[\*+,-]^_`abcdef!abcdefg.type-level-sets-0.8.6.0-2i1ZRRODycEDhHfnEweBkM Data.Type.Set Data.Type.MapCmpSortable quicksortDeleteFilterFlagFMinFMaxSortSubsetsubsetNubablenubNubSplitsplitRemoveremove:\:++ UnionableUnionIsSetAsSetSetEmptyExtProxyasSetunionappend$fEqSet $fShowSet $fShow'Set $fShow'Set0 $fShowSet0 $fRemove:x $fRemove:x0 $fRemove[]t $fSplits:: $fSplit:t: $fSplit::: $fSplit[][][] $fNubable: $fNubable:0 $fNubable:1 $fNubable[] $fSubset:: $fSubsets: $fSubset[][] $fConderFalse $fConderTrue$fFilterVFMaxp:$fFilterVFMinp: $fFilterVfp[] $fSortable: $fSortable[]Submapsubmap CombinablecombineAsMapIsMap UpdatableupdateIsMemberlookpMapVarMemberLookupCombineMapping:->asMap $fShowVar$fEqMap$fEqMap0 $fShowMap $fIsMembervt:$fIsMembervt:0$fUpdatablevt[]:$fUpdatablevt::$fUpdatablevt::0 $fShow'Map $fShow'Map0 $fShowMap0$fFilterVfkv[]$fFilterVFMaxkv:$fFilterVFMinkv: $fSubmap:: $fSubmaps: $fSubmap[][] SetPropertiesCondercondFilterVfilterVShow'show'