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

char *name = "From Warwick Tucker's Validated Numerics";

double f_if() {
        float r21124 = 333.75;
        float r21125 = 33096;
        float r21126 = 6;
        float r21127 = pow(r21125, r21126);
        float r21128 = r21124 * r21127;
        float r21129 = 77617;
        float r21130 = r21129 * r21129;
        float r21131 = 11;
        float r21132 = r21131 * r21130;
        float r21133 = r21125 * r21125;
        float r21134 = r21132 * r21133;
        float r21135 = -r21127;
        float r21136 = r21134 + r21135;
        float r21137 = -121;
        float r21138 = 4;
        float r21139 = pow(r21125, r21138);
        float r21140 = r21137 * r21139;
        float r21141 = r21136 + r21140;
        float r21142 = -2;
        float r21143 = r21141 + r21142;
        float r21144 = r21130 * r21143;
        float r21145 = r21128 + r21144;
        float r21146 = 5.5;
        float r21147 = 8;
        float r21148 = pow(r21125, r21147);
        float r21149 = r21146 * r21148;
        float r21150 = r21145 + r21149;
        float r21151 = 2;
        float r21152 = r21151 * r21125;
        float r21153 = r21129 / r21152;
        float r21154 = r21150 + r21153;
        return r21154;
}

double f_id() {
        double r21155 = 333.75;
        double r21156 = 33096;
        double r21157 = 6;
        double r21158 = pow(r21156, r21157);
        double r21159 = r21155 * r21158;
        double r21160 = 77617;
        double r21161 = r21160 * r21160;
        double r21162 = 11;
        double r21163 = r21162 * r21161;
        double r21164 = r21156 * r21156;
        double r21165 = r21163 * r21164;
        double r21166 = -r21158;
        double r21167 = r21165 + r21166;
        double r21168 = -121;
        double r21169 = 4;
        double r21170 = pow(r21156, r21169);
        double r21171 = r21168 * r21170;
        double r21172 = r21167 + r21171;
        double r21173 = -2;
        double r21174 = r21172 + r21173;
        double r21175 = r21161 * r21174;
        double r21176 = r21159 + r21175;
        double r21177 = 5.5;
        double r21178 = 8;
        double r21179 = pow(r21156, r21178);
        double r21180 = r21177 * r21179;
        double r21181 = r21176 + r21180;
        double r21182 = 2;
        double r21183 = r21182 * r21156;
        double r21184 = r21160 / r21183;
        double r21185 = r21181 + r21184;
        return r21185;
}


double f_of() {
        float r21186 = 333.75;
        float r21187 = 33096;
        float r21188 = 6;
        float r21189 = pow(r21187, r21188);
        float r21190 = r21186 * r21189;
        float r21191 = log1p(r21190);
        float r21192 = expm1(r21191);
        float r21193 = 3;
        float r21194 = pow(r21192, r21193);
        float r21195 = 77617;
        float r21196 = r21195 * r21195;
        float r21197 = -121;
        float r21198 = 4;
        float r21199 = pow(r21187, r21198);
        float r21200 = -r21189;
        float r21201 = fma(r21197, r21199, r21200);
        float r21202 = 11;
        float r21203 = r21195 * r21187;
        float r21204 = r21203 * r21203;
        float r21205 = -2;
        float r21206 = fma(r21202, r21204, r21205);
        float r21207 = r21201 + r21206;
        float r21208 = 8;
        float r21209 = pow(r21187, r21208);
        float r21210 = 5.5;
        float r21211 = r21209 * r21210;
        float r21212 = fma(r21196, r21207, r21211);
        float r21213 = pow(r21212, r21193);
        float r21214 = r21194 + r21213;
        float r21215 = r21187 * r21195;
        float r21216 = r21215 * r21215;
        float r21217 = fma(r21202, r21216, r21205);
        float r21218 = r21217 + r21201;
        float r21219 = r21210 * r21209;
        float r21220 = fma(r21196, r21218, r21219);
        float r21221 = r21189 * r21186;
        float r21222 = r21220 - r21221;
        float r21223 = r21196 * r21218;
        float r21224 = r21223 + r21219;
        float r21225 = r21221 * r21221;
        float r21226 = fma(r21222, r21224, r21225);
        float r21227 = r21214 / r21226;
        float r21228 = 2;
        float r21229 = r21228 * r21187;
        float r21230 = r21195 / r21229;
        float r21231 = r21227 + r21230;
        return r21231;
}

