modified event interface