Adding the functionality of the Solver