anchor.diff:              | _ -> false
   
           member __.Kind = kind
  +
           member __.Args = typeArgs
   
           member __.IsFSharpTypeAbbreviation = match kind with FSharpTypeAbbreviation _ -> true | _ -> false
  +
           // For example, int<kg>
           member __.IsFSharpUnitAnnotated = match kind with ProvidedSymbolKind.Generic gtd -> not gtd.IsGenericTypeDefinition | _ -> false
   
  
positive.code:                 override __.DeclaringType = declTy
  
                  override __.EventHandlerType = inp.EventHandlerType |> txILType (gps, [| |])
                  override __.GetAddMethod(_nonPublic) = inp.AddMethod |> txILMethodRef 
                  override __.GetRemoveMethod(_nonPublic) = inp.RemoveMethod |> txILMethodRef
                  override __.GetCustomAttributesData() = inp.CustomAttrs |> txCustomAttributesData
                  override __.MetadataToken = inp.Token
  
  
negative.code:         /// .NET symbolic types made from this type, e.g. when building Nullable<SomeProvidedType[]>.FullName
          override __.DeclaringType =
              match kind,typeArgs with
              | ProvidedSymbolKind.SDArray,[arg] -> null
              | ProvidedSymbolKind.Array _,[arg] -> null
              | ProvidedSymbolKind.Pointer,[arg] -> null
              | ProvidedSymbolKind.ByRef,[arg] -> null
              | ProvidedSymbolKind.Generic gty,_ -> gty.DeclaringType
              | ProvidedSymbolKind.FSharpTypeAbbreviation _,_ -> null
              | _ -> failwith "unreachable"
  
  