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

char *name = "Hakyll.Web.Tags:renderTagCloud from hakyll-4.7.2.3";

double f_if(float x, float y, float z, float t, float a) {
        float r48175 = x;
        float r48176 = y;
        float r48177 = z;
        float r48178 = r48176 - r48177;
        float r48179 = t;
        float r48180 = 1.0;
        float r48181 = r48179 + r48180;
        float r48182 = r48181 - r48177;
        float r48183 = r48178 / r48182;
        float r48184 = a;
        float r48185 = r48184 - r48175;
        float r48186 = r48183 * r48185;
        float r48187 = r48175 + r48186;
        return r48187;
}

double f_id(double x, double y, double z, double t, double a) {
        double r48188 = x;
        double r48189 = y;
        double r48190 = z;
        double r48191 = r48189 - r48190;
        double r48192 = t;
        double r48193 = 1.0;
        double r48194 = r48192 + r48193;
        double r48195 = r48194 - r48190;
        double r48196 = r48191 / r48195;
        double r48197 = a;
        double r48198 = r48197 - r48188;
        double r48199 = r48196 * r48198;
        double r48200 = r48188 + r48199;
        return r48200;
}


double f_of(float x, float y, float z, float t, float a) {
        float r48201 = x;
        float r48202 = y;
        float r48203 = z;
        float r48204 = r48202 - r48203;
        float r48205 = t;
        float r48206 = 1.0;
        float r48207 = r48205 + r48206;
        float r48208 = r48207 - r48203;
        float r48209 = r48204 / r48208;
        float r48210 = a;
        float r48211 = r48210 - r48201;
        float r48212 = r48209 * r48211;
        float r48213 = r48201 + r48212;
        float r48214 = -4.729447263504346e-308;
        bool r48215 = r48213 <= r48214;
        float r48216 = r48205 - r48203;
        float r48217 = r48206 + r48216;
        float r48218 = r48211 / r48217;
        float r48219 = r48204 * r48218;
        float r48220 = r48201 + r48219;
        float r48221 = 3.735682881900282e-256;
        bool r48222 = r48213 <= r48221;
        float r48223 = r48202 / r48203;
        float r48224 = r48211 * r48223;
        float r48225 = r48210 - r48224;
        float r48226 = r48222 ? r48225 : r48220;
        float r48227 = r48215 ? r48220 : r48226;
        return r48227;
}

double f_od(double x, double y, double z, double t, double a) {
        double r48228 = x;
        double r48229 = y;
        double r48230 = z;
        double r48231 = r48229 - r48230;
        double r48232 = t;
        double r48233 = 1.0;
        double r48234 = r48232 + r48233;
        double r48235 = r48234 - r48230;
        double r48236 = r48231 / r48235;
        double r48237 = a;
        double r48238 = r48237 - r48228;
        double r48239 = r48236 * r48238;
        double r48240 = r48228 + r48239;
        double r48241 = -4.729447263504346e-308;
        bool r48242 = r48240 <= r48241;
        double r48243 = r48232 - r48230;
        double r48244 = r48233 + r48243;
        double r48245 = r48238 / r48244;
        double r48246 = r48231 * r48245;
        double r48247 = r48228 + r48246;
        double r48248 = 3.735682881900282e-256;
        bool r48249 = r48240 <= r48248;
        double r48250 = r48229 / r48230;
        double r48251 = r48238 * r48250;
        double r48252 = r48237 - r48251;
        double r48253 = r48249 ? r48252 : r48247;
        double r48254 = r48242 ? r48247 : r48253;
        return r48254;
}

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 r48255, r48256, r48257, r48258, r48259, r48260, r48261, r48262, r48263, r48264, r48265, r48266, r48267;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(1424);
        mpfr_init(r48255);
        mpfr_init(r48256);
        mpfr_init(r48257);
        mpfr_init(r48258);
        mpfr_init(r48259);
        mpfr_init_set_str(r48260, "1.0", 10, MPFR_RNDN);
        mpfr_init(r48261);
        mpfr_init(r48262);
        mpfr_init(r48263);
        mpfr_init(r48264);
        mpfr_init(r48265);
        mpfr_init(r48266);
        mpfr_init(r48267);
}

