#include <tgmath.h>
#include <gmp.h>
#include <mpfr.h>
#include <stdio.h>
#include <stdbool.h>

char *name = "Jmat.Real.gamma, branch z less than 0.5";

double f_if(float z) {
        float r26868 = atan2(1.0, 0.0);
        float r26869 = z;
        float r26870 = r26868 * r26869;
        float r26871 = sin(r26870);
        float r26872 = r26868 / r26871;
        float r26873 = 2;
        float r26874 = r26868 * r26873;
        float r26875 = sqrt(r26874);
        float r26876 = 1;
        float r26877 = r26876 - r26869;
        float r26878 = r26877 - r26876;
        float r26879 = 7;
        float r26880 = r26878 + r26879;
        float r26881 = 0.5;
        float r26882 = r26880 + r26881;
        float r26883 = r26878 + r26881;
        float r26884 = pow(r26882, r26883);
        float r26885 = r26875 * r26884;
        float r26886 = -r26882;
        float r26887 = exp(r26886);
        float r26888 = r26885 * r26887;
        float r26889 = 0.9999999999998099;
        float r26890 = 676.5203681218851;
        float r26891 = r26878 + r26876;
        float r26892 = r26890 / r26891;
        float r26893 = r26889 + r26892;
        float r26894 = -1259.1392167224028;
        float r26895 = r26878 + r26873;
        float r26896 = r26894 / r26895;
        float r26897 = r26893 + r26896;
        float r26898 = 771.3234287776531;
        float r26899 = 3;
        float r26900 = r26878 + r26899;
        float r26901 = r26898 / r26900;
        float r26902 = r26897 + r26901;
        float r26903 = -176.6150291621406;
        float r26904 = 4;
        float r26905 = r26878 + r26904;
        float r26906 = r26903 / r26905;
        float r26907 = r26902 + r26906;
        float r26908 = 12.507343278686905;
        float r26909 = 5;
        float r26910 = r26878 + r26909;
        float r26911 = r26908 / r26910;
        float r26912 = r26907 + r26911;
        float r26913 = -0.13857109526572012;
        float r26914 = 6;
        float r26915 = r26878 + r26914;
        float r26916 = r26913 / r26915;
        float r26917 = r26912 + r26916;
        float r26918 = 9.984369578019572e-06;
        float r26919 = r26918 / r26880;
        float r26920 = r26917 + r26919;
        float r26921 = 1.5056327351493116e-07;
        float r26922 = 8;
        float r26923 = r26878 + r26922;
        float r26924 = r26921 / r26923;
        float r26925 = r26920 + r26924;
        float r26926 = r26888 * r26925;
        float r26927 = r26872 * r26926;
        return r26927;
}

double f_id(double z) {
        double r26928 = atan2(1.0, 0.0);
        double r26929 = z;
        double r26930 = r26928 * r26929;
        double r26931 = sin(r26930);
        double r26932 = r26928 / r26931;
        double r26933 = 2;
        double r26934 = r26928 * r26933;
        double r26935 = sqrt(r26934);
        double r26936 = 1;
        double r26937 = r26936 - r26929;
        double r26938 = r26937 - r26936;
        double r26939 = 7;
        double r26940 = r26938 + r26939;
        double r26941 = 0.5;
        double r26942 = r26940 + r26941;
        double r26943 = r26938 + r26941;
        double r26944 = pow(r26942, r26943);
        double r26945 = r26935 * r26944;
        double r26946 = -r26942;
        double r26947 = exp(r26946);
        double r26948 = r26945 * r26947;
        double r26949 = 0.9999999999998099;
        double r26950 = 676.5203681218851;
        double r26951 = r26938 + r26936;
        double r26952 = r26950 / r26951;
        double r26953 = r26949 + r26952;
        double r26954 = -1259.1392167224028;
        double r26955 = r26938 + r26933;
        double r26956 = r26954 / r26955;
        double r26957 = r26953 + r26956;
        double r26958 = 771.3234287776531;
        double r26959 = 3;
        double r26960 = r26938 + r26959;
        double r26961 = r26958 / r26960;
        double r26962 = r26957 + r26961;
        double r26963 = -176.6150291621406;
        double r26964 = 4;
        double r26965 = r26938 + r26964;
        double r26966 = r26963 / r26965;
        double r26967 = r26962 + r26966;
        double r26968 = 12.507343278686905;
        double r26969 = 5;
        double r26970 = r26938 + r26969;
        double r26971 = r26968 / r26970;
        double r26972 = r26967 + r26971;
        double r26973 = -0.13857109526572012;
        double r26974 = 6;
        double r26975 = r26938 + r26974;
        double r26976 = r26973 / r26975;
        double r26977 = r26972 + r26976;
        double r26978 = 9.984369578019572e-06;
        double r26979 = r26978 / r26940;
        double r26980 = r26977 + r26979;
        double r26981 = 1.5056327351493116e-07;
        double r26982 = 8;
        double r26983 = r26938 + r26982;
        double r26984 = r26981 / r26983;
        double r26985 = r26980 + r26984;
        double r26986 = r26948 * r26985;
        double r26987 = r26932 * r26986;
        return r26987;
}


