#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 r18567 = 1.0f;
        float r18568 = 0.1049934947f;
        float r18569 = x;
        float r18570 = r18569 * r18569;
        float r18571 = r18568 * r18570;
        float r18572 = r18567 + r18571;
        float r18573 = 0.0424060604f;
        float r18574 = r18570 * r18570;
        float r18575 = r18573 * r18574;
        float r18576 = r18572 + r18575;
        float r18577 = 0.0072644182f;
        float r18578 = r18574 * r18570;
        float r18579 = r18577 * r18578;
        float r18580 = r18576 + r18579;
        float r18581 = 0.0005064034f;
        float r18582 = r18578 * r18570;
        float r18583 = r18581 * r18582;
        float r18584 = r18580 + r18583;
        float r18585 = 0.0001789971f;
        float r18586 = r18582 * r18570;
        float r18587 = r18585 * r18586;
        float r18588 = r18584 + r18587;
        float r18589 = 0.7715471019f;
        float r18590 = r18589 * r18570;
        float r18591 = r18567 + r18590;
        float r18592 = 0.2909738639f;
        float r18593 = r18592 * r18574;
        float r18594 = r18591 + r18593;
        float r18595 = 0.0694555761f;
        float r18596 = r18595 * r18578;
        float r18597 = r18594 + r18596;
        float r18598 = 0.0140005442f;
        float r18599 = r18598 * r18582;
        float r18600 = r18597 + r18599;
        float r18601 = 0.0008327945f;
        float r18602 = r18601 * r18586;
        float r18603 = r18600 + r18602;
        float r18604 = 2.0f;
        float r18605 = r18604 * r18585;
        float r18606 = r18586 * r18570;
        float r18607 = r18605 * r18606;
        float r18608 = r18603 + r18607;
        float r18609 = r18588 / r18608;
        float r18610 = r18609 * r18569;
        return r18610;
}

double f_id(double x) {
        double r18611 = 1.0;
        double r18612 = 0.1049934947;
        double r18613 = x;
        double r18614 = r18613 * r18613;
        double r18615 = r18612 * r18614;
        double r18616 = r18611 + r18615;
        double r18617 = 0.0424060604;
        double r18618 = r18614 * r18614;
        double r18619 = r18617 * r18618;
        double r18620 = r18616 + r18619;
        double r18621 = 0.0072644182;
        double r18622 = r18618 * r18614;
        double r18623 = r18621 * r18622;
        double r18624 = r18620 + r18623;
        double r18625 = 0.0005064034;
        double r18626 = r18622 * r18614;
        double r18627 = r18625 * r18626;
        double r18628 = r18624 + r18627;
        double r18629 = 0.0001789971;
        double r18630 = r18626 * r18614;
        double r18631 = r18629 * r18630;
        double r18632 = r18628 + r18631;
        double r18633 = 0.7715471019;
        double r18634 = r18633 * r18614;
        double r18635 = r18611 + r18634;
        double r18636 = 0.2909738639;
        double r18637 = r18636 * r18618;
        double r18638 = r18635 + r18637;
        double r18639 = 0.0694555761;
        double r18640 = r18639 * r18622;
        double r18641 = r18638 + r18640;
        double r18642 = 0.0140005442;
        double r18643 = r18642 * r18626;
        double r18644 = r18641 + r18643;
        double r18645 = 0.0008327945;
        double r18646 = r18645 * r18630;
        double r18647 = r18644 + r18646;
        double r18648 = 2.0;
        double r18649 = r18648 * r18629;
        double r18650 = r18630 * r18614;
        double r18651 = r18649 * r18650;
        double r18652 = r18647 + r18651;
        double r18653 = r18632 / r18652;
        double r18654 = r18653 * r18613;
        return r18654;
}


