use std::ffi::{c_ulonglong, c_longlong, c_ulong, c_long, c_int};
#[allow(non_camel_case_types)]
pub type int_t = c_int; #[allow(non_camel_case_types)]
pub type mp_limb_t = c_ulonglong; #[allow(non_camel_case_types)]
pub type mp_limb_signed_t = c_longlong; #[allow(non_camel_case_types)]
pub type mp_size_t = usize;
#[allow(non_camel_case_types)]
pub type mp_exp_t = c_long; #[allow(non_camel_case_types)]
pub type mp_r = *const u8;
#[allow(non_camel_case_types)]
pub type mp_t = *mut u8;
#[allow(non_camel_case_types)]
pub type ui_t = c_ulong; #[allow(non_camel_case_types)]
pub type si_t = c_long; #[allow(non_camel_case_types)]
pub type double_t = f64;
#[allow(non_camel_case_types)]
pub type mp_bitcnt_t = ui_t;
pub type FnPtrAllocate = unsafe extern "C" fn(sz: mp_size_t) -> mp_t;
pub type FnPtrReallocate = unsafe extern "C" fn(p: mp_t, z: mp_size_t, sz: mp_size_t) -> mp_t;
pub type FnPtrFree = unsafe extern "C" fn(p: mp_t, z: mp_size_t) -> ();