hook for a solver