#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 r28115 = 1;
        float r28116 = 0.1049934947;
        float r28117 = x;
        float r28118 = r28117 * r28117;
        float r28119 = r28116 * r28118;
        float r28120 = r28115 + r28119;
        float r28121 = 0.0424060604;
        float r28122 = r28118 * r28118;
        float r28123 = r28121 * r28122;
        float r28124 = r28120 + r28123;
        float r28125 = 0.0072644182;
        float r28126 = r28122 * r28118;
        float r28127 = r28125 * r28126;
        float r28128 = r28124 + r28127;
        float r28129 = 0.0005064034;
        float r28130 = r28126 * r28118;
        float r28131 = r28129 * r28130;
        float r28132 = r28128 + r28131;
        float r28133 = 0.0001789971;
        float r28134 = r28130 * r28118;
        float r28135 = r28133 * r28134;
        float r28136 = r28132 + r28135;
        float r28137 = 0.7715471019;
        float r28138 = r28137 * r28118;
        float r28139 = r28115 + r28138;
        float r28140 = 0.2909738639;
        float r28141 = r28140 * r28122;
        float r28142 = r28139 + r28141;
        float r28143 = 0.0694555761;
        float r28144 = r28143 * r28126;
        float r28145 = r28142 + r28144;
        float r28146 = 0.0140005442;
        float r28147 = r28146 * r28130;
        float r28148 = r28145 + r28147;
        float r28149 = 0.0008327945;
        float r28150 = r28149 * r28134;
        float r28151 = r28148 + r28150;
        float r28152 = 2;
        float r28153 = r28152 * r28133;
        float r28154 = r28134 * r28118;
        float r28155 = r28153 * r28154;
        float r28156 = r28151 + r28155;
        float r28157 = r28136 / r28156;
        float r28158 = r28157 * r28117;
        return r28158;
}

double f_id(double x) {
        double r28159 = 1;
        double r28160 = 0.1049934947;
        double r28161 = x;
        double r28162 = r28161 * r28161;
        double r28163 = r28160 * r28162;
        double r28164 = r28159 + r28163;
        double r28165 = 0.0424060604;
        double r28166 = r28162 * r28162;
        double r28167 = r28165 * r28166;
        double r28168 = r28164 + r28167;
        double r28169 = 0.0072644182;
        double r28170 = r28166 * r28162;
        double r28171 = r28169 * r28170;
        double r28172 = r28168 + r28171;
        double r28173 = 0.0005064034;
        double r28174 = r28170 * r28162;
        double r28175 = r28173 * r28174;
        double r28176 = r28172 + r28175;
        double r28177 = 0.0001789971;
        double r28178 = r28174 * r28162;
        double r28179 = r28177 * r28178;
        double r28180 = r28176 + r28179;
        double r28181 = 0.7715471019;
        double r28182 = r28181 * r28162;
        double r28183 = r28159 + r28182;
        double r28184 = 0.2909738639;
        double r28185 = r28184 * r28166;
        double r28186 = r28183 + r28185;
        double r28187 = 0.0694555761;
        double r28188 = r28187 * r28170;
        double r28189 = r28186 + r28188;
        double r28190 = 0.0140005442;
        double r28191 = r28190 * r28174;
        double r28192 = r28189 + r28191;
        double r28193 = 0.0008327945;
        double r28194 = r28193 * r28178;
        double r28195 = r28192 + r28194;
        double r28196 = 2;
        double r28197 = r28196 * r28177;
        double r28198 = r28178 * r28162;
        double r28199 = r28197 * r28198;
        double r28200 = r28195 + r28199;
        double r28201 = r28180 / r28200;
        double r28202 = r28201 * r28161;
        return r28202;
}


