-рефакторинг
полностью рабочая версия