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

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

double f_if(float alpha, float beta) {
        float r9424 = beta;
        float r9425 = alpha;
        float r9426 = r9424 - r9425;
        float r9427 = r9425 + r9424;
        float r9428 = 2.0f;
        float r9429 = r9427 + r9428;
        float r9430 = r9426 / r9429;
        float r9431 = 1.0f;
        float r9432 = r9430 + r9431;
        float r9433 = r9432 / r9428;
        return r9433;
}

double f_id(double alpha, double beta) {
        double r9434 = beta;
        double r9435 = alpha;
        double r9436 = r9434 - r9435;
        double r9437 = r9435 + r9434;
        double r9438 = 2.0;
        double r9439 = r9437 + r9438;
        double r9440 = r9436 / r9439;
        double r9441 = 1.0;
        double r9442 = r9440 + r9441;
        double r9443 = r9442 / r9438;
        return r9443;
}


double f_of(float alpha, float beta) {
        float r9444 = 1.0f;
        float r9445 = beta;
        float r9446 = alpha;
        float r9447 = r9445 - r9446;
        float r9448 = r9446 + r9445;
        float r9449 = 2.0f;
        float r9450 = r9448 + r9449;
        float r9451 = r9447 / r9450;
        float r9452 = r9444 + r9451;
        float r9453 = r9452 / r9449;
        float r9454 = 2.031575370521667e-09f;
        bool r9455 = r9453 <= r9454;
        float r9456 = r9446 / r9450;
        float r9457 = r9444 + r9456;
        float r9458 = r9457 * r9445;
        float r9459 = 4.0f;
        float r9460 = r9459 / r9446;
        float r9461 = r9460 - r9449;
        float r9462 = -r9459;
        float r9463 = fma(r9445, r9461, r9462);
        float r9464 = r9458 - r9463;
        float r9465 = r9446 + r9449;
        float r9466 = r9445 + r9465;
        float r9467 = fma(r9466, r9444, r9446);
        float r9468 = r9464 / r9467;
        float r9469 = r9468 / r9449;
        float r9470 = r9456 * r9456;
        float r9471 = -r9444;
        float r9472 = r9471 * r9444;
        float r9473 = r9450 * r9472;
        float r9474 = fma(r9450, r9470, r9473);
        float r9475 = r9458 - r9474;
        float r9476 = r9475 / r9467;
        float r9477 = r9476 / r9449;
        float r9478 = r9455 ? r9469 : r9477;
        return r9478;
}

double f_od(double alpha, double beta) {
        double r9479 = 1.0;
        double r9480 = beta;
        double r9481 = alpha;
        double r9482 = r9480 - r9481;
        double r9483 = r9481 + r9480;
        double r9484 = 2.0;
        double r9485 = r9483 + r9484;
        double r9486 = r9482 / r9485;
        double r9487 = r9479 + r9486;
        double r9488 = r9487 / r9484;
        double r9489 = 2.031575370521667e-09;
        bool r9490 = r9488 <= r9489;
        double r9491 = r9481 / r9485;
        double r9492 = r9479 + r9491;
        double r9493 = r9492 * r9480;
        double r9494 = 4.0;
        double r9495 = r9494 / r9481;
        double r9496 = r9495 - r9484;
        double r9497 = -r9494;
        double r9498 = fma(r9480, r9496, r9497);
        double r9499 = r9493 - r9498;
        double r9500 = r9481 + r9484;
        double r9501 = r9480 + r9500;
        double r9502 = fma(r9501, r9479, r9481);
        double r9503 = r9499 / r9502;
        double r9504 = r9503 / r9484;
        double r9505 = r9491 * r9491;
        double r9506 = -r9479;
        double r9507 = r9506 * r9479;
        double r9508 = r9485 * r9507;
        double r9509 = fma(r9485, r9505, r9508);
        double r9510 = r9493 - r9509;
        double r9511 = r9510 / r9502;
        double r9512 = r9511 / r9484;
        double r9513 = r9490 ? r9504 : r9512;
        return r9513;
}

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 r9514, r9515, r9516, r9517, r9518, r9519, r9520, r9521, r9522, r9523;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(1360);
        mpfr_init(r9514);
        mpfr_init(r9515);
        mpfr_init(r9516);
        mpfr_init(r9517);
        mpfr_init_set_str(r9518, "2.0", 10, MPFR_RNDN);
        mpfr_init(r9519);
        mpfr_init(r9520);
        mpfr_init_set_str(r9521, "1.0", 10, MPFR_RNDN);
        mpfr_init(r9522);
        mpfr_init(r9523);
}