double f_im(double x, double y, double z, double t, double a) {
        mpfr_set_d(r48255, x, MPFR_RNDN);
        mpfr_set_d(r48256, y, MPFR_RNDN);
        mpfr_set_d(r48257, z, MPFR_RNDN);
        mpfr_sub(r48258, r48256, r48257, MPFR_RNDN);
        mpfr_set_d(r48259, t, MPFR_RNDN);
        ;
        mpfr_add(r48261, r48259, r48260, MPFR_RNDN);
        mpfr_sub(r48262, r48261, r48257, MPFR_RNDN);
        mpfr_div(r48263, r48258, r48262, MPFR_RNDN);
        mpfr_set_d(r48264, a, MPFR_RNDN);
        mpfr_sub(r48265, r48264, r48255, MPFR_RNDN);
        mpfr_mul(r48266, r48263, r48265, MPFR_RNDN);
        mpfr_add(r48267, r48255, r48266, MPFR_RNDN);
        return mpfr_get_d(r48267, MPFR_RNDN);
}

static mpfr_t r48268, r48269, r48270, r48271, r48272, r48273, r48274, r48275, r48276, r48277, r48278, r48279, r48280, r48281, r48282, r48283, r48284, r48285, r48286, r48287, r48288, r48289, r48290, r48291, r48292, r48293, r48294;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(1424);
        mpfr_init(r48268);
        mpfr_init(r48269);
        mpfr_init(r48270);
        mpfr_init(r48271);
        mpfr_init(r48272);
        mpfr_init_set_str(r48273, "1.0", 10, MPFR_RNDN);
        mpfr_init(r48274);
        mpfr_init(r48275);
        mpfr_init(r48276);
        mpfr_init(r48277);
        mpfr_init(r48278);
        mpfr_init(r48279);
        mpfr_init(r48280);
        mpfr_init_set_str(r48281, "-4.729447263504346e-308", 10, MPFR_RNDN);
        mpfr_init(r48282);
        mpfr_init(r48283);
        mpfr_init(r48284);
        mpfr_init(r48285);
        mpfr_init(r48286);
        mpfr_init(r48287);
        mpfr_init_set_str(r48288, "3.735682881900282e-256", 10, MPFR_RNDN);
        mpfr_init(r48289);
        mpfr_init(r48290);
        mpfr_init(r48291);
        mpfr_init(r48292);
        mpfr_init(r48293);
        mpfr_init(r48294);
}

double f_fm(double x, double y, double z, double t, double a) {
        mpfr_set_d(r48268, x, MPFR_RNDN);
        mpfr_set_d(r48269, y, MPFR_RNDN);
        mpfr_set_d(r48270, z, MPFR_RNDN);
        mpfr_sub(r48271, r48269, r48270, MPFR_RNDN);
        mpfr_set_d(r48272, t, MPFR_RNDN);
        ;
        mpfr_add(r48274, r48272, r48273, MPFR_RNDN);
        mpfr_sub(r48275, r48274, r48270, MPFR_RNDN);
        mpfr_div(r48276, r48271, r48275, MPFR_RNDN);
        mpfr_set_d(r48277, a, MPFR_RNDN);
        mpfr_sub(r48278, r48277, r48268, MPFR_RNDN);
        mpfr_mul(r48279, r48276, r48278, MPFR_RNDN);
        mpfr_add(r48280, r48268, r48279, MPFR_RNDN);
        ;
        mpfr_set_si(r48282, mpfr_cmp(r48280, r48281) <= 0, MPFR_RNDN);
        mpfr_sub(r48283, r48272, r48270, MPFR_RNDN);
        mpfr_add(r48284, r48273, r48283, MPFR_RNDN);
        mpfr_div(r48285, r48278, r48284, MPFR_RNDN);
        mpfr_mul(r48286, r48271, r48285, MPFR_RNDN);
        mpfr_add(r48287, r48268, r48286, MPFR_RNDN);
        ;
        mpfr_set_si(r48289, mpfr_cmp(r48280, r48288) <= 0, MPFR_RNDN);
        mpfr_div(r48290, r48269, r48270, MPFR_RNDN);
        mpfr_mul(r48291, r48278, r48290, MPFR_RNDN);
        mpfr_sub(r48292, r48277, r48291, MPFR_RNDN);
        if (mpfr_get_si(r48289, MPFR_RNDN)) { mpfr_set(r48293, r48292, MPFR_RNDN); } else { mpfr_set(r48293, r48287, MPFR_RNDN); };
        if (mpfr_get_si(r48282, MPFR_RNDN)) { mpfr_set(r48294, r48287, MPFR_RNDN); } else { mpfr_set(r48294, r48293, MPFR_RNDN); };
        return mpfr_get_d(r48294, MPFR_RNDN);
}

