#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 r19355 = 1.0f;
        float r19356 = 0.1049934947f;
        float r19357 = x;
        float r19358 = r19357 * r19357;
        float r19359 = r19356 * r19358;
        float r19360 = r19355 + r19359;
        float r19361 = 0.0424060604f;
        float r19362 = r19358 * r19358;
        float r19363 = r19361 * r19362;
        float r19364 = r19360 + r19363;
        float r19365 = 0.0072644182f;
        float r19366 = r19362 * r19358;
        float r19367 = r19365 * r19366;
        float r19368 = r19364 + r19367;
        float r19369 = 0.0005064034f;
        float r19370 = r19366 * r19358;
        float r19371 = r19369 * r19370;
        float r19372 = r19368 + r19371;
        float r19373 = 0.0001789971f;
        float r19374 = r19370 * r19358;
        float r19375 = r19373 * r19374;
        float r19376 = r19372 + r19375;
        float r19377 = 0.7715471019f;
        float r19378 = r19377 * r19358;
        float r19379 = r19355 + r19378;
        float r19380 = 0.2909738639f;
        float r19381 = r19380 * r19362;
        float r19382 = r19379 + r19381;
        float r19383 = 0.0694555761f;
        float r19384 = r19383 * r19366;
        float r19385 = r19382 + r19384;
        float r19386 = 0.0140005442f;
        float r19387 = r19386 * r19370;
        float r19388 = r19385 + r19387;
        float r19389 = 0.0008327945f;
        float r19390 = r19389 * r19374;
        float r19391 = r19388 + r19390;
        float r19392 = 2.0f;
        float r19393 = r19392 * r19373;
        float r19394 = r19374 * r19358;
        float r19395 = r19393 * r19394;
        float r19396 = r19391 + r19395;
        float r19397 = r19376 / r19396;
        float r19398 = r19397 * r19357;
        return r19398;
}

double f_id(double x) {
        double r19399 = 1.0;
        double r19400 = 0.1049934947;
        double r19401 = x;
        double r19402 = r19401 * r19401;
        double r19403 = r19400 * r19402;
        double r19404 = r19399 + r19403;
        double r19405 = 0.0424060604;
        double r19406 = r19402 * r19402;
        double r19407 = r19405 * r19406;
        double r19408 = r19404 + r19407;
        double r19409 = 0.0072644182;
        double r19410 = r19406 * r19402;
        double r19411 = r19409 * r19410;
        double r19412 = r19408 + r19411;
        double r19413 = 0.0005064034;
        double r19414 = r19410 * r19402;
        double r19415 = r19413 * r19414;
        double r19416 = r19412 + r19415;
        double r19417 = 0.0001789971;
        double r19418 = r19414 * r19402;
        double r19419 = r19417 * r19418;
        double r19420 = r19416 + r19419;
        double r19421 = 0.7715471019;
        double r19422 = r19421 * r19402;
        double r19423 = r19399 + r19422;
        double r19424 = 0.2909738639;
        double r19425 = r19424 * r19406;
        double r19426 = r19423 + r19425;
        double r19427 = 0.0694555761;
        double r19428 = r19427 * r19410;
        double r19429 = r19426 + r19428;
        double r19430 = 0.0140005442;
        double r19431 = r19430 * r19414;
        double r19432 = r19429 + r19431;
        double r19433 = 0.0008327945;
        double r19434 = r19433 * r19418;
        double r19435 = r19432 + r19434;
        double r19436 = 2.0;
        double r19437 = r19436 * r19417;
        double r19438 = r19418 * r19402;
        double r19439 = r19437 * r19438;
        double r19440 = r19435 + r19439;
        double r19441 = r19420 / r19440;
        double r19442 = r19441 * r19401;
        return r19442;
}


