anchor.diff:                                                  e.Value.FullName = "Microsoft.FSharp.Core.FSharpOption`1" -> false
                                               | _ -> true
                                           )
  -                                        |> Seq.map (fun rf -> rf.Name) |> Set.ofSeq
  +                                        |> Seq.map (fun rf -> rf.JSName) |> Set.ofSeq
                                       | _ -> 
                                           match uci.Kind with 
                                           | M.NormalFSharpUnionCase fs ->
  
positive.code:         let fail x = Choice2Of3 x : EncodeResult
          let generic = Choice3Of3 () : EncodeResult
  
          let ident = 
              let x = Id.New()
              Lambda([], Lambda ([x], Var x))
  
          /// Returns None if MacroNeedsResolvedTypeArg.
          let getEncoding name isEnc param warn (comp: M.ICompilation) (t: Type) : option<Expression> =
              let ctx = System.Collections.Generic.Dictionary()
              let call = invoke comp param.Provider isEnc
              let rec encode t =
                  match t with
                  | ArrayType (t, 1) ->
  
negative.code:                 match comp.GetCustomTypeInfo t.TypeDefinition with
                  | M.EnumInfo _ -> ok ident
                  | M.FSharpRecordInfo fields ->
                      let fieldEncoders =
                          fields
                          |> List.map (fun f ->
                              if Option.isSome f.DateTimeFormat then
                                  warn (sprintf "Warning: This record field has a custom DateTime format: %s.%s. \
                                      Client-side JSON serialization does not support custom DateTime formatting. \
  