#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 r27334 = 1;
        float r27335 = 0.1049934947;
        float r27336 = x;
        float r27337 = r27336 * r27336;
        float r27338 = r27335 * r27337;
        float r27339 = r27334 + r27338;
        float r27340 = 0.0424060604;
        float r27341 = r27337 * r27337;
        float r27342 = r27340 * r27341;
        float r27343 = r27339 + r27342;
        float r27344 = 0.0072644182;
        float r27345 = r27341 * r27337;
        float r27346 = r27344 * r27345;
        float r27347 = r27343 + r27346;
        float r27348 = 0.0005064034;
        float r27349 = r27345 * r27337;
        float r27350 = r27348 * r27349;
        float r27351 = r27347 + r27350;
        float r27352 = 0.0001789971;
        float r27353 = r27349 * r27337;
        float r27354 = r27352 * r27353;
        float r27355 = r27351 + r27354;
        float r27356 = 0.7715471019;
        float r27357 = r27356 * r27337;
        float r27358 = r27334 + r27357;
        float r27359 = 0.2909738639;
        float r27360 = r27359 * r27341;
        float r27361 = r27358 + r27360;
        float r27362 = 0.0694555761;
        float r27363 = r27362 * r27345;
        float r27364 = r27361 + r27363;
        float r27365 = 0.0140005442;
        float r27366 = r27365 * r27349;
        float r27367 = r27364 + r27366;
        float r27368 = 0.0008327945;
        float r27369 = r27368 * r27353;
        float r27370 = r27367 + r27369;
        float r27371 = 2;
        float r27372 = r27371 * r27352;
        float r27373 = r27353 * r27337;
        float r27374 = r27372 * r27373;
        float r27375 = r27370 + r27374;
        float r27376 = r27355 / r27375;
        float r27377 = r27376 * r27336;
        return r27377;
}

double f_id(double x) {
        double r27378 = 1;
        double r27379 = 0.1049934947;
        double r27380 = x;
        double r27381 = r27380 * r27380;
        double r27382 = r27379 * r27381;
        double r27383 = r27378 + r27382;
        double r27384 = 0.0424060604;
        double r27385 = r27381 * r27381;
        double r27386 = r27384 * r27385;
        double r27387 = r27383 + r27386;
        double r27388 = 0.0072644182;
        double r27389 = r27385 * r27381;
        double r27390 = r27388 * r27389;
        double r27391 = r27387 + r27390;
        double r27392 = 0.0005064034;
        double r27393 = r27389 * r27381;
        double r27394 = r27392 * r27393;
        double r27395 = r27391 + r27394;
        double r27396 = 0.0001789971;
        double r27397 = r27393 * r27381;
        double r27398 = r27396 * r27397;
        double r27399 = r27395 + r27398;
        double r27400 = 0.7715471019;
        double r27401 = r27400 * r27381;
        double r27402 = r27378 + r27401;
        double r27403 = 0.2909738639;
        double r27404 = r27403 * r27385;
        double r27405 = r27402 + r27404;
        double r27406 = 0.0694555761;
        double r27407 = r27406 * r27389;
        double r27408 = r27405 + r27407;
        double r27409 = 0.0140005442;
        double r27410 = r27409 * r27393;
        double r27411 = r27408 + r27410;
        double r27412 = 0.0008327945;
        double r27413 = r27412 * r27397;
        double r27414 = r27411 + r27413;
        double r27415 = 2;
        double r27416 = r27415 * r27396;
        double r27417 = r27397 * r27381;
        double r27418 = r27416 * r27417;
        double r27419 = r27414 + r27418;
        double r27420 = r27399 / r27419;
        double r27421 = r27420 * r27380;
        return r27421;
}


