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

char *name = "Diagrams.Solve.Polynomial:cubForm  from diagrams-solve-0.1";

double f_if(float x, float y, float z, float t, float a, float b, float c, float i, float j, float k) {
        float r27465 = x;
        float r27466 = 18.0;
        float r27467 = r27465 * r27466;
        float r27468 = y;
        float r27469 = r27467 * r27468;
        float r27470 = z;
        float r27471 = r27469 * r27470;
        float r27472 = t;
        float r27473 = r27471 * r27472;
        float r27474 = a;
        float r27475 = 4.0;
        float r27476 = r27474 * r27475;
        float r27477 = r27476 * r27472;
        float r27478 = r27473 - r27477;
        float r27479 = b;
        float r27480 = c;
        float r27481 = r27479 * r27480;
        float r27482 = r27478 + r27481;
        float r27483 = r27465 * r27475;
        float r27484 = i;
        float r27485 = r27483 * r27484;
        float r27486 = r27482 - r27485;
        float r27487 = j;
        float r27488 = 27.0;
        float r27489 = r27487 * r27488;
        float r27490 = k;
        float r27491 = r27489 * r27490;
        float r27492 = r27486 - r27491;
        return r27492;
}

double f_id(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
        double r27493 = x;
        double r27494 = 18.0;
        double r27495 = r27493 * r27494;
        double r27496 = y;
        double r27497 = r27495 * r27496;
        double r27498 = z;
        double r27499 = r27497 * r27498;
        double r27500 = t;
        double r27501 = r27499 * r27500;
        double r27502 = a;
        double r27503 = 4.0;
        double r27504 = r27502 * r27503;
        double r27505 = r27504 * r27500;
        double r27506 = r27501 - r27505;
        double r27507 = b;
        double r27508 = c;
        double r27509 = r27507 * r27508;
        double r27510 = r27506 + r27509;
        double r27511 = r27493 * r27503;
        double r27512 = i;
        double r27513 = r27511 * r27512;
        double r27514 = r27510 - r27513;
        double r27515 = j;
        double r27516 = 27.0;
        double r27517 = r27515 * r27516;
        double r27518 = k;
        double r27519 = r27517 * r27518;
        double r27520 = r27514 - r27519;
        return r27520;
}


double f_of(float x, float y, float z, float t, float a, float b, float c, float i, float j, float k) {
        float r27521 = t;
        float r27522 = -1.535344255894926e-124;
        bool r27523 = r27521 <= r27522;
        float r27524 = b;
        float r27525 = c;
        float r27526 = r27524 * r27525;
        float r27527 = i;
        float r27528 = x;
        float r27529 = 4.0;
        float r27530 = r27528 * r27529;
        float r27531 = r27527 * r27530;
        float r27532 = r27526 - r27531;
        float r27533 = j;
        float r27534 = 27.0;
        float r27535 = k;
        float r27536 = r27534 * r27535;
        float r27537 = r27533 * r27536;
        float r27538 = r27532 - r27537;
        float r27539 = z;
        float r27540 = r27539 * r27528;
        float r27541 = y;
        float r27542 = 18.0;
        float r27543 = r27541 * r27542;
        float r27544 = r27540 * r27543;
        float r27545 = a;
        float r27546 = r27529 * r27545;
        float r27547 = r27544 - r27546;
        float r27548 = r27521 * r27547;
        float r27549 = r27538 + r27548;
        float r27550 = 1.535559198326833e-36;
        bool r27551 = r27521 <= r27550;
        float r27552 = r27525 * r27524;
        float r27553 = r27534 * r27533;
        float r27554 = r27535 * r27553;
        float r27555 = r27552 - r27554;
        float r27556 = r27527 * r27529;
        float r27557 = r27521 * r27541;
        float r27558 = r27539 * r27542;
        float r27559 = r27557 * r27558;
        float r27560 = r27556 - r27559;
        float r27561 = r27528 * r27560;
        float r27562 = r27555 - r27561;
        float r27563 = -r27546;
        float r27564 = r27563 * r27521;
        float r27565 = r27562 + r27564;
        float r27566 = r27541 * r27539;
        float r27567 = r27542 * r27528;
        float r27568 = r27566 * r27567;
        float r27569 = r27568 - r27546;
        float r27570 = r27569 * r27521;
        float r27571 = r27528 * r27527;
        float r27572 = r27571 * r27529;
        float r27573 = r27535 * r27533;
        float r27574 = r27534 * r27573;
        float r27575 = r27572 + r27574;
        float r27576 = r27570 - r27575;
        float r27577 = r27526 + r27576;
        float r27578 = r27551 ? r27565 : r27577;
        float r27579 = r27523 ? r27549 : r27578;
        return r27579;
}