double f_of(float z) {
        float r26988 = -176.6150291621406;
        float r26989 = 1;
        float r26990 = z;
        float r26991 = r26989 - r26990;
        float r26992 = 4;
        float r26993 = r26989 - r26992;
        float r26994 = r26991 - r26993;
        float r26995 = r26988 / r26994;
        float r26996 = 676.5203681218851;
        float r26997 = r26996 / r26991;
        float r26998 = 0.9999999999998099;
        float r26999 = r26997 + r26998;
        float r27000 = r26995 + r26999;
        float r27001 = -1259.1392167224028;
        float r27002 = 2;
        float r27003 = r26989 + r27002;
        float r27004 = r26989 + r26990;
        float r27005 = r27003 - r27004;
        float r27006 = r27001 / r27005;
        float r27007 = 771.3234287776531;
        float r27008 = 3;
        float r27009 = r27008 + r26989;
        float r27010 = r27009 - r27004;
        float r27011 = r27007 / r27010;
        float r27012 = r27006 + r27011;
        float r27013 = r27000 + r27012;
        float r27014 = -0.13857109526572012;
        float r27015 = 6;
        float r27016 = r27015 + r26989;
        float r27017 = r27016 - r27004;
        float r27018 = r27014 / r27017;
        float r27019 = 12.507343278686905;
        float r27020 = 5;
        float r27021 = r26989 - r27020;
        float r27022 = r26991 - r27021;
        float r27023 = r27019 / r27022;
        float r27024 = r27018 + r27023;
        float r27025 = 1.5056327351493116e-07;
        float r27026 = 8;
        float r27027 = r26989 + r27026;
        float r27028 = r27027 - r27004;
        float r27029 = r27025 / r27028;
        float r27030 = 9.984369578019572e-06;
        float r27031 = 7;
        float r27032 = r26989 - r27031;
        float r27033 = r26991 - r27032;
        float r27034 = r27030 / r27033;
        float r27035 = r27029 + r27034;
        float r27036 = r27024 + r27035;
        float r27037 = r27013 + r27036;
        float r27038 = atan2(1.0, 0.0);
        float r27039 = r26990 * r27038;
        float r27040 = sin(r27039);
        float r27041 = r27038 / r27040;
        float r27042 = r27037 * r27041;
        float r27043 = 0.5;
        float r27044 = r27043 + r27033;
        float r27045 = r26989 - r27043;
        float r27046 = r26991 - r27045;
        float r27047 = pow(r27044, r27046);
        float r27048 = r27002 * r27038;
        float r27049 = sqrt(r27048);
        float r27050 = r27049 * r27048;
        float r27051 = cbrt(r27050);
        float r27052 = r27047 * r27051;
        float r27053 = -r27044;
        float r27054 = exp(r27053);
        float r27055 = r27052 * r27054;
        float r27056 = r27042 * r27055;
        return r27056;
}

