https://ruclips.ru/en/watch/FldHNQAEVcc/13-programming-with-modern-fortran-computing-discriminant