sig
  type ('a, 'b, 'c) writer =
      'Type_class.writer0 -> ('b, 'c) Type_class.S1.writer
  type ('a, 'b, 'c) reader =
      'Type_class.reader0 -> ('b, 'c) Type_class.S1.reader
  type ('a, 'b, 'c) t = 'Type_class.t0 -> ('b, 'c) Type_class.S1.t
end