double f_od(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
        double r27580 = t;
        double r27581 = -1.535344255894926e-124;
        bool r27582 = r27580 <= r27581;
        double r27583 = b;
        double r27584 = c;
        double r27585 = r27583 * r27584;
        double r27586 = i;
        double r27587 = x;
        double r27588 = 4.0;
        double r27589 = r27587 * r27588;
        double r27590 = r27586 * r27589;
        double r27591 = r27585 - r27590;
        double r27592 = j;
        double r27593 = 27.0;
        double r27594 = k;
        double r27595 = r27593 * r27594;
        double r27596 = r27592 * r27595;
        double r27597 = r27591 - r27596;
        double r27598 = z;
        double r27599 = r27598 * r27587;
        double r27600 = y;
        double r27601 = 18.0;
        double r27602 = r27600 * r27601;
        double r27603 = r27599 * r27602;
        double r27604 = a;
        double r27605 = r27588 * r27604;
        double r27606 = r27603 - r27605;
        double r27607 = r27580 * r27606;
        double r27608 = r27597 + r27607;
        double r27609 = 1.535559198326833e-36;
        bool r27610 = r27580 <= r27609;
        double r27611 = r27584 * r27583;
        double r27612 = r27593 * r27592;
        double r27613 = r27594 * r27612;
        double r27614 = r27611 - r27613;
        double r27615 = r27586 * r27588;
        double r27616 = r27580 * r27600;
        double r27617 = r27598 * r27601;
        double r27618 = r27616 * r27617;
        double r27619 = r27615 - r27618;
        double r27620 = r27587 * r27619;
        double r27621 = r27614 - r27620;
        double r27622 = -r27605;
        double r27623 = r27622 * r27580;
        double r27624 = r27621 + r27623;
        double r27625 = r27600 * r27598;
        double r27626 = r27601 * r27587;
        double r27627 = r27625 * r27626;
        double r27628 = r27627 - r27605;
        double r27629 = r27628 * r27580;
        double r27630 = r27587 * r27586;
        double r27631 = r27630 * r27588;
        double r27632 = r27594 * r27592;
        double r27633 = r27593 * r27632;
        double r27634 = r27631 + r27633;
        double r27635 = r27629 - r27634;
        double r27636 = r27585 + r27635;
        double r27637 = r27610 ? r27624 : r27636;
        double r27638 = r27582 ? r27608 : r27637;
        return r27638;
}

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 r27639, r27640, r27641, r27642, r27643, r27644, r27645, r27646, r27647, r27648, r27649, r27650, r27651, r27652, r27653, r27654, r27655, r27656, r27657, r27658, r27659, r27660, r27661, r27662, r27663, r27664, r27665, r27666;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(592);
        mpfr_init(r27639);
        mpfr_init_set_str(r27640, "18.0", 10, MPFR_RNDN);
        mpfr_init(r27641);
        mpfr_init(r27642);
        mpfr_init(r27643);
        mpfr_init(r27644);
        mpfr_init(r27645);
        mpfr_init(r27646);
        mpfr_init(r27647);
        mpfr_init(r27648);
        mpfr_init_set_str(r27649, "4.0", 10, MPFR_RNDN);
        mpfr_init(r27650);
        mpfr_init(r27651);
        mpfr_init(r27652);
        mpfr_init(r27653);
        mpfr_init(r27654);
        mpfr_init(r27655);
        mpfr_init(r27656);
        mpfr_init(r27657);
        mpfr_init(r27658);
        mpfr_init(r27659);
        mpfr_init(r27660);
        mpfr_init(r27661);
        mpfr_init_set_str(r27662, "27.0", 10, MPFR_RNDN);
        mpfr_init(r27663);
        mpfr_init(r27664);
        mpfr_init(r27665);
        mpfr_init(r27666);
}

