Обновление
Немного упорядочил код