Слияние кода завершено, страница обновится автоматически
TokenType должен быть перечислением, которое определяет тип Token. В свою очередь, Token должен быть интерфейсом, который представляет токен. Однако в настоящее время эти роли перепутаны, и это необходимо исправить.