sig
  type t =
      (float * float) list * (float * float) list *
      ((float * float) * (float * float)) * float
  val compare : 'a -> 'a -> int
end