anchor.diff:          {
               /// Filter type
               Level : 'L
  -
  -            /// All items
  -            AllElements : option<'T []>
   
               /// Child nodes
               Children : IRangeMap<'K, Tree<'K,'L,'T>>
  
positive.code:         | Node n -> 
              Node {
                  Level = n.Level
                  AllElements = Option.map (Array.map f) n.AllElements
                  Children =  n.Children.Map (fun t -> map f t) 
              }
          | Leaf x    -> 
  
negative.code:                         code, go (Array.ofSeq deals) fts
                      )
                      |> conf.BuildMap
                  Tree.Node {Level = level; Children = children}
          go (Array.ofSeq elements) levels
  
      /// Extract all elements from a tree.
      let elements (tree: Tree<'K,'L,'T>) =
          let rec go = function
              | Tree.Leaf x   ->
                  [|x|]
              | Tree.Node n   -> 
                  Array.collect (snd >> go) <| n.Children.Elements()
          go tree