refactor SuDoku main() and run() into main() and solve()