anchor.diff:                  | _ -> failwithf "cannot revoke unknown value: %A" v
   
       member x.RevokeAndGetDeletedTotal (v : 'a) =
  -        if isNull (v :> obj) then
  +        if isNull v then
               match nullCache with
                   | Some (r, ref) -> 
                       ref := !ref - 1
  
positive.code: 
      member x.Revoke (v : 'a) =
          x.RevokeAndGetDeleted v |> snd
  
      member x.Values = cache.Values |> Seq.map fst
  
      new(scope : Ag.Scope, f : 'a -> 'b) = Cache(fun a -> Ag.useScope scope (fun () -> f a))
  
negative.code:     /// with the given argument and decreases its reference count.
      /// </summary>
      member x.RevokeAndGetDeleted (v : 'a) =
          if isNull v then
              match nullCache with
                  | Some (r, ref) -> 
                      ref := !ref - 1
  