anchor.diff:          Pack : Encoded -> Value
           EncodeDateTime : System.DateTime -> Encoded
           DecodeDateTime : Value -> option<System.DateTime>
  +        FlattenCollections : bool
       }
   
   type Serializer =
  
positive.code:                     | true, x -> Some x
                      | false, _ -> None
                  | _ -> None
              Pack = flatten
          }
  
  
negative.code:                     | _ -> ()
              }
          match x with
          | Null -> empty
          | Object [ "tree", Object tr ] ->
              ofSeq (seqCast (walk tr))
          | _ -> raise DecoderException
  
  let enumEncoder dE (i: FormatSettings) (t: System.Type) =
  