sig   val open_box : int -> unit   val close_box : unit -> unit   val print_string : string -> unit   val print_as : int -> string -> unit   val print_int : int -> unit   val print_float : float -> unit   val print_char : char -> unit   val print_bool : bool -> unit   val print_space : unit -> unit   val print_cut : unit -> unit   val print_break : int -> int -> unit   val print_flush : unit -> unit   val print_newline : unit -> unit   val force_newline : unit -> unit   val print_if_newline : unit -> unit   val set_margin : int -> unit   val get_margin : unit -> int   val set_max_indent : int -> unit   val get_max_indent : unit -> int   val set_max_boxes : int -> unit   val get_max_boxes : unit -> int   val over_max_boxes : unit -> bool   val open_hbox : unit -> unit   val open_vbox : int -> unit   val open_hvbox : int -> unit   val open_hovbox : int -> unit   val open_tbox : unit -> unit   val close_tbox : unit -> unit   val print_tbreak : int -> int -> unit   val set_tab : unit -> unit   val print_tab : unit -> unit   val set_ellipsis_text : string -> unit   val get_ellipsis_text : unit -> string   type tag = string   val open_tag : BatFormat.tag -> unit   val close_tag : unit -> unit   val set_tags : bool -> unit   val set_print_tags : bool -> unit   val set_mark_tags : bool -> unit   val get_print_tags : unit -> bool   val get_mark_tags : unit -> bool   val set_formatter_output : 'BatIO.output -> unit   val set_formatter_output_functions :     (string -> int -> int -> unit) -> (unit -> unit) -> unit   val get_formatter_output_functions :     unit -> (string -> int -> int -> unit) * (unit -> unit)   val set_all_formatter_output_functions :     out:(string -> int -> int -> unit) ->     flush:(unit -> unit) ->     newline:(unit -> unit) -> spaces:(int -> unit) -> unit   val get_all_formatter_output_functions :     unit ->     (string -> int -> int -> unit) * (unit -> unit) * (unit -> unit) *     (int -> unit)   type formatter_tag_functions = {     mark_open_tag : BatFormat.tag -> string;     mark_close_tag : BatFormat.tag -> string;     print_open_tag : BatFormat.tag -> unit;     print_close_tag : BatFormat.tag -> unit;   }   val set_formatter_tag_functions : BatFormat.formatter_tag_functions -> unit   val get_formatter_tag_functions : unit -> BatFormat.formatter_tag_functions   type formatter = Format.formatter   val std_formatter : BatFormat.formatter   val err_formatter : BatFormat.formatter   val formatter_of_output : 'BatIO.output -> BatFormat.formatter   val formatter_of_buffer : Buffer.t -> BatFormat.formatter   val stdbuf : Buffer.t   val str_formatter : BatFormat.formatter   val flush_str_formatter : unit -> string   val make_formatter :     (string -> int -> int -> unit) -> (unit -> unit) -> BatFormat.formatter   val pp_open_hbox : BatFormat.formatter -> unit -> unit   val pp_open_vbox : BatFormat.formatter -> int -> unit   val pp_open_hvbox : BatFormat.formatter -> int -> unit   val pp_open_hovbox : BatFormat.formatter -> int -> unit   val pp_open_box : BatFormat.formatter -> int -> unit   val pp_close_box : BatFormat.formatter -> unit -> unit   val pp_open_tag : BatFormat.formatter -> string -> unit   val pp_close_tag : BatFormat.formatter -> unit -> unit   val pp_print_string : BatFormat.formatter -> string -> unit   val pp_print_as : BatFormat.formatter -> int -> string -> unit   val pp_print_int : BatFormat.formatter -> int -> unit   val pp_print_float : BatFormat.formatter -> float -> unit   val pp_print_char : BatFormat.formatter -> char -> unit   val pp_print_bool : BatFormat.formatter -> bool -> unit   val pp_print_break : BatFormat.formatter -> int -> int -> unit   val pp_print_cut : BatFormat.formatter -> unit -> unit   val pp_print_space : BatFormat.formatter -> unit -> unit   val pp_force_newline : BatFormat.formatter -> unit -> unit   val pp_print_flush : BatFormat.formatter -> unit -> unit   val pp_print_newline : BatFormat.formatter -> unit -> unit   val pp_print_if_newline : BatFormat.formatter -> unit -> unit   val pp_open_tbox : BatFormat.formatter -> unit -> unit   val pp_close_tbox : BatFormat.formatter -> unit -> unit   val pp_print_tbreak : BatFormat.formatter -> int -> int -> unit   val pp_set_tab : BatFormat.formatter -> unit -> unit   val pp_print_tab : BatFormat.formatter -> unit -> unit   val pp_set_tags : BatFormat.formatter -> bool -> unit   val pp_set_print_tags : BatFormat.formatter -> bool -> unit   val pp_set_mark_tags : BatFormat.formatter -> bool -> unit   val pp_get_print_tags : BatFormat.formatter -> unit -> bool   val pp_get_mark_tags : BatFormat.formatter -> unit -> bool   val pp_set_margin : BatFormat.formatter -> int -> unit   val pp_get_margin : BatFormat.formatter -> unit -> int   val pp_set_max_indent : BatFormat.formatter -> int -> unit   val pp_get_max_indent : BatFormat.formatter -> unit -> int   val pp_set_max_boxes : BatFormat.formatter -> int -> unit   val pp_get_max_boxes : BatFormat.formatter -> unit -> int   val pp_over_max_boxes : BatFormat.formatter -> unit -> bool   val pp_set_ellipsis_text : BatFormat.formatter -> string -> unit   val pp_get_ellipsis_text : BatFormat.formatter -> unit -> string   val pp_set_formatter_output_functions :     BatFormat.formatter ->     (string -> int -> int -> unit) -> (unit -> unit) -> unit   val pp_get_formatter_output_functions :     BatFormat.formatter ->     unit -> (string -> int -> int -> unit) * (unit -> unit)   val pp_set_all_formatter_output_functions :     BatFormat.formatter ->     out:(string -> int -> int -> unit) ->     flush:(unit -> unit) ->     newline:(unit -> unit) -> spaces:(int -> unit) -> unit   val pp_get_all_formatter_output_functions :     BatFormat.formatter ->     unit ->     (string -> int -> int -> unit) * (unit -> unit) * (unit -> unit) *     (int -> unit)   val pp_set_formatter_tag_functions :     BatFormat.formatter -> BatFormat.formatter_tag_functions -> unit   val pp_get_formatter_tag_functions :     BatFormat.formatter -> unit -> BatFormat.formatter_tag_functions   val pp_print_list :     ?pp_sep:(BatFormat.formatter -> unit -> unit) ->     (BatFormat.formatter -> '-> unit) ->     BatFormat.formatter -> 'a list -> unit   val pp_print_text : BatFormat.formatter -> string -> unit   val fprintf :     BatFormat.formatter ->     ('a, BatFormat.formatter, unit) Pervasives.format -> 'a   val printf : ('a, BatFormat.formatter, unit) Pervasives.format -> 'a   val eprintf : ('a, BatFormat.formatter, unit) Pervasives.format -> 'a   val sprintf : ('a, unit, string) Pervasives.format -> 'a   val asprintf :     ('a, BatFormat.formatter, unit, string) Pervasives.format4 -> 'a   val ifprintf :     BatFormat.formatter ->     ('a, BatFormat.formatter, unit) Pervasives.format -> 'a   val kfprintf :     (BatFormat.formatter -> 'a) ->     BatFormat.formatter ->     ('b, BatFormat.formatter, unit, 'a) Pervasives.format4 -> 'b   val ikfprintf :     (BatFormat.formatter -> 'a) ->     BatFormat.formatter ->     ('b, BatFormat.formatter, unit, 'a) Pervasives.format4 -> 'b   val ksprintf :     (string -> 'a) -> ('b, unit, string, 'a) Pervasives.format4 -> 'b   val bprintf :     Buffer.t -> ('a, BatFormat.formatter, unit) Pervasives.format -> 'a   val kprintf :     (string -> 'a) -> ('b, unit, string, 'a) Pervasives.format4 -> 'b   val pp_set_formatter_output :     BatFormat.formatter -> 'BatIO.output -> unit   val set_formatter_out_channel : 'BatIO.output -> unit   val formatter_of_out_channel : 'BatIO.output -> BatFormat.formatter   val pp_set_formatter_out_channel :     BatFormat.formatter -> 'BatIO.output -> unit end