sig
  type t = int
  val now : unit -> Bogue.Time.t
  val adaptive_fps : int -> (unit -> unit) * (unit -> unit)
end