TemplateGenerators: common template decoupled from Generator