sig
  type t = WpContext.context
  val id : WpContext.S.t -> string
  val hash : WpContext.S.t -> int
  val equal : WpContext.S.t -> WpContext.S.t -> bool
  val compare : WpContext.S.t -> WpContext.S.t -> int
end