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

char *name = "Octave 3.8, jcobi/3";

double f_if(float alpha, float beta) {
        float r26254 = alpha;
        float r26255 = beta;
        float r26256 = r26254 + r26255;
        float r26257 = r26255 * r26254;
        float r26258 = r26256 + r26257;
        float r26259 = 1.0;
        float r26260 = r26258 + r26259;
        float r26261 = 2;
        float r26262 = 1;
        float r26263 = r26261 * r26262;
        float r26264 = r26256 + r26263;
        float r26265 = r26260 / r26264;
        float r26266 = r26265 / r26264;
        float r26267 = r26264 + r26259;
        float r26268 = r26266 / r26267;
        return r26268;
}

double f_id(double alpha, double beta) {
        double r26269 = alpha;
        double r26270 = beta;
        double r26271 = r26269 + r26270;
        double r26272 = r26270 * r26269;
        double r26273 = r26271 + r26272;
        double r26274 = 1.0;
        double r26275 = r26273 + r26274;
        double r26276 = 2;
        double r26277 = 1;
        double r26278 = r26276 * r26277;
        double r26279 = r26271 + r26278;
        double r26280 = r26275 / r26279;
        double r26281 = r26280 / r26279;
        double r26282 = r26279 + r26274;
        double r26283 = r26281 / r26282;
        return r26283;
}


double f_of(float alpha, float beta) {
        float r26284 = beta;
        float r26285 = alpha;
        float r26286 = r26284 * r26285;
        float r26287 = r26284 + r26285;
        float r26288 = r26286 + r26287;
        float r26289 = 1.0;
        float r26290 = r26288 + r26289;
        float r26291 = 2;
        float r26292 = r26287 + r26291;
        float r26293 = r26290 / r26292;
        float r26294 = r26293 / r26292;
        float r26295 = r26289 + r26292;
        float r26296 = r26294 / r26295;
        float r26297 = 1.7835983884682288e+308;
        bool r26298 = r26296 <= r26297;
        float r26299 = 0.25;
        float r26300 = r26299 * r26287;
        float r26301 = 0.5;
        float r26302 = r26300 + r26301;
        float r26303 = r26289 + r26291;
        float r26304 = r26287 + r26303;
        float r26305 = r26292 * r26304;
        float r26306 = r26302 / r26305;
        float r26307 = r26298 ? r26296 : r26306;
        return r26307;
}

double f_od(double alpha, double beta) {
        double r26308 = beta;
        double r26309 = alpha;
        double r26310 = r26308 * r26309;
        double r26311 = r26308 + r26309;
        double r26312 = r26310 + r26311;
        double r26313 = 1.0;
        double r26314 = r26312 + r26313;
        double r26315 = 2;
        double r26316 = r26311 + r26315;
        double r26317 = r26314 / r26316;
        double r26318 = r26317 / r26316;
        double r26319 = r26313 + r26316;
        double r26320 = r26318 / r26319;
        double r26321 = 1.7835983884682288e+308;
        bool r26322 = r26320 <= r26321;
        double r26323 = 0.25;
        double r26324 = r26323 * r26311;
        double r26325 = 0.5;
        double r26326 = r26324 + r26325;
        double r26327 = r26313 + r26315;
        double r26328 = r26311 + r26327;
        double r26329 = r26316 * r26328;
        double r26330 = r26326 / r26329;
        double r26331 = r26322 ? r26320 : r26330;
        return r26331;
}

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 r26332, r26333, r26334, r26335, r26336, r26337, r26338, r26339, r26340, r26341, r26342, r26343, r26344, r26345, r26346;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(336);
        mpfr_init(r26332);
        mpfr_init(r26333);
        mpfr_init(r26334);
        mpfr_init(r26335);
        mpfr_init(r26336);
        mpfr_init_set_str(r26337, "1.0", 10, MPFR_RNDN);
        mpfr_init(r26338);
        mpfr_init_set_str(r26339, "2", 10, MPFR_RNDN);
        mpfr_init_set_str(r26340, "1", 10, MPFR_RNDN);
        mpfr_init(r26341);
        mpfr_init(r26342);
        mpfr_init(r26343);
        mpfr_init(r26344);
        mpfr_init(r26345);
        mpfr_init(r26346);
}

