Crack, я учел и твою логику, потому предлагаю в моем решении сначала объединять логику с представлением, а уже если появляется "лапша", разделить, система это позволяет сделать достаточно просто
Мы используем файлы cookie и сервис веб-аналитики Яндекс.Метрика. Используя сайт, вы соглашаетесь с Политикой использования cookie-файлов и даёте согласие на обработку данных сервисом веб-аналитики Яндекс.Метрика в соответствии с Политикой обработки персональных данных. Cookies можно отключить в любой момент в настройках вашего браузера.