Первый вариант реализации