introduce TemplateOptions