#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 r9540 = x;
        float r9541 = y;
        float r9542 = r9540 * r9541;
        float r9543 = z;
        float r9544 = t;
        float r9545 = r9543 * r9544;
        float r9546 = r9542 + r9545;
        float r9547 = a;
        float r9548 = b;
        float r9549 = r9547 * r9548;
        float r9550 = r9546 + r9549;
        float r9551 = c;
        float r9552 = i;
        float r9553 = r9551 * r9552;
        float r9554 = r9550 + r9553;
        return r9554;
}

double f_id(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r9555 = x;
        double r9556 = y;
        double r9557 = r9555 * r9556;
        double r9558 = z;
        double r9559 = t;
        double r9560 = r9558 * r9559;
        double r9561 = r9557 + r9560;
        double r9562 = a;
        double r9563 = b;
        double r9564 = r9562 * r9563;
        double r9565 = r9561 + r9564;
        double r9566 = c;
        double r9567 = i;
        double r9568 = r9566 * r9567;
        double r9569 = r9565 + r9568;
        return r9569;
}


double f_of(float x, float y, float z, float t, float a, float b, float c, float i) {
        float r9570 = c;
        float r9571 = i;
        float r9572 = r9570 * r9571;
        float r9573 = z;
        float r9574 = t;
        float r9575 = r9573 * r9574;
        float r9576 = x;
        float r9577 = y;
        float r9578 = r9576 * r9577;
        float r9579 = r9575 + r9578;
        float r9580 = a;
        float r9581 = b;
        float r9582 = r9580 * r9581;
        float r9583 = r9579 + r9582;
        float r9584 = r9572 + r9583;
        return r9584;
}

double f_od(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r9585 = c;
        double r9586 = i;
        double r9587 = r9585 * r9586;
        double r9588 = z;
        double r9589 = t;
        double r9590 = r9588 * r9589;
        double r9591 = x;
        double r9592 = y;
        double r9593 = r9591 * r9592;
        double r9594 = r9590 + r9593;
        double r9595 = a;
        double r9596 = b;
        double r9597 = r9595 * r9596;
        double r9598 = r9594 + r9597;
        double r9599 = r9587 + r9598;
        return r9599;
}

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 r9600, r9601, r9602, r9603, r9604, r9605, r9606, r9607, r9608, r9609, r9610, r9611, r9612, r9613, r9614;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(336);
        mpfr_init(r9600);
        mpfr_init(r9601);
        mpfr_init(r9602);
        mpfr_init(r9603);
        mpfr_init(r9604);
        mpfr_init(r9605);
        mpfr_init(r9606);
        mpfr_init(r9607);
        mpfr_init(r9608);
        mpfr_init(r9609);
        mpfr_init(r9610);
        mpfr_init(r9611);
        mpfr_init(r9612);
        mpfr_init(r9613);
        mpfr_init(r9614);
}

double f_im(double x, double y, double z, double t, double a, double b, double c, double i) {
        mpfr_set_d(r9600, x, MPFR_RNDN);
        mpfr_set_d(r9601, y, MPFR_RNDN);
        mpfr_mul(r9602, r9600, r9601, MPFR_RNDN);
        mpfr_set_d(r9603, z, MPFR_RNDN);
        mpfr_set_d(r9604, t, MPFR_RNDN);
        mpfr_mul(r9605, r9603, r9604, MPFR_RNDN);
        mpfr_add(r9606, r9602, r9605, MPFR_RNDN);
        mpfr_set_d(r9607, a, MPFR_RNDN);
        mpfr_set_d(r9608, b, MPFR_RNDN);
        mpfr_mul(r9609, r9607, r9608, MPFR_RNDN);
        mpfr_add(r9610, r9606, r9609, MPFR_RNDN);
        mpfr_set_d(r9611, c, MPFR_RNDN);
        mpfr_set_d(r9612, i, MPFR_RNDN);
        mpfr_mul(r9613, r9611, r9612, MPFR_RNDN);
        mpfr_add(r9614, r9610, r9613, MPFR_RNDN);
        return mpfr_get_d(r9614, MPFR_RNDN);
}