double f_od(double z) {
        double r27057 = -176.6150291621406;
        double r27058 = 1;
        double r27059 = z;
        double r27060 = r27058 - r27059;
        double r27061 = 4;
        double r27062 = r27058 - r27061;
        double r27063 = r27060 - r27062;
        double r27064 = r27057 / r27063;
        double r27065 = 676.5203681218851;
        double r27066 = r27065 / r27060;
        double r27067 = 0.9999999999998099;
        double r27068 = r27066 + r27067;
        double r27069 = r27064 + r27068;
        double r27070 = -1259.1392167224028;
        double r27071 = 2;
        double r27072 = r27058 + r27071;
        double r27073 = r27058 + r27059;
        double r27074 = r27072 - r27073;
        double r27075 = r27070 / r27074;
        double r27076 = 771.3234287776531;
        double r27077 = 3;
        double r27078 = r27077 + r27058;
        double r27079 = r27078 - r27073;
        double r27080 = r27076 / r27079;
        double r27081 = r27075 + r27080;
        double r27082 = r27069 + r27081;
        double r27083 = -0.13857109526572012;
        double r27084 = 6;
        double r27085 = r27084 + r27058;
        double r27086 = r27085 - r27073;
        double r27087 = r27083 / r27086;
        double r27088 = 12.507343278686905;
        double r27089 = 5;
        double r27090 = r27058 - r27089;
        double r27091 = r27060 - r27090;
        double r27092 = r27088 / r27091;
        double r27093 = r27087 + r27092;
        double r27094 = 1.5056327351493116e-07;
        double r27095 = 8;
        double r27096 = r27058 + r27095;
        double r27097 = r27096 - r27073;
        double r27098 = r27094 / r27097;
        double r27099 = 9.984369578019572e-06;
        double r27100 = 7;
        double r27101 = r27058 - r27100;
        double r27102 = r27060 - r27101;
        double r27103 = r27099 / r27102;
        double r27104 = r27098 + r27103;
        double r27105 = r27093 + r27104;
        double r27106 = r27082 + r27105;
        double r27107 = atan2(1.0, 0.0);
        double r27108 = r27059 * r27107;
        double r27109 = sin(r27108);
        double r27110 = r27107 / r27109;
        double r27111 = r27106 * r27110;
        double r27112 = 0.5;
        double r27113 = r27112 + r27102;
        double r27114 = r27058 - r27112;
        double r27115 = r27060 - r27114;
        double r27116 = pow(r27113, r27115);
        double r27117 = r27071 * r27107;
        double r27118 = sqrt(r27117);
        double r27119 = r27118 * r27117;
        double r27120 = cbrt(r27119);
        double r27121 = r27116 * r27120;
        double r27122 = -r27113;
        double r27123 = exp(r27122);
        double r27124 = r27121 * r27123;
        double r27125 = r27111 * r27124;
        return r27125;
}

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 r27126, r27127, r27128, r27129, r27130, r27131, r27132, r27133, r27134, r27135, r27136, r27137, r27138, r27139, r27140, r27141, r27142, r27143, r27144, r27145, r27146, r27147, r27148, r27149, r27150, r27151, r27152, r27153, r27154, r27155, r27156, r27157, r27158, r27159, r27160, r27161, r27162, r27163, r27164, r27165, r27166, r27167, r27168, r27169, r27170, r27171, r27172, r27173, r27174, r27175, r27176, r27177, r27178, r27179, r27180, r27181, r27182, r27183, r27184, r27185;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(592);
        mpfr_init(r27126);
        mpfr_init(r27127);
        mpfr_init(r27128);
        mpfr_init(r27129);
        mpfr_init(r27130);
        mpfr_init_set_str(r27131, "2", 10, MPFR_RNDN);
        mpfr_init(r27132);
        mpfr_init(r27133);
        mpfr_init_set_str(r27134, "1", 10, MPFR_RNDN);
        mpfr_init(r27135);
        mpfr_init(r27136);
        mpfr_init_set_str(r27137, "7", 10, MPFR_RNDN);
        mpfr_init(r27138);
        mpfr_init_set_str(r27139, "0.5", 10, MPFR_RNDN);
        mpfr_init(r27140);
        mpfr_init(r27141);
        mpfr_init(r27142);
        mpfr_init(r27143);
        mpfr_init(r27144);
        mpfr_init(r27145);
        mpfr_init(r27146);
        mpfr_init_set_str(r27147, "0.9999999999998099", 10, MPFR_RNDN);
        mpfr_init_set_str(r27148, "676.5203681218851", 10, MPFR_RNDN);
        mpfr_init(r27149);
        mpfr_init(r27150);
        mpfr_init(r27151);
        mpfr_init_set_str(r27152, "-1259.1392167224028", 10, MPFR_RNDN);
        mpfr_init(r27153);
        mpfr_init(r27154);
        mpfr_init(r27155);
        mpfr_init_set_str(r27156, "771.3234287776531", 10, MPFR_RNDN);
        mpfr_init_set_str(r27157, "3", 10, MPFR_RNDN);
        mpfr_init(r27158);
        mpfr_init(r27159);
        mpfr_init(r27160);
        mpfr_init_set_str(r27161, "-176.6150291621406", 10, MPFR_RNDN);
        mpfr_init_set_str(r27162, "4", 10, MPFR_RNDN);
        mpfr_init(r27163);
        mpfr_init(r27164);
        mpfr_init(r27165);
        mpfr_init_set_str(r27166, "12.507343278686905", 10, MPFR_RNDN);
        mpfr_init_set_str(r27167, "5", 10, MPFR_RNDN);
        mpfr_init(r27168);
        mpfr_init(r27169);
        mpfr_init(r27170);
        mpfr_init_set_str(r27171, "-0.13857109526572012", 10, MPFR_RNDN);
        mpfr_init_set_str(r27172, "6", 10, MPFR_RNDN);
        mpfr_init(r27173);
        mpfr_init(r27174);
        mpfr_init(r27175);
        mpfr_init_set_str(r27176, "9.984369578019572e-06", 10, MPFR_RNDN);
        mpfr_init(r27177);
        mpfr_init(r27178);
        mpfr_init_set_str(r27179, "1.5056327351493116e-07", 10, MPFR_RNDN);
        mpfr_init_set_str(r27180, "8", 10, MPFR_RNDN);
        mpfr_init(r27181);
        mpfr_init(r27182);
        mpfr_init(r27183);
        mpfr_init(r27184);
        mpfr_init(r27185);
}