double f_of(float x) {
        float r19443 = x;
        float r19444 = -4.0904756849807273e+24f;
        bool r19445 = r19443 <= r19444;
        float r19446 = 1.0f;
        float r19447 = 0.1049934947f;
        float r19448 = r19443 * r19443;
        float r19449 = r19447 / r19448;
        float r19450 = r19446 + r19449;
        float r19451 = 0.0072644182f;
        float r19452 = r19451 * r19446;
        float r19453 = r19443 * (r19443 * r19443);
        float r19454 = r19453 * r19453;
        float r19455 = r19452 / r19454;
        float r19456 = r19450 + r19455;
        float r19457 = 0.0424060604f;
        float r19458 = r19457 * r19446;
        float r19459 = r19458 / r19453;
        float r19460 = r19459 / r19443;
        float r19461 = 0.0001789971f;
        float r19462 = 10.0f;
        float r19463 = pow(r19443, r19462);
        float r19464 = r19461 / r19463;
        float r19465 = r19460 + r19464;
        float r19466 = 0.0005064034f;
        float r19467 = r19446 * r19466;
        float r19468 = r19467 / r19454;
        float r19469 = r19468 / r19448;
        float r19470 = r19465 + r19469;
        float r19471 = r19456 + r19470;
        float r19472 = 0.0694555761f;
        float r19473 = r19446 * r19472;
        float r19474 = r19473 / r19454;
        float r19475 = r19446 + r19474;
        float r19476 = 0.2909738639f;
        float r19477 = r19446 / r19443;
        float r19478 = r19477 / r19453;
        float r19479 = r19476 * r19478;
        float r19480 = r19475 + r19479;
        float r19481 = 0.7715471019f;
        float r19482 = r19481 / r19448;
        float r19483 = r19446 / r19453;
        float r19484 = r19483 * r19483;
        float r19485 = 6.0f;
        float r19486 = pow(r19443, r19485);
        float r19487 = 0.0003579942f;
        float r19488 = r19486 / r19487;
        float r19489 = r19484 / r19488;
        float r19490 = r19482 + r19489;
        float r19491 = r19480 + r19490;
        float r19492 = 0.0140005442f;
        float r19493 = r19492 * r19446;
        float r19494 = r19493 / r19454;
        float r19495 = r19494 / r19448;
        float r19496 = 0.0008327945f;
        float r19497 = r19496 * r19446;
        float r19498 = r19497 / r19454;
        float r19499 = 4.0f;
        float r19500 = pow(r19443, r19499);
        float r19501 = r19498 / r19500;
        float r19502 = r19495 + r19501;
        float r19503 = r19491 + r19502;
        float r19504 = r19503 * r19443;
        float r19505 = r19471 / r19504;
        float r19506 = 2.6044556869853095e+29f;
        bool r19507 = r19443 <= r19506;
        float r19508 = r19453 * r19447;
        float r19509 = r19443 + r19508;
        float r19510 = r19443 * r19457;
        float r19511 = r19443 * r19443;
        float r19512 = r19511 * r19511;
        float r19513 = r19510 * r19512;
        float r19514 = r19509 + r19513;
        float r19515 = r19461 * r19453;
        float r19516 = r19512 * r19512;
        float r19517 = r19515 * r19516;
        float r19518 = r19443 * r19451;
        float r19519 = r19453 * r19466;
        float r19520 = r19518 + r19519;
        float r19521 = r19511 * (r19511 * r19511);
        float r19522 = r19520 * r19521;
        float r19523 = r19517 + r19522;
        float r19524 = r19514 + r19523;
        float r19525 = r19448 * r19448;
        float r19526 = r19453 * r19453;
        float r19527 = r19525 * r19526;
        float r19528 = 2.0f;
        float r19529 = r19528 * r19461;
        float r19530 = r19529 * r19448;
        float r19531 = r19530 + r19496;
        float r19532 = r19527 * r19531;
        float r19533 = r19443 * r19476;
        float r19534 = r19533 * r19453;
        float r19535 = r19446 + r19534;
        float r19536 = r19481 * r19443;
        float r19537 = r19536 * r19443;
        float r19538 = r19535 + r19537;
        float r19539 = r19532 + r19538;
        float r19540 = r19492 * r19448;
        float r19541 = r19472 + r19540;
        float r19542 = r19525 * r19541;
        float r19543 = r19448 * r19542;
        float r19544 = r19539 + r19543;
        float r19545 = r19524 / r19544;
        float r19546 = r19507 ? r19545 : r19505;
        float r19547 = r19445 ? r19505 : r19546;
        return r19547;
}

