got generic version working