Moved Solving logic to Solver.cs