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

char *name = "Graphics.Rendering.Plot.Render.Plot.Legend:renderLegendOutside from plot-0.2.3.4, C";

double f_if(float x, float y, float z) {
        float r48322 = x;
        float r48323 = y;
        float r48324 = z;
        float r48325 = r48323 + r48324;
        float r48326 = r48322 * r48325;
        float r48327 = 5.0;
        float r48328 = r48324 * r48327;
        float r48329 = r48326 + r48328;
        return r48329;
}

double f_id(double x, double y, double z) {
        double r48330 = x;
        double r48331 = y;
        double r48332 = z;
        double r48333 = r48331 + r48332;
        double r48334 = r48330 * r48333;
        double r48335 = 5.0;
        double r48336 = r48332 * r48335;
        double r48337 = r48334 + r48336;
        return r48337;
}


double f_of(float x, float y, float z) {
        float r48338 = x;
        float r48339 = y;
        float r48340 = z;
        float r48341 = r48339 + r48340;
        float r48342 = r48338 * r48341;
        float r48343 = 5.0;
        float r48344 = r48340 * r48343;
        float r48345 = r48342 + r48344;
        return r48345;
}

double f_od(double x, double y, double z) {
        double r48346 = x;
        double r48347 = y;
        double r48348 = z;
        double r48349 = r48347 + r48348;
        double r48350 = r48346 * r48349;
        double r48351 = 5.0;
        double r48352 = r48348 * r48351;
        double r48353 = r48350 + r48352;
        return r48353;
}

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 r48354, r48355, r48356, r48357, r48358, r48359, r48360, r48361;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(1424);
        mpfr_init(r48354);
        mpfr_init(r48355);
        mpfr_init(r48356);
        mpfr_init(r48357);
        mpfr_init(r48358);
        mpfr_init_set_str(r48359, "5.0", 10, MPFR_RNDN);
        mpfr_init(r48360);
        mpfr_init(r48361);
}

double f_im(double x, double y, double z) {
        mpfr_set_d(r48354, x, MPFR_RNDN);
        mpfr_set_d(r48355, y, MPFR_RNDN);
        mpfr_set_d(r48356, z, MPFR_RNDN);
        mpfr_add(r48357, r48355, r48356, MPFR_RNDN);
        mpfr_mul(r48358, r48354, r48357, MPFR_RNDN);
        ;
        mpfr_mul(r48360, r48356, r48359, MPFR_RNDN);
        mpfr_add(r48361, r48358, r48360, MPFR_RNDN);
        return mpfr_get_d(r48361, MPFR_RNDN);
}

static mpfr_t r48362, r48363, r48364, r48365, r48366, r48367, r48368, r48369;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(1424);
        mpfr_init(r48362);
        mpfr_init(r48363);
        mpfr_init(r48364);
        mpfr_init(r48365);
        mpfr_init(r48366);
        mpfr_init_set_str(r48367, "5.0", 10, MPFR_RNDN);
        mpfr_init(r48368);
        mpfr_init(r48369);
}

double f_fm(double x, double y, double z) {
        mpfr_set_d(r48362, x, MPFR_RNDN);
        mpfr_set_d(r48363, y, MPFR_RNDN);
        mpfr_set_d(r48364, z, MPFR_RNDN);
        mpfr_add(r48365, r48363, r48364, MPFR_RNDN);
        mpfr_mul(r48366, r48362, r48365, MPFR_RNDN);
        ;
        mpfr_mul(r48368, r48364, r48367, MPFR_RNDN);
        mpfr_add(r48369, r48366, r48368, MPFR_RNDN);
        return mpfr_get_d(r48369, MPFR_RNDN);
}

static mpfr_t r48370, r48371, r48372, r48373, r48374, r48375, r48376, r48377;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(1424);
        mpfr_init(r48370);
        mpfr_init(r48371);
        mpfr_init(r48372);
        mpfr_init(r48373);
        mpfr_init(r48374);
        mpfr_init_set_str(r48375, "5.0", 10, MPFR_RNDN);
        mpfr_init(r48376);
        mpfr_init(r48377);
}

double f_dm(double x, double y, double z) {
        mpfr_set_d(r48370, x, MPFR_RNDN);
        mpfr_set_d(r48371, y, MPFR_RNDN);
        mpfr_set_d(r48372, z, MPFR_RNDN);
        mpfr_add(r48373, r48371, r48372, MPFR_RNDN);
        mpfr_mul(r48374, r48370, r48373, MPFR_RNDN);
        ;
        mpfr_mul(r48376, r48372, r48375, MPFR_RNDN);
        mpfr_add(r48377, r48374, r48376, MPFR_RNDN);
        return mpfr_get_d(r48377, MPFR_RNDN);
}

