переусложненная обработка ошибок