anchor.diff:      | InferedTypeTag.Collection -> 
           function JsonValue.Array _ -> true | _ -> false
       | InferedTypeTag.Record _ -> 
  -        function JsonValue.Object _ -> true | _ -> false
  +        function JsonValue.Record _ -> true | _ -> false
       | InferedTypeTag.Json -> 
           failwith "Json type not supported"
       | InferedTypeTag.Null -> 
  
positive.code:         else "a " + name
      match opt, originalValue with 
      | Some value, _ -> value
      | None, Some ((JsonValue.Array _ | JsonValue.Object _) as x) -> failwithf "Expecting %s at '%s', got %s" (getTypeName()) path <| x.ToString(JsonSaveOptions.DisableFormatting)
      | None, _ when typeof<'T> = typeof<string> -> "" |> unbox
      | None, _ when typeof<'T> = typeof<float> -> Double.NaN |> unbox
      | None, None -> failwithf "'%s' is missing" path
  
negative.code:     let json = JsonRuntime.ToJsonValue cultureInfo value
      JsonDocument.Create(json, "")
  
    // Creates a JsonValue.Record and wraps it in a json document
    static member CreateRecord(properties, cultureStr) =
      let cultureInfo = TextRuntime.GetCulture cultureStr
      let json = 
  