update the solver