anchor.diff:      | V4_7_2
       | V4_8
       | V5
  +    | V5WithOs of Net5Os
       override this.ToString() =
           match this with
           | V1        -> "v1.0"
  
positive.code:         | DotNetFramework FrameworkVersion.V4_7_2 -> [ DotNetFramework FrameworkVersion.V4_7_1 ]
          | DotNetFramework FrameworkVersion.V4_8 -> [ DotNetFramework FrameworkVersion.V4_7_2 ]
          | DotNetFramework FrameworkVersion.V5 -> [ DotNetCoreApp DotNetCoreAppVersion.V3_1; DotNetStandard DotNetStandardVersion.V2_1 ]
          | DotNetStandard DotNetStandardVersion.V1_0 -> [  ]
          | DotNetStandard DotNetStandardVersion.V1_1 -> [ DotNetStandard DotNetStandardVersion.V1_0 ]
          | DotNetStandard DotNetStandardVersion.V1_2 -> [ DotNetStandard DotNetStandardVersion.V1_1 ]
  
negative.code:         | "4.7.2" -> Some FrameworkVersion.V4_7_2
          | "4.8" -> Some FrameworkVersion.V4_8
          | "5.0" | "5" -> Some FrameworkVersion.V5
          | _ when s.StartsWith("5.0") -> 
              let osPart = s.Substring ("5.0".Length)
              Net5Os.TryParse(osPart)
              |> Option.map FrameworkVersion.V5WithOs
          | _ -> None
  
  [<RequireQualifiedAccess>]
  