#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 r49049 = x;
        float r49050 = y;
        float r49051 = z;
        float r49052 = r49050 - r49051;
        float r49053 = t;
        float r49054 = 1.0;
        float r49055 = r49053 + r49054;
        float r49056 = r49055 - r49051;
        float r49057 = r49052 / r49056;
        float r49058 = a;
        float r49059 = r49058 - r49049;
        float r49060 = r49057 * r49059;
        float r49061 = r49049 + r49060;
        return r49061;
}

double f_id(double x, double y, double z, double t, double a) {
        double r49062 = x;
        double r49063 = y;
        double r49064 = z;
        double r49065 = r49063 - r49064;
        double r49066 = t;
        double r49067 = 1.0;
        double r49068 = r49066 + r49067;
        double r49069 = r49068 - r49064;
        double r49070 = r49065 / r49069;
        double r49071 = a;
        double r49072 = r49071 - r49062;
        double r49073 = r49070 * r49072;
        double r49074 = r49062 + r49073;
        return r49074;
}


double f_of(float x, float y, float z, float t, float a) {
        float r49075 = x;
        float r49076 = 1;
        float r49077 = t;
        float r49078 = 1.0;
        float r49079 = r49077 + r49078;
        float r49080 = z;
        float r49081 = r49079 - r49080;
        float r49082 = cbrt(r49081);
        float r49083 = r49082 * r49082;
        float r49084 = r49076 / r49083;
        float r49085 = y;
        float r49086 = r49085 - r49080;
        float r49087 = r49086 / r49082;
        float r49088 = r49084 * r49087;
        float r49089 = a;
        float r49090 = r49089 - r49075;
        float r49091 = r49088 * r49090;
        float r49092 = r49075 + r49091;
        return r49092;
}

double f_od(double x, double y, double z, double t, double a) {
        double r49093 = x;
        double r49094 = 1;
        double r49095 = t;
        double r49096 = 1.0;
        double r49097 = r49095 + r49096;
        double r49098 = z;
        double r49099 = r49097 - r49098;
        double r49100 = cbrt(r49099);
        double r49101 = r49100 * r49100;
        double r49102 = r49094 / r49101;
        double r49103 = y;
        double r49104 = r49103 - r49098;
        double r49105 = r49104 / r49100;
        double r49106 = r49102 * r49105;
        double r49107 = a;
        double r49108 = r49107 - r49093;
        double r49109 = r49106 * r49108;
        double r49110 = r49093 + r49109;
        return r49110;
}

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 r49111, r49112, r49113, r49114, r49115, r49116, r49117, r49118, r49119, r49120, r49121, r49122, r49123;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(1424);
        mpfr_init(r49111);
        mpfr_init(r49112);
        mpfr_init(r49113);
        mpfr_init(r49114);
        mpfr_init(r49115);
        mpfr_init_set_str(r49116, "1.0", 10, MPFR_RNDN);
        mpfr_init(r49117);
        mpfr_init(r49118);
        mpfr_init(r49119);
        mpfr_init(r49120);
        mpfr_init(r49121);
        mpfr_init(r49122);
        mpfr_init(r49123);
}

double f_im(double x, double y, double z, double t, double a) {
        mpfr_set_d(r49111, x, MPFR_RNDN);
        mpfr_set_d(r49112, y, MPFR_RNDN);
        mpfr_set_d(r49113, z, MPFR_RNDN);
        mpfr_sub(r49114, r49112, r49113, MPFR_RNDN);
        mpfr_set_d(r49115, t, MPFR_RNDN);
        ;
        mpfr_add(r49117, r49115, r49116, MPFR_RNDN);
        mpfr_sub(r49118, r49117, r49113, MPFR_RNDN);
        mpfr_div(r49119, r49114, r49118, MPFR_RNDN);
        mpfr_set_d(r49120, a, MPFR_RNDN);
        mpfr_sub(r49121, r49120, r49111, MPFR_RNDN);
        mpfr_mul(r49122, r49119, r49121, MPFR_RNDN);
        mpfr_add(r49123, r49111, r49122, MPFR_RNDN);
        return mpfr_get_d(r49123, MPFR_RNDN);
}

