private IEnumerable <ITemplate> GetTemplates(ITemplateBuilder templateBuilder) { var templates = new List <ITemplate>(); templates.AddRange(templateBuilder.GetTemplates()); foreach (var item in templateBuilder.GetTemplateBuilders()) { templates.AddRange(GetTemplates(item)); } return(templates); }