#include <tgmath.h>
#include <gmp.h>
#include <mpfr.h>
#include <stdio.h>
#include <stdbool.h>

char *name = "powComplex, imaginary part";

double f_if(float x_re, float x_im, float y_re, float y_im) {
        float r20384 = x_re;
        float r20385 = r20384 * r20384;
        float r20386 = x_im;
        float r20387 = r20386 * r20386;
        float r20388 = r20385 + r20387;
        float r20389 = sqrt(r20388);
        float r20390 = log(r20389);
        float r20391 = y_re;
        float r20392 = r20390 * r20391;
        float r20393 = atan2(r20386, r20384);
        float r20394 = y_im;
        float r20395 = r20393 * r20394;
        float r20396 = r20392 - r20395;
        float r20397 = exp(r20396);
        float r20398 = r20390 * r20394;
        float r20399 = r20393 * r20391;
        float r20400 = r20398 + r20399;
        float r20401 = sin(r20400);
        float r20402 = r20397 * r20401;
        return r20402;
}

double f_id(double x_re, double x_im, double y_re, double y_im) {
        double r20403 = x_re;
        double r20404 = r20403 * r20403;
        double r20405 = x_im;
        double r20406 = r20405 * r20405;
        double r20407 = r20404 + r20406;
        double r20408 = sqrt(r20407);
        double r20409 = log(r20408);
        double r20410 = y_re;
        double r20411 = r20409 * r20410;
        double r20412 = atan2(r20405, r20403);
        double r20413 = y_im;
        double r20414 = r20412 * r20413;
        double r20415 = r20411 - r20414;
        double r20416 = exp(r20415);
        double r20417 = r20409 * r20413;
        double r20418 = r20412 * r20410;
        double r20419 = r20417 + r20418;
        double r20420 = sin(r20419);
        double r20421 = r20416 * r20420;
        return r20421;
}


double f_of(float x_re, float x_im, float y_re, float y_im) {
        float r20422 = x_im;
        float r20423 = -5.816106641287622;
        bool r20424 = r20422 <= r20423;
        float r20425 = x_re;
        float r20426 = atan2(r20422, r20425);
        float r20427 = y_re;
        float r20428 = r20426 * r20427;
        float r20429 = y_im;
        float r20430 = -r20422;
        float r20431 = log(r20430);
        float r20432 = r20429 * r20431;
        float r20433 = r20428 + r20432;
        float r20434 = sin(r20433);
        float r20435 = pow(r20430, r20427);
        float r20436 = exp(r20429);
        float r20437 = cbrt(r20436);
        float r20438 = r20437 * r20437;
        float r20439 = pow(r20438, r20426);
        float r20440 = pow(r20437, r20426);
        float r20441 = r20439 * r20440;
        float r20442 = r20435 / r20441;
        float r20443 = r20434 * r20442;
        float r20444 = -1.9388125716537117e-148;
        bool r20445 = r20422 <= r20444;
        float r20446 = r20427 * r20426;
        float r20447 = r20446 + r20432;
        float r20448 = sin(r20447);
        float r20449 = r20426 * r20429;
        float r20450 = 1;
        float r20451 = 1/2;
        float r20452 = 2;
        float r20453 = pow(r20426, r20452);
        float r20454 = pow(r20429, r20452);
        float r20455 = r20453 * r20454;
        float r20456 = r20451 * r20455;
        float r20457 = r20450 + r20456;
        float r20458 = r20449 + r20457;
        float r20459 = r20422 * r20422;
        float r20460 = r20425 * r20425;
        float r20461 = r20459 + r20460;
        float r20462 = sqrt(r20461);
        float r20463 = pow(r20462, r20427);
        float r20464 = r20458 / r20463;
        float r20465 = r20448 / r20464;
        float r20466 = -2.246750664079573e-309;
        bool r20467 = r20422 <= r20466;
        float r20468 = cbrt(r20431);
        float r20469 = r20468 * r20468;
        float r20470 = r20429 * r20469;
        float r20471 = r20470 * r20468;
        float r20472 = r20428 + r20471;
        float r20473 = sin(r20472);
        float r20474 = pow(r20436, r20426);
        float r20475 = r20435 / r20474;
        float r20476 = r20473 * r20475;
        float r20477 = log(r20422);
        float r20478 = r20429 * r20477;
        float r20479 = r20478 + r20428;
        float r20480 = sin(r20479);
        float r20481 = r20474 / r20463;
        float r20482 = r20480 / r20481;
        float r20483 = r20467 ? r20476 : r20482;
        float r20484 = r20445 ? r20465 : r20483;
        float r20485 = r20424 ? r20443 : r20484;
        return r20485;
}