double f_im(double z) {
        mpfr_const_pi(r27126, MPFR_RNDN);
        mpfr_set_d(r27127, z, MPFR_RNDN);
        mpfr_mul(r27128, r27126, r27127, MPFR_RNDN);
        mpfr_sin(r27129, r27128, MPFR_RNDN);
        mpfr_div(r27130, r27126, r27129, MPFR_RNDN);
        ;
        mpfr_mul(r27132, r27126, r27131, MPFR_RNDN);
        mpfr_sqrt(r27133, r27132, MPFR_RNDN);
        ;
        mpfr_sub(r27135, r27134, r27127, MPFR_RNDN);
        mpfr_sub(r27136, r27135, r27134, MPFR_RNDN);
        ;
        mpfr_add(r27138, r27136, r27137, MPFR_RNDN);
        ;
        mpfr_add(r27140, r27138, r27139, MPFR_RNDN);
        mpfr_add(r27141, r27136, r27139, MPFR_RNDN);
        mpfr_pow(r27142, r27140, r27141, MPFR_RNDN);
        mpfr_mul(r27143, r27133, r27142, MPFR_RNDN);
        mpfr_neg(r27144, r27140, MPFR_RNDN);
        mpfr_exp(r27145, r27144, MPFR_RNDN);
        mpfr_mul(r27146, r27143, r27145, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27149, r27136, r27134, MPFR_RNDN);
        mpfr_div(r27150, r27148, r27149, MPFR_RNDN);
        mpfr_add(r27151, r27147, r27150, MPFR_RNDN);
        ;
        mpfr_add(r27153, r27136, r27131, MPFR_RNDN);
        mpfr_div(r27154, r27152, r27153, MPFR_RNDN);
        mpfr_add(r27155, r27151, r27154, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27158, r27136, r27157, MPFR_RNDN);
        mpfr_div(r27159, r27156, r27158, MPFR_RNDN);
        mpfr_add(r27160, r27155, r27159, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27163, r27136, r27162, MPFR_RNDN);
        mpfr_div(r27164, r27161, r27163, MPFR_RNDN);
        mpfr_add(r27165, r27160, r27164, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27168, r27136, r27167, MPFR_RNDN);
        mpfr_div(r27169, r27166, r27168, MPFR_RNDN);
        mpfr_add(r27170, r27165, r27169, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27173, r27136, r27172, MPFR_RNDN);
        mpfr_div(r27174, r27171, r27173, MPFR_RNDN);
        mpfr_add(r27175, r27170, r27174, MPFR_RNDN);
        ;
        mpfr_div(r27177, r27176, r27138, MPFR_RNDN);
        mpfr_add(r27178, r27175, r27177, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27181, r27136, r27180, MPFR_RNDN);
        mpfr_div(r27182, r27179, r27181, MPFR_RNDN);
        mpfr_add(r27183, r27178, r27182, MPFR_RNDN);
        mpfr_mul(r27184, r27146, r27183, MPFR_RNDN);
        mpfr_mul(r27185, r27130, r27184, MPFR_RNDN);
        return mpfr_get_d(r27185, MPFR_RNDN);
}

