sig
  type a
  module T :
    sig
      type a = a
      val type_rep : unit -> Typeable.TypeRep.t
      val has_type : Typeable.dynamic -> bool
      val cast : Typeable.dynamic -> a option
      val throwing_cast : Typeable.dynamic -> a
      val make_dynamic : a -> Typeable.dynamic
      val mk : a -> Typeable.dynamic
    end
  module E : sig type a = a val eq : a -> a -> bool end
  val pickle : Pickle.Pickle.a -> Pickle.id Pickle.Write.m
  val unpickle : Pickle.id -> Pickle.Pickle.a Pickle.Read.m
  val to_buffer : Buffer.t -> Pickle.Pickle.a -> unit
  val to_string : Pickle.Pickle.a -> string
  val to_channel : Pervasives.out_channel -> Pickle.Pickle.a -> unit
  val from_stream : char Stream.t -> Pickle.Pickle.a
  val from_string : string -> Pickle.Pickle.a
  val from_channel : Pervasives.in_channel -> Pickle.Pickle.a
end