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

char *name = "Main:z from ";

double f_if(float x, float y, float z, float t) {
        float r46523 = x;
        float r46524 = 1.0;
        float r46525 = r46523 + r46524;
        float r46526 = sqrt(r46525);
        float r46527 = sqrt(r46523);
        float r46528 = r46526 - r46527;
        float r46529 = y;
        float r46530 = r46529 + r46524;
        float r46531 = sqrt(r46530);
        float r46532 = sqrt(r46529);
        float r46533 = r46531 - r46532;
        float r46534 = r46528 + r46533;
        float r46535 = z;
        float r46536 = r46535 + r46524;
        float r46537 = sqrt(r46536);
        float r46538 = sqrt(r46535);
        float r46539 = r46537 - r46538;
        float r46540 = r46534 + r46539;
        float r46541 = t;
        float r46542 = r46541 + r46524;
        float r46543 = sqrt(r46542);
        float r46544 = sqrt(r46541);
        float r46545 = r46543 - r46544;
        float r46546 = r46540 + r46545;
        return r46546;
}

double f_id(double x, double y, double z, double t) {
        double r46547 = x;
        double r46548 = 1.0;
        double r46549 = r46547 + r46548;
        double r46550 = sqrt(r46549);
        double r46551 = sqrt(r46547);
        double r46552 = r46550 - r46551;
        double r46553 = y;
        double r46554 = r46553 + r46548;
        double r46555 = sqrt(r46554);
        double r46556 = sqrt(r46553);
        double r46557 = r46555 - r46556;
        double r46558 = r46552 + r46557;
        double r46559 = z;
        double r46560 = r46559 + r46548;
        double r46561 = sqrt(r46560);
        double r46562 = sqrt(r46559);
        double r46563 = r46561 - r46562;
        double r46564 = r46558 + r46563;
        double r46565 = t;
        double r46566 = r46565 + r46548;
        double r46567 = sqrt(r46566);
        double r46568 = sqrt(r46565);
        double r46569 = r46567 - r46568;
        double r46570 = r46564 + r46569;
        return r46570;
}


double f_of(float x, float y, float z, float t) {
        float r46571 = x;
        float r46572 = 1.0;
        float r46573 = r46571 + r46572;
        float r46574 = sqrt(r46573);
        float r46575 = sqrt(r46571);
        float r46576 = r46574 - r46575;
        float r46577 = y;
        float r46578 = r46577 + r46572;
        float r46579 = sqrt(r46578);
        float r46580 = sqrt(r46577);
        float r46581 = r46579 + r46580;
        float r46582 = r46572 / r46581;
        float r46583 = r46576 + r46582;
        float r46584 = z;
        float r46585 = r46584 + r46572;
        float r46586 = sqrt(r46585);
        float r46587 = sqrt(r46584);
        float r46588 = r46586 + r46587;
        float r46589 = r46572 / r46588;
        float r46590 = r46583 + r46589;
        float r46591 = t;
        float r46592 = r46591 + r46572;
        float r46593 = sqrt(r46592);
        float r46594 = sqrt(r46591);
        float r46595 = r46593 + r46594;
        float r46596 = r46572 / r46595;
        float r46597 = r46590 + r46596;
        return r46597;
}

double f_od(double x, double y, double z, double t) {
        double r46598 = x;
        double r46599 = 1.0;
        double r46600 = r46598 + r46599;
        double r46601 = sqrt(r46600);
        double r46602 = sqrt(r46598);
        double r46603 = r46601 - r46602;
        double r46604 = y;
        double r46605 = r46604 + r46599;
        double r46606 = sqrt(r46605);
        double r46607 = sqrt(r46604);
        double r46608 = r46606 + r46607;
        double r46609 = r46599 / r46608;
        double r46610 = r46603 + r46609;
        double r46611 = z;
        double r46612 = r46611 + r46599;
        double r46613 = sqrt(r46612);
        double r46614 = sqrt(r46611);
        double r46615 = r46613 + r46614;
        double r46616 = r46599 / r46615;
        double r46617 = r46610 + r46616;
        double r46618 = t;
        double r46619 = r46618 + r46599;
        double r46620 = sqrt(r46619);
        double r46621 = sqrt(r46618);
        double r46622 = r46620 + r46621;
        double r46623 = r46599 / r46622;
        double r46624 = r46617 + r46623;
        return r46624;
}

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 r46625, r46626, r46627, r46628, r46629, r46630, r46631, r46632, r46633, r46634, r46635, r46636, r46637, r46638, r46639, r46640, r46641, r46642, r46643, r46644, r46645, r46646, r46647, r46648;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(1424);
        mpfr_init(r46625);
        mpfr_init_set_str(r46626, "1.0", 10, MPFR_RNDN);
        mpfr_init(r46627);
        mpfr_init(r46628);
        mpfr_init(r46629);
        mpfr_init(r46630);
        mpfr_init(r46631);
        mpfr_init(r46632);
        mpfr_init(r46633);
        mpfr_init(r46634);
        mpfr_init(r46635);
        mpfr_init(r46636);
        mpfr_init(r46637);
        mpfr_init(r46638);
        mpfr_init(r46639);
        mpfr_init(r46640);
        mpfr_init(r46641);
        mpfr_init(r46642);
        mpfr_init(r46643);
        mpfr_init(r46644);
        mpfr_init(r46645);
        mpfr_init(r46646);
        mpfr_init(r46647);
        mpfr_init(r46648);
}

