
#include "xmlvm.h"
#include "java_lang_Math.h"


//XMLVM_BEGIN_NATIVE_IMPLEMENTATION

#include <math.h>

//XMLVM_END_NATIVE_IMPLEMENTATION

JAVA_DOUBLE java_lang_Math_acos___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_acos___double]
    return acos(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_asin___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_asin___double]
    return asin(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_atan___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_atan___double]
    return atan(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_atan2___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_atan2___double_double]
    return atan2(n1, n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_cbrt___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_cbrt___double]
    return cbrt(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_ceil___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_ceil___double]
	return ceil(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_cos___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_cos___double]
    return cos(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_cosh___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_cosh___double]
    return cosh(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_exp___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_exp___double]
    return exp(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_expm1___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_expm1___double]
    return expm1(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_floor___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_floor___double]
    return floor(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_hypot___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_hypot___double_double]
    return hypot(n1, n2);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_IEEEremainder___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_IEEEremainder___double_double]
    return remainder(n1, n2);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_log___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_log___double]
    return log(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_log10___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_log10___double]
    return log10(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_log1p___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_log1p___double]
    return log1p(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_pow___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_pow___double_double]
    return pow(n1, n2);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_rint___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_rint___double]
    return rint(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_sin___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_sin___double]
    return sin(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_sinh___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_sinh___double]
    return sinh(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_sqrt___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_sqrt___double]
    return sqrt(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_tan___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_tan___double]
    return tan(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_tanh___double(JAVA_DOUBLE n1)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_tanh___double]
    return tanh(n1);
    //XMLVM_END_NATIVE
}

JAVA_DOUBLE java_lang_Math_nextafter___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_nextafter___double_double]
    return nextafter(n1, n2);
    //XMLVM_END_NATIVE
}

JAVA_FLOAT java_lang_Math_nextafterf___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2)
{
    //XMLVM_BEGIN_NATIVE[java_lang_Math_nextafterf___float_float]
    return nextafterf(n1, n2);
    //XMLVM_END_NATIVE
}

