extension improved using directives