Исправлена ошибка, теперь программа работает правильно, описание ошибки будет на стенке группы. Также сделано много других несущественных изменений