úÎ'ì&à     SafeA strict version of .+(treeFold (:*:) Empty . map Leaf) [1,2,3,4]+(Leaf 1 :*: Leaf 2) :*: (Leaf 3 :*: Leaf 4)-(treeFold (:*:) Empty . map Leaf) [1,2,3,4,5]8((Leaf 1 :*: Leaf 2) :*: (Leaf 3 :*: Leaf 4)) :*: Leaf 5!treeFold (+) 0 (replicate 10 9.9)99.0A strict version of .&treeFoldMap Leaf (:*:) Empty [1,2,3,4]+(Leaf 1 :*: Leaf 2) :*: (Leaf 3 :*: Leaf 4)A strict version of .#pairFold (++) ["a","b","c","d","e"]["ab","cd","e"]A strict version of .pairFoldMap (:[]) (++) "abcde"["ab","cd","e"]A strict version of  .A strict version of  .SafešReduces a list of values using a binary operation, trying as much as possible to balance. For instance, given the above binary tree type, the operation:+(treeFold (:*:) Empty . map Leaf) [1,2,3,4]+(Leaf 1 :*: Leaf 2) :*: (Leaf 3 :*: Leaf 4)SWill construct a balanced binary tree, whereas the equivalent using a normal fold:$foldr ((:*:) . Leaf) Empty [1,2,3,4]7Leaf 1 :*: (Leaf 2 :*: (Leaf 3 :*: (Leaf 4 :*: Empty)))"Will construct a right-heavy tree.-(treeFold (:*:) Empty . map Leaf) [1,2,3,4,5]8((Leaf 1 :*: Leaf 2) :*: (Leaf 3 :*: Leaf 4)) :*: Leaf 5hOther uses for this function include more stable floating-point summation. The following sum algorithm:!treeFold (+) 0 (replicate 10 9.9)99.0RWill have O(log n) error growth for summing n numbers, in comparison to O(n) for:sum (replicate 10 9.9)99.00000000000001*For a strict version of this function see . Perform a tree fold after a map.&treeFoldMap Leaf (:*:) Empty [1,2,3,4]+(Leaf 1 :*: Leaf 2) :*: (Leaf 3 :*: Leaf 4)*For a strict version of this function see ..Apply a combining function to pairs in a list.#pairFold (++) ["a","b","c","d","e"]["ab","cd","e"]*For a strict version of this function see . ;Apply a combining function to pairs in a list, after a map.pairFoldMap (:[]) (++) "abcde"["ab","cd","e"]*For a strict version of this function see . UPerform a tree fold on a non empty input. For a strict version of this function see  . _Perform a tree fold after a map on non-empty input. For a strict version of this function see  .    Safe  A version of  which works on any .  A version of  which works on any .    NoneA parallel version of .A parallel version of  .A parallel version of .A parallel version of  .       'treefold-0.1.0.0-IP1VOoRYNL4J3WEpFq4P8xData.TreeFold.Strict Data.TreeFoldData.TreeFold.FoldableData.TreeFold.ParalleltreeFold treeFoldMappairFold pairFoldMaptreeFoldNonEmptytreeFoldMapNonEmpty'parallel-3.2.1.0-CNlrARikHUx7Z7NHwpxRS3Control.Parallel.Strategiesrparbase Data.FoldableFoldable