double f_im(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
        mpfr_set_d(r27639, x, MPFR_RNDN);
        ;
        mpfr_mul(r27641, r27639, r27640, MPFR_RNDN);
        mpfr_set_d(r27642, y, MPFR_RNDN);
        mpfr_mul(r27643, r27641, r27642, MPFR_RNDN);
        mpfr_set_d(r27644, z, MPFR_RNDN);
        mpfr_mul(r27645, r27643, r27644, MPFR_RNDN);
        mpfr_set_d(r27646, t, MPFR_RNDN);
        mpfr_mul(r27647, r27645, r27646, MPFR_RNDN);
        mpfr_set_d(r27648, a, MPFR_RNDN);
        ;
        mpfr_mul(r27650, r27648, r27649, MPFR_RNDN);
        mpfr_mul(r27651, r27650, r27646, MPFR_RNDN);
        mpfr_sub(r27652, r27647, r27651, MPFR_RNDN);
        mpfr_set_d(r27653, b, MPFR_RNDN);
        mpfr_set_d(r27654, c, MPFR_RNDN);
        mpfr_mul(r27655, r27653, r27654, MPFR_RNDN);
        mpfr_add(r27656, r27652, r27655, MPFR_RNDN);
        mpfr_mul(r27657, r27639, r27649, MPFR_RNDN);
        mpfr_set_d(r27658, i, MPFR_RNDN);
        mpfr_mul(r27659, r27657, r27658, MPFR_RNDN);
        mpfr_sub(r27660, r27656, r27659, MPFR_RNDN);
        mpfr_set_d(r27661, j, MPFR_RNDN);
        ;
        mpfr_mul(r27663, r27661, r27662, MPFR_RNDN);
        mpfr_set_d(r27664, k, MPFR_RNDN);
        mpfr_mul(r27665, r27663, r27664, MPFR_RNDN);
        mpfr_sub(r27666, r27660, r27665, MPFR_RNDN);
        return mpfr_get_d(r27666, MPFR_RNDN);
}

static mpfr_t r27667, r27668, r27669, r27670, r27671, r27672, r27673, r27674, r27675, r27676, r27677, r27678, r27679, r27680, r27681, r27682, r27683, r27684, r27685, r27686, r27687, r27688, r27689, r27690, r27691, r27692, r27693, r27694, r27695, r27696, r27697, r27698, r27699, r27700, r27701, r27702, r27703, r27704, r27705, r27706, r27707, r27708, r27709, r27710, r27711, r27712, r27713, r27714, r27715, r27716, r27717, r27718, r27719, r27720, r27721, r27722, r27723, r27724, r27725;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(592);
        mpfr_init(r27667);
        mpfr_init_set_str(r27668, "-1.535344255894926e-124", 10, MPFR_RNDN);
        mpfr_init(r27669);
        mpfr_init(r27670);
        mpfr_init(r27671);
        mpfr_init(r27672);
        mpfr_init(r27673);
        mpfr_init(r27674);
        mpfr_init_set_str(r27675, "4.0", 10, MPFR_RNDN);
        mpfr_init(r27676);
        mpfr_init(r27677);
        mpfr_init(r27678);
        mpfr_init(r27679);
        mpfr_init_set_str(r27680, "27.0", 10, MPFR_RNDN);
        mpfr_init(r27681);
        mpfr_init(r27682);
        mpfr_init(r27683);
        mpfr_init(r27684);
        mpfr_init(r27685);
        mpfr_init(r27686);
        mpfr_init(r27687);
        mpfr_init_set_str(r27688, "18.0", 10, MPFR_RNDN);
        mpfr_init(r27689);
        mpfr_init(r27690);
        mpfr_init(r27691);
        mpfr_init(r27692);
        mpfr_init(r27693);
        mpfr_init(r27694);
        mpfr_init(r27695);
        mpfr_init_set_str(r27696, "1.535559198326833e-36", 10, MPFR_RNDN);
        mpfr_init(r27697);
        mpfr_init(r27698);
        mpfr_init(r27699);
        mpfr_init(r27700);
        mpfr_init(r27701);
        mpfr_init(r27702);
        mpfr_init(r27703);
        mpfr_init(r27704);
        mpfr_init(r27705);
        mpfr_init(r27706);
        mpfr_init(r27707);
        mpfr_init(r27708);
        mpfr_init(r27709);
        mpfr_init(r27710);
        mpfr_init(r27711);
        mpfr_init(r27712);
        mpfr_init(r27713);
        mpfr_init(r27714);
        mpfr_init(r27715);
        mpfr_init(r27716);
        mpfr_init(r27717);
        mpfr_init(r27718);
        mpfr_init(r27719);
        mpfr_init(r27720);
        mpfr_init(r27721);
        mpfr_init(r27722);
        mpfr_init(r27723);
        mpfr_init(r27724);
        mpfr_init(r27725);
}

