priority-queue done