template out types in solve_ode