\[\begin{array}{l}
\mathbf{if}\;\left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) \cdot \left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) + {\left({10}^{-300}\right)}^{\left(10000 \cdot \left(y + 1\right)\right)} = 0:\\
\;\;\;\;1\\
\mathbf{else}:\\
\;\;\;\;\frac{e^{\left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) \cdot \left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) + {\left({10}^{-300}\right)}^{\left(10000 \cdot \left(y + 1\right)\right)}} - 1}{\left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) \cdot \left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) + {\left({10}^{-300}\right)}^{\left(10000 \cdot \left(y + 1\right)\right)}}\\
\end{array}\]
\begin{array}{l}
\mathbf{if}\;\left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) \cdot \left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) + {\left({10}^{-300}\right)}^{\left(10000 \cdot \left(y + 1\right)\right)} = 0:\\
\;\;\;\;1\\
\mathbf{else}:\\
\;\;\;\;\frac{e^{\left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) \cdot \left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) + {\left({10}^{-300}\right)}^{\left(10000 \cdot \left(y + 1\right)\right)}} - 1}{\left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) \cdot \left(\left|y - \sqrt{y \cdot y + 1}\right| - \frac{1}{y + \sqrt{y \cdot y + 1}}\right) + {\left({10}^{-300}\right)}^{\left(10000 \cdot \left(y + 1\right)\right)}}\\
\end{array}double f(double y) {
double r776486 = y;
double r776487 = r776486 * r776486;
double r776488 = 1.0;
double r776489 = r776487 + r776488;
double r776490 = sqrt(r776489);
double r776491 = r776486 - r776490;
double r776492 = fabs(r776491);
double r776493 = r776486 + r776490;
double r776494 = r776488 / r776493;
double r776495 = r776492 - r776494;
double r776496 = r776495 * r776495;
double r776497 = 10.0;
double r776498 = -300.0;
double r776499 = pow(r776497, r776498);
double r776500 = 10000.0;
double r776501 = r776486 + r776488;
double r776502 = r776500 * r776501;
double r776503 = pow(r776499, r776502);
double r776504 = r776496 + r776503;
double r776505 = 0.0;
double r776506 = r776504 == r776505;
double r776507 = exp(r776504);
double r776508 = r776507 - r776488;
double r776509 = r776508 / r776504;
double r776510 = r776506 ? r776488 : r776509;
return r776510;
}