anchor.diff:                  else 0
                 else invalidOp "overlapping values are not equal" // TODO unit test
             | _ -> failwith "Unknown AppendOption"
  -        finally
  -          exitLockIf this.SyncRoot entered
  +        //finally
  +        exitLockIf this.SyncRoot entered
  +        ret
         // do not need transaction because if the first addition succeeds then all others will be added as well
   //      for i in appendMap do
   //        this.AddLast(i.Key, i.Value)
  
positive.code:           this.values <- vArr
            OptimizationSettings.ArrayPool.ReturnBuffer(toReturn)
          | _ -> ()
        finally
          exitLockIf syncRoot entered
  
    member this.Comparer with get() = comparer
  
negative.code:           else
              this.Insert(~~~index, k, v)
              ~~~index
      //finally
      exitLockIf syncRoot entered
      ret
  
    member this.Add(key, value) : unit =
      if isKeyReferenceType && EqualityComparer<'K>.Default.Equals(key, Unchecked.defaultof<'K>) then 
  