add priority queue lib