introducing templates