úÎyns÷U      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTportable provisional fox@ucw.czU The class containing a function # which computes the hash values of  given value.  The computed 4 value should be as collision-free as possible, the  probability of  a ==  b should ideally be 1 over the & number of representable values in an V.  Combines two given hash values. Wportable provisional fox@ucw.czAThe abstract type of a HashMap. Its interface is a suitable  subset of Data.IntMap.IntMap. XFind the value at a key.  Calls Y$ when the element can not be found. Same as . ZIs the map empty? Number of elements in the map.  Is the key a member of the map? $Is the key not a member of the map? &Lookup the value at a key in the map. The expression (  def k map) returns the value at key  k or returns def, when the key is not an element of the map. The empty map. A map of one element. Insert a new key/9value pair in the map. If the key is already present in I the map, the associated value is replaced with the supplied value, i.e.   is equivalent to  [. #Insert with a combining function.  f key value mp will # insert the pair (key, value) into mp& if key does not exist in the map. If . the key does exist, the function will insert f new_value old_value. #Insert with a combining function.  f key value mp will # insert the pair (key, value) into mp& if key does not exist in the map. If . the key does exist, the function will insert f key new_value old_value. The expression ( f k x map) is a pair where the  first element is equal to (  k map") and the second element equal to  ( f k x map). \=Delete a key and its value from the map. When the key is not 4 a member of the map, the original map is returned. KAdjust a value at a specific key. When the key is not a member of the map,  the original map is returned. KAdjust a value at a specific key. When the key is not a member of the map,  the original map is returned. The expression ( f k map) updates the value x at k (if it is  in the map). If (f x) is ]#, the element is deleted. If it is  (^ y ), the key k is bound to the new value y. The expression ( f k map) updates the value x at k (if it is  in the map). If (f k x) is ]#, the element is deleted. If it is  (^ y ), the key k is bound to the new value y. KLookup and update. The function returns original value, if it is updated. ! This is different behavior than Data.Map.updateLookupWithKey. Returns the 1 original key value if the map entry is deleted. The expression ( f k map) alters the value x at k , or absence  thereof. 8 can be used to insert, delete, or update a value in an  . The union of a list of maps. 9The union of a list of maps, with a combining operation. %The (left-biased) union of two maps. ? It prefers the first map when duplicate keys are encountered,  i.e. ( ==  [). %The union with a combining function. %The union with a combining function. -Difference between two maps (based on keys). &Difference with a combining function. >Difference with a combining function. When two equal keys are L encountered, the combining function is applied to the key and both values.  If it returns ]4, the element is discarded (proper set difference).  If it returns (^ y+), the element is updated with a new value y. _!<The (left-biased) intersection of two maps (based on keys). ",The intersection with a combining function. #,The intersection with a combining function. $7Is this a proper submap? (ie. a submap but not equal). %GIs this a proper submap? (ie. a submap but not equal). The expression  (% f m1 m2 ) returns ` when m1 and m2 are not  equal, all keys in m1 are in m2 , and when f returns ` when % applied to their respective values. &Is this a submap? 'The expression (' f m1 m2 ) returns ` if all keys in  m1 are in m2 , and when f returns ` when applied to their  respective values. (+Map a function over all values in the map. )+Map a function over all values in the map. * The function *2 threads an accumulating argument through the map  in unspecified order of keys. + The function +* threads an accumulating argument through ' the map in unspecified order of keys. ,/Filter all values that satisfy some predicate. -Filter all keys/$values that satisfy some predicate. .JPartition the map according to some predicate. The first map contains all L elements that satisfy the predicate, the second all elements that fail the  predicate. /JPartition the map according to some predicate. The first map contains all L elements that satisfy the predicate, the second all elements that fail the  predicate. 0Map values and collect the ^ results. 1Map keys/values and collect the ^ results. 2Map values and separate the a and b results. 3Map keys/values and separate the a and b results. cd4&Fold the values in the map, such that 4 f z == e  f z . 6. 5/Fold the keys and values in the map, such that 5 f z ==  e (f f) z .  toAscList. 6AReturn all elements of the map in arbitrary order of their keys. 7/Return all keys of the map in arbitrary order. 8 The set of all keys of the map. 9Return all key//value pairs in the map in arbitrary key order. : Convert the map to a list of key/ value pairs. ;Create a map from a list of key/ value pairs. <Create a map from a list of key/'value pairs with a combining function. =Build a map from a list of key/'value pairs with a combining function. ;  !"#$%&'()*+,-./0123456789:;<=;  !"#()*+456789:;<=,-./0123&'$%;  !"#$%&'()*+,-./0123456789:;<=portable provisional fox@ucw.cz>The abstract type of a HashSet. Its interface is a suitable  subset of Data.IntSet.IntSet. g?Same as L. h@Is the set empty? ANumber of elements in the set. B$Is the element a member of the set? C(Is the element not a member of the set? DIs this a subset? E7Is this a proper subset? (ie. a subset but not equal). FThe empty set. GA set of one element. HIAdd a value to the set. When the value is already an element of the set, $ it is replaced by the new one, ie. H is left-biased. iIKDelete a value in the set. Returns the original set when the value was not  present. JThe union of two sets. KThe union of a list of sets. LDifference between two sets. jMThe intersection of two sets. N1Filter all elements that satisfy some predicate. OJPartition the set according to some predicate. The first set contains all L elements that satisfy the predicate, the second all elements that fail the  predicate. PP f s! is the set obtained by applying f to each element of s. It'Gs worth noting that the size of the result may be smaller if, for some  (x,y), x /= y && f x == f y Q9Fold over the elements of a set in an unspecified order. RAThe elements of a set. (For sets, this is equivalent to toList). S'Convert the set to a list of elements. T&Create a set from a list of elements. >?@ABCDEFGHIJKLMNOPQRST>?@ABCDEFGHIJKLMNOPQRST>?@ABCDEFGHIJKLMNOPQRSTk      !"#$%&'()*+,-./0123456789:;<=>?@AB     CD"%02,8:>?EFGHIJKLMJNOPJQRJQSTFUVJWXJWYZ[JN\J]^B_PT`hashmap-1.0.0.2 Data.Hashable Data.HashMap Data.HashSetHashablehashcombineHashMap!\\nullsizemember notMemberlookupfindWithDefaultempty singletoninsert insertWith insertWithKeyinsertLookupWithKeydeleteadjust adjustWithKeyupdate updateWithKeyupdateLookupWithKeyalterunions unionsWithunion unionWith unionWithKey differencedifferenceWithdifferenceWithKey intersectionintersectionWithintersectionWithKeyisProperSubmapOfisProperSubmapOfBy isSubmapOf isSubmapOfBymap mapWithKeymapAccummapAccumWithKeyfilter filterWithKey partitionpartitionWithKeymapMaybemapMaybeWithKey mapEithermapEitherWithKeyfold foldWithKeyelemskeyskeysSetassocstoListfromList fromListWithfromListWithKeyHashSet isSubsetOfisProperSubsetOfhashByteStringghc-prim GHC.TypesInthashAndCombinebaseGHC.Errerror hashMapTcGHC.Baseconstnonempty Data.MaybeNothingJust delete_emptyGHC.BoolTrue Data.EitherLeftRight maybe_left maybe_rightfoldr Data.Tupleuncurry hashSetTc