double f_fm(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
        mpfr_set_d(r27667, t, MPFR_RNDN);
        ;
        mpfr_set_si(r27669, mpfr_cmp(r27667, r27668) <= 0, MPFR_RNDN);
        mpfr_set_d(r27670, b, MPFR_RNDN);
        mpfr_set_d(r27671, c, MPFR_RNDN);
        mpfr_mul(r27672, r27670, r27671, MPFR_RNDN);
        mpfr_set_d(r27673, i, MPFR_RNDN);
        mpfr_set_d(r27674, x, MPFR_RNDN);
        ;
        mpfr_mul(r27676, r27674, r27675, MPFR_RNDN);
        mpfr_mul(r27677, r27673, r27676, MPFR_RNDN);
        mpfr_sub(r27678, r27672, r27677, MPFR_RNDN);
        mpfr_set_d(r27679, j, MPFR_RNDN);
        ;
        mpfr_set_d(r27681, k, MPFR_RNDN);
        mpfr_mul(r27682, r27680, r27681, MPFR_RNDN);
        mpfr_mul(r27683, r27679, r27682, MPFR_RNDN);
        mpfr_sub(r27684, r27678, r27683, MPFR_RNDN);
        mpfr_set_d(r27685, z, MPFR_RNDN);
        mpfr_mul(r27686, r27685, r27674, MPFR_RNDN);
        mpfr_set_d(r27687, y, MPFR_RNDN);
        ;
        mpfr_mul(r27689, r27687, r27688, MPFR_RNDN);
        mpfr_mul(r27690, r27686, r27689, MPFR_RNDN);
        mpfr_set_d(r27691, a, MPFR_RNDN);
        mpfr_mul(r27692, r27675, r27691, MPFR_RNDN);
        mpfr_sub(r27693, r27690, r27692, MPFR_RNDN);
        mpfr_mul(r27694, r27667, r27693, MPFR_RNDN);
        mpfr_add(r27695, r27684, r27694, MPFR_RNDN);
        ;
        mpfr_set_si(r27697, mpfr_cmp(r27667, r27696) <= 0, MPFR_RNDN);
        mpfr_mul(r27698, r27671, r27670, MPFR_RNDN);
        mpfr_mul(r27699, r27680, r27679, MPFR_RNDN);
        mpfr_mul(r27700, r27681, r27699, MPFR_RNDN);
        mpfr_sub(r27701, r27698, r27700, MPFR_RNDN);
        mpfr_mul(r27702, r27673, r27675, MPFR_RNDN);
        mpfr_mul(r27703, r27667, r27687, MPFR_RNDN);
        mpfr_mul(r27704, r27685, r27688, MPFR_RNDN);
        mpfr_mul(r27705, r27703, r27704, MPFR_RNDN);
        mpfr_sub(r27706, r27702, r27705, MPFR_RNDN);
        mpfr_mul(r27707, r27674, r27706, MPFR_RNDN);
        mpfr_sub(r27708, r27701, r27707, MPFR_RNDN);
        mpfr_neg(r27709, r27692, MPFR_RNDN);
        mpfr_mul(r27710, r27709, r27667, MPFR_RNDN);
        mpfr_add(r27711, r27708, r27710, MPFR_RNDN);
        mpfr_mul(r27712, r27687, r27685, MPFR_RNDN);
        mpfr_mul(r27713, r27688, r27674, MPFR_RNDN);
        mpfr_mul(r27714, r27712, r27713, MPFR_RNDN);
        mpfr_sub(r27715, r27714, r27692, MPFR_RNDN);
        mpfr_mul(r27716, r27715, r27667, MPFR_RNDN);
        mpfr_mul(r27717, r27674, r27673, MPFR_RNDN);
        mpfr_mul(r27718, r27717, r27675, MPFR_RNDN);
        mpfr_mul(r27719, r27681, r27679, MPFR_RNDN);
        mpfr_mul(r27720, r27680, r27719, MPFR_RNDN);
        mpfr_add(r27721, r27718, r27720, MPFR_RNDN);
        mpfr_sub(r27722, r27716, r27721, MPFR_RNDN);
        mpfr_add(r27723, r27672, r27722, MPFR_RNDN);
        if (mpfr_get_si(r27697, MPFR_RNDN)) { mpfr_set(r27724, r27711, MPFR_RNDN); } else { mpfr_set(r27724, r27723, MPFR_RNDN); };
        if (mpfr_get_si(r27669, MPFR_RNDN)) { mpfr_set(r27725, r27695, MPFR_RNDN); } else { mpfr_set(r27725, r27724, MPFR_RNDN); };
        return mpfr_get_d(r27725, MPFR_RNDN);
}