double f_od(double x_re, double x_im, double y_re, double y_im) {
        double r20486 = x_im;
        double r20487 = -5.816106641287622;
        bool r20488 = r20486 <= r20487;
        double r20489 = x_re;
        double r20490 = atan2(r20486, r20489);
        double r20491 = y_re;
        double r20492 = r20490 * r20491;
        double r20493 = y_im;
        double r20494 = -r20486;
        double r20495 = log(r20494);
        double r20496 = r20493 * r20495;
        double r20497 = r20492 + r20496;
        double r20498 = sin(r20497);
        double r20499 = pow(r20494, r20491);
        double r20500 = exp(r20493);
        double r20501 = cbrt(r20500);
        double r20502 = r20501 * r20501;
        double r20503 = pow(r20502, r20490);
        double r20504 = pow(r20501, r20490);
        double r20505 = r20503 * r20504;
        double r20506 = r20499 / r20505;
        double r20507 = r20498 * r20506;
        double r20508 = -1.9388125716537117e-148;
        bool r20509 = r20486 <= r20508;
        double r20510 = r20491 * r20490;
        double r20511 = r20510 + r20496;
        double r20512 = sin(r20511);
        double r20513 = r20490 * r20493;
        double r20514 = 1;
        double r20515 = 1/2;
        double r20516 = 2;
        double r20517 = pow(r20490, r20516);
        double r20518 = pow(r20493, r20516);
        double r20519 = r20517 * r20518;
        double r20520 = r20515 * r20519;
        double r20521 = r20514 + r20520;
        double r20522 = r20513 + r20521;
        double r20523 = r20486 * r20486;
        double r20524 = r20489 * r20489;
        double r20525 = r20523 + r20524;
        double r20526 = sqrt(r20525);
        double r20527 = pow(r20526, r20491);
        double r20528 = r20522 / r20527;
        double r20529 = r20512 / r20528;
        double r20530 = -2.246750664079573e-309;
        bool r20531 = r20486 <= r20530;
        double r20532 = cbrt(r20495);
        double r20533 = r20532 * r20532;
        double r20534 = r20493 * r20533;
        double r20535 = r20534 * r20532;
        double r20536 = r20492 + r20535;
        double r20537 = sin(r20536);
        double r20538 = pow(r20500, r20490);
        double r20539 = r20499 / r20538;
        double r20540 = r20537 * r20539;
        double r20541 = log(r20486);
        double r20542 = r20493 * r20541;
        double r20543 = r20542 + r20492;
        double r20544 = sin(r20543);
        double r20545 = r20538 / r20527;
        double r20546 = r20544 / r20545;
        double r20547 = r20531 ? r20540 : r20546;
        double r20548 = r20509 ? r20529 : r20547;
        double r20549 = r20488 ? r20507 : r20548;
        return r20549;
}

void mpfr_fmod2(mpfr_t r, mpfr_t n, mpfr_t d, mpfr_rnd_t rmd) {
        mpfr_fmod(r, n, d, rmd);
        if (mpfr_cmp_ui(r, 0) < 0) mpfr_add(r, r, d, rmd);
}


static mpfr_t r20550, r20551, r20552, r20553, r20554, r20555, r20556, r20557, r20558, r20559, r20560, r20561, r20562, r20563, r20564, r20565, r20566, r20567, r20568;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(1936);
        mpfr_init(r20550);
        mpfr_init(r20551);
        mpfr_init(r20552);
        mpfr_init(r20553);
        mpfr_init(r20554);
        mpfr_init(r20555);
        mpfr_init(r20556);
        mpfr_init(r20557);
        mpfr_init(r20558);
        mpfr_init(r20559);
        mpfr_init(r20560);
        mpfr_init(r20561);
        mpfr_init(r20562);
        mpfr_init(r20563);
        mpfr_init(r20564);
        mpfr_init(r20565);
        mpfr_init(r20566);
        mpfr_init(r20567);
        mpfr_init(r20568);
}

