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

char *name = "Linear.V4:$cdot from linear-1.19.1.3";

double f_if(float x, float y, float z, float t, float a, float b, float c, float i) {
        float r10219 = x;
        float r10220 = y;
        float r10221 = r10219 * r10220;
        float r10222 = z;
        float r10223 = t;
        float r10224 = r10222 * r10223;
        float r10225 = r10221 + r10224;
        float r10226 = a;
        float r10227 = b;
        float r10228 = r10226 * r10227;
        float r10229 = r10225 + r10228;
        float r10230 = c;
        float r10231 = i;
        float r10232 = r10230 * r10231;
        float r10233 = r10229 + r10232;
        return r10233;
}

double f_id(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r10234 = x;
        double r10235 = y;
        double r10236 = r10234 * r10235;
        double r10237 = z;
        double r10238 = t;
        double r10239 = r10237 * r10238;
        double r10240 = r10236 + r10239;
        double r10241 = a;
        double r10242 = b;
        double r10243 = r10241 * r10242;
        double r10244 = r10240 + r10243;
        double r10245 = c;
        double r10246 = i;
        double r10247 = r10245 * r10246;
        double r10248 = r10244 + r10247;
        return r10248;
}


double f_of(float x, float y, float z, float t, float a, float b, float c, float i) {
        float r10249 = x;
        float r10250 = y;
        float r10251 = r10249 * r10250;
        float r10252 = z;
        float r10253 = t;
        float r10254 = r10252 * r10253;
        float r10255 = r10251 + r10254;
        float r10256 = a;
        float r10257 = b;
        float r10258 = r10256 * r10257;
        float r10259 = r10255 + r10258;
        float r10260 = c;
        float r10261 = i;
        float r10262 = r10260 * r10261;
        float r10263 = r10259 + r10262;
        return r10263;
}

double f_od(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r10264 = x;
        double r10265 = y;
        double r10266 = r10264 * r10265;
        double r10267 = z;
        double r10268 = t;
        double r10269 = r10267 * r10268;
        double r10270 = r10266 + r10269;
        double r10271 = a;
        double r10272 = b;
        double r10273 = r10271 * r10272;
        double r10274 = r10270 + r10273;
        double r10275 = c;
        double r10276 = i;
        double r10277 = r10275 * r10276;
        double r10278 = r10274 + r10277;
        return r10278;
}

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 r10279, r10280, r10281, r10282, r10283, r10284, r10285, r10286, r10287, r10288, r10289, r10290, r10291, r10292, r10293;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(592);
        mpfr_init(r10279);
        mpfr_init(r10280);
        mpfr_init(r10281);
        mpfr_init(r10282);
        mpfr_init(r10283);
        mpfr_init(r10284);
        mpfr_init(r10285);
        mpfr_init(r10286);
        mpfr_init(r10287);
        mpfr_init(r10288);
        mpfr_init(r10289);
        mpfr_init(r10290);
        mpfr_init(r10291);
        mpfr_init(r10292);
        mpfr_init(r10293);
}

double f_im(double x, double y, double z, double t, double a, double b, double c, double i) {
        mpfr_set_d(r10279, x, MPFR_RNDN);
        mpfr_set_d(r10280, y, MPFR_RNDN);
        mpfr_mul(r10281, r10279, r10280, MPFR_RNDN);
        mpfr_set_d(r10282, z, MPFR_RNDN);
        mpfr_set_d(r10283, t, MPFR_RNDN);
        mpfr_mul(r10284, r10282, r10283, MPFR_RNDN);
        mpfr_add(r10285, r10281, r10284, MPFR_RNDN);
        mpfr_set_d(r10286, a, MPFR_RNDN);
        mpfr_set_d(r10287, b, MPFR_RNDN);
        mpfr_mul(r10288, r10286, r10287, MPFR_RNDN);
        mpfr_add(r10289, r10285, r10288, MPFR_RNDN);
        mpfr_set_d(r10290, c, MPFR_RNDN);
        mpfr_set_d(r10291, i, MPFR_RNDN);
        mpfr_mul(r10292, r10290, r10291, MPFR_RNDN);
        mpfr_add(r10293, r10289, r10292, MPFR_RNDN);
        return mpfr_get_d(r10293, MPFR_RNDN);
}

