binary-heap uses id-map