\[\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 r439171 = y;
double r439172 = r439171 * r439171;
double r439173 = 1.0;
double r439174 = r439172 + r439173;
double r439175 = sqrt(r439174);
double r439176 = r439171 - r439175;
double r439177 = fabs(r439176);
double r439178 = r439171 + r439175;
double r439179 = r439173 / r439178;
double r439180 = r439177 - r439179;
double r439181 = r439180 * r439180;
double r439182 = 10.0;
double r439183 = -300.0;
double r439184 = pow(r439182, r439183);
double r439185 = 10000.0;
double r439186 = r439171 + r439173;
double r439187 = r439185 * r439186;
double r439188 = pow(r439184, r439187);
double r439189 = r439181 + r439188;
double r439190 = 0.0;
double r439191 = r439189 == r439190;
double r439192 = exp(r439189);
double r439193 = r439192 - r439173;
double r439194 = r439193 / r439189;
double r439195 = r439191 ? r439173 : r439194;
return r439195;
}