Solver templates