Выполнено второе задание. Исправлены некоторые недочеты.