static mpfr_t r10294, r10295, r10296, r10297, r10298, r10299, r10300, r10301, r10302, r10303, r10304, r10305, r10306, r10307, r10308;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(592);
        mpfr_init(r10294);
        mpfr_init(r10295);
        mpfr_init(r10296);
        mpfr_init(r10297);
        mpfr_init(r10298);
        mpfr_init(r10299);
        mpfr_init(r10300);
        mpfr_init(r10301);
        mpfr_init(r10302);
        mpfr_init(r10303);
        mpfr_init(r10304);
        mpfr_init(r10305);
        mpfr_init(r10306);
        mpfr_init(r10307);
        mpfr_init(r10308);
}

double f_fm(double x, double y, double z, double t, double a, double b, double c, double i) {
        mpfr_set_d(r10294, x, MPFR_RNDN);
        mpfr_set_d(r10295, y, MPFR_RNDN);
        mpfr_mul(r10296, r10294, r10295, MPFR_RNDN);
        mpfr_set_d(r10297, z, MPFR_RNDN);
        mpfr_set_d(r10298, t, MPFR_RNDN);
        mpfr_mul(r10299, r10297, r10298, MPFR_RNDN);
        mpfr_add(r10300, r10296, r10299, MPFR_RNDN);
        mpfr_set_d(r10301, a, MPFR_RNDN);
        mpfr_set_d(r10302, b, MPFR_RNDN);
        mpfr_mul(r10303, r10301, r10302, MPFR_RNDN);
        mpfr_add(r10304, r10300, r10303, MPFR_RNDN);
        mpfr_set_d(r10305, c, MPFR_RNDN);
        mpfr_set_d(r10306, i, MPFR_RNDN);
        mpfr_mul(r10307, r10305, r10306, MPFR_RNDN);
        mpfr_add(r10308, r10304, r10307, MPFR_RNDN);
        return mpfr_get_d(r10308, MPFR_RNDN);
}

static mpfr_t r10309, r10310, r10311, r10312, r10313, r10314, r10315, r10316, r10317, r10318, r10319, r10320, r10321, r10322, r10323;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(592);
        mpfr_init(r10309);
        mpfr_init(r10310);
        mpfr_init(r10311);
        mpfr_init(r10312);
        mpfr_init(r10313);
        mpfr_init(r10314);
        mpfr_init(r10315);
        mpfr_init(r10316);
        mpfr_init(r10317);
        mpfr_init(r10318);
        mpfr_init(r10319);
        mpfr_init(r10320);
        mpfr_init(r10321);
        mpfr_init(r10322);
        mpfr_init(r10323);
}

double f_dm(double x, double y, double z, double t, double a, double b, double c, double i) {
        mpfr_set_d(r10309, x, MPFR_RNDN);
        mpfr_set_d(r10310, y, MPFR_RNDN);
        mpfr_mul(r10311, r10309, r10310, MPFR_RNDN);
        mpfr_set_d(r10312, z, MPFR_RNDN);
        mpfr_set_d(r10313, t, MPFR_RNDN);
        mpfr_mul(r10314, r10312, r10313, MPFR_RNDN);
        mpfr_add(r10315, r10311, r10314, MPFR_RNDN);
        mpfr_set_d(r10316, a, MPFR_RNDN);
        mpfr_set_d(r10317, b, MPFR_RNDN);
        mpfr_mul(r10318, r10316, r10317, MPFR_RNDN);
        mpfr_add(r10319, r10315, r10318, MPFR_RNDN);
        mpfr_set_d(r10320, c, MPFR_RNDN);
        mpfr_set_d(r10321, i, MPFR_RNDN);
        mpfr_mul(r10322, r10320, r10321, MPFR_RNDN);
        mpfr_add(r10323, r10319, r10322, MPFR_RNDN);
        return mpfr_get_d(r10323, MPFR_RNDN);
}

