sig
  type t
  val dim : int
  type v = float
  type p = float
  type size = Gg.size1
  type m = float
  val v : float -> Gg.size1 -> Gg.box1
  val v_mid : float -> Gg.size1 -> Gg.box1
  val empty : Gg.box1
  val o : Gg.box1 -> float
  val ox : Gg.box1 -> float
  val size : Gg.box1 -> Gg.size1
  val w : Gg.box1 -> float
  val zero : Gg.box1
  val unit : Gg.box1
  val of_pts : float -> float -> Gg.box1
  val min : Gg.box1 -> float
  val minx : Gg.box1 -> float
  val max : Gg.box1 -> float
  val maxx : Gg.box1 -> float
  val mid : Gg.box1 -> float
  val midx : Gg.box1 -> float
  val left : Gg.box1 -> float
  val right : Gg.box1 -> float
  val area : Gg.box1 -> float
  val inter : Gg.box1 -> Gg.box1 -> Gg.box1
  val union : Gg.box1 -> Gg.box1 -> Gg.box1
  val inset : float -> Gg.box1 -> Gg.box1
  val round : Gg.box1 -> Gg.box1
  val move : float -> Gg.box1 -> Gg.box1
  val ltr : float -> Gg.box1 -> Gg.box1
  val tr : Gg.m2 -> Gg.box1 -> Gg.box1
  val map_f : (float -> float) -> Gg.box1 -> Gg.box1
  val is_empty : Gg.box1 -> bool
  val is_pt : Gg.box1 -> bool
  val isects : Gg.box1 -> Gg.box1 -> bool
  val subset : Gg.box1 -> Gg.box1 -> bool
  val mem : float -> Gg.box1 -> bool
  val equal : Gg.box1 -> Gg.box1 -> bool
  val equal_f : (float -> float -> bool) -> Gg.box1 -> Gg.box1 -> bool
  val compare : Gg.box1 -> Gg.box1 -> int
  val compare_f : (float -> float -> int) -> Gg.box1 -> Gg.box1 -> int
  val pp : Format.formatter -> Gg.box1 -> unit
  val pp_f :
    (Format.formatter -> float -> unit) ->
    Format.formatter -> Gg.box1 -> unit
end