double f_od(double x) {
        double r19548 = x;
        double r19549 = -4.0904756849807273e+24;
        bool r19550 = r19548 <= r19549;
        double r19551 = 1.0;
        double r19552 = 0.1049934947;
        double r19553 = r19548 * r19548;
        double r19554 = r19552 / r19553;
        double r19555 = r19551 + r19554;
        double r19556 = 0.0072644182;
        double r19557 = r19556 * r19551;
        double r19558 = r19548 * (r19548 * r19548);
        double r19559 = r19558 * r19558;
        double r19560 = r19557 / r19559;
        double r19561 = r19555 + r19560;
        double r19562 = 0.0424060604;
        double r19563 = r19562 * r19551;
        double r19564 = r19563 / r19558;
        double r19565 = r19564 / r19548;
        double r19566 = 0.0001789971;
        double r19567 = 10.0;
        double r19568 = pow(r19548, r19567);
        double r19569 = r19566 / r19568;
        double r19570 = r19565 + r19569;
        double r19571 = 0.0005064034;
        double r19572 = r19551 * r19571;
        double r19573 = r19572 / r19559;
        double r19574 = r19573 / r19553;
        double r19575 = r19570 + r19574;
        double r19576 = r19561 + r19575;
        double r19577 = 0.0694555761;
        double r19578 = r19551 * r19577;
        double r19579 = r19578 / r19559;
        double r19580 = r19551 + r19579;
        double r19581 = 0.2909738639;
        double r19582 = r19551 / r19548;
        double r19583 = r19582 / r19558;
        double r19584 = r19581 * r19583;
        double r19585 = r19580 + r19584;
        double r19586 = 0.7715471019;
        double r19587 = r19586 / r19553;
        double r19588 = r19551 / r19558;
        double r19589 = r19588 * r19588;
        double r19590 = 6.0;
        double r19591 = pow(r19548, r19590);
        double r19592 = 0.0003579942;
        double r19593 = r19591 / r19592;
        double r19594 = r19589 / r19593;
        double r19595 = r19587 + r19594;
        double r19596 = r19585 + r19595;
        double r19597 = 0.0140005442;
        double r19598 = r19597 * r19551;
        double r19599 = r19598 / r19559;
        double r19600 = r19599 / r19553;
        double r19601 = 0.0008327945;
        double r19602 = r19601 * r19551;
        double r19603 = r19602 / r19559;
        double r19604 = 4.0;
        double r19605 = pow(r19548, r19604);
        double r19606 = r19603 / r19605;
        double r19607 = r19600 + r19606;
        double r19608 = r19596 + r19607;
        double r19609 = r19608 * r19548;
        double r19610 = r19576 / r19609;
        double r19611 = 2.6044556869853095e+29;
        bool r19612 = r19548 <= r19611;
        double r19613 = r19558 * r19552;
        double r19614 = r19548 + r19613;
        double r19615 = r19548 * r19562;
        double r19616 = r19548 * r19548;
        double r19617 = r19616 * r19616;
        double r19618 = r19615 * r19617;
        double r19619 = r19614 + r19618;
        double r19620 = r19566 * r19558;
        double r19621 = r19617 * r19617;
        double r19622 = r19620 * r19621;
        double r19623 = r19548 * r19556;
        double r19624 = r19558 * r19571;
        double r19625 = r19623 + r19624;
        double r19626 = r19616 * (r19616 * r19616);
        double r19627 = r19625 * r19626;
        double r19628 = r19622 + r19627;
        double r19629 = r19619 + r19628;
        double r19630 = r19553 * r19553;
        double r19631 = r19558 * r19558;
        double r19632 = r19630 * r19631;
        double r19633 = 2.0;
        double r19634 = r19633 * r19566;
        double r19635 = r19634 * r19553;
        double r19636 = r19635 + r19601;
        double r19637 = r19632 * r19636;
        double r19638 = r19548 * r19581;
        double r19639 = r19638 * r19558;
        double r19640 = r19551 + r19639;
        double r19641 = r19586 * r19548;
        double r19642 = r19641 * r19548;
        double r19643 = r19640 + r19642;
        double r19644 = r19637 + r19643;
        double r19645 = r19597 * r19553;
        double r19646 = r19577 + r19645;
        double r19647 = r19630 * r19646;
        double r19648 = r19553 * r19647;
        double r19649 = r19644 + r19648;
        double r19650 = r19629 / r19649;
        double r19651 = r19612 ? r19650 : r19610;
        double r19652 = r19550 ? r19610 : r19651;
        return r19652;
}

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 r19653, r19654, 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;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(144);
        mpfr_init_set_str(r19653, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r19654, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r19655);
        mpfr_init(r19656);
        mpfr_init(r19657);
        mpfr_init(r19658);
        mpfr_init_set_str(r19659, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r19660);
        mpfr_init(r19661);
        mpfr_init(r19662);
        mpfr_init_set_str(r19663, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r19664);
        mpfr_init(r19665);
        mpfr_init(r19666);
        mpfr_init_set_str(r19667, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init(r19668);
        mpfr_init(r19669);
        mpfr_init(r19670);
        mpfr_init_set_str(r19671, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init(r19672);
        mpfr_init(r19673);
        mpfr_init(r19674);
        mpfr_init_set_str(r19675, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r19676);
        mpfr_init(r19677);
        mpfr_init_set_str(r19678, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init(r19679);
        mpfr_init(r19680);
        mpfr_init_set_str(r19681, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r19682);
        mpfr_init(r19683);
        mpfr_init_set_str(r19684, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r19685);
        mpfr_init(r19686);
        mpfr_init_set_str(r19687, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r19688);
        mpfr_init(r19689);
        mpfr_init_set_str(r19690, "2", 10, MPFR_RNDN);
        mpfr_init(r19691);
        mpfr_init(r19692);
        mpfr_init(r19693);
        mpfr_init(r19694);
        mpfr_init(r19695);
        mpfr_init(r19696);
}

double f_im(double x) {
        ;
        ;
        mpfr_set_d(r19655, x, MPFR_RNDN);
        mpfr_mul(r19656, r19655, r19655, MPFR_RNDN);
        mpfr_mul(r19657, r19654, r19656, MPFR_RNDN);
        mpfr_add(r19658, r19653, r19657, MPFR_RNDN);
        ;
        mpfr_mul(r19660, r19656, r19656, MPFR_RNDN);
        mpfr_mul(r19661, r19659, r19660, MPFR_RNDN);
        mpfr_add(r19662, r19658, r19661, MPFR_RNDN);
        ;
        mpfr_mul(r19664, r19660, r19656, MPFR_RNDN);
        mpfr_mul(r19665, r19663, r19664, MPFR_RNDN);
        mpfr_add(r19666, r19662, r19665, MPFR_RNDN);
        ;
        mpfr_mul(r19668, r19664, r19656, MPFR_RNDN);
        mpfr_mul(r19669, r19667, r19668, MPFR_RNDN);
        mpfr_add(r19670, r19666, r19669, MPFR_RNDN);
        ;
        mpfr_mul(r19672, r19668, r19656, MPFR_RNDN);
        mpfr_mul(r19673, r19671, r19672, MPFR_RNDN);
        mpfr_add(r19674, r19670, r19673, MPFR_RNDN);
        ;
        mpfr_mul(r19676, r19675, r19656, MPFR_RNDN);
        mpfr_add(r19677, r19653, r19676, MPFR_RNDN);
        ;
        mpfr_mul(r19679, r19678, r19660, MPFR_RNDN);
        mpfr_add(r19680, r19677, r19679, MPFR_RNDN);
        ;
        mpfr_mul(r19682, r19681, r19664, MPFR_RNDN);
        mpfr_add(r19683, r19680, r19682, MPFR_RNDN);
        ;
        mpfr_mul(r19685, r19684, r19668, MPFR_RNDN);
        mpfr_add(r19686, r19683, r19685, MPFR_RNDN);
        ;
        mpfr_mul(r19688, r19687, r19672, MPFR_RNDN);
        mpfr_add(r19689, r19686, r19688, MPFR_RNDN);
        ;
        mpfr_mul(r19691, r19690, r19671, MPFR_RNDN);
        mpfr_mul(r19692, r19672, r19656, MPFR_RNDN);
        mpfr_mul(r19693, r19691, r19692, MPFR_RNDN);
        mpfr_add(r19694, r19689, r19693, MPFR_RNDN);
        mpfr_div(r19695, r19674, r19694, MPFR_RNDN);
        mpfr_mul(r19696, r19695, r19655, MPFR_RNDN);
        return mpfr_get_d(r19696, MPFR_RNDN);
}

static mpfr_t 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, r19755, r19756, r19757, r19758, r19759, r19760, r19761, r19762, r19763, r19764, r19765, r19766, r19767, r19768, r19769, r19770, r19771, r19772, r19773, r19774, r19775, r19776, r19777, r19778, r19779, r19780, r19781, r19782, r19783, r19784, r19785, r19786, r19787, r19788, r19789, r19790, r19791, r19792, r19793, r19794, r19795, r19796, r19797, r19798, r19799, r19800, r19801;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(144);
        mpfr_init(r19697);
        mpfr_init_set_str(r19698, "-4.0904756849807273e+24", 10, MPFR_RNDN);
        mpfr_init(r19699);
        mpfr_init_set_str(r19700, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r19701, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r19702);
        mpfr_init(r19703);
        mpfr_init(r19704);
        mpfr_init_set_str(r19705, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r19706);
        mpfr_init(r19707);
        mpfr_init(r19708);
        mpfr_init(r19709);
        mpfr_init(r19710);
        mpfr_init_set_str(r19711, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r19712);
        mpfr_init(r19713);
        mpfr_init(r19714);
        mpfr_init_set_str(r19715, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init_set_str(r19716, "10", 10, MPFR_RNDN);
        mpfr_init(r19717);
        mpfr_init(r19718);
        mpfr_init(r19719);
        mpfr_init_set_str(r19720, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init(r19721);
        mpfr_init(r19722);
        mpfr_init(r19723);
        mpfr_init(r19724);
        mpfr_init(r19725);
        mpfr_init_set_str(r19726, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r19727);
        mpfr_init(r19728);
        mpfr_init(r19729);
        mpfr_init_set_str(r19730, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init(r19731);
        mpfr_init(r19732);
        mpfr_init(r19733);
        mpfr_init(r19734);
        mpfr_init_set_str(r19735, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r19736);
        mpfr_init(r19737);
        mpfr_init(r19738);
        mpfr_init_set_str(r19739, "6", 10, MPFR_RNDN);
        mpfr_init(r19740);
        mpfr_init_set_str(r19741, "0.0003579942", 10, MPFR_RNDN);
        mpfr_init(r19742);
        mpfr_init(r19743);
        mpfr_init(r19744);
        mpfr_init(r19745);
        mpfr_init_set_str(r19746, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r19747);
        mpfr_init(r19748);
        mpfr_init(r19749);
        mpfr_init_set_str(r19750, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r19751);
        mpfr_init(r19752);
        mpfr_init_set_str(r19753, "4", 10, MPFR_RNDN);
        mpfr_init(r19754);
        mpfr_init(r19755);
        mpfr_init(r19756);
        mpfr_init(r19757);
        mpfr_init(r19758);
        mpfr_init(r19759);
        mpfr_init_set_str(r19760, "2.6044556869853095e+29", 10, MPFR_RNDN);
        mpfr_init(r19761);
        mpfr_init(r19762);
        mpfr_init(r19763);
        mpfr_init(r19764);
        mpfr_init(r19765);
        mpfr_init(r19766);
        mpfr_init(r19767);
        mpfr_init(r19768);
        mpfr_init(r19769);
        mpfr_init(r19770);
        mpfr_init(r19771);
        mpfr_init(r19772);
        mpfr_init(r19773);
        mpfr_init(r19774);
        mpfr_init(r19775);
        mpfr_init(r19776);
        mpfr_init(r19777);
        mpfr_init(r19778);
        mpfr_init(r19779);
        mpfr_init(r19780);
        mpfr_init(r19781);
        mpfr_init_set_str(r19782, "2", 10, MPFR_RNDN);
        mpfr_init(r19783);
        mpfr_init(r19784);
        mpfr_init(r19785);
        mpfr_init(r19786);
        mpfr_init(r19787);
        mpfr_init(r19788);
        mpfr_init(r19789);
        mpfr_init(r19790);
        mpfr_init(r19791);
        mpfr_init(r19792);
        mpfr_init(r19793);
        mpfr_init(r19794);
        mpfr_init(r19795);
        mpfr_init(r19796);
        mpfr_init(r19797);
        mpfr_init(r19798);
        mpfr_init(r19799);
        mpfr_init(r19800);
        mpfr_init(r19801);
}

double f_fm(double x) {
        mpfr_set_d(r19697, x, MPFR_RNDN);
        ;
        mpfr_set_si(r19699, mpfr_cmp(r19697, r19698) <= 0, MPFR_RNDN);
        ;
        ;
        mpfr_mul(r19702, r19697, r19697, MPFR_RNDN);
        mpfr_div(r19703, r19701, r19702, MPFR_RNDN);
        mpfr_add(r19704, r19700, r19703, MPFR_RNDN);
        ;
        mpfr_mul(r19706, r19705, r19700, MPFR_RNDN);
        mpfr_mul(r19707, r19697, r19697, MPFR_RNDN); mpfr_mul(r19707, r19707, r19697, MPFR_RNDN);
        mpfr_sqr(r19708, r19707, MPFR_RNDN);
        mpfr_div(r19709, r19706, r19708, MPFR_RNDN);
        mpfr_add(r19710, r19704, r19709, MPFR_RNDN);
        ;
        mpfr_mul(r19712, r19711, r19700, MPFR_RNDN);
        mpfr_div(r19713, r19712, r19707, MPFR_RNDN);
        mpfr_div(r19714, r19713, r19697, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r19717, r19697, r19716, MPFR_RNDN);
        mpfr_div(r19718, r19715, r19717, MPFR_RNDN);
        mpfr_add(r19719, r19714, r19718, MPFR_RNDN);
        ;
        mpfr_mul(r19721, r19700, r19720, MPFR_RNDN);
        mpfr_div(r19722, r19721, r19708, MPFR_RNDN);
        mpfr_div(r19723, r19722, r19702, MPFR_RNDN);
        mpfr_add(r19724, r19719, r19723, MPFR_RNDN);
        mpfr_add(r19725, r19710, r19724, MPFR_RNDN);
        ;
        mpfr_mul(r19727, r19700, r19726, MPFR_RNDN);
        mpfr_div(r19728, r19727, r19708, MPFR_RNDN);
        mpfr_add(r19729, r19700, r19728, MPFR_RNDN);
        ;
        mpfr_div(r19731, r19700, r19697, MPFR_RNDN);
        mpfr_div(r19732, r19731, r19707, MPFR_RNDN);
        mpfr_mul(r19733, r19730, r19732, MPFR_RNDN);
        mpfr_add(r19734, r19729, r19733, MPFR_RNDN);
        ;
        mpfr_div(r19736, r19735, r19702, MPFR_RNDN);
        mpfr_div(r19737, r19700, r19707, MPFR_RNDN);
        mpfr_mul(r19738, r19737, r19737, MPFR_RNDN);
        ;
        mpfr_pow(r19740, r19697, r19739, MPFR_RNDN);
        ;
        mpfr_div(r19742, r19740, r19741, MPFR_RNDN);
        mpfr_div(r19743, r19738, r19742, MPFR_RNDN);
        mpfr_add(r19744, r19736, r19743, MPFR_RNDN);
        mpfr_add(r19745, r19734, r19744, MPFR_RNDN);
        ;
        mpfr_mul(r19747, r19746, r19700, MPFR_RNDN);
        mpfr_div(r19748, r19747, r19708, MPFR_RNDN);
        mpfr_div(r19749, r19748, r19702, MPFR_RNDN);
        ;
        mpfr_mul(r19751, r19750, r19700, MPFR_RNDN);
        mpfr_div(r19752, r19751, r19708, MPFR_RNDN);
        ;
        mpfr_pow(r19754, r19697, r19753, MPFR_RNDN);
        mpfr_div(r19755, r19752, r19754, MPFR_RNDN);
        mpfr_add(r19756, r19749, r19755, MPFR_RNDN);
        mpfr_add(r19757, r19745, r19756, MPFR_RNDN);
        mpfr_mul(r19758, r19757, r19697, MPFR_RNDN);
        mpfr_div(r19759, r19725, r19758, MPFR_RNDN);
        ;
        mpfr_set_si(r19761, mpfr_cmp(r19697, r19760) <= 0, MPFR_RNDN);
        mpfr_mul(r19762, r19707, r19701, MPFR_RNDN);
        mpfr_add(r19763, r19697, r19762, MPFR_RNDN);
        mpfr_mul(r19764, r19697, r19711, MPFR_RNDN);
        mpfr_sqr(r19765, r19697, MPFR_RNDN);
        mpfr_mul(r19766, r19765, r19765, MPFR_RNDN);
        mpfr_mul(r19767, r19764, r19766, MPFR_RNDN);
        mpfr_add(r19768, r19763, r19767, MPFR_RNDN);
        mpfr_mul(r19769, r19715, r19707, MPFR_RNDN);
        mpfr_sqr(r19770, r19766, MPFR_RNDN);
        mpfr_mul(r19771, r19769, r19770, MPFR_RNDN);
        mpfr_mul(r19772, r19697, r19705, MPFR_RNDN);
        mpfr_mul(r19773, r19707, r19720, MPFR_RNDN);
        mpfr_add(r19774, r19772, r19773, MPFR_RNDN);
        mpfr_mul(r19775, r19765, r19765, MPFR_RNDN); mpfr_mul(r19775, r19775, r19765, MPFR_RNDN);
        mpfr_mul(r19776, r19774, r19775, MPFR_RNDN);
        mpfr_add(r19777, r19771, r19776, MPFR_RNDN);
        mpfr_add(r19778, r19768, r19777, MPFR_RNDN);
        mpfr_mul(r19779, r19702, r19702, MPFR_RNDN);
        mpfr_mul(r19780, r19707, r19707, MPFR_RNDN);
        mpfr_mul(r19781, r19779, r19780, MPFR_RNDN);
        ;
        mpfr_mul(r19783, r19782, r19715, MPFR_RNDN);
        mpfr_mul(r19784, r19783, r19702, MPFR_RNDN);
        mpfr_add(r19785, r19784, r19750, MPFR_RNDN);
        mpfr_mul(r19786, r19781, r19785, MPFR_RNDN);
        mpfr_mul(r19787, r19697, r19730, MPFR_RNDN);
        mpfr_mul(r19788, r19787, r19707, MPFR_RNDN);
        mpfr_add(r19789, r19700, r19788, MPFR_RNDN);
        mpfr_mul(r19790, r19735, r19697, MPFR_RNDN);
        mpfr_mul(r19791, r19790, r19697, MPFR_RNDN);
        mpfr_add(r19792, r19789, r19791, MPFR_RNDN);
        mpfr_add(r19793, r19786, r19792, MPFR_RNDN);
        mpfr_mul(r19794, r19746, r19702, MPFR_RNDN);
        mpfr_add(r19795, r19726, r19794, MPFR_RNDN);
        mpfr_mul(r19796, r19779, r19795, MPFR_RNDN);
        mpfr_mul(r19797, r19702, r19796, MPFR_RNDN);
        mpfr_add(r19798, r19793, r19797, MPFR_RNDN);
        mpfr_div(r19799, r19778, r19798, MPFR_RNDN);
        if (mpfr_get_si(r19761, MPFR_RNDN)) { mpfr_set(r19800, r19799, MPFR_RNDN); } else { mpfr_set(r19800, r19759, MPFR_RNDN); };
        if (mpfr_get_si(r19699, MPFR_RNDN)) { mpfr_set(r19801, r19759, MPFR_RNDN); } else { mpfr_set(r19801, r19800, MPFR_RNDN); };
        return mpfr_get_d(r19801, MPFR_RNDN);
}

static mpfr_t r19802, r19803, r19804, r19805, r19806, r19807, r19808, r19809, r19810, r19811, r19812, r19813, r19814, r19815, r19816, r19817, r19818, r19819, r19820, r19821, r19822, r19823, r19824, r19825, r19826, r19827, r19828, r19829, r19830, r19831, r19832, r19833, r19834, r19835, r19836, r19837, r19838, r19839, r19840, r19841, r19842, r19843, r19844, r19845, r19846, r19847, r19848, r19849, r19850, r19851, r19852, r19853, r19854, r19855, r19856, r19857, r19858, r19859, r19860, r19861, r19862, r19863, r19864, r19865, r19866, r19867, r19868, r19869, r19870, r19871, r19872, r19873, r19874, r19875, r19876, r19877, r19878, r19879, r19880, r19881, r19882, r19883, r19884, r19885, r19886, r19887, r19888, r19889, r19890, r19891, r19892, r19893, r19894, r19895, r19896, r19897, r19898, r19899, r19900, r19901, r19902, r19903, r19904, r19905, r19906;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(144);
        mpfr_init(r19802);
        mpfr_init_set_str(r19803, "-4.0904756849807273e+24", 10, MPFR_RNDN);
        mpfr_init(r19804);
        mpfr_init_set_str(r19805, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r19806, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r19807);
        mpfr_init(r19808);
        mpfr_init(r19809);
        mpfr_init_set_str(r19810, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r19811);
        mpfr_init(r19812);
        mpfr_init(r19813);
        mpfr_init(r19814);
        mpfr_init(r19815);
        mpfr_init_set_str(r19816, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r19817);
        mpfr_init(r19818);
        mpfr_init(r19819);
        mpfr_init_set_str(r19820, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init_set_str(r19821, "10", 10, MPFR_RNDN);
        mpfr_init(r19822);
        mpfr_init(r19823);
        mpfr_init(r19824);
        mpfr_init_set_str(r19825, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init(r19826);
        mpfr_init(r19827);
        mpfr_init(r19828);
        mpfr_init(r19829);
        mpfr_init(r19830);
        mpfr_init_set_str(r19831, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r19832);
        mpfr_init(r19833);
        mpfr_init(r19834);
        mpfr_init_set_str(r19835, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init(r19836);
        mpfr_init(r19837);
        mpfr_init(r19838);
        mpfr_init(r19839);
        mpfr_init_set_str(r19840, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r19841);
        mpfr_init(r19842);
        mpfr_init(r19843);
        mpfr_init_set_str(r19844, "6", 10, MPFR_RNDN);
        mpfr_init(r19845);
        mpfr_init_set_str(r19846, "0.0003579942", 10, MPFR_RNDN);
        mpfr_init(r19847);
        mpfr_init(r19848);
        mpfr_init(r19849);
        mpfr_init(r19850);
        mpfr_init_set_str(r19851, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r19852);
        mpfr_init(r19853);
        mpfr_init(r19854);
        mpfr_init_set_str(r19855, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r19856);
        mpfr_init(r19857);
        mpfr_init_set_str(r19858, "4", 10, MPFR_RNDN);
        mpfr_init(r19859);
        mpfr_init(r19860);
        mpfr_init(r19861);
        mpfr_init(r19862);
        mpfr_init(r19863);
        mpfr_init(r19864);
        mpfr_init_set_str(r19865, "2.6044556869853095e+29", 10, MPFR_RNDN);
        mpfr_init(r19866);
        mpfr_init(r19867);
        mpfr_init(r19868);
        mpfr_init(r19869);
        mpfr_init(r19870);
        mpfr_init(r19871);
        mpfr_init(r19872);
        mpfr_init(r19873);
        mpfr_init(r19874);
        mpfr_init(r19875);
        mpfr_init(r19876);
        mpfr_init(r19877);
        mpfr_init(r19878);
        mpfr_init(r19879);
        mpfr_init(r19880);
        mpfr_init(r19881);
        mpfr_init(r19882);
        mpfr_init(r19883);
        mpfr_init(r19884);
        mpfr_init(r19885);
        mpfr_init(r19886);
        mpfr_init_set_str(r19887, "2", 10, MPFR_RNDN);
        mpfr_init(r19888);
        mpfr_init(r19889);
        mpfr_init(r19890);
        mpfr_init(r19891);
        mpfr_init(r19892);
        mpfr_init(r19893);
        mpfr_init(r19894);
        mpfr_init(r19895);
        mpfr_init(r19896);
        mpfr_init(r19897);
        mpfr_init(r19898);
        mpfr_init(r19899);
        mpfr_init(r19900);
        mpfr_init(r19901);
        mpfr_init(r19902);
        mpfr_init(r19903);
        mpfr_init(r19904);
        mpfr_init(r19905);
        mpfr_init(r19906);
}

double f_dm(double x) {
        mpfr_set_d(r19802, x, MPFR_RNDN);
        ;
        mpfr_set_si(r19804, mpfr_cmp(r19802, r19803) <= 0, MPFR_RNDN);
        ;
        ;
        mpfr_mul(r19807, r19802, r19802, MPFR_RNDN);
        mpfr_div(r19808, r19806, r19807, MPFR_RNDN);
        mpfr_add(r19809, r19805, r19808, MPFR_RNDN);
        ;
        mpfr_mul(r19811, r19810, r19805, MPFR_RNDN);
        mpfr_mul(r19812, r19802, r19802, MPFR_RNDN); mpfr_mul(r19812, r19812, r19802, MPFR_RNDN);
        mpfr_sqr(r19813, r19812, MPFR_RNDN);
        mpfr_div(r19814, r19811, r19813, MPFR_RNDN);
        mpfr_add(r19815, r19809, r19814, MPFR_RNDN);
        ;
        mpfr_mul(r19817, r19816, r19805, MPFR_RNDN);
        mpfr_div(r19818, r19817, r19812, MPFR_RNDN);
        mpfr_div(r19819, r19818, r19802, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r19822, r19802, r19821, MPFR_RNDN);
        mpfr_div(r19823, r19820, r19822, MPFR_RNDN);
        mpfr_add(r19824, r19819, r19823, MPFR_RNDN);
        ;
        mpfr_mul(r19826, r19805, r19825, MPFR_RNDN);
        mpfr_div(r19827, r19826, r19813, MPFR_RNDN);
        mpfr_div(r19828, r19827, r19807, MPFR_RNDN);
        mpfr_add(r19829, r19824, r19828, MPFR_RNDN);
        mpfr_add(r19830, r19815, r19829, MPFR_RNDN);
        ;
        mpfr_mul(r19832, r19805, r19831, MPFR_RNDN);
        mpfr_div(r19833, r19832, r19813, MPFR_RNDN);
        mpfr_add(r19834, r19805, r19833, MPFR_RNDN);
        ;
        mpfr_div(r19836, r19805, r19802, MPFR_RNDN);
        mpfr_div(r19837, r19836, r19812, MPFR_RNDN);
        mpfr_mul(r19838, r19835, r19837, MPFR_RNDN);
        mpfr_add(r19839, r19834, r19838, MPFR_RNDN);
        ;
        mpfr_div(r19841, r19840, r19807, MPFR_RNDN);
        mpfr_div(r19842, r19805, r19812, MPFR_RNDN);
        mpfr_mul(r19843, r19842, r19842, MPFR_RNDN);
        ;
        mpfr_pow(r19845, r19802, r19844, MPFR_RNDN);
        ;
        mpfr_div(r19847, r19845, r19846, MPFR_RNDN);
        mpfr_div(r19848, r19843, r19847, MPFR_RNDN);
        mpfr_add(r19849, r19841, r19848, MPFR_RNDN);
        mpfr_add(r19850, r19839, r19849, MPFR_RNDN);
        ;
        mpfr_mul(r19852, r19851, r19805, MPFR_RNDN);
        mpfr_div(r19853, r19852, r19813, MPFR_RNDN);
        mpfr_div(r19854, r19853, r19807, MPFR_RNDN);
        ;
        mpfr_mul(r19856, r19855, r19805, MPFR_RNDN);
        mpfr_div(r19857, r19856, r19813, MPFR_RNDN);
        ;
        mpfr_pow(r19859, r19802, r19858, MPFR_RNDN);
        mpfr_div(r19860, r19857, r19859, MPFR_RNDN);
        mpfr_add(r19861, r19854, r19860, MPFR_RNDN);
        mpfr_add(r19862, r19850, r19861, MPFR_RNDN);
        mpfr_mul(r19863, r19862, r19802, MPFR_RNDN);
        mpfr_div(r19864, r19830, r19863, MPFR_RNDN);
        ;
        mpfr_set_si(r19866, mpfr_cmp(r19802, r19865) <= 0, MPFR_RNDN);
        mpfr_mul(r19867, r19812, r19806, MPFR_RNDN);
        mpfr_add(r19868, r19802, r19867, MPFR_RNDN);
        mpfr_mul(r19869, r19802, r19816, MPFR_RNDN);
        mpfr_sqr(r19870, r19802, MPFR_RNDN);
        mpfr_mul(r19871, r19870, r19870, MPFR_RNDN);
        mpfr_mul(r19872, r19869, r19871, MPFR_RNDN);
        mpfr_add(r19873, r19868, r19872, MPFR_RNDN);
        mpfr_mul(r19874, r19820, r19812, MPFR_RNDN);
        mpfr_sqr(r19875, r19871, MPFR_RNDN);
        mpfr_mul(r19876, r19874, r19875, MPFR_RNDN);
        mpfr_mul(r19877, r19802, r19810, MPFR_RNDN);
        mpfr_mul(r19878, r19812, r19825, MPFR_RNDN);
        mpfr_add(r19879, r19877, r19878, MPFR_RNDN);
        mpfr_mul(r19880, r19870, r19870, MPFR_RNDN); mpfr_mul(r19880, r19880, r19870, MPFR_RNDN);
        mpfr_mul(r19881, r19879, r19880, MPFR_RNDN);
        mpfr_add(r19882, r19876, r19881, MPFR_RNDN);
        mpfr_add(r19883, r19873, r19882, MPFR_RNDN);
        mpfr_mul(r19884, r19807, r19807, MPFR_RNDN);
        mpfr_mul(r19885, r19812, r19812, MPFR_RNDN);
        mpfr_mul(r19886, r19884, r19885, MPFR_RNDN);
        ;
        mpfr_mul(r19888, r19887, r19820, MPFR_RNDN);
        mpfr_mul(r19889, r19888, r19807, MPFR_RNDN);
        mpfr_add(r19890, r19889, r19855, MPFR_RNDN);
        mpfr_mul(r19891, r19886, r19890, MPFR_RNDN);
        mpfr_mul(r19892, r19802, r19835, MPFR_RNDN);
        mpfr_mul(r19893, r19892, r19812, MPFR_RNDN);
        mpfr_add(r19894, r19805, r19893, MPFR_RNDN);
        mpfr_mul(r19895, r19840, r19802, MPFR_RNDN);
        mpfr_mul(r19896, r19895, r19802, MPFR_RNDN);
        mpfr_add(r19897, r19894, r19896, MPFR_RNDN);
        mpfr_add(r19898, r19891, r19897, MPFR_RNDN);
        mpfr_mul(r19899, r19851, r19807, MPFR_RNDN);
        mpfr_add(r19900, r19831, r19899, MPFR_RNDN);
        mpfr_mul(r19901, r19884, r19900, MPFR_RNDN);
        mpfr_mul(r19902, r19807, r19901, MPFR_RNDN);
        mpfr_add(r19903, r19898, r19902, MPFR_RNDN);
        mpfr_div(r19904, r19883, r19903, MPFR_RNDN);
        if (mpfr_get_si(r19866, MPFR_RNDN)) { mpfr_set(r19905, r19904, MPFR_RNDN); } else { mpfr_set(r19905, r19864, MPFR_RNDN); };
        if (mpfr_get_si(r19804, MPFR_RNDN)) { mpfr_set(r19906, r19864, MPFR_RNDN); } else { mpfr_set(r19906, r19905, MPFR_RNDN); };
        return mpfr_get_d(r19906, MPFR_RNDN);
}

