Рефакторинг и попытка избавиться от перечисления с тегами, чтобы сделать код легко расширяемым при добавлении новых тегов. Рабочая версия, но надо еще отрефакторить