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

char *name = "Jmat.Real.dawson";

double f_if(float x) {
        float r19223 = 1.0f;
        float r19224 = 0.10499349236488342f;
        float r19225 = x;
        float r19226 = r19225 * r19225;
        float r19227 = r19224 * r19226;
        float r19228 = r19223 + r19227;
        float r19229 = 0.04240605980157852f;
        float r19230 = r19226 * r19226;
        float r19231 = r19229 * r19230;
        float r19232 = r19228 + r19231;
        float r19233 = 0.007264418061822653f;
        float r19234 = r19230 * r19226;
        float r19235 = r19233 * r19234;
        float r19236 = r19232 + r19235;
        float r19237 = 0.0005064033903181553f;
        float r19238 = r19234 * r19226;
        float r19239 = r19237 * r19238;
        float r19240 = r19236 + r19239;
        float r19241 = 0.00017899709928315133f;
        float r19242 = r19238 * r19226;
        float r19243 = r19241 * r19242;
        float r19244 = r19240 + r19243;
        float r19245 = 0.7715470790863037f;
        float r19246 = r19245 * r19226;
        float r19247 = r19223 + r19246;
        float r19248 = 0.29097387194633484f;
        float r19249 = r19248 * r19230;
        float r19250 = r19247 + r19249;
        float r19251 = 0.0694555789232254f;
        float r19252 = r19251 * r19234;
        float r19253 = r19250 + r19252;
        float r19254 = 0.01400054432451725f;
        float r19255 = r19254 * r19238;
        float r19256 = r19253 + r19255;
        float r19257 = 0.0008327945251949131f;
        float r19258 = r19257 * r19242;
        float r19259 = r19256 + r19258;
        float r19260 = 2.0f;
        float r19261 = r19260 * r19241;
        float r19262 = r19242 * r19226;
        float r19263 = r19261 * r19262;
        float r19264 = r19259 + r19263;
        float r19265 = r19244 / r19264;
        float r19266 = r19265 * r19225;
        return r19266;
}

double f_id(double x) {
        double r19267 = 1.0;
        double r19268 = 0.10499349236488342;
        double r19269 = x;
        double r19270 = r19269 * r19269;
        double r19271 = r19268 * r19270;
        double r19272 = r19267 + r19271;
        double r19273 = 0.04240605980157852;
        double r19274 = r19270 * r19270;
        double r19275 = r19273 * r19274;
        double r19276 = r19272 + r19275;
        double r19277 = 0.007264418061822653;
        double r19278 = r19274 * r19270;
        double r19279 = r19277 * r19278;
        double r19280 = r19276 + r19279;
        double r19281 = 0.0005064033903181553;
        double r19282 = r19278 * r19270;
        double r19283 = r19281 * r19282;
        double r19284 = r19280 + r19283;
        double r19285 = 0.00017899709928315133;
        double r19286 = r19282 * r19270;
        double r19287 = r19285 * r19286;
        double r19288 = r19284 + r19287;
        double r19289 = 0.7715470790863037;
        double r19290 = r19289 * r19270;
        double r19291 = r19267 + r19290;
        double r19292 = 0.29097387194633484;
        double r19293 = r19292 * r19274;
        double r19294 = r19291 + r19293;
        double r19295 = 0.0694555789232254;
        double r19296 = r19295 * r19278;
        double r19297 = r19294 + r19296;
        double r19298 = 0.01400054432451725;
        double r19299 = r19298 * r19282;
        double r19300 = r19297 + r19299;
        double r19301 = 0.0008327945251949131;
        double r19302 = r19301 * r19286;
        double r19303 = r19300 + r19302;
        double r19304 = 2.0;
        double r19305 = r19304 * r19285;
        double r19306 = r19286 * r19270;
        double r19307 = r19305 * r19306;
        double r19308 = r19303 + r19307;
        double r19309 = r19288 / r19308;
        double r19310 = r19309 * r19269;
        return r19310;
}