static mpfr_t r27726, r27727, r27728, r27729, r27730, r27731, r27732, r27733, r27734, r27735, r27736, r27737, r27738, r27739, r27740, r27741, r27742, r27743, r27744, r27745, r27746, r27747, r27748, r27749, r27750, r27751, r27752, r27753, r27754, r27755, r27756, r27757, r27758, r27759, r27760, r27761, r27762, r27763, r27764, r27765, r27766, r27767, r27768, r27769, r27770, r27771, r27772, r27773, r27774, r27775, r27776, r27777, r27778, r27779, r27780, r27781, r27782, r27783, r27784;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(592);
        mpfr_init(r27726);
        mpfr_init_set_str(r27727, "-1.535344255894926e-124", 10, MPFR_RNDN);
        mpfr_init(r27728);
        mpfr_init(r27729);
        mpfr_init(r27730);
        mpfr_init(r27731);
        mpfr_init(r27732);
        mpfr_init(r27733);
        mpfr_init_set_str(r27734, "4.0", 10, MPFR_RNDN);
        mpfr_init(r27735);
        mpfr_init(r27736);
        mpfr_init(r27737);
        mpfr_init(r27738);
        mpfr_init_set_str(r27739, "27.0", 10, MPFR_RNDN);
        mpfr_init(r27740);
        mpfr_init(r27741);
        mpfr_init(r27742);
        mpfr_init(r27743);
        mpfr_init(r27744);
        mpfr_init(r27745);
        mpfr_init(r27746);
        mpfr_init_set_str(r27747, "18.0", 10, MPFR_RNDN);
        mpfr_init(r27748);
        mpfr_init(r27749);
        mpfr_init(r27750);
        mpfr_init(r27751);
        mpfr_init(r27752);
        mpfr_init(r27753);
        mpfr_init(r27754);
        mpfr_init_set_str(r27755, "1.535559198326833e-36", 10, MPFR_RNDN);
        mpfr_init(r27756);
        mpfr_init(r27757);
        mpfr_init(r27758);
        mpfr_init(r27759);
        mpfr_init(r27760);
        mpfr_init(r27761);
        mpfr_init(r27762);
        mpfr_init(r27763);
        mpfr_init(r27764);
        mpfr_init(r27765);
        mpfr_init(r27766);
        mpfr_init(r27767);
        mpfr_init(r27768);
        mpfr_init(r27769);
        mpfr_init(r27770);
        mpfr_init(r27771);
        mpfr_init(r27772);
        mpfr_init(r27773);
        mpfr_init(r27774);
        mpfr_init(r27775);
        mpfr_init(r27776);
        mpfr_init(r27777);
        mpfr_init(r27778);
        mpfr_init(r27779);
        mpfr_init(r27780);
        mpfr_init(r27781);
        mpfr_init(r27782);
        mpfr_init(r27783);
        mpfr_init(r27784);
}