double f_of(float x) {
        float r18655 = x;
        float r18656 = -4.0904756849807273e+24f;
        bool r18657 = r18655 <= r18656;
        float r18658 = 0.0005064034f;
        float r18659 = 1.0f;
        float r18660 = 8.0f;
        float r18661 = pow(r18655, r18660);
        float r18662 = r18659 / r18661;
        float r18663 = 0.0072644182f;
        float r18664 = r18655 * (r18655 * r18655);
        float r18665 = r18663 / r18664;
        float r18666 = r18665 / r18664;
        float r18667 = fma(r18658, r18662, r18666);
        float r18668 = 0.0001789971f;
        float r18669 = 4.0f;
        float r18670 = pow(r18655, r18669);
        float r18671 = r18659 / r18670;
        float r18672 = r18664 * r18664;
        float r18673 = r18671 / r18672;
        float r18674 = 0.0424060604f;
        float r18675 = 0.1049934947f;
        float r18676 = r18675 / r18655;
        float r18677 = r18659 / r18655;
        float r18678 = fma(r18676, r18677, r18659);
        float r18679 = fma(r18674, r18671, r18678);
        float r18680 = fma(r18668, r18673, r18679);
        float r18681 = r18667 + r18680;
        float r18682 = r18681 / r18655;
        float r18683 = 0.0003579942f;
        float r18684 = 6.0f;
        float r18685 = pow(r18655, r18684);
        float r18686 = r18659 / r18685;
        float r18687 = r18686 / r18672;
        float r18688 = 0.0140005442f;
        float r18689 = 0.0694555761f;
        float r18690 = r18689 / r18672;
        float r18691 = fma(r18662, r18688, r18690);
        float r18692 = 0.0008327945f;
        float r18693 = 0.2909738639f;
        float r18694 = 0.7715471019f;
        float r18695 = r18694 / r18655;
        float r18696 = fma(r18695, r18677, r18659);
        float r18697 = fma(r18693, r18671, r18696);
        float r18698 = fma(r18692, r18673, r18697);
        float r18699 = r18691 + r18698;
        float r18700 = fma(r18683, r18687, r18699);
        float r18701 = r18682 / r18700;
        float r18702 = 2.6044556869853095e+29f;
        bool r18703 = r18655 <= r18702;
        float r18704 = r18655 * r18655;
        float r18705 = r18664 * r18704;
        float r18706 = r18705 * r18705;
        float r18707 = r18704 * r18704;
        float r18708 = r18655 * r18675;
        float r18709 = fma(r18708, r18655, r18659);
        float r18710 = fma(r18674, r18707, r18709);
        float r18711 = fma(r18668, r18706, r18710);
        float r18712 = r18707 * r18707;
        float r18713 = r18664 * r18663;
        float r18714 = r18713 * r18664;
        float r18715 = fma(r18658, r18712, r18714);
        float r18716 = r18711 + r18715;
        float r18717 = r18655 * r18716;
        float r18718 = 2.0f;
        float r18719 = r18668 * r18718;
        float r18720 = r18664 * r18664;
        float r18721 = r18655 * r18655;
        float r18722 = r18721 * r18664;
        float r18723 = r18720 * r18722;
        float r18724 = r18655 * r18723;
        float r18725 = r18664 * (r18664 * r18664);
        float r18726 = r18725 * r18655;
        float r18727 = r18721 * r18721;
        float r18728 = r18655 * r18694;
        float r18729 = fma(r18728, r18655, r18659);
        float r18730 = fma(r18693, r18727, r18729);
        float r18731 = fma(r18692, r18726, r18730);
        float r18732 = r18727 * r18727;
        float r18733 = r18720 * r18689;
        float r18734 = fma(r18732, r18688, r18733);
        float r18735 = r18731 + r18734;
        float r18736 = fma(r18719, r18724, r18735);
        float r18737 = r18717 / r18736;
        float r18738 = r18703 ? r18737 : r18701;
        float r18739 = r18657 ? r18701 : r18738;
        return r18739;
}

