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

char *name = "Rectangular parallelepiped of dimension a×b×c";

double f_if() {
        float r9157 = 2.0f;
        float r9158 = 1.0f;
        float r9159 = 9.0f;
        float r9160 = r9158 / r9159;
        float r9161 = r9158 * r9160;
        float r9162 = r9160 * r9160;
        float r9163 = r9161 + r9162;
        float r9164 = r9160 * r9158;
        float r9165 = r9163 + r9164;
        float r9166 = r9157 * r9165;
        return r9166;
}

double f_id() {
        double r9167 = 2.0;
        double r9168 = 1.0;
        double r9169 = 9.0;
        double r9170 = r9168 / r9169;
        double r9171 = r9168 * r9170;
        double r9172 = r9170 * r9170;
        double r9173 = r9171 + r9172;
        double r9174 = r9170 * r9168;
        double r9175 = r9173 + r9174;
        double r9176 = r9167 * r9175;
        return r9176;
}


double f_of() {
        float r9177 = 2.0f;
        float r9178 = 1.0f;
        float r9179 = 9.0f;
        float r9180 = r9178 / r9179;
        float r9181 = r9180 * r9180;
        float r9182 = r9181 + r9180;
        float r9183 = r9182 + r9180;
        float r9184 = r9177 * r9183;
        return r9184;
}

double f_od() {
        double r9185 = 2.0;
        double r9186 = 1.0;
        double r9187 = 9.0;
        double r9188 = r9186 / r9187;
        double r9189 = r9188 * r9188;
        double r9190 = r9189 + r9188;
        double r9191 = r9190 + r9188;
        double r9192 = r9185 * r9191;
        return r9192;
}

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 r9193, r9194, r9195, r9196, r9197, r9198, r9199, r9200, r9201, r9202;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(336);
        mpfr_init_set_str(r9193, "2", 10, MPFR_RNDN);
        mpfr_init_set_str(r9194, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r9195, "9", 10, MPFR_RNDN);
        mpfr_init(r9196);
        mpfr_init(r9197);
        mpfr_init(r9198);
        mpfr_init(r9199);
        mpfr_init(r9200);
        mpfr_init(r9201);
        mpfr_init(r9202);
}

double f_im() {
        ;
        ;
        ;
        mpfr_div(r9196, r9194, r9195, MPFR_RNDN);
        mpfr_mul(r9197, r9194, r9196, MPFR_RNDN);
        mpfr_mul(r9198, r9196, r9196, MPFR_RNDN);
        mpfr_add(r9199, r9197, r9198, MPFR_RNDN);
        mpfr_mul(r9200, r9196, r9194, MPFR_RNDN);
        mpfr_add(r9201, r9199, r9200, MPFR_RNDN);
        mpfr_mul(r9202, r9193, r9201, MPFR_RNDN);
        return mpfr_get_d(r9202, MPFR_RNDN);
}

static mpfr_t r9203, r9204, r9205, r9206, r9207, r9208, r9209, r9210;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(336);
        mpfr_init_set_str(r9203, "2", 10, MPFR_RNDN);
        mpfr_init_set_str(r9204, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r9205, "9", 10, MPFR_RNDN);
        mpfr_init(r9206);
        mpfr_init(r9207);
        mpfr_init(r9208);
        mpfr_init(r9209);
        mpfr_init(r9210);
}

double f_fm() {
        ;
        ;
        ;
        mpfr_div(r9206, r9204, r9205, MPFR_RNDN);
        mpfr_mul(r9207, r9206, r9206, MPFR_RNDN);
        mpfr_add(r9208, r9207, r9206, MPFR_RNDN);
        mpfr_add(r9209, r9208, r9206, MPFR_RNDN);
        mpfr_mul(r9210, r9203, r9209, MPFR_RNDN);
        return mpfr_get_d(r9210, MPFR_RNDN);
}

static mpfr_t r9211, r9212, r9213, r9214, r9215, r9216, r9217, r9218;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(336);
        mpfr_init_set_str(r9211, "2", 10, MPFR_RNDN);
        mpfr_init_set_str(r9212, "1", 10, MPFR_RNDN);
        mpfr_init_set_str(r9213, "9", 10, MPFR_RNDN);
        mpfr_init(r9214);
        mpfr_init(r9215);
        mpfr_init(r9216);
        mpfr_init(r9217);
        mpfr_init(r9218);
}

double f_dm() {
        ;
        ;
        ;
        mpfr_div(r9214, r9212, r9213, MPFR_RNDN);
        mpfr_mul(r9215, r9214, r9214, MPFR_RNDN);
        mpfr_add(r9216, r9215, r9214, MPFR_RNDN);
        mpfr_add(r9217, r9216, r9214, MPFR_RNDN);
        mpfr_mul(r9218, r9211, r9217, MPFR_RNDN);
        return mpfr_get_d(r9218, MPFR_RNDN);
}

