double f(double x_re, double x_im, double y_re, double y_im) {
double r554914 = x_re;
double r554915 = r554914 * r554914;
double r554916 = x_im;
double r554917 = r554916 * r554916;
double r554918 = r554915 + r554917;
double r554919 = sqrt(r554918);
double r554920 = log(r554919);
double r554921 = y_re;
double r554922 = r554920 * r554921;
double r554923 = atan2(r554916, r554914);
double r554924 = y_im;
double r554925 = r554923 * r554924;
double r554926 = r554922 - r554925;
double r554927 = exp(r554926);
double r554928 = r554920 * r554924;
double r554929 = r554923 * r554921;
double r554930 = r554928 + r554929;
double r554931 = sin(r554930);
double r554932 = r554927 * r554931;
return r554932;
}