#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 r56507211 = alpha;
        float r56507212 = beta;
        float r56507213 = r56507211 + r56507212;
        float r56507214 = r56507212 * r56507211;
        float r56507215 = r56507213 + r56507214;
        float r56507216 = 1.0;
        float r56507217 = r56507215 + r56507216;
        float r56507218 = 2;
        float r56507219 = 1;
        float r56507220 = r56507218 * r56507219;
        float r56507221 = r56507213 + r56507220;
        float r56507222 = r56507217 / r56507221;
        float r56507223 = r56507222 / r56507221;
        float r56507224 = r56507221 + r56507216;
        float r56507225 = r56507223 / r56507224;
        return r56507225;
}

double f_id(double alpha, double beta) {
        double r56507226 = alpha;
        double r56507227 = beta;
        double r56507228 = r56507226 + r56507227;
        double r56507229 = r56507227 * r56507226;
        double r56507230 = r56507228 + r56507229;
        double r56507231 = 1.0;
        double r56507232 = r56507230 + r56507231;
        double r56507233 = 2;
        double r56507234 = 1;
        double r56507235 = r56507233 * r56507234;
        double r56507236 = r56507228 + r56507235;
        double r56507237 = r56507232 / r56507236;
        double r56507238 = r56507237 / r56507236;
        double r56507239 = r56507236 + r56507231;
        double r56507240 = r56507238 / r56507239;
        return r56507240;
}


double f_of(float alpha, float beta) {
        float r56507241 = alpha;
        float r56507242 = beta;
        float r56507243 = r56507241 * r56507242;
        float r56507244 = r56507242 + r56507241;
        float r56507245 = r56507243 + r56507244;
        float r56507246 = 1.0;
        float r56507247 = r56507245 + r56507246;
        float r56507248 = 2;
        float r56507249 = r56507248 + r56507244;
        float r56507250 = r56507247 / r56507249;
        float r56507251 = r56507250 / r56507249;
        float r56507252 = r56507246 + r56507249;
        float r56507253 = r56507251 / r56507252;
        float r56507254 = 0.08333333235036391;
        bool r56507255 = r56507253 <= r56507254;
        float r56507256 = 0.25;
        float r56507257 = r56507256 * r56507244;
        float r56507258 = 0.5;
        float r56507259 = r56507257 + r56507258;
        float r56507260 = r56507246 + r56507248;
        float r56507261 = r56507244 + r56507260;
        float r56507262 = r56507261 * r56507249;
        float r56507263 = r56507259 / r56507262;
        float r56507264 = r56507255 ? r56507253 : r56507263;
        return r56507264;
}

double f_od(double alpha, double beta) {
        double r56507265 = alpha;
        double r56507266 = beta;
        double r56507267 = r56507265 * r56507266;
        double r56507268 = r56507266 + r56507265;
        double r56507269 = r56507267 + r56507268;
        double r56507270 = 1.0;
        double r56507271 = r56507269 + r56507270;
        double r56507272 = 2;
        double r56507273 = r56507272 + r56507268;
        double r56507274 = r56507271 / r56507273;
        double r56507275 = r56507274 / r56507273;
        double r56507276 = r56507270 + r56507273;
        double r56507277 = r56507275 / r56507276;
        double r56507278 = 0.08333333235036391;
        bool r56507279 = r56507277 <= r56507278;
        double r56507280 = 0.25;
        double r56507281 = r56507280 * r56507268;
        double r56507282 = 0.5;
        double r56507283 = r56507281 + r56507282;
        double r56507284 = r56507270 + r56507272;
        double r56507285 = r56507268 + r56507284;
        double r56507286 = r56507285 * r56507273;
        double r56507287 = r56507283 / r56507286;
        double r56507288 = r56507279 ? r56507277 : r56507287;
        return r56507288;
}

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 r56507289, r56507290, r56507291, r56507292, r56507293, r56507294, r56507295, r56507296, r56507297, r56507298, r56507299, r56507300, r56507301, r56507302, r56507303;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(400);
        mpfr_init(r56507289);
        mpfr_init(r56507290);
        mpfr_init(r56507291);
        mpfr_init(r56507292);
        mpfr_init(r56507293);
        mpfr_init_set_str(r56507294, "1.0", 10, MPFR_RNDN);
        mpfr_init(r56507295);
        mpfr_init_set_str(r56507296, "2", 10, MPFR_RNDN);
        mpfr_init_set_str(r56507297, "1", 10, MPFR_RNDN);
        mpfr_init(r56507298);
        mpfr_init(r56507299);
        mpfr_init(r56507300);
        mpfr_init(r56507301);
        mpfr_init(r56507302);
        mpfr_init(r56507303);
}

