#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 r46606 = x;
        float r46607 = 1.0;
        float r46608 = r46606 + r46607;
        float r46609 = sqrt(r46608);
        float r46610 = sqrt(r46606);
        float r46611 = r46609 - r46610;
        float r46612 = y;
        float r46613 = r46612 + r46607;
        float r46614 = sqrt(r46613);
        float r46615 = sqrt(r46612);
        float r46616 = r46614 - r46615;
        float r46617 = r46611 + r46616;
        float r46618 = z;
        float r46619 = r46618 + r46607;
        float r46620 = sqrt(r46619);
        float r46621 = sqrt(r46618);
        float r46622 = r46620 - r46621;
        float r46623 = r46617 + r46622;
        float r46624 = t;
        float r46625 = r46624 + r46607;
        float r46626 = sqrt(r46625);
        float r46627 = sqrt(r46624);
        float r46628 = r46626 - r46627;
        float r46629 = r46623 + r46628;
        return r46629;
}

double f_id(double x, double y, double z, double t) {
        double r46630 = x;
        double r46631 = 1.0;
        double r46632 = r46630 + r46631;
        double r46633 = sqrt(r46632);
        double r46634 = sqrt(r46630);
        double r46635 = r46633 - r46634;
        double r46636 = y;
        double r46637 = r46636 + r46631;
        double r46638 = sqrt(r46637);
        double r46639 = sqrt(r46636);
        double r46640 = r46638 - r46639;
        double r46641 = r46635 + r46640;
        double r46642 = z;
        double r46643 = r46642 + r46631;
        double r46644 = sqrt(r46643);
        double r46645 = sqrt(r46642);
        double r46646 = r46644 - r46645;
        double r46647 = r46641 + r46646;
        double r46648 = t;
        double r46649 = r46648 + r46631;
        double r46650 = sqrt(r46649);
        double r46651 = sqrt(r46648);
        double r46652 = r46650 - r46651;
        double r46653 = r46647 + r46652;
        return r46653;
}


double f_of(float x, float y, float z, float t) {
        float r46654 = x;
        float r46655 = 1.0;
        float r46656 = r46654 + r46655;
        float r46657 = sqrt(r46656);
        float r46658 = sqrt(r46654);
        float r46659 = r46657 - r46658;
        float r46660 = y;
        float r46661 = r46660 + r46655;
        float r46662 = sqrt(r46661);
        float r46663 = sqrt(r46660);
        float r46664 = r46662 + r46663;
        float r46665 = r46655 / r46664;
        float r46666 = r46659 + r46665;
        float r46667 = z;
        float r46668 = r46667 + r46655;
        float r46669 = sqrt(r46668);
        float r46670 = sqrt(r46667);
        float r46671 = r46669 + r46670;
        float r46672 = r46655 / r46671;
        float r46673 = 3;
        float r46674 = pow(r46672, r46673);
        float r46675 = cbrt(r46674);
        float r46676 = r46666 + r46675;
        float r46677 = t;
        float r46678 = r46677 + r46655;
        float r46679 = sqrt(r46678);
        float r46680 = sqrt(r46677);
        float r46681 = r46679 + r46680;
        float r46682 = r46655 / r46681;
        float r46683 = r46676 + r46682;
        return r46683;
}

double f_od(double x, double y, double z, double t) {
        double r46684 = x;
        double r46685 = 1.0;
        double r46686 = r46684 + r46685;
        double r46687 = sqrt(r46686);
        double r46688 = sqrt(r46684);
        double r46689 = r46687 - r46688;
        double r46690 = y;
        double r46691 = r46690 + r46685;
        double r46692 = sqrt(r46691);
        double r46693 = sqrt(r46690);
        double r46694 = r46692 + r46693;
        double r46695 = r46685 / r46694;
        double r46696 = r46689 + r46695;
        double r46697 = z;
        double r46698 = r46697 + r46685;
        double r46699 = sqrt(r46698);
        double r46700 = sqrt(r46697);
        double r46701 = r46699 + r46700;
        double r46702 = r46685 / r46701;
        double r46703 = 3;
        double r46704 = pow(r46702, r46703);
        double r46705 = cbrt(r46704);
        double r46706 = r46696 + r46705;
        double r46707 = t;
        double r46708 = r46707 + r46685;
        double r46709 = sqrt(r46708);
        double r46710 = sqrt(r46707);
        double r46711 = r46709 + r46710;
        double r46712 = r46685 / r46711;
        double r46713 = r46706 + r46712;
        return r46713;
}

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 r46714, r46715, r46716, r46717, r46718, r46719, r46720, r46721, r46722, r46723, r46724, r46725, r46726, r46727, r46728, r46729, r46730, r46731, r46732, r46733, r46734, r46735, r46736, r46737;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(1424);
        mpfr_init(r46714);
        mpfr_init_set_str(r46715, "1.0", 10, MPFR_RNDN);
        mpfr_init(r46716);
        mpfr_init(r46717);
        mpfr_init(r46718);
        mpfr_init(r46719);
        mpfr_init(r46720);
        mpfr_init(r46721);
        mpfr_init(r46722);
        mpfr_init(r46723);
        mpfr_init(r46724);
        mpfr_init(r46725);
        mpfr_init(r46726);
        mpfr_init(r46727);
        mpfr_init(r46728);
        mpfr_init(r46729);
        mpfr_init(r46730);
        mpfr_init(r46731);
        mpfr_init(r46732);
        mpfr_init(r46733);
        mpfr_init(r46734);
        mpfr_init(r46735);
        mpfr_init(r46736);
        mpfr_init(r46737);
}

