adding directives for each of these big components for templates