assign events for better reliability?