// Generated by jextract

package c.lib.math;

import java.lang.invoke.MethodHandle;
import java.lang.invoke.VarHandle;
import java.nio.ByteOrder;
import java.lang.foreign.*;
import static java.lang.foreign.ValueLayout.*;
public class math_h  {

    public static final OfByte C_CHAR = JAVA_BYTE;
    public static final OfShort C_SHORT = JAVA_SHORT;
    public static final OfInt C_INT = JAVA_INT;
    public static final OfInt C_LONG = JAVA_INT;
    public static final OfLong C_LONG_LONG = JAVA_LONG;
    public static final OfFloat C_FLOAT = JAVA_FLOAT;
    public static final OfDouble C_DOUBLE = JAVA_DOUBLE;
    public static final AddressLayout C_POINTER = RuntimeHelper.POINTER;
    /**
     * {@snippet :
     * #define MINGW_HAS_SECURE_API 1
     * }
     */
    public static int MINGW_HAS_SECURE_API() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define __MINGW64_VERSION_MAJOR 6
     * }
     */
    public static int __MINGW64_VERSION_MAJOR() {
        return (int)6L;
    }
    /**
     * {@snippet :
     * #define __MINGW64_VERSION_MINOR 0
     * }
     */
    public static int __MINGW64_VERSION_MINOR() {
        return (int)0L;
    }
    /**
     * {@snippet :
     * #define __MINGW64_VERSION_BUGFIX 0
     * }
     */
    public static int __MINGW64_VERSION_BUGFIX() {
        return (int)0L;
    }
    /**
     * {@snippet :
     * #define __MINGW64_VERSION_RC 0
     * }
     */
    public static int __MINGW64_VERSION_RC() {
        return (int)0L;
    }
    /**
     * {@snippet :
     * #define __MINGW32_MAJOR_VERSION 3
     * }
     */
    public static int __MINGW32_MAJOR_VERSION() {
        return (int)3L;
    }
    /**
     * {@snippet :
     * #define __MINGW32_MINOR_VERSION 11
     * }
     */
    public static int __MINGW32_MINOR_VERSION() {
        return (int)11L;
    }
    /**
     * {@snippet :
     * #define _ 1
     * }
     */
    public static int __() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define __MINGW_USE_UNDERSCORE_PREFIX 0
     * }
     */
    public static int __MINGW_USE_UNDERSCORE_PREFIX() {
        return (int)0L;
    }
    /**
     * {@snippet :
     * #define __MINGW_HAVE_ANSI_C99_PRINTF 1
     * }
     */
    public static int __MINGW_HAVE_ANSI_C99_PRINTF() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define __MINGW_HAVE_WIDE_C99_PRINTF 1
     * }
     */
    public static int __MINGW_HAVE_WIDE_C99_PRINTF() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define __MINGW_HAVE_ANSI_C99_SCANF 1
     * }
     */
    public static int __MINGW_HAVE_ANSI_C99_SCANF() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define __MINGW_HAVE_WIDE_C99_SCANF 1
     * }
     */
    public static int __MINGW_HAVE_WIDE_C99_SCANF() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define __MINGW_GCC_VERSION 0
     * }
     */
    public static int __MINGW_GCC_VERSION() {
        return (int)0L;
    }
    /**
     * {@snippet :
     * #define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES 0
     * }
     */
    public static int _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES() {
        return (int)0L;
    }
    /**
     * {@snippet :
     * #define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY 0
     * }
     */
    public static int _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY() {
        return (int)0L;
    }
    /**
     * {@snippet :
     * #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES 0
     * }
     */
    public static int _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES() {
        return (int)0L;
    }
    /**
     * {@snippet :
     * #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT 0
     * }
     */
    public static int _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT() {
        return (int)0L;
    }
    /**
     * {@snippet :
     * #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY 0
     * }
     */
    public static int _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY() {
        return (int)0L;
    }
    /**
     * {@snippet :
     * #define USE___UUIDOF 1
     * }
     */
    public static int USE___UUIDOF() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define __CRT__NO_INLINE 1
     * }
     */
    public static int __CRT__NO_INLINE() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define __MSVCRT_VERSION__ 1792
     * }
     */
    public static int __MSVCRT_VERSION__() {
        return (int)1792L;
    }
    /**
     * {@snippet :
     * #define _WIN32_WINNT 1282
     * }
     */
    public static int _WIN32_WINNT() {
        return (int)1282L;
    }
    /**
     * {@snippet :
     * #define __MINGW_HAS_DXSDK 1
     * }
     */
    public static int __MINGW_HAS_DXSDK() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define MINGW_HAS_DDRAW_H 1
     * }
     */
    public static int MINGW_HAS_DDRAW_H() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define MINGW_DDRAW_VERSION 7
     * }
     */
    public static int MINGW_DDRAW_VERSION() {
        return (int)7L;
    }
    /**
     * {@snippet :
     * #define MINGW_HAS_DDK_H 1
     * }
     */
    public static int MINGW_HAS_DDK_H() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define _CRT_PACKING 8
     * }
     */
    public static int _CRT_PACKING() {
        return (int)8L;
    }
    /**
     * {@snippet :
     * #define _SECURECRT_FILL_BUFFER_PATTERN 253
     * }
     */
    public static int _SECURECRT_FILL_BUFFER_PATTERN() {
        return (int)253L;
    }
    /**
     * {@snippet :
     * #define _ARGMAX 100
     * }
     */
    public static int _ARGMAX() {
        return (int)100L;
    }
    /**
     * {@snippet :
     * #define _DOMAIN 1
     * }
     */
    public static int _DOMAIN() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define _SING 2
     * }
     */
    public static int _SING() {
        return (int)2L;
    }
    /**
     * {@snippet :
     * #define _OVERFLOW 3
     * }
     */
    public static int _OVERFLOW() {
        return (int)3L;
    }
    /**
     * {@snippet :
     * #define _UNDERFLOW 4
     * }
     */
    public static int _UNDERFLOW() {
        return (int)4L;
    }
    /**
     * {@snippet :
     * #define _TLOSS 5
     * }
     */
    public static int _TLOSS() {
        return (int)5L;
    }
    /**
     * {@snippet :
     * #define _PLOSS 6
     * }
     */
    public static int _PLOSS() {
        return (int)6L;
    }
    /**
     * {@snippet :
     * #define __MINGW_FPCLASS_DEFINED 1
     * }
     */
    public static int __MINGW_FPCLASS_DEFINED() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define _FPCLASS_SNAN 1
     * }
     */
    public static int _FPCLASS_SNAN() {
        return (int)1L;
    }
    /**
     * {@snippet :
     * #define _FPCLASS_QNAN 2
     * }
     */
    public static int _FPCLASS_QNAN() {
        return (int)2L;
    }
    /**
     * {@snippet :
     * #define _FPCLASS_NINF 4
     * }
     */
    public static int _FPCLASS_NINF() {
        return (int)4L;
    }
    /**
     * {@snippet :
     * #define _FPCLASS_NN 8
     * }
     */
    public static int _FPCLASS_NN() {
        return (int)8L;
    }
    /**
     * {@snippet :
     * #define _FPCLASS_ND 16
     * }
     */
    public static int _FPCLASS_ND() {
        return (int)16L;
    }
    /**
     * {@snippet :
     * #define _FPCLASS_NZ 32
     * }
     */
    public static int _FPCLASS_NZ() {
        return (int)32L;
    }
    /**
     * {@snippet :
     * #define _FPCLASS_PZ 64
     * }
     */
    public static int _FPCLASS_PZ() {
        return (int)64L;
    }
    /**
     * {@snippet :
     * #define _FPCLASS_PD 128
     * }
     */
    public static int _FPCLASS_PD() {
        return (int)128L;
    }
    /**
     * {@snippet :
     * #define _FPCLASS_PN 256
     * }
     */
    public static int _FPCLASS_PN() {
        return (int)256L;
    }
    /**
     * {@snippet :
     * #define _FPCLASS_PINF 512
     * }
     */
    public static int _FPCLASS_PINF() {
        return (int)512L;
    }
    /**
     * {@snippet :
     * #define EDOM 33
     * }
     */
    public static int EDOM() {
        return (int)33L;
    }
    /**
     * {@snippet :
     * #define ERANGE 34
     * }
     */
    public static int ERANGE() {
        return (int)34L;
    }
    /**
     * {@snippet :
     * #define FP_NAN 256
     * }
     */
    public static int FP_NAN() {
        return (int)256L;
    }
    /**
     * {@snippet :
     * #define FP_NORMAL 1024
     * }
     */
    public static int FP_NORMAL() {
        return (int)1024L;
    }
    /**
     * {@snippet :
     * #define FP_ZERO 16384
     * }
     */
    public static int FP_ZERO() {
        return (int)16384L;
    }
    /**
     * {@snippet :
     * typedef char* va_list;
     * }
     */
    public static final AddressLayout va_list = RuntimeHelper.POINTER;
    public static MethodHandle __mingw_get_crt_info$MH() {
        return RuntimeHelper.requireNonNull(constants$0.const$1,"__mingw_get_crt_info");
    }
    /**
     * {@snippet :
     * char* __mingw_get_crt_info();
     * }
     */
    public static MemorySegment __mingw_get_crt_info() {
        var mh$ = __mingw_get_crt_info$MH();
        try {
            return (java.lang.foreign.MemorySegment)mh$.invokeExact();
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    /**
     * {@snippet :
     * typedef unsigned long long size_t;
     * }
     */
    public static final OfLong size_t = JAVA_LONG;
    /**
     * {@snippet :
     * typedef long long ssize_t;
     * }
     */
    public static final OfLong ssize_t = JAVA_LONG;
    /**
     * {@snippet :
     * typedef unsigned long long rsize_t;
     * }
     */
    public static final OfLong rsize_t = JAVA_LONG;
    /**
     * {@snippet :
     * typedef long long intptr_t;
     * }
     */
    public static final OfLong intptr_t = JAVA_LONG;
    /**
     * {@snippet :
     * typedef unsigned long long uintptr_t;
     * }
     */
    public static final OfLong uintptr_t = JAVA_LONG;
    /**
     * {@snippet :
     * typedef long long ptrdiff_t;
     * }
     */
    public static final OfLong ptrdiff_t = JAVA_LONG;
    /**
     * {@snippet :
     * typedef unsigned short wchar_t;
     * }
     */
    public static final OfShort wchar_t = JAVA_SHORT;
    /**
     * {@snippet :
     * typedef unsigned short wint_t;
     * }
     */
    public static final OfShort wint_t = JAVA_SHORT;
    /**
     * {@snippet :
     * typedef unsigned short wctype_t;
     * }
     */
    public static final OfShort wctype_t = JAVA_SHORT;
    /**
     * {@snippet :
     * typedef int errno_t;
     * }
     */
    public static final OfInt errno_t = JAVA_INT;
    /**
     * {@snippet :
     * typedef long __time32_t;
     * }
     */
    public static final OfInt __time32_t = JAVA_INT;
    /**
     * {@snippet :
     * typedef long long __time64_t;
     * }
     */
    public static final OfLong __time64_t = JAVA_LONG;
    /**
     * {@snippet :
     * typedef long long time_t;
     * }
     */
    public static final OfLong time_t = JAVA_LONG;
    /**
     * {@snippet :
     * typedef struct threadlocaleinfostruct* pthreadlocinfo;
     * }
     */
    public static final AddressLayout pthreadlocinfo = RuntimeHelper.POINTER;
    /**
     * {@snippet :
     * typedef struct threadmbcinfostruct* pthreadmbcinfo;
     * }
     */
    public static final AddressLayout pthreadmbcinfo = RuntimeHelper.POINTER;
    /**
     * {@snippet :
     * typedef struct localeinfo_struct* _locale_t;
     * }
     */
    public static final AddressLayout _locale_t = RuntimeHelper.POINTER;
    /**
     * {@snippet :
     * typedef struct tagLC_ID* LPLC_ID;
     * }
     */
    public static final AddressLayout LPLC_ID = RuntimeHelper.POINTER;
    public static MemoryLayout __imp__HUGE$LAYOUT() {
        return RuntimeHelper.POINTER;
    }
    public static VarHandle __imp__HUGE$VH() {
        return constants$7.const$4;
    }
    public static MemorySegment __imp__HUGE$SEGMENT() {
        return RuntimeHelper.requireNonNull(constants$7.const$5,"__imp__HUGE");
    }
    /**
     * Getter for variable:
     * {@snippet :
     * double* __imp__HUGE;
     * }
     */
    public static MemorySegment __imp__HUGE$get() {
        return (java.lang.foreign.MemorySegment) constants$7.const$4.get(RuntimeHelper.requireNonNull(constants$7.const$5, "__imp__HUGE"));
    }
    /**
     * Setter for variable:
     * {@snippet :
     * double* __imp__HUGE;
     * }
     */
    public static void __imp__HUGE$set(MemorySegment x) {
        constants$7.const$4.set(RuntimeHelper.requireNonNull(constants$7.const$5, "__imp__HUGE"), x);
    }
    public static MethodHandle __mingw_raise_matherr$MH() {
        return RuntimeHelper.requireNonNull(constants$9.const$1,"__mingw_raise_matherr");
    }
    /**
     * {@snippet :
     * void __mingw_raise_matherr(int typ, char* name, double a1, double a2, double rslt);
     * }
     */
    public static void __mingw_raise_matherr(int typ, MemorySegment name, double a1, double a2, double rslt) {
        var mh$ = __mingw_raise_matherr$MH();
        try {
            mh$.invokeExact(typ, name, a1, a2, rslt);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle __mingw_setusermatherr$MH() {
        return RuntimeHelper.requireNonNull(constants$9.const$6,"__mingw_setusermatherr");
    }
    /**
     * {@snippet :
     * void __mingw_setusermatherr(int (*)(struct _exception*));
     * }
     */
    public static void __mingw_setusermatherr(MemorySegment x0) {
        var mh$ = __mingw_setusermatherr$MH();
        try {
            mh$.invokeExact(x0);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle __setusermatherr$MH() {
        return RuntimeHelper.requireNonNull(constants$10.const$1,"__setusermatherr");
    }
    /**
     * {@snippet :
     * void __setusermatherr(int (*)(struct _exception*));
     * }
     */
    public static void __setusermatherr(MemorySegment x0) {
        var mh$ = __setusermatherr$MH();
        try {
            mh$.invokeExact(x0);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle sin$MH() {
        return RuntimeHelper.requireNonNull(constants$10.const$3,"sin");
    }
    /**
     * {@snippet :
     * double sin(double _X);
     * }
     */
    public static double sin(double _X) {
        var mh$ = sin$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle cos$MH() {
        return RuntimeHelper.requireNonNull(constants$10.const$4,"cos");
    }
    /**
     * {@snippet :
     * double cos(double _X);
     * }
     */
    public static double cos(double _X) {
        var mh$ = cos$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle tan$MH() {
        return RuntimeHelper.requireNonNull(constants$10.const$5,"tan");
    }
    /**
     * {@snippet :
     * double tan(double _X);
     * }
     */
    public static double tan(double _X) {
        var mh$ = tan$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle sinh$MH() {
        return RuntimeHelper.requireNonNull(constants$11.const$0,"sinh");
    }
    /**
     * {@snippet :
     * double sinh(double _X);
     * }
     */
    public static double sinh(double _X) {
        var mh$ = sinh$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle cosh$MH() {
        return RuntimeHelper.requireNonNull(constants$11.const$1,"cosh");
    }
    /**
     * {@snippet :
     * double cosh(double _X);
     * }
     */
    public static double cosh(double _X) {
        var mh$ = cosh$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle tanh$MH() {
        return RuntimeHelper.requireNonNull(constants$11.const$2,"tanh");
    }
    /**
     * {@snippet :
     * double tanh(double _X);
     * }
     */
    public static double tanh(double _X) {
        var mh$ = tanh$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle asin$MH() {
        return RuntimeHelper.requireNonNull(constants$11.const$3,"asin");
    }
    /**
     * {@snippet :
     * double asin(double _X);
     * }
     */
    public static double asin(double _X) {
        var mh$ = asin$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle acos$MH() {
        return RuntimeHelper.requireNonNull(constants$11.const$4,"acos");
    }
    /**
     * {@snippet :
     * double acos(double _X);
     * }
     */
    public static double acos(double _X) {
        var mh$ = acos$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle atan$MH() {
        return RuntimeHelper.requireNonNull(constants$11.const$5,"atan");
    }
    /**
     * {@snippet :
     * double atan(double _X);
     * }
     */
    public static double atan(double _X) {
        var mh$ = atan$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle atan2$MH() {
        return RuntimeHelper.requireNonNull(constants$12.const$1,"atan2");
    }
    /**
     * {@snippet :
     * double atan2(double _Y, double _X);
     * }
     */
    public static double atan2(double _Y, double _X) {
        var mh$ = atan2$MH();
        try {
            return (double)mh$.invokeExact(_Y, _X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle exp$MH() {
        return RuntimeHelper.requireNonNull(constants$12.const$2,"exp");
    }
    /**
     * {@snippet :
     * double exp(double _X);
     * }
     */
    public static double exp(double _X) {
        var mh$ = exp$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle log$MH() {
        return RuntimeHelper.requireNonNull(constants$12.const$3,"log");
    }
    /**
     * {@snippet :
     * double log(double _X);
     * }
     */
    public static double log(double _X) {
        var mh$ = log$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle log10$MH() {
        return RuntimeHelper.requireNonNull(constants$12.const$4,"log10");
    }
    /**
     * {@snippet :
     * double log10(double _X);
     * }
     */
    public static double log10(double _X) {
        var mh$ = log10$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle pow$MH() {
        return RuntimeHelper.requireNonNull(constants$12.const$5,"pow");
    }
    /**
     * {@snippet :
     * double pow(double _X, double _Y);
     * }
     */
    public static double pow(double _X, double _Y) {
        var mh$ = pow$MH();
        try {
            return (double)mh$.invokeExact(_X, _Y);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle sqrt$MH() {
        return RuntimeHelper.requireNonNull(constants$13.const$0,"sqrt");
    }
    /**
     * {@snippet :
     * double sqrt(double _X);
     * }
     */
    public static double sqrt(double _X) {
        var mh$ = sqrt$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle ceil$MH() {
        return RuntimeHelper.requireNonNull(constants$13.const$1,"ceil");
    }
    /**
     * {@snippet :
     * double ceil(double _X);
     * }
     */
    public static double ceil(double _X) {
        var mh$ = ceil$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle floor$MH() {
        return RuntimeHelper.requireNonNull(constants$13.const$2,"floor");
    }
    /**
     * {@snippet :
     * double floor(double _X);
     * }
     */
    public static double floor(double _X) {
        var mh$ = floor$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle fabsf$MH() {
        return RuntimeHelper.requireNonNull(constants$13.const$4,"fabsf");
    }
    /**
     * {@snippet :
     * float fabsf(float x);
     * }
     */
    public static float fabsf(float x) {
        var mh$ = fabsf$MH();
        try {
            return (float)mh$.invokeExact(x);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle fabsl$MH() {
        return RuntimeHelper.requireNonNull(constants$13.const$5,"fabsl");
    }
    /**
     * {@snippet :
     * long double fabsl(long double);
     * }
     */
    public static double fabsl(double x0) {
        var mh$ = fabsl$MH();
        try {
            return (double)mh$.invokeExact(x0);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle fabs$MH() {
        return RuntimeHelper.requireNonNull(constants$14.const$0,"fabs");
    }
    /**
     * {@snippet :
     * double fabs(double _X);
     * }
     */
    public static double fabs(double _X) {
        var mh$ = fabs$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle ldexp$MH() {
        return RuntimeHelper.requireNonNull(constants$14.const$2,"ldexp");
    }
    /**
     * {@snippet :
     * double ldexp(double _X, int _Y);
     * }
     */
    public static double ldexp(double _X, int _Y) {
        var mh$ = ldexp$MH();
        try {
            return (double)mh$.invokeExact(_X, _Y);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle frexp$MH() {
        return RuntimeHelper.requireNonNull(constants$14.const$4,"frexp");
    }
    /**
     * {@snippet :
     * double frexp(double _X, int* _Y);
     * }
     */
    public static double frexp(double _X, MemorySegment _Y) {
        var mh$ = frexp$MH();
        try {
            return (double)mh$.invokeExact(_X, _Y);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle modf$MH() {
        return RuntimeHelper.requireNonNull(constants$14.const$5,"modf");
    }
    /**
     * {@snippet :
     * double modf(double _X, double* _Y);
     * }
     */
    public static double modf(double _X, MemorySegment _Y) {
        var mh$ = modf$MH();
        try {
            return (double)mh$.invokeExact(_X, _Y);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle fmod$MH() {
        return RuntimeHelper.requireNonNull(constants$15.const$0,"fmod");
    }
    /**
     * {@snippet :
     * double fmod(double _X, double _Y);
     * }
     */
    public static double fmod(double _X, double _Y) {
        var mh$ = fmod$MH();
        try {
            return (double)mh$.invokeExact(_X, _Y);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle sincos$MH() {
        return RuntimeHelper.requireNonNull(constants$15.const$2,"sincos");
    }
    /**
     * {@snippet :
     * void sincos(double __x, double* p_sin, double* p_cos);
     * }
     */
    public static void sincos(double __x, MemorySegment p_sin, MemorySegment p_cos) {
        var mh$ = sincos$MH();
        try {
            mh$.invokeExact(__x, p_sin, p_cos);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle sincosl$MH() {
        return RuntimeHelper.requireNonNull(constants$15.const$3,"sincosl");
    }
    /**
     * {@snippet :
     * void sincosl(long double __x, long double* p_sin, long double* p_cos);
     * }
     */
    public static void sincosl(double __x, MemorySegment p_sin, MemorySegment p_cos) {
        var mh$ = sincosl$MH();
        try {
            mh$.invokeExact(__x, p_sin, p_cos);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle sincosf$MH() {
        return RuntimeHelper.requireNonNull(constants$15.const$5,"sincosf");
    }
    /**
     * {@snippet :
     * void sincosf(float __x, float* p_sin, float* p_cos);
     * }
     */
    public static void sincosf(float __x, MemorySegment p_sin, MemorySegment p_cos) {
        var mh$ = sincosf$MH();
        try {
            mh$.invokeExact(__x, p_sin, p_cos);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle abs$MH() {
        return RuntimeHelper.requireNonNull(constants$16.const$1,"abs");
    }
    /**
     * {@snippet :
     * int abs(int _X);
     * }
     */
    public static int abs(int _X) {
        var mh$ = abs$MH();
        try {
            return (int)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle labs$MH() {
        return RuntimeHelper.requireNonNull(constants$16.const$2,"labs");
    }
    /**
     * {@snippet :
     * long labs(long _X);
     * }
     */
    public static int labs(int _X) {
        var mh$ = labs$MH();
        try {
            return (int)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle atof$MH() {
        return RuntimeHelper.requireNonNull(constants$16.const$4,"atof");
    }
    /**
     * {@snippet :
     * double atof(char* _String);
     * }
     */
    public static double atof(MemorySegment _String) {
        var mh$ = atof$MH();
        try {
            return (double)mh$.invokeExact(_String);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle _atof_l$MH() {
        return RuntimeHelper.requireNonNull(constants$16.const$6,"_atof_l");
    }
    /**
     * {@snippet :
     * double _atof_l(char* _String, _locale_t _Locale);
     * }
     */
    public static double _atof_l(MemorySegment _String, MemorySegment _Locale) {
        var mh$ = _atof_l$MH();
        try {
            return (double)mh$.invokeExact(_String, _Locale);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle _cabs$MH() {
        return RuntimeHelper.requireNonNull(constants$17.const$4,"_cabs");
    }
    /**
     * {@snippet :
     * double _cabs(struct _complex _ComplexA);
     * }
     */
    public static double _cabs(MemorySegment _ComplexA) {
        var mh$ = _cabs$MH();
        try {
            return (double)mh$.invokeExact(_ComplexA);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle _hypot$MH() {
        return RuntimeHelper.requireNonNull(constants$17.const$5,"_hypot");
    }
    /**
     * {@snippet :
     * double _hypot(double _X, double _Y);
     * }
     */
    public static double _hypot(double _X, double _Y) {
        var mh$ = _hypot$MH();
        try {
            return (double)mh$.invokeExact(_X, _Y);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle _j0$MH() {
        return RuntimeHelper.requireNonNull(constants$18.const$0,"_j0");
    }
    /**
     * {@snippet :
     * double _j0(double _X);
     * }
     */
    public static double _j0(double _X) {
        var mh$ = _j0$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle _j1$MH() {
        return RuntimeHelper.requireNonNull(constants$18.const$1,"_j1");
    }
    /**
     * {@snippet :
     * double _j1(double _X);
     * }
     */
    public static double _j1(double _X) {
        var mh$ = _j1$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle _jn$MH() {
        return RuntimeHelper.requireNonNull(constants$18.const$3,"_jn");
    }
    /**
     * {@snippet :
     * double _jn(int _X, double _Y);
     * }
     */
    public static double _jn(int _X, double _Y) {
        var mh$ = _jn$MH();
        try {
            return (double)mh$.invokeExact(_X, _Y);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle _y0$MH() {
        return RuntimeHelper.requireNonNull(constants$18.const$4,"_y0");
    }
    /**
     * {@snippet :
     * double _y0(double _X);
     * }
     */
    public static double _y0(double _X) {
        var mh$ = _y0$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle _y1$MH() {
        return RuntimeHelper.requireNonNull(constants$18.const$5,"_y1");
    }
    /**
     * {@snippet :
     * double _y1(double _X);
     * }
     */
    public static double _y1(double _X) {
        var mh$ = _y1$MH();
        try {
            return (double)mh$.invokeExact(_X);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle _yn$MH() {
        return RuntimeHelper.requireNonNull(constants$19.const$0,"_yn");
    }
    /**
     * {@snippet :
     * double _yn(int _X, double _Y);
     * }
     */
    public static double _yn(int _X, double _Y) {
        var mh$ = _yn$MH();
        try {
            return (double)mh$.invokeExact(_X, _Y);
        } catch (Throwable ex$) {
            throw new AssertionError("should not reach here", ex$);
        }
    }
    public static MethodHandle _matherr$MH() {
        return RuntimeHelper.requireNonNull(constants$19.const$1,"_matherr");
    }
    /**
