sig
  val any : t option
  val whilst : (Int.t -> bool) -> string -> bool
  val gt : Int.t -> t option
  val gte : Int.t -> t option
  val lt : Int.t -> t option
  val lte : Int.t -> t option
end