add a new directive