double f_im(double x_re, double x_im, double y_re, double y_im) {
        mpfr_set_d(r20550, x_re, MPFR_RNDN);
        mpfr_mul(r20551, r20550, r20550, MPFR_RNDN);
        mpfr_set_d(r20552, x_im, MPFR_RNDN);
        mpfr_mul(r20553, r20552, r20552, MPFR_RNDN);
        mpfr_add(r20554, r20551, r20553, MPFR_RNDN);
        mpfr_sqrt(r20555, r20554, MPFR_RNDN);
        mpfr_log(r20556, r20555, MPFR_RNDN);
        mpfr_set_d(r20557, y_re, MPFR_RNDN);
        mpfr_mul(r20558, r20556, r20557, MPFR_RNDN);
        mpfr_atan2(r20559, r20552, r20550, MPFR_RNDN);
        mpfr_set_d(r20560, y_im, MPFR_RNDN);
        mpfr_mul(r20561, r20559, r20560, MPFR_RNDN);
        mpfr_sub(r20562, r20558, r20561, MPFR_RNDN);
        mpfr_exp(r20563, r20562, MPFR_RNDN);
        mpfr_mul(r20564, r20556, r20560, MPFR_RNDN);
        mpfr_mul(r20565, r20559, r20557, MPFR_RNDN);
        mpfr_add(r20566, r20564, r20565, MPFR_RNDN);
        mpfr_sin(r20567, r20566, MPFR_RNDN);
        mpfr_mul(r20568, r20563, r20567, MPFR_RNDN);
        return mpfr_get_d(r20568, MPFR_RNDN);
}

static mpfr_t r20569, r20570, r20571, r20572, r20573, r20574, r20575, r20576, r20577, r20578, r20579, r20580, r20581, r20582, r20583, r20584, r20585, r20586, r20587, r20588, r20589, r20590, r20591, r20592, r20593, r20594, r20595, r20596, r20597, r20598, r20599, r20600, r20601, r20602, r20603, r20604, r20605, r20606, r20607, r20608, r20609, r20610, r20611, r20612, r20613, r20614, r20615, r20616, r20617, r20618, r20619, r20620, r20621, r20622, r20623, r20624, r20625, r20626, r20627, r20628, r20629, r20630, r20631, r20632;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(1936);
        mpfr_init(r20569);
        mpfr_init_set_str(r20570, "-5.816106641287622", 10, MPFR_RNDN);
        mpfr_init(r20571);
        mpfr_init(r20572);
        mpfr_init(r20573);
        mpfr_init(r20574);
        mpfr_init(r20575);
        mpfr_init(r20576);
        mpfr_init(r20577);
        mpfr_init(r20578);
        mpfr_init(r20579);
        mpfr_init(r20580);
        mpfr_init(r20581);
        mpfr_init(r20582);
        mpfr_init(r20583);
        mpfr_init(r20584);
        mpfr_init(r20585);
        mpfr_init(r20586);
        mpfr_init(r20587);
        mpfr_init(r20588);
        mpfr_init(r20589);
        mpfr_init(r20590);
        mpfr_init_set_str(r20591, "-1.9388125716537117e-148", 10, MPFR_RNDN);
        mpfr_init(r20592);
        mpfr_init(r20593);
        mpfr_init(r20594);
        mpfr_init(r20595);
        mpfr_init(r20596);
        mpfr_init_set_str(r20597, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r20598, "1/2", 10, MPFR_RNDN);
        mpfr_init_set_str(r20599, "2", 10, MPFR_RNDN);
        mpfr_init(r20600);
        mpfr_init(r20601);
        mpfr_init(r20602);
        mpfr_init(r20603);
        mpfr_init(r20604);
        mpfr_init(r20605);
        mpfr_init(r20606);
        mpfr_init(r20607);
        mpfr_init(r20608);
        mpfr_init(r20609);
        mpfr_init(r20610);
        mpfr_init(r20611);
        mpfr_init(r20612);
        mpfr_init_set_str(r20613, "-2.246750664079573e-309", 10, MPFR_RNDN);
        mpfr_init(r20614);
        mpfr_init(r20615);
        mpfr_init(r20616);
        mpfr_init(r20617);
        mpfr_init(r20618);
        mpfr_init(r20619);
        mpfr_init(r20620);
        mpfr_init(r20621);
        mpfr_init(r20622);
        mpfr_init(r20623);
        mpfr_init(r20624);
        mpfr_init(r20625);
        mpfr_init(r20626);
        mpfr_init(r20627);
        mpfr_init(r20628);
        mpfr_init(r20629);
        mpfr_init(r20630);
        mpfr_init(r20631);
        mpfr_init(r20632);
}