static mpfr_t r48295, r48296, r48297, r48298, r48299, r48300, r48301, r48302, r48303, r48304, r48305, r48306, r48307, r48308, r48309, r48310, r48311, r48312, r48313, r48314, r48315, r48316, r48317, r48318, r48319, r48320, r48321;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(1424);
        mpfr_init(r48295);
        mpfr_init(r48296);
        mpfr_init(r48297);
        mpfr_init(r48298);
        mpfr_init(r48299);
        mpfr_init_set_str(r48300, "1.0", 10, MPFR_RNDN);
        mpfr_init(r48301);
        mpfr_init(r48302);
        mpfr_init(r48303);
        mpfr_init(r48304);
        mpfr_init(r48305);
        mpfr_init(r48306);
        mpfr_init(r48307);
        mpfr_init_set_str(r48308, "-4.729447263504346e-308", 10, MPFR_RNDN);
        mpfr_init(r48309);
        mpfr_init(r48310);
        mpfr_init(r48311);
        mpfr_init(r48312);
        mpfr_init(r48313);
        mpfr_init(r48314);
        mpfr_init_set_str(r48315, "3.735682881900282e-256", 10, MPFR_RNDN);
        mpfr_init(r48316);
        mpfr_init(r48317);
        mpfr_init(r48318);
        mpfr_init(r48319);
        mpfr_init(r48320);
        mpfr_init(r48321);
}

double f_dm(double x, double y, double z, double t, double a) {
        mpfr_set_d(r48295, x, MPFR_RNDN);
        mpfr_set_d(r48296, y, MPFR_RNDN);
        mpfr_set_d(r48297, z, MPFR_RNDN);
        mpfr_sub(r48298, r48296, r48297, MPFR_RNDN);
        mpfr_set_d(r48299, t, MPFR_RNDN);
        ;
        mpfr_add(r48301, r48299, r48300, MPFR_RNDN);
        mpfr_sub(r48302, r48301, r48297, MPFR_RNDN);
        mpfr_div(r48303, r48298, r48302, MPFR_RNDN);
        mpfr_set_d(r48304, a, MPFR_RNDN);
        mpfr_sub(r48305, r48304, r48295, MPFR_RNDN);
        mpfr_mul(r48306, r48303, r48305, MPFR_RNDN);
        mpfr_add(r48307, r48295, r48306, MPFR_RNDN);
        ;
        mpfr_set_si(r48309, mpfr_cmp(r48307, r48308) <= 0, MPFR_RNDN);
        mpfr_sub(r48310, r48299, r48297, MPFR_RNDN);
        mpfr_add(r48311, r48300, r48310, MPFR_RNDN);
        mpfr_div(r48312, r48305, r48311, MPFR_RNDN);
        mpfr_mul(r48313, r48298, r48312, MPFR_RNDN);
        mpfr_add(r48314, r48295, r48313, MPFR_RNDN);
        ;
        mpfr_set_si(r48316, mpfr_cmp(r48307, r48315) <= 0, MPFR_RNDN);
        mpfr_div(r48317, r48296, r48297, MPFR_RNDN);
        mpfr_mul(r48318, r48305, r48317, MPFR_RNDN);
        mpfr_sub(r48319, r48304, r48318, MPFR_RNDN);
        if (mpfr_get_si(r48316, MPFR_RNDN)) { mpfr_set(r48320, r48319, MPFR_RNDN); } else { mpfr_set(r48320, r48314, MPFR_RNDN); };
        if (mpfr_get_si(r48309, MPFR_RNDN)) { mpfr_set(r48321, r48314, MPFR_RNDN); } else { mpfr_set(r48321, r48320, MPFR_RNDN); };
        return mpfr_get_d(r48321, MPFR_RNDN);
}