static mpfr_t r49124, r49125, r49126, r49127, r49128, r49129, r49130, r49131, r49132, r49133, r49134, r49135, r49136, r49137, r49138, r49139, r49140, r49141;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(1424);
        mpfr_init(r49124);
        mpfr_init_set_str(r49125, "1", 10, MPFR_RNDN);
        mpfr_init(r49126);
        mpfr_init_set_str(r49127, "1.0", 10, MPFR_RNDN);
        mpfr_init(r49128);
        mpfr_init(r49129);
        mpfr_init(r49130);
        mpfr_init(r49131);
        mpfr_init(r49132);
        mpfr_init(r49133);
        mpfr_init(r49134);
        mpfr_init(r49135);
        mpfr_init(r49136);
        mpfr_init(r49137);
        mpfr_init(r49138);
        mpfr_init(r49139);
        mpfr_init(r49140);
        mpfr_init(r49141);
}

double f_fm(double x, double y, double z, double t, double a) {
        mpfr_set_d(r49124, x, MPFR_RNDN);
        ;
        mpfr_set_d(r49126, t, MPFR_RNDN);
        ;
        mpfr_add(r49128, r49126, r49127, MPFR_RNDN);
        mpfr_set_d(r49129, z, MPFR_RNDN);
        mpfr_sub(r49130, r49128, r49129, MPFR_RNDN);
        mpfr_cbrt(r49131, r49130, MPFR_RNDN);
        mpfr_mul(r49132, r49131, r49131, MPFR_RNDN);
        mpfr_div(r49133, r49125, r49132, MPFR_RNDN);
        mpfr_set_d(r49134, y, MPFR_RNDN);
        mpfr_sub(r49135, r49134, r49129, MPFR_RNDN);
        mpfr_div(r49136, r49135, r49131, MPFR_RNDN);
        mpfr_mul(r49137, r49133, r49136, MPFR_RNDN);
        mpfr_set_d(r49138, a, MPFR_RNDN);
        mpfr_sub(r49139, r49138, r49124, MPFR_RNDN);
        mpfr_mul(r49140, r49137, r49139, MPFR_RNDN);
        mpfr_add(r49141, r49124, r49140, MPFR_RNDN);
        return mpfr_get_d(r49141, MPFR_RNDN);
}

static mpfr_t r49142, r49143, r49144, r49145, r49146, r49147, r49148, r49149, r49150, r49151, r49152, r49153, r49154, r49155, r49156, r49157, r49158, r49159;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(1424);
        mpfr_init(r49142);
        mpfr_init_set_str(r49143, "1", 10, MPFR_RNDN);
        mpfr_init(r49144);
        mpfr_init_set_str(r49145, "1.0", 10, MPFR_RNDN);
        mpfr_init(r49146);
        mpfr_init(r49147);
        mpfr_init(r49148);
        mpfr_init(r49149);
        mpfr_init(r49150);
        mpfr_init(r49151);
        mpfr_init(r49152);
        mpfr_init(r49153);
        mpfr_init(r49154);
        mpfr_init(r49155);
        mpfr_init(r49156);
        mpfr_init(r49157);
        mpfr_init(r49158);
        mpfr_init(r49159);
}

double f_dm(double x, double y, double z, double t, double a) {
        mpfr_set_d(r49142, x, MPFR_RNDN);
        ;
        mpfr_set_d(r49144, t, MPFR_RNDN);
        ;
        mpfr_add(r49146, r49144, r49145, MPFR_RNDN);
        mpfr_set_d(r49147, z, MPFR_RNDN);
        mpfr_sub(r49148, r49146, r49147, MPFR_RNDN);
        mpfr_cbrt(r49149, r49148, MPFR_RNDN);
        mpfr_mul(r49150, r49149, r49149, MPFR_RNDN);
        mpfr_div(r49151, r49143, r49150, MPFR_RNDN);
        mpfr_set_d(r49152, y, MPFR_RNDN);
        mpfr_sub(r49153, r49152, r49147, MPFR_RNDN);
        mpfr_div(r49154, r49153, r49149, MPFR_RNDN);
        mpfr_mul(r49155, r49151, r49154, MPFR_RNDN);
        mpfr_set_d(r49156, a, MPFR_RNDN);
        mpfr_sub(r49157, r49156, r49142, MPFR_RNDN);
        mpfr_mul(r49158, r49155, r49157, MPFR_RNDN);
        mpfr_add(r49159, r49142, r49158, MPFR_RNDN);
        return mpfr_get_d(r49159, MPFR_RNDN);
}

