two alternatives to x_solver