refactored eventdetails class