\[\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(10^{4} \cdot \left(y + 1\right)\right)} = 0.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(10^{4} \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(10^{4} \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(10^{4} \cdot \left(y + 1\right)\right)} = 0.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(10^{4} \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(10^{4} \cdot \left(y + 1\right)\right)}}\\
\end{array}double f(double y) {
double r21547 = y;
double r21548 = r21547 * r21547;
double r21549 = 1.0;
double r21550 = r21548 + r21549;
double r21551 = sqrt(r21550);
double r21552 = r21547 - r21551;
double r21553 = fabs(r21552);
double r21554 = r21547 + r21551;
double r21555 = r21549 / r21554;
double r21556 = r21553 - r21555;
double r21557 = r21556 * r21556;
double r21558 = 10.0;
double r21559 = -300.0;
double r21560 = pow(r21558, r21559);
double r21561 = 10000.0;
double r21562 = r21547 + r21549;
double r21563 = r21561 * r21562;
double r21564 = pow(r21560, r21563);
double r21565 = r21557 + r21564;
double r21566 = 0.0;
double r21567 = r21565 == r21566;
double r21568 = exp(r21565);
double r21569 = r21568 - r21549;
double r21570 = r21569 / r21565;
double r21571 = r21567 ? r21549 : r21570;
return r21571;
}