static mpfr_t r27186, r27187, r27188, r27189, r27190, r27191, r27192, r27193, r27194, r27195, r27196, r27197, r27198, r27199, r27200, r27201, r27202, r27203, r27204, r27205, r27206, r27207, r27208, r27209, r27210, r27211, r27212, r27213, r27214, r27215, r27216, r27217, r27218, r27219, r27220, r27221, r27222, r27223, r27224, r27225, r27226, r27227, r27228, r27229, r27230, r27231, r27232, r27233, r27234, r27235, r27236, r27237, r27238, r27239, r27240, r27241, r27242, r27243, r27244, r27245, r27246, r27247, r27248, r27249, r27250, r27251, r27252, r27253, r27254;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(592);
        mpfr_init_set_str(r27186, "-176.6150291621406", 10, MPFR_RNDN);
        mpfr_init_set_str(r27187, "1", 10, MPFR_RNDN);
        mpfr_init(r27188);
        mpfr_init(r27189);
        mpfr_init_set_str(r27190, "4", 10, MPFR_RNDN);
        mpfr_init(r27191);
        mpfr_init(r27192);
        mpfr_init(r27193);
        mpfr_init_set_str(r27194, "676.5203681218851", 10, MPFR_RNDN);
        mpfr_init(r27195);
        mpfr_init_set_str(r27196, "0.9999999999998099", 10, MPFR_RNDN);
        mpfr_init(r27197);
        mpfr_init(r27198);
        mpfr_init_set_str(r27199, "-1259.1392167224028", 10, MPFR_RNDN);
        mpfr_init_set_str(r27200, "2", 10, MPFR_RNDN);
        mpfr_init(r27201);
        mpfr_init(r27202);
        mpfr_init(r27203);
        mpfr_init(r27204);
        mpfr_init_set_str(r27205, "771.3234287776531", 10, MPFR_RNDN);
        mpfr_init_set_str(r27206, "3", 10, MPFR_RNDN);
        mpfr_init(r27207);
        mpfr_init(r27208);
        mpfr_init(r27209);
        mpfr_init(r27210);
        mpfr_init(r27211);
        mpfr_init_set_str(r27212, "-0.13857109526572012", 10, MPFR_RNDN);
        mpfr_init_set_str(r27213, "6", 10, MPFR_RNDN);
        mpfr_init(r27214);
        mpfr_init(r27215);
        mpfr_init(r27216);
        mpfr_init_set_str(r27217, "12.507343278686905", 10, MPFR_RNDN);
        mpfr_init_set_str(r27218, "5", 10, MPFR_RNDN);
        mpfr_init(r27219);
        mpfr_init(r27220);
        mpfr_init(r27221);
        mpfr_init(r27222);
        mpfr_init_set_str(r27223, "1.5056327351493116e-07", 10, MPFR_RNDN);
        mpfr_init_set_str(r27224, "8", 10, MPFR_RNDN);
        mpfr_init(r27225);
        mpfr_init(r27226);
        mpfr_init(r27227);
        mpfr_init_set_str(r27228, "9.984369578019572e-06", 10, MPFR_RNDN);
        mpfr_init_set_str(r27229, "7", 10, MPFR_RNDN);
        mpfr_init(r27230);
        mpfr_init(r27231);
        mpfr_init(r27232);
        mpfr_init(r27233);
        mpfr_init(r27234);
        mpfr_init(r27235);
        mpfr_init(r27236);
        mpfr_init(r27237);
        mpfr_init(r27238);
        mpfr_init(r27239);
        mpfr_init(r27240);
        mpfr_init_set_str(r27241, "0.5", 10, MPFR_RNDN);
        mpfr_init(r27242);
        mpfr_init(r27243);
        mpfr_init(r27244);
        mpfr_init(r27245);
        mpfr_init(r27246);
        mpfr_init(r27247);
        mpfr_init(r27248);
        mpfr_init(r27249);
        mpfr_init(r27250);
        mpfr_init(r27251);
        mpfr_init(r27252);
        mpfr_init(r27253);
        mpfr_init(r27254);
}

