все равно есть недочеты, моя логика некорректная?