Троль мне предложили вот такое решение примера, но оно меня смущает. Посмотрите плиз