switched to event map for validState method