perfect gen template