anchor.diff:      let result = ResizeArray (len)
       for i = len - 1 downto 0 do
           result.Add resizeArray.[i]
  -    resizeArray
  +    result
   
   //
   [<CompiledName("Exists2")>]
  
positive.code:     let mutable res = acc 
      for i = fin downto start do
          res <- f arr.[i] res
      res
  
  //
  [<CompiledName("Fold2")>]
  let fold2 f (acc: 'T) (arr1: ResizeArray<'T1>) (arr2: ResizeArray<'T2>) =
      let f = FSharpFunc<_,_,_,_>.Adapt(f)
      let mutable res = acc 
      let len = length arr1
      if len <> length arr2 then invalidArg "arr2" "the arrays have different lengths"
      for i = 0 to len - 1 do
          res <- f.Invoke(res,arr1.[i],arr2.[i])
      res
  
  //
  [<CompiledName("FoldBack2")>]
  let foldBack2 f (arr1: ResizeArray<'T1>) (arr2: ResizeArray<'T2>) (acc: 'b) =
      let f = FSharpFunc<_,_,_,_>.Adapt(f)
      let mutable res = acc 
      let len = length arr1
      if len <> length arr2 then invalidArg "arr2" "the arrays have different lengths"
      for i = len - 1 downto 0 do 
          res <- f.Invoke(arr1.[i],arr2.[i],res)
      res
  
  //
  
negative.code: 
      while index < count && Option.isNone result do
          result <- picker resizeArray.[index]
          index <- index + 1
      result
  
  //
  