solve now returns a list of solutions