Refactoring HistoryEvent