double f_fm(double x_re, double x_im, double y_re, double y_im) {
        mpfr_set_d(r20569, x_im, MPFR_RNDN);
        ;
        mpfr_set_si(r20571, mpfr_cmp(r20569, r20570) <= 0, MPFR_RNDN);
        mpfr_set_d(r20572, x_re, MPFR_RNDN);
        mpfr_atan2(r20573, r20569, r20572, MPFR_RNDN);
        mpfr_set_d(r20574, y_re, MPFR_RNDN);
        mpfr_mul(r20575, r20573, r20574, MPFR_RNDN);
        mpfr_set_d(r20576, y_im, MPFR_RNDN);
        mpfr_neg(r20577, r20569, MPFR_RNDN);
        mpfr_log(r20578, r20577, MPFR_RNDN);
        mpfr_mul(r20579, r20576, r20578, MPFR_RNDN);
        mpfr_add(r20580, r20575, r20579, MPFR_RNDN);
        mpfr_sin(r20581, r20580, MPFR_RNDN);
        mpfr_pow(r20582, r20577, r20574, MPFR_RNDN);
        mpfr_exp(r20583, r20576, MPFR_RNDN);
        mpfr_cbrt(r20584, r20583, MPFR_RNDN);
        mpfr_mul(r20585, r20584, r20584, MPFR_RNDN);
        mpfr_pow(r20586, r20585, r20573, MPFR_RNDN);
        mpfr_pow(r20587, r20584, r20573, MPFR_RNDN);
        mpfr_mul(r20588, r20586, r20587, MPFR_RNDN);
        mpfr_div(r20589, r20582, r20588, MPFR_RNDN);
        mpfr_mul(r20590, r20581, r20589, MPFR_RNDN);
        ;
        mpfr_set_si(r20592, mpfr_cmp(r20569, r20591) <= 0, MPFR_RNDN);
        mpfr_mul(r20593, r20574, r20573, MPFR_RNDN);
        mpfr_add(r20594, r20593, r20579, MPFR_RNDN);
        mpfr_sin(r20595, r20594, MPFR_RNDN);
        mpfr_mul(r20596, r20573, r20576, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_pow(r20600, r20573, r20599, MPFR_RNDN);
        mpfr_pow(r20601, r20576, r20599, MPFR_RNDN);
        mpfr_mul(r20602, r20600, r20601, MPFR_RNDN);
        mpfr_mul(r20603, r20598, r20602, MPFR_RNDN);
        mpfr_add(r20604, r20597, r20603, MPFR_RNDN);
        mpfr_add(r20605, r20596, r20604, MPFR_RNDN);
        mpfr_mul(r20606, r20569, r20569, MPFR_RNDN);
        mpfr_mul(r20607, r20572, r20572, MPFR_RNDN);
        mpfr_add(r20608, r20606, r20607, MPFR_RNDN);
        mpfr_sqrt(r20609, r20608, MPFR_RNDN);
        mpfr_pow(r20610, r20609, r20574, MPFR_RNDN);
        mpfr_div(r20611, r20605, r20610, MPFR_RNDN);
        mpfr_div(r20612, r20595, r20611, MPFR_RNDN);
        ;
        mpfr_set_si(r20614, mpfr_cmp(r20569, r20613) <= 0, MPFR_RNDN);
        mpfr_cbrt(r20615, r20578, MPFR_RNDN);
        mpfr_mul(r20616, r20615, r20615, MPFR_RNDN);
        mpfr_mul(r20617, r20576, r20616, MPFR_RNDN);
        mpfr_mul(r20618, r20617, r20615, MPFR_RNDN);
        mpfr_add(r20619, r20575, r20618, MPFR_RNDN);
        mpfr_sin(r20620, r20619, MPFR_RNDN);
        mpfr_pow(r20621, r20583, r20573, MPFR_RNDN);
        mpfr_div(r20622, r20582, r20621, MPFR_RNDN);
        mpfr_mul(r20623, r20620, r20622, MPFR_RNDN);
        mpfr_log(r20624, r20569, MPFR_RNDN);
        mpfr_mul(r20625, r20576, r20624, MPFR_RNDN);
        mpfr_add(r20626, r20625, r20575, MPFR_RNDN);
        mpfr_sin(r20627, r20626, MPFR_RNDN);
        mpfr_div(r20628, r20621, r20610, MPFR_RNDN);
        mpfr_div(r20629, r20627, r20628, MPFR_RNDN);
        if (mpfr_get_si(r20614, MPFR_RNDN)) { mpfr_set(r20630, r20623, MPFR_RNDN); } else { mpfr_set(r20630, r20629, MPFR_RNDN); };
        if (mpfr_get_si(r20592, MPFR_RNDN)) { mpfr_set(r20631, r20612, MPFR_RNDN); } else { mpfr_set(r20631, r20630, MPFR_RNDN); };
        if (mpfr_get_si(r20571, MPFR_RNDN)) { mpfr_set(r20632, r20590, MPFR_RNDN); } else { mpfr_set(r20632, r20631, MPFR_RNDN); };
        return mpfr_get_d(r20632, MPFR_RNDN);
}

static mpfr_t r20633, r20634, r20635, r20636, r20637, r20638, r20639, r20640, r20641, r20642, r20643, r20644, r20645, r20646, r20647, r20648, r20649, r20650, r20651, r20652, r20653, r20654, r20655, r20656, r20657, r20658, r20659, r20660, r20661, r20662, r20663, r20664, r20665, r20666, r20667, r20668, r20669, r20670, r20671, r20672, r20673, r20674, r20675, r20676, r20677, r20678, r20679, r20680, r20681, r20682, r20683, r20684, r20685, r20686, r20687, r20688, r20689, r20690, r20691, r20692, r20693, r20694, r20695, r20696;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(1936);
        mpfr_init(r20633);
        mpfr_init_set_str(r20634, "-5.816106641287622", 10, MPFR_RNDN);
        mpfr_init(r20635);
        mpfr_init(r20636);
        mpfr_init(r20637);
        mpfr_init(r20638);
        mpfr_init(r20639);
        mpfr_init(r20640);
        mpfr_init(r20641);
        mpfr_init(r20642);
        mpfr_init(r20643);
        mpfr_init(r20644);
        mpfr_init(r20645);
        mpfr_init(r20646);
        mpfr_init(r20647);
        mpfr_init(r20648);
        mpfr_init(r20649);
        mpfr_init(r20650);
        mpfr_init(r20651);
        mpfr_init(r20652);
        mpfr_init(r20653);
        mpfr_init(r20654);
        mpfr_init_set_str(r20655, "-1.9388125716537117e-148", 10, MPFR_RNDN);
        mpfr_init(r20656);
        mpfr_init(r20657);
        mpfr_init(r20658);
        mpfr_init(r20659);
        mpfr_init(r20660);
        mpfr_init_set_str(r20661, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r20662, "1/2", 10, MPFR_RNDN);
        mpfr_init_set_str(r20663, "2", 10, MPFR_RNDN);
        mpfr_init(r20664);
        mpfr_init(r20665);
        mpfr_init(r20666);
        mpfr_init(r20667);
        mpfr_init(r20668);
        mpfr_init(r20669);
        mpfr_init(r20670);
        mpfr_init(r20671);
        mpfr_init(r20672);
        mpfr_init(r20673);
        mpfr_init(r20674);
        mpfr_init(r20675);
        mpfr_init(r20676);
        mpfr_init_set_str(r20677, "-2.246750664079573e-309", 10, MPFR_RNDN);
        mpfr_init(r20678);
        mpfr_init(r20679);
        mpfr_init(r20680);
        mpfr_init(r20681);
        mpfr_init(r20682);
        mpfr_init(r20683);
        mpfr_init(r20684);
        mpfr_init(r20685);
        mpfr_init(r20686);
        mpfr_init(r20687);
        mpfr_init(r20688);
        mpfr_init(r20689);
        mpfr_init(r20690);
        mpfr_init(r20691);
        mpfr_init(r20692);
        mpfr_init(r20693);
        mpfr_init(r20694);
        mpfr_init(r20695);
        mpfr_init(r20696);
}

