day 25 optimize and improve heuristics