double f_im(double alpha, double beta) {
        mpfr_set_d(r56507289, alpha, MPFR_RNDN);
        mpfr_set_d(r56507290, beta, MPFR_RNDN);
        mpfr_add(r56507291, r56507289, r56507290, MPFR_RNDN);
        mpfr_mul(r56507292, r56507290, r56507289, MPFR_RNDN);
        mpfr_add(r56507293, r56507291, r56507292, MPFR_RNDN);
        ;
        mpfr_add(r56507295, r56507293, r56507294, MPFR_RNDN);
        ;
        ;
        mpfr_mul(r56507298, r56507296, r56507297, MPFR_RNDN);
        mpfr_add(r56507299, r56507291, r56507298, MPFR_RNDN);
        mpfr_div(r56507300, r56507295, r56507299, MPFR_RNDN);
        mpfr_div(r56507301, r56507300, r56507299, MPFR_RNDN);
        mpfr_add(r56507302, r56507299, r56507294, MPFR_RNDN);
        mpfr_div(r56507303, r56507301, r56507302, MPFR_RNDN);
        return mpfr_get_d(r56507303, MPFR_RNDN);
}

static mpfr_t r56507304, r56507305, r56507306, r56507307, r56507308, r56507309, r56507310, r56507311, r56507312, r56507313, r56507314, r56507315, r56507316, r56507317, r56507318, r56507319, r56507320, r56507321, r56507322, r56507323, r56507324, r56507325, r56507326, r56507327;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(400);
        mpfr_init(r56507304);
        mpfr_init(r56507305);
        mpfr_init(r56507306);
        mpfr_init(r56507307);
        mpfr_init(r56507308);
        mpfr_init_set_str(r56507309, "1.0", 10, MPFR_RNDN);
        mpfr_init(r56507310);
        mpfr_init_set_str(r56507311, "2", 10, MPFR_RNDN);
        mpfr_init(r56507312);
        mpfr_init(r56507313);
        mpfr_init(r56507314);
        mpfr_init(r56507315);
        mpfr_init(r56507316);
        mpfr_init_set_str(r56507317, "0.08333333235036391", 10, MPFR_RNDN);
        mpfr_init(r56507318);
        mpfr_init_set_str(r56507319, "0.25", 10, MPFR_RNDN);
        mpfr_init(r56507320);
        mpfr_init_set_str(r56507321, "0.5", 10, MPFR_RNDN);
        mpfr_init(r56507322);
        mpfr_init(r56507323);
        mpfr_init(r56507324);
        mpfr_init(r56507325);
        mpfr_init(r56507326);
        mpfr_init(r56507327);
}

double f_fm(double alpha, double beta) {
        mpfr_set_d(r56507304, alpha, MPFR_RNDN);
        mpfr_set_d(r56507305, beta, MPFR_RNDN);
        mpfr_mul(r56507306, r56507304, r56507305, MPFR_RNDN);
        mpfr_add(r56507307, r56507305, r56507304, MPFR_RNDN);
        mpfr_add(r56507308, r56507306, r56507307, MPFR_RNDN);
        ;
        mpfr_add(r56507310, r56507308, r56507309, MPFR_RNDN);
        ;
        mpfr_add(r56507312, r56507311, r56507307, MPFR_RNDN);
        mpfr_div(r56507313, r56507310, r56507312, MPFR_RNDN);
        mpfr_div(r56507314, r56507313, r56507312, MPFR_RNDN);
        mpfr_add(r56507315, r56507309, r56507312, MPFR_RNDN);
        mpfr_div(r56507316, r56507314, r56507315, MPFR_RNDN);
        ;
        mpfr_set_si(r56507318, mpfr_cmp(r56507316, r56507317) <= 0, MPFR_RNDN);
        ;
        mpfr_mul(r56507320, r56507319, r56507307, MPFR_RNDN);
        ;
        mpfr_add(r56507322, r56507320, r56507321, MPFR_RNDN);
        mpfr_add(r56507323, r56507309, r56507311, MPFR_RNDN);
        mpfr_add(r56507324, r56507307, r56507323, MPFR_RNDN);
        mpfr_mul(r56507325, r56507324, r56507312, MPFR_RNDN);
        mpfr_div(r56507326, r56507322, r56507325, MPFR_RNDN);
        if (mpfr_get_si(r56507318, MPFR_RNDN)) { mpfr_set(r56507327, r56507316, MPFR_RNDN); } else { mpfr_set(r56507327, r56507326, MPFR_RNDN); };
        return mpfr_get_d(r56507327, MPFR_RNDN);
}