double f_od() {
        double r21232 = 333.75;
        double r21233 = 33096;
        double r21234 = 6;
        double r21235 = pow(r21233, r21234);
        double r21236 = r21232 * r21235;
        double r21237 = log1p(r21236);
        double r21238 = expm1(r21237);
        double r21239 = 3;
        double r21240 = pow(r21238, r21239);
        double r21241 = 77617;
        double r21242 = r21241 * r21241;
        double r21243 = -121;
        double r21244 = 4;
        double r21245 = pow(r21233, r21244);
        double r21246 = -r21235;
        double r21247 = fma(r21243, r21245, r21246);
        double r21248 = 11;
        double r21249 = r21241 * r21233;
        double r21250 = r21249 * r21249;
        double r21251 = -2;
        double r21252 = fma(r21248, r21250, r21251);
        double r21253 = r21247 + r21252;
        double r21254 = 8;
        double r21255 = pow(r21233, r21254);
        double r21256 = 5.5;
        double r21257 = r21255 * r21256;
        double r21258 = fma(r21242, r21253, r21257);
        double r21259 = pow(r21258, r21239);
        double r21260 = r21240 + r21259;
        double r21261 = r21233 * r21241;
        double r21262 = r21261 * r21261;
        double r21263 = fma(r21248, r21262, r21251);
        double r21264 = r21263 + r21247;
        double r21265 = r21256 * r21255;
        double r21266 = fma(r21242, r21264, r21265);
        double r21267 = r21235 * r21232;
        double r21268 = r21266 - r21267;
        double r21269 = r21242 * r21264;
        double r21270 = r21269 + r21265;
        double r21271 = r21267 * r21267;
        double r21272 = fma(r21268, r21270, r21271);
        double r21273 = r21260 / r21272;
        double r21274 = 2;
        double r21275 = r21274 * r21233;
        double r21276 = r21241 / r21275;
        double r21277 = r21273 + r21276;
        return r21277;
}

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 r21278, r21279, r21280, r21281, r21282, r21283, r21284, r21285, r21286, r21287, r21288, r21289, r21290, r21291, r21292, r21293, r21294, r21295, r21296, r21297, r21298, r21299, r21300, r21301, r21302, r21303, r21304, r21305, r21306, r21307, r21308;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(400);
        mpfr_init_set_str(r21278, "333.75", 10, MPFR_RNDN);
        mpfr_init_set_str(r21279, "33096", 10, MPFR_RNDN);
        mpfr_init_set_str(r21280, "6", 10, MPFR_RNDN);
        mpfr_init(r21281);
        mpfr_init(r21282);
        mpfr_init_set_str(r21283, "77617", 10, MPFR_RNDN);
        mpfr_init(r21284);
        mpfr_init_set_str(r21285, "11", 10, MPFR_RNDN);
        mpfr_init(r21286);
        mpfr_init(r21287);
        mpfr_init(r21288);
        mpfr_init(r21289);
        mpfr_init(r21290);
        mpfr_init_set_str(r21291, "-121", 10, MPFR_RNDN);
        mpfr_init_set_str(r21292, "4", 10, MPFR_RNDN);
        mpfr_init(r21293);
        mpfr_init(r21294);
        mpfr_init(r21295);
        mpfr_init_set_str(r21296, "-2", 10, MPFR_RNDN);
        mpfr_init(r21297);
        mpfr_init(r21298);
        mpfr_init(r21299);
        mpfr_init_set_str(r21300, "5.5", 10, MPFR_RNDN);
        mpfr_init_set_str(r21301, "8", 10, MPFR_RNDN);
        mpfr_init(r21302);
        mpfr_init(r21303);
        mpfr_init(r21304);
        mpfr_init_set_str(r21305, "2", 10, MPFR_RNDN);
        mpfr_init(r21306);
        mpfr_init(r21307);
        mpfr_init(r21308);
}