double f_of(float x) {
        float r28203 = x;
        float r28204 = -443075727.0630727;
        bool r28205 = r28203 <= r28204;
        float r28206 = 745.7862626327901;
        bool r28207 = r28203 <= r28206;
        float r28208 = !r28207;
        bool r28209 = r28205 || r28208;
        float r28210 = 0.2514179000665375;
        float r28211 = 4;
        float r28212 = pow(r28203, r28211);
        float r28213 = r28210 / r28212;
        float r28214 = 0.15298196345929327;
        float r28215 = 6;
        float r28216 = pow(r28203, r28215);
        float r28217 = r28214 / r28216;
        float r28218 = r28213 + r28217;
        float r28219 = 0.5;
        float r28220 = r28219 / r28203;
        float r28221 = fma(r28218, r28203, r28220);
        float r28222 = r28203 * r28203;
        float r28223 = 0.0001789971;
        float r28224 = -r28223;
        float r28225 = r28222 * r28224;
        float r28226 = 3;
        float r28227 = 1;
        float r28228 = r28226 + r28227;
        float r28229 = pow(r28222, r28228);
        float r28230 = r28225 * r28229;
        float r28231 = 0.0072644182;
        float r28232 = r28231 * r28222;
        float r28233 = r28222 * r28222;
        float r28234 = pow(r28203, r28226);
        float r28235 = 0.0424060604;
        float r28236 = r28203 * r28235;
        float r28237 = r28234 * r28236;
        float r28238 = fma(r28232, r28233, r28237);
        float r28239 = 0.0005064034;
        float r28240 = 0.1049934947;
        float r28241 = fma(r28222, r28240, r28227);
        float r28242 = fma(r28229, r28239, r28241);
        float r28243 = r28238 + r28242;
        float r28244 = r28230 - r28243;
        float r28245 = 2;
        float r28246 = r28245 * r28223;
        float r28247 = r28246 * r28222;
        float r28248 = r28247 * r28233;
        float r28249 = -r28222;
        float r28250 = r28233 * r28249;
        float r28251 = r28248 * r28250;
        float r28252 = 0.0008327945;
        float r28253 = r28222 * r28252;
        float r28254 = r28233 * r28253;
        float r28255 = 0.2909738639;
        float r28256 = 0.7715471019;
        float r28257 = r28256 * r28203;
        float r28258 = fma(r28257, r28203, r28227);
        float r28259 = fma(r28255, r28233, r28258);
        float r28260 = fma(r28254, r28233, r28259);
        float r28261 = 0.0140005442;
        float r28262 = r28261 * r28222;
        float r28263 = r28233 * r28262;
        float r28264 = 0.0694555761;
        float r28265 = r28222 * r28264;
        float r28266 = r28233 * r28265;
        float r28267 = fma(r28222, r28263, r28266);
        float r28268 = r28260 + r28267;
        float r28269 = r28251 - r28268;
        float r28270 = r28244 / r28269;
        float r28271 = r28203 * r28270;
        float r28272 = r28209 ? r28221 : r28271;
        return r28272;
}

