anchor.diff:              | D(_) -> DF(p, D 1., i)
               | DF(_, _, pi) -> DF(p, DF(D 1., D 0., pi), i)
       /// Make D, with primal value `p` and tangent 1. A new tag will be attached using the global tagger.
  -    let inline makeDFP1 p = makeDFIP1 GlobalTagger.Next p
  +    let inline makeDFp1 p = makeDFip1 GlobalTagger.Next p
       /// Get the primal value of `d`
       let inline primal (d:D) =
           match d with
  
positive.code:         | :? int as p -> D(float p)
          | :? D as p -> p
      /// Make D, with tag `i`, primal value `p`, and tangent value `t`
      let inline makeDFIPT i p t =
          match box p with
          | :? float as p ->
              match box t with
  
negative.code:     /// Original value and Jacobian-vector product of a vector-to-vector function `f`, at point `x`, along vector `v`
      let inline jacobianv' f x v =
          let i = GlobalTagger.Next
          Array.map2 (makeDFipt i) x v |> f |> Array.map tuple |> Array.unzip
  
      /// Jacobian-vector product of a vector-to-vector function `f`, at point `x`, along vector `v`
      let inline jacobianv f x v =
  