double f_od(double x) {
        double r18740 = x;
        double r18741 = -4.0904756849807273e+24;
        bool r18742 = r18740 <= r18741;
        double r18743 = 0.0005064034;
        double r18744 = 1.0;
        double r18745 = 8.0;
        double r18746 = pow(r18740, r18745);
        double r18747 = r18744 / r18746;
        double r18748 = 0.0072644182;
        double r18749 = r18740 * (r18740 * r18740);
        double r18750 = r18748 / r18749;
        double r18751 = r18750 / r18749;
        double r18752 = fma(r18743, r18747, r18751);
        double r18753 = 0.0001789971;
        double r18754 = 4.0;
        double r18755 = pow(r18740, r18754);
        double r18756 = r18744 / r18755;
        double r18757 = r18749 * r18749;
        double r18758 = r18756 / r18757;
        double r18759 = 0.0424060604;
        double r18760 = 0.1049934947;
        double r18761 = r18760 / r18740;
        double r18762 = r18744 / r18740;
        double r18763 = fma(r18761, r18762, r18744);
        double r18764 = fma(r18759, r18756, r18763);
        double r18765 = fma(r18753, r18758, r18764);
        double r18766 = r18752 + r18765;
        double r18767 = r18766 / r18740;
        double r18768 = 0.0003579942;
        double r18769 = 6.0;
        double r18770 = pow(r18740, r18769);
        double r18771 = r18744 / r18770;
        double r18772 = r18771 / r18757;
        double r18773 = 0.0140005442;
        double r18774 = 0.0694555761;
        double r18775 = r18774 / r18757;
        double r18776 = fma(r18747, r18773, r18775);
        double r18777 = 0.0008327945;
        double r18778 = 0.2909738639;
        double r18779 = 0.7715471019;
        double r18780 = r18779 / r18740;
        double r18781 = fma(r18780, r18762, r18744);
        double r18782 = fma(r18778, r18756, r18781);
        double r18783 = fma(r18777, r18758, r18782);
        double r18784 = r18776 + r18783;
        double r18785 = fma(r18768, r18772, r18784);
        double r18786 = r18767 / r18785;
        double r18787 = 2.6044556869853095e+29;
        bool r18788 = r18740 <= r18787;
        double r18789 = r18740 * r18740;
        double r18790 = r18749 * r18789;
        double r18791 = r18790 * r18790;
        double r18792 = r18789 * r18789;
        double r18793 = r18740 * r18760;
        double r18794 = fma(r18793, r18740, r18744);
        double r18795 = fma(r18759, r18792, r18794);
        double r18796 = fma(r18753, r18791, r18795);
        double r18797 = r18792 * r18792;
        double r18798 = r18749 * r18748;
        double r18799 = r18798 * r18749;
        double r18800 = fma(r18743, r18797, r18799);
        double r18801 = r18796 + r18800;
        double r18802 = r18740 * r18801;
        double r18803 = 2.0;
        double r18804 = r18753 * r18803;
        double r18805 = r18749 * r18749;
        double r18806 = r18740 * r18740;
        double r18807 = r18806 * r18749;
        double r18808 = r18805 * r18807;
        double r18809 = r18740 * r18808;
        double r18810 = r18749 * (r18749 * r18749);
        double r18811 = r18810 * r18740;
        double r18812 = r18806 * r18806;
        double r18813 = r18740 * r18779;
        double r18814 = fma(r18813, r18740, r18744);
        double r18815 = fma(r18778, r18812, r18814);
        double r18816 = fma(r18777, r18811, r18815);
        double r18817 = r18812 * r18812;
        double r18818 = r18805 * r18774;
        double r18819 = fma(r18817, r18773, r18818);
        double r18820 = r18816 + r18819;
        double r18821 = fma(r18804, r18809, r18820);
        double r18822 = r18802 / r18821;
        double r18823 = r18788 ? r18822 : r18786;
        double r18824 = r18742 ? r18786 : r18823;
        return r18824;
}

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 r18825, r18826, r18827, r18828, r18829, r18830, r18831, r18832, r18833, r18834, r18835, r18836, r18837, r18838, r18839, r18840, r18841, r18842, r18843, r18844, r18845, r18846, r18847, r18848, r18849, r18850, r18851, r18852, r18853, r18854, r18855, r18856, r18857, r18858, r18859, r18860, r18861, r18862, r18863, r18864, r18865, r18866, r18867, r18868;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(144);
        mpfr_init_set_str(r18825, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r18826, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r18827);
        mpfr_init(r18828);
        mpfr_init(r18829);
        mpfr_init(r18830);
        mpfr_init_set_str(r18831, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r18832);
        mpfr_init(r18833);
        mpfr_init(r18834);
        mpfr_init_set_str(r18835, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r18836);
        mpfr_init(r18837);
        mpfr_init(r18838);
        mpfr_init_set_str(r18839, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init(r18840);
        mpfr_init(r18841);
        mpfr_init(r18842);
        mpfr_init_set_str(r18843, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init(r18844);
        mpfr_init(r18845);
        mpfr_init(r18846);
        mpfr_init_set_str(r18847, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r18848);
        mpfr_init(r18849);
        mpfr_init_set_str(r18850, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init(r18851);
        mpfr_init(r18852);
        mpfr_init_set_str(r18853, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r18854);
        mpfr_init(r18855);
        mpfr_init_set_str(r18856, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r18857);
        mpfr_init(r18858);
        mpfr_init_set_str(r18859, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r18860);
        mpfr_init(r18861);
        mpfr_init_set_str(r18862, "2", 10, MPFR_RNDN);
        mpfr_init(r18863);
        mpfr_init(r18864);
        mpfr_init(r18865);
        mpfr_init(r18866);
        mpfr_init(r18867);
        mpfr_init(r18868);
}

double f_im(double x) {
        ;
        ;
        mpfr_set_d(r18827, x, MPFR_RNDN);
        mpfr_mul(r18828, r18827, r18827, MPFR_RNDN);
        mpfr_mul(r18829, r18826, r18828, MPFR_RNDN);
        mpfr_add(r18830, r18825, r18829, MPFR_RNDN);
        ;
        mpfr_mul(r18832, r18828, r18828, MPFR_RNDN);
        mpfr_mul(r18833, r18831, r18832, MPFR_RNDN);
        mpfr_add(r18834, r18830, r18833, MPFR_RNDN);
        ;
        mpfr_mul(r18836, r18832, r18828, MPFR_RNDN);
        mpfr_mul(r18837, r18835, r18836, MPFR_RNDN);
        mpfr_add(r18838, r18834, r18837, MPFR_RNDN);
        ;
        mpfr_mul(r18840, r18836, r18828, MPFR_RNDN);
        mpfr_mul(r18841, r18839, r18840, MPFR_RNDN);
        mpfr_add(r18842, r18838, r18841, MPFR_RNDN);
        ;
        mpfr_mul(r18844, r18840, r18828, MPFR_RNDN);
        mpfr_mul(r18845, r18843, r18844, MPFR_RNDN);
        mpfr_add(r18846, r18842, r18845, MPFR_RNDN);
        ;
        mpfr_mul(r18848, r18847, r18828, MPFR_RNDN);
        mpfr_add(r18849, r18825, r18848, MPFR_RNDN);
        ;
        mpfr_mul(r18851, r18850, r18832, MPFR_RNDN);
        mpfr_add(r18852, r18849, r18851, MPFR_RNDN);
        ;
        mpfr_mul(r18854, r18853, r18836, MPFR_RNDN);
        mpfr_add(r18855, r18852, r18854, MPFR_RNDN);
        ;
        mpfr_mul(r18857, r18856, r18840, MPFR_RNDN);
        mpfr_add(r18858, r18855, r18857, MPFR_RNDN);
        ;
        mpfr_mul(r18860, r18859, r18844, MPFR_RNDN);
        mpfr_add(r18861, r18858, r18860, MPFR_RNDN);
        ;
        mpfr_mul(r18863, r18862, r18843, MPFR_RNDN);
        mpfr_mul(r18864, r18844, r18828, MPFR_RNDN);
        mpfr_mul(r18865, r18863, r18864, MPFR_RNDN);
        mpfr_add(r18866, r18861, r18865, MPFR_RNDN);
        mpfr_div(r18867, r18846, r18866, MPFR_RNDN);
        mpfr_mul(r18868, r18867, r18827, MPFR_RNDN);
        return mpfr_get_d(r18868, MPFR_RNDN);
}

static mpfr_t r18869, r18870, r18871, r18872, r18873, r18874, r18875, r18876, r18877, r18878, r18879, r18880, r18881, r18882, r18883, r18884, r18885, r18886, r18887, r18888, r18889, r18890, r18891, r18892, r18893, r18894, r18895, r18896, r18897, r18898, r18899, r18900, r18901, r18902, r18903, r18904, r18905, r18906, r18907, r18908, r18909, r18910, r18911, r18912, r18913, r18914, r18915, r18916, r18917, r18918, r18919, r18920, r18921, r18922, r18923, r18924, r18925, r18926, r18927, r18928, r18929, r18930, r18931, r18932, r18933, r18934, r18935, r18936, r18937, r18938, r18939, r18940, r18941, r18942, r18943, r18944, r18945, r18946, r18947, r18948, r18949, r18950, r18951, r18952, r18953;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(144);
        mpfr_init(r18869);
        mpfr_init_set_str(r18870, "-4.0904756849807273e+24", 10, MPFR_RNDN);
        mpfr_init(r18871);
        mpfr_init_set_str(r18872, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init_set_str(r18873, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r18874, "8", 10, MPFR_RNDN);
        mpfr_init(r18875);
        mpfr_init(r18876);
        mpfr_init_set_str(r18877, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r18878);
        mpfr_init(r18879);
        mpfr_init(r18880);
        mpfr_init(r18881);
        mpfr_init_set_str(r18882, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init_set_str(r18883, "4", 10, MPFR_RNDN);
        mpfr_init(r18884);
        mpfr_init(r18885);
        mpfr_init(r18886);
        mpfr_init(r18887);
        mpfr_init_set_str(r18888, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init_set_str(r18889, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r18890);
        mpfr_init(r18891);
        mpfr_init(r18892);
        mpfr_init(r18893);
        mpfr_init(r18894);
        mpfr_init(r18895);
        mpfr_init(r18896);
        mpfr_init_set_str(r18897, "0.0003579942", 10, MPFR_RNDN);
        mpfr_init_set_str(r18898, "6", 10, MPFR_RNDN);
        mpfr_init(r18899);
        mpfr_init(r18900);
        mpfr_init(r18901);
        mpfr_init_set_str(r18902, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init_set_str(r18903, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r18904);
        mpfr_init(r18905);
        mpfr_init_set_str(r18906, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init_set_str(r18907, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init_set_str(r18908, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r18909);
        mpfr_init(r18910);
        mpfr_init(r18911);
        mpfr_init(r18912);
        mpfr_init(r18913);
        mpfr_init(r18914);
        mpfr_init(r18915);
        mpfr_init_set_str(r18916, "2.6044556869853095e+29", 10, MPFR_RNDN);
        mpfr_init(r18917);
        mpfr_init(r18918);
        mpfr_init(r18919);
        mpfr_init(r18920);
        mpfr_init(r18921);
        mpfr_init(r18922);
        mpfr_init(r18923);
        mpfr_init(r18924);
        mpfr_init(r18925);
        mpfr_init(r18926);
        mpfr_init(r18927);
        mpfr_init(r18928);
        mpfr_init(r18929);
        mpfr_init(r18930);
        mpfr_init(r18931);
        mpfr_init_set_str(r18932, "2", 10, MPFR_RNDN);
        mpfr_init(r18933);
        mpfr_init(r18934);
        mpfr_init(r18935);
        mpfr_init(r18936);
        mpfr_init(r18937);
        mpfr_init(r18938);
        mpfr_init(r18939);
        mpfr_init(r18940);
        mpfr_init(r18941);
        mpfr_init(r18942);
        mpfr_init(r18943);
        mpfr_init(r18944);
        mpfr_init(r18945);
        mpfr_init(r18946);
        mpfr_init(r18947);
        mpfr_init(r18948);
        mpfr_init(r18949);
        mpfr_init(r18950);
        mpfr_init(r18951);
        mpfr_init(r18952);
        mpfr_init(r18953);
}

double f_fm(double x) {
        mpfr_set_d(r18869, x, MPFR_RNDN);
        ;
        mpfr_set_si(r18871, mpfr_cmp(r18869, r18870) <= 0, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_pow(r18875, r18869, r18874, MPFR_RNDN);
        mpfr_div(r18876, r18873, r18875, MPFR_RNDN);
        ;
        mpfr_mul(r18878, r18869, r18869, MPFR_RNDN); mpfr_mul(r18878, r18878, r18869, MPFR_RNDN);
        mpfr_div(r18879, r18877, r18878, MPFR_RNDN);
        mpfr_div(r18880, r18879, r18878, MPFR_RNDN);
        mpfr_fma(r18881, r18872, r18876, r18880, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r18884, r18869, r18883, MPFR_RNDN);
        mpfr_div(r18885, r18873, r18884, MPFR_RNDN);
        mpfr_sqr(r18886, r18878, MPFR_RNDN);
        mpfr_div(r18887, r18885, r18886, MPFR_RNDN);
        ;
        ;
        mpfr_div(r18890, r18889, r18869, MPFR_RNDN);
        mpfr_div(r18891, r18873, r18869, MPFR_RNDN);
        mpfr_fma(r18892, r18890, r18891, r18873, MPFR_RNDN);
        mpfr_fma(r18893, r18888, r18885, r18892, MPFR_RNDN);
        mpfr_fma(r18894, r18882, r18887, r18893, MPFR_RNDN);
        mpfr_add(r18895, r18881, r18894, MPFR_RNDN);
        mpfr_div(r18896, r18895, r18869, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r18899, r18869, r18898, MPFR_RNDN);
        mpfr_div(r18900, r18873, r18899, MPFR_RNDN);
        mpfr_div(r18901, r18900, r18886, MPFR_RNDN);
        ;
        ;
        mpfr_div(r18904, r18903, r18886, MPFR_RNDN);
        mpfr_fma(r18905, r18876, r18902, r18904, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_div(r18909, r18908, r18869, MPFR_RNDN);
        mpfr_fma(r18910, r18909, r18891, r18873, MPFR_RNDN);
        mpfr_fma(r18911, r18907, r18885, r18910, MPFR_RNDN);
        mpfr_fma(r18912, r18906, r18887, r18911, MPFR_RNDN);
        mpfr_add(r18913, r18905, r18912, MPFR_RNDN);
        mpfr_fma(r18914, r18897, r18901, r18913, MPFR_RNDN);
        mpfr_div(r18915, r18896, r18914, MPFR_RNDN);
        ;
        mpfr_set_si(r18917, mpfr_cmp(r18869, r18916) <= 0, MPFR_RNDN);
        mpfr_sqr(r18918, r18869, MPFR_RNDN);
        mpfr_mul(r18919, r18878, r18918, MPFR_RNDN);
        mpfr_mul(r18920, r18919, r18919, MPFR_RNDN);
        mpfr_mul(r18921, r18918, r18918, MPFR_RNDN);
        mpfr_mul(r18922, r18869, r18889, MPFR_RNDN);
        mpfr_fma(r18923, r18922, r18869, r18873, MPFR_RNDN);
        mpfr_fma(r18924, r18888, r18921, r18923, MPFR_RNDN);
        mpfr_fma(r18925, r18882, r18920, r18924, MPFR_RNDN);
        mpfr_mul(r18926, r18921, r18921, MPFR_RNDN);
        mpfr_mul(r18927, r18878, r18877, MPFR_RNDN);
        mpfr_mul(r18928, r18927, r18878, MPFR_RNDN);
        mpfr_fma(r18929, r18872, r18926, r18928, MPFR_RNDN);
        mpfr_add(r18930, r18925, r18929, MPFR_RNDN);
        mpfr_mul(r18931, r18869, r18930, MPFR_RNDN);
        ;
        mpfr_mul(r18933, r18882, r18932, MPFR_RNDN);
        mpfr_mul(r18934, r18878, r18878, MPFR_RNDN);
        mpfr_mul(r18935, r18869, r18869, MPFR_RNDN);
        mpfr_mul(r18936, r18935, r18878, MPFR_RNDN);
        mpfr_mul(r18937, r18934, r18936, MPFR_RNDN);
        mpfr_mul(r18938, r18869, r18937, MPFR_RNDN);
        mpfr_mul(r18939, r18878, r18878, MPFR_RNDN); mpfr_mul(r18939, r18939, r18878, MPFR_RNDN);
        mpfr_mul(r18940, r18939, r18869, MPFR_RNDN);
        mpfr_mul(r18941, r18935, r18935, MPFR_RNDN);
        mpfr_mul(r18942, r18869, r18908, MPFR_RNDN);
        mpfr_fma(r18943, r18942, r18869, r18873, MPFR_RNDN);
        mpfr_fma(r18944, r18907, r18941, r18943, MPFR_RNDN);
        mpfr_fma(r18945, r18906, r18940, r18944, MPFR_RNDN);
        mpfr_sqr(r18946, r18941, MPFR_RNDN);
        mpfr_mul(r18947, r18934, r18903, MPFR_RNDN);
        mpfr_fma(r18948, r18946, r18902, r18947, MPFR_RNDN);
        mpfr_add(r18949, r18945, r18948, MPFR_RNDN);
        mpfr_fma(r18950, r18933, r18938, r18949, MPFR_RNDN);
        mpfr_div(r18951, r18931, r18950, MPFR_RNDN);
        if (mpfr_get_si(r18917, MPFR_RNDN)) { mpfr_set(r18952, r18951, MPFR_RNDN); } else { mpfr_set(r18952, r18915, MPFR_RNDN); };
        if (mpfr_get_si(r18871, MPFR_RNDN)) { mpfr_set(r18953, r18915, MPFR_RNDN); } else { mpfr_set(r18953, r18952, MPFR_RNDN); };
        return mpfr_get_d(r18953, MPFR_RNDN);
}

static mpfr_t r18954, r18955, r18956, r18957, r18958, r18959, r18960, r18961, r18962, r18963, r18964, r18965, r18966, r18967, r18968, r18969, r18970, r18971, r18972, r18973, r18974, r18975, r18976, r18977, r18978, r18979, r18980, r18981, r18982, r18983, r18984, r18985, r18986, r18987, r18988, r18989, r18990, r18991, r18992, r18993, r18994, r18995, r18996, r18997, r18998, r18999, r19000, r19001, r19002, r19003, r19004, r19005, r19006, r19007, r19008, r19009, r19010, r19011, r19012, r19013, r19014, r19015, r19016, r19017, r19018, r19019, r19020, r19021, r19022, r19023, r19024, r19025, r19026, r19027, r19028, r19029, r19030, r19031, r19032, r19033, r19034, r19035, r19036, r19037, r19038;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(144);
        mpfr_init(r18954);
        mpfr_init_set_str(r18955, "-4.0904756849807273e+24", 10, MPFR_RNDN);
        mpfr_init(r18956);
        mpfr_init_set_str(r18957, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init_set_str(r18958, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r18959, "8", 10, MPFR_RNDN);
        mpfr_init(r18960);
        mpfr_init(r18961);
        mpfr_init_set_str(r18962, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r18963);
        mpfr_init(r18964);
        mpfr_init(r18965);
        mpfr_init(r18966);
        mpfr_init_set_str(r18967, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init_set_str(r18968, "4", 10, MPFR_RNDN);
        mpfr_init(r18969);
        mpfr_init(r18970);
        mpfr_init(r18971);
        mpfr_init(r18972);
        mpfr_init_set_str(r18973, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init_set_str(r18974, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r18975);
        mpfr_init(r18976);
        mpfr_init(r18977);
        mpfr_init(r18978);
        mpfr_init(r18979);
        mpfr_init(r18980);
        mpfr_init(r18981);
        mpfr_init_set_str(r18982, "0.0003579942", 10, MPFR_RNDN);
        mpfr_init_set_str(r18983, "6", 10, MPFR_RNDN);
        mpfr_init(r18984);
        mpfr_init(r18985);
        mpfr_init(r18986);
        mpfr_init_set_str(r18987, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init_set_str(r18988, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r18989);
        mpfr_init(r18990);
        mpfr_init_set_str(r18991, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init_set_str(r18992, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init_set_str(r18993, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r18994);
        mpfr_init(r18995);
        mpfr_init(r18996);
        mpfr_init(r18997);
        mpfr_init(r18998);
        mpfr_init(r18999);
        mpfr_init(r19000);
        mpfr_init_set_str(r19001, "2.6044556869853095e+29", 10, MPFR_RNDN);
        mpfr_init(r19002);
        mpfr_init(r19003);
        mpfr_init(r19004);
        mpfr_init(r19005);
        mpfr_init(r19006);
        mpfr_init(r19007);
        mpfr_init(r19008);
        mpfr_init(r19009);
        mpfr_init(r19010);
        mpfr_init(r19011);
        mpfr_init(r19012);
        mpfr_init(r19013);
        mpfr_init(r19014);
        mpfr_init(r19015);
        mpfr_init(r19016);
        mpfr_init_set_str(r19017, "2", 10, MPFR_RNDN);
        mpfr_init(r19018);
        mpfr_init(r19019);
        mpfr_init(r19020);
        mpfr_init(r19021);
        mpfr_init(r19022);
        mpfr_init(r19023);
        mpfr_init(r19024);
        mpfr_init(r19025);
        mpfr_init(r19026);
        mpfr_init(r19027);
        mpfr_init(r19028);
        mpfr_init(r19029);
        mpfr_init(r19030);
        mpfr_init(r19031);
        mpfr_init(r19032);
        mpfr_init(r19033);
        mpfr_init(r19034);
        mpfr_init(r19035);
        mpfr_init(r19036);
        mpfr_init(r19037);
        mpfr_init(r19038);
}

double f_dm(double x) {
        mpfr_set_d(r18954, x, MPFR_RNDN);
        ;
        mpfr_set_si(r18956, mpfr_cmp(r18954, r18955) <= 0, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_pow(r18960, r18954, r18959, MPFR_RNDN);
        mpfr_div(r18961, r18958, r18960, MPFR_RNDN);
        ;
        mpfr_mul(r18963, r18954, r18954, MPFR_RNDN); mpfr_mul(r18963, r18963, r18954, MPFR_RNDN);
        mpfr_div(r18964, r18962, r18963, MPFR_RNDN);
        mpfr_div(r18965, r18964, r18963, MPFR_RNDN);
        mpfr_fma(r18966, r18957, r18961, r18965, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r18969, r18954, r18968, MPFR_RNDN);
        mpfr_div(r18970, r18958, r18969, MPFR_RNDN);
        mpfr_sqr(r18971, r18963, MPFR_RNDN);
        mpfr_div(r18972, r18970, r18971, MPFR_RNDN);
        ;
        ;
        mpfr_div(r18975, r18974, r18954, MPFR_RNDN);
        mpfr_div(r18976, r18958, r18954, MPFR_RNDN);
        mpfr_fma(r18977, r18975, r18976, r18958, MPFR_RNDN);
        mpfr_fma(r18978, r18973, r18970, r18977, MPFR_RNDN);
        mpfr_fma(r18979, r18967, r18972, r18978, MPFR_RNDN);
        mpfr_add(r18980, r18966, r18979, MPFR_RNDN);
        mpfr_div(r18981, r18980, r18954, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r18984, r18954, r18983, MPFR_RNDN);
        mpfr_div(r18985, r18958, r18984, MPFR_RNDN);
        mpfr_div(r18986, r18985, r18971, MPFR_RNDN);
        ;
        ;
        mpfr_div(r18989, r18988, r18971, MPFR_RNDN);
        mpfr_fma(r18990, r18961, r18987, r18989, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_div(r18994, r18993, r18954, MPFR_RNDN);
        mpfr_fma(r18995, r18994, r18976, r18958, MPFR_RNDN);
        mpfr_fma(r18996, r18992, r18970, r18995, MPFR_RNDN);
        mpfr_fma(r18997, r18991, r18972, r18996, MPFR_RNDN);
        mpfr_add(r18998, r18990, r18997, MPFR_RNDN);
        mpfr_fma(r18999, r18982, r18986, r18998, MPFR_RNDN);
        mpfr_div(r19000, r18981, r18999, MPFR_RNDN);
        ;
        mpfr_set_si(r19002, mpfr_cmp(r18954, r19001) <= 0, MPFR_RNDN);
        mpfr_sqr(r19003, r18954, MPFR_RNDN);
        mpfr_mul(r19004, r18963, r19003, MPFR_RNDN);
        mpfr_mul(r19005, r19004, r19004, MPFR_RNDN);
        mpfr_mul(r19006, r19003, r19003, MPFR_RNDN);
        mpfr_mul(r19007, r18954, r18974, MPFR_RNDN);
        mpfr_fma(r19008, r19007, r18954, r18958, MPFR_RNDN);
        mpfr_fma(r19009, r18973, r19006, r19008, MPFR_RNDN);
        mpfr_fma(r19010, r18967, r19005, r19009, MPFR_RNDN);
        mpfr_mul(r19011, r19006, r19006, MPFR_RNDN);
        mpfr_mul(r19012, r18963, r18962, MPFR_RNDN);
        mpfr_mul(r19013, r19012, r18963, MPFR_RNDN);
        mpfr_fma(r19014, r18957, r19011, r19013, MPFR_RNDN);
        mpfr_add(r19015, r19010, r19014, MPFR_RNDN);
        mpfr_mul(r19016, r18954, r19015, MPFR_RNDN);
        ;
        mpfr_mul(r19018, r18967, r19017, MPFR_RNDN);
        mpfr_mul(r19019, r18963, r18963, MPFR_RNDN);
        mpfr_mul(r19020, r18954, r18954, MPFR_RNDN);
        mpfr_mul(r19021, r19020, r18963, MPFR_RNDN);
        mpfr_mul(r19022, r19019, r19021, MPFR_RNDN);
        mpfr_mul(r19023, r18954, r19022, MPFR_RNDN);
        mpfr_mul(r19024, r18963, r18963, MPFR_RNDN); mpfr_mul(r19024, r19024, r18963, MPFR_RNDN);
        mpfr_mul(r19025, r19024, r18954, MPFR_RNDN);
        mpfr_mul(r19026, r19020, r19020, MPFR_RNDN);
        mpfr_mul(r19027, r18954, r18993, MPFR_RNDN);
        mpfr_fma(r19028, r19027, r18954, r18958, MPFR_RNDN);
        mpfr_fma(r19029, r18992, r19026, r19028, MPFR_RNDN);
        mpfr_fma(r19030, r18991, r19025, r19029, MPFR_RNDN);
        mpfr_sqr(r19031, r19026, MPFR_RNDN);
        mpfr_mul(r19032, r19019, r18988, MPFR_RNDN);
        mpfr_fma(r19033, r19031, r18987, r19032, MPFR_RNDN);
        mpfr_add(r19034, r19030, r19033, MPFR_RNDN);
        mpfr_fma(r19035, r19018, r19023, r19034, MPFR_RNDN);
        mpfr_div(r19036, r19016, r19035, MPFR_RNDN);
        if (mpfr_get_si(r19002, MPFR_RNDN)) { mpfr_set(r19037, r19036, MPFR_RNDN); } else { mpfr_set(r19037, r19000, MPFR_RNDN); };
        if (mpfr_get_si(r18956, MPFR_RNDN)) { mpfr_set(r19038, r19000, MPFR_RNDN); } else { mpfr_set(r19038, r19037, MPFR_RNDN); };
        return mpfr_get_d(r19038, MPFR_RNDN);
}

