double f(double re, double im, double base) {
double r604281 = im;
double r604282 = re;
double r604283 = atan2(r604281, r604282);
double r604284 = base;
double r604285 = log(r604284);
double r604286 = r604283 * r604285;
double r604287 = r604282 * r604282;
double r604288 = r604281 * r604281;
double r604289 = r604287 + r604288;
double r604290 = sqrt(r604289);
double r604291 = log(r604290);
double r604292 = 0.0;
double r604293 = r604291 * r604292;
double r604294 = r604286 - r604293;
double r604295 = r604285 * r604285;
double r604296 = r604292 * r604292;
double r604297 = r604295 + r604296;
double r604298 = r604294 / r604297;
return r604298;
}