Tidied up AddEvent