double f_im(double alpha, double beta) {
        mpfr_set_d(r9514, beta, MPFR_RNDN);
        mpfr_set_d(r9515, alpha, MPFR_RNDN);
        mpfr_sub(r9516, r9514, r9515, MPFR_RNDN);
        mpfr_add(r9517, r9515, r9514, MPFR_RNDN);
        ;
        mpfr_add(r9519, r9517, r9518, MPFR_RNDN);
        mpfr_div(r9520, r9516, r9519, MPFR_RNDN);
        ;
        mpfr_add(r9522, r9520, r9521, MPFR_RNDN);
        mpfr_div(r9523, r9522, r9518, MPFR_RNDN);
        return mpfr_get_d(r9523, MPFR_RNDN);
}

static mpfr_t r9524, r9525, r9526, r9527, r9528, r9529, r9530, r9531, r9532, r9533, r9534, r9535, r9536, r9537, r9538, r9539, r9540, r9541, r9542, r9543, r9544, r9545, r9546, r9547, r9548, r9549, r9550, r9551, r9552, r9553, r9554, r9555, r9556, r9557, r9558;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(1360);
        mpfr_init_set_str(r9524, "1.0", 10, MPFR_RNDN);
        mpfr_init(r9525);
        mpfr_init(r9526);
        mpfr_init(r9527);
        mpfr_init(r9528);
        mpfr_init_set_str(r9529, "2.0", 10, MPFR_RNDN);
        mpfr_init(r9530);
        mpfr_init(r9531);
        mpfr_init(r9532);
        mpfr_init(r9533);
        mpfr_init_set_str(r9534, "2.031575370521667e-09", 10, MPFR_RNDN);
        mpfr_init(r9535);
        mpfr_init(r9536);
        mpfr_init(r9537);
        mpfr_init(r9538);
        mpfr_init_set_str(r9539, "4.0", 10, MPFR_RNDN);
        mpfr_init(r9540);
        mpfr_init(r9541);
        mpfr_init(r9542);
        mpfr_init(r9543);
        mpfr_init(r9544);
        mpfr_init(r9545);
        mpfr_init(r9546);
        mpfr_init(r9547);
        mpfr_init(r9548);
        mpfr_init(r9549);
        mpfr_init(r9550);
        mpfr_init(r9551);
        mpfr_init(r9552);
        mpfr_init(r9553);
        mpfr_init(r9554);
        mpfr_init(r9555);
        mpfr_init(r9556);
        mpfr_init(r9557);
        mpfr_init(r9558);
}

double f_fm(double alpha, double beta) {
        ;
        mpfr_set_d(r9525, beta, MPFR_RNDN);
        mpfr_set_d(r9526, alpha, MPFR_RNDN);
        mpfr_sub(r9527, r9525, r9526, MPFR_RNDN);
        mpfr_add(r9528, r9526, r9525, MPFR_RNDN);
        ;
        mpfr_add(r9530, r9528, r9529, MPFR_RNDN);
        mpfr_div(r9531, r9527, r9530, MPFR_RNDN);
        mpfr_add(r9532, r9524, r9531, MPFR_RNDN);
        mpfr_div(r9533, r9532, r9529, MPFR_RNDN);
        ;
        mpfr_set_si(r9535, mpfr_cmp(r9533, r9534) <= 0, MPFR_RNDN);
        mpfr_div(r9536, r9526, r9530, MPFR_RNDN);
        mpfr_add(r9537, r9524, r9536, MPFR_RNDN);
        mpfr_mul(r9538, r9537, r9525, MPFR_RNDN);
        ;
        mpfr_div(r9540, r9539, r9526, MPFR_RNDN);
        mpfr_sub(r9541, r9540, r9529, MPFR_RNDN);
        mpfr_neg(r9542, r9539, MPFR_RNDN);
        mpfr_fma(r9543, r9525, r9541, r9542, MPFR_RNDN);
        mpfr_sub(r9544, r9538, r9543, MPFR_RNDN);
        mpfr_add(r9545, r9526, r9529, MPFR_RNDN);
        mpfr_add(r9546, r9525, r9545, MPFR_RNDN);
        mpfr_fma(r9547, r9546, r9524, r9526, MPFR_RNDN);
        mpfr_div(r9548, r9544, r9547, MPFR_RNDN);
        mpfr_div(r9549, r9548, r9529, MPFR_RNDN);
        mpfr_mul(r9550, r9536, r9536, MPFR_RNDN);
        mpfr_neg(r9551, r9524, MPFR_RNDN);
        mpfr_mul(r9552, r9551, r9524, MPFR_RNDN);
        mpfr_mul(r9553, r9530, r9552, MPFR_RNDN);
        mpfr_fma(r9554, r9530, r9550, r9553, MPFR_RNDN);
        mpfr_sub(r9555, r9538, r9554, MPFR_RNDN);
        mpfr_div(r9556, r9555, r9547, MPFR_RNDN);
        mpfr_div(r9557, r9556, r9529, MPFR_RNDN);
        if (mpfr_get_si(r9535, MPFR_RNDN)) { mpfr_set(r9558, r9549, MPFR_RNDN); } else { mpfr_set(r9558, r9557, MPFR_RNDN); };
        return mpfr_get_d(r9558, MPFR_RNDN);
}