double f_of(float x) {
        float r27422 = x;
        float r27423 = -1702869890.1626806;
        bool r27424 = r27422 <= r27423;
        float r27425 = 230712852.1998494;
        bool r27426 = r27422 <= r27425;
        float r27427 = !r27426;
        bool r27428 = r27424 || r27427;
        float r27429 = 2.5776972085022605;
        float r27430 = 4;
        float r27431 = pow(r27422, r27430);
        float r27432 = r27429 / r27431;
        float r27433 = 45.84259286297386;
        float r27434 = 6;
        float r27435 = pow(r27422, r27434);
        float r27436 = r27433 / r27435;
        float r27437 = r27432 + r27436;
        float r27438 = 0.5;
        float r27439 = r27438 / r27422;
        float r27440 = fma(r27437, r27422, r27439);
        float r27441 = r27422 * r27422;
        float r27442 = r27441 * r27441;
        float r27443 = r27442 * r27442;
        float r27444 = 0.0001789971;
        float r27445 = r27441 * r27444;
        float r27446 = r27443 * r27445;
        float r27447 = 0.0005064034;
        float r27448 = 0.0072644182;
        float r27449 = r27441 * r27448;
        float r27450 = r27449 * r27442;
        float r27451 = 0.0424060604;
        float r27452 = 0.1049934947;
        float r27453 = 1;
        float r27454 = fma(r27441, r27452, r27453);
        float r27455 = fma(r27451, r27442, r27454);
        float r27456 = r27450 + r27455;
        float r27457 = fma(r27447, r27443, r27456);
        float r27458 = r27446 + r27457;
        float r27459 = 0.0140005442;
        float r27460 = 0.2909738639;
        float r27461 = 0.7715471019;
        float r27462 = r27461 * r27422;
        float r27463 = fma(r27462, r27422, r27453);
        float r27464 = fma(r27460, r27442, r27463);
        float r27465 = 0.0694555761;
        float r27466 = r27465 * r27441;
        float r27467 = r27466 * r27442;
        float r27468 = r27464 + r27467;
        float r27469 = fma(r27443, r27459, r27468);
        float r27470 = 0.0008327945;
        float r27471 = r27441 * r27470;
        float r27472 = r27471 * r27443;
        float r27473 = 2;
        float r27474 = r27444 * r27473;
        float r27475 = r27474 * r27442;
        float r27476 = r27475 * r27443;
        float r27477 = r27472 + r27476;
        float r27478 = r27469 + r27477;
        float r27479 = r27458 / r27478;
        float r27480 = r27422 * r27479;
        float r27481 = r27428 ? r27440 : r27480;
        return r27481;
}

