binheap completed