double f_dm(double x_re, double x_im, double y_re, double y_im) {
        mpfr_set_d(r20633, x_im, MPFR_RNDN);
        ;
        mpfr_set_si(r20635, mpfr_cmp(r20633, r20634) <= 0, MPFR_RNDN);
        mpfr_set_d(r20636, x_re, MPFR_RNDN);
        mpfr_atan2(r20637, r20633, r20636, MPFR_RNDN);
        mpfr_set_d(r20638, y_re, MPFR_RNDN);
        mpfr_mul(r20639, r20637, r20638, MPFR_RNDN);
        mpfr_set_d(r20640, y_im, MPFR_RNDN);
        mpfr_neg(r20641, r20633, MPFR_RNDN);
        mpfr_log(r20642, r20641, MPFR_RNDN);
        mpfr_mul(r20643, r20640, r20642, MPFR_RNDN);
        mpfr_add(r20644, r20639, r20643, MPFR_RNDN);
        mpfr_sin(r20645, r20644, MPFR_RNDN);
        mpfr_pow(r20646, r20641, r20638, MPFR_RNDN);
        mpfr_exp(r20647, r20640, MPFR_RNDN);
        mpfr_cbrt(r20648, r20647, MPFR_RNDN);
        mpfr_mul(r20649, r20648, r20648, MPFR_RNDN);
        mpfr_pow(r20650, r20649, r20637, MPFR_RNDN);
        mpfr_pow(r20651, r20648, r20637, MPFR_RNDN);
        mpfr_mul(r20652, r20650, r20651, MPFR_RNDN);
        mpfr_div(r20653, r20646, r20652, MPFR_RNDN);
        mpfr_mul(r20654, r20645, r20653, MPFR_RNDN);
        ;
        mpfr_set_si(r20656, mpfr_cmp(r20633, r20655) <= 0, MPFR_RNDN);
        mpfr_mul(r20657, r20638, r20637, MPFR_RNDN);
        mpfr_add(r20658, r20657, r20643, MPFR_RNDN);
        mpfr_sin(r20659, r20658, MPFR_RNDN);
        mpfr_mul(r20660, r20637, r20640, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_pow(r20664, r20637, r20663, MPFR_RNDN);
        mpfr_pow(r20665, r20640, r20663, MPFR_RNDN);
        mpfr_mul(r20666, r20664, r20665, MPFR_RNDN);
        mpfr_mul(r20667, r20662, r20666, MPFR_RNDN);
        mpfr_add(r20668, r20661, r20667, MPFR_RNDN);
        mpfr_add(r20669, r20660, r20668, MPFR_RNDN);
        mpfr_mul(r20670, r20633, r20633, MPFR_RNDN);
        mpfr_mul(r20671, r20636, r20636, MPFR_RNDN);
        mpfr_add(r20672, r20670, r20671, MPFR_RNDN);
        mpfr_sqrt(r20673, r20672, MPFR_RNDN);
        mpfr_pow(r20674, r20673, r20638, MPFR_RNDN);
        mpfr_div(r20675, r20669, r20674, MPFR_RNDN);
        mpfr_div(r20676, r20659, r20675, MPFR_RNDN);
        ;
        mpfr_set_si(r20678, mpfr_cmp(r20633, r20677) <= 0, MPFR_RNDN);
        mpfr_cbrt(r20679, r20642, MPFR_RNDN);
        mpfr_mul(r20680, r20679, r20679, MPFR_RNDN);
        mpfr_mul(r20681, r20640, r20680, MPFR_RNDN);
        mpfr_mul(r20682, r20681, r20679, MPFR_RNDN);
        mpfr_add(r20683, r20639, r20682, MPFR_RNDN);
        mpfr_sin(r20684, r20683, MPFR_RNDN);
        mpfr_pow(r20685, r20647, r20637, MPFR_RNDN);
        mpfr_div(r20686, r20646, r20685, MPFR_RNDN);
        mpfr_mul(r20687, r20684, r20686, MPFR_RNDN);
        mpfr_log(r20688, r20633, MPFR_RNDN);
        mpfr_mul(r20689, r20640, r20688, MPFR_RNDN);
        mpfr_add(r20690, r20689, r20639, MPFR_RNDN);
        mpfr_sin(r20691, r20690, MPFR_RNDN);
        mpfr_div(r20692, r20685, r20674, MPFR_RNDN);
        mpfr_div(r20693, r20691, r20692, MPFR_RNDN);
        if (mpfr_get_si(r20678, MPFR_RNDN)) { mpfr_set(r20694, r20687, MPFR_RNDN); } else { mpfr_set(r20694, r20693, MPFR_RNDN); };
        if (mpfr_get_si(r20656, MPFR_RNDN)) { mpfr_set(r20695, r20676, MPFR_RNDN); } else { mpfr_set(r20695, r20694, MPFR_RNDN); };
        if (mpfr_get_si(r20635, MPFR_RNDN)) { mpfr_set(r20696, r20654, MPFR_RNDN); } else { mpfr_set(r20696, r20695, MPFR_RNDN); };
        return mpfr_get_d(r20696, MPFR_RNDN);
}