double f_dm(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
        mpfr_set_d(r27726, t, MPFR_RNDN);
        ;
        mpfr_set_si(r27728, mpfr_cmp(r27726, r27727) <= 0, MPFR_RNDN);
        mpfr_set_d(r27729, b, MPFR_RNDN);
        mpfr_set_d(r27730, c, MPFR_RNDN);
        mpfr_mul(r27731, r27729, r27730, MPFR_RNDN);
        mpfr_set_d(r27732, i, MPFR_RNDN);
        mpfr_set_d(r27733, x, MPFR_RNDN);
        ;
        mpfr_mul(r27735, r27733, r27734, MPFR_RNDN);
        mpfr_mul(r27736, r27732, r27735, MPFR_RNDN);
        mpfr_sub(r27737, r27731, r27736, MPFR_RNDN);
        mpfr_set_d(r27738, j, MPFR_RNDN);
        ;
        mpfr_set_d(r27740, k, MPFR_RNDN);
        mpfr_mul(r27741, r27739, r27740, MPFR_RNDN);
        mpfr_mul(r27742, r27738, r27741, MPFR_RNDN);
        mpfr_sub(r27743, r27737, r27742, MPFR_RNDN);
        mpfr_set_d(r27744, z, MPFR_RNDN);
        mpfr_mul(r27745, r27744, r27733, MPFR_RNDN);
        mpfr_set_d(r27746, y, MPFR_RNDN);
        ;
        mpfr_mul(r27748, r27746, r27747, MPFR_RNDN);
        mpfr_mul(r27749, r27745, r27748, MPFR_RNDN);
        mpfr_set_d(r27750, a, MPFR_RNDN);
        mpfr_mul(r27751, r27734, r27750, MPFR_RNDN);
        mpfr_sub(r27752, r27749, r27751, MPFR_RNDN);
        mpfr_mul(r27753, r27726, r27752, MPFR_RNDN);
        mpfr_add(r27754, r27743, r27753, MPFR_RNDN);
        ;
        mpfr_set_si(r27756, mpfr_cmp(r27726, r27755) <= 0, MPFR_RNDN);
        mpfr_mul(r27757, r27730, r27729, MPFR_RNDN);
        mpfr_mul(r27758, r27739, r27738, MPFR_RNDN);
        mpfr_mul(r27759, r27740, r27758, MPFR_RNDN);
        mpfr_sub(r27760, r27757, r27759, MPFR_RNDN);
        mpfr_mul(r27761, r27732, r27734, MPFR_RNDN);
        mpfr_mul(r27762, r27726, r27746, MPFR_RNDN);
        mpfr_mul(r27763, r27744, r27747, MPFR_RNDN);
        mpfr_mul(r27764, r27762, r27763, MPFR_RNDN);
        mpfr_sub(r27765, r27761, r27764, MPFR_RNDN);
        mpfr_mul(r27766, r27733, r27765, MPFR_RNDN);
        mpfr_sub(r27767, r27760, r27766, MPFR_RNDN);
        mpfr_neg(r27768, r27751, MPFR_RNDN);
        mpfr_mul(r27769, r27768, r27726, MPFR_RNDN);
        mpfr_add(r27770, r27767, r27769, MPFR_RNDN);
        mpfr_mul(r27771, r27746, r27744, MPFR_RNDN);
        mpfr_mul(r27772, r27747, r27733, MPFR_RNDN);
        mpfr_mul(r27773, r27771, r27772, MPFR_RNDN);
        mpfr_sub(r27774, r27773, r27751, MPFR_RNDN);
        mpfr_mul(r27775, r27774, r27726, MPFR_RNDN);
        mpfr_mul(r27776, r27733, r27732, MPFR_RNDN);
        mpfr_mul(r27777, r27776, r27734, MPFR_RNDN);
        mpfr_mul(r27778, r27740, r27738, MPFR_RNDN);
        mpfr_mul(r27779, r27739, r27778, MPFR_RNDN);
        mpfr_add(r27780, r27777, r27779, MPFR_RNDN);
        mpfr_sub(r27781, r27775, r27780, MPFR_RNDN);
        mpfr_add(r27782, r27731, r27781, MPFR_RNDN);
        if (mpfr_get_si(r27756, MPFR_RNDN)) { mpfr_set(r27783, r27770, MPFR_RNDN); } else { mpfr_set(r27783, r27782, MPFR_RNDN); };
        if (mpfr_get_si(r27728, MPFR_RNDN)) { mpfr_set(r27784, r27754, MPFR_RNDN); } else { mpfr_set(r27784, r27783, MPFR_RNDN); };
        return mpfr_get_d(r27784, MPFR_RNDN);
}

