functor (Q : Common.QUEUE->
  sig
    val empty :
      unit ->
      Common.int_set ->
      Common.int_set -> ('a * Common.int_set * Common.int_set) Q.t -> bool
  end