PriorityQueue with specs