double f_fm(double z) {
        ;
        ;
        mpfr_set_d(r27188, z, MPFR_RNDN);
        mpfr_sub(r27189, r27187, r27188, MPFR_RNDN);
        ;
        mpfr_sub(r27191, r27187, r27190, MPFR_RNDN);
        mpfr_sub(r27192, r27189, r27191, MPFR_RNDN);
        mpfr_div(r27193, r27186, r27192, MPFR_RNDN);
        ;
        mpfr_div(r27195, r27194, r27189, MPFR_RNDN);
        ;
        mpfr_add(r27197, r27195, r27196, MPFR_RNDN);
        mpfr_add(r27198, r27193, r27197, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27201, r27187, r27200, MPFR_RNDN);
        mpfr_add(r27202, r27187, r27188, MPFR_RNDN);
        mpfr_sub(r27203, r27201, r27202, MPFR_RNDN);
        mpfr_div(r27204, r27199, r27203, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27207, r27206, r27187, MPFR_RNDN);
        mpfr_sub(r27208, r27207, r27202, MPFR_RNDN);
        mpfr_div(r27209, r27205, r27208, MPFR_RNDN);
        mpfr_add(r27210, r27204, r27209, MPFR_RNDN);
        mpfr_add(r27211, r27198, r27210, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27214, r27213, r27187, MPFR_RNDN);
        mpfr_sub(r27215, r27214, r27202, MPFR_RNDN);
        mpfr_div(r27216, r27212, r27215, MPFR_RNDN);
        ;
        ;
        mpfr_sub(r27219, r27187, r27218, MPFR_RNDN);
        mpfr_sub(r27220, r27189, r27219, MPFR_RNDN);
        mpfr_div(r27221, r27217, r27220, MPFR_RNDN);
        mpfr_add(r27222, r27216, r27221, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27225, r27187, r27224, MPFR_RNDN);
        mpfr_sub(r27226, r27225, r27202, MPFR_RNDN);
        mpfr_div(r27227, r27223, r27226, MPFR_RNDN);
        ;
        ;
        mpfr_sub(r27230, r27187, r27229, MPFR_RNDN);
        mpfr_sub(r27231, r27189, r27230, MPFR_RNDN);
        mpfr_div(r27232, r27228, r27231, MPFR_RNDN);
        mpfr_add(r27233, r27227, r27232, MPFR_RNDN);
        mpfr_add(r27234, r27222, r27233, MPFR_RNDN);
        mpfr_add(r27235, r27211, r27234, MPFR_RNDN);
        mpfr_const_pi(r27236, MPFR_RNDN);
        mpfr_mul(r27237, r27188, r27236, MPFR_RNDN);
        mpfr_sin(r27238, r27237, MPFR_RNDN);
        mpfr_div(r27239, r27236, r27238, MPFR_RNDN);
        mpfr_mul(r27240, r27235, r27239, MPFR_RNDN);
        ;
        mpfr_add(r27242, r27241, r27231, MPFR_RNDN);
        mpfr_sub(r27243, r27187, r27241, MPFR_RNDN);
        mpfr_sub(r27244, r27189, r27243, MPFR_RNDN);
        mpfr_pow(r27245, r27242, r27244, MPFR_RNDN);
        mpfr_mul(r27246, r27200, r27236, MPFR_RNDN);
        mpfr_sqrt(r27247, r27246, MPFR_RNDN);
        mpfr_mul(r27248, r27247, r27246, MPFR_RNDN);
        mpfr_cbrt(r27249, r27248, MPFR_RNDN);
        mpfr_mul(r27250, r27245, r27249, MPFR_RNDN);
        mpfr_neg(r27251, r27242, MPFR_RNDN);
        mpfr_exp(r27252, r27251, MPFR_RNDN);
        mpfr_mul(r27253, r27250, r27252, MPFR_RNDN);
        mpfr_mul(r27254, r27240, r27253, MPFR_RNDN);
        return mpfr_get_d(r27254, MPFR_RNDN);
}

