anchor.diff:      }
       static member Make json decode =
           {
  -            ReadsJson = fun () -> json
  +            ReadsJson = json
               Decode = decode
           }
   
  
positive.code:             loop 0
      let parseArray eT (eD: D) : D =
          if eD.ReadsJson() then raise (NoFormatError eT)
          D.Make false <| fun p ->
              parseInt.Decode p
              >>= function
              | (:? int as k) ->
  
negative.code:             typeof<System.Enum>
                  .GetMethod("ToObject", [|typeof<System.Type>; uT|])
          let f = getD uT
          D.Make (fun () -> false) <| fun p ->
              f.Decode p |> DecodeResult.map (fun x -> toObj.Invoke(null, [|t; x|]))
      elif t.IsArray then
          if t.GetArrayRank() > 1 then
  