updated create event logic