write better directive