double f_im(double alpha, double beta) {
        mpfr_set_d(r26332, alpha, MPFR_RNDN);
        mpfr_set_d(r26333, beta, MPFR_RNDN);
        mpfr_add(r26334, r26332, r26333, MPFR_RNDN);
        mpfr_mul(r26335, r26333, r26332, MPFR_RNDN);
        mpfr_add(r26336, r26334, r26335, MPFR_RNDN);
        ;
        mpfr_add(r26338, r26336, r26337, MPFR_RNDN);
        ;
        ;
        mpfr_mul(r26341, r26339, r26340, MPFR_RNDN);
        mpfr_add(r26342, r26334, r26341, MPFR_RNDN);
        mpfr_div(r26343, r26338, r26342, MPFR_RNDN);
        mpfr_div(r26344, r26343, r26342, MPFR_RNDN);
        mpfr_add(r26345, r26342, r26337, MPFR_RNDN);
        mpfr_div(r26346, r26344, r26345, MPFR_RNDN);
        return mpfr_get_d(r26346, MPFR_RNDN);
}

static mpfr_t r26347, r26348, r26349, r26350, r26351, r26352, r26353, r26354, r26355, r26356, r26357, r26358, r26359, r26360, r26361, r26362, r26363, r26364, r26365, r26366, r26367, r26368, r26369, r26370;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(336);
        mpfr_init(r26347);
        mpfr_init(r26348);
        mpfr_init(r26349);
        mpfr_init(r26350);
        mpfr_init(r26351);
        mpfr_init_set_str(r26352, "1.0", 10, MPFR_RNDN);
        mpfr_init(r26353);
        mpfr_init_set_str(r26354, "2", 10, MPFR_RNDN);
        mpfr_init(r26355);
        mpfr_init(r26356);
        mpfr_init(r26357);
        mpfr_init(r26358);
        mpfr_init(r26359);
        mpfr_init_set_str(r26360, "1.7835983884682288e+308", 10, MPFR_RNDN);
        mpfr_init(r26361);
        mpfr_init_set_str(r26362, "0.25", 10, MPFR_RNDN);
        mpfr_init(r26363);
        mpfr_init_set_str(r26364, "0.5", 10, MPFR_RNDN);
        mpfr_init(r26365);
        mpfr_init(r26366);
        mpfr_init(r26367);
        mpfr_init(r26368);
        mpfr_init(r26369);
        mpfr_init(r26370);
}

double f_fm(double alpha, double beta) {
        mpfr_set_d(r26347, beta, MPFR_RNDN);
        mpfr_set_d(r26348, alpha, MPFR_RNDN);
        mpfr_mul(r26349, r26347, r26348, MPFR_RNDN);
        mpfr_add(r26350, r26347, r26348, MPFR_RNDN);
        mpfr_add(r26351, r26349, r26350, MPFR_RNDN);
        ;
        mpfr_add(r26353, r26351, r26352, MPFR_RNDN);
        ;
        mpfr_add(r26355, r26350, r26354, MPFR_RNDN);
        mpfr_div(r26356, r26353, r26355, MPFR_RNDN);
        mpfr_div(r26357, r26356, r26355, MPFR_RNDN);
        mpfr_add(r26358, r26352, r26355, MPFR_RNDN);
        mpfr_div(r26359, r26357, r26358, MPFR_RNDN);
        ;
        mpfr_set_si(r26361, mpfr_cmp(r26359, r26360) <= 0, MPFR_RNDN);
        ;
        mpfr_mul(r26363, r26362, r26350, MPFR_RNDN);
        ;
        mpfr_add(r26365, r26363, r26364, MPFR_RNDN);
        mpfr_add(r26366, r26352, r26354, MPFR_RNDN);
        mpfr_add(r26367, r26350, r26366, MPFR_RNDN);
        mpfr_mul(r26368, r26355, r26367, MPFR_RNDN);
        mpfr_div(r26369, r26365, r26368, MPFR_RNDN);
        if (mpfr_get_si(r26361, MPFR_RNDN)) { mpfr_set(r26370, r26359, MPFR_RNDN); } else { mpfr_set(r26370, r26369, MPFR_RNDN); };
        return mpfr_get_d(r26370, MPFR_RNDN);
}

