reconstructEvent() and interpretEvent() Revised