double f(double x_re, double x_im, double y_re, double y_im) {
double r917655 = x_re;
double r917656 = r917655 * r917655;
double r917657 = x_im;
double r917658 = r917657 * r917657;
double r917659 = r917656 + r917658;
double r917660 = sqrt(r917659);
double r917661 = log(r917660);
double r917662 = y_re;
double r917663 = r917661 * r917662;
double r917664 = atan2(r917657, r917655);
double r917665 = y_im;
double r917666 = r917664 * r917665;
double r917667 = r917663 - r917666;
double r917668 = exp(r917667);
double r917669 = r917661 * r917665;
double r917670 = r917664 * r917662;
double r917671 = r917669 + r917670;
double r917672 = cos(r917671);
double r917673 = r917668 * r917672;
return r917673;
}