anchor.diff:      innerFactory:int * IComparer<'K>->IOrderedMap<'K,'V>, 
       comparer:IComparer<'K>,
       hasher:IKeyHasher<'K> option, 
  -    ?chunkMaxSize:int) as this =
  +    ?chunkMaxSize:int) =
     inherit Series<'K,'V>()
   
     let outerMap = outerFactory(comparer)
  
positive.code:     let hasher = { new IKeyHasher<'K> with
            member x.Hash(k) = hasher.Invoke k
          }
      SortedChunkedMap(factory, (fun (capacity, comparer) -> new SortedMap<'K,'V>(capacity, comparer) :> IOrderedMap<'K,'V>), comparer, Some(hasher))
  
    new(comparer:IComparer<'K>,chunkMaxSize:int) = 
      let factory = (fun (c:IComparer<'K>) -> new SortedMap<'K, IOrderedMap<'K,'V>>(c, IsSynchronized = false) :> IOrderedMap<'K, IOrderedMap<'K,'V>>)
      SortedChunkedMap(factory, (fun (capacity, comparer) -> new SortedMap<'K,'V>(capacity, comparer) :> IOrderedMap<'K,'V>), comparer, None, chunkMaxSize)
  
    new(outerFactory:Func<IComparer<'K>,IOrderedMap<'K, IOrderedMap<'K,'V>>>,comparer:IComparer<'K>) = 
      SortedChunkedMap(outerFactory.Invoke, (fun (capacity, comparer) -> new SortedMap<'K,'V>(capacity, comparer) :> IOrderedMap<'K,'V>), comparer, None)
  
    new(outerFactory:Func<IComparer<'K>,IOrderedMap<'K, IOrderedMap<'K,'V>>>,hasher:Func<'K,'K>) = 
      let comparer:IComparer<'K> = KeyComparer.GetDefault<'K>()
      let hasher = { new IKeyHasher<'K> with
            member x.Hash(k) = hasher.Invoke k
          }
      SortedChunkedMap(outerFactory.Invoke, (fun (capacity, comparer) -> new SortedMap<'K,'V>(capacity, comparer) :> IOrderedMap<'K,'V>), comparer, Some(hasher))
    
    new(outerFactory:Func<IComparer<'K>,IOrderedMap<'K, IOrderedMap<'K,'V>>>,chunkMaxSize:int) = 
      let comparer:IComparer<'K> = KeyComparer.GetDefault<'K>()
      SortedChunkedMap(outerFactory.Invoke, (fun (capacity, comparer) -> new SortedMap<'K,'V>(capacity, comparer) :> IOrderedMap<'K,'V>), comparer, None, chunkMaxSize)
  
    // x3
  
    new(outerFactory:Func<IComparer<'K>,IOrderedMap<'K, IOrderedMap<'K,'V>>>,comparer:IComparer<'K>,hasher:Func<'K,'K>) =
      let hasher = { new IKeyHasher<'K> with
            member x.Hash(k) = hasher.Invoke k
          }
      SortedChunkedMap(outerFactory.Invoke, (fun (capacity, comparer) -> new SortedMap<'K,'V>(capacity, comparer) :> IOrderedMap<'K,'V>), comparer, Some(hasher))
    
    new(outerFactory:Func<IComparer<'K>,IOrderedMap<'K, IOrderedMap<'K,'V>>>,comparer:IComparer<'K>,chunkMaxSize:int) = 
      SortedChunkedMap(outerFactory.Invoke, (fun (capacity, comparer) -> new SortedMap<'K,'V>(capacity, comparer) :> IOrderedMap<'K,'V>), comparer, None, chunkMaxSize)
  
  
  
  
negative.code:   new() = 
      let comparer:IComparer<'K> = KeyComparer.GetDefault<'K>()
      let factory = (fun (c:IComparer<'K>) -> new SortedMap<'K, IOrderedMap<'K,'V>>(c, IsSynchronized = false) :> IOrderedMap<'K, IOrderedMap<'K,'V>>)
      new SortedChunkedMap<_,_>(factory, (fun (capacity, comparer) -> new SortedMap<'K,'V>(capacity, comparer) :> IOrderedMap<'K,'V>), comparer, None)
    
    // x1
  
    /// In-memory sorted chunked map
    new(comparer:IComparer<'K>) = 
      let factory = (fun (c:IComparer<'K>) -> new SortedMap<'K, IOrderedMap<'K,'V>>(c, IsSynchronized = false) :> IOrderedMap<'K, IOrderedMap<'K,'V>>)
      new SortedChunkedMap<_,_>(factory, (fun (capacity, comparer) -> new SortedMap<'K,'V>(capacity, comparer) :> IOrderedMap<'K,'V>),comparer, None)
    
    /// In-memory sorted chunked map
    new(hasher:Func<'K,'K>) = 
  