still working on priority queue