#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 r29119 = x;
        float r29120 = y;
        float r29121 = r29119 * r29120;
        float r29122 = z;
        float r29123 = t;
        float r29124 = r29122 * r29123;
        float r29125 = r29121 + r29124;
        float r29126 = a;
        float r29127 = b;
        float r29128 = r29126 * r29127;
        float r29129 = r29125 + r29128;
        float r29130 = c;
        float r29131 = i;
        float r29132 = r29130 * r29131;
        float r29133 = r29129 + r29132;
        return r29133;
}

double f_id(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r29134 = x;
        double r29135 = y;
        double r29136 = r29134 * r29135;
        double r29137 = z;
        double r29138 = t;
        double r29139 = r29137 * r29138;
        double r29140 = r29136 + r29139;
        double r29141 = a;
        double r29142 = b;
        double r29143 = r29141 * r29142;
        double r29144 = r29140 + r29143;
        double r29145 = c;
        double r29146 = i;
        double r29147 = r29145 * r29146;
        double r29148 = r29144 + r29147;
        return r29148;
}


double f_of(float x, float y, float z, float t, float a, float b, float c, float i) {
        float r29149 = x;
        float r29150 = y;
        float r29151 = r29149 * r29150;
        float r29152 = z;
        float r29153 = t;
        float r29154 = r29152 * r29153;
        float r29155 = r29151 + r29154;
        float r29156 = a;
        float r29157 = b;
        float r29158 = r29156 * r29157;
        float r29159 = r29155 + r29158;
        float r29160 = c;
        float r29161 = i;
        float r29162 = r29160 * r29161;
        float r29163 = r29159 + r29162;
        return r29163;
}

double f_od(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r29164 = x;
        double r29165 = y;
        double r29166 = r29164 * r29165;
        double r29167 = z;
        double r29168 = t;
        double r29169 = r29167 * r29168;
        double r29170 = r29166 + r29169;
        double r29171 = a;
        double r29172 = b;
        double r29173 = r29171 * r29172;
        double r29174 = r29170 + r29173;
        double r29175 = c;
        double r29176 = i;
        double r29177 = r29175 * r29176;
        double r29178 = r29174 + r29177;
        return r29178;
}

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 r29179, r29180, r29181, r29182, r29183, r29184, r29185, r29186, r29187, r29188, r29189, r29190, r29191, r29192, r29193;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(400);
        mpfr_init(r29179);
        mpfr_init(r29180);
        mpfr_init(r29181);
        mpfr_init(r29182);
        mpfr_init(r29183);
        mpfr_init(r29184);
        mpfr_init(r29185);
        mpfr_init(r29186);
        mpfr_init(r29187);
        mpfr_init(r29188);
        mpfr_init(r29189);
        mpfr_init(r29190);
        mpfr_init(r29191);
        mpfr_init(r29192);
        mpfr_init(r29193);
}

double f_im(double x, double y, double z, double t, double a, double b, double c, double i) {
        mpfr_set_d(r29179, x, MPFR_RNDN);
        mpfr_set_d(r29180, y, MPFR_RNDN);
        mpfr_mul(r29181, r29179, r29180, MPFR_RNDN);
        mpfr_set_d(r29182, z, MPFR_RNDN);
        mpfr_set_d(r29183, t, MPFR_RNDN);
        mpfr_mul(r29184, r29182, r29183, MPFR_RNDN);
        mpfr_add(r29185, r29181, r29184, MPFR_RNDN);
        mpfr_set_d(r29186, a, MPFR_RNDN);
        mpfr_set_d(r29187, b, MPFR_RNDN);
        mpfr_mul(r29188, r29186, r29187, MPFR_RNDN);
        mpfr_add(r29189, r29185, r29188, MPFR_RNDN);
        mpfr_set_d(r29190, c, MPFR_RNDN);
        mpfr_set_d(r29191, i, MPFR_RNDN);
        mpfr_mul(r29192, r29190, r29191, MPFR_RNDN);
        mpfr_add(r29193, r29189, r29192, MPFR_RNDN);
        return mpfr_get_d(r29193, MPFR_RNDN);
}

