anchor.diff:              let ts', xs' = split ([], [], c)
               List.foldBack insert xs' (meld (ts, ts'))
   
  -
  -//
  -type RootedPriorityQueue<'T when 'T : comparison> =
  -    //
  -    | Empty
  -    //
  -    | Root of 'T * SkewBinomialQueue.T<'T>
  -
  -
   //
   [<RequireQualifiedAccess; CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>]
  -module RootedPriorityQueue =
  +module AddRoot =
       module Q = SkewBinomialQueue
  +
  +    type T<'T when 'T : comparison> =
  +        | Empty
  +        | Root of 'T * Q.T<'T>
   
       //
       [<CompiledName("Empty")>]
       [<GeneralizableValue>]
  -    let empty<'T when 'T : comparison> : RootedPriorityQueue<'T> =
  +    let empty<'T when 'T : comparison> : T<'T> =
           Empty
   
       //
  
positive.code:             else
                  Root (Q.findMin q, Q.deleteMin q)
  
  
  
negative.code: 
  type Tree<'T when 'T : comparison> =
      Node of 'T * Rank * Tree<'T> list
  
  (* auxiliary functions *)
  
  