\[\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 r514616 = y;
double r514617 = r514616 * r514616;
double r514618 = 1.0;
double r514619 = r514617 + r514618;
double r514620 = sqrt(r514619);
double r514621 = r514616 - r514620;
double r514622 = fabs(r514621);
double r514623 = r514616 + r514620;
double r514624 = r514618 / r514623;
double r514625 = r514622 - r514624;
double r514626 = r514625 * r514625;
double r514627 = 10.0;
double r514628 = -300.0;
double r514629 = pow(r514627, r514628);
double r514630 = 10000.0;
double r514631 = r514616 + r514618;
double r514632 = r514630 * r514631;
double r514633 = pow(r514629, r514632);
double r514634 = r514626 + r514633;
double r514635 = 0.0;
double r514636 = r514634 == r514635;
double r514637 = exp(r514634);
double r514638 = r514637 - r514618;
double r514639 = r514638 / r514634;
double r514640 = r514636 ? r514618 : r514639;
return r514640;
}