static mpfr_t r27255, r27256, r27257, r27258, r27259, r27260, r27261, r27262, r27263, r27264, r27265, r27266, r27267, r27268, r27269, r27270, r27271, r27272, r27273, r27274, r27275, r27276, r27277, r27278, r27279, r27280, r27281, r27282, r27283, r27284, r27285, r27286, r27287, r27288, r27289, r27290, r27291, r27292, r27293, r27294, r27295, r27296, r27297, r27298, r27299, r27300, r27301, r27302, r27303, r27304, r27305, r27306, r27307, r27308, r27309, r27310, r27311, r27312, r27313, r27314, r27315, r27316, r27317, r27318, r27319, r27320, r27321, r27322, r27323;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(592);
        mpfr_init_set_str(r27255, "-176.6150291621406", 10, MPFR_RNDN);
        mpfr_init_set_str(r27256, "1", 10, MPFR_RNDN);
        mpfr_init(r27257);
        mpfr_init(r27258);
        mpfr_init_set_str(r27259, "4", 10, MPFR_RNDN);
        mpfr_init(r27260);
        mpfr_init(r27261);
        mpfr_init(r27262);
        mpfr_init_set_str(r27263, "676.5203681218851", 10, MPFR_RNDN);
        mpfr_init(r27264);
        mpfr_init_set_str(r27265, "0.9999999999998099", 10, MPFR_RNDN);
        mpfr_init(r27266);
        mpfr_init(r27267);
        mpfr_init_set_str(r27268, "-1259.1392167224028", 10, MPFR_RNDN);
        mpfr_init_set_str(r27269, "2", 10, MPFR_RNDN);
        mpfr_init(r27270);
        mpfr_init(r27271);
        mpfr_init(r27272);
        mpfr_init(r27273);
        mpfr_init_set_str(r27274, "771.3234287776531", 10, MPFR_RNDN);
        mpfr_init_set_str(r27275, "3", 10, MPFR_RNDN);
        mpfr_init(r27276);
        mpfr_init(r27277);
        mpfr_init(r27278);
        mpfr_init(r27279);
        mpfr_init(r27280);
        mpfr_init_set_str(r27281, "-0.13857109526572012", 10, MPFR_RNDN);
        mpfr_init_set_str(r27282, "6", 10, MPFR_RNDN);
        mpfr_init(r27283);
        mpfr_init(r27284);
        mpfr_init(r27285);
        mpfr_init_set_str(r27286, "12.507343278686905", 10, MPFR_RNDN);
        mpfr_init_set_str(r27287, "5", 10, MPFR_RNDN);
        mpfr_init(r27288);
        mpfr_init(r27289);
        mpfr_init(r27290);
        mpfr_init(r27291);
        mpfr_init_set_str(r27292, "1.5056327351493116e-07", 10, MPFR_RNDN);
        mpfr_init_set_str(r27293, "8", 10, MPFR_RNDN);
        mpfr_init(r27294);
        mpfr_init(r27295);
        mpfr_init(r27296);
        mpfr_init_set_str(r27297, "9.984369578019572e-06", 10, MPFR_RNDN);
        mpfr_init_set_str(r27298, "7", 10, MPFR_RNDN);
        mpfr_init(r27299);
        mpfr_init(r27300);
        mpfr_init(r27301);
        mpfr_init(r27302);
        mpfr_init(r27303);
        mpfr_init(r27304);
        mpfr_init(r27305);
        mpfr_init(r27306);
        mpfr_init(r27307);
        mpfr_init(r27308);
        mpfr_init(r27309);
        mpfr_init_set_str(r27310, "0.5", 10, MPFR_RNDN);
        mpfr_init(r27311);
        mpfr_init(r27312);
        mpfr_init(r27313);
        mpfr_init(r27314);
        mpfr_init(r27315);
        mpfr_init(r27316);
        mpfr_init(r27317);
        mpfr_init(r27318);
        mpfr_init(r27319);
        mpfr_init(r27320);
        mpfr_init(r27321);
        mpfr_init(r27322);
        mpfr_init(r27323);
}