static mpfr_t r9559, r9560, r9561, r9562, r9563, r9564, r9565, r9566, r9567, r9568, r9569, r9570, r9571, r9572, r9573, r9574, r9575, r9576, r9577, r9578, r9579, r9580, r9581, r9582, r9583, r9584, r9585, r9586, r9587, r9588, r9589, r9590, r9591, r9592, r9593;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(1360);
        mpfr_init_set_str(r9559, "1.0", 10, MPFR_RNDN);
        mpfr_init(r9560);
        mpfr_init(r9561);
        mpfr_init(r9562);
        mpfr_init(r9563);
        mpfr_init_set_str(r9564, "2.0", 10, MPFR_RNDN);
        mpfr_init(r9565);
        mpfr_init(r9566);
        mpfr_init(r9567);
        mpfr_init(r9568);
        mpfr_init_set_str(r9569, "2.031575370521667e-09", 10, MPFR_RNDN);
        mpfr_init(r9570);
        mpfr_init(r9571);
        mpfr_init(r9572);
        mpfr_init(r9573);
        mpfr_init_set_str(r9574, "4.0", 10, MPFR_RNDN);
        mpfr_init(r9575);
        mpfr_init(r9576);
        mpfr_init(r9577);
        mpfr_init(r9578);
        mpfr_init(r9579);
        mpfr_init(r9580);
        mpfr_init(r9581);
        mpfr_init(r9582);
        mpfr_init(r9583);
        mpfr_init(r9584);
        mpfr_init(r9585);
        mpfr_init(r9586);
        mpfr_init(r9587);
        mpfr_init(r9588);
        mpfr_init(r9589);
        mpfr_init(r9590);
        mpfr_init(r9591);
        mpfr_init(r9592);
        mpfr_init(r9593);
}

double f_dm(double alpha, double beta) {
        ;
        mpfr_set_d(r9560, beta, MPFR_RNDN);
        mpfr_set_d(r9561, alpha, MPFR_RNDN);
        mpfr_sub(r9562, r9560, r9561, MPFR_RNDN);
        mpfr_add(r9563, r9561, r9560, MPFR_RNDN);
        ;
        mpfr_add(r9565, r9563, r9564, MPFR_RNDN);
        mpfr_div(r9566, r9562, r9565, MPFR_RNDN);
        mpfr_add(r9567, r9559, r9566, MPFR_RNDN);
        mpfr_div(r9568, r9567, r9564, MPFR_RNDN);
        ;
        mpfr_set_si(r9570, mpfr_cmp(r9568, r9569) <= 0, MPFR_RNDN);
        mpfr_div(r9571, r9561, r9565, MPFR_RNDN);
        mpfr_add(r9572, r9559, r9571, MPFR_RNDN);
        mpfr_mul(r9573, r9572, r9560, MPFR_RNDN);
        ;
        mpfr_div(r9575, r9574, r9561, MPFR_RNDN);
        mpfr_sub(r9576, r9575, r9564, MPFR_RNDN);
        mpfr_neg(r9577, r9574, MPFR_RNDN);
        mpfr_fma(r9578, r9560, r9576, r9577, MPFR_RNDN);
        mpfr_sub(r9579, r9573, r9578, MPFR_RNDN);
        mpfr_add(r9580, r9561, r9564, MPFR_RNDN);
        mpfr_add(r9581, r9560, r9580, MPFR_RNDN);
        mpfr_fma(r9582, r9581, r9559, r9561, MPFR_RNDN);
        mpfr_div(r9583, r9579, r9582, MPFR_RNDN);
        mpfr_div(r9584, r9583, r9564, MPFR_RNDN);
        mpfr_mul(r9585, r9571, r9571, MPFR_RNDN);
        mpfr_neg(r9586, r9559, MPFR_RNDN);
        mpfr_mul(r9587, r9586, r9559, MPFR_RNDN);
        mpfr_mul(r9588, r9565, r9587, MPFR_RNDN);
        mpfr_fma(r9589, r9565, r9585, r9588, MPFR_RNDN);
        mpfr_sub(r9590, r9573, r9589, MPFR_RNDN);
        mpfr_div(r9591, r9590, r9582, MPFR_RNDN);
        mpfr_div(r9592, r9591, r9564, MPFR_RNDN);
        if (mpfr_get_si(r9570, MPFR_RNDN)) { mpfr_set(r9593, r9584, MPFR_RNDN); } else { mpfr_set(r9593, r9592, MPFR_RNDN); };
        return mpfr_get_d(r9593, MPFR_RNDN);
}

