needs to fix the heuristic.....otherwise working fine