add pure Python implementation of solve_all