double f_im(double x, double y, double z, double t) {
        mpfr_set_d(r46714, x, MPFR_RNDN);
        ;
        mpfr_add(r46716, r46714, r46715, MPFR_RNDN);
        mpfr_sqrt(r46717, r46716, MPFR_RNDN);
        mpfr_sqrt(r46718, r46714, MPFR_RNDN);
        mpfr_sub(r46719, r46717, r46718, MPFR_RNDN);
        mpfr_set_d(r46720, y, MPFR_RNDN);
        mpfr_add(r46721, r46720, r46715, MPFR_RNDN);
        mpfr_sqrt(r46722, r46721, MPFR_RNDN);
        mpfr_sqrt(r46723, r46720, MPFR_RNDN);
        mpfr_sub(r46724, r46722, r46723, MPFR_RNDN);
        mpfr_add(r46725, r46719, r46724, MPFR_RNDN);
        mpfr_set_d(r46726, z, MPFR_RNDN);
        mpfr_add(r46727, r46726, r46715, MPFR_RNDN);
        mpfr_sqrt(r46728, r46727, MPFR_RNDN);
        mpfr_sqrt(r46729, r46726, MPFR_RNDN);
        mpfr_sub(r46730, r46728, r46729, MPFR_RNDN);
        mpfr_add(r46731, r46725, r46730, MPFR_RNDN);
        mpfr_set_d(r46732, t, MPFR_RNDN);
        mpfr_add(r46733, r46732, r46715, MPFR_RNDN);
        mpfr_sqrt(r46734, r46733, MPFR_RNDN);
        mpfr_sqrt(r46735, r46732, MPFR_RNDN);
        mpfr_sub(r46736, r46734, r46735, MPFR_RNDN);
        mpfr_add(r46737, r46731, r46736, MPFR_RNDN);
        return mpfr_get_d(r46737, MPFR_RNDN);
}

static mpfr_t r46738, r46739, r46740, r46741, r46742, r46743, r46744, r46745, r46746, r46747, r46748, r46749, r46750, r46751, r46752, r46753, r46754, r46755, r46756, r46757, r46758, r46759, r46760, r46761, r46762, r46763, r46764, r46765, r46766, r46767;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(1424);
        mpfr_init(r46738);
        mpfr_init_set_str(r46739, "1.0", 10, MPFR_RNDN);
        mpfr_init(r46740);
        mpfr_init(r46741);
        mpfr_init(r46742);
        mpfr_init(r46743);
        mpfr_init(r46744);
        mpfr_init(r46745);
        mpfr_init(r46746);
        mpfr_init(r46747);
        mpfr_init(r46748);
        mpfr_init(r46749);
        mpfr_init(r46750);
        mpfr_init(r46751);
        mpfr_init(r46752);
        mpfr_init(r46753);
        mpfr_init(r46754);
        mpfr_init(r46755);
        mpfr_init(r46756);
        mpfr_init_set_str(r46757, "3", 10, MPFR_RNDN);
        mpfr_init(r46758);
        mpfr_init(r46759);
        mpfr_init(r46760);
        mpfr_init(r46761);
        mpfr_init(r46762);
        mpfr_init(r46763);
        mpfr_init(r46764);
        mpfr_init(r46765);
        mpfr_init(r46766);
        mpfr_init(r46767);
}

