add heapq