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

char *name = "Random Jason Timeout Test 011";

double f_if(float a) {
        float r26010 = a;
        float r26011 = asin(r26010);
        float r26012 = fmod(r26010, r26011);
        float r26013 = atan(r26012);
        float r26014 = r26010 * r26010;
        float r26015 = pow(r26013, r26014);
        return r26015;
}

double f_id(double a) {
        double r26016 = a;
        double r26017 = asin(r26016);
        double r26018 = fmod(r26016, r26017);
        double r26019 = atan(r26018);
        double r26020 = r26016 * r26016;
        double r26021 = pow(r26019, r26020);
        return r26021;
}


double f_of(float a) {
        float r26022 = a;
        float r26023 = asin(r26022);
        float r26024 = fmod(r26022, r26023);
        float r26025 = atan(r26024);
        float r26026 = r26022 * r26022;
        float r26027 = pow(r26025, r26026);
        return r26027;
}

double f_od(double a) {
        double r26028 = a;
        double r26029 = asin(r26028);
        double r26030 = fmod(r26028, r26029);
        double r26031 = atan(r26030);
        double r26032 = r26028 * r26028;
        double r26033 = pow(r26031, r26032);
        return r26033;
}

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 r26034, r26035, r26036, r26037, r26038, r26039;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(2448);
        mpfr_init(r26034);
        mpfr_init(r26035);
        mpfr_init(r26036);
        mpfr_init(r26037);
        mpfr_init(r26038);
        mpfr_init(r26039);
}

double f_im(double a) {
        mpfr_set_d(r26034, a, MPFR_RNDN);
        mpfr_asin(r26035, r26034, MPFR_RNDN);
        mpfr_fmod(r26036, r26034, r26035, MPFR_RNDN);
        mpfr_atan(r26037, r26036, MPFR_RNDN);
        mpfr_mul(r26038, r26034, r26034, MPFR_RNDN);
        mpfr_pow(r26039, r26037, r26038, MPFR_RNDN);
        return mpfr_get_d(r26039, MPFR_RNDN);
}

static mpfr_t r26040, r26041, r26042, r26043, r26044, r26045;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(2448);
        mpfr_init(r26040);
        mpfr_init(r26041);
        mpfr_init(r26042);
        mpfr_init(r26043);
        mpfr_init(r26044);
        mpfr_init(r26045);
}

double f_fm(double a) {
        mpfr_set_d(r26040, a, MPFR_RNDN);
        mpfr_asin(r26041, r26040, MPFR_RNDN);
        mpfr_fmod(r26042, r26040, r26041, MPFR_RNDN);
        mpfr_atan(r26043, r26042, MPFR_RNDN);
        mpfr_mul(r26044, r26040, r26040, MPFR_RNDN);
        mpfr_pow(r26045, r26043, r26044, MPFR_RNDN);
        return mpfr_get_d(r26045, MPFR_RNDN);
}

static mpfr_t r26046, r26047, r26048, r26049, r26050, r26051;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(2448);
        mpfr_init(r26046);
        mpfr_init(r26047);
        mpfr_init(r26048);
        mpfr_init(r26049);
        mpfr_init(r26050);
        mpfr_init(r26051);
}

double f_dm(double a) {
        mpfr_set_d(r26046, a, MPFR_RNDN);
        mpfr_asin(r26047, r26046, MPFR_RNDN);
        mpfr_fmod(r26048, r26046, r26047, MPFR_RNDN);
        mpfr_atan(r26049, r26048, MPFR_RNDN);
        mpfr_mul(r26050, r26046, r26046, MPFR_RNDN);
        mpfr_pow(r26051, r26049, r26050, MPFR_RNDN);
        return mpfr_get_d(r26051, MPFR_RNDN);
}