static mpfr_t r29194, r29195, r29196, r29197, r29198, r29199, r29200, r29201, r29202, r29203, r29204, r29205, r29206, r29207, r29208;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(400);
        mpfr_init(r29194);
        mpfr_init(r29195);
        mpfr_init(r29196);
        mpfr_init(r29197);
        mpfr_init(r29198);
        mpfr_init(r29199);
        mpfr_init(r29200);
        mpfr_init(r29201);
        mpfr_init(r29202);
        mpfr_init(r29203);
        mpfr_init(r29204);
        mpfr_init(r29205);
        mpfr_init(r29206);
        mpfr_init(r29207);
        mpfr_init(r29208);
}

double f_fm(double x, double y, double z, double t, double a, double b, double c, double i) {
        mpfr_set_d(r29194, x, MPFR_RNDN);
        mpfr_set_d(r29195, y, MPFR_RNDN);
        mpfr_mul(r29196, r29194, r29195, MPFR_RNDN);
        mpfr_set_d(r29197, z, MPFR_RNDN);
        mpfr_set_d(r29198, t, MPFR_RNDN);
        mpfr_mul(r29199, r29197, r29198, MPFR_RNDN);
        mpfr_add(r29200, r29196, r29199, MPFR_RNDN);
        mpfr_set_d(r29201, a, MPFR_RNDN);
        mpfr_set_d(r29202, b, MPFR_RNDN);
        mpfr_mul(r29203, r29201, r29202, MPFR_RNDN);
        mpfr_add(r29204, r29200, r29203, MPFR_RNDN);
        mpfr_set_d(r29205, c, MPFR_RNDN);
        mpfr_set_d(r29206, i, MPFR_RNDN);
        mpfr_mul(r29207, r29205, r29206, MPFR_RNDN);
        mpfr_add(r29208, r29204, r29207, MPFR_RNDN);
        return mpfr_get_d(r29208, MPFR_RNDN);
}

static mpfr_t r29209, r29210, r29211, r29212, r29213, r29214, r29215, r29216, r29217, r29218, r29219, r29220, r29221, r29222, r29223;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(400);
        mpfr_init(r29209);
        mpfr_init(r29210);
        mpfr_init(r29211);
        mpfr_init(r29212);
        mpfr_init(r29213);
        mpfr_init(r29214);
        mpfr_init(r29215);
        mpfr_init(r29216);
        mpfr_init(r29217);
        mpfr_init(r29218);
        mpfr_init(r29219);
        mpfr_init(r29220);
        mpfr_init(r29221);
        mpfr_init(r29222);
        mpfr_init(r29223);
}

double f_dm(double x, double y, double z, double t, double a, double b, double c, double i) {
        mpfr_set_d(r29209, x, MPFR_RNDN);
        mpfr_set_d(r29210, y, MPFR_RNDN);
        mpfr_mul(r29211, r29209, r29210, MPFR_RNDN);
        mpfr_set_d(r29212, z, MPFR_RNDN);
        mpfr_set_d(r29213, t, MPFR_RNDN);
        mpfr_mul(r29214, r29212, r29213, MPFR_RNDN);
        mpfr_add(r29215, r29211, r29214, MPFR_RNDN);
        mpfr_set_d(r29216, a, MPFR_RNDN);
        mpfr_set_d(r29217, b, MPFR_RNDN);
        mpfr_mul(r29218, r29216, r29217, MPFR_RNDN);
        mpfr_add(r29219, r29215, r29218, MPFR_RNDN);
        mpfr_set_d(r29220, c, MPFR_RNDN);
        mpfr_set_d(r29221, i, MPFR_RNDN);
        mpfr_mul(r29222, r29220, r29221, MPFR_RNDN);
        mpfr_add(r29223, r29219, r29222, MPFR_RNDN);
        return mpfr_get_d(r29223, MPFR_RNDN);
}

