thinking about the solver