refactored directives
more refactorings