better directive reuse