double f_of(float x) {
        float r19311 = x;
        float r19312 = -3272.972900390625f;
        bool r19313 = r19311 <= r19312;
        float r19314 = 0.10499349236488342f;
        float r19315 = r19311 * r19311;
        float r19316 = r19314 / r19315;
        float r19317 = 1.0f;
        float r19318 = 0.04240605980157852f;
        float r19319 = r19318 / r19311;
        float r19320 = r19311 * (r19311 * r19311);
        float r19321 = r19319 / r19320;
        float r19322 = r19317 + r19321;
        float r19323 = r19316 + r19322;
        float r19324 = 0.007264418061822653f;
        float r19325 = r19320 * r19320;
        float r19326 = r19324 / r19325;
        float r19327 = 0.00017899709928315133f;
        float r19328 = 10.0f;
        float r19329 = pow(r19311, r19328);
        float r19330 = r19327 / r19329;
        float r19331 = r19326 + r19330;
        float r19332 = 0.0005064033903181553f;
        float r19333 = r19315 * r19315;
        float r19334 = r19333 * r19333;
        float r19335 = r19332 / r19334;
        float r19336 = r19331 + r19335;
        float r19337 = r19323 + r19336;
        float r19338 = r19317 / r19320;
        float r19339 = 6.0f;
        float r19340 = pow(r19311, r19339);
        float r19341 = 0.00035799419856630266f;
        float r19342 = r19340 / r19341;
        float r19343 = r19338 / r19342;
        float r19344 = r19338 * r19343;
        float r19345 = 0.01400054432451725f;
        float r19346 = r19345 / r19334;
        float r19347 = r19344 + r19346;
        float r19348 = 0.0008327945251949131f;
        float r19349 = 4.0f;
        float r19350 = pow(r19311, r19349);
        float r19351 = r19348 / r19350;
        float r19352 = r19351 / r19325;
        float r19353 = 0.29097387194633484f;
        float r19354 = r19353 / r19311;
        float r19355 = r19354 / r19320;
        float r19356 = r19352 + r19355;
        float r19357 = 0.0694555789232254f;
        float r19358 = r19357 / r19325;
        float r19359 = 0.7715470790863037f;
        float r19360 = r19359 / r19311;
        float r19361 = r19360 / r19311;
        float r19362 = r19361 + r19317;
        float r19363 = r19358 + r19362;
        float r19364 = r19356 + r19363;
        float r19365 = r19347 + r19364;
        float r19366 = r19337 / r19365;
        float r19367 = r19366 / r19311;
        float r19368 = 22525.44921875f;
        bool r19369 = r19311 <= r19368;
        float r19370 = r19320 * r19314;
        float r19371 = r19311 + r19370;
        float r19372 = r19311 * r19318;
        float r19373 = r19311 * r19311;
        float r19374 = r19373 * r19373;
        float r19375 = r19372 * r19374;
        float r19376 = r19371 + r19375;
        float r19377 = r19327 * r19320;
        float r19378 = r19374 * r19374;
        float r19379 = r19377 * r19378;
        float r19380 = r19311 * r19324;
        float r19381 = r19320 * r19332;
        float r19382 = r19380 + r19381;
        float r19383 = r19373 * (r19373 * r19373);
        float r19384 = r19382 * r19383;
        float r19385 = r19379 + r19384;
        float r19386 = r19376 + r19385;
        float r19387 = r19315 * r19315;
        float r19388 = r19387 * r19325;
        float r19389 = 2.0f;
        float r19390 = r19389 * r19327;
        float r19391 = r19390 * r19315;
        float r19392 = log(r19391);
        float r19393 = exp(r19392);
        float r19394 = r19393 + r19348;
        float r19395 = r19388 * r19394;
        float r19396 = r19311 * r19353;
        float r19397 = r19396 * r19320;
        float r19398 = r19317 + r19397;
        float r19399 = r19359 * r19311;
        float r19400 = r19399 * r19311;
        float r19401 = r19398 + r19400;
        float r19402 = r19395 + r19401;
        float r19403 = r19345 * r19315;
        float r19404 = r19357 + r19403;
        float r19405 = r19387 * r19404;
        float r19406 = r19315 * r19405;
        float r19407 = r19402 + r19406;
        float r19408 = r19386 / r19407;
        float r19409 = r19369 ? r19408 : r19367;
        float r19410 = r19313 ? r19367 : r19409;
        return r19410;
}

