speed up with range and heuristic