Нужны комментарии. По переменным не совсем понятна логика. Да и более осмысленные переменные так же добавили бы ясности в код.