double f_im() {
        ;
        ;
        ;
        mpfr_pow(r21281, r21279, r21280, MPFR_RNDN);
        mpfr_mul(r21282, r21278, r21281, MPFR_RNDN);
        ;
        mpfr_mul(r21284, r21283, r21283, MPFR_RNDN);
        ;
        mpfr_mul(r21286, r21285, r21284, MPFR_RNDN);
        mpfr_mul(r21287, r21279, r21279, MPFR_RNDN);
        mpfr_mul(r21288, r21286, r21287, MPFR_RNDN);
        mpfr_neg(r21289, r21281, MPFR_RNDN);
        mpfr_add(r21290, r21288, r21289, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r21293, r21279, r21292, MPFR_RNDN);
        mpfr_mul(r21294, r21291, r21293, MPFR_RNDN);
        mpfr_add(r21295, r21290, r21294, MPFR_RNDN);
        ;
        mpfr_add(r21297, r21295, r21296, MPFR_RNDN);
        mpfr_mul(r21298, r21284, r21297, MPFR_RNDN);
        mpfr_add(r21299, r21282, r21298, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r21302, r21279, r21301, MPFR_RNDN);
        mpfr_mul(r21303, r21300, r21302, MPFR_RNDN);
        mpfr_add(r21304, r21299, r21303, MPFR_RNDN);
        ;
        mpfr_mul(r21306, r21305, r21279, MPFR_RNDN);
        mpfr_div(r21307, r21283, r21306, MPFR_RNDN);
        mpfr_add(r21308, r21304, r21307, MPFR_RNDN);
        return mpfr_get_d(r21308, MPFR_RNDN);
}

static mpfr_t r21309, r21310, r21311, r21312, r21313, r21314, r21315, r21316, r21317, r21318, r21319, r21320, r21321, r21322, r21323, r21324, r21325, r21326, r21327, r21328, r21329, r21330, r21331, r21332, r21333, r21334, r21335, r21336, r21337, r21338, r21339, r21340, r21341, r21342, r21343, r21344, r21345, r21346, r21347, r21348, r21349, r21350, r21351, r21352, r21353, r21354;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(400);
        mpfr_init_set_str(r21309, "333.75", 10, MPFR_RNDN);
        mpfr_init_set_str(r21310, "33096", 10, MPFR_RNDN);
        mpfr_init_set_str(r21311, "6", 10, MPFR_RNDN);
        mpfr_init(r21312);
        mpfr_init(r21313);
        mpfr_init(r21314);
        mpfr_init(r21315);
        mpfr_init_set_str(r21316, "3", 10, MPFR_RNDN);
        mpfr_init(r21317);
        mpfr_init_set_str(r21318, "77617", 10, MPFR_RNDN);
        mpfr_init(r21319);
        mpfr_init_set_str(r21320, "-121", 10, MPFR_RNDN);
        mpfr_init_set_str(r21321, "4", 10, MPFR_RNDN);
        mpfr_init(r21322);
        mpfr_init(r21323);
        mpfr_init(r21324);
        mpfr_init_set_str(r21325, "11", 10, MPFR_RNDN);
        mpfr_init(r21326);
        mpfr_init(r21327);
        mpfr_init_set_str(r21328, "-2", 10, MPFR_RNDN);
        mpfr_init(r21329);
        mpfr_init(r21330);
        mpfr_init_set_str(r21331, "8", 10, MPFR_RNDN);
        mpfr_init(r21332);
        mpfr_init_set_str(r21333, "5.5", 10, MPFR_RNDN);
        mpfr_init(r21334);
        mpfr_init(r21335);
        mpfr_init(r21336);
        mpfr_init(r21337);
        mpfr_init(r21338);
        mpfr_init(r21339);
        mpfr_init(r21340);
        mpfr_init(r21341);
        mpfr_init(r21342);
        mpfr_init(r21343);
        mpfr_init(r21344);
        mpfr_init(r21345);
        mpfr_init(r21346);
        mpfr_init(r21347);
        mpfr_init(r21348);
        mpfr_init(r21349);
        mpfr_init(r21350);
        mpfr_init_set_str(r21351, "2", 10, MPFR_RNDN);
        mpfr_init(r21352);
        mpfr_init(r21353);
        mpfr_init(r21354);
}