double f_im(double x, double y, double z, double t) {
        mpfr_set_d(r46625, x, MPFR_RNDN);
        ;
        mpfr_add(r46627, r46625, r46626, MPFR_RNDN);
        mpfr_sqrt(r46628, r46627, MPFR_RNDN);
        mpfr_sqrt(r46629, r46625, MPFR_RNDN);
        mpfr_sub(r46630, r46628, r46629, MPFR_RNDN);
        mpfr_set_d(r46631, y, MPFR_RNDN);
        mpfr_add(r46632, r46631, r46626, MPFR_RNDN);
        mpfr_sqrt(r46633, r46632, MPFR_RNDN);
        mpfr_sqrt(r46634, r46631, MPFR_RNDN);
        mpfr_sub(r46635, r46633, r46634, MPFR_RNDN);
        mpfr_add(r46636, r46630, r46635, MPFR_RNDN);
        mpfr_set_d(r46637, z, MPFR_RNDN);
        mpfr_add(r46638, r46637, r46626, MPFR_RNDN);
        mpfr_sqrt(r46639, r46638, MPFR_RNDN);
        mpfr_sqrt(r46640, r46637, MPFR_RNDN);
        mpfr_sub(r46641, r46639, r46640, MPFR_RNDN);
        mpfr_add(r46642, r46636, r46641, MPFR_RNDN);
        mpfr_set_d(r46643, t, MPFR_RNDN);
        mpfr_add(r46644, r46643, r46626, MPFR_RNDN);
        mpfr_sqrt(r46645, r46644, MPFR_RNDN);
        mpfr_sqrt(r46646, r46643, MPFR_RNDN);
        mpfr_sub(r46647, r46645, r46646, MPFR_RNDN);
        mpfr_add(r46648, r46642, r46647, MPFR_RNDN);
        return mpfr_get_d(r46648, MPFR_RNDN);
}

static mpfr_t r46649, r46650, r46651, r46652, r46653, r46654, r46655, r46656, r46657, r46658, r46659, r46660, r46661, r46662, r46663, r46664, r46665, r46666, r46667, r46668, r46669, r46670, r46671, r46672, r46673, r46674, r46675;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(1424);
        mpfr_init(r46649);
        mpfr_init_set_str(r46650, "1.0", 10, MPFR_RNDN);
        mpfr_init(r46651);
        mpfr_init(r46652);
        mpfr_init(r46653);
        mpfr_init(r46654);
        mpfr_init(r46655);
        mpfr_init(r46656);
        mpfr_init(r46657);
        mpfr_init(r46658);
        mpfr_init(r46659);
        mpfr_init(r46660);
        mpfr_init(r46661);
        mpfr_init(r46662);
        mpfr_init(r46663);
        mpfr_init(r46664);
        mpfr_init(r46665);
        mpfr_init(r46666);
        mpfr_init(r46667);
        mpfr_init(r46668);
        mpfr_init(r46669);
        mpfr_init(r46670);
        mpfr_init(r46671);
        mpfr_init(r46672);
        mpfr_init(r46673);
        mpfr_init(r46674);
        mpfr_init(r46675);
}

