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