added forEventFunc