added heapDown