Solution
= Solution
\b[`toTree` needs `Ord a`; `fromTree` does not.] Construction compares each key against a pivot. Flattening merely traverses and concatenates the buckets, so its more general type is `Tree a -> [a]`. A manually constructed tree need not satisfy the search-tree <invariant>; `fromTree` still flattens it, although its output need not be sorted.