queue generalized