#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 r18767 = 1.0f;
        float r18768 = 0.1049934947f;
        float r18769 = x;
        float r18770 = r18769 * r18769;
        float r18771 = r18768 * r18770;
        float r18772 = r18767 + r18771;
        float r18773 = 0.0424060604f;
        float r18774 = r18770 * r18770;
        float r18775 = r18773 * r18774;
        float r18776 = r18772 + r18775;
        float r18777 = 0.0072644182f;
        float r18778 = r18774 * r18770;
        float r18779 = r18777 * r18778;
        float r18780 = r18776 + r18779;
        float r18781 = 0.0005064034f;
        float r18782 = r18778 * r18770;
        float r18783 = r18781 * r18782;
        float r18784 = r18780 + r18783;
        float r18785 = 0.0001789971f;
        float r18786 = r18782 * r18770;
        float r18787 = r18785 * r18786;
        float r18788 = r18784 + r18787;
        float r18789 = 0.7715471019f;
        float r18790 = r18789 * r18770;
        float r18791 = r18767 + r18790;
        float r18792 = 0.2909738639f;
        float r18793 = r18792 * r18774;
        float r18794 = r18791 + r18793;
        float r18795 = 0.0694555761f;
        float r18796 = r18795 * r18778;
        float r18797 = r18794 + r18796;
        float r18798 = 0.0140005442f;
        float r18799 = r18798 * r18782;
        float r18800 = r18797 + r18799;
        float r18801 = 0.0008327945f;
        float r18802 = r18801 * r18786;
        float r18803 = r18800 + r18802;
        float r18804 = 2.0f;
        float r18805 = r18804 * r18785;
        float r18806 = r18786 * r18770;
        float r18807 = r18805 * r18806;
        float r18808 = r18803 + r18807;
        float r18809 = r18788 / r18808;
        float r18810 = r18809 * r18769;
        return r18810;
}

double f_id(double x) {
        double r18811 = 1.0;
        double r18812 = 0.1049934947;
        double r18813 = x;
        double r18814 = r18813 * r18813;
        double r18815 = r18812 * r18814;
        double r18816 = r18811 + r18815;
        double r18817 = 0.0424060604;
        double r18818 = r18814 * r18814;
        double r18819 = r18817 * r18818;
        double r18820 = r18816 + r18819;
        double r18821 = 0.0072644182;
        double r18822 = r18818 * r18814;
        double r18823 = r18821 * r18822;
        double r18824 = r18820 + r18823;
        double r18825 = 0.0005064034;
        double r18826 = r18822 * r18814;
        double r18827 = r18825 * r18826;
        double r18828 = r18824 + r18827;
        double r18829 = 0.0001789971;
        double r18830 = r18826 * r18814;
        double r18831 = r18829 * r18830;
        double r18832 = r18828 + r18831;
        double r18833 = 0.7715471019;
        double r18834 = r18833 * r18814;
        double r18835 = r18811 + r18834;
        double r18836 = 0.2909738639;
        double r18837 = r18836 * r18818;
        double r18838 = r18835 + r18837;
        double r18839 = 0.0694555761;
        double r18840 = r18839 * r18822;
        double r18841 = r18838 + r18840;
        double r18842 = 0.0140005442;
        double r18843 = r18842 * r18826;
        double r18844 = r18841 + r18843;
        double r18845 = 0.0008327945;
        double r18846 = r18845 * r18830;
        double r18847 = r18844 + r18846;
        double r18848 = 2.0;
        double r18849 = r18848 * r18829;
        double r18850 = r18830 * r18814;
        double r18851 = r18849 * r18850;
        double r18852 = r18847 + r18851;
        double r18853 = r18832 / r18852;
        double r18854 = r18853 * r18813;
        return r18854;
}