double f_od(double x) {
        double r27482 = x;
        double r27483 = -1702869890.1626806;
        bool r27484 = r27482 <= r27483;
        double r27485 = 230712852.1998494;
        bool r27486 = r27482 <= r27485;
        double r27487 = !r27486;
        bool r27488 = r27484 || r27487;
        double r27489 = 2.5776972085022605;
        double r27490 = 4;
        double r27491 = pow(r27482, r27490);
        double r27492 = r27489 / r27491;
        double r27493 = 45.84259286297386;
        double r27494 = 6;
        double r27495 = pow(r27482, r27494);
        double r27496 = r27493 / r27495;
        double r27497 = r27492 + r27496;
        double r27498 = 0.5;
        double r27499 = r27498 / r27482;
        double r27500 = fma(r27497, r27482, r27499);
        double r27501 = r27482 * r27482;
        double r27502 = r27501 * r27501;
        double r27503 = r27502 * r27502;
        double r27504 = 0.0001789971;
        double r27505 = r27501 * r27504;
        double r27506 = r27503 * r27505;
        double r27507 = 0.0005064034;
        double r27508 = 0.0072644182;
        double r27509 = r27501 * r27508;
        double r27510 = r27509 * r27502;
        double r27511 = 0.0424060604;
        double r27512 = 0.1049934947;
        double r27513 = 1;
        double r27514 = fma(r27501, r27512, r27513);
        double r27515 = fma(r27511, r27502, r27514);
        double r27516 = r27510 + r27515;
        double r27517 = fma(r27507, r27503, r27516);
        double r27518 = r27506 + r27517;
        double r27519 = 0.0140005442;
        double r27520 = 0.2909738639;
        double r27521 = 0.7715471019;
        double r27522 = r27521 * r27482;
        double r27523 = fma(r27522, r27482, r27513);
        double r27524 = fma(r27520, r27502, r27523);
        double r27525 = 0.0694555761;
        double r27526 = r27525 * r27501;
        double r27527 = r27526 * r27502;
        double r27528 = r27524 + r27527;
        double r27529 = fma(r27503, r27519, r27528);
        double r27530 = 0.0008327945;
        double r27531 = r27501 * r27530;
        double r27532 = r27531 * r27503;
        double r27533 = 2;
        double r27534 = r27504 * r27533;
        double r27535 = r27534 * r27502;
        double r27536 = r27535 * r27503;
        double r27537 = r27532 + r27536;
        double r27538 = r27529 + r27537;
        double r27539 = r27518 / r27538;
        double r27540 = r27482 * r27539;
        double r27541 = r27488 ? r27500 : r27540;
        return r27541;
}

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 r27542, r27543, r27544, r27545, r27546, r27547, r27548, r27549, r27550, r27551, r27552, r27553, r27554, r27555, r27556, r27557, r27558, r27559, r27560, r27561, r27562, r27563, r27564, r27565, r27566, r27567, r27568, r27569, r27570, r27571, r27572, r27573, r27574, r27575, r27576, r27577, r27578, r27579, r27580, r27581, r27582, r27583, r27584, r27585;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(592);
        mpfr_init_set_str(r27542, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r27543, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r27544);
        mpfr_init(r27545);
        mpfr_init(r27546);
        mpfr_init(r27547);
        mpfr_init_set_str(r27548, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r27549);
        mpfr_init(r27550);
        mpfr_init(r27551);
        mpfr_init_set_str(r27552, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r27553);
        mpfr_init(r27554);
        mpfr_init(r27555);
        mpfr_init_set_str(r27556, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init(r27557);
        mpfr_init(r27558);
        mpfr_init(r27559);
        mpfr_init_set_str(r27560, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init(r27561);
        mpfr_init(r27562);
        mpfr_init(r27563);
        mpfr_init_set_str(r27564, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r27565);
        mpfr_init(r27566);
        mpfr_init_set_str(r27567, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init(r27568);
        mpfr_init(r27569);
        mpfr_init_set_str(r27570, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r27571);
        mpfr_init(r27572);
        mpfr_init_set_str(r27573, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r27574);
        mpfr_init(r27575);
        mpfr_init_set_str(r27576, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r27577);
        mpfr_init(r27578);
        mpfr_init_set_str(r27579, "2", 10, MPFR_RNDN);
        mpfr_init(r27580);
        mpfr_init(r27581);
        mpfr_init(r27582);
        mpfr_init(r27583);
        mpfr_init(r27584);
        mpfr_init(r27585);
}

double f_im(double x) {
        ;
        ;
        mpfr_set_d(r27544, x, MPFR_RNDN);
        mpfr_mul(r27545, r27544, r27544, MPFR_RNDN);
        mpfr_mul(r27546, r27543, r27545, MPFR_RNDN);
        mpfr_add(r27547, r27542, r27546, MPFR_RNDN);
        ;
        mpfr_mul(r27549, r27545, r27545, MPFR_RNDN);
        mpfr_mul(r27550, r27548, r27549, MPFR_RNDN);
        mpfr_add(r27551, r27547, r27550, MPFR_RNDN);
        ;
        mpfr_mul(r27553, r27549, r27545, MPFR_RNDN);
        mpfr_mul(r27554, r27552, r27553, MPFR_RNDN);
        mpfr_add(r27555, r27551, r27554, MPFR_RNDN);
        ;
        mpfr_mul(r27557, r27553, r27545, MPFR_RNDN);
        mpfr_mul(r27558, r27556, r27557, MPFR_RNDN);
        mpfr_add(r27559, r27555, r27558, MPFR_RNDN);
        ;
        mpfr_mul(r27561, r27557, r27545, MPFR_RNDN);
        mpfr_mul(r27562, r27560, r27561, MPFR_RNDN);
        mpfr_add(r27563, r27559, r27562, MPFR_RNDN);
        ;
        mpfr_mul(r27565, r27564, r27545, MPFR_RNDN);
        mpfr_add(r27566, r27542, r27565, MPFR_RNDN);
        ;
        mpfr_mul(r27568, r27567, r27549, MPFR_RNDN);
        mpfr_add(r27569, r27566, r27568, MPFR_RNDN);
        ;
        mpfr_mul(r27571, r27570, r27553, MPFR_RNDN);
        mpfr_add(r27572, r27569, r27571, MPFR_RNDN);
        ;
        mpfr_mul(r27574, r27573, r27557, MPFR_RNDN);
        mpfr_add(r27575, r27572, r27574, MPFR_RNDN);
        ;
        mpfr_mul(r27577, r27576, r27561, MPFR_RNDN);
        mpfr_add(r27578, r27575, r27577, MPFR_RNDN);
        ;
        mpfr_mul(r27580, r27579, r27560, MPFR_RNDN);
        mpfr_mul(r27581, r27561, r27545, MPFR_RNDN);
        mpfr_mul(r27582, r27580, r27581, MPFR_RNDN);
        mpfr_add(r27583, r27578, r27582, MPFR_RNDN);
        mpfr_div(r27584, r27563, r27583, MPFR_RNDN);
        mpfr_mul(r27585, r27584, r27544, MPFR_RNDN);
        return mpfr_get_d(r27585, MPFR_RNDN);
}

static mpfr_t r27586, r27587, r27588, r27589, r27590, r27591, r27592, r27593, r27594, r27595, r27596, r27597, r27598, r27599, r27600, r27601, r27602, r27603, r27604, r27605, r27606, r27607, r27608, r27609, r27610, r27611, r27612, r27613, r27614, r27615, r27616, r27617, r27618, r27619, r27620, r27621, r27622, r27623, r27624, r27625, r27626, r27627, r27628, r27629, r27630, r27631, r27632, r27633, r27634, r27635, r27636, r27637, r27638, r27639, r27640, r27641, r27642, r27643, r27644, r27645;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(592);
        mpfr_init(r27586);
        mpfr_init_set_str(r27587, "-1702869890.1626806", 10, MPFR_RNDN);
        mpfr_init(r27588);
        mpfr_init_set_str(r27589, "230712852.1998494", 10, MPFR_RNDN);
        mpfr_init(r27590);
        mpfr_init(r27591);
        mpfr_init(r27592);
        mpfr_init_set_str(r27593, "2.5776972085022605", 10, MPFR_RNDN);
        mpfr_init_set_str(r27594, "4", 10, MPFR_RNDN);
        mpfr_init(r27595);
        mpfr_init(r27596);
        mpfr_init_set_str(r27597, "45.84259286297386", 10, MPFR_RNDN);
        mpfr_init_set_str(r27598, "6", 10, MPFR_RNDN);
        mpfr_init(r27599);
        mpfr_init(r27600);
        mpfr_init(r27601);
        mpfr_init_set_str(r27602, "0.5", 10, MPFR_RNDN);
        mpfr_init(r27603);
        mpfr_init(r27604);
        mpfr_init(r27605);
        mpfr_init(r27606);
        mpfr_init(r27607);
        mpfr_init_set_str(r27608, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init(r27609);
        mpfr_init(r27610);
        mpfr_init_set_str(r27611, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init_set_str(r27612, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r27613);
        mpfr_init(r27614);
        mpfr_init_set_str(r27615, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init_set_str(r27616, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init_set_str(r27617, "1", 10, MPFR_RNDN);
        mpfr_init(r27618);
        mpfr_init(r27619);
        mpfr_init(r27620);
        mpfr_init(r27621);
        mpfr_init(r27622);
        mpfr_init_set_str(r27623, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init_set_str(r27624, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init_set_str(r27625, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r27626);
        mpfr_init(r27627);
        mpfr_init(r27628);
        mpfr_init_set_str(r27629, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r27630);
        mpfr_init(r27631);
        mpfr_init(r27632);
        mpfr_init(r27633);
        mpfr_init_set_str(r27634, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r27635);
        mpfr_init(r27636);
        mpfr_init_set_str(r27637, "2", 10, MPFR_RNDN);
        mpfr_init(r27638);
        mpfr_init(r27639);
        mpfr_init(r27640);
        mpfr_init(r27641);
        mpfr_init(r27642);
        mpfr_init(r27643);
        mpfr_init(r27644);
        mpfr_init(r27645);
}

double f_fm(double x) {
        mpfr_set_d(r27586, x, MPFR_RNDN);
        ;
        mpfr_set_si(r27588, mpfr_cmp(r27586, r27587) <= 0, MPFR_RNDN);
        ;
        mpfr_set_si(r27590, mpfr_cmp(r27586, r27589) <= 0, MPFR_RNDN);
        mpfr_set_si(r27591, !mpfr_get_si(r27590, MPFR_RNDN), MPFR_RNDN);
        mpfr_set_si(r27592, mpfr_get_si(r27588, MPFR_RNDN) || mpfr_get_si(r27591, MPFR_RNDN), MPFR_RNDN);
        ;
        ;
        mpfr_pow(r27595, r27586, r27594, MPFR_RNDN);
        mpfr_div(r27596, r27593, r27595, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r27599, r27586, r27598, MPFR_RNDN);
        mpfr_div(r27600, r27597, r27599, MPFR_RNDN);
        mpfr_add(r27601, r27596, r27600, MPFR_RNDN);
        ;
        mpfr_div(r27603, r27602, r27586, MPFR_RNDN);
        mpfr_fma(r27604, r27601, r27586, r27603, MPFR_RNDN);
        mpfr_mul(r27605, r27586, r27586, MPFR_RNDN);
        mpfr_mul(r27606, r27605, r27605, MPFR_RNDN);
        mpfr_mul(r27607, r27606, r27606, MPFR_RNDN);
        ;
        mpfr_mul(r27609, r27605, r27608, MPFR_RNDN);
        mpfr_mul(r27610, r27607, r27609, MPFR_RNDN);
        ;
        ;
        mpfr_mul(r27613, r27605, r27612, MPFR_RNDN);
        mpfr_mul(r27614, r27613, r27606, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_fma(r27618, r27605, r27616, r27617, MPFR_RNDN);
        mpfr_fma(r27619, r27615, r27606, r27618, MPFR_RNDN);
        mpfr_add(r27620, r27614, r27619, MPFR_RNDN);
        mpfr_fma(r27621, r27611, r27607, r27620, MPFR_RNDN);
        mpfr_add(r27622, r27610, r27621, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_mul(r27626, r27625, r27586, MPFR_RNDN);
        mpfr_fma(r27627, r27626, r27586, r27617, MPFR_RNDN);
        mpfr_fma(r27628, r27624, r27606, r27627, MPFR_RNDN);
        ;
        mpfr_mul(r27630, r27629, r27605, MPFR_RNDN);
        mpfr_mul(r27631, r27630, r27606, MPFR_RNDN);
        mpfr_add(r27632, r27628, r27631, MPFR_RNDN);
        mpfr_fma(r27633, r27607, r27623, r27632, MPFR_RNDN);
        ;
        mpfr_mul(r27635, r27605, r27634, MPFR_RNDN);
        mpfr_mul(r27636, r27635, r27607, MPFR_RNDN);
        ;
        mpfr_mul(r27638, r27608, r27637, MPFR_RNDN);
        mpfr_mul(r27639, r27638, r27606, MPFR_RNDN);
        mpfr_mul(r27640, r27639, r27607, MPFR_RNDN);
        mpfr_add(r27641, r27636, r27640, MPFR_RNDN);
        mpfr_add(r27642, r27633, r27641, MPFR_RNDN);
        mpfr_div(r27643, r27622, r27642, MPFR_RNDN);
        mpfr_mul(r27644, r27586, r27643, MPFR_RNDN);
        if (mpfr_get_si(r27592, MPFR_RNDN)) { mpfr_set(r27645, r27604, MPFR_RNDN); } else { mpfr_set(r27645, r27644, MPFR_RNDN); };
        return mpfr_get_d(r27645, MPFR_RNDN);
}

static mpfr_t r27646, r27647, r27648, r27649, r27650, r27651, r27652, r27653, r27654, r27655, r27656, r27657, r27658, r27659, r27660, r27661, r27662, r27663, r27664, r27665, r27666, r27667, r27668, r27669, r27670, r27671, r27672, r27673, r27674, r27675, r27676, r27677, r27678, r27679, r27680, r27681, r27682, r27683, r27684, r27685, r27686, r27687, r27688, r27689, r27690, r27691, r27692, r27693, r27694, r27695, r27696, r27697, r27698, r27699, r27700, r27701, r27702, r27703, r27704, r27705;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(592);
        mpfr_init(r27646);
        mpfr_init_set_str(r27647, "-1702869890.1626806", 10, MPFR_RNDN);
        mpfr_init(r27648);
        mpfr_init_set_str(r27649, "230712852.1998494", 10, MPFR_RNDN);
        mpfr_init(r27650);
        mpfr_init(r27651);
        mpfr_init(r27652);
        mpfr_init_set_str(r27653, "2.5776972085022605", 10, MPFR_RNDN);
        mpfr_init_set_str(r27654, "4", 10, MPFR_RNDN);
        mpfr_init(r27655);
        mpfr_init(r27656);
        mpfr_init_set_str(r27657, "45.84259286297386", 10, MPFR_RNDN);
        mpfr_init_set_str(r27658, "6", 10, MPFR_RNDN);
        mpfr_init(r27659);
        mpfr_init(r27660);
        mpfr_init(r27661);
        mpfr_init_set_str(r27662, "0.5", 10, MPFR_RNDN);
        mpfr_init(r27663);
        mpfr_init(r27664);
        mpfr_init(r27665);
        mpfr_init(r27666);
        mpfr_init(r27667);
        mpfr_init_set_str(r27668, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init(r27669);
        mpfr_init(r27670);
        mpfr_init_set_str(r27671, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init_set_str(r27672, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r27673);
        mpfr_init(r27674);
        mpfr_init_set_str(r27675, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init_set_str(r27676, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init_set_str(r27677, "1", 10, MPFR_RNDN);
        mpfr_init(r27678);
        mpfr_init(r27679);
        mpfr_init(r27680);
        mpfr_init(r27681);
        mpfr_init(r27682);
        mpfr_init_set_str(r27683, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init_set_str(r27684, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init_set_str(r27685, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r27686);
        mpfr_init(r27687);
        mpfr_init(r27688);
        mpfr_init_set_str(r27689, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r27690);
        mpfr_init(r27691);
        mpfr_init(r27692);
        mpfr_init(r27693);
        mpfr_init_set_str(r27694, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r27695);
        mpfr_init(r27696);
        mpfr_init_set_str(r27697, "2", 10, MPFR_RNDN);
        mpfr_init(r27698);
        mpfr_init(r27699);
        mpfr_init(r27700);
        mpfr_init(r27701);
        mpfr_init(r27702);
        mpfr_init(r27703);
        mpfr_init(r27704);
        mpfr_init(r27705);
}

double f_dm(double x) {
        mpfr_set_d(r27646, x, MPFR_RNDN);
        ;
        mpfr_set_si(r27648, mpfr_cmp(r27646, r27647) <= 0, MPFR_RNDN);
        ;
        mpfr_set_si(r27650, mpfr_cmp(r27646, r27649) <= 0, MPFR_RNDN);
        mpfr_set_si(r27651, !mpfr_get_si(r27650, MPFR_RNDN), MPFR_RNDN);
        mpfr_set_si(r27652, mpfr_get_si(r27648, MPFR_RNDN) || mpfr_get_si(r27651, MPFR_RNDN), MPFR_RNDN);
        ;
        ;
        mpfr_pow(r27655, r27646, r27654, MPFR_RNDN);
        mpfr_div(r27656, r27653, r27655, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r27659, r27646, r27658, MPFR_RNDN);
        mpfr_div(r27660, r27657, r27659, MPFR_RNDN);
        mpfr_add(r27661, r27656, r27660, MPFR_RNDN);
        ;
        mpfr_div(r27663, r27662, r27646, MPFR_RNDN);
        mpfr_fma(r27664, r27661, r27646, r27663, MPFR_RNDN);
        mpfr_mul(r27665, r27646, r27646, MPFR_RNDN);
        mpfr_mul(r27666, r27665, r27665, MPFR_RNDN);
        mpfr_mul(r27667, r27666, r27666, MPFR_RNDN);
        ;
        mpfr_mul(r27669, r27665, r27668, MPFR_RNDN);
        mpfr_mul(r27670, r27667, r27669, MPFR_RNDN);
        ;
        ;
        mpfr_mul(r27673, r27665, r27672, MPFR_RNDN);
        mpfr_mul(r27674, r27673, r27666, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_fma(r27678, r27665, r27676, r27677, MPFR_RNDN);
        mpfr_fma(r27679, r27675, r27666, r27678, MPFR_RNDN);
        mpfr_add(r27680, r27674, r27679, MPFR_RNDN);
        mpfr_fma(r27681, r27671, r27667, r27680, MPFR_RNDN);
        mpfr_add(r27682, r27670, r27681, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_mul(r27686, r27685, r27646, MPFR_RNDN);
        mpfr_fma(r27687, r27686, r27646, r27677, MPFR_RNDN);
        mpfr_fma(r27688, r27684, r27666, r27687, MPFR_RNDN);
        ;
        mpfr_mul(r27690, r27689, r27665, MPFR_RNDN);
        mpfr_mul(r27691, r27690, r27666, MPFR_RNDN);
        mpfr_add(r27692, r27688, r27691, MPFR_RNDN);
        mpfr_fma(r27693, r27667, r27683, r27692, MPFR_RNDN);
        ;
        mpfr_mul(r27695, r27665, r27694, MPFR_RNDN);
        mpfr_mul(r27696, r27695, r27667, MPFR_RNDN);
        ;
        mpfr_mul(r27698, r27668, r27697, MPFR_RNDN);
        mpfr_mul(r27699, r27698, r27666, MPFR_RNDN);
        mpfr_mul(r27700, r27699, r27667, MPFR_RNDN);
        mpfr_add(r27701, r27696, r27700, MPFR_RNDN);
        mpfr_add(r27702, r27693, r27701, MPFR_RNDN);
        mpfr_div(r27703, r27682, r27702, MPFR_RNDN);
        mpfr_mul(r27704, r27646, r27703, MPFR_RNDN);
        if (mpfr_get_si(r27652, MPFR_RNDN)) { mpfr_set(r27705, r27664, MPFR_RNDN); } else { mpfr_set(r27705, r27704, MPFR_RNDN); };
        return mpfr_get_d(r27705, MPFR_RNDN);
}

