добавил некоторые проверки входных данных