sig
  exception MzInternalFailure of string
  val enable_debug : int -> unit
  val debug_level : unit -> int
  val debug :
    ?level:int -> ('a, Buffer.t, unit, unit) Pervasives.format4 -> 'a
  val warn : ('a, Buffer.t, unit, unit) Pervasives.format4 -> 'a
  val error : ('a, Buffer.t, unit, 'b) Pervasives.format4 -> 'a
  val msg : ('a, Buffer.t, unit, string) Pervasives.format4 -> 'a
  val check : bool -> ('a, Buffer.t, unit, unit) Pervasives.format4 -> 'a
  val raise_level : int -> (unit -> 'a) -> 'a
  val silent : (unit -> 'a) -> 'a
  val warn_count : int Pervasives.ref
end