double f_fm() {
        ;
        ;
        ;
        mpfr_pow(r21312, r21310, r21311, MPFR_RNDN);
        mpfr_mul(r21313, r21309, r21312, MPFR_RNDN);
        mpfr_log1p(r21314, r21313, MPFR_RNDN);
        mpfr_expm1(r21315, r21314, MPFR_RNDN);
        ;
        mpfr_pow(r21317, r21315, r21316, MPFR_RNDN);
        ;
        mpfr_mul(r21319, r21318, r21318, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r21322, r21310, r21321, MPFR_RNDN);
        mpfr_neg(r21323, r21312, MPFR_RNDN);
        mpfr_fma(r21324, r21320, r21322, r21323, MPFR_RNDN);
        ;
        mpfr_mul(r21326, r21318, r21310, MPFR_RNDN);
        mpfr_mul(r21327, r21326, r21326, MPFR_RNDN);
        ;
        mpfr_fma(r21329, r21325, r21327, r21328, MPFR_RNDN);
        mpfr_add(r21330, r21324, r21329, MPFR_RNDN);
        ;
        mpfr_pow(r21332, r21310, r21331, MPFR_RNDN);
        ;
        mpfr_mul(r21334, r21332, r21333, MPFR_RNDN);
        mpfr_fma(r21335, r21319, r21330, r21334, MPFR_RNDN);
        mpfr_pow(r21336, r21335, r21316, MPFR_RNDN);
        mpfr_add(r21337, r21317, r21336, MPFR_RNDN);
        mpfr_mul(r21338, r21310, r21318, MPFR_RNDN);
        mpfr_mul(r21339, r21338, r21338, MPFR_RNDN);
        mpfr_fma(r21340, r21325, r21339, r21328, MPFR_RNDN);
        mpfr_add(r21341, r21340, r21324, MPFR_RNDN);
        mpfr_mul(r21342, r21333, r21332, MPFR_RNDN);
        mpfr_fma(r21343, r21319, r21341, r21342, MPFR_RNDN);
        mpfr_mul(r21344, r21312, r21309, MPFR_RNDN);
        mpfr_sub(r21345, r21343, r21344, MPFR_RNDN);
        mpfr_mul(r21346, r21319, r21341, MPFR_RNDN);
        mpfr_add(r21347, r21346, r21342, MPFR_RNDN);
        mpfr_mul(r21348, r21344, r21344, MPFR_RNDN);
        mpfr_fma(r21349, r21345, r21347, r21348, MPFR_RNDN);
        mpfr_div(r21350, r21337, r21349, MPFR_RNDN);
        ;
        mpfr_mul(r21352, r21351, r21310, MPFR_RNDN);
        mpfr_div(r21353, r21318, r21352, MPFR_RNDN);
        mpfr_add(r21354, r21350, r21353, MPFR_RNDN);
        return mpfr_get_d(r21354, MPFR_RNDN);
}

static mpfr_t r21355, r21356, r21357, r21358, r21359, r21360, r21361, r21362, r21363, r21364, r21365, r21366, r21367, r21368, r21369, r21370, r21371, r21372, r21373, r21374, r21375, r21376, r21377, r21378, r21379, r21380, r21381, r21382, r21383, r21384, r21385, r21386, r21387, r21388, r21389, r21390, r21391, r21392, r21393, r21394, r21395, r21396, r21397, r21398, r21399, r21400;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(400);
        mpfr_init_set_str(r21355, "333.75", 10, MPFR_RNDN);
        mpfr_init_set_str(r21356, "33096", 10, MPFR_RNDN);
        mpfr_init_set_str(r21357, "6", 10, MPFR_RNDN);
        mpfr_init(r21358);
        mpfr_init(r21359);
        mpfr_init(r21360);
        mpfr_init(r21361);
        mpfr_init_set_str(r21362, "3", 10, MPFR_RNDN);
        mpfr_init(r21363);
        mpfr_init_set_str(r21364, "77617", 10, MPFR_RNDN);
        mpfr_init(r21365);
        mpfr_init_set_str(r21366, "-121", 10, MPFR_RNDN);
        mpfr_init_set_str(r21367, "4", 10, MPFR_RNDN);
        mpfr_init(r21368);
        mpfr_init(r21369);
        mpfr_init(r21370);
        mpfr_init_set_str(r21371, "11", 10, MPFR_RNDN);
        mpfr_init(r21372);
        mpfr_init(r21373);
        mpfr_init_set_str(r21374, "-2", 10, MPFR_RNDN);
        mpfr_init(r21375);
        mpfr_init(r21376);
        mpfr_init_set_str(r21377, "8", 10, MPFR_RNDN);
        mpfr_init(r21378);
        mpfr_init_set_str(r21379, "5.5", 10, MPFR_RNDN);
        mpfr_init(r21380);
        mpfr_init(r21381);
        mpfr_init(r21382);
        mpfr_init(r21383);
        mpfr_init(r21384);
        mpfr_init(r21385);
        mpfr_init(r21386);
        mpfr_init(r21387);
        mpfr_init(r21388);
        mpfr_init(r21389);
        mpfr_init(r21390);
        mpfr_init(r21391);
        mpfr_init(r21392);
        mpfr_init(r21393);
        mpfr_init(r21394);
        mpfr_init(r21395);
        mpfr_init(r21396);
        mpfr_init_set_str(r21397, "2", 10, MPFR_RNDN);
        mpfr_init(r21398);
        mpfr_init(r21399);
        mpfr_init(r21400);
}

