still working on Solver