sig
  type channel = Format.formatter
  type document = document
  val pretty : float -> int -> channel -> document -> unit
  val compact : channel -> document -> unit
end