double f_dm() {
        ;
        ;
        ;
        mpfr_pow(r21358, r21356, r21357, MPFR_RNDN);
        mpfr_mul(r21359, r21355, r21358, MPFR_RNDN);
        mpfr_log1p(r21360, r21359, MPFR_RNDN);
        mpfr_expm1(r21361, r21360, MPFR_RNDN);
        ;
        mpfr_pow(r21363, r21361, r21362, MPFR_RNDN);
        ;
        mpfr_mul(r21365, r21364, r21364, MPFR_RNDN);
        ;
        ;
        mpfr_pow(r21368, r21356, r21367, MPFR_RNDN);
        mpfr_neg(r21369, r21358, MPFR_RNDN);
        mpfr_fma(r21370, r21366, r21368, r21369, MPFR_RNDN);
        ;
        mpfr_mul(r21372, r21364, r21356, MPFR_RNDN);
        mpfr_mul(r21373, r21372, r21372, MPFR_RNDN);
        ;
        mpfr_fma(r21375, r21371, r21373, r21374, MPFR_RNDN);
        mpfr_add(r21376, r21370, r21375, MPFR_RNDN);
        ;
        mpfr_pow(r21378, r21356, r21377, MPFR_RNDN);
        ;
        mpfr_mul(r21380, r21378, r21379, MPFR_RNDN);
        mpfr_fma(r21381, r21365, r21376, r21380, MPFR_RNDN);
        mpfr_pow(r21382, r21381, r21362, MPFR_RNDN);
        mpfr_add(r21383, r21363, r21382, MPFR_RNDN);
        mpfr_mul(r21384, r21356, r21364, MPFR_RNDN);
        mpfr_mul(r21385, r21384, r21384, MPFR_RNDN);
        mpfr_fma(r21386, r21371, r21385, r21374, MPFR_RNDN);
        mpfr_add(r21387, r21386, r21370, MPFR_RNDN);
        mpfr_mul(r21388, r21379, r21378, MPFR_RNDN);
        mpfr_fma(r21389, r21365, r21387, r21388, MPFR_RNDN);
        mpfr_mul(r21390, r21358, r21355, MPFR_RNDN);
        mpfr_sub(r21391, r21389, r21390, MPFR_RNDN);
        mpfr_mul(r21392, r21365, r21387, MPFR_RNDN);
        mpfr_add(r21393, r21392, r21388, MPFR_RNDN);
        mpfr_mul(r21394, r21390, r21390, MPFR_RNDN);
        mpfr_fma(r21395, r21391, r21393, r21394, MPFR_RNDN);
        mpfr_div(r21396, r21383, r21395, MPFR_RNDN);
        ;
        mpfr_mul(r21398, r21397, r21356, MPFR_RNDN);
        mpfr_div(r21399, r21364, r21398, MPFR_RNDN);
        mpfr_add(r21400, r21396, r21399, MPFR_RNDN);
        return mpfr_get_d(r21400, MPFR_RNDN);
}

