sig
  type t
  exception Bad_key of string
  val compare : t -> t -> int
  val of_string : string -> t
  val to_string : t -> string
end