static mpfr_t r9615, r9616, r9617, r9618, r9619, r9620, r9621, r9622, r9623, r9624, r9625, r9626, r9627, r9628, r9629;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(336);
        mpfr_init(r9615);
        mpfr_init(r9616);
        mpfr_init(r9617);
        mpfr_init(r9618);
        mpfr_init(r9619);
        mpfr_init(r9620);
        mpfr_init(r9621);
        mpfr_init(r9622);
        mpfr_init(r9623);
        mpfr_init(r9624);
        mpfr_init(r9625);
        mpfr_init(r9626);
        mpfr_init(r9627);
        mpfr_init(r9628);
        mpfr_init(r9629);
}

double f_fm(double x, double y, double z, double t, double a, double b, double c, double i) {
        mpfr_set_d(r9615, c, MPFR_RNDN);
        mpfr_set_d(r9616, i, MPFR_RNDN);
        mpfr_mul(r9617, r9615, r9616, MPFR_RNDN);
        mpfr_set_d(r9618, z, MPFR_RNDN);
        mpfr_set_d(r9619, t, MPFR_RNDN);
        mpfr_mul(r9620, r9618, r9619, MPFR_RNDN);
        mpfr_set_d(r9621, x, MPFR_RNDN);
        mpfr_set_d(r9622, y, MPFR_RNDN);
        mpfr_mul(r9623, r9621, r9622, MPFR_RNDN);
        mpfr_add(r9624, r9620, r9623, MPFR_RNDN);
        mpfr_set_d(r9625, a, MPFR_RNDN);
        mpfr_set_d(r9626, b, MPFR_RNDN);
        mpfr_mul(r9627, r9625, r9626, MPFR_RNDN);
        mpfr_add(r9628, r9624, r9627, MPFR_RNDN);
        mpfr_add(r9629, r9617, r9628, MPFR_RNDN);
        return mpfr_get_d(r9629, MPFR_RNDN);
}

static mpfr_t r9630, r9631, r9632, r9633, r9634, r9635, r9636, r9637, r9638, r9639, r9640, r9641, r9642, r9643, r9644;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(336);
        mpfr_init(r9630);
        mpfr_init(r9631);
        mpfr_init(r9632);
        mpfr_init(r9633);
        mpfr_init(r9634);
        mpfr_init(r9635);
        mpfr_init(r9636);
        mpfr_init(r9637);
        mpfr_init(r9638);
        mpfr_init(r9639);
        mpfr_init(r9640);
        mpfr_init(r9641);
        mpfr_init(r9642);
        mpfr_init(r9643);
        mpfr_init(r9644);
}

double f_dm(double x, double y, double z, double t, double a, double b, double c, double i) {
        mpfr_set_d(r9630, c, MPFR_RNDN);
        mpfr_set_d(r9631, i, MPFR_RNDN);
        mpfr_mul(r9632, r9630, r9631, MPFR_RNDN);
        mpfr_set_d(r9633, z, MPFR_RNDN);
        mpfr_set_d(r9634, t, MPFR_RNDN);
        mpfr_mul(r9635, r9633, r9634, MPFR_RNDN);
        mpfr_set_d(r9636, x, MPFR_RNDN);
        mpfr_set_d(r9637, y, MPFR_RNDN);
        mpfr_mul(r9638, r9636, r9637, MPFR_RNDN);
        mpfr_add(r9639, r9635, r9638, MPFR_RNDN);
        mpfr_set_d(r9640, a, MPFR_RNDN);
        mpfr_set_d(r9641, b, MPFR_RNDN);
        mpfr_mul(r9642, r9640, r9641, MPFR_RNDN);
        mpfr_add(r9643, r9639, r9642, MPFR_RNDN);
        mpfr_add(r9644, r9632, r9643, MPFR_RNDN);
        return mpfr_get_d(r9644, MPFR_RNDN);
}

