sig
  type data = Build.BuildPdg.t_state
  type key = int
  val states : Build.BuildPdg.t_state Build.IH.t
  val clear : unit -> unit
  val mem : int -> bool
  val find : int -> Build.BuildPdg.t_state
  val replace : int -> Build.BuildPdg.t_state -> unit
  val add : int -> Build.BuildPdg.t_state -> unit
  val iter : (int -> Build.BuildPdg.t_state -> unit) -> unit
  val length : unit -> int
end