sig

  val fprintf :
    Stdlib.out_channel -> ('a, Stdlib.out_channel, unit) Stdlib.format -> 'a
  val printf : ('a, Stdlib.out_channel, unit) Stdlib.format -> 'a
  val eprintf : ('a, Stdlib.out_channel, unit) Stdlib.format -> 'a
  val sprintf : ('a, unit, string) Stdlib.format -> 'a
  val bprintf :
    Stdlib.Buffer.t -> ('a, Stdlib.Buffer.t, unit) Stdlib.format -> 'a
  val ifprintf : 'b -> ('a, 'b, 'c, unit) Stdlib.format4 -> 'a
  val ibprintf :
    Stdlib.Buffer.t -> ('a, Stdlib.Buffer.t, unit) Stdlib.format -> 'a
  val kfprintf :
    (Stdlib.out_channel -> 'd) ->
    Stdlib.out_channel ->
    ('a, Stdlib.out_channel, unit, 'd) Stdlib.format4 -> 'a
  val ikfprintf : ('b -> 'd) -> 'b -> ('a, 'b, 'c, 'd) Stdlib.format4 -> 'a
  val ksprintf :
    (string -> 'd) -> ('a, unit, string, 'd) Stdlib.format4 -> 'a
  val kbprintf :
    (Stdlib.Buffer.t -> 'd) ->
    Stdlib.Buffer.t -> ('a, Stdlib.Buffer.t, unit, 'd) Stdlib.format4 -> 'a
  val ikbprintf :
    (Stdlib.Buffer.t -> 'd) ->
    Stdlib.Buffer.t -> ('a, Stdlib.Buffer.t, unit, 'd) Stdlib.format4 -> 'a
  val kprintf : (string -> 'b) -> ('a, unit, string, 'b) Stdlib.format4 -> 'a
end