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

char *name = "Main:i from ";

double f_if(float x) {
        float r28904 = x;
        float r28905 = r28904 + r28904;
        float r28906 = r28905 + r28904;
        float r28907 = r28906 + r28904;
        float r28908 = r28907 + r28904;
        return r28908;
}

double f_id(double x) {
        double r28909 = x;
        double r28910 = r28909 + r28909;
        double r28911 = r28910 + r28909;
        double r28912 = r28911 + r28909;
        double r28913 = r28912 + r28909;
        return r28913;
}


double f_of(float x) {
        float r28914 = x;
        float r28915 = r28914 + r28914;
        float r28916 = r28915 + r28914;
        float r28917 = r28916 + r28914;
        float r28918 = r28917 + r28914;
        return r28918;
}

double f_od(double x) {
        double r28919 = x;
        double r28920 = r28919 + r28919;
        double r28921 = r28920 + r28919;
        double r28922 = r28921 + r28919;
        double r28923 = r28922 + r28919;
        return r28923;
}

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 r28924, r28925, r28926, r28927, r28928;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(400);
        mpfr_init(r28924);
        mpfr_init(r28925);
        mpfr_init(r28926);
        mpfr_init(r28927);
        mpfr_init(r28928);
}

double f_im(double x) {
        mpfr_set_d(r28924, x, MPFR_RNDN);
        mpfr_add(r28925, r28924, r28924, MPFR_RNDN);
        mpfr_add(r28926, r28925, r28924, MPFR_RNDN);
        mpfr_add(r28927, r28926, r28924, MPFR_RNDN);
        mpfr_add(r28928, r28927, r28924, MPFR_RNDN);
        return mpfr_get_d(r28928, MPFR_RNDN);
}

static mpfr_t r28929, r28930, r28931, r28932, r28933;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(400);
        mpfr_init(r28929);
        mpfr_init(r28930);
        mpfr_init(r28931);
        mpfr_init(r28932);
        mpfr_init(r28933);
}

double f_fm(double x) {
        mpfr_set_d(r28929, x, MPFR_RNDN);
        mpfr_add(r28930, r28929, r28929, MPFR_RNDN);
        mpfr_add(r28931, r28930, r28929, MPFR_RNDN);
        mpfr_add(r28932, r28931, r28929, MPFR_RNDN);
        mpfr_add(r28933, r28932, r28929, MPFR_RNDN);
        return mpfr_get_d(r28933, MPFR_RNDN);
}

static mpfr_t r28934, r28935, r28936, r28937, r28938;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(400);
        mpfr_init(r28934);
        mpfr_init(r28935);
        mpfr_init(r28936);
        mpfr_init(r28937);
        mpfr_init(r28938);
}

double f_dm(double x) {
        mpfr_set_d(r28934, x, MPFR_RNDN);
        mpfr_add(r28935, r28934, r28934, MPFR_RNDN);
        mpfr_add(r28936, r28935, r28934, MPFR_RNDN);
        mpfr_add(r28937, r28936, r28934, MPFR_RNDN);
        mpfr_add(r28938, r28937, r28934, MPFR_RNDN);
        return mpfr_get_d(r28938, MPFR_RNDN);
}

