Может, только решение слишком сложное получается.