double f_fm(double x, double y, double z, double t) {
        mpfr_set_d(r46649, x, MPFR_RNDN);
        ;
        mpfr_add(r46651, r46649, r46650, MPFR_RNDN);
        mpfr_sqrt(r46652, r46651, MPFR_RNDN);
        mpfr_sqrt(r46653, r46649, MPFR_RNDN);
        mpfr_sub(r46654, r46652, r46653, MPFR_RNDN);
        mpfr_set_d(r46655, y, MPFR_RNDN);
        mpfr_add(r46656, r46655, r46650, MPFR_RNDN);
        mpfr_sqrt(r46657, r46656, MPFR_RNDN);
        mpfr_sqrt(r46658, r46655, MPFR_RNDN);
        mpfr_add(r46659, r46657, r46658, MPFR_RNDN);
        mpfr_div(r46660, r46650, r46659, MPFR_RNDN);
        mpfr_add(r46661, r46654, r46660, MPFR_RNDN);
        mpfr_set_d(r46662, z, MPFR_RNDN);
        mpfr_add(r46663, r46662, r46650, MPFR_RNDN);
        mpfr_sqrt(r46664, r46663, MPFR_RNDN);
        mpfr_sqrt(r46665, r46662, MPFR_RNDN);
        mpfr_add(r46666, r46664, r46665, MPFR_RNDN);
        mpfr_div(r46667, r46650, r46666, MPFR_RNDN);
        mpfr_add(r46668, r46661, r46667, MPFR_RNDN);
        mpfr_set_d(r46669, t, MPFR_RNDN);
        mpfr_add(r46670, r46669, r46650, MPFR_RNDN);
        mpfr_sqrt(r46671, r46670, MPFR_RNDN);
        mpfr_sqrt(r46672, r46669, MPFR_RNDN);
        mpfr_add(r46673, r46671, r46672, MPFR_RNDN);
        mpfr_div(r46674, r46650, r46673, MPFR_RNDN);
        mpfr_add(r46675, r46668, r46674, MPFR_RNDN);
        return mpfr_get_d(r46675, MPFR_RNDN);
}

static mpfr_t r46676, r46677, r46678, r46679, r46680, r46681, r46682, r46683, r46684, r46685, r46686, r46687, r46688, r46689, r46690, r46691, r46692, r46693, r46694, r46695, r46696, r46697, r46698, r46699, r46700, r46701, r46702;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(1424);
        mpfr_init(r46676);
        mpfr_init_set_str(r46677, "1.0", 10, MPFR_RNDN);
        mpfr_init(r46678);
        mpfr_init(r46679);
        mpfr_init(r46680);
        mpfr_init(r46681);
        mpfr_init(r46682);
        mpfr_init(r46683);
        mpfr_init(r46684);
        mpfr_init(r46685);
        mpfr_init(r46686);
        mpfr_init(r46687);
        mpfr_init(r46688);
        mpfr_init(r46689);
        mpfr_init(r46690);
        mpfr_init(r46691);
        mpfr_init(r46692);
        mpfr_init(r46693);
        mpfr_init(r46694);
        mpfr_init(r46695);
        mpfr_init(r46696);
        mpfr_init(r46697);
        mpfr_init(r46698);
        mpfr_init(r46699);
        mpfr_init(r46700);
        mpfr_init(r46701);
        mpfr_init(r46702);
}

double f_dm(double x, double y, double z, double t) {
        mpfr_set_d(r46676, x, MPFR_RNDN);
        ;
        mpfr_add(r46678, r46676, r46677, MPFR_RNDN);
        mpfr_sqrt(r46679, r46678, MPFR_RNDN);
        mpfr_sqrt(r46680, r46676, MPFR_RNDN);
        mpfr_sub(r46681, r46679, r46680, MPFR_RNDN);
        mpfr_set_d(r46682, y, MPFR_RNDN);
        mpfr_add(r46683, r46682, r46677, MPFR_RNDN);
        mpfr_sqrt(r46684, r46683, MPFR_RNDN);
        mpfr_sqrt(r46685, r46682, MPFR_RNDN);
        mpfr_add(r46686, r46684, r46685, MPFR_RNDN);
        mpfr_div(r46687, r46677, r46686, MPFR_RNDN);
        mpfr_add(r46688, r46681, r46687, MPFR_RNDN);
        mpfr_set_d(r46689, z, MPFR_RNDN);
        mpfr_add(r46690, r46689, r46677, MPFR_RNDN);
        mpfr_sqrt(r46691, r46690, MPFR_RNDN);
        mpfr_sqrt(r46692, r46689, MPFR_RNDN);
        mpfr_add(r46693, r46691, r46692, MPFR_RNDN);
        mpfr_div(r46694, r46677, r46693, MPFR_RNDN);
        mpfr_add(r46695, r46688, r46694, MPFR_RNDN);
        mpfr_set_d(r46696, t, MPFR_RNDN);
        mpfr_add(r46697, r46696, r46677, MPFR_RNDN);
        mpfr_sqrt(r46698, r46697, MPFR_RNDN);
        mpfr_sqrt(r46699, r46696, MPFR_RNDN);
        mpfr_add(r46700, r46698, r46699, MPFR_RNDN);
        mpfr_div(r46701, r46677, r46700, MPFR_RNDN);
        mpfr_add(r46702, r46695, r46701, MPFR_RNDN);
        return mpfr_get_d(r46702, MPFR_RNDN);
}

