exercises for events and directives