anchor.diff:      open Newtonsoft.Json
   
       module private JsonUtils =
  +
  +        let inline invalidFormat () = raise <| new InvalidDataException("invalid json format.")
   
           let inline writePrimitive (jsonWriter : ^JsonWriter) (name : string) (value : ^T) =
               ( ^JsonWriter : (member WritePropertyName : string -> unit) (jsonWriter, name))
  
positive.code:             member __.BeginWriteObject (_ : TypeInfo) (_ : PicklerInfo) (tag : string) (flags : ObjectFlags) =
  
                  jsonWriter.WritePropertyName tag
                  jsonWriter.WriteStartObject()
  
                  if ObjectFlags.hasFlag flags ObjectFlags.IsNull then 
                      writePrimitive jsonWriter "null" true
                  if ObjectFlags.hasFlag flags ObjectFlags.IsProperSubtype then 
                      writePrimitive jsonWriter "isSubtype" true
                  if ObjectFlags.hasFlag flags ObjectFlags.IsCachedInstance then 
                      writePrimitive jsonWriter "cached" true
                  if ObjectFlags.hasFlag flags ObjectFlags.IsCyclicInstance then 
                      writePrimitive jsonWriter "cyclic" true
                  if ObjectFlags.hasFlag flags ObjectFlags.IsSequenceHeader then 
                      writePrimitive jsonWriter "sequence" true
  
              member __.EndWriteObject () = jsonWriter.WriteEnd()
  
              member __.WriteBoolean (tag : string) value = writePrimitive jsonWriter tag value
              member __.WriteByte (tag : string) value = writePrimitive jsonWriter tag value
  
negative.code:         let sw = new StreamWriter(stream, encoding, 1024, leaveOpen)
          let jsonWriter = new JsonTextWriter(sw) :> JsonWriter
          do jsonWriter.Formatting <- if indented then Formatting.Indented else Formatting.None
  
          let mutable currentValueIsNull = false
  
          interface IPickleFormatWriter with
              
  