anchor.diff:              else
                   let root, r' = AvlTree.DeleteMin r
                   AvlTree.Join (comparer, l, r', root)
  +
  +//
  +and [<Sealed>]
  +    internal AvlTreeDebuggerProxy<'T when 'T : comparison> (avlTree : AvlTree<'T>) =
  +
  +    [<DebuggerBrowsable(DebuggerBrowsableState.RootHidden)>]
  +    member __.Items
  +        with get () : 'T[] =
  +            AvlTree.ToArray avlTree
                   
   
   /// A Discrete Interval Encoding Tree (DIET) specialized to the 'char' type.
  
positive.code:         assert (CharDiet.Height input >= CharDiet.Height stream)
          assert (dietInvariant input)
          assert (dietInvariant stream)
  //        assert (fst <| intervalsDisjoint input Set.empty)
  //        assert (fst <| intervalsDisjoint stream Set.empty)
  
          match head, input with
          | None, _->
  
negative.code:             succ c
          else c
  
      /// Similar to 'pred', but does not allow the value to underflow.
      let inline private safePred (c : char) =
          clampedPred System.Char.MinValue c
  
      /// Similar to 'succ', but does not allow the value to overflow.
      let inline private safeSucc (c : char) =
          clampedSucc System.Char.MaxValue c
  
      /// Returns the height of a CharDiet.
      let rec private computeHeight (tree : CharDiet) =
          match tree with
  