double f_od(double x) {
        double r19411 = x;
        double r19412 = -3272.972900390625;
        bool r19413 = r19411 <= r19412;
        double r19414 = 0.10499349236488342;
        double r19415 = r19411 * r19411;
        double r19416 = r19414 / r19415;
        double r19417 = 1.0;
        double r19418 = 0.04240605980157852;
        double r19419 = r19418 / r19411;
        double r19420 = r19411 * (r19411 * r19411);
        double r19421 = r19419 / r19420;
        double r19422 = r19417 + r19421;
        double r19423 = r19416 + r19422;
        double r19424 = 0.007264418061822653;
        double r19425 = r19420 * r19420;
        double r19426 = r19424 / r19425;
        double r19427 = 0.00017899709928315133;
        double r19428 = 10.0;
        double r19429 = pow(r19411, r19428);
        double r19430 = r19427 / r19429;
        double r19431 = r19426 + r19430;
        double r19432 = 0.0005064033903181553;
        double r19433 = r19415 * r19415;
        double r19434 = r19433 * r19433;
        double r19435 = r19432 / r19434;
        double r19436 = r19431 + r19435;
        double r19437 = r19423 + r19436;
        double r19438 = r19417 / r19420;
        double r19439 = 6.0;
        double r19440 = pow(r19411, r19439);
        double r19441 = 0.00035799419856630266;
        double r19442 = r19440 / r19441;
        double r19443 = r19438 / r19442;
        double r19444 = r19438 * r19443;
        double r19445 = 0.01400054432451725;
        double r19446 = r19445 / r19434;
        double r19447 = r19444 + r19446;
        double r19448 = 0.0008327945251949131;
        double r19449 = 4.0;
        double r19450 = pow(r19411, r19449);
        double r19451 = r19448 / r19450;
        double r19452 = r19451 / r19425;
        double r19453 = 0.29097387194633484;
        double r19454 = r19453 / r19411;
        double r19455 = r19454 / r19420;
        double r19456 = r19452 + r19455;
        double r19457 = 0.0694555789232254;
        double r19458 = r19457 / r19425;
        double r19459 = 0.7715470790863037;
        double r19460 = r19459 / r19411;
        double r19461 = r19460 / r19411;
        double r19462 = r19461 + r19417;
        double r19463 = r19458 + r19462;
        double r19464 = r19456 + r19463;
        double r19465 = r19447 + r19464;
        double r19466 = r19437 / r19465;
        double r19467 = r19466 / r19411;
        double r19468 = 22525.44921875;
        bool r19469 = r19411 <= r19468;
        double r19470 = r19420 * r19414;
        double r19471 = r19411 + r19470;
        double r19472 = r19411 * r19418;
        double r19473 = r19411 * r19411;
        double r19474 = r19473 * r19473;
        double r19475 = r19472 * r19474;
        double r19476 = r19471 + r19475;
        double r19477 = r19427 * r19420;
        double r19478 = r19474 * r19474;
        double r19479 = r19477 * r19478;
        double r19480 = r19411 * r19424;
        double r19481 = r19420 * r19432;
        double r19482 = r19480 + r19481;
        double r19483 = r19473 * (r19473 * r19473);
        double r19484 = r19482 * r19483;
        double r19485 = r19479 + r19484;
        double r19486 = r19476 + r19485;
        double r19487 = r19415 * r19415;
        double r19488 = r19487 * r19425;
        double r19489 = 2.0;
        double r19490 = r19489 * r19427;
        double r19491 = r19490 * r19415;
        double r19492 = log(r19491);
        double r19493 = exp(r19492);
        double r19494 = r19493 + r19448;
        double r19495 = r19488 * r19494;
        double r19496 = r19411 * r19453;
        double r19497 = r19496 * r19420;
        double r19498 = r19417 + r19497;
        double r19499 = r19459 * r19411;
        double r19500 = r19499 * r19411;
        double r19501 = r19498 + r19500;
        double r19502 = r19495 + r19501;
        double r19503 = r19445 * r19415;
        double r19504 = r19457 + r19503;
        double r19505 = r19487 * r19504;
        double r19506 = r19415 * r19505;
        double r19507 = r19502 + r19506;
        double r19508 = r19486 / r19507;
        double r19509 = r19469 ? r19508 : r19467;
        double r19510 = r19413 ? r19467 : r19509;
        return r19510;
}

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 r19511, r19512, r19513, r19514, r19515, r19516, r19517, r19518, r19519, r19520, r19521, r19522, r19523, r19524, r19525, r19526, r19527, r19528, r19529, r19530, r19531, r19532, r19533, r19534, r19535, r19536, r19537, r19538, r19539, r19540, r19541, r19542, r19543, r19544, r19545, r19546, r19547, r19548, r19549, r19550, r19551, r19552, r19553, r19554;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(144);
        mpfr_init_set_str(r19511, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r19512, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r19513);
        mpfr_init(r19514);
        mpfr_init(r19515);
        mpfr_init(r19516);
        mpfr_init_set_str(r19517, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r19518);
        mpfr_init(r19519);
        mpfr_init(r19520);
        mpfr_init_set_str(r19521, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r19522);
        mpfr_init(r19523);
        mpfr_init(r19524);
        mpfr_init_set_str(r19525, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init(r19526);
        mpfr_init(r19527);
        mpfr_init(r19528);
        mpfr_init_set_str(r19529, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init(r19530);
        mpfr_init(r19531);
        mpfr_init(r19532);
        mpfr_init_set_str(r19533, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r19534);
        mpfr_init(r19535);
        mpfr_init_set_str(r19536, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init(r19537);
        mpfr_init(r19538);
        mpfr_init_set_str(r19539, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r19540);
        mpfr_init(r19541);
        mpfr_init_set_str(r19542, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r19543);
        mpfr_init(r19544);
        mpfr_init_set_str(r19545, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r19546);
        mpfr_init(r19547);
        mpfr_init_set_str(r19548, "2", 10, MPFR_RNDN);
        mpfr_init(r19549);
        mpfr_init(r19550);
        mpfr_init(r19551);
        mpfr_init(r19552);
        mpfr_init(r19553);
        mpfr_init(r19554);
}

double f_im(double x) {
        ;
        ;
        mpfr_set_d(r19513, x, MPFR_RNDN);
        mpfr_mul(r19514, r19513, r19513, MPFR_RNDN);
        mpfr_mul(r19515, r19512, r19514, MPFR_RNDN);
        mpfr_add(r19516, r19511, r19515, MPFR_RNDN);
        ;
        mpfr_mul(r19518, r19514, r19514, MPFR_RNDN);
        mpfr_mul(r19519, r19517, r19518, MPFR_RNDN);
        mpfr_add(r19520, r19516, r19519, MPFR_RNDN);
        ;
        mpfr_mul(r19522, r19518, r19514, MPFR_RNDN);
        mpfr_mul(r19523, r19521, r19522, MPFR_RNDN);
        mpfr_add(r19524, r19520, r19523, MPFR_RNDN);
        ;
        mpfr_mul(r19526, r19522, r19514, MPFR_RNDN);
        mpfr_mul(r19527, r19525, r19526, MPFR_RNDN);
        mpfr_add(r19528, r19524, r19527, MPFR_RNDN);
        ;
        mpfr_mul(r19530, r19526, r19514, MPFR_RNDN);
        mpfr_mul(r19531, r19529, r19530, MPFR_RNDN);
        mpfr_add(r19532, r19528, r19531, MPFR_RNDN);
        ;
        mpfr_mul(r19534, r19533, r19514, MPFR_RNDN);
        mpfr_add(r19535, r19511, r19534, MPFR_RNDN);
        ;
        mpfr_mul(r19537, r19536, r19518, MPFR_RNDN);
        mpfr_add(r19538, r19535, r19537, MPFR_RNDN);
        ;
        mpfr_mul(r19540, r19539, r19522, MPFR_RNDN);
        mpfr_add(r19541, r19538, r19540, MPFR_RNDN);
        ;
        mpfr_mul(r19543, r19542, r19526, MPFR_RNDN);
        mpfr_add(r19544, r19541, r19543, MPFR_RNDN);
        ;
        mpfr_mul(r19546, r19545, r19530, MPFR_RNDN);
        mpfr_add(r19547, r19544, r19546, MPFR_RNDN);
        ;
        mpfr_mul(r19549, r19548, r19529, MPFR_RNDN);
        mpfr_mul(r19550, r19530, r19514, MPFR_RNDN);
        mpfr_mul(r19551, r19549, r19550, MPFR_RNDN);
        mpfr_add(r19552, r19547, r19551, MPFR_RNDN);
        mpfr_div(r19553, r19532, r19552, MPFR_RNDN);
        mpfr_mul(r19554, r19553, r19513, MPFR_RNDN);
        return mpfr_get_d(r19554, MPFR_RNDN);
}

static mpfr_t r19555, r19556, r19557, r19558, r19559, r19560, r19561, r19562, r19563, r19564, r19565, r19566, r19567, r19568, r19569, r19570, r19571, r19572, r19573, r19574, r19575, r19576, r19577, r19578, r19579, r19580, r19581, r19582, r19583, r19584, r19585, r19586, r19587, r19588, r19589, r19590, r19591, r19592, r19593, r19594, r19595, r19596, r19597, r19598, r19599, r19600, r19601, r19602, r19603, r19604, r19605, r19606, r19607, r19608, r19609, r19610, r19611, r19612, r19613, r19614, r19615, r19616, r19617, r19618, r19619, r19620, r19621, r19622, r19623, r19624, r19625, r19626, r19627, r19628, r19629, r19630, r19631, r19632, r19633, r19634, r19635, r19636, r19637, r19638, r19639, r19640, r19641, r19642, r19643, r19644, r19645, r19646, r19647, r19648, r19649, r19650, r19651, r19652, r19653, r19654;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(144);
        mpfr_init(r19555);
        mpfr_init_set_str(r19556, "-3272.973f0", 10, MPFR_RNDN);
        mpfr_init(r19557);
        mpfr_init_set_str(r19558, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r19559);
        mpfr_init(r19560);
        mpfr_init_set_str(r19561, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r19562, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r19563);
        mpfr_init(r19564);
        mpfr_init(r19565);
        mpfr_init(r19566);
        mpfr_init(r19567);
        mpfr_init_set_str(r19568, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r19569);
        mpfr_init(r19570);
        mpfr_init_set_str(r19571, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init_set_str(r19572, "10", 10, MPFR_RNDN);
        mpfr_init(r19573);
        mpfr_init(r19574);
        mpfr_init(r19575);
        mpfr_init_set_str(r19576, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init(r19577);
        mpfr_init(r19578);
        mpfr_init(r19579);
        mpfr_init(r19580);
        mpfr_init(r19581);
        mpfr_init(r19582);
        mpfr_init_set_str(r19583, "6", 10, MPFR_RNDN);
        mpfr_init(r19584);
        mpfr_init_set_str(r19585, "0.0003579942", 10, MPFR_RNDN);
        mpfr_init(r19586);
        mpfr_init(r19587);
        mpfr_init(r19588);
        mpfr_init_set_str(r19589, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r19590);
        mpfr_init(r19591);
        mpfr_init_set_str(r19592, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init_set_str(r19593, "4", 10, MPFR_RNDN);
        mpfr_init(r19594);
        mpfr_init(r19595);
        mpfr_init(r19596);
        mpfr_init_set_str(r19597, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init(r19598);
        mpfr_init(r19599);
        mpfr_init(r19600);
        mpfr_init_set_str(r19601, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r19602);
        mpfr_init_set_str(r19603, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r19604);
        mpfr_init(r19605);
        mpfr_init(r19606);
        mpfr_init(r19607);
        mpfr_init(r19608);
        mpfr_init(r19609);
        mpfr_init(r19610);
        mpfr_init(r19611);
        mpfr_init_set_str(r19612, "22525.45f0", 10, MPFR_RNDN);
        mpfr_init(r19613);
        mpfr_init(r19614);
        mpfr_init(r19615);
        mpfr_init(r19616);
        mpfr_init(r19617);
        mpfr_init(r19618);
        mpfr_init(r19619);
        mpfr_init(r19620);
        mpfr_init(r19621);
        mpfr_init(r19622);
        mpfr_init(r19623);
        mpfr_init(r19624);
        mpfr_init(r19625);
        mpfr_init(r19626);
        mpfr_init(r19627);
        mpfr_init(r19628);
        mpfr_init(r19629);
        mpfr_init(r19630);
        mpfr_init(r19631);
        mpfr_init(r19632);
        mpfr_init_set_str(r19633, "2", 10, MPFR_RNDN);
        mpfr_init(r19634);
        mpfr_init(r19635);
        mpfr_init(r19636);
        mpfr_init(r19637);
        mpfr_init(r19638);
        mpfr_init(r19639);
        mpfr_init(r19640);
        mpfr_init(r19641);
        mpfr_init(r19642);
        mpfr_init(r19643);
        mpfr_init(r19644);
        mpfr_init(r19645);
        mpfr_init(r19646);
        mpfr_init(r19647);
        mpfr_init(r19648);
        mpfr_init(r19649);
        mpfr_init(r19650);
        mpfr_init(r19651);
        mpfr_init(r19652);
        mpfr_init(r19653);
        mpfr_init(r19654);
}

double f_fm(double x) {
        mpfr_set_d(r19555, x, MPFR_RNDN);
        ;
        mpfr_set_si(r19557, mpfr_cmp(r19555, r19556) <= 0, MPFR_RNDN);
        ;
        mpfr_mul(r19559, r19555, r19555, MPFR_RNDN);
        mpfr_div(r19560, r19558, r19559, MPFR_RNDN);
        ;
        ;
        mpfr_div(r19563, r19562, r19555, MPFR_RNDN);
        mpfr_mul(r19564, r19555, r19555, MPFR_RNDN); mpfr_mul(r19564, r19564, r19555, MPFR_RNDN);
        mpfr_div(r19565, r19563, r19564, MPFR_RNDN);
        mpfr_add(r19566, r19561, r19565, MPFR_RNDN);
        mpfr_add(r19567, r19560, r19566, MPFR_RNDN);
        ;
        mpfr_mul(r19569, r19564, r19564, MPFR_RNDN);
        mpfr_div(r19570, r19568, r19569, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r19573, r19555, r19572, MPFR_RNDN);
        mpfr_div(r19574, r19571, r19573, MPFR_RNDN);
        mpfr_add(r19575, r19570, r19574, MPFR_RNDN);
        ;
        mpfr_sqr(r19577, r19559, MPFR_RNDN);
        mpfr_mul(r19578, r19577, r19577, MPFR_RNDN);
        mpfr_div(r19579, r19576, r19578, MPFR_RNDN);
        mpfr_add(r19580, r19575, r19579, MPFR_RNDN);
        mpfr_add(r19581, r19567, r19580, MPFR_RNDN);
        mpfr_div(r19582, r19561, r19564, MPFR_RNDN);
        ;
        mpfr_pow(r19584, r19555, r19583, MPFR_RNDN);
        ;
        mpfr_div(r19586, r19584, r19585, MPFR_RNDN);
        mpfr_div(r19587, r19582, r19586, MPFR_RNDN);
        mpfr_mul(r19588, r19582, r19587, MPFR_RNDN);
        ;
        mpfr_div(r19590, r19589, r19578, MPFR_RNDN);
        mpfr_add(r19591, r19588, r19590, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r19594, r19555, r19593, MPFR_RNDN);
        mpfr_div(r19595, r19592, r19594, MPFR_RNDN);
        mpfr_div(r19596, r19595, r19569, MPFR_RNDN);
        ;
        mpfr_div(r19598, r19597, r19555, MPFR_RNDN);
        mpfr_div(r19599, r19598, r19564, MPFR_RNDN);
        mpfr_add(r19600, r19596, r19599, MPFR_RNDN);
        ;
        mpfr_div(r19602, r19601, r19569, MPFR_RNDN);
        ;
        mpfr_div(r19604, r19603, r19555, MPFR_RNDN);
        mpfr_div(r19605, r19604, r19555, MPFR_RNDN);
        mpfr_add(r19606, r19605, r19561, MPFR_RNDN);
        mpfr_add(r19607, r19602, r19606, MPFR_RNDN);
        mpfr_add(r19608, r19600, r19607, MPFR_RNDN);
        mpfr_add(r19609, r19591, r19608, MPFR_RNDN);
        mpfr_div(r19610, r19581, r19609, MPFR_RNDN);
        mpfr_div(r19611, r19610, r19555, MPFR_RNDN);
        ;
        mpfr_set_si(r19613, mpfr_cmp(r19555, r19612) <= 0, MPFR_RNDN);
        mpfr_mul(r19614, r19564, r19558, MPFR_RNDN);
        mpfr_add(r19615, r19555, r19614, MPFR_RNDN);
        mpfr_mul(r19616, r19555, r19562, MPFR_RNDN);
        mpfr_sqr(r19617, r19555, MPFR_RNDN);
        mpfr_mul(r19618, r19617, r19617, MPFR_RNDN);
        mpfr_mul(r19619, r19616, r19618, MPFR_RNDN);
        mpfr_add(r19620, r19615, r19619, MPFR_RNDN);
        mpfr_mul(r19621, r19571, r19564, MPFR_RNDN);
        mpfr_sqr(r19622, r19618, MPFR_RNDN);
        mpfr_mul(r19623, r19621, r19622, MPFR_RNDN);
        mpfr_mul(r19624, r19555, r19568, MPFR_RNDN);
        mpfr_mul(r19625, r19564, r19576, MPFR_RNDN);
        mpfr_add(r19626, r19624, r19625, MPFR_RNDN);
        mpfr_mul(r19627, r19617, r19617, MPFR_RNDN); mpfr_mul(r19627, r19627, r19617, MPFR_RNDN);
        mpfr_mul(r19628, r19626, r19627, MPFR_RNDN);
        mpfr_add(r19629, r19623, r19628, MPFR_RNDN);
        mpfr_add(r19630, r19620, r19629, MPFR_RNDN);
        mpfr_mul(r19631, r19559, r19559, MPFR_RNDN);
        mpfr_mul(r19632, r19631, r19569, MPFR_RNDN);
        ;
        mpfr_mul(r19634, r19633, r19571, MPFR_RNDN);
        mpfr_mul(r19635, r19634, r19559, MPFR_RNDN);
        mpfr_log(r19636, r19635, MPFR_RNDN);
        mpfr_exp(r19637, r19636, MPFR_RNDN);
        mpfr_add(r19638, r19637, r19592, MPFR_RNDN);
        mpfr_mul(r19639, r19632, r19638, MPFR_RNDN);
        mpfr_mul(r19640, r19555, r19597, MPFR_RNDN);
        mpfr_mul(r19641, r19640, r19564, MPFR_RNDN);
        mpfr_add(r19642, r19561, r19641, MPFR_RNDN);
        mpfr_mul(r19643, r19603, r19555, MPFR_RNDN);
        mpfr_mul(r19644, r19643, r19555, MPFR_RNDN);
        mpfr_add(r19645, r19642, r19644, MPFR_RNDN);
        mpfr_add(r19646, r19639, r19645, MPFR_RNDN);
        mpfr_mul(r19647, r19589, r19559, MPFR_RNDN);
        mpfr_add(r19648, r19601, r19647, MPFR_RNDN);
        mpfr_mul(r19649, r19631, r19648, MPFR_RNDN);
        mpfr_mul(r19650, r19559, r19649, MPFR_RNDN);
        mpfr_add(r19651, r19646, r19650, MPFR_RNDN);
        mpfr_div(r19652, r19630, r19651, MPFR_RNDN);
        if (mpfr_get_si(r19613, MPFR_RNDN)) { mpfr_set(r19653, r19652, MPFR_RNDN); } else { mpfr_set(r19653, r19611, MPFR_RNDN); };
        if (mpfr_get_si(r19557, MPFR_RNDN)) { mpfr_set(r19654, r19611, MPFR_RNDN); } else { mpfr_set(r19654, r19653, MPFR_RNDN); };
        return mpfr_get_d(r19654, MPFR_RNDN);
}

static mpfr_t r19655, r19656, r19657, r19658, r19659, r19660, r19661, r19662, r19663, r19664, r19665, r19666, r19667, r19668, r19669, r19670, r19671, r19672, r19673, r19674, r19675, r19676, r19677, r19678, r19679, r19680, r19681, r19682, r19683, r19684, r19685, r19686, r19687, r19688, r19689, r19690, r19691, r19692, r19693, r19694, r19695, r19696, r19697, r19698, r19699, r19700, r19701, r19702, r19703, r19704, r19705, r19706, r19707, r19708, r19709, r19710, r19711, r19712, r19713, r19714, r19715, r19716, r19717, r19718, r19719, r19720, r19721, r19722, r19723, r19724, r19725, r19726, r19727, r19728, r19729, r19730, r19731, r19732, r19733, r19734, r19735, r19736, r19737, r19738, r19739, r19740, r19741, r19742, r19743, r19744, r19745, r19746, r19747, r19748, r19749, r19750, r19751, r19752, r19753, r19754;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(144);
        mpfr_init(r19655);
        mpfr_init_set_str(r19656, "-3272.973f0", 10, MPFR_RNDN);
        mpfr_init(r19657);
        mpfr_init_set_str(r19658, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r19659);
        mpfr_init(r19660);
        mpfr_init_set_str(r19661, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r19662, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r19663);
        mpfr_init(r19664);
        mpfr_init(r19665);
        mpfr_init(r19666);
        mpfr_init(r19667);
        mpfr_init_set_str(r19668, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r19669);
        mpfr_init(r19670);
        mpfr_init_set_str(r19671, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init_set_str(r19672, "10", 10, MPFR_RNDN);
        mpfr_init(r19673);
        mpfr_init(r19674);
        mpfr_init(r19675);
        mpfr_init_set_str(r19676, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init(r19677);
        mpfr_init(r19678);
        mpfr_init(r19679);
        mpfr_init(r19680);
        mpfr_init(r19681);
        mpfr_init(r19682);
        mpfr_init_set_str(r19683, "6", 10, MPFR_RNDN);
        mpfr_init(r19684);
        mpfr_init_set_str(r19685, "0.0003579942", 10, MPFR_RNDN);
        mpfr_init(r19686);
        mpfr_init(r19687);
        mpfr_init(r19688);
        mpfr_init_set_str(r19689, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r19690);
        mpfr_init(r19691);
        mpfr_init_set_str(r19692, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init_set_str(r19693, "4", 10, MPFR_RNDN);
        mpfr_init(r19694);
        mpfr_init(r19695);
        mpfr_init(r19696);
        mpfr_init_set_str(r19697, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init(r19698);
        mpfr_init(r19699);
        mpfr_init(r19700);
        mpfr_init_set_str(r19701, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r19702);
        mpfr_init_set_str(r19703, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r19704);
        mpfr_init(r19705);
        mpfr_init(r19706);
        mpfr_init(r19707);
        mpfr_init(r19708);
        mpfr_init(r19709);
        mpfr_init(r19710);
        mpfr_init(r19711);
        mpfr_init_set_str(r19712, "22525.45f0", 10, MPFR_RNDN);
        mpfr_init(r19713);
        mpfr_init(r19714);
        mpfr_init(r19715);
        mpfr_init(r19716);
        mpfr_init(r19717);
        mpfr_init(r19718);
        mpfr_init(r19719);
        mpfr_init(r19720);
        mpfr_init(r19721);
        mpfr_init(r19722);
        mpfr_init(r19723);
        mpfr_init(r19724);
        mpfr_init(r19725);
        mpfr_init(r19726);
        mpfr_init(r19727);
        mpfr_init(r19728);
        mpfr_init(r19729);
        mpfr_init(r19730);
        mpfr_init(r19731);
        mpfr_init(r19732);
        mpfr_init_set_str(r19733, "2", 10, MPFR_RNDN);
        mpfr_init(r19734);
        mpfr_init(r19735);
        mpfr_init(r19736);
        mpfr_init(r19737);
        mpfr_init(r19738);
        mpfr_init(r19739);
        mpfr_init(r19740);
        mpfr_init(r19741);
        mpfr_init(r19742);
        mpfr_init(r19743);
        mpfr_init(r19744);
        mpfr_init(r19745);
        mpfr_init(r19746);
        mpfr_init(r19747);
        mpfr_init(r19748);
        mpfr_init(r19749);
        mpfr_init(r19750);
        mpfr_init(r19751);
        mpfr_init(r19752);
        mpfr_init(r19753);
        mpfr_init(r19754);
}

double f_dm(double x) {
        mpfr_set_d(r19655, x, MPFR_RNDN);
        ;
        mpfr_set_si(r19657, mpfr_cmp(r19655, r19656) <= 0, MPFR_RNDN);
        ;
        mpfr_mul(r19659, r19655, r19655, MPFR_RNDN);
        mpfr_div(r19660, r19658, r19659, MPFR_RNDN);
        ;
        ;
        mpfr_div(r19663, r19662, r19655, MPFR_RNDN);
        mpfr_mul(r19664, r19655, r19655, MPFR_RNDN); mpfr_mul(r19664, r19664, r19655, MPFR_RNDN);
        mpfr_div(r19665, r19663, r19664, MPFR_RNDN);
        mpfr_add(r19666, r19661, r19665, MPFR_RNDN);
        mpfr_add(r19667, r19660, r19666, MPFR_RNDN);
        ;
        mpfr_mul(r19669, r19664, r19664, MPFR_RNDN);
        mpfr_div(r19670, r19668, r19669, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r19673, r19655, r19672, MPFR_RNDN);
        mpfr_div(r19674, r19671, r19673, MPFR_RNDN);
        mpfr_add(r19675, r19670, r19674, MPFR_RNDN);
        ;
        mpfr_sqr(r19677, r19659, MPFR_RNDN);
        mpfr_mul(r19678, r19677, r19677, MPFR_RNDN);
        mpfr_div(r19679, r19676, r19678, MPFR_RNDN);
        mpfr_add(r19680, r19675, r19679, MPFR_RNDN);
        mpfr_add(r19681, r19667, r19680, MPFR_RNDN);
        mpfr_div(r19682, r19661, r19664, MPFR_RNDN);
        ;
        mpfr_pow(r19684, r19655, r19683, MPFR_RNDN);
        ;
        mpfr_div(r19686, r19684, r19685, MPFR_RNDN);
        mpfr_div(r19687, r19682, r19686, MPFR_RNDN);
        mpfr_mul(r19688, r19682, r19687, MPFR_RNDN);
        ;
        mpfr_div(r19690, r19689, r19678, MPFR_RNDN);
        mpfr_add(r19691, r19688, r19690, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r19694, r19655, r19693, MPFR_RNDN);
        mpfr_div(r19695, r19692, r19694, MPFR_RNDN);
        mpfr_div(r19696, r19695, r19669, MPFR_RNDN);
        ;
        mpfr_div(r19698, r19697, r19655, MPFR_RNDN);
        mpfr_div(r19699, r19698, r19664, MPFR_RNDN);
        mpfr_add(r19700, r19696, r19699, MPFR_RNDN);
        ;
        mpfr_div(r19702, r19701, r19669, MPFR_RNDN);
        ;
        mpfr_div(r19704, r19703, r19655, MPFR_RNDN);
        mpfr_div(r19705, r19704, r19655, MPFR_RNDN);
        mpfr_add(r19706, r19705, r19661, MPFR_RNDN);
        mpfr_add(r19707, r19702, r19706, MPFR_RNDN);
        mpfr_add(r19708, r19700, r19707, MPFR_RNDN);
        mpfr_add(r19709, r19691, r19708, MPFR_RNDN);
        mpfr_div(r19710, r19681, r19709, MPFR_RNDN);
        mpfr_div(r19711, r19710, r19655, MPFR_RNDN);
        ;
        mpfr_set_si(r19713, mpfr_cmp(r19655, r19712) <= 0, MPFR_RNDN);
        mpfr_mul(r19714, r19664, r19658, MPFR_RNDN);
        mpfr_add(r19715, r19655, r19714, MPFR_RNDN);
        mpfr_mul(r19716, r19655, r19662, MPFR_RNDN);
        mpfr_sqr(r19717, r19655, MPFR_RNDN);
        mpfr_mul(r19718, r19717, r19717, MPFR_RNDN);
        mpfr_mul(r19719, r19716, r19718, MPFR_RNDN);
        mpfr_add(r19720, r19715, r19719, MPFR_RNDN);
        mpfr_mul(r19721, r19671, r19664, MPFR_RNDN);
        mpfr_sqr(r19722, r19718, MPFR_RNDN);
        mpfr_mul(r19723, r19721, r19722, MPFR_RNDN);
        mpfr_mul(r19724, r19655, r19668, MPFR_RNDN);
        mpfr_mul(r19725, r19664, r19676, MPFR_RNDN);
        mpfr_add(r19726, r19724, r19725, MPFR_RNDN);
        mpfr_mul(r19727, r19717, r19717, MPFR_RNDN); mpfr_mul(r19727, r19727, r19717, MPFR_RNDN);
        mpfr_mul(r19728, r19726, r19727, MPFR_RNDN);
        mpfr_add(r19729, r19723, r19728, MPFR_RNDN);
        mpfr_add(r19730, r19720, r19729, MPFR_RNDN);
        mpfr_mul(r19731, r19659, r19659, MPFR_RNDN);
        mpfr_mul(r19732, r19731, r19669, MPFR_RNDN);
        ;
        mpfr_mul(r19734, r19733, r19671, MPFR_RNDN);
        mpfr_mul(r19735, r19734, r19659, MPFR_RNDN);
        mpfr_log(r19736, r19735, MPFR_RNDN);
        mpfr_exp(r19737, r19736, MPFR_RNDN);
        mpfr_add(r19738, r19737, r19692, MPFR_RNDN);
        mpfr_mul(r19739, r19732, r19738, MPFR_RNDN);
        mpfr_mul(r19740, r19655, r19697, MPFR_RNDN);
        mpfr_mul(r19741, r19740, r19664, MPFR_RNDN);
        mpfr_add(r19742, r19661, r19741, MPFR_RNDN);
        mpfr_mul(r19743, r19703, r19655, MPFR_RNDN);
        mpfr_mul(r19744, r19743, r19655, MPFR_RNDN);
        mpfr_add(r19745, r19742, r19744, MPFR_RNDN);
        mpfr_add(r19746, r19739, r19745, MPFR_RNDN);
        mpfr_mul(r19747, r19689, r19659, MPFR_RNDN);
        mpfr_add(r19748, r19701, r19747, MPFR_RNDN);
        mpfr_mul(r19749, r19731, r19748, MPFR_RNDN);
        mpfr_mul(r19750, r19659, r19749, MPFR_RNDN);
        mpfr_add(r19751, r19746, r19750, MPFR_RNDN);
        mpfr_div(r19752, r19730, r19751, MPFR_RNDN);
        if (mpfr_get_si(r19713, MPFR_RNDN)) { mpfr_set(r19753, r19752, MPFR_RNDN); } else { mpfr_set(r19753, r19711, MPFR_RNDN); };
        if (mpfr_get_si(r19657, MPFR_RNDN)) { mpfr_set(r19754, r19711, MPFR_RNDN); } else { mpfr_set(r19754, r19753, MPFR_RNDN); };
        return mpfr_get_d(r19754, MPFR_RNDN);
}

