sig
  type 'a t
  val create : ?size:int -> 'a -> 'a Timemap.t
  val add : 'a Timemap.t -> float -> 'a -> unit
  val find : 'a Timemap.t -> float -> float * 'a
  val remove_before : 'a Timemap.t -> float -> unit
  val get_min : unit -> float
end