double f_od(double x) {
        double r28273 = x;
        double r28274 = -443075727.0630727;
        bool r28275 = r28273 <= r28274;
        double r28276 = 745.7862626327901;
        bool r28277 = r28273 <= r28276;
        double r28278 = !r28277;
        bool r28279 = r28275 || r28278;
        double r28280 = 0.2514179000665375;
        double r28281 = 4;
        double r28282 = pow(r28273, r28281);
        double r28283 = r28280 / r28282;
        double r28284 = 0.15298196345929327;
        double r28285 = 6;
        double r28286 = pow(r28273, r28285);
        double r28287 = r28284 / r28286;
        double r28288 = r28283 + r28287;
        double r28289 = 0.5;
        double r28290 = r28289 / r28273;
        double r28291 = fma(r28288, r28273, r28290);
        double r28292 = r28273 * r28273;
        double r28293 = 0.0001789971;
        double r28294 = -r28293;
        double r28295 = r28292 * r28294;
        double r28296 = 3;
        double r28297 = 1;
        double r28298 = r28296 + r28297;
        double r28299 = pow(r28292, r28298);
        double r28300 = r28295 * r28299;
        double r28301 = 0.0072644182;
        double r28302 = r28301 * r28292;
        double r28303 = r28292 * r28292;
        double r28304 = pow(r28273, r28296);
        double r28305 = 0.0424060604;
        double r28306 = r28273 * r28305;
        double r28307 = r28304 * r28306;
        double r28308 = fma(r28302, r28303, r28307);
        double r28309 = 0.0005064034;
        double r28310 = 0.1049934947;
        double r28311 = fma(r28292, r28310, r28297);
        double r28312 = fma(r28299, r28309, r28311);
        double r28313 = r28308 + r28312;
        double r28314 = r28300 - r28313;
        double r28315 = 2;
        double r28316 = r28315 * r28293;
        double r28317 = r28316 * r28292;
        double r28318 = r28317 * r28303;
        double r28319 = -r28292;
        double r28320 = r28303 * r28319;
        double r28321 = r28318 * r28320;
        double r28322 = 0.0008327945;
        double r28323 = r28292 * r28322;
        double r28324 = r28303 * r28323;
        double r28325 = 0.2909738639;
        double r28326 = 0.7715471019;
        double r28327 = r28326 * r28273;
        double r28328 = fma(r28327, r28273, r28297);
        double r28329 = fma(r28325, r28303, r28328);
        double r28330 = fma(r28324, r28303, r28329);
        double r28331 = 0.0140005442;
        double r28332 = r28331 * r28292;
        double r28333 = r28303 * r28332;
        double r28334 = 0.0694555761;
        double r28335 = r28292 * r28334;
        double r28336 = r28303 * r28335;
        double r28337 = fma(r28292, r28333, r28336);
        double r28338 = r28330 + r28337;
        double r28339 = r28321 - r28338;
        double r28340 = r28314 / r28339;
        double r28341 = r28273 * r28340;
        double r28342 = r28279 ? r28291 : r28341;
        return r28342;
}

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 r28343, r28344, r28345, r28346, r28347, r28348, r28349, r28350, r28351, r28352, r28353, r28354, r28355, r28356, r28357, r28358, r28359, r28360, r28361, r28362, r28363, r28364, r28365, r28366, r28367, r28368, r28369, r28370, r28371, r28372, r28373, r28374, r28375, r28376, r28377, r28378, r28379, r28380, r28381, r28382, r28383, r28384, r28385, r28386;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(592);
        mpfr_init_set_str(r28343, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r28344, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r28345);
        mpfr_init(r28346);
        mpfr_init(r28347);
        mpfr_init(r28348);
        mpfr_init_set_str(r28349, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r28350);
        mpfr_init(r28351);
        mpfr_init(r28352);
        mpfr_init_set_str(r28353, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r28354);
        mpfr_init(r28355);
        mpfr_init(r28356);
        mpfr_init_set_str(r28357, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init(r28358);
        mpfr_init(r28359);
        mpfr_init(r28360);
        mpfr_init_set_str(r28361, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init(r28362);
        mpfr_init(r28363);
        mpfr_init(r28364);
        mpfr_init_set_str(r28365, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r28366);
        mpfr_init(r28367);
        mpfr_init_set_str(r28368, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init(r28369);
        mpfr_init(r28370);
        mpfr_init_set_str(r28371, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r28372);
        mpfr_init(r28373);
        mpfr_init_set_str(r28374, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r28375);
        mpfr_init(r28376);
        mpfr_init_set_str(r28377, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r28378);
        mpfr_init(r28379);
        mpfr_init_set_str(r28380, "2", 10, MPFR_RNDN);
        mpfr_init(r28381);
        mpfr_init(r28382);
        mpfr_init(r28383);
        mpfr_init(r28384);
        mpfr_init(r28385);
        mpfr_init(r28386);
}

double f_im(double x) {
        ;
        ;
        mpfr_set_d(r28345, x, MPFR_RNDN);
        mpfr_mul(r28346, r28345, r28345, MPFR_RNDN);
        mpfr_mul(r28347, r28344, r28346, MPFR_RNDN);
        mpfr_add(r28348, r28343, r28347, MPFR_RNDN);
        ;
        mpfr_mul(r28350, r28346, r28346, MPFR_RNDN);
        mpfr_mul(r28351, r28349, r28350, MPFR_RNDN);
        mpfr_add(r28352, r28348, r28351, MPFR_RNDN);
        ;
        mpfr_mul(r28354, r28350, r28346, MPFR_RNDN);
        mpfr_mul(r28355, r28353, r28354, MPFR_RNDN);
        mpfr_add(r28356, r28352, r28355, MPFR_RNDN);
        ;
        mpfr_mul(r28358, r28354, r28346, MPFR_RNDN);
        mpfr_mul(r28359, r28357, r28358, MPFR_RNDN);
        mpfr_add(r28360, r28356, r28359, MPFR_RNDN);
        ;
        mpfr_mul(r28362, r28358, r28346, MPFR_RNDN);
        mpfr_mul(r28363, r28361, r28362, MPFR_RNDN);
        mpfr_add(r28364, r28360, r28363, MPFR_RNDN);
        ;
        mpfr_mul(r28366, r28365, r28346, MPFR_RNDN);
        mpfr_add(r28367, r28343, r28366, MPFR_RNDN);
        ;
        mpfr_mul(r28369, r28368, r28350, MPFR_RNDN);
        mpfr_add(r28370, r28367, r28369, MPFR_RNDN);
        ;
        mpfr_mul(r28372, r28371, r28354, MPFR_RNDN);
        mpfr_add(r28373, r28370, r28372, MPFR_RNDN);
        ;
        mpfr_mul(r28375, r28374, r28358, MPFR_RNDN);
        mpfr_add(r28376, r28373, r28375, MPFR_RNDN);
        ;
        mpfr_mul(r28378, r28377, r28362, MPFR_RNDN);
        mpfr_add(r28379, r28376, r28378, MPFR_RNDN);
        ;
        mpfr_mul(r28381, r28380, r28361, MPFR_RNDN);
        mpfr_mul(r28382, r28362, r28346, MPFR_RNDN);
        mpfr_mul(r28383, r28381, r28382, MPFR_RNDN);
        mpfr_add(r28384, r28379, r28383, MPFR_RNDN);
        mpfr_div(r28385, r28364, r28384, MPFR_RNDN);
        mpfr_mul(r28386, r28385, r28345, MPFR_RNDN);
        return mpfr_get_d(r28386, MPFR_RNDN);
}

static mpfr_t r28387, r28388, r28389, r28390, r28391, r28392, r28393, r28394, r28395, r28396, r28397, r28398, r28399, r28400, r28401, r28402, r28403, r28404, r28405, r28406, r28407, r28408, r28409, r28410, r28411, r28412, r28413, r28414, r28415, r28416, r28417, r28418, r28419, r28420, r28421, r28422, r28423, r28424, r28425, r28426, r28427, r28428, r28429, r28430, r28431, r28432, r28433, r28434, r28435, r28436, r28437, r28438, r28439, r28440, r28441, r28442, r28443, r28444, r28445, r28446, r28447, r28448, r28449, r28450, r28451, r28452, r28453, r28454, r28455, r28456;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(592);
        mpfr_init(r28387);
        mpfr_init_set_str(r28388, "-443075727.0630727", 10, MPFR_RNDN);
        mpfr_init(r28389);
        mpfr_init_set_str(r28390, "745.7862626327901", 10, MPFR_RNDN);
        mpfr_init(r28391);
        mpfr_init(r28392);
        mpfr_init(r28393);
        mpfr_init_set_str(r28394, "0.2514179000665375", 10, MPFR_RNDN);
        mpfr_init_set_str(r28395, "4", 10, MPFR_RNDN);
        mpfr_init(r28396);
        mpfr_init(r28397);
        mpfr_init_set_str(r28398, "0.15298196345929327", 10, MPFR_RNDN);
        mpfr_init_set_str(r28399, "6", 10, MPFR_RNDN);
        mpfr_init(r28400);
        mpfr_init(r28401);
        mpfr_init(r28402);
        mpfr_init_set_str(r28403, "0.5", 10, MPFR_RNDN);
        mpfr_init(r28404);
        mpfr_init(r28405);
        mpfr_init(r28406);
        mpfr_init_set_str(r28407, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init(r28408);
        mpfr_init(r28409);
        mpfr_init_set_str(r28410, "3", 10, MPFR_RNDN);
        mpfr_init_set_str(r28411, "1", 10, MPFR_RNDN);
        mpfr_init(r28412);
        mpfr_init(r28413);
        mpfr_init(r28414);
        mpfr_init_set_str(r28415, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r28416);
        mpfr_init(r28417);
        mpfr_init(r28418);
        mpfr_init_set_str(r28419, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r28420);
        mpfr_init(r28421);
        mpfr_init(r28422);
        mpfr_init_set_str(r28423, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init_set_str(r28424, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r28425);
        mpfr_init(r28426);
        mpfr_init(r28427);
        mpfr_init(r28428);
        mpfr_init_set_str(r28429, "2", 10, MPFR_RNDN);
        mpfr_init(r28430);
        mpfr_init(r28431);
        mpfr_init(r28432);
        mpfr_init(r28433);
        mpfr_init(r28434);
        mpfr_init(r28435);
        mpfr_init_set_str(r28436, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r28437);
        mpfr_init(r28438);
        mpfr_init_set_str(r28439, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init_set_str(r28440, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r28441);
        mpfr_init(r28442);
        mpfr_init(r28443);
        mpfr_init(r28444);
        mpfr_init_set_str(r28445, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r28446);
        mpfr_init(r28447);
        mpfr_init_set_str(r28448, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r28449);
        mpfr_init(r28450);
        mpfr_init(r28451);
        mpfr_init(r28452);
        mpfr_init(r28453);
        mpfr_init(r28454);
        mpfr_init(r28455);
        mpfr_init(r28456);
}

double f_fm(double x) {
        mpfr_set_d(r28387, x, MPFR_RNDN);
        ;
        mpfr_set_si(r28389, mpfr_cmp(r28387, r28388) <= 0, MPFR_RNDN);
        ;
        mpfr_set_si(r28391, mpfr_cmp(r28387, r28390) <= 0, MPFR_RNDN);
        mpfr_set_si(r28392, !mpfr_get_si(r28391, MPFR_RNDN), MPFR_RNDN);
        mpfr_set_si(r28393, mpfr_get_si(r28389, MPFR_RNDN) || mpfr_get_si(r28392, MPFR_RNDN), MPFR_RNDN);
        ;
        ;
        mpfr_pow(r28396, r28387, r28395, MPFR_RNDN);
        mpfr_div(r28397, r28394, r28396, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r28400, r28387, r28399, MPFR_RNDN);
        mpfr_div(r28401, r28398, r28400, MPFR_RNDN);
        mpfr_add(r28402, r28397, r28401, MPFR_RNDN);
        ;
        mpfr_div(r28404, r28403, r28387, MPFR_RNDN);
        mpfr_fma(r28405, r28402, r28387, r28404, MPFR_RNDN);
        mpfr_mul(r28406, r28387, r28387, MPFR_RNDN);
        ;
        mpfr_neg(r28408, r28407, MPFR_RNDN);
        mpfr_mul(r28409, r28406, r28408, MPFR_RNDN);
        ;
        ;
        mpfr_add(r28412, r28410, r28411, MPFR_RNDN);
        mpfr_pow(r28413, r28406, r28412, MPFR_RNDN);
        mpfr_mul(r28414, r28409, r28413, MPFR_RNDN);
        ;
        mpfr_mul(r28416, r28415, r28406, MPFR_RNDN);
        mpfr_mul(r28417, r28406, r28406, MPFR_RNDN);
        mpfr_pow(r28418, r28387, r28410, MPFR_RNDN);
        ;
        mpfr_mul(r28420, r28387, r28419, MPFR_RNDN);
        mpfr_mul(r28421, r28418, r28420, MPFR_RNDN);
        mpfr_fma(r28422, r28416, r28417, r28421, MPFR_RNDN);
        ;
        ;
        mpfr_fma(r28425, r28406, r28424, r28411, MPFR_RNDN);
        mpfr_fma(r28426, r28413, r28423, r28425, MPFR_RNDN);
        mpfr_add(r28427, r28422, r28426, MPFR_RNDN);
        mpfr_sub(r28428, r28414, r28427, MPFR_RNDN);
        ;
        mpfr_mul(r28430, r28429, r28407, MPFR_RNDN);
        mpfr_mul(r28431, r28430, r28406, MPFR_RNDN);
        mpfr_mul(r28432, r28431, r28417, MPFR_RNDN);
        mpfr_neg(r28433, r28406, MPFR_RNDN);
        mpfr_mul(r28434, r28417, r28433, MPFR_RNDN);
        mpfr_mul(r28435, r28432, r28434, MPFR_RNDN);
        ;
        mpfr_mul(r28437, r28406, r28436, MPFR_RNDN);
        mpfr_mul(r28438, r28417, r28437, MPFR_RNDN);
        ;
        ;
        mpfr_mul(r28441, r28440, r28387, MPFR_RNDN);
        mpfr_fma(r28442, r28441, r28387, r28411, MPFR_RNDN);
        mpfr_fma(r28443, r28439, r28417, r28442, MPFR_RNDN);
        mpfr_fma(r28444, r28438, r28417, r28443, MPFR_RNDN);
        ;
        mpfr_mul(r28446, r28445, r28406, MPFR_RNDN);
        mpfr_mul(r28447, r28417, r28446, MPFR_RNDN);
        ;
        mpfr_mul(r28449, r28406, r28448, MPFR_RNDN);
        mpfr_mul(r28450, r28417, r28449, MPFR_RNDN);
        mpfr_fma(r28451, r28406, r28447, r28450, MPFR_RNDN);
        mpfr_add(r28452, r28444, r28451, MPFR_RNDN);
        mpfr_sub(r28453, r28435, r28452, MPFR_RNDN);
        mpfr_div(r28454, r28428, r28453, MPFR_RNDN);
        mpfr_mul(r28455, r28387, r28454, MPFR_RNDN);
        if (mpfr_get_si(r28393, MPFR_RNDN)) { mpfr_set(r28456, r28405, MPFR_RNDN); } else { mpfr_set(r28456, r28455, MPFR_RNDN); };
        return mpfr_get_d(r28456, MPFR_RNDN);
}

static mpfr_t r28457, r28458, r28459, r28460, r28461, r28462, r28463, r28464, r28465, r28466, r28467, r28468, r28469, r28470, r28471, r28472, r28473, r28474, r28475, r28476, r28477, r28478, r28479, r28480, r28481, r28482, r28483, r28484, r28485, r28486, r28487, r28488, r28489, r28490, r28491, r28492, r28493, r28494, r28495, r28496, r28497, r28498, r28499, r28500, r28501, r28502, r28503, r28504, r28505, r28506, r28507, r28508, r28509, r28510, r28511, r28512, r28513, r28514, r28515, r28516, r28517, r28518, r28519, r28520, r28521, r28522, r28523, r28524, r28525, r28526;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(592);
        mpfr_init(r28457);
        mpfr_init_set_str(r28458, "-443075727.0630727", 10, MPFR_RNDN);
        mpfr_init(r28459);
        mpfr_init_set_str(r28460, "745.7862626327901", 10, MPFR_RNDN);
        mpfr_init(r28461);
        mpfr_init(r28462);
        mpfr_init(r28463);
        mpfr_init_set_str(r28464, "0.2514179000665375", 10, MPFR_RNDN);
        mpfr_init_set_str(r28465, "4", 10, MPFR_RNDN);
        mpfr_init(r28466);
        mpfr_init(r28467);
        mpfr_init_set_str(r28468, "0.15298196345929327", 10, MPFR_RNDN);
        mpfr_init_set_str(r28469, "6", 10, MPFR_RNDN);
        mpfr_init(r28470);
        mpfr_init(r28471);
        mpfr_init(r28472);
        mpfr_init_set_str(r28473, "0.5", 10, MPFR_RNDN);
        mpfr_init(r28474);
        mpfr_init(r28475);
        mpfr_init(r28476);
        mpfr_init_set_str(r28477, "0.0001789971", 10, MPFR_RNDN);
        mpfr_init(r28478);
        mpfr_init(r28479);
        mpfr_init_set_str(r28480, "3", 10, MPFR_RNDN);
        mpfr_init_set_str(r28481, "1", 10, MPFR_RNDN);
        mpfr_init(r28482);
        mpfr_init(r28483);
        mpfr_init(r28484);
        mpfr_init_set_str(r28485, "0.0072644182", 10, MPFR_RNDN);
        mpfr_init(r28486);
        mpfr_init(r28487);
        mpfr_init(r28488);
        mpfr_init_set_str(r28489, "0.0424060604", 10, MPFR_RNDN);
        mpfr_init(r28490);
        mpfr_init(r28491);
        mpfr_init(r28492);
        mpfr_init_set_str(r28493, "0.0005064034", 10, MPFR_RNDN);
        mpfr_init_set_str(r28494, "0.1049934947", 10, MPFR_RNDN);
        mpfr_init(r28495);
        mpfr_init(r28496);
        mpfr_init(r28497);
        mpfr_init(r28498);
        mpfr_init_set_str(r28499, "2", 10, MPFR_RNDN);
        mpfr_init(r28500);
        mpfr_init(r28501);
        mpfr_init(r28502);
        mpfr_init(r28503);
        mpfr_init(r28504);
        mpfr_init(r28505);
        mpfr_init_set_str(r28506, "0.0008327945", 10, MPFR_RNDN);
        mpfr_init(r28507);
        mpfr_init(r28508);
        mpfr_init_set_str(r28509, "0.2909738639", 10, MPFR_RNDN);
        mpfr_init_set_str(r28510, "0.7715471019", 10, MPFR_RNDN);
        mpfr_init(r28511);
        mpfr_init(r28512);
        mpfr_init(r28513);
        mpfr_init(r28514);
        mpfr_init_set_str(r28515, "0.0140005442", 10, MPFR_RNDN);
        mpfr_init(r28516);
        mpfr_init(r28517);
        mpfr_init_set_str(r28518, "0.0694555761", 10, MPFR_RNDN);
        mpfr_init(r28519);
        mpfr_init(r28520);
        mpfr_init(r28521);
        mpfr_init(r28522);
        mpfr_init(r28523);
        mpfr_init(r28524);
        mpfr_init(r28525);
        mpfr_init(r28526);
}

double f_dm(double x) {
        mpfr_set_d(r28457, x, MPFR_RNDN);
        ;
        mpfr_set_si(r28459, mpfr_cmp(r28457, r28458) <= 0, MPFR_RNDN);
        ;
        mpfr_set_si(r28461, mpfr_cmp(r28457, r28460) <= 0, MPFR_RNDN);
        mpfr_set_si(r28462, !mpfr_get_si(r28461, MPFR_RNDN), MPFR_RNDN);
        mpfr_set_si(r28463, mpfr_get_si(r28459, MPFR_RNDN) || mpfr_get_si(r28462, MPFR_RNDN), MPFR_RNDN);
        ;
        ;
        mpfr_pow(r28466, r28457, r28465, MPFR_RNDN);
        mpfr_div(r28467, r28464, r28466, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r28470, r28457, r28469, MPFR_RNDN);
        mpfr_div(r28471, r28468, r28470, MPFR_RNDN);
        mpfr_add(r28472, r28467, r28471, MPFR_RNDN);
        ;
        mpfr_div(r28474, r28473, r28457, MPFR_RNDN);
        mpfr_fma(r28475, r28472, r28457, r28474, MPFR_RNDN);
        mpfr_mul(r28476, r28457, r28457, MPFR_RNDN);
        ;
        mpfr_neg(r28478, r28477, MPFR_RNDN);
        mpfr_mul(r28479, r28476, r28478, MPFR_RNDN);
        ;
        ;
        mpfr_add(r28482, r28480, r28481, MPFR_RNDN);
        mpfr_pow(r28483, r28476, r28482, MPFR_RNDN);
        mpfr_mul(r28484, r28479, r28483, MPFR_RNDN);
        ;
        mpfr_mul(r28486, r28485, r28476, MPFR_RNDN);
        mpfr_mul(r28487, r28476, r28476, MPFR_RNDN);
        mpfr_pow(r28488, r28457, r28480, MPFR_RNDN);
        ;
        mpfr_mul(r28490, r28457, r28489, MPFR_RNDN);
        mpfr_mul(r28491, r28488, r28490, MPFR_RNDN);
        mpfr_fma(r28492, r28486, r28487, r28491, MPFR_RNDN);
        ;
        ;
        mpfr_fma(r28495, r28476, r28494, r28481, MPFR_RNDN);
        mpfr_fma(r28496, r28483, r28493, r28495, MPFR_RNDN);
        mpfr_add(r28497, r28492, r28496, MPFR_RNDN);
        mpfr_sub(r28498, r28484, r28497, MPFR_RNDN);
        ;
        mpfr_mul(r28500, r28499, r28477, MPFR_RNDN);
        mpfr_mul(r28501, r28500, r28476, MPFR_RNDN);
        mpfr_mul(r28502, r28501, r28487, MPFR_RNDN);
        mpfr_neg(r28503, r28476, MPFR_RNDN);
        mpfr_mul(r28504, r28487, r28503, MPFR_RNDN);
        mpfr_mul(r28505, r28502, r28504, MPFR_RNDN);
        ;
        mpfr_mul(r28507, r28476, r28506, MPFR_RNDN);
        mpfr_mul(r28508, r28487, r28507, MPFR_RNDN);
        ;
        ;
        mpfr_mul(r28511, r28510, r28457, MPFR_RNDN);
        mpfr_fma(r28512, r28511, r28457, r28481, MPFR_RNDN);
        mpfr_fma(r28513, r28509, r28487, r28512, MPFR_RNDN);
        mpfr_fma(r28514, r28508, r28487, r28513, MPFR_RNDN);
        ;
        mpfr_mul(r28516, r28515, r28476, MPFR_RNDN);
        mpfr_mul(r28517, r28487, r28516, MPFR_RNDN);
        ;
        mpfr_mul(r28519, r28476, r28518, MPFR_RNDN);
        mpfr_mul(r28520, r28487, r28519, MPFR_RNDN);
        mpfr_fma(r28521, r28476, r28517, r28520, MPFR_RNDN);
        mpfr_add(r28522, r28514, r28521, MPFR_RNDN);
        mpfr_sub(r28523, r28505, r28522, MPFR_RNDN);
        mpfr_div(r28524, r28498, r28523, MPFR_RNDN);
        mpfr_mul(r28525, r28457, r28524, MPFR_RNDN);
        if (mpfr_get_si(r28463, MPFR_RNDN)) { mpfr_set(r28526, r28475, MPFR_RNDN); } else { mpfr_set(r28526, r28525, MPFR_RNDN); };
        return mpfr_get_d(r28526, MPFR_RNDN);
}