double f_dm(double z) {
        ;
        ;
        mpfr_set_d(r27257, z, MPFR_RNDN);
        mpfr_sub(r27258, r27256, r27257, MPFR_RNDN);
        ;
        mpfr_sub(r27260, r27256, r27259, MPFR_RNDN);
        mpfr_sub(r27261, r27258, r27260, MPFR_RNDN);
        mpfr_div(r27262, r27255, r27261, MPFR_RNDN);
        ;
        mpfr_div(r27264, r27263, r27258, MPFR_RNDN);
        ;
        mpfr_add(r27266, r27264, r27265, MPFR_RNDN);
        mpfr_add(r27267, r27262, r27266, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27270, r27256, r27269, MPFR_RNDN);
        mpfr_add(r27271, r27256, r27257, MPFR_RNDN);
        mpfr_sub(r27272, r27270, r27271, MPFR_RNDN);
        mpfr_div(r27273, r27268, r27272, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27276, r27275, r27256, MPFR_RNDN);
        mpfr_sub(r27277, r27276, r27271, MPFR_RNDN);
        mpfr_div(r27278, r27274, r27277, MPFR_RNDN);
        mpfr_add(r27279, r27273, r27278, MPFR_RNDN);
        mpfr_add(r27280, r27267, r27279, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27283, r27282, r27256, MPFR_RNDN);
        mpfr_sub(r27284, r27283, r27271, MPFR_RNDN);
        mpfr_div(r27285, r27281, r27284, MPFR_RNDN);
        ;
        ;
        mpfr_sub(r27288, r27256, r27287, MPFR_RNDN);
        mpfr_sub(r27289, r27258, r27288, MPFR_RNDN);
        mpfr_div(r27290, r27286, r27289, MPFR_RNDN);
        mpfr_add(r27291, r27285, r27290, MPFR_RNDN);
        ;
        ;
        mpfr_add(r27294, r27256, r27293, MPFR_RNDN);
        mpfr_sub(r27295, r27294, r27271, MPFR_RNDN);
        mpfr_div(r27296, r27292, r27295, MPFR_RNDN);
        ;
        ;
        mpfr_sub(r27299, r27256, r27298, MPFR_RNDN);
        mpfr_sub(r27300, r27258, r27299, MPFR_RNDN);
        mpfr_div(r27301, r27297, r27300, MPFR_RNDN);
        mpfr_add(r27302, r27296, r27301, MPFR_RNDN);
        mpfr_add(r27303, r27291, r27302, MPFR_RNDN);
        mpfr_add(r27304, r27280, r27303, MPFR_RNDN);
        mpfr_const_pi(r27305, MPFR_RNDN);
        mpfr_mul(r27306, r27257, r27305, MPFR_RNDN);
        mpfr_sin(r27307, r27306, MPFR_RNDN);
        mpfr_div(r27308, r27305, r27307, MPFR_RNDN);
        mpfr_mul(r27309, r27304, r27308, MPFR_RNDN);
        ;
        mpfr_add(r27311, r27310, r27300, MPFR_RNDN);
        mpfr_sub(r27312, r27256, r27310, MPFR_RNDN);
        mpfr_sub(r27313, r27258, r27312, MPFR_RNDN);
        mpfr_pow(r27314, r27311, r27313, MPFR_RNDN);
        mpfr_mul(r27315, r27269, r27305, MPFR_RNDN);
        mpfr_sqrt(r27316, r27315, MPFR_RNDN);
        mpfr_mul(r27317, r27316, r27315, MPFR_RNDN);
        mpfr_cbrt(r27318, r27317, MPFR_RNDN);
        mpfr_mul(r27319, r27314, r27318, MPFR_RNDN);
        mpfr_neg(r27320, r27311, MPFR_RNDN);
        mpfr_exp(r27321, r27320, MPFR_RNDN);
        mpfr_mul(r27322, r27319, r27321, MPFR_RNDN);
        mpfr_mul(r27323, r27309, r27322, MPFR_RNDN);
        return mpfr_get_d(r27323, MPFR_RNDN);
}

