created generic template