purified queue.h