static mpfr_t r26371, r26372, r26373, r26374, r26375, r26376, r26377, r26378, r26379, r26380, r26381, r26382, r26383, r26384, r26385, r26386, r26387, r26388, r26389, r26390, r26391, r26392, r26393, r26394;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(336);
        mpfr_init(r26371);
        mpfr_init(r26372);
        mpfr_init(r26373);
        mpfr_init(r26374);
        mpfr_init(r26375);
        mpfr_init_set_str(r26376, "1.0", 10, MPFR_RNDN);
        mpfr_init(r26377);
        mpfr_init_set_str(r26378, "2", 10, MPFR_RNDN);
        mpfr_init(r26379);
        mpfr_init(r26380);
        mpfr_init(r26381);
        mpfr_init(r26382);
        mpfr_init(r26383);
        mpfr_init_set_str(r26384, "1.7835983884682288e+308", 10, MPFR_RNDN);
        mpfr_init(r26385);
        mpfr_init_set_str(r26386, "0.25", 10, MPFR_RNDN);
        mpfr_init(r26387);
        mpfr_init_set_str(r26388, "0.5", 10, MPFR_RNDN);
        mpfr_init(r26389);
        mpfr_init(r26390);
        mpfr_init(r26391);
        mpfr_init(r26392);
        mpfr_init(r26393);
        mpfr_init(r26394);
}

double f_dm(double alpha, double beta) {
        mpfr_set_d(r26371, beta, MPFR_RNDN);
        mpfr_set_d(r26372, alpha, MPFR_RNDN);
        mpfr_mul(r26373, r26371, r26372, MPFR_RNDN);
        mpfr_add(r26374, r26371, r26372, MPFR_RNDN);
        mpfr_add(r26375, r26373, r26374, MPFR_RNDN);
        ;
        mpfr_add(r26377, r26375, r26376, MPFR_RNDN);
        ;
        mpfr_add(r26379, r26374, r26378, MPFR_RNDN);
        mpfr_div(r26380, r26377, r26379, MPFR_RNDN);
        mpfr_div(r26381, r26380, r26379, MPFR_RNDN);
        mpfr_add(r26382, r26376, r26379, MPFR_RNDN);
        mpfr_div(r26383, r26381, r26382, MPFR_RNDN);
        ;
        mpfr_set_si(r26385, mpfr_cmp(r26383, r26384) <= 0, MPFR_RNDN);
        ;
        mpfr_mul(r26387, r26386, r26374, MPFR_RNDN);
        ;
        mpfr_add(r26389, r26387, r26388, MPFR_RNDN);
        mpfr_add(r26390, r26376, r26378, MPFR_RNDN);
        mpfr_add(r26391, r26374, r26390, MPFR_RNDN);
        mpfr_mul(r26392, r26379, r26391, MPFR_RNDN);
        mpfr_div(r26393, r26389, r26392, MPFR_RNDN);
        if (mpfr_get_si(r26385, MPFR_RNDN)) { mpfr_set(r26394, r26383, MPFR_RNDN); } else { mpfr_set(r26394, r26393, MPFR_RNDN); };
        return mpfr_get_d(r26394, MPFR_RNDN);
}

