anchor.diff:              #if DEBUG
               /// The minimum possible number of elements in the resulting set.
               let minPossibleResultCount =
  -                let inputCount = count measurer input
  -                let streamCount = count measurer stream
  +                let inputCount = count input
  +                let streamCount = count stream
                   GenericMaximum 0 (inputCount - streamCount)
               #endif
   
  -            let head, stream' = AvlTree.extractMin measurer stream
  +            let head, stream' = AvlTree.extractMin charComparer stream
               let result, _, _ = diff' input (Some head) stream'
   
               #if DEBUG
  -            let resultCount = count measurer result
  +            let resultCount = count result
               Debug.Assert (
                   resultCount >= minPossibleResultCount,
                   sprintf "The result set should not contain fewer than %i elements, but it contains only %i elements."
  
positive.code: 
  open System.Diagnostics
  open OptimizedClosures
  
  
  (*  NOTE :  The core functions implementing the AVL tree algorithm were extracted into OCaml
  
negative.code:     /// Returns a new set with an element added to the set.
      /// No exception is raised if the set already contains the given element.
      static member Add (value, charSet : CharSet) =
          CharSet (Diet.add value charSet.DietSet)
  
      //
      static member AddRange (lower, upper, charSet : CharSet) =
          CharSet (Diet.addRange (lower, upper) charSet.DietSet)
  
      //
      static member Remove (value, charSet : CharSet) =
          CharSet (Diet.remove value charSet.DietSet)
  
      //
      static member Contains (value, charSet : CharSet) =
          Diet.contains value charSet.DietSet
  
  //    //
  //    static member ToList (charSet : CharSet) =
  