static mpfr_t r56507328, r56507329, r56507330, r56507331, r56507332, r56507333, r56507334, r56507335, r56507336, r56507337, r56507338, r56507339, r56507340, r56507341, r56507342, r56507343, r56507344, r56507345, r56507346, r56507347, r56507348, r56507349, r56507350, r56507351;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(400);
        mpfr_init(r56507328);
        mpfr_init(r56507329);
        mpfr_init(r56507330);
        mpfr_init(r56507331);
        mpfr_init(r56507332);
        mpfr_init_set_str(r56507333, "1.0", 10, MPFR_RNDN);
        mpfr_init(r56507334);
        mpfr_init_set_str(r56507335, "2", 10, MPFR_RNDN);
        mpfr_init(r56507336);
        mpfr_init(r56507337);
        mpfr_init(r56507338);
        mpfr_init(r56507339);
        mpfr_init(r56507340);
        mpfr_init_set_str(r56507341, "0.08333333235036391", 10, MPFR_RNDN);
        mpfr_init(r56507342);
        mpfr_init_set_str(r56507343, "0.25", 10, MPFR_RNDN);
        mpfr_init(r56507344);
        mpfr_init_set_str(r56507345, "0.5", 10, MPFR_RNDN);
        mpfr_init(r56507346);
        mpfr_init(r56507347);
        mpfr_init(r56507348);
        mpfr_init(r56507349);
        mpfr_init(r56507350);
        mpfr_init(r56507351);
}

double f_dm(double alpha, double beta) {
        mpfr_set_d(r56507328, alpha, MPFR_RNDN);
        mpfr_set_d(r56507329, beta, MPFR_RNDN);
        mpfr_mul(r56507330, r56507328, r56507329, MPFR_RNDN);
        mpfr_add(r56507331, r56507329, r56507328, MPFR_RNDN);
        mpfr_add(r56507332, r56507330, r56507331, MPFR_RNDN);
        ;
        mpfr_add(r56507334, r56507332, r56507333, MPFR_RNDN);
        ;
        mpfr_add(r56507336, r56507335, r56507331, MPFR_RNDN);
        mpfr_div(r56507337, r56507334, r56507336, MPFR_RNDN);
        mpfr_div(r56507338, r56507337, r56507336, MPFR_RNDN);
        mpfr_add(r56507339, r56507333, r56507336, MPFR_RNDN);
        mpfr_div(r56507340, r56507338, r56507339, MPFR_RNDN);
        ;
        mpfr_set_si(r56507342, mpfr_cmp(r56507340, r56507341) <= 0, MPFR_RNDN);
        ;
        mpfr_mul(r56507344, r56507343, r56507331, MPFR_RNDN);
        ;
        mpfr_add(r56507346, r56507344, r56507345, MPFR_RNDN);
        mpfr_add(r56507347, r56507333, r56507335, MPFR_RNDN);
        mpfr_add(r56507348, r56507331, r56507347, MPFR_RNDN);
        mpfr_mul(r56507349, r56507348, r56507336, MPFR_RNDN);
        mpfr_div(r56507350, r56507346, r56507349, MPFR_RNDN);
        if (mpfr_get_si(r56507342, MPFR_RNDN)) { mpfr_set(r56507351, r56507340, MPFR_RNDN); } else { mpfr_set(r56507351, r56507350, MPFR_RNDN); };
        return mpfr_get_d(r56507351, MPFR_RNDN);
}

