moving solvable into maybe monad