anchor.diff:  
   [<RequireQualifiedAccess>]
   type JsonError =
  -    | MissingProperty of PropertyName: string
  +    | MissingProperty of PropertyName: string * Record: JsonValue
       | InconsistentArray of WrongValues: JsonValue []
   
   let AsString jsonValue = JsonConversions.AsString false culture jsonValue
  
positive.code:         match m
              |> value.TryGetProperty with
          | Some x -> x |> f
          | None -> Error (JsonError.MissingProperty m)
  
      member this.Bind(m: string option, f) = 
          m |> Option.bind value.TryGetProperty |> f
  
negative.code:         |> jsonValue.TryGetProperty
          |> Option.bind conversion with
      | Some x -> Ok x
      | None -> Error (JsonError.MissingProperty (name, jsonValue))
  
  let Optional (name,conversion) (jsonValue: JsonValue) =
      name
  