double f_of(float x) {
        float r18855 = x;
        float r18856 = -1.1392497874101738e+24f;
        bool r18857 = r18855 <= r18856;
        float r18858 = 1.0f;
        float r18859 = r18858 / r18855;
        float r18860 = r18859 * (r18859 * r18859);
        float r18861 = r18860 * (r18860 * r18860);
        float r18862 = r18855 * r18855;
        float r18863 = 0.0003579942f;
        float r18864 = r18858 / r18862;
        float r18865 = r18864 * (r18864 * r18864);
        float r18866 = 6.0f;
        float r18867 = pow(r18855, r18866);
        float r18868 = r18865 / r18867;
        float r18869 = 8.0f;
        float r18870 = pow(r18859, r18869);
        float r18871 = 0.0140005442f;
        float r18872 = 0.0694555761f;
        float r18873 = r18872 * r18865;
        float r18874 = fma(r18870, r18871, r18873);
        float r18875 = 0.0008327945f;
        float r18876 = 10.0f;
        float r18877 = pow(r18855, r18876);
        float r18878 = r18858 / r18877;
        float r18879 = 0.2909738639f;
        float r18880 = 4.0f;
        float r18881 = pow(r18859, r18880);
        float r18882 = 0.7715471019f;
        float r18883 = r18882 / r18855;
        float r18884 = fma(r18883, r18859, r18858);
        float r18885 = fma(r18879, r18881, r18884);
        float r18886 = fma(r18875, r18878, r18885);
        float r18887 = r18874 + r18886;
        float r18888 = fma(r18863, r18868, r18887);
        float r18889 = r18862 * r18888;
        float r18890 = r18861 / r18889;
        float r18891 = 0.0001789971f;
        float r18892 = 0.0005064034f;
        float r18893 = 0.0072644182f;
        float r18894 = r18893 * r18865;
        float r18895 = fma(r18892, r18870, r18894);
        float r18896 = 0.0424060604f;
        float r18897 = 0.1049934947f;
        float r18898 = r18897 / r18855;
        float r18899 = fma(r18898, r18859, r18858);
        float r18900 = fma(r18896, r18881, r18899);
        float r18901 = r18895 + r18900;
        float r18902 = r18855 * r18888;
        float r18903 = r18901 / r18902;
        float r18904 = fma(r18890, r18891, r18903);
        float r18905 = 1.653196896254347e+29f;
        bool r18906 = r18855 <= r18905;
        float r18907 = r18855 * (r18855 * r18855);
        float r18908 = r18907 * (r18907 * r18907);
        float r18909 = r18908 * r18862;
        float r18910 = r18907 * r18867;
        float r18911 = r18907 * r18910;
        float r18912 = r18862 * (r18862 * r18862);
        float r18913 = pow(r18855, r18880);
        float r18914 = r18912 * r18913;
        float r18915 = r18855 * r18882;
        float r18916 = fma(r18915, r18855, r18858);
        float r18917 = fma(r18879, r18913, r18916);
        float r18918 = fma(r18875, r18914, r18917);
        float r18919 = pow(r18855, r18869);
        float r18920 = r18912 * r18872;
        float r18921 = fma(r18919, r18871, r18920);
        float r18922 = r18918 + r18921;
        float r18923 = fma(r18863, r18911, r18922);
        float r18924 = r18909 / r18923;
        float r18925 = r18855 * r18855;
        float r18926 = r18925 * (r18925 * r18925);
        float r18927 = r18867 * r18926;
        float r18928 = r18925 * r18925;
        float r18929 = r18925 * r18913;
        float r18930 = r18928 * r18929;
        float r18931 = r18882 * r18855;
        float r18932 = fma(r18931, r18855, r18858);
        float r18933 = fma(r18879, r18913, r18932);
        float r18934 = fma(r18875, r18930, r18933);
        float r18935 = r18872 * r18926;
        float r18936 = fma(r18919, r18871, r18935);
        float r18937 = r18934 + r18936;
        float r18938 = fma(r18863, r18927, r18937);
        float r18939 = r18855 / r18938;
        float r18940 = r18893 * r18926;
        float r18941 = fma(r18892, r18919, r18940);
        float r18942 = r18897 * r18855;
        float r18943 = fma(r18942, r18855, r18858);
        float r18944 = fma(r18896, r18913, r18943);
        float r18945 = r18941 + r18944;
        float r18946 = r18939 * r18945;
        float r18947 = fma(r18924, r18891, r18946);
        float r18948 = r18906 ? r18947 : r18904;
        float r18949 = r18857 ? r18904 : r18948;
        return r18949;
}

double f_od(double x) {
        double r18950 = x;
        double r18951 = -1.1392497874101738e+24;
        bool r18952 = r18950 <= r18951;
        double r18953 = 1.0;
        double r18954 = r18953 / r18950;
        double r18955 = r18954 * (r18954 * r18954);
        double r18956 = r18955 * (r18955 * r18955);
        double r18957 = r18950 * r18950;
        double r18958 = 0.0003579942;
        double r18959 = r18953 / r18957;
        double r18960 = r18959 * (r18959 * r18959);
        double r18961 = 6.0;
        double r18962 = pow(r18950, r18961);
        double r18963 = r18960 / r18962;
        double r18964 = 8.0;
        double r18965 = pow(r18954, r18964);
        double r18966 = 0.0140005442;
        double r18967 = 0.0694555761;
        double r18968 = r18967 * r18960;
        double r18969 = fma(r18965, r18966, r18968);
        double r18970 = 0.0008327945;
        double r18971 = 10.0;
        double r18972 = pow(r18950, r18971);
        double r18973 = r18953 / r18972;
        double r18974 = 0.2909738639;
        double r18975 = 4.0;
        double r18976 = pow(r18954, r18975);
        double r18977 = 0.7715471019;
        double r18978 = r18977 / r18950;
        double r18979 = fma(r18978, r18954, r18953);
        double r18980 = fma(r18974, r18976, r18979);
        double r18981 = fma(r18970, r18973, r18980);
        double r18982 = r18969 + r18981;
        double r18983 = fma(r18958, r18963, r18982);
        double r18984 = r18957 * r18983;
        double r18985 = r18956 / r18984;
        double r18986 = 0.0001789971;
        double r18987 = 0.0005064034;
        double r18988 = 0.0072644182;
        double r18989 = r18988 * r18960;
        double r18990 = fma(r18987, r18965, r18989);
        double r18991 = 0.0424060604;
        double r18992 = 0.1049934947;
        double r18993 = r18992 / r18950;
        double r18994 = fma(r18993, r18954, r18953);
        double r18995 = fma(r18991, r18976, r18994);
        double r18996 = r18990 + r18995;
        double r18997 = r18950 * r18983;
        double r18998 = r18996 / r18997;
        double r18999 = fma(r18985, r18986, r18998);
        double r19000 = 1.653196896254347e+29;
        bool r19001 = r18950 <= r19000;
        double r19002 = r18950 * (r18950 * r18950);
        double r19003 = r19002 * (r19002 * r19002);
        double r19004 = r19003 * r18957;
        double r19005 = r19002 * r18962;
        double r19006 = r19002 * r19005;
        double r19007 = r18957 * (r18957 * r18957);
        double r19008 = pow(r18950, r18975);
        double r19009 = r19007 * r19008;
        double r19010 = r18950 * r18977;
        double r19011 = fma(r19010, r18950, r18953);
        double r19012 = fma(r18974, r19008, r19011);
        double r19013 = fma(r18970, r19009, r19012);
        double r19014 = pow(r18950, r18964);
        double r19015 = r19007 * r18967;
        double r19016 = fma(r19014, r18966, r19015);
        double r19017 = r19013 + r19016;
        double r19018 = fma(r18958, r19006, r19017);
        double r19019 = r19004 / r19018;
        double r19020 = r18950 * r18950;
        double r19021 = r19020 * (r19020 * r19020);
        double r19022 = r18962 * r19021;
        double r19023 = r19020 * r19020;
        double r19024 = r19020 * r19008;
        double r19025 = r19023 * r19024;
        double r19026 = r18977 * r18950;
        double r19027 = fma(r19026, r18950, r18953);
        double r19028 = fma(r18974, r19008, r19027);
        double r19029 = fma(r18970, r19025, r19028);
        double r19030 = r18967 * r19021;
        double r19031 = fma(r19014, r18966, r19030);
        double r19032 = r19029 + r19031;
        double r19033 = fma(r18958, r19022, r19032);
        double r19034 = r18950 / r19033;
        double r19035 = r18988 * r19021;
        double r19036 = fma(r18987, r19014, r19035);
        double r19037 = r18992 * r18950;
        double r19038 = fma(r19037, r18950, r18953);
        double r19039 = fma(r18991, r19008, r19038);
        double r19040 = r19036 + r19039;
        double r19041 = r19034 * r19040;
        double r19042 = fma(r19019, r18986, r19041);
        double r19043 = r19001 ? r19042 : r18999;
        double r19044 = r18952 ? r18999 : r19043;
        return r19044;
}

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 r19045, r19046, r19047, r19048, r19049, r19050, r19051, r19052, r19053, r19054, r19055, r19056, r19057, r19058, r19059, r19060, r19061, r19062, r19063, r19064, r19065, r19066, r19067, r19068, r19069, r19070, r19071, r19072, r19073, r19074, r19075, r19076, r19077, r19078, r19079, r19080, r19081, r19082, r19083, r19084, r19085, r19086, r19087, r19088;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(144);
        mpfr_init_set_str(r19045, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r19046, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r19047);
        mpfr_init(r19048);
        mpfr_init(r19049);
        mpfr_init(r19050);
        mpfr_init_set_str(r19051, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r19052);
        mpfr_init(r19053);
        mpfr_init(r19054);
        mpfr_init_set_str(r19055, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r19056);
        mpfr_init(r19057);
        mpfr_init(r19058);
        mpfr_init_set_str(r19059, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init(r19060);
        mpfr_init(r19061);
        mpfr_init(r19062);
        mpfr_init_set_str(r19063, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init(r19064);
        mpfr_init(r19065);
        mpfr_init(r19066);
        mpfr_init_set_str(r19067, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r19068);
        mpfr_init(r19069);
        mpfr_init_set_str(r19070, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init(r19071);
        mpfr_init(r19072);
        mpfr_init_set_str(r19073, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r19074);
        mpfr_init(r19075);
        mpfr_init_set_str(r19076, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r19077);
        mpfr_init(r19078);
        mpfr_init_set_str(r19079, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r19080);
        mpfr_init(r19081);
        mpfr_init_set_str(r19082, "2", 10, MPFR_RNDN);
        mpfr_init(r19083);
        mpfr_init(r19084);
        mpfr_init(r19085);
        mpfr_init(r19086);
        mpfr_init(r19087);
        mpfr_init(r19088);
}

double f_im(double x) {
        ;
        ;
        mpfr_set_d(r19047, x, MPFR_RNDN);
        mpfr_mul(r19048, r19047, r19047, MPFR_RNDN);
        mpfr_mul(r19049, r19046, r19048, MPFR_RNDN);
        mpfr_add(r19050, r19045, r19049, MPFR_RNDN);
        ;
        mpfr_mul(r19052, r19048, r19048, MPFR_RNDN);
        mpfr_mul(r19053, r19051, r19052, MPFR_RNDN);
        mpfr_add(r19054, r19050, r19053, MPFR_RNDN);
        ;
        mpfr_mul(r19056, r19052, r19048, MPFR_RNDN);
        mpfr_mul(r19057, r19055, r19056, MPFR_RNDN);
        mpfr_add(r19058, r19054, r19057, MPFR_RNDN);
        ;
        mpfr_mul(r19060, r19056, r19048, MPFR_RNDN);
        mpfr_mul(r19061, r19059, r19060, MPFR_RNDN);
        mpfr_add(r19062, r19058, r19061, MPFR_RNDN);
        ;
        mpfr_mul(r19064, r19060, r19048, MPFR_RNDN);
        mpfr_mul(r19065, r19063, r19064, MPFR_RNDN);
        mpfr_add(r19066, r19062, r19065, MPFR_RNDN);
        ;
        mpfr_mul(r19068, r19067, r19048, MPFR_RNDN);
        mpfr_add(r19069, r19045, r19068, MPFR_RNDN);
        ;
        mpfr_mul(r19071, r19070, r19052, MPFR_RNDN);
        mpfr_add(r19072, r19069, r19071, MPFR_RNDN);
        ;
        mpfr_mul(r19074, r19073, r19056, MPFR_RNDN);
        mpfr_add(r19075, r19072, r19074, MPFR_RNDN);
        ;
        mpfr_mul(r19077, r19076, r19060, MPFR_RNDN);
        mpfr_add(r19078, r19075, r19077, MPFR_RNDN);
        ;
        mpfr_mul(r19080, r19079, r19064, MPFR_RNDN);
        mpfr_add(r19081, r19078, r19080, MPFR_RNDN);
        ;
        mpfr_mul(r19083, r19082, r19063, MPFR_RNDN);
        mpfr_mul(r19084, r19064, r19048, MPFR_RNDN);
        mpfr_mul(r19085, r19083, r19084, MPFR_RNDN);
        mpfr_add(r19086, r19081, r19085, MPFR_RNDN);
        mpfr_div(r19087, r19066, r19086, MPFR_RNDN);
        mpfr_mul(r19088, r19087, r19047, MPFR_RNDN);
        return mpfr_get_d(r19088, MPFR_RNDN);
}

static mpfr_t r19089, r19090, r19091, r19092, r19093, r19094, r19095, r19096, r19097, r19098, r19099, r19100, r19101, r19102, r19103, r19104, r19105, r19106, r19107, r19108, r19109, r19110, r19111, r19112, r19113, r19114, r19115, r19116, r19117, r19118, r19119, r19120, r19121, r19122, r19123, r19124, r19125, r19126, r19127, r19128, r19129, r19130, r19131, r19132, r19133, r19134, r19135, r19136, r19137, r19138, r19139, r19140, r19141, r19142, r19143, r19144, r19145, r19146, r19147, r19148, r19149, r19150, r19151, r19152, r19153, r19154, r19155, r19156, r19157, r19158, r19159, r19160, r19161, r19162, r19163, r19164, r19165, r19166, r19167, r19168, r19169, r19170, r19171, r19172, r19173, r19174, r19175, r19176, r19177, r19178, r19179, r19180, r19181, r19182, r19183;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(144);
        mpfr_init(r19089);
        mpfr_init_set_str(r19090, "-1.1392497874101738e+24", 10, MPFR_RNDN);
        mpfr_init(r19091);
        mpfr_init_set_str(r19092, "1", 10, MPFR_RNDN);
        mpfr_init(r19093);
        mpfr_init(r19094);
        mpfr_init(r19095);
        mpfr_init(r19096);
        mpfr_init_set_str(r19097, "0.0003579942", 10, MPFR_RNDN);
        mpfr_init(r19098);
        mpfr_init(r19099);
        mpfr_init_set_str(r19100, "6", 10, MPFR_RNDN);
        mpfr_init(r19101);
        mpfr_init(r19102);
        mpfr_init_set_str(r19103, "8", 10, MPFR_RNDN);
        mpfr_init(r19104);
        mpfr_init_set_str(r19105, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init_set_str(r19106, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r19107);
        mpfr_init(r19108);
        mpfr_init_set_str(r19109, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init_set_str(r19110, "10", 10, MPFR_RNDN);
        mpfr_init(r19111);
        mpfr_init(r19112);
        mpfr_init_set_str(r19113, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init_set_str(r19114, "4", 10, MPFR_RNDN);
        mpfr_init(r19115);
        mpfr_init_set_str(r19116, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r19117);
        mpfr_init(r19118);
        mpfr_init(r19119);
        mpfr_init(r19120);
        mpfr_init(r19121);
        mpfr_init(r19122);
        mpfr_init(r19123);
        mpfr_init(r19124);
        mpfr_init_set_str(r19125, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init_set_str(r19126, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init_set_str(r19127, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r19128);
        mpfr_init(r19129);
        mpfr_init_set_str(r19130, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init_set_str(r19131, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r19132);
        mpfr_init(r19133);
        mpfr_init(r19134);
        mpfr_init(r19135);
        mpfr_init(r19136);
        mpfr_init(r19137);
        mpfr_init(r19138);
        mpfr_init_set_str(r19139, "1.653196896254347e+29", 10, MPFR_RNDN);
        mpfr_init(r19140);
        mpfr_init(r19141);
        mpfr_init(r19142);
        mpfr_init(r19143);
        mpfr_init(r19144);
        mpfr_init(r19145);
        mpfr_init(r19146);
        mpfr_init(r19147);
        mpfr_init(r19148);
        mpfr_init(r19149);
        mpfr_init(r19150);
        mpfr_init(r19151);
        mpfr_init(r19152);
        mpfr_init(r19153);
        mpfr_init(r19154);
        mpfr_init(r19155);
        mpfr_init(r19156);
        mpfr_init(r19157);
        mpfr_init(r19158);
        mpfr_init(r19159);
        mpfr_init(r19160);
        mpfr_init(r19161);
        mpfr_init(r19162);
        mpfr_init(r19163);
        mpfr_init(r19164);
        mpfr_init(r19165);
        mpfr_init(r19166);
        mpfr_init(r19167);
        mpfr_init(r19168);
        mpfr_init(r19169);
        mpfr_init(r19170);
        mpfr_init(r19171);
        mpfr_init(r19172);
        mpfr_init(r19173);
        mpfr_init(r19174);
        mpfr_init(r19175);
        mpfr_init(r19176);
        mpfr_init(r19177);
        mpfr_init(r19178);
        mpfr_init(r19179);
        mpfr_init(r19180);
        mpfr_init(r19181);
        mpfr_init(r19182);
        mpfr_init(r19183);
}

double f_fm(double x) {
        mpfr_set_d(r19089, x, MPFR_RNDN);
        ;
        mpfr_set_si(r19091, mpfr_cmp(r19089, r19090) <= 0, MPFR_RNDN);
        ;
        mpfr_div(r19093, r19092, r19089, MPFR_RNDN);
        mpfr_mul(r19094, r19093, r19093, MPFR_RNDN); mpfr_mul(r19094, r19094, r19093, MPFR_RNDN);
        mpfr_mul(r19095, r19094, r19094, MPFR_RNDN); mpfr_mul(r19095, r19095, r19094, MPFR_RNDN);
        mpfr_sqr(r19096, r19089, MPFR_RNDN);
        ;
        mpfr_div(r19098, r19092, r19096, MPFR_RNDN);
        mpfr_mul(r19099, r19098, r19098, MPFR_RNDN); mpfr_mul(r19099, r19099, r19098, MPFR_RNDN);
        ;
        mpfr_pow(r19101, r19089, r19100, MPFR_RNDN);
        mpfr_div(r19102, r19099, r19101, MPFR_RNDN);
        ;
        mpfr_pow(r19104, r19093, r19103, MPFR_RNDN);
        ;
        ;
        mpfr_mul(r19107, r19106, r19099, MPFR_RNDN);
        mpfr_fma(r19108, r19104, r19105, r19107, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r19111, r19089, r19110, MPFR_RNDN);
        mpfr_div(r19112, r19092, r19111, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r19115, r19093, r19114, MPFR_RNDN);
        ;
        mpfr_div(r19117, r19116, r19089, MPFR_RNDN);
        mpfr_fma(r19118, r19117, r19093, r19092, MPFR_RNDN);
        mpfr_fma(r19119, r19113, r19115, r19118, MPFR_RNDN);
        mpfr_fma(r19120, r19109, r19112, r19119, MPFR_RNDN);
        mpfr_add(r19121, r19108, r19120, MPFR_RNDN);
        mpfr_fma(r19122, r19097, r19102, r19121, MPFR_RNDN);
        mpfr_mul(r19123, r19096, r19122, MPFR_RNDN);
        mpfr_div(r19124, r19095, r19123, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_mul(r19128, r19127, r19099, MPFR_RNDN);
        mpfr_fma(r19129, r19126, r19104, r19128, MPFR_RNDN);
        ;
        ;
        mpfr_div(r19132, r19131, r19089, MPFR_RNDN);
        mpfr_fma(r19133, r19132, r19093, r19092, MPFR_RNDN);
        mpfr_fma(r19134, r19130, r19115, r19133, MPFR_RNDN);
        mpfr_add(r19135, r19129, r19134, MPFR_RNDN);
        mpfr_mul(r19136, r19089, r19122, MPFR_RNDN);
        mpfr_div(r19137, r19135, r19136, MPFR_RNDN);
        mpfr_fma(r19138, r19124, r19125, r19137, MPFR_RNDN);
        ;
        mpfr_set_si(r19140, mpfr_cmp(r19089, r19139) <= 0, MPFR_RNDN);
        mpfr_mul(r19141, r19089, r19089, MPFR_RNDN); mpfr_mul(r19141, r19141, r19089, MPFR_RNDN);
        mpfr_mul(r19142, r19141, r19141, MPFR_RNDN); mpfr_mul(r19142, r19142, r19141, MPFR_RNDN);
        mpfr_mul(r19143, r19142, r19096, MPFR_RNDN);
        mpfr_mul(r19144, r19141, r19101, MPFR_RNDN);
        mpfr_mul(r19145, r19141, r19144, MPFR_RNDN);
        mpfr_mul(r19146, r19096, r19096, MPFR_RNDN); mpfr_mul(r19146, r19146, r19096, MPFR_RNDN);
        mpfr_pow(r19147, r19089, r19114, MPFR_RNDN);
        mpfr_mul(r19148, r19146, r19147, MPFR_RNDN);
        mpfr_mul(r19149, r19089, r19116, MPFR_RNDN);
        mpfr_fma(r19150, r19149, r19089, r19092, MPFR_RNDN);
        mpfr_fma(r19151, r19113, r19147, r19150, MPFR_RNDN);
        mpfr_fma(r19152, r19109, r19148, r19151, MPFR_RNDN);
        mpfr_pow(r19153, r19089, r19103, MPFR_RNDN);
        mpfr_mul(r19154, r19146, r19106, MPFR_RNDN);
        mpfr_fma(r19155, r19153, r19105, r19154, MPFR_RNDN);
        mpfr_add(r19156, r19152, r19155, MPFR_RNDN);
        mpfr_fma(r19157, r19097, r19145, r19156, MPFR_RNDN);
        mpfr_div(r19158, r19143, r19157, MPFR_RNDN);
        mpfr_mul(r19159, r19089, r19089, MPFR_RNDN);
        mpfr_mul(r19160, r19159, r19159, MPFR_RNDN); mpfr_mul(r19160, r19160, r19159, MPFR_RNDN);
        mpfr_mul(r19161, r19101, r19160, MPFR_RNDN);
        mpfr_mul(r19162, r19159, r19159, MPFR_RNDN);
        mpfr_mul(r19163, r19159, r19147, MPFR_RNDN);
        mpfr_mul(r19164, r19162, r19163, MPFR_RNDN);
        mpfr_mul(r19165, r19116, r19089, MPFR_RNDN);
        mpfr_fma(r19166, r19165, r19089, r19092, MPFR_RNDN);
        mpfr_fma(r19167, r19113, r19147, r19166, MPFR_RNDN);
        mpfr_fma(r19168, r19109, r19164, r19167, MPFR_RNDN);
        mpfr_mul(r19169, r19106, r19160, MPFR_RNDN);
        mpfr_fma(r19170, r19153, r19105, r19169, MPFR_RNDN);
        mpfr_add(r19171, r19168, r19170, MPFR_RNDN);
        mpfr_fma(r19172, r19097, r19161, r19171, MPFR_RNDN);
        mpfr_div(r19173, r19089, r19172, MPFR_RNDN);
        mpfr_mul(r19174, r19127, r19160, MPFR_RNDN);
        mpfr_fma(r19175, r19126, r19153, r19174, MPFR_RNDN);
        mpfr_mul(r19176, r19131, r19089, MPFR_RNDN);
        mpfr_fma(r19177, r19176, r19089, r19092, MPFR_RNDN);
        mpfr_fma(r19178, r19130, r19147, r19177, MPFR_RNDN);
        mpfr_add(r19179, r19175, r19178, MPFR_RNDN);
        mpfr_mul(r19180, r19173, r19179, MPFR_RNDN);
        mpfr_fma(r19181, r19158, r19125, r19180, MPFR_RNDN);
        if (mpfr_get_si(r19140, MPFR_RNDN)) { mpfr_set(r19182, r19181, MPFR_RNDN); } else { mpfr_set(r19182, r19138, MPFR_RNDN); };
        if (mpfr_get_si(r19091, MPFR_RNDN)) { mpfr_set(r19183, r19138, MPFR_RNDN); } else { mpfr_set(r19183, r19182, MPFR_RNDN); };
        return mpfr_get_d(r19183, MPFR_RNDN);
}

static mpfr_t r19184, r19185, r19186, r19187, r19188, r19189, r19190, r19191, r19192, r19193, r19194, r19195, r19196, r19197, r19198, r19199, r19200, r19201, r19202, r19203, r19204, r19205, r19206, r19207, r19208, r19209, r19210, r19211, r19212, r19213, r19214, r19215, r19216, r19217, r19218, r19219, r19220, r19221, r19222, r19223, r19224, r19225, r19226, r19227, r19228, r19229, r19230, r19231, r19232, r19233, r19234, r19235, r19236, r19237, r19238, r19239, r19240, r19241, r19242, r19243, r19244, r19245, r19246, r19247, r19248, r19249, r19250, r19251, r19252, r19253, r19254, r19255, r19256, r19257, r19258, r19259, r19260, r19261, r19262, r19263, r19264, r19265, r19266, r19267, r19268, r19269, r19270, r19271, r19272, r19273, r19274, r19275, r19276, r19277, r19278;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(144);
        mpfr_init(r19184);
        mpfr_init_set_str(r19185, "-1.1392497874101738e+24", 10, MPFR_RNDN);
        mpfr_init(r19186);
        mpfr_init_set_str(r19187, "1", 10, MPFR_RNDN);
        mpfr_init(r19188);
        mpfr_init(r19189);
        mpfr_init(r19190);
        mpfr_init(r19191);
        mpfr_init_set_str(r19192, "0.0003579942", 10, MPFR_RNDN);
        mpfr_init(r19193);
        mpfr_init(r19194);
        mpfr_init_set_str(r19195, "6", 10, MPFR_RNDN);
        mpfr_init(r19196);
        mpfr_init(r19197);
        mpfr_init_set_str(r19198, "8", 10, MPFR_RNDN);
        mpfr_init(r19199);
        mpfr_init_set_str(r19200, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init_set_str(r19201, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r19202);
        mpfr_init(r19203);
        mpfr_init_set_str(r19204, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init_set_str(r19205, "10", 10, MPFR_RNDN);
        mpfr_init(r19206);
        mpfr_init(r19207);
        mpfr_init_set_str(r19208, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init_set_str(r19209, "4", 10, MPFR_RNDN);
        mpfr_init(r19210);
        mpfr_init_set_str(r19211, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r19212);
        mpfr_init(r19213);
        mpfr_init(r19214);
        mpfr_init(r19215);
        mpfr_init(r19216);
        mpfr_init(r19217);
        mpfr_init(r19218);
        mpfr_init(r19219);
        mpfr_init_set_str(r19220, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init_set_str(r19221, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init_set_str(r19222, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r19223);
        mpfr_init(r19224);
        mpfr_init_set_str(r19225, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init_set_str(r19226, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r19227);
        mpfr_init(r19228);
        mpfr_init(r19229);
        mpfr_init(r19230);
        mpfr_init(r19231);
        mpfr_init(r19232);
        mpfr_init(r19233);
        mpfr_init_set_str(r19234, "1.653196896254347e+29", 10, MPFR_RNDN);
        mpfr_init(r19235);
        mpfr_init(r19236);
        mpfr_init(r19237);
        mpfr_init(r19238);
        mpfr_init(r19239);
        mpfr_init(r19240);
        mpfr_init(r19241);
        mpfr_init(r19242);
        mpfr_init(r19243);
        mpfr_init(r19244);
        mpfr_init(r19245);
        mpfr_init(r19246);
        mpfr_init(r19247);
        mpfr_init(r19248);
        mpfr_init(r19249);
        mpfr_init(r19250);
        mpfr_init(r19251);
        mpfr_init(r19252);
        mpfr_init(r19253);
        mpfr_init(r19254);
        mpfr_init(r19255);
        mpfr_init(r19256);
        mpfr_init(r19257);
        mpfr_init(r19258);
        mpfr_init(r19259);
        mpfr_init(r19260);
        mpfr_init(r19261);
        mpfr_init(r19262);
        mpfr_init(r19263);
        mpfr_init(r19264);
        mpfr_init(r19265);
        mpfr_init(r19266);
        mpfr_init(r19267);
        mpfr_init(r19268);
        mpfr_init(r19269);
        mpfr_init(r19270);
        mpfr_init(r19271);
        mpfr_init(r19272);
        mpfr_init(r19273);
        mpfr_init(r19274);
        mpfr_init(r19275);
        mpfr_init(r19276);
        mpfr_init(r19277);
        mpfr_init(r19278);
}

double f_dm(double x) {
        mpfr_set_d(r19184, x, MPFR_RNDN);
        ;
        mpfr_set_si(r19186, mpfr_cmp(r19184, r19185) <= 0, MPFR_RNDN);
        ;
        mpfr_div(r19188, r19187, r19184, MPFR_RNDN);
        mpfr_mul(r19189, r19188, r19188, MPFR_RNDN); mpfr_mul(r19189, r19189, r19188, MPFR_RNDN);
        mpfr_mul(r19190, r19189, r19189, MPFR_RNDN); mpfr_mul(r19190, r19190, r19189, MPFR_RNDN);
        mpfr_sqr(r19191, r19184, MPFR_RNDN);
        ;
        mpfr_div(r19193, r19187, r19191, MPFR_RNDN);
        mpfr_mul(r19194, r19193, r19193, MPFR_RNDN); mpfr_mul(r19194, r19194, r19193, MPFR_RNDN);
        ;
        mpfr_pow(r19196, r19184, r19195, MPFR_RNDN);
        mpfr_div(r19197, r19194, r19196, MPFR_RNDN);
        ;
        mpfr_pow(r19199, r19188, r19198, MPFR_RNDN);
        ;
        ;
        mpfr_mul(r19202, r19201, r19194, MPFR_RNDN);
        mpfr_fma(r19203, r19199, r19200, r19202, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r19206, r19184, r19205, MPFR_RNDN);
        mpfr_div(r19207, r19187, r19206, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r19210, r19188, r19209, MPFR_RNDN);
        ;
        mpfr_div(r19212, r19211, r19184, MPFR_RNDN);
        mpfr_fma(r19213, r19212, r19188, r19187, MPFR_RNDN);
        mpfr_fma(r19214, r19208, r19210, r19213, MPFR_RNDN);
        mpfr_fma(r19215, r19204, r19207, r19214, MPFR_RNDN);
        mpfr_add(r19216, r19203, r19215, MPFR_RNDN);
        mpfr_fma(r19217, r19192, r19197, r19216, MPFR_RNDN);
        mpfr_mul(r19218, r19191, r19217, MPFR_RNDN);
        mpfr_div(r19219, r19190, r19218, MPFR_RNDN);
        ;
        ;
        ;
        mpfr_mul(r19223, r19222, r19194, MPFR_RNDN);
        mpfr_fma(r19224, r19221, r19199, r19223, MPFR_RNDN);
        ;
        ;
        mpfr_div(r19227, r19226, r19184, MPFR_RNDN);
        mpfr_fma(r19228, r19227, r19188, r19187, MPFR_RNDN);
        mpfr_fma(r19229, r19225, r19210, r19228, MPFR_RNDN);
        mpfr_add(r19230, r19224, r19229, MPFR_RNDN);
        mpfr_mul(r19231, r19184, r19217, MPFR_RNDN);
        mpfr_div(r19232, r19230, r19231, MPFR_RNDN);
        mpfr_fma(r19233, r19219, r19220, r19232, MPFR_RNDN);
        ;
        mpfr_set_si(r19235, mpfr_cmp(r19184, r19234) <= 0, MPFR_RNDN);
        mpfr_mul(r19236, r19184, r19184, MPFR_RNDN); mpfr_mul(r19236, r19236, r19184, MPFR_RNDN);
        mpfr_mul(r19237, r19236, r19236, MPFR_RNDN); mpfr_mul(r19237, r19237, r19236, MPFR_RNDN);
        mpfr_mul(r19238, r19237, r19191, MPFR_RNDN);
        mpfr_mul(r19239, r19236, r19196, MPFR_RNDN);
        mpfr_mul(r19240, r19236, r19239, MPFR_RNDN);
        mpfr_mul(r19241, r19191, r19191, MPFR_RNDN); mpfr_mul(r19241, r19241, r19191, MPFR_RNDN);
        mpfr_pow(r19242, r19184, r19209, MPFR_RNDN);
        mpfr_mul(r19243, r19241, r19242, MPFR_RNDN);
        mpfr_mul(r19244, r19184, r19211, MPFR_RNDN);
        mpfr_fma(r19245, r19244, r19184, r19187, MPFR_RNDN);
        mpfr_fma(r19246, r19208, r19242, r19245, MPFR_RNDN);
        mpfr_fma(r19247, r19204, r19243, r19246, MPFR_RNDN);
        mpfr_pow(r19248, r19184, r19198, MPFR_RNDN);
        mpfr_mul(r19249, r19241, r19201, MPFR_RNDN);
        mpfr_fma(r19250, r19248, r19200, r19249, MPFR_RNDN);
        mpfr_add(r19251, r19247, r19250, MPFR_RNDN);
        mpfr_fma(r19252, r19192, r19240, r19251, MPFR_RNDN);
        mpfr_div(r19253, r19238, r19252, MPFR_RNDN);
        mpfr_mul(r19254, r19184, r19184, MPFR_RNDN);
        mpfr_mul(r19255, r19254, r19254, MPFR_RNDN); mpfr_mul(r19255, r19255, r19254, MPFR_RNDN);
        mpfr_mul(r19256, r19196, r19255, MPFR_RNDN);
        mpfr_mul(r19257, r19254, r19254, MPFR_RNDN);
        mpfr_mul(r19258, r19254, r19242, MPFR_RNDN);
        mpfr_mul(r19259, r19257, r19258, MPFR_RNDN);
        mpfr_mul(r19260, r19211, r19184, MPFR_RNDN);
        mpfr_fma(r19261, r19260, r19184, r19187, MPFR_RNDN);
        mpfr_fma(r19262, r19208, r19242, r19261, MPFR_RNDN);
        mpfr_fma(r19263, r19204, r19259, r19262, MPFR_RNDN);
        mpfr_mul(r19264, r19201, r19255, MPFR_RNDN);
        mpfr_fma(r19265, r19248, r19200, r19264, MPFR_RNDN);
        mpfr_add(r19266, r19263, r19265, MPFR_RNDN);
        mpfr_fma(r19267, r19192, r19256, r19266, MPFR_RNDN);
        mpfr_div(r19268, r19184, r19267, MPFR_RNDN);
        mpfr_mul(r19269, r19222, r19255, MPFR_RNDN);
        mpfr_fma(r19270, r19221, r19248, r19269, MPFR_RNDN);
        mpfr_mul(r19271, r19226, r19184, MPFR_RNDN);
        mpfr_fma(r19272, r19271, r19184, r19187, MPFR_RNDN);
        mpfr_fma(r19273, r19225, r19242, r19272, MPFR_RNDN);
        mpfr_add(r19274, r19270, r19273, MPFR_RNDN);
        mpfr_mul(r19275, r19268, r19274, MPFR_RNDN);
        mpfr_fma(r19276, r19253, r19220, r19275, MPFR_RNDN);
        if (mpfr_get_si(r19235, MPFR_RNDN)) { mpfr_set(r19277, r19276, MPFR_RNDN); } else { mpfr_set(r19277, r19233, MPFR_RNDN); };
        if (mpfr_get_si(r19186, MPFR_RNDN)) { mpfr_set(r19278, r19233, MPFR_RNDN); } else { mpfr_set(r19278, r19277, MPFR_RNDN); };
        return mpfr_get_d(r19278, MPFR_RNDN);
}