double f_fm(double x, double y, double z, double t) {
        mpfr_set_d(r46738, x, MPFR_RNDN);
        ;
        mpfr_add(r46740, r46738, r46739, MPFR_RNDN);
        mpfr_sqrt(r46741, r46740, MPFR_RNDN);
        mpfr_sqrt(r46742, r46738, MPFR_RNDN);
        mpfr_sub(r46743, r46741, r46742, MPFR_RNDN);
        mpfr_set_d(r46744, y, MPFR_RNDN);
        mpfr_add(r46745, r46744, r46739, MPFR_RNDN);
        mpfr_sqrt(r46746, r46745, MPFR_RNDN);
        mpfr_sqrt(r46747, r46744, MPFR_RNDN);
        mpfr_add(r46748, r46746, r46747, MPFR_RNDN);
        mpfr_div(r46749, r46739, r46748, MPFR_RNDN);
        mpfr_add(r46750, r46743, r46749, MPFR_RNDN);
        mpfr_set_d(r46751, z, MPFR_RNDN);
        mpfr_add(r46752, r46751, r46739, MPFR_RNDN);
        mpfr_sqrt(r46753, r46752, MPFR_RNDN);
        mpfr_sqrt(r46754, r46751, MPFR_RNDN);
        mpfr_add(r46755, r46753, r46754, MPFR_RNDN);
        mpfr_div(r46756, r46739, r46755, MPFR_RNDN);
        ;
        mpfr_pow(r46758, r46756, r46757, MPFR_RNDN);
        mpfr_cbrt(r46759, r46758, MPFR_RNDN);
        mpfr_add(r46760, r46750, r46759, MPFR_RNDN);
        mpfr_set_d(r46761, t, MPFR_RNDN);
        mpfr_add(r46762, r46761, r46739, MPFR_RNDN);
        mpfr_sqrt(r46763, r46762, MPFR_RNDN);
        mpfr_sqrt(r46764, r46761, MPFR_RNDN);
        mpfr_add(r46765, r46763, r46764, MPFR_RNDN);
        mpfr_div(r46766, r46739, r46765, MPFR_RNDN);
        mpfr_add(r46767, r46760, r46766, MPFR_RNDN);
        return mpfr_get_d(r46767, MPFR_RNDN);
}

static mpfr_t r46768, r46769, r46770, r46771, r46772, r46773, r46774, r46775, r46776, r46777, r46778, r46779, r46780, r46781, r46782, r46783, r46784, r46785, r46786, r46787, r46788, r46789, r46790, r46791, r46792, r46793, r46794, r46795, r46796, r46797;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(1424);
        mpfr_init(r46768);
        mpfr_init_set_str(r46769, "1.0", 10, MPFR_RNDN);
        mpfr_init(r46770);
        mpfr_init(r46771);
        mpfr_init(r46772);
        mpfr_init(r46773);
        mpfr_init(r46774);
        mpfr_init(r46775);
        mpfr_init(r46776);
        mpfr_init(r46777);
        mpfr_init(r46778);
        mpfr_init(r46779);
        mpfr_init(r46780);
        mpfr_init(r46781);
        mpfr_init(r46782);
        mpfr_init(r46783);
        mpfr_init(r46784);
        mpfr_init(r46785);
        mpfr_init(r46786);
        mpfr_init_set_str(r46787, "3", 10, MPFR_RNDN);
        mpfr_init(r46788);
        mpfr_init(r46789);
        mpfr_init(r46790);
        mpfr_init(r46791);
        mpfr_init(r46792);
        mpfr_init(r46793);
        mpfr_init(r46794);
        mpfr_init(r46795);
        mpfr_init(r46796);
        mpfr_init(r46797);
}

double f_dm(double x, double y, double z, double t) {
        mpfr_set_d(r46768, x, MPFR_RNDN);
        ;
        mpfr_add(r46770, r46768, r46769, MPFR_RNDN);
        mpfr_sqrt(r46771, r46770, MPFR_RNDN);
        mpfr_sqrt(r46772, r46768, MPFR_RNDN);
        mpfr_sub(r46773, r46771, r46772, MPFR_RNDN);
        mpfr_set_d(r46774, y, MPFR_RNDN);
        mpfr_add(r46775, r46774, r46769, MPFR_RNDN);
        mpfr_sqrt(r46776, r46775, MPFR_RNDN);
        mpfr_sqrt(r46777, r46774, MPFR_RNDN);
        mpfr_add(r46778, r46776, r46777, MPFR_RNDN);
        mpfr_div(r46779, r46769, r46778, MPFR_RNDN);
        mpfr_add(r46780, r46773, r46779, MPFR_RNDN);
        mpfr_set_d(r46781, z, MPFR_RNDN);
        mpfr_add(r46782, r46781, r46769, MPFR_RNDN);
        mpfr_sqrt(r46783, r46782, MPFR_RNDN);
        mpfr_sqrt(r46784, r46781, MPFR_RNDN);
        mpfr_add(r46785, r46783, r46784, MPFR_RNDN);
        mpfr_div(r46786, r46769, r46785, MPFR_RNDN);
        ;
        mpfr_pow(r46788, r46786, r46787, MPFR_RNDN);
        mpfr_cbrt(r46789, r46788, MPFR_RNDN);
        mpfr_add(r46790, r46780, r46789, MPFR_RNDN);
        mpfr_set_d(r46791, t, MPFR_RNDN);
        mpfr_add(r46792, r46791, r46769, MPFR_RNDN);
        mpfr_sqrt(r46793, r46792, MPFR_RNDN);
        mpfr_sqrt(r46794, r46791, MPFR_RNDN);
        mpfr_add(r46795, r46793, r46794, MPFR_RNDN);
        mpfr_div(r46796, r46769, r46795, MPFR_RNDN);
        mpfr_add(r46797, r46790, r46796, MPFR_RNDN);
        return mpfr_get_d(r46797, MPFR_RNDN);
}

