creating template engine