fitsio-sys 0.5.1

FFI wrapper around cfitsio
Documentation
/* automatically generated by rust-bindgen */

#[repr(C)]
pub struct __BindgenUnionField<T>(::std::marker::PhantomData<T>);
impl<T> __BindgenUnionField<T> {
    #[inline]
    pub fn new() -> Self {
        __BindgenUnionField(::std::marker::PhantomData)
    }
    #[inline]
    pub unsafe fn as_ref(&self) -> &T {
        ::std::mem::transmute(self)
    }
    #[inline]
    pub unsafe fn as_mut(&mut self) -> &mut T {
        ::std::mem::transmute(self)
    }
}
impl<T> ::std::default::Default for __BindgenUnionField<T> {
    #[inline]
    fn default() -> Self {
        Self::new()
    }
}
impl<T> ::std::clone::Clone for __BindgenUnionField<T> {
    #[inline]
    fn clone(&self) -> Self {
        Self::new()
    }
}
impl<T> ::std::marker::Copy for __BindgenUnionField<T> {}
impl<T> ::std::fmt::Debug for __BindgenUnionField<T> {
    fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
        fmt.write_str("__BindgenUnionField")
    }
}
impl<T> ::std::hash::Hash for __BindgenUnionField<T> {
    fn hash<H: ::std::hash::Hasher>(&self, _state: &mut H) {}
}
impl<T> ::std::cmp::PartialEq for __BindgenUnionField<T> {
    fn eq(&self, _other: &__BindgenUnionField<T>) -> bool {
        true
    }
}
impl<T> ::std::cmp::Eq for __BindgenUnionField<T> {}
pub const CFITSIO_VERSION: f64 = 3.49;
pub const CFITSIO_MINOR: u32 = 49;
pub const CFITSIO_MAJOR: u32 = 3;
pub const CFITSIO_SONAME: u32 = 9;
pub const _STDIO_H: u32 = 1;
pub const _FEATURES_H: u32 = 1;
pub const _DEFAULT_SOURCE: u32 = 1;
pub const __GLIBC_USE_ISOC2X: u32 = 0;
pub const __USE_ISOC11: u32 = 1;
pub const __USE_ISOC99: u32 = 1;
pub const __USE_ISOC95: u32 = 1;
pub const __USE_POSIX_IMPLICITLY: u32 = 1;
pub const _POSIX_SOURCE: u32 = 1;
pub const _POSIX_C_SOURCE: u32 = 200809;
pub const __USE_POSIX: u32 = 1;
pub const __USE_POSIX2: u32 = 1;
pub const __USE_POSIX199309: u32 = 1;
pub const __USE_POSIX199506: u32 = 1;
pub const __USE_XOPEN2K: u32 = 1;
pub const __USE_XOPEN2K8: u32 = 1;
pub const _ATFILE_SOURCE: u32 = 1;
pub const __USE_MISC: u32 = 1;
pub const __USE_ATFILE: u32 = 1;
pub const __USE_FORTIFY_LEVEL: u32 = 0;
pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
pub const _STDC_PREDEF_H: u32 = 1;
pub const __STDC_IEC_559__: u32 = 1;
pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
pub const __STDC_ISO_10646__: u32 = 201706;
pub const __GNU_LIBRARY__: u32 = 6;
pub const __GLIBC__: u32 = 2;
pub const __GLIBC_MINOR__: u32 = 32;
pub const _SYS_CDEFS_H: u32 = 1;
pub const __glibc_c99_flexarr_available: u32 = 1;
pub const __WORDSIZE: u32 = 64;
pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
pub const __SYSCALL_WORDSIZE: u32 = 64;
pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0;
pub const __HAVE_GENERIC_SELECTION: u32 = 1;
pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0;
pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
pub const __GNUC_VA_LIST: u32 = 1;
pub const _BITS_TYPES_H: u32 = 1;
pub const __TIMESIZE: u32 = 64;
pub const _BITS_TYPESIZES_H: u32 = 1;
pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
pub const __INO_T_MATCHES_INO64_T: u32 = 1;
pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
pub const __STATFS_MATCHES_STATFS64: u32 = 1;
pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1;
pub const __FD_SETSIZE: u32 = 1024;
pub const _BITS_TIME64_H: u32 = 1;
pub const _____fpos_t_defined: u32 = 1;
pub const ____mbstate_t_defined: u32 = 1;
pub const _____fpos64_t_defined: u32 = 1;
pub const ____FILE_defined: u32 = 1;
pub const __FILE_defined: u32 = 1;
pub const __struct_FILE_defined: u32 = 1;
pub const _IO_EOF_SEEN: u32 = 16;
pub const _IO_ERR_SEEN: u32 = 32;
pub const _IO_USER_LOCK: u32 = 32768;
pub const _IOFBF: u32 = 0;
pub const _IOLBF: u32 = 1;
pub const _IONBF: u32 = 2;
pub const BUFSIZ: u32 = 8192;
pub const EOF: i32 = -1;
pub const SEEK_SET: u32 = 0;
pub const SEEK_CUR: u32 = 1;
pub const SEEK_END: u32 = 2;
pub const P_tmpdir: &'static [u8; 5usize] = b"/tmp\0";
pub const _BITS_STDIO_LIM_H: u32 = 1;
pub const L_tmpnam: u32 = 20;
pub const TMP_MAX: u32 = 238328;
pub const FILENAME_MAX: u32 = 4096;
pub const L_ctermid: u32 = 9;
pub const FOPEN_MAX: u32 = 16;
pub const __HAVE_FLOAT128: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT128: u32 = 0;
pub const __HAVE_FLOAT64X: u32 = 1;
pub const __HAVE_FLOAT64X_LONG_DOUBLE: u32 = 1;
pub const __HAVE_FLOAT16: u32 = 0;
pub const __HAVE_FLOAT32: u32 = 1;
pub const __HAVE_FLOAT64: u32 = 1;
pub const __HAVE_FLOAT32X: u32 = 1;
pub const __HAVE_FLOAT128X: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT16: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT32: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT64: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT32X: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT64X: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT128X: u32 = 0;
pub const __HAVE_FLOATN_NOT_TYPEDEF: u32 = 0;
pub const _SYS_TYPES_H: u32 = 1;
pub const __clock_t_defined: u32 = 1;
pub const __clockid_t_defined: u32 = 1;
pub const __time_t_defined: u32 = 1;
pub const __timer_t_defined: u32 = 1;
pub const _BITS_STDINT_INTN_H: u32 = 1;
pub const __BIT_TYPES_DEFINED__: u32 = 1;
pub const _ENDIAN_H: u32 = 1;
pub const _BITS_ENDIAN_H: u32 = 1;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const __BIG_ENDIAN: u32 = 4321;
pub const __PDP_ENDIAN: u32 = 3412;
pub const _BITS_ENDIANNESS_H: u32 = 1;
pub const __BYTE_ORDER: u32 = 1234;
pub const __FLOAT_WORD_ORDER: u32 = 1234;
pub const LITTLE_ENDIAN: u32 = 1234;
pub const BIG_ENDIAN: u32 = 4321;
pub const PDP_ENDIAN: u32 = 3412;
pub const BYTE_ORDER: u32 = 1234;
pub const _BITS_BYTESWAP_H: u32 = 1;
pub const _BITS_UINTN_IDENTITY_H: u32 = 1;
pub const _SYS_SELECT_H: u32 = 1;
pub const __sigset_t_defined: u32 = 1;
pub const __timeval_defined: u32 = 1;
pub const _STRUCT_TIMESPEC: u32 = 1;
pub const FD_SETSIZE: u32 = 1024;
pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1;
pub const _THREAD_SHARED_TYPES_H: u32 = 1;
pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1;
pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40;
pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56;
pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56;
pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32;
pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4;
pub const __SIZEOF_PTHREAD_COND_T: u32 = 48;
pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4;
pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8;
pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4;
pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1;
pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1;
pub const __have_pthread_attr_t: u32 = 1;
pub const _STDLIB_H: u32 = 1;
pub const WNOHANG: u32 = 1;
pub const WUNTRACED: u32 = 2;
pub const WSTOPPED: u32 = 2;
pub const WEXITED: u32 = 4;
pub const WCONTINUED: u32 = 8;
pub const WNOWAIT: u32 = 16777216;
pub const __WNOTHREAD: u32 = 536870912;
pub const __WALL: u32 = 1073741824;
pub const __WCLONE: u32 = 2147483648;
pub const __W_CONTINUED: u32 = 65535;
pub const __WCOREFLAG: u32 = 128;
pub const __ldiv_t_defined: u32 = 1;
pub const __lldiv_t_defined: u32 = 1;
pub const RAND_MAX: u32 = 2147483647;
pub const EXIT_FAILURE: u32 = 1;
pub const EXIT_SUCCESS: u32 = 0;
pub const _ALLOCA_H: u32 = 1;
pub const _LIBC_LIMITS_H_: u32 = 1;
pub const MB_LEN_MAX: u32 = 16;
pub const _BITS_POSIX1_LIM_H: u32 = 1;
pub const _POSIX_AIO_LISTIO_MAX: u32 = 2;
pub const _POSIX_AIO_MAX: u32 = 1;
pub const _POSIX_ARG_MAX: u32 = 4096;
pub const _POSIX_CHILD_MAX: u32 = 25;
pub const _POSIX_DELAYTIMER_MAX: u32 = 32;
pub const _POSIX_HOST_NAME_MAX: u32 = 255;
pub const _POSIX_LINK_MAX: u32 = 8;
pub const _POSIX_LOGIN_NAME_MAX: u32 = 9;
pub const _POSIX_MAX_CANON: u32 = 255;
pub const _POSIX_MAX_INPUT: u32 = 255;
pub const _POSIX_MQ_OPEN_MAX: u32 = 8;
pub const _POSIX_MQ_PRIO_MAX: u32 = 32;
pub const _POSIX_NAME_MAX: u32 = 14;
pub const _POSIX_NGROUPS_MAX: u32 = 8;
pub const _POSIX_OPEN_MAX: u32 = 20;
pub const _POSIX_PATH_MAX: u32 = 256;
pub const _POSIX_PIPE_BUF: u32 = 512;
pub const _POSIX_RE_DUP_MAX: u32 = 255;
pub const _POSIX_RTSIG_MAX: u32 = 8;
pub const _POSIX_SEM_NSEMS_MAX: u32 = 256;
pub const _POSIX_SEM_VALUE_MAX: u32 = 32767;
pub const _POSIX_SIGQUEUE_MAX: u32 = 32;
pub const _POSIX_SSIZE_MAX: u32 = 32767;
pub const _POSIX_STREAM_MAX: u32 = 8;
pub const _POSIX_SYMLINK_MAX: u32 = 255;
pub const _POSIX_SYMLOOP_MAX: u32 = 8;
pub const _POSIX_TIMER_MAX: u32 = 32;
pub const _POSIX_TTY_NAME_MAX: u32 = 9;
pub const _POSIX_TZNAME_MAX: u32 = 6;
pub const _POSIX_CLOCKRES_MIN: u32 = 20000000;
pub const NR_OPEN: u32 = 1024;
pub const NGROUPS_MAX: u32 = 65536;
pub const ARG_MAX: u32 = 131072;
pub const LINK_MAX: u32 = 127;
pub const MAX_CANON: u32 = 255;
pub const MAX_INPUT: u32 = 255;
pub const NAME_MAX: u32 = 255;
pub const PATH_MAX: u32 = 4096;
pub const PIPE_BUF: u32 = 4096;
pub const XATTR_NAME_MAX: u32 = 255;
pub const XATTR_SIZE_MAX: u32 = 65536;
pub const XATTR_LIST_MAX: u32 = 65536;
pub const RTSIG_MAX: u32 = 32;
pub const _POSIX_THREAD_KEYS_MAX: u32 = 128;
pub const PTHREAD_KEYS_MAX: u32 = 1024;
pub const _POSIX_THREAD_DESTRUCTOR_ITERATIONS: u32 = 4;
pub const PTHREAD_DESTRUCTOR_ITERATIONS: u32 = 4;
pub const _POSIX_THREAD_THREADS_MAX: u32 = 64;
pub const AIO_PRIO_DELTA_MAX: u32 = 20;
pub const PTHREAD_STACK_MIN: u32 = 16384;
pub const DELAYTIMER_MAX: u32 = 2147483647;
pub const TTY_NAME_MAX: u32 = 32;
pub const LOGIN_NAME_MAX: u32 = 256;
pub const HOST_NAME_MAX: u32 = 64;
pub const MQ_PRIO_MAX: u32 = 32768;
pub const SEM_VALUE_MAX: u32 = 2147483647;
pub const _BITS_POSIX2_LIM_H: u32 = 1;
pub const _POSIX2_BC_BASE_MAX: u32 = 99;
pub const _POSIX2_BC_DIM_MAX: u32 = 2048;
pub const _POSIX2_BC_SCALE_MAX: u32 = 99;
pub const _POSIX2_BC_STRING_MAX: u32 = 1000;
pub const _POSIX2_COLL_WEIGHTS_MAX: u32 = 2;
pub const _POSIX2_EXPR_NEST_MAX: u32 = 32;
pub const _POSIX2_LINE_MAX: u32 = 2048;
pub const _POSIX2_RE_DUP_MAX: u32 = 255;
pub const _POSIX2_CHARCLASS_NAME_MAX: u32 = 14;
pub const BC_BASE_MAX: u32 = 99;
pub const BC_DIM_MAX: u32 = 2048;
pub const BC_SCALE_MAX: u32 = 99;
pub const BC_STRING_MAX: u32 = 1000;
pub const COLL_WEIGHTS_MAX: u32 = 255;
pub const EXPR_NEST_MAX: u32 = 32;
pub const LINE_MAX: u32 = 2048;
pub const CHARCLASS_NAME_MAX: u32 = 2048;
pub const RE_DUP_MAX: u32 = 32767;
pub const USE_LL_SUFFIX: u32 = 1;
pub const NIOBUF: u32 = 40;
pub const IOBUFLEN: u32 = 2880;
pub const FLEN_FILENAME: u32 = 1025;
pub const FLEN_KEYWORD: u32 = 75;
pub const FLEN_CARD: u32 = 81;
pub const FLEN_VALUE: u32 = 71;
pub const FLEN_COMMENT: u32 = 73;
pub const FLEN_ERRMSG: u32 = 81;
pub const FLEN_STATUS: u32 = 31;
pub const TBIT: u32 = 1;
pub const TBYTE: u32 = 11;
pub const TSBYTE: u32 = 12;
pub const TLOGICAL: u32 = 14;
pub const TSTRING: u32 = 16;
pub const TUSHORT: u32 = 20;
pub const TSHORT: u32 = 21;
pub const TUINT: u32 = 30;
pub const TINT: u32 = 31;
pub const TULONG: u32 = 40;
pub const TLONG: u32 = 41;
pub const TINT32BIT: u32 = 41;
pub const TFLOAT: u32 = 42;
pub const TULONGLONG: u32 = 80;
pub const TLONGLONG: u32 = 81;
pub const TDOUBLE: u32 = 82;
pub const TCOMPLEX: u32 = 83;
pub const TDBLCOMPLEX: u32 = 163;
pub const TYP_STRUC_KEY: u32 = 10;
pub const TYP_CMPRS_KEY: u32 = 20;
pub const TYP_SCAL_KEY: u32 = 30;
pub const TYP_NULL_KEY: u32 = 40;
pub const TYP_DIM_KEY: u32 = 50;
pub const TYP_RANG_KEY: u32 = 60;
pub const TYP_UNIT_KEY: u32 = 70;
pub const TYP_DISP_KEY: u32 = 80;
pub const TYP_HDUID_KEY: u32 = 90;
pub const TYP_CKSUM_KEY: u32 = 100;
pub const TYP_WCS_KEY: u32 = 110;
pub const TYP_REFSYS_KEY: u32 = 120;
pub const TYP_COMM_KEY: u32 = 130;
pub const TYP_CONT_KEY: u32 = 140;
pub const TYP_USER_KEY: u32 = 150;
pub const BYTE_IMG: u32 = 8;
pub const SHORT_IMG: u32 = 16;
pub const LONG_IMG: u32 = 32;
pub const LONGLONG_IMG: u32 = 64;
pub const FLOAT_IMG: i32 = -32;
pub const DOUBLE_IMG: i32 = -64;
pub const SBYTE_IMG: u32 = 10;
pub const USHORT_IMG: u32 = 20;
pub const ULONG_IMG: u32 = 40;
pub const ULONGLONG_IMG: u32 = 80;
pub const IMAGE_HDU: u32 = 0;
pub const ASCII_TBL: u32 = 1;
pub const BINARY_TBL: u32 = 2;
pub const ANY_HDU: i32 = -1;
pub const READONLY: u32 = 0;
pub const READWRITE: u32 = 1;
pub const NO_DITHER: i32 = -1;
pub const SUBTRACTIVE_DITHER_1: u32 = 1;
pub const SUBTRACTIVE_DITHER_2: u32 = 2;
pub const MAX_COMPRESS_DIM: u32 = 6;
pub const RICE_1: u32 = 11;
pub const GZIP_1: u32 = 21;
pub const GZIP_2: u32 = 22;
pub const PLIO_1: u32 = 31;
pub const HCOMPRESS_1: u32 = 41;
pub const BZIP2_1: u32 = 51;
pub const NOCOMPRESS: i32 = -1;
pub const TRUE: u32 = 1;
pub const FALSE: u32 = 0;
pub const CASESEN: u32 = 1;
pub const CASEINSEN: u32 = 0;
pub const GT_ID_ALL_URI: u32 = 0;
pub const GT_ID_REF: u32 = 1;
pub const GT_ID_POS: u32 = 2;
pub const GT_ID_ALL: u32 = 3;
pub const GT_ID_REF_URI: u32 = 11;
pub const GT_ID_POS_URI: u32 = 12;
pub const OPT_RM_GPT: u32 = 0;
pub const OPT_RM_ENTRY: u32 = 1;
pub const OPT_RM_MBR: u32 = 2;
pub const OPT_RM_ALL: u32 = 3;
pub const OPT_GCP_GPT: u32 = 0;
pub const OPT_GCP_MBR: u32 = 1;
pub const OPT_GCP_ALL: u32 = 2;
pub const OPT_MCP_ADD: u32 = 0;
pub const OPT_MCP_NADD: u32 = 1;
pub const OPT_MCP_REPL: u32 = 2;
pub const OPT_MCP_MOV: u32 = 3;
pub const OPT_MRG_COPY: u32 = 0;
pub const OPT_MRG_MOV: u32 = 1;
pub const OPT_CMT_MBR: u32 = 1;
pub const OPT_CMT_MBR_DEL: u32 = 11;
pub const VALIDSTRUC: u32 = 555;
pub const InputCol: u32 = 0;
pub const InputOutputCol: u32 = 1;
pub const OutputCol: u32 = 2;
pub const CREATE_DISK_FILE: i32 = -106;
pub const OPEN_DISK_FILE: i32 = -105;
pub const SKIP_TABLE: i32 = -104;
pub const SKIP_IMAGE: i32 = -103;
pub const SKIP_NULL_PRIMARY: i32 = -102;
pub const USE_MEM_BUFF: i32 = -101;
pub const OVERFLOW_ERR: i32 = -11;
pub const PREPEND_PRIMARY: i32 = -9;
pub const SAME_FILE: u32 = 101;
pub const TOO_MANY_FILES: u32 = 103;
pub const FILE_NOT_OPENED: u32 = 104;
pub const FILE_NOT_CREATED: u32 = 105;
pub const WRITE_ERROR: u32 = 106;
pub const END_OF_FILE: u32 = 107;
pub const READ_ERROR: u32 = 108;
pub const FILE_NOT_CLOSED: u32 = 110;
pub const ARRAY_TOO_BIG: u32 = 111;
pub const READONLY_FILE: u32 = 112;
pub const MEMORY_ALLOCATION: u32 = 113;
pub const BAD_FILEPTR: u32 = 114;
pub const NULL_INPUT_PTR: u32 = 115;
pub const SEEK_ERROR: u32 = 116;
pub const BAD_NETTIMEOUT: u32 = 117;
pub const BAD_URL_PREFIX: u32 = 121;
pub const TOO_MANY_DRIVERS: u32 = 122;
pub const DRIVER_INIT_FAILED: u32 = 123;
pub const NO_MATCHING_DRIVER: u32 = 124;
pub const URL_PARSE_ERROR: u32 = 125;
pub const RANGE_PARSE_ERROR: u32 = 126;
pub const SHARED_ERRBASE: u32 = 150;
pub const SHARED_BADARG: u32 = 151;
pub const SHARED_NULPTR: u32 = 152;
pub const SHARED_TABFULL: u32 = 153;
pub const SHARED_NOTINIT: u32 = 154;
pub const SHARED_IPCERR: u32 = 155;
pub const SHARED_NOMEM: u32 = 156;
pub const SHARED_AGAIN: u32 = 157;
pub const SHARED_NOFILE: u32 = 158;
pub const SHARED_NORESIZE: u32 = 159;
pub const HEADER_NOT_EMPTY: u32 = 201;
pub const KEY_NO_EXIST: u32 = 202;
pub const KEY_OUT_BOUNDS: u32 = 203;
pub const VALUE_UNDEFINED: u32 = 204;
pub const NO_QUOTE: u32 = 205;
pub const BAD_INDEX_KEY: u32 = 206;
pub const BAD_KEYCHAR: u32 = 207;
pub const BAD_ORDER: u32 = 208;
pub const NOT_POS_INT: u32 = 209;
pub const NO_END: u32 = 210;
pub const BAD_BITPIX: u32 = 211;
pub const BAD_NAXIS: u32 = 212;
pub const BAD_NAXES: u32 = 213;
pub const BAD_PCOUNT: u32 = 214;
pub const BAD_GCOUNT: u32 = 215;
pub const BAD_TFIELDS: u32 = 216;
pub const NEG_WIDTH: u32 = 217;
pub const NEG_ROWS: u32 = 218;
pub const COL_NOT_FOUND: u32 = 219;
pub const BAD_SIMPLE: u32 = 220;
pub const NO_SIMPLE: u32 = 221;
pub const NO_BITPIX: u32 = 222;
pub const NO_NAXIS: u32 = 223;
pub const NO_NAXES: u32 = 224;
pub const NO_XTENSION: u32 = 225;
pub const NOT_ATABLE: u32 = 226;
pub const NOT_BTABLE: u32 = 227;
pub const NO_PCOUNT: u32 = 228;
pub const NO_GCOUNT: u32 = 229;
pub const NO_TFIELDS: u32 = 230;
pub const NO_TBCOL: u32 = 231;
pub const NO_TFORM: u32 = 232;
pub const NOT_IMAGE: u32 = 233;
pub const BAD_TBCOL: u32 = 234;
pub const NOT_TABLE: u32 = 235;
pub const COL_TOO_WIDE: u32 = 236;
pub const COL_NOT_UNIQUE: u32 = 237;
pub const BAD_ROW_WIDTH: u32 = 241;
pub const UNKNOWN_EXT: u32 = 251;
pub const UNKNOWN_REC: u32 = 252;
pub const END_JUNK: u32 = 253;
pub const BAD_HEADER_FILL: u32 = 254;
pub const BAD_DATA_FILL: u32 = 255;
pub const BAD_TFORM: u32 = 261;
pub const BAD_TFORM_DTYPE: u32 = 262;
pub const BAD_TDIM: u32 = 263;
pub const BAD_HEAP_PTR: u32 = 264;
pub const BAD_HDU_NUM: u32 = 301;
pub const BAD_COL_NUM: u32 = 302;
pub const NEG_FILE_POS: u32 = 304;
pub const NEG_BYTES: u32 = 306;
pub const BAD_ROW_NUM: u32 = 307;
pub const BAD_ELEM_NUM: u32 = 308;
pub const NOT_ASCII_COL: u32 = 309;
pub const NOT_LOGICAL_COL: u32 = 310;
pub const BAD_ATABLE_FORMAT: u32 = 311;
pub const BAD_BTABLE_FORMAT: u32 = 312;
pub const NO_NULL: u32 = 314;
pub const NOT_VARI_LEN: u32 = 317;
pub const BAD_DIMEN: u32 = 320;
pub const BAD_PIX_NUM: u32 = 321;
pub const ZERO_SCALE: u32 = 322;
pub const NEG_AXIS: u32 = 323;
pub const NOT_GROUP_TABLE: u32 = 340;
pub const HDU_ALREADY_MEMBER: u32 = 341;
pub const MEMBER_NOT_FOUND: u32 = 342;
pub const GROUP_NOT_FOUND: u32 = 343;
pub const BAD_GROUP_ID: u32 = 344;
pub const TOO_MANY_HDUS_TRACKED: u32 = 345;
pub const HDU_ALREADY_TRACKED: u32 = 346;
pub const BAD_OPTION: u32 = 347;
pub const IDENTICAL_POINTERS: u32 = 348;
pub const BAD_GROUP_ATTACH: u32 = 349;
pub const BAD_GROUP_DETACH: u32 = 350;
pub const BAD_I2C: u32 = 401;
pub const BAD_F2C: u32 = 402;
pub const BAD_INTKEY: u32 = 403;
pub const BAD_LOGICALKEY: u32 = 404;
pub const BAD_FLOATKEY: u32 = 405;
pub const BAD_DOUBLEKEY: u32 = 406;
pub const BAD_C2I: u32 = 407;
pub const BAD_C2F: u32 = 408;
pub const BAD_C2D: u32 = 409;
pub const BAD_DATATYPE: u32 = 410;
pub const BAD_DECIM: u32 = 411;
pub const NUM_OVERFLOW: u32 = 412;
pub const DATA_COMPRESSION_ERR: u32 = 413;
pub const DATA_DECOMPRESSION_ERR: u32 = 414;
pub const NO_COMPRESSED_TILE: u32 = 415;
pub const BAD_DATE: u32 = 420;
pub const PARSE_SYNTAX_ERR: u32 = 431;
pub const PARSE_BAD_TYPE: u32 = 432;
pub const PARSE_LRG_VECTOR: u32 = 433;
pub const PARSE_NO_OUTPUT: u32 = 434;
pub const PARSE_BAD_COL: u32 = 435;
pub const PARSE_BAD_OUTPUT: u32 = 436;
pub const ANGLE_TOO_BIG: u32 = 501;
pub const BAD_WCS_VAL: u32 = 502;
pub const WCS_ERROR: u32 = 503;
pub const BAD_WCS_PROJ: u32 = 504;
pub const NO_WCS_KEY: u32 = 505;
pub const APPROX_WCS_KEY: u32 = 506;
pub const NO_CLOSE_ERROR: u32 = 999;
pub const NGP_ERRBASE: u32 = 360;
pub const NGP_OK: u32 = 0;
pub const NGP_NO_MEMORY: u32 = 360;
pub const NGP_READ_ERR: u32 = 361;
pub const NGP_NUL_PTR: u32 = 362;
pub const NGP_EMPTY_CURLINE: u32 = 363;
pub const NGP_UNREAD_QUEUE_FULL: u32 = 364;
pub const NGP_INC_NESTING: u32 = 365;
pub const NGP_ERR_FOPEN: u32 = 366;
pub const NGP_EOF: u32 = 367;
pub const NGP_BAD_ARG: u32 = 368;
pub const NGP_TOKEN_NOT_EXPECT: u32 = 369;
pub type size_t = ::std::os::raw::c_ulong;
pub type va_list = __builtin_va_list;
pub type __gnuc_va_list = __builtin_va_list;
pub type __u_char = ::std::os::raw::c_uchar;
pub type __u_short = ::std::os::raw::c_ushort;
pub type __u_int = ::std::os::raw::c_uint;
pub type __u_long = ::std::os::raw::c_ulong;
pub type __int8_t = ::std::os::raw::c_schar;
pub type __uint8_t = ::std::os::raw::c_uchar;
pub type __int16_t = ::std::os::raw::c_short;
pub type __uint16_t = ::std::os::raw::c_ushort;
pub type __int32_t = ::std::os::raw::c_int;
pub type __uint32_t = ::std::os::raw::c_uint;
pub type __int64_t = ::std::os::raw::c_long;
pub type __uint64_t = ::std::os::raw::c_ulong;
pub type __int_least8_t = __int8_t;
pub type __uint_least8_t = __uint8_t;
pub type __int_least16_t = __int16_t;
pub type __uint_least16_t = __uint16_t;
pub type __int_least32_t = __int32_t;
pub type __uint_least32_t = __uint32_t;
pub type __int_least64_t = __int64_t;
pub type __uint_least64_t = __uint64_t;
pub type __quad_t = ::std::os::raw::c_long;
pub type __u_quad_t = ::std::os::raw::c_ulong;
pub type __intmax_t = ::std::os::raw::c_long;
pub type __uintmax_t = ::std::os::raw::c_ulong;
pub type __dev_t = ::std::os::raw::c_ulong;
pub type __uid_t = ::std::os::raw::c_uint;
pub type __gid_t = ::std::os::raw::c_uint;
pub type __ino_t = ::std::os::raw::c_ulong;
pub type __ino64_t = ::std::os::raw::c_ulong;
pub type __mode_t = ::std::os::raw::c_uint;
pub type __nlink_t = ::std::os::raw::c_ulong;
pub type __off_t = ::std::os::raw::c_long;
pub type __off64_t = ::std::os::raw::c_long;
pub type __pid_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __fsid_t {
    pub __val: [::std::os::raw::c_int; 2usize],
}
#[test]
fn bindgen_test_layout___fsid_t() {
    assert_eq!(
        ::std::mem::size_of::<__fsid_t>(),
        8usize,
        concat!("Size of: ", stringify!(__fsid_t))
    );
    assert_eq!(
        ::std::mem::align_of::<__fsid_t>(),
        4usize,
        concat!("Alignment of ", stringify!(__fsid_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__fsid_t>())).__val as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__fsid_t),
            "::",
            stringify!(__val)
        )
    );
}
impl Clone for __fsid_t {
    fn clone(&self) -> Self {
        *self
    }
}
pub type __clock_t = ::std::os::raw::c_long;
pub type __rlim_t = ::std::os::raw::c_ulong;
pub type __rlim64_t = ::std::os::raw::c_ulong;
pub type __id_t = ::std::os::raw::c_uint;
pub type __time_t = ::std::os::raw::c_long;
pub type __useconds_t = ::std::os::raw::c_uint;
pub type __suseconds_t = ::std::os::raw::c_long;
pub type __suseconds64_t = ::std::os::raw::c_long;
pub type __daddr_t = ::std::os::raw::c_int;
pub type __key_t = ::std::os::raw::c_int;
pub type __clockid_t = ::std::os::raw::c_int;
pub type __timer_t = *mut ::std::os::raw::c_void;
pub type __blksize_t = ::std::os::raw::c_long;
pub type __blkcnt_t = ::std::os::raw::c_long;
pub type __blkcnt64_t = ::std::os::raw::c_long;
pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
pub type __fsword_t = ::std::os::raw::c_long;
pub type __ssize_t = ::std::os::raw::c_long;
pub type __syscall_slong_t = ::std::os::raw::c_long;
pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
pub type __loff_t = __off64_t;
pub type __caddr_t = *mut ::std::os::raw::c_char;
pub type __intptr_t = ::std::os::raw::c_long;
pub type __socklen_t = ::std::os::raw::c_uint;
pub type __sig_atomic_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __mbstate_t {
    pub __count: ::std::os::raw::c_int,
    pub __value: __mbstate_t__bindgen_ty_1,
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __mbstate_t__bindgen_ty_1 {
    pub __wch: __BindgenUnionField<::std::os::raw::c_uint>,
    pub __wchb: __BindgenUnionField<[::std::os::raw::c_char; 4usize]>,
    pub bindgen_union_field: u32,
}
#[test]
fn bindgen_test_layout___mbstate_t__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<__mbstate_t__bindgen_ty_1>(),
        4usize,
        concat!("Size of: ", stringify!(__mbstate_t__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<__mbstate_t__bindgen_ty_1>(),
        4usize,
        concat!("Alignment of ", stringify!(__mbstate_t__bindgen_ty_1))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wch as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__mbstate_t__bindgen_ty_1),
            "::",
            stringify!(__wch)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wchb as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__mbstate_t__bindgen_ty_1),
            "::",
            stringify!(__wchb)
        )
    );
}
impl Clone for __mbstate_t__bindgen_ty_1 {
    fn clone(&self) -> Self {
        *self
    }
}
#[test]
fn bindgen_test_layout___mbstate_t() {
    assert_eq!(
        ::std::mem::size_of::<__mbstate_t>(),
        8usize,
        concat!("Size of: ", stringify!(__mbstate_t))
    );
    assert_eq!(
        ::std::mem::align_of::<__mbstate_t>(),
        4usize,
        concat!("Alignment of ", stringify!(__mbstate_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__count as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__mbstate_t),
            "::",
            stringify!(__count)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__value as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(__mbstate_t),
            "::",
            stringify!(__value)
        )
    );
}
impl Clone for __mbstate_t {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct _G_fpos_t {
    pub __pos: __off_t,
    pub __state: __mbstate_t,
}
#[test]
fn bindgen_test_layout__G_fpos_t() {
    assert_eq!(
        ::std::mem::size_of::<_G_fpos_t>(),
        16usize,
        concat!("Size of: ", stringify!(_G_fpos_t))
    );
    assert_eq!(
        ::std::mem::align_of::<_G_fpos_t>(),
        8usize,
        concat!("Alignment of ", stringify!(_G_fpos_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__pos as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_G_fpos_t),
            "::",
            stringify!(__pos)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__state as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_G_fpos_t),
            "::",
            stringify!(__state)
        )
    );
}
impl Clone for _G_fpos_t {
    fn clone(&self) -> Self {
        *self
    }
}
pub type __fpos_t = _G_fpos_t;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct _G_fpos64_t {
    pub __pos: __off64_t,
    pub __state: __mbstate_t,
}
#[test]
fn bindgen_test_layout__G_fpos64_t() {
    assert_eq!(
        ::std::mem::size_of::<_G_fpos64_t>(),
        16usize,
        concat!("Size of: ", stringify!(_G_fpos64_t))
    );
    assert_eq!(
        ::std::mem::align_of::<_G_fpos64_t>(),
        8usize,
        concat!("Alignment of ", stringify!(_G_fpos64_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__pos as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_G_fpos64_t),
            "::",
            stringify!(__pos)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__state as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_G_fpos64_t),
            "::",
            stringify!(__state)
        )
    );
}
impl Clone for _G_fpos64_t {
    fn clone(&self) -> Self {
        *self
    }
}
pub type __fpos64_t = _G_fpos64_t;
pub type __FILE = _IO_FILE;
pub type FILE = _IO_FILE;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct _IO_marker {
    _unused: [u8; 0],
}
impl Clone for _IO_marker {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct _IO_codecvt {
    _unused: [u8; 0],
}
impl Clone for _IO_codecvt {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct _IO_wide_data {
    _unused: [u8; 0],
}
impl Clone for _IO_wide_data {
    fn clone(&self) -> Self {
        *self
    }
}
pub type _IO_lock_t = ::std::os::raw::c_void;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct _IO_FILE {
    pub _flags: ::std::os::raw::c_int,
    pub _IO_read_ptr: *mut ::std::os::raw::c_char,
    pub _IO_read_end: *mut ::std::os::raw::c_char,
    pub _IO_read_base: *mut ::std::os::raw::c_char,
    pub _IO_write_base: *mut ::std::os::raw::c_char,
    pub _IO_write_ptr: *mut ::std::os::raw::c_char,
    pub _IO_write_end: *mut ::std::os::raw::c_char,
    pub _IO_buf_base: *mut ::std::os::raw::c_char,
    pub _IO_buf_end: *mut ::std::os::raw::c_char,
    pub _IO_save_base: *mut ::std::os::raw::c_char,
    pub _IO_backup_base: *mut ::std::os::raw::c_char,
    pub _IO_save_end: *mut ::std::os::raw::c_char,
    pub _markers: *mut _IO_marker,
    pub _chain: *mut _IO_FILE,
    pub _fileno: ::std::os::raw::c_int,
    pub _flags2: ::std::os::raw::c_int,
    pub _old_offset: __off_t,
    pub _cur_column: ::std::os::raw::c_ushort,
    pub _vtable_offset: ::std::os::raw::c_schar,
    pub _shortbuf: [::std::os::raw::c_char; 1usize],
    pub _lock: *mut _IO_lock_t,
    pub _offset: __off64_t,
    pub _codecvt: *mut _IO_codecvt,
    pub _wide_data: *mut _IO_wide_data,
    pub _freeres_list: *mut _IO_FILE,
    pub _freeres_buf: *mut ::std::os::raw::c_void,
    pub __pad5: size_t,
    pub _mode: ::std::os::raw::c_int,
    pub _unused2: [::std::os::raw::c_char; 20usize],
}
#[test]
fn bindgen_test_layout__IO_FILE() {
    assert_eq!(
        ::std::mem::size_of::<_IO_FILE>(),
        216usize,
        concat!("Size of: ", stringify!(_IO_FILE))
    );
    assert_eq!(
        ::std::mem::align_of::<_IO_FILE>(),
        8usize,
        concat!("Alignment of ", stringify!(_IO_FILE))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_flags)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_read_ptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_read_end)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_read_base)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_write_base)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_write_ptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_write_end)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_buf_base)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_buf_end)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_save_base)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_backup_base)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_save_end)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_markers)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_chain)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_fileno)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize },
        116usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_flags2)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_old_offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_cur_column)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize },
        130usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_vtable_offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize },
        131usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_shortbuf)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize },
        136usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_lock)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize },
        144usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_codecvt)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize },
        160usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_wide_data)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize },
        168usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_freeres_list)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize },
        176usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_freeres_buf)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize },
        184usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(__pad5)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize },
        192usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_mode)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize },
        196usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_unused2)
        )
    );
}
impl Clone for _IO_FILE {
    fn clone(&self) -> Self {
        *self
    }
}
pub type off_t = __off_t;
pub type ssize_t = __ssize_t;
pub type fpos_t = __fpos_t;
extern "C" {
    pub static mut stdin: *mut FILE;
}
extern "C" {
    pub static mut stdout: *mut FILE;
}
extern "C" {
    pub static mut stderr: *mut FILE;
}
extern "C" {
    pub fn remove(__filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn rename(
        __old: *const ::std::os::raw::c_char,
        __new: *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn renameat(
        __oldfd: ::std::os::raw::c_int,
        __old: *const ::std::os::raw::c_char,
        __newfd: ::std::os::raw::c_int,
        __new: *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn tmpfile() -> *mut FILE;
}
extern "C" {
    pub fn tmpnam(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn tmpnam_r(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn tempnam(
        __dir: *const ::std::os::raw::c_char,
        __pfx: *const ::std::os::raw::c_char,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn fclose(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fflush(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fflush_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fopen(
        __filename: *const ::std::os::raw::c_char,
        __modes: *const ::std::os::raw::c_char,
    ) -> *mut FILE;
}
extern "C" {
    pub fn freopen(
        __filename: *const ::std::os::raw::c_char,
        __modes: *const ::std::os::raw::c_char,
        __stream: *mut FILE,
    ) -> *mut FILE;
}
extern "C" {
    pub fn fdopen(__fd: ::std::os::raw::c_int, __modes: *const ::std::os::raw::c_char)
        -> *mut FILE;
}
extern "C" {
    pub fn fmemopen(
        __s: *mut ::std::os::raw::c_void,
        __len: size_t,
        __modes: *const ::std::os::raw::c_char,
    ) -> *mut FILE;
}
extern "C" {
    pub fn open_memstream(
        __bufloc: *mut *mut ::std::os::raw::c_char,
        __sizeloc: *mut size_t,
    ) -> *mut FILE;
}
extern "C" {
    pub fn setbuf(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char);
}
extern "C" {
    pub fn setvbuf(
        __stream: *mut FILE,
        __buf: *mut ::std::os::raw::c_char,
        __modes: ::std::os::raw::c_int,
        __n: size_t,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char, __size: size_t);
}
extern "C" {
    pub fn setlinebuf(__stream: *mut FILE);
}
extern "C" {
    pub fn fprintf(
        __stream: *mut FILE,
        __format: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn printf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn sprintf(
        __s: *mut ::std::os::raw::c_char,
        __format: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn vfprintf(
        __s: *mut FILE,
        __format: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn vprintf(
        __format: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn vsprintf(
        __s: *mut ::std::os::raw::c_char,
        __format: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn snprintf(
        __s: *mut ::std::os::raw::c_char,
        __maxlen: ::std::os::raw::c_ulong,
        __format: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn vsnprintf(
        __s: *mut ::std::os::raw::c_char,
        __maxlen: ::std::os::raw::c_ulong,
        __format: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn vdprintf(
        __fd: ::std::os::raw::c_int,
        __fmt: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn dprintf(
        __fd: ::std::os::raw::c_int,
        __fmt: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fscanf(
        __stream: *mut FILE,
        __format: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn scanf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn sscanf(
        __s: *const ::std::os::raw::c_char,
        __format: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
pub type _Float32 = f32;
pub type _Float64 = f64;
pub type _Float32x = f64;
pub type _Float64x = f64;
extern "C" {
    #[link_name = "\u{1}__isoc99_fscanf"]
    pub fn fscanf1(
        __stream: *mut FILE,
        __format: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    #[link_name = "\u{1}__isoc99_scanf"]
    pub fn scanf1(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
extern "C" {
    #[link_name = "\u{1}__isoc99_sscanf"]
    pub fn sscanf1(
        __s: *const ::std::os::raw::c_char,
        __format: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn vfscanf(
        __s: *mut FILE,
        __format: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn vscanf(
        __format: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn vsscanf(
        __s: *const ::std::os::raw::c_char,
        __format: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    #[link_name = "\u{1}__isoc99_vfscanf"]
    pub fn vfscanf1(
        __s: *mut FILE,
        __format: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    #[link_name = "\u{1}__isoc99_vscanf"]
    pub fn vscanf1(
        __format: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    #[link_name = "\u{1}__isoc99_vsscanf"]
    pub fn vsscanf1(
        __s: *const ::std::os::raw::c_char,
        __format: *const ::std::os::raw::c_char,
        __arg: *mut __va_list_tag,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fgetc(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn getc(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn getchar() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn getc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn getchar_unlocked() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fgetc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fputc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn putc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn putchar(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fputc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn putc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn putchar_unlocked(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn getw(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn putw(__w: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fgets(
        __s: *mut ::std::os::raw::c_char,
        __n: ::std::os::raw::c_int,
        __stream: *mut FILE,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn __getdelim(
        __lineptr: *mut *mut ::std::os::raw::c_char,
        __n: *mut size_t,
        __delimiter: ::std::os::raw::c_int,
        __stream: *mut FILE,
    ) -> __ssize_t;
}
extern "C" {
    pub fn getdelim(
        __lineptr: *mut *mut ::std::os::raw::c_char,
        __n: *mut size_t,
        __delimiter: ::std::os::raw::c_int,
        __stream: *mut FILE,
    ) -> __ssize_t;
}
extern "C" {
    pub fn getline(
        __lineptr: *mut *mut ::std::os::raw::c_char,
        __n: *mut size_t,
        __stream: *mut FILE,
    ) -> __ssize_t;
}
extern "C" {
    pub fn fputs(__s: *const ::std::os::raw::c_char, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn puts(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ungetc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fread(
        __ptr: *mut ::std::os::raw::c_void,
        __size: ::std::os::raw::c_ulong,
        __n: ::std::os::raw::c_ulong,
        __stream: *mut FILE,
    ) -> ::std::os::raw::c_ulong;
}
extern "C" {
    pub fn fwrite(
        __ptr: *const ::std::os::raw::c_void,
        __size: ::std::os::raw::c_ulong,
        __n: ::std::os::raw::c_ulong,
        __s: *mut FILE,
    ) -> ::std::os::raw::c_ulong;
}
extern "C" {
    pub fn fread_unlocked(
        __ptr: *mut ::std::os::raw::c_void,
        __size: size_t,
        __n: size_t,
        __stream: *mut FILE,
    ) -> size_t;
}
extern "C" {
    pub fn fwrite_unlocked(
        __ptr: *const ::std::os::raw::c_void,
        __size: size_t,
        __n: size_t,
        __stream: *mut FILE,
    ) -> size_t;
}
extern "C" {
    pub fn fseek(
        __stream: *mut FILE,
        __off: ::std::os::raw::c_long,
        __whence: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ftell(__stream: *mut FILE) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn rewind(__stream: *mut FILE);
}
extern "C" {
    pub fn fseeko(
        __stream: *mut FILE,
        __off: __off_t,
        __whence: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ftello(__stream: *mut FILE) -> __off_t;
}
extern "C" {
    pub fn fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn clearerr(__stream: *mut FILE);
}
extern "C" {
    pub fn feof(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ferror(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn clearerr_unlocked(__stream: *mut FILE);
}
extern "C" {
    pub fn feof_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ferror_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn perror(__s: *const ::std::os::raw::c_char);
}
extern "C" {
    pub fn fileno(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fileno_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn popen(
        __command: *const ::std::os::raw::c_char,
        __modes: *const ::std::os::raw::c_char,
    ) -> *mut FILE;
}
extern "C" {
    pub fn pclose(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ctermid(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn flockfile(__stream: *mut FILE);
}
extern "C" {
    pub fn ftrylockfile(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn funlockfile(__stream: *mut FILE);
}
extern "C" {
    pub fn __uflow(arg1: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn __overflow(arg1: *mut FILE, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
pub type u_char = __u_char;
pub type u_short = __u_short;
pub type u_int = __u_int;
pub type u_long = __u_long;
pub type quad_t = __quad_t;
pub type u_quad_t = __u_quad_t;
pub type fsid_t = __fsid_t;
pub type loff_t = __loff_t;
pub type ino_t = __ino_t;
pub type dev_t = __dev_t;
pub type gid_t = __gid_t;
pub type mode_t = __mode_t;
pub type nlink_t = __nlink_t;
pub type uid_t = __uid_t;
pub type pid_t = __pid_t;
pub type id_t = __id_t;
pub type daddr_t = __daddr_t;
pub type caddr_t = __caddr_t;
pub type key_t = __key_t;
pub type clock_t = __clock_t;
pub type clockid_t = __clockid_t;
pub type time_t = __time_t;
pub type timer_t = __timer_t;
pub type ulong = ::std::os::raw::c_ulong;
pub type ushort = ::std::os::raw::c_ushort;
pub type uint = ::std::os::raw::c_uint;
pub type u_int8_t = __uint8_t;
pub type u_int16_t = __uint16_t;
pub type u_int32_t = __uint32_t;
pub type u_int64_t = __uint64_t;
pub type register_t = ::std::os::raw::c_long;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __sigset_t {
    pub __val: [::std::os::raw::c_ulong; 16usize],
}
#[test]
fn bindgen_test_layout___sigset_t() {
    assert_eq!(
        ::std::mem::size_of::<__sigset_t>(),
        128usize,
        concat!("Size of: ", stringify!(__sigset_t))
    );
    assert_eq!(
        ::std::mem::align_of::<__sigset_t>(),
        8usize,
        concat!("Alignment of ", stringify!(__sigset_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__sigset_t),
            "::",
            stringify!(__val)
        )
    );
}
impl Clone for __sigset_t {
    fn clone(&self) -> Self {
        *self
    }
}
pub type sigset_t = __sigset_t;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct timeval {
    pub tv_sec: __time_t,
    pub tv_usec: __suseconds_t,
}
#[test]
fn bindgen_test_layout_timeval() {
    assert_eq!(
        ::std::mem::size_of::<timeval>(),
        16usize,
        concat!("Size of: ", stringify!(timeval))
    );
    assert_eq!(
        ::std::mem::align_of::<timeval>(),
        8usize,
        concat!("Alignment of ", stringify!(timeval))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<timeval>())).tv_sec as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(timeval),
            "::",
            stringify!(tv_sec)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<timeval>())).tv_usec as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(timeval),
            "::",
            stringify!(tv_usec)
        )
    );
}
impl Clone for timeval {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct timespec {
    pub tv_sec: __time_t,
    pub tv_nsec: __syscall_slong_t,
}
#[test]
fn bindgen_test_layout_timespec() {
    assert_eq!(
        ::std::mem::size_of::<timespec>(),
        16usize,
        concat!("Size of: ", stringify!(timespec))
    );
    assert_eq!(
        ::std::mem::align_of::<timespec>(),
        8usize,
        concat!("Alignment of ", stringify!(timespec))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<timespec>())).tv_sec as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(timespec),
            "::",
            stringify!(tv_sec)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<timespec>())).tv_nsec as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(timespec),
            "::",
            stringify!(tv_nsec)
        )
    );
}
impl Clone for timespec {
    fn clone(&self) -> Self {
        *self
    }
}
pub type suseconds_t = __suseconds_t;
pub type __fd_mask = ::std::os::raw::c_long;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct fd_set {
    pub __fds_bits: [__fd_mask; 16usize],
}
#[test]
fn bindgen_test_layout_fd_set() {
    assert_eq!(
        ::std::mem::size_of::<fd_set>(),
        128usize,
        concat!("Size of: ", stringify!(fd_set))
    );
    assert_eq!(
        ::std::mem::align_of::<fd_set>(),
        8usize,
        concat!("Alignment of ", stringify!(fd_set))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<fd_set>())).__fds_bits as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(fd_set),
            "::",
            stringify!(__fds_bits)
        )
    );
}
impl Clone for fd_set {
    fn clone(&self) -> Self {
        *self
    }
}
pub type fd_mask = __fd_mask;
extern "C" {
    pub fn select(
        __nfds: ::std::os::raw::c_int,
        __readfds: *mut fd_set,
        __writefds: *mut fd_set,
        __exceptfds: *mut fd_set,
        __timeout: *mut timeval,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn pselect(
        __nfds: ::std::os::raw::c_int,
        __readfds: *mut fd_set,
        __writefds: *mut fd_set,
        __exceptfds: *mut fd_set,
        __timeout: *const timespec,
        __sigmask: *const __sigset_t,
    ) -> ::std::os::raw::c_int;
}
pub type blksize_t = __blksize_t;
pub type blkcnt_t = __blkcnt_t;
pub type fsblkcnt_t = __fsblkcnt_t;
pub type fsfilcnt_t = __fsfilcnt_t;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __pthread_internal_list {
    pub __prev: *mut __pthread_internal_list,
    pub __next: *mut __pthread_internal_list,
}
#[test]
fn bindgen_test_layout___pthread_internal_list() {
    assert_eq!(
        ::std::mem::size_of::<__pthread_internal_list>(),
        16usize,
        concat!("Size of: ", stringify!(__pthread_internal_list))
    );
    assert_eq!(
        ::std::mem::align_of::<__pthread_internal_list>(),
        8usize,
        concat!("Alignment of ", stringify!(__pthread_internal_list))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__prev as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_internal_list),
            "::",
            stringify!(__prev)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__next as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_internal_list),
            "::",
            stringify!(__next)
        )
    );
}
impl Clone for __pthread_internal_list {
    fn clone(&self) -> Self {
        *self
    }
}
pub type __pthread_list_t = __pthread_internal_list;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __pthread_internal_slist {
    pub __next: *mut __pthread_internal_slist,
}
#[test]
fn bindgen_test_layout___pthread_internal_slist() {
    assert_eq!(
        ::std::mem::size_of::<__pthread_internal_slist>(),
        8usize,
        concat!("Size of: ", stringify!(__pthread_internal_slist))
    );
    assert_eq!(
        ::std::mem::align_of::<__pthread_internal_slist>(),
        8usize,
        concat!("Alignment of ", stringify!(__pthread_internal_slist))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_internal_slist>())).__next as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_internal_slist),
            "::",
            stringify!(__next)
        )
    );
}
impl Clone for __pthread_internal_slist {
    fn clone(&self) -> Self {
        *self
    }
}
pub type __pthread_slist_t = __pthread_internal_slist;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __pthread_mutex_s {
    pub __lock: ::std::os::raw::c_int,
    pub __count: ::std::os::raw::c_uint,
    pub __owner: ::std::os::raw::c_int,
    pub __nusers: ::std::os::raw::c_uint,
    pub __kind: ::std::os::raw::c_int,
    pub __spins: ::std::os::raw::c_short,
    pub __elision: ::std::os::raw::c_short,
    pub __list: __pthread_list_t,
}
#[test]
fn bindgen_test_layout___pthread_mutex_s() {
    assert_eq!(
        ::std::mem::size_of::<__pthread_mutex_s>(),
        40usize,
        concat!("Size of: ", stringify!(__pthread_mutex_s))
    );
    assert_eq!(
        ::std::mem::align_of::<__pthread_mutex_s>(),
        8usize,
        concat!("Alignment of ", stringify!(__pthread_mutex_s))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__lock as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_mutex_s),
            "::",
            stringify!(__lock)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__count as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_mutex_s),
            "::",
            stringify!(__count)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__owner as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_mutex_s),
            "::",
            stringify!(__owner)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__nusers as *const _ as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_mutex_s),
            "::",
            stringify!(__nusers)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__kind as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_mutex_s),
            "::",
            stringify!(__kind)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__spins as *const _ as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_mutex_s),
            "::",
            stringify!(__spins)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__elision as *const _ as usize },
        22usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_mutex_s),
            "::",
            stringify!(__elision)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__list as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_mutex_s),
            "::",
            stringify!(__list)
        )
    );
}
impl Clone for __pthread_mutex_s {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __pthread_rwlock_arch_t {
    pub __readers: ::std::os::raw::c_uint,
    pub __writers: ::std::os::raw::c_uint,
    pub __wrphase_futex: ::std::os::raw::c_uint,
    pub __writers_futex: ::std::os::raw::c_uint,
    pub __pad3: ::std::os::raw::c_uint,
    pub __pad4: ::std::os::raw::c_uint,
    pub __cur_writer: ::std::os::raw::c_int,
    pub __shared: ::std::os::raw::c_int,
    pub __rwelision: ::std::os::raw::c_schar,
    pub __pad1: [::std::os::raw::c_uchar; 7usize],
    pub __pad2: ::std::os::raw::c_ulong,
    pub __flags: ::std::os::raw::c_uint,
}
#[test]
fn bindgen_test_layout___pthread_rwlock_arch_t() {
    assert_eq!(
        ::std::mem::size_of::<__pthread_rwlock_arch_t>(),
        56usize,
        concat!("Size of: ", stringify!(__pthread_rwlock_arch_t))
    );
    assert_eq!(
        ::std::mem::align_of::<__pthread_rwlock_arch_t>(),
        8usize,
        concat!("Alignment of ", stringify!(__pthread_rwlock_arch_t))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__readers as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__readers)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers as *const _ as usize
        },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__writers)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__wrphase_futex as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__wrphase_futex)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers_futex as *const _ as usize
        },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__writers_futex)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad3 as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__pad3)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad4 as *const _ as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__pad4)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__cur_writer as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__cur_writer)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__shared as *const _ as usize
        },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__shared)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__rwelision as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__rwelision)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad1 as *const _ as usize },
        33usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__pad1)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad2 as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__pad2)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__flags as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_rwlock_arch_t),
            "::",
            stringify!(__flags)
        )
    );
}
impl Clone for __pthread_rwlock_arch_t {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __pthread_cond_s {
    pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1,
    pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2,
    pub __g_refs: [::std::os::raw::c_uint; 2usize],
    pub __g_size: [::std::os::raw::c_uint; 2usize],
    pub __g1_orig_size: ::std::os::raw::c_uint,
    pub __wrefs: ::std::os::raw::c_uint,
    pub __g_signals: [::std::os::raw::c_uint; 2usize],
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __pthread_cond_s__bindgen_ty_1 {
    pub __wseq: __BindgenUnionField<::std::os::raw::c_ulonglong>,
    pub __wseq32: __BindgenUnionField<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>,
    pub bindgen_union_field: u64,
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 {
    pub __low: ::std::os::raw::c_uint,
    pub __high: ::std::os::raw::c_uint,
}
#[test]
fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(),
        8usize,
        concat!(
            "Size of: ",
            stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1)
        )
    );
    assert_eq!(
        ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(),
        4usize,
        concat!(
            "Alignment of ",
            stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__low
                as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1),
            "::",
            stringify!(__low)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__high
                as *const _ as usize
        },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1),
            "::",
            stringify!(__high)
        )
    );
}
impl Clone for __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 {
    fn clone(&self) -> Self {
        *self
    }
}
#[test]
fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1>(),
        8usize,
        concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1>(),
        8usize,
        concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_1))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s__bindgen_ty_1),
            "::",
            stringify!(__wseq)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq32 as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s__bindgen_ty_1),
            "::",
            stringify!(__wseq32)
        )
    );
}
impl Clone for __pthread_cond_s__bindgen_ty_1 {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __pthread_cond_s__bindgen_ty_2 {
    pub __g1_start: __BindgenUnionField<::std::os::raw::c_ulonglong>,
    pub __g1_start32: __BindgenUnionField<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>,
    pub bindgen_union_field: u64,
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 {
    pub __low: ::std::os::raw::c_uint,
    pub __high: ::std::os::raw::c_uint,
}
#[test]
fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(),
        8usize,
        concat!(
            "Size of: ",
            stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1)
        )
    );
    assert_eq!(
        ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(),
        4usize,
        concat!(
            "Alignment of ",
            stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__low
                as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1),
            "::",
            stringify!(__low)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__high
                as *const _ as usize
        },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1),
            "::",
            stringify!(__high)
        )
    );
}
impl Clone for __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 {
    fn clone(&self) -> Self {
        *self
    }
}
#[test]
fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2() {
    assert_eq!(
        ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2>(),
        8usize,
        concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_2))
    );
    assert_eq!(
        ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2>(),
        8usize,
        concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_2))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start as *const _
                as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s__bindgen_ty_2),
            "::",
            stringify!(__g1_start)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start32 as *const _
                as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s__bindgen_ty_2),
            "::",
            stringify!(__g1_start32)
        )
    );
}
impl Clone for __pthread_cond_s__bindgen_ty_2 {
    fn clone(&self) -> Self {
        *self
    }
}
#[test]
fn bindgen_test_layout___pthread_cond_s() {
    assert_eq!(
        ::std::mem::size_of::<__pthread_cond_s>(),
        48usize,
        concat!("Size of: ", stringify!(__pthread_cond_s))
    );
    assert_eq!(
        ::std::mem::align_of::<__pthread_cond_s>(),
        8usize,
        concat!("Alignment of ", stringify!(__pthread_cond_s))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_refs as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s),
            "::",
            stringify!(__g_refs)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_size as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s),
            "::",
            stringify!(__g_size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g1_orig_size as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s),
            "::",
            stringify!(__g1_orig_size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__wrefs as *const _ as usize },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s),
            "::",
            stringify!(__wrefs)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_signals as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(__pthread_cond_s),
            "::",
            stringify!(__g_signals)
        )
    );
}
impl Clone for __pthread_cond_s {
    fn clone(&self) -> Self {
        *self
    }
}
pub type __tss_t = ::std::os::raw::c_uint;
pub type __thrd_t = ::std::os::raw::c_ulong;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __once_flag {
    pub __data: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout___once_flag() {
    assert_eq!(
        ::std::mem::size_of::<__once_flag>(),
        4usize,
        concat!("Size of: ", stringify!(__once_flag))
    );
    assert_eq!(
        ::std::mem::align_of::<__once_flag>(),
        4usize,
        concat!("Alignment of ", stringify!(__once_flag))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__once_flag>())).__data as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__once_flag),
            "::",
            stringify!(__data)
        )
    );
}
impl Clone for __once_flag {
    fn clone(&self) -> Self {
        *self
    }
}
pub type pthread_t = ::std::os::raw::c_ulong;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct pthread_mutexattr_t {
    pub __size: __BindgenUnionField<[::std::os::raw::c_char; 4usize]>,
    pub __align: __BindgenUnionField<::std::os::raw::c_int>,
    pub bindgen_union_field: u32,
}
#[test]
fn bindgen_test_layout_pthread_mutexattr_t() {
    assert_eq!(
        ::std::mem::size_of::<pthread_mutexattr_t>(),
        4usize,
        concat!("Size of: ", stringify!(pthread_mutexattr_t))
    );
    assert_eq!(
        ::std::mem::align_of::<pthread_mutexattr_t>(),
        4usize,
        concat!("Alignment of ", stringify!(pthread_mutexattr_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_mutexattr_t>())).__size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_mutexattr_t),
            "::",
            stringify!(__size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_mutexattr_t>())).__align as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_mutexattr_t),
            "::",
            stringify!(__align)
        )
    );
}
impl Clone for pthread_mutexattr_t {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct pthread_condattr_t {
    pub __size: __BindgenUnionField<[::std::os::raw::c_char; 4usize]>,
    pub __align: __BindgenUnionField<::std::os::raw::c_int>,
    pub bindgen_union_field: u32,
}
#[test]
fn bindgen_test_layout_pthread_condattr_t() {
    assert_eq!(
        ::std::mem::size_of::<pthread_condattr_t>(),
        4usize,
        concat!("Size of: ", stringify!(pthread_condattr_t))
    );
    assert_eq!(
        ::std::mem::align_of::<pthread_condattr_t>(),
        4usize,
        concat!("Alignment of ", stringify!(pthread_condattr_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_condattr_t>())).__size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_condattr_t),
            "::",
            stringify!(__size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_condattr_t>())).__align as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_condattr_t),
            "::",
            stringify!(__align)
        )
    );
}
impl Clone for pthread_condattr_t {
    fn clone(&self) -> Self {
        *self
    }
}
pub type pthread_key_t = ::std::os::raw::c_uint;
pub type pthread_once_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct pthread_attr_t {
    pub __size: __BindgenUnionField<[::std::os::raw::c_char; 56usize]>,
    pub __align: __BindgenUnionField<::std::os::raw::c_long>,
    pub bindgen_union_field: [u64; 7usize],
}
#[test]
fn bindgen_test_layout_pthread_attr_t() {
    assert_eq!(
        ::std::mem::size_of::<pthread_attr_t>(),
        56usize,
        concat!("Size of: ", stringify!(pthread_attr_t))
    );
    assert_eq!(
        ::std::mem::align_of::<pthread_attr_t>(),
        8usize,
        concat!("Alignment of ", stringify!(pthread_attr_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_attr_t>())).__size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_attr_t),
            "::",
            stringify!(__size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_attr_t>())).__align as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_attr_t),
            "::",
            stringify!(__align)
        )
    );
}
impl Clone for pthread_attr_t {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct pthread_mutex_t {
    pub __data: __BindgenUnionField<__pthread_mutex_s>,
    pub __size: __BindgenUnionField<[::std::os::raw::c_char; 40usize]>,
    pub __align: __BindgenUnionField<::std::os::raw::c_long>,
    pub bindgen_union_field: [u64; 5usize],
}
#[test]
fn bindgen_test_layout_pthread_mutex_t() {
    assert_eq!(
        ::std::mem::size_of::<pthread_mutex_t>(),
        40usize,
        concat!("Size of: ", stringify!(pthread_mutex_t))
    );
    assert_eq!(
        ::std::mem::align_of::<pthread_mutex_t>(),
        8usize,
        concat!("Alignment of ", stringify!(pthread_mutex_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__data as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_mutex_t),
            "::",
            stringify!(__data)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_mutex_t),
            "::",
            stringify!(__size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__align as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_mutex_t),
            "::",
            stringify!(__align)
        )
    );
}
impl Clone for pthread_mutex_t {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct pthread_cond_t {
    pub __data: __BindgenUnionField<__pthread_cond_s>,
    pub __size: __BindgenUnionField<[::std::os::raw::c_char; 48usize]>,
    pub __align: __BindgenUnionField<::std::os::raw::c_longlong>,
    pub bindgen_union_field: [u64; 6usize],
}
#[test]
fn bindgen_test_layout_pthread_cond_t() {
    assert_eq!(
        ::std::mem::size_of::<pthread_cond_t>(),
        48usize,
        concat!("Size of: ", stringify!(pthread_cond_t))
    );
    assert_eq!(
        ::std::mem::align_of::<pthread_cond_t>(),
        8usize,
        concat!("Alignment of ", stringify!(pthread_cond_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_cond_t>())).__data as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_cond_t),
            "::",
            stringify!(__data)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_cond_t>())).__size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_cond_t),
            "::",
            stringify!(__size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_cond_t>())).__align as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_cond_t),
            "::",
            stringify!(__align)
        )
    );
}
impl Clone for pthread_cond_t {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct pthread_rwlock_t {
    pub __data: __BindgenUnionField<__pthread_rwlock_arch_t>,
    pub __size: __BindgenUnionField<[::std::os::raw::c_char; 56usize]>,
    pub __align: __BindgenUnionField<::std::os::raw::c_long>,
    pub bindgen_union_field: [u64; 7usize],
}
#[test]
fn bindgen_test_layout_pthread_rwlock_t() {
    assert_eq!(
        ::std::mem::size_of::<pthread_rwlock_t>(),
        56usize,
        concat!("Size of: ", stringify!(pthread_rwlock_t))
    );
    assert_eq!(
        ::std::mem::align_of::<pthread_rwlock_t>(),
        8usize,
        concat!("Alignment of ", stringify!(pthread_rwlock_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_rwlock_t>())).__data as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_rwlock_t),
            "::",
            stringify!(__data)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_rwlock_t>())).__size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_rwlock_t),
            "::",
            stringify!(__size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_rwlock_t>())).__align as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_rwlock_t),
            "::",
            stringify!(__align)
        )
    );
}
impl Clone for pthread_rwlock_t {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct pthread_rwlockattr_t {
    pub __size: __BindgenUnionField<[::std::os::raw::c_char; 8usize]>,
    pub __align: __BindgenUnionField<::std::os::raw::c_long>,
    pub bindgen_union_field: u64,
}
#[test]
fn bindgen_test_layout_pthread_rwlockattr_t() {
    assert_eq!(
        ::std::mem::size_of::<pthread_rwlockattr_t>(),
        8usize,
        concat!("Size of: ", stringify!(pthread_rwlockattr_t))
    );
    assert_eq!(
        ::std::mem::align_of::<pthread_rwlockattr_t>(),
        8usize,
        concat!("Alignment of ", stringify!(pthread_rwlockattr_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_rwlockattr_t>())).__size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_rwlockattr_t),
            "::",
            stringify!(__size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_rwlockattr_t>())).__align as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_rwlockattr_t),
            "::",
            stringify!(__align)
        )
    );
}
impl Clone for pthread_rwlockattr_t {
    fn clone(&self) -> Self {
        *self
    }
}
pub type pthread_spinlock_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct pthread_barrier_t {
    pub __size: __BindgenUnionField<[::std::os::raw::c_char; 32usize]>,
    pub __align: __BindgenUnionField<::std::os::raw::c_long>,
    pub bindgen_union_field: [u64; 4usize],
}
#[test]
fn bindgen_test_layout_pthread_barrier_t() {
    assert_eq!(
        ::std::mem::size_of::<pthread_barrier_t>(),
        32usize,
        concat!("Size of: ", stringify!(pthread_barrier_t))
    );
    assert_eq!(
        ::std::mem::align_of::<pthread_barrier_t>(),
        8usize,
        concat!("Alignment of ", stringify!(pthread_barrier_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_barrier_t>())).__size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_barrier_t),
            "::",
            stringify!(__size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_barrier_t>())).__align as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_barrier_t),
            "::",
            stringify!(__align)
        )
    );
}
impl Clone for pthread_barrier_t {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct pthread_barrierattr_t {
    pub __size: __BindgenUnionField<[::std::os::raw::c_char; 4usize]>,
    pub __align: __BindgenUnionField<::std::os::raw::c_int>,
    pub bindgen_union_field: u32,
}
#[test]
fn bindgen_test_layout_pthread_barrierattr_t() {
    assert_eq!(
        ::std::mem::size_of::<pthread_barrierattr_t>(),
        4usize,
        concat!("Size of: ", stringify!(pthread_barrierattr_t))
    );
    assert_eq!(
        ::std::mem::align_of::<pthread_barrierattr_t>(),
        4usize,
        concat!("Alignment of ", stringify!(pthread_barrierattr_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_barrierattr_t>())).__size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_barrierattr_t),
            "::",
            stringify!(__size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<pthread_barrierattr_t>())).__align as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(pthread_barrierattr_t),
            "::",
            stringify!(__align)
        )
    );
}
impl Clone for pthread_barrierattr_t {
    fn clone(&self) -> Self {
        *self
    }
}
pub type wchar_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy)]
pub struct div_t {
    pub quot: ::std::os::raw::c_int,
    pub rem: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_div_t() {
    assert_eq!(
        ::std::mem::size_of::<div_t>(),
        8usize,
        concat!("Size of: ", stringify!(div_t))
    );
    assert_eq!(
        ::std::mem::align_of::<div_t>(),
        4usize,
        concat!("Alignment of ", stringify!(div_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<div_t>())).quot as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(div_t),
            "::",
            stringify!(quot)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<div_t>())).rem as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(div_t),
            "::",
            stringify!(rem)
        )
    );
}
impl Clone for div_t {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct ldiv_t {
    pub quot: ::std::os::raw::c_long,
    pub rem: ::std::os::raw::c_long,
}
#[test]
fn bindgen_test_layout_ldiv_t() {
    assert_eq!(
        ::std::mem::size_of::<ldiv_t>(),
        16usize,
        concat!("Size of: ", stringify!(ldiv_t))
    );
    assert_eq!(
        ::std::mem::align_of::<ldiv_t>(),
        8usize,
        concat!("Alignment of ", stringify!(ldiv_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<ldiv_t>())).quot as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(ldiv_t),
            "::",
            stringify!(quot)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<ldiv_t>())).rem as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(ldiv_t),
            "::",
            stringify!(rem)
        )
    );
}
impl Clone for ldiv_t {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct lldiv_t {
    pub quot: ::std::os::raw::c_longlong,
    pub rem: ::std::os::raw::c_longlong,
}
#[test]
fn bindgen_test_layout_lldiv_t() {
    assert_eq!(
        ::std::mem::size_of::<lldiv_t>(),
        16usize,
        concat!("Size of: ", stringify!(lldiv_t))
    );
    assert_eq!(
        ::std::mem::align_of::<lldiv_t>(),
        8usize,
        concat!("Alignment of ", stringify!(lldiv_t))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<lldiv_t>())).quot as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(lldiv_t),
            "::",
            stringify!(quot)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<lldiv_t>())).rem as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(lldiv_t),
            "::",
            stringify!(rem)
        )
    );
}
impl Clone for lldiv_t {
    fn clone(&self) -> Self {
        *self
    }
}
extern "C" {
    pub fn __ctype_get_mb_cur_max() -> size_t;
}
extern "C" {
    pub fn atof(__nptr: *const ::std::os::raw::c_char) -> f64;
}
extern "C" {
    pub fn atoi(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn atol(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn atoll(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong;
}
extern "C" {
    pub fn strtod(
        __nptr: *const ::std::os::raw::c_char,
        __endptr: *mut *mut ::std::os::raw::c_char,
    ) -> f64;
}
extern "C" {
    pub fn strtof(
        __nptr: *const ::std::os::raw::c_char,
        __endptr: *mut *mut ::std::os::raw::c_char,
    ) -> f32;
}
extern "C" {
    pub fn strtold(
        __nptr: *const ::std::os::raw::c_char,
        __endptr: *mut *mut ::std::os::raw::c_char,
    ) -> f64;
}
extern "C" {
    pub fn strtol(
        __nptr: *const ::std::os::raw::c_char,
        __endptr: *mut *mut ::std::os::raw::c_char,
        __base: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn strtoul(
        __nptr: *const ::std::os::raw::c_char,
        __endptr: *mut *mut ::std::os::raw::c_char,
        __base: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_ulong;
}
extern "C" {
    pub fn strtoq(
        __nptr: *const ::std::os::raw::c_char,
        __endptr: *mut *mut ::std::os::raw::c_char,
        __base: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_longlong;
}
extern "C" {
    pub fn strtouq(
        __nptr: *const ::std::os::raw::c_char,
        __endptr: *mut *mut ::std::os::raw::c_char,
        __base: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_ulonglong;
}
extern "C" {
    pub fn strtoll(
        __nptr: *const ::std::os::raw::c_char,
        __endptr: *mut *mut ::std::os::raw::c_char,
        __base: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_longlong;
}
extern "C" {
    pub fn strtoull(
        __nptr: *const ::std::os::raw::c_char,
        __endptr: *mut *mut ::std::os::raw::c_char,
        __base: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_ulonglong;
}
extern "C" {
    pub fn l64a(__n: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn a64l(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn random() -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn srandom(__seed: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn initstate(
        __seed: ::std::os::raw::c_uint,
        __statebuf: *mut ::std::os::raw::c_char,
        __statelen: size_t,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn setstate(__statebuf: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct random_data {
    pub fptr: *mut i32,
    pub rptr: *mut i32,
    pub state: *mut i32,
    pub rand_type: ::std::os::raw::c_int,
    pub rand_deg: ::std::os::raw::c_int,
    pub rand_sep: ::std::os::raw::c_int,
    pub end_ptr: *mut i32,
}
#[test]
fn bindgen_test_layout_random_data() {
    assert_eq!(
        ::std::mem::size_of::<random_data>(),
        48usize,
        concat!("Size of: ", stringify!(random_data))
    );
    assert_eq!(
        ::std::mem::align_of::<random_data>(),
        8usize,
        concat!("Alignment of ", stringify!(random_data))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<random_data>())).fptr as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(random_data),
            "::",
            stringify!(fptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<random_data>())).rptr as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(random_data),
            "::",
            stringify!(rptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<random_data>())).state as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(random_data),
            "::",
            stringify!(state)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<random_data>())).rand_type as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(random_data),
            "::",
            stringify!(rand_type)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<random_data>())).rand_deg as *const _ as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(random_data),
            "::",
            stringify!(rand_deg)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<random_data>())).rand_sep as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(random_data),
            "::",
            stringify!(rand_sep)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<random_data>())).end_ptr as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(random_data),
            "::",
            stringify!(end_ptr)
        )
    );
}
impl Clone for random_data {
    fn clone(&self) -> Self {
        *self
    }
}
extern "C" {
    pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn srandom_r(
        __seed: ::std::os::raw::c_uint,
        __buf: *mut random_data,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn initstate_r(
        __seed: ::std::os::raw::c_uint,
        __statebuf: *mut ::std::os::raw::c_char,
        __statelen: size_t,
        __buf: *mut random_data,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn setstate_r(
        __statebuf: *mut ::std::os::raw::c_char,
        __buf: *mut random_data,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn rand() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn srand(__seed: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn rand_r(__seed: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn drand48() -> f64;
}
extern "C" {
    pub fn erand48(__xsubi: *mut ::std::os::raw::c_ushort) -> f64;
}
extern "C" {
    pub fn lrand48() -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn nrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn mrand48() -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn jrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn srand48(__seedval: ::std::os::raw::c_long);
}
extern "C" {
    pub fn seed48(__seed16v: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort;
}
extern "C" {
    pub fn lcong48(__param: *mut ::std::os::raw::c_ushort);
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct drand48_data {
    pub __x: [::std::os::raw::c_ushort; 3usize],
    pub __old_x: [::std::os::raw::c_ushort; 3usize],
    pub __c: ::std::os::raw::c_ushort,
    pub __init: ::std::os::raw::c_ushort,
    pub __a: ::std::os::raw::c_ulonglong,
}
#[test]
fn bindgen_test_layout_drand48_data() {
    assert_eq!(
        ::std::mem::size_of::<drand48_data>(),
        24usize,
        concat!("Size of: ", stringify!(drand48_data))
    );
    assert_eq!(
        ::std::mem::align_of::<drand48_data>(),
        8usize,
        concat!("Alignment of ", stringify!(drand48_data))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<drand48_data>())).__x as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(drand48_data),
            "::",
            stringify!(__x)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<drand48_data>())).__old_x as *const _ as usize },
        6usize,
        concat!(
            "Offset of field: ",
            stringify!(drand48_data),
            "::",
            stringify!(__old_x)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<drand48_data>())).__c as *const _ as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(drand48_data),
            "::",
            stringify!(__c)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<drand48_data>())).__init as *const _ as usize },
        14usize,
        concat!(
            "Offset of field: ",
            stringify!(drand48_data),
            "::",
            stringify!(__init)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<drand48_data>())).__a as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(drand48_data),
            "::",
            stringify!(__a)
        )
    );
}
impl Clone for drand48_data {
    fn clone(&self) -> Self {
        *self
    }
}
extern "C" {
    pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn erand48_r(
        __xsubi: *mut ::std::os::raw::c_ushort,
        __buffer: *mut drand48_data,
        __result: *mut f64,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn lrand48_r(
        __buffer: *mut drand48_data,
        __result: *mut ::std::os::raw::c_long,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn nrand48_r(
        __xsubi: *mut ::std::os::raw::c_ushort,
        __buffer: *mut drand48_data,
        __result: *mut ::std::os::raw::c_long,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn mrand48_r(
        __buffer: *mut drand48_data,
        __result: *mut ::std::os::raw::c_long,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn jrand48_r(
        __xsubi: *mut ::std::os::raw::c_ushort,
        __buffer: *mut drand48_data,
        __result: *mut ::std::os::raw::c_long,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn srand48_r(
        __seedval: ::std::os::raw::c_long,
        __buffer: *mut drand48_data,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn seed48_r(
        __seed16v: *mut ::std::os::raw::c_ushort,
        __buffer: *mut drand48_data,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn lcong48_r(
        __param: *mut ::std::os::raw::c_ushort,
        __buffer: *mut drand48_data,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn malloc(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn calloc(
        __nmemb: ::std::os::raw::c_ulong,
        __size: ::std::os::raw::c_ulong,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn realloc(
        __ptr: *mut ::std::os::raw::c_void,
        __size: ::std::os::raw::c_ulong,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn reallocarray(
        __ptr: *mut ::std::os::raw::c_void,
        __nmemb: size_t,
        __size: size_t,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn free(__ptr: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn alloca(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn valloc(__size: size_t) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn posix_memalign(
        __memptr: *mut *mut ::std::os::raw::c_void,
        __alignment: size_t,
        __size: size_t,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn aligned_alloc(__alignment: size_t, __size: size_t) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn abort();
}
extern "C" {
    pub fn atexit(__func: ::std::option::Option<unsafe extern "C" fn()>) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn at_quick_exit(
        __func: ::std::option::Option<unsafe extern "C" fn()>,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn on_exit(
        __func: ::std::option::Option<
            unsafe extern "C" fn(
                __status: ::std::os::raw::c_int,
                __arg: *mut ::std::os::raw::c_void,
            ),
        >,
        __arg: *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn exit(__status: ::std::os::raw::c_int);
}
extern "C" {
    pub fn quick_exit(__status: ::std::os::raw::c_int);
}
extern "C" {
    pub fn _Exit(__status: ::std::os::raw::c_int);
}
extern "C" {
    pub fn getenv(__name: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn putenv(__string: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn setenv(
        __name: *const ::std::os::raw::c_char,
        __value: *const ::std::os::raw::c_char,
        __replace: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn unsetenv(__name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn clearenv() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn mktemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn mkstemp(__template: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn mkstemps(
        __template: *mut ::std::os::raw::c_char,
        __suffixlen: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn mkdtemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn system(__command: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn realpath(
        __name: *const ::std::os::raw::c_char,
        __resolved: *mut ::std::os::raw::c_char,
    ) -> *mut ::std::os::raw::c_char;
}
pub type __compar_fn_t = ::std::option::Option<
    unsafe extern "C" fn(
        arg1: *const ::std::os::raw::c_void,
        arg2: *const ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
extern "C" {
    pub fn bsearch(
        __key: *const ::std::os::raw::c_void,
        __base: *const ::std::os::raw::c_void,
        __nmemb: size_t,
        __size: size_t,
        __compar: __compar_fn_t,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn qsort(
        __base: *mut ::std::os::raw::c_void,
        __nmemb: size_t,
        __size: size_t,
        __compar: __compar_fn_t,
    );
}
extern "C" {
    pub fn abs(__x: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn labs(__x: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn llabs(__x: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong;
}
extern "C" {
    pub fn div(__numer: ::std::os::raw::c_int, __denom: ::std::os::raw::c_int) -> div_t;
}
extern "C" {
    pub fn ldiv(__numer: ::std::os::raw::c_long, __denom: ::std::os::raw::c_long) -> ldiv_t;
}
extern "C" {
    pub fn lldiv(
        __numer: ::std::os::raw::c_longlong,
        __denom: ::std::os::raw::c_longlong,
    ) -> lldiv_t;
}
extern "C" {
    pub fn ecvt(
        __value: f64,
        __ndigit: ::std::os::raw::c_int,
        __decpt: *mut ::std::os::raw::c_int,
        __sign: *mut ::std::os::raw::c_int,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn fcvt(
        __value: f64,
        __ndigit: ::std::os::raw::c_int,
        __decpt: *mut ::std::os::raw::c_int,
        __sign: *mut ::std::os::raw::c_int,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn gcvt(
        __value: f64,
        __ndigit: ::std::os::raw::c_int,
        __buf: *mut ::std::os::raw::c_char,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn qecvt(
        __value: f64,
        __ndigit: ::std::os::raw::c_int,
        __decpt: *mut ::std::os::raw::c_int,
        __sign: *mut ::std::os::raw::c_int,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn qfcvt(
        __value: f64,
        __ndigit: ::std::os::raw::c_int,
        __decpt: *mut ::std::os::raw::c_int,
        __sign: *mut ::std::os::raw::c_int,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn qgcvt(
        __value: f64,
        __ndigit: ::std::os::raw::c_int,
        __buf: *mut ::std::os::raw::c_char,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn ecvt_r(
        __value: f64,
        __ndigit: ::std::os::raw::c_int,
        __decpt: *mut ::std::os::raw::c_int,
        __sign: *mut ::std::os::raw::c_int,
        __buf: *mut ::std::os::raw::c_char,
        __len: size_t,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fcvt_r(
        __value: f64,
        __ndigit: ::std::os::raw::c_int,
        __decpt: *mut ::std::os::raw::c_int,
        __sign: *mut ::std::os::raw::c_int,
        __buf: *mut ::std::os::raw::c_char,
        __len: size_t,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn qecvt_r(
        __value: f64,
        __ndigit: ::std::os::raw::c_int,
        __decpt: *mut ::std::os::raw::c_int,
        __sign: *mut ::std::os::raw::c_int,
        __buf: *mut ::std::os::raw::c_char,
        __len: size_t,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn qfcvt_r(
        __value: f64,
        __ndigit: ::std::os::raw::c_int,
        __decpt: *mut ::std::os::raw::c_int,
        __sign: *mut ::std::os::raw::c_int,
        __buf: *mut ::std::os::raw::c_char,
        __len: size_t,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn mblen(__s: *const ::std::os::raw::c_char, __n: size_t) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn mbtowc(
        __pwc: *mut wchar_t,
        __s: *const ::std::os::raw::c_char,
        __n: size_t,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn wctomb(__s: *mut ::std::os::raw::c_char, __wchar: wchar_t) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn mbstowcs(
        __pwcs: *mut wchar_t,
        __s: *const ::std::os::raw::c_char,
        __n: size_t,
    ) -> size_t;
}
extern "C" {
    pub fn wcstombs(
        __s: *mut ::std::os::raw::c_char,
        __pwcs: *const wchar_t,
        __n: size_t,
    ) -> size_t;
}
extern "C" {
    pub fn rpmatch(__response: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn getsubopt(
        __optionp: *mut *mut ::std::os::raw::c_char,
        __tokens: *const *mut ::std::os::raw::c_char,
        __valuep: *mut *mut ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn getloadavg(__loadavg: *mut f64, __nelem: ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
pub type LONGLONG = ::std::os::raw::c_longlong;
pub type ULONGLONG = ::std::os::raw::c_ulonglong;
#[repr(C)]
#[derive(Copy)]
pub struct tcolumn {
    pub ttype: [::std::os::raw::c_char; 70usize],
    pub tbcol: LONGLONG,
    pub tdatatype: ::std::os::raw::c_int,
    pub trepeat: LONGLONG,
    pub tscale: f64,
    pub tzero: f64,
    pub tnull: LONGLONG,
    pub strnull: [::std::os::raw::c_char; 20usize],
    pub tform: [::std::os::raw::c_char; 10usize],
    pub twidth: ::std::os::raw::c_long,
}
#[test]
fn bindgen_test_layout_tcolumn() {
    assert_eq!(
        ::std::mem::size_of::<tcolumn>(),
        160usize,
        concat!("Size of: ", stringify!(tcolumn))
    );
    assert_eq!(
        ::std::mem::align_of::<tcolumn>(),
        8usize,
        concat!("Alignment of ", stringify!(tcolumn))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<tcolumn>())).ttype as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(tcolumn),
            "::",
            stringify!(ttype)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<tcolumn>())).tbcol as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(tcolumn),
            "::",
            stringify!(tbcol)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<tcolumn>())).tdatatype as *const _ as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(tcolumn),
            "::",
            stringify!(tdatatype)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<tcolumn>())).trepeat as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(tcolumn),
            "::",
            stringify!(trepeat)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<tcolumn>())).tscale as *const _ as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(tcolumn),
            "::",
            stringify!(tscale)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<tcolumn>())).tzero as *const _ as usize },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(tcolumn),
            "::",
            stringify!(tzero)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<tcolumn>())).tnull as *const _ as usize },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(tcolumn),
            "::",
            stringify!(tnull)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<tcolumn>())).strnull as *const _ as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(tcolumn),
            "::",
            stringify!(strnull)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<tcolumn>())).tform as *const _ as usize },
        140usize,
        concat!(
            "Offset of field: ",
            stringify!(tcolumn),
            "::",
            stringify!(tform)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<tcolumn>())).twidth as *const _ as usize },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(tcolumn),
            "::",
            stringify!(twidth)
        )
    );
}
impl Clone for tcolumn {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
pub struct FITSfile {
    pub _bindgen_opaque_blob: [u64; 253usize],
}
#[test]
fn bindgen_test_layout_FITSfile() {
    assert_eq!(
        ::std::mem::size_of::<FITSfile>(),
        2024usize,
        concat!("Size of: ", stringify!(FITSfile))
    );
    assert_eq!(
        ::std::mem::align_of::<FITSfile>(),
        8usize,
        concat!("Alignment of ", stringify!(FITSfile))
    );
}
#[repr(C)]
#[derive(Debug, Copy)]
pub struct fitsfile {
    pub _bindgen_opaque_blob: [u64; 2usize],
}
#[test]
fn bindgen_test_layout_fitsfile() {
    assert_eq!(
        ::std::mem::size_of::<fitsfile>(),
        16usize,
        concat!("Size of: ", stringify!(fitsfile))
    );
    assert_eq!(
        ::std::mem::align_of::<fitsfile>(),
        8usize,
        concat!("Alignment of ", stringify!(fitsfile))
    );
}
impl Clone for fitsfile {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Copy)]
pub struct iteratorCol {
    pub fptr: *mut fitsfile,
    pub colnum: ::std::os::raw::c_int,
    pub colname: [::std::os::raw::c_char; 70usize],
    pub datatype: ::std::os::raw::c_int,
    pub iotype: ::std::os::raw::c_int,
    pub array: *mut ::std::os::raw::c_void,
    pub repeat: ::std::os::raw::c_long,
    pub tlmin: ::std::os::raw::c_long,
    pub tlmax: ::std::os::raw::c_long,
    pub tunit: [::std::os::raw::c_char; 70usize],
    pub tdisp: [::std::os::raw::c_char; 70usize],
}
#[test]
fn bindgen_test_layout_iteratorCol() {
    assert_eq!(
        ::std::mem::size_of::<iteratorCol>(),
        272usize,
        concat!("Size of: ", stringify!(iteratorCol))
    );
    assert_eq!(
        ::std::mem::align_of::<iteratorCol>(),
        8usize,
        concat!("Alignment of ", stringify!(iteratorCol))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).fptr as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(fptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).colnum as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(colnum)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).colname as *const _ as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(colname)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).datatype as *const _ as usize },
        84usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(datatype)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).iotype as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(iotype)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).array as *const _ as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(array)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).repeat as *const _ as usize },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(repeat)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).tlmin as *const _ as usize },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(tlmin)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).tlmax as *const _ as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(tlmax)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).tunit as *const _ as usize },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(tunit)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<iteratorCol>())).tdisp as *const _ as usize },
        198usize,
        concat!(
            "Offset of field: ",
            stringify!(iteratorCol),
            "::",
            stringify!(tdisp)
        )
    );
}
impl Clone for iteratorCol {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[derive(Copy)]
pub struct wtbarr {
    pub i: ::std::os::raw::c_int,
    pub m: ::std::os::raw::c_int,
    pub kind: ::std::os::raw::c_int,
    pub extnam: [::std::os::raw::c_char; 72usize],
    pub extver: ::std::os::raw::c_int,
    pub extlev: ::std::os::raw::c_int,
    pub ttype: [::std::os::raw::c_char; 72usize],
    pub row: ::std::os::raw::c_long,
    pub ndim: ::std::os::raw::c_int,
    pub dimlen: *mut ::std::os::raw::c_int,
    pub arrayp: *mut *mut f64,
}
#[test]
fn bindgen_test_layout_wtbarr() {
    assert_eq!(
        ::std::mem::size_of::<wtbarr>(),
        200usize,
        concat!("Size of: ", stringify!(wtbarr))
    );
    assert_eq!(
        ::std::mem::align_of::<wtbarr>(),
        8usize,
        concat!("Alignment of ", stringify!(wtbarr))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).i as *const _ as usize },
        0usize,
        concat!("Offset of field: ", stringify!(wtbarr), "::", stringify!(i))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).m as *const _ as usize },
        4usize,
        concat!("Offset of field: ", stringify!(wtbarr), "::", stringify!(m))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).kind as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(wtbarr),
            "::",
            stringify!(kind)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).extnam as *const _ as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(wtbarr),
            "::",
            stringify!(extnam)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).extver as *const _ as usize },
        84usize,
        concat!(
            "Offset of field: ",
            stringify!(wtbarr),
            "::",
            stringify!(extver)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).extlev as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(wtbarr),
            "::",
            stringify!(extlev)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).ttype as *const _ as usize },
        92usize,
        concat!(
            "Offset of field: ",
            stringify!(wtbarr),
            "::",
            stringify!(ttype)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).row as *const _ as usize },
        168usize,
        concat!(
            "Offset of field: ",
            stringify!(wtbarr),
            "::",
            stringify!(row)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).ndim as *const _ as usize },
        176usize,
        concat!(
            "Offset of field: ",
            stringify!(wtbarr),
            "::",
            stringify!(ndim)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).dimlen as *const _ as usize },
        184usize,
        concat!(
            "Offset of field: ",
            stringify!(wtbarr),
            "::",
            stringify!(dimlen)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<wtbarr>())).arrayp as *const _ as usize },
        192usize,
        concat!(
            "Offset of field: ",
            stringify!(wtbarr),
            "::",
            stringify!(arrayp)
        )
    );
}
impl Clone for wtbarr {
    fn clone(&self) -> Self {
        *self
    }
}
extern "C" {
    pub fn fits_read_wcstab(
        fptr: *mut fitsfile,
        nwtb: ::std::os::raw::c_int,
        wtb: *mut wtbarr,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn CFITS2Unit(fptr: *mut fitsfile) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn CUnit2FITS(unit: ::std::os::raw::c_int) -> *mut fitsfile;
}
extern "C" {
    pub fn fits_get_token(
        ptr: *mut *mut ::std::os::raw::c_char,
        delimiter: *mut ::std::os::raw::c_char,
        token: *mut ::std::os::raw::c_char,
        isanumber: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_get_token2(
        ptr: *mut *mut ::std::os::raw::c_char,
        delimiter: *mut ::std::os::raw::c_char,
        token: *mut *mut ::std::os::raw::c_char,
        isanumber: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_split_names(list: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn ffiurl(
        url: *mut ::std::os::raw::c_char,
        urltype: *mut ::std::os::raw::c_char,
        infile: *mut ::std::os::raw::c_char,
        outfile: *mut ::std::os::raw::c_char,
        extspec: *mut ::std::os::raw::c_char,
        rowfilter: *mut ::std::os::raw::c_char,
        binspec: *mut ::std::os::raw::c_char,
        colspec: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffifile(
        url: *mut ::std::os::raw::c_char,
        urltype: *mut ::std::os::raw::c_char,
        infile: *mut ::std::os::raw::c_char,
        outfile: *mut ::std::os::raw::c_char,
        extspec: *mut ::std::os::raw::c_char,
        rowfilter: *mut ::std::os::raw::c_char,
        binspec: *mut ::std::os::raw::c_char,
        colspec: *mut ::std::os::raw::c_char,
        pixfilter: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffifile2(
        url: *mut ::std::os::raw::c_char,
        urltype: *mut ::std::os::raw::c_char,
        infile: *mut ::std::os::raw::c_char,
        outfile: *mut ::std::os::raw::c_char,
        extspec: *mut ::std::os::raw::c_char,
        rowfilter: *mut ::std::os::raw::c_char,
        binspec: *mut ::std::os::raw::c_char,
        colspec: *mut ::std::os::raw::c_char,
        pixfilter: *mut ::std::os::raw::c_char,
        compspec: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffrtnm(
        url: *mut ::std::os::raw::c_char,
        rootname: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffexist(
        infile: *const ::std::os::raw::c_char,
        exists: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffexts(
        extspec: *mut ::std::os::raw::c_char,
        extnum: *mut ::std::os::raw::c_int,
        extname: *mut ::std::os::raw::c_char,
        extvers: *mut ::std::os::raw::c_int,
        hdutype: *mut ::std::os::raw::c_int,
        colname: *mut ::std::os::raw::c_char,
        rowexpress: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffextn(
        url: *mut ::std::os::raw::c_char,
        extension_num: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffurlt(
        fptr: *mut fitsfile,
        urlType: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffbins(
        binspec: *mut ::std::os::raw::c_char,
        imagetype: *mut ::std::os::raw::c_int,
        haxis: *mut ::std::os::raw::c_int,
        colname: *mut [::std::os::raw::c_char; 71usize],
        minin: *mut f64,
        maxin: *mut f64,
        binsizein: *mut f64,
        minname: *mut [::std::os::raw::c_char; 71usize],
        maxname: *mut [::std::os::raw::c_char; 71usize],
        binname: *mut [::std::os::raw::c_char; 71usize],
        weight: *mut f64,
        wtname: *mut ::std::os::raw::c_char,
        recip: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffbinr(
        binspec: *mut *mut ::std::os::raw::c_char,
        colname: *mut ::std::os::raw::c_char,
        minin: *mut f64,
        maxin: *mut f64,
        binsizein: *mut f64,
        minname: *mut ::std::os::raw::c_char,
        maxname: *mut ::std::os::raw::c_char,
        binname: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_copy_cell2image(
        fptr: *mut fitsfile,
        newptr: *mut fitsfile,
        colname: *mut ::std::os::raw::c_char,
        rownum: ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_copy_image2cell(
        fptr: *mut fitsfile,
        newptr: *mut fitsfile,
        colname: *mut ::std::os::raw::c_char,
        rownum: ::std::os::raw::c_long,
        copykeyflag: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_copy_pixlist2image(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        firstkey: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        colnum: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffimport_file(
        filename: *mut ::std::os::raw::c_char,
        contents: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffrwrg(
        rowlist: *mut ::std::os::raw::c_char,
        maxrows: LONGLONG,
        maxranges: ::std::os::raw::c_int,
        numranges: *mut ::std::os::raw::c_int,
        minrow: *mut ::std::os::raw::c_long,
        maxrow: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffrwrgll(
        rowlist: *mut ::std::os::raw::c_char,
        maxrows: LONGLONG,
        maxranges: ::std::os::raw::c_int,
        numranges: *mut ::std::os::raw::c_int,
        minrow: *mut LONGLONG,
        maxrow: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_init_cfitsio() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffomem(
        fptr: *mut *mut fitsfile,
        name: *const ::std::os::raw::c_char,
        mode: ::std::os::raw::c_int,
        buffptr: *mut *mut ::std::os::raw::c_void,
        buffsize: *mut size_t,
        deltasize: size_t,
        mem_realloc: ::std::option::Option<
            unsafe extern "C" fn(
                p: *mut ::std::os::raw::c_void,
                newsize: size_t,
            ) -> *mut ::std::os::raw::c_void,
        >,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffopen(
        fptr: *mut *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        iomode: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffopentest(
        soname: ::std::os::raw::c_int,
        fptr: *mut *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        iomode: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdopn(
        fptr: *mut *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        iomode: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffeopn(
        fptr: *mut *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        iomode: ::std::os::raw::c_int,
        extlist: *mut ::std::os::raw::c_char,
        hdutype: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fftopn(
        fptr: *mut *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        iomode: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffiopn(
        fptr: *mut *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        iomode: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdkopn(
        fptr: *mut *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        iomode: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffreopen(
        openfptr: *mut fitsfile,
        newfptr: *mut *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffinit(
        fptr: *mut *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdkinit(
        fptr: *mut *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffimem(
        fptr: *mut *mut fitsfile,
        buffptr: *mut *mut ::std::os::raw::c_void,
        buffsize: *mut size_t,
        deltasize: size_t,
        mem_realloc: ::std::option::Option<
            unsafe extern "C" fn(
                p: *mut ::std::os::raw::c_void,
                newsize: size_t,
            ) -> *mut ::std::os::raw::c_void,
        >,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fftplt(
        fptr: *mut *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        tempname: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffflus(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffflsh(
        fptr: *mut fitsfile,
        clearbuf: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffclos(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdelt(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffflnm(
        fptr: *mut fitsfile,
        filename: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffflmd(
        fptr: *mut fitsfile,
        filemode: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_delete_iraf_file(
        filename: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffvers(version: *mut f32) -> f32;
}
extern "C" {
    pub fn ffupch(string: *mut ::std::os::raw::c_char);
}
extern "C" {
    pub fn ffgerr(status: ::std::os::raw::c_int, errtext: *mut ::std::os::raw::c_char);
}
extern "C" {
    pub fn ffpmsg(err_message: *const ::std::os::raw::c_char);
}
extern "C" {
    pub fn ffpmrk();
}
extern "C" {
    pub fn ffgmsg(err_message: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcmsg();
}
extern "C" {
    pub fn ffcmrk();
}
extern "C" {
    pub fn ffrprt(stream: *mut FILE, status: ::std::os::raw::c_int);
}
extern "C" {
    pub fn ffcmps(
        templt: *mut ::std::os::raw::c_char,
        colname: *mut ::std::os::raw::c_char,
        casesen: ::std::os::raw::c_int,
        match_: *mut ::std::os::raw::c_int,
        exact: *mut ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn fftkey(
        keyword: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fftrec(
        card: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffnchk(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffkeyn(
        keyroot: *const ::std::os::raw::c_char,
        value: ::std::os::raw::c_int,
        keyname: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffnkey(
        value: ::std::os::raw::c_int,
        keyroot: *const ::std::os::raw::c_char,
        keyname: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkcl(card: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdtyp(
        cval: *const ::std::os::raw::c_char,
        dtype: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffinttyp(
        cval: *mut ::std::os::raw::c_char,
        datatype: *mut ::std::os::raw::c_int,
        negative: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpsvc(
        card: *mut ::std::os::raw::c_char,
        value: *mut ::std::os::raw::c_char,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgknm(
        card: *mut ::std::os::raw::c_char,
        name: *mut ::std::os::raw::c_char,
        length: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgthd(
        tmplt: *mut ::std::os::raw::c_char,
        card: *mut ::std::os::raw::c_char,
        hdtype: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkky(
        keyname: *const ::std::os::raw::c_char,
        keyval: *mut ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        card: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_translate_keyword(
        inrec: *mut ::std::os::raw::c_char,
        outrec: *mut ::std::os::raw::c_char,
        patterns: *mut [*mut ::std::os::raw::c_char; 2usize],
        npat: ::std::os::raw::c_int,
        n_value: ::std::os::raw::c_int,
        n_offset: ::std::os::raw::c_int,
        n_range: ::std::os::raw::c_int,
        pat_num: *mut ::std::os::raw::c_int,
        i: *mut ::std::os::raw::c_int,
        j: *mut ::std::os::raw::c_int,
        m: *mut ::std::os::raw::c_int,
        n: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_translate_keywords(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        firstkey: ::std::os::raw::c_int,
        patterns: *mut [*mut ::std::os::raw::c_char; 2usize],
        npat: ::std::os::raw::c_int,
        n_value: ::std::os::raw::c_int,
        n_offset: ::std::os::raw::c_int,
        n_range: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffasfm(
        tform: *mut ::std::os::raw::c_char,
        datacode: *mut ::std::os::raw::c_int,
        width: *mut ::std::os::raw::c_long,
        decim: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffbnfm(
        tform: *mut ::std::os::raw::c_char,
        datacode: *mut ::std::os::raw::c_int,
        repeat: *mut ::std::os::raw::c_long,
        width: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffbnfmll(
        tform: *mut ::std::os::raw::c_char,
        datacode: *mut ::std::os::raw::c_int,
        repeat: *mut LONGLONG,
        width: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgabc(
        tfields: ::std::os::raw::c_int,
        tform: *mut *mut ::std::os::raw::c_char,
        space: ::std::os::raw::c_int,
        rowlen: *mut ::std::os::raw::c_long,
        tbcol: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_get_section_range(
        ptr: *mut *mut ::std::os::raw::c_char,
        secmin: *mut ::std::os::raw::c_long,
        secmax: *mut ::std::os::raw::c_long,
        incre: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmbyt(
        fptr: *mut fitsfile,
        bytpos: LONGLONG,
        ignore_err: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpky(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        keyname: *const ::std::os::raw::c_char,
        value: *mut ::std::os::raw::c_void,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffprec(
        fptr: *mut fitsfile,
        card: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcom(
        fptr: *mut fitsfile,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpunt(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        unit: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffphis(
        fptr: *mut fitsfile,
        history: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpdat(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffverifydate(
        year: ::std::os::raw::c_int,
        month: ::std::os::raw::c_int,
        day: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgstm(
        timestr: *mut ::std::os::raw::c_char,
        timeref: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsdt(
        day: *mut ::std::os::raw::c_int,
        month: *mut ::std::os::raw::c_int,
        year: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdt2s(
        year: ::std::os::raw::c_int,
        month: ::std::os::raw::c_int,
        day: ::std::os::raw::c_int,
        datestr: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fftm2s(
        year: ::std::os::raw::c_int,
        month: ::std::os::raw::c_int,
        day: ::std::os::raw::c_int,
        hour: ::std::os::raw::c_int,
        minute: ::std::os::raw::c_int,
        second: f64,
        decimals: ::std::os::raw::c_int,
        datestr: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffs2dt(
        datestr: *mut ::std::os::raw::c_char,
        year: *mut ::std::os::raw::c_int,
        month: *mut ::std::os::raw::c_int,
        day: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffs2tm(
        datestr: *mut ::std::os::raw::c_char,
        year: *mut ::std::os::raw::c_int,
        month: *mut ::std::os::raw::c_int,
        day: *mut ::std::os::raw::c_int,
        hour: *mut ::std::os::raw::c_int,
        minute: *mut ::std::os::raw::c_int,
        second: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkyu(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkys(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkls(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffplsw(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkyl(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkyj(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: LONGLONG,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkyuj(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: ULONGLONG,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkyf(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkye(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkyg(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkyd(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkyc(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkym(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkfc(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkfm(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkyt(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        intval: ::std::os::raw::c_long,
        frac: f64,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffptdm(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffptdmll(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkns(
        fptr: *mut fitsfile,
        keyroot: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nkey: ::std::os::raw::c_int,
        value: *mut *mut ::std::os::raw::c_char,
        comm: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpknl(
        fptr: *mut fitsfile,
        keyroot: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nkey: ::std::os::raw::c_int,
        value: *mut ::std::os::raw::c_int,
        comm: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpknj(
        fptr: *mut fitsfile,
        keyroot: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nkey: ::std::os::raw::c_int,
        value: *mut ::std::os::raw::c_long,
        comm: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpknjj(
        fptr: *mut fitsfile,
        keyroot: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nkey: ::std::os::raw::c_int,
        value: *mut LONGLONG,
        comm: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpknf(
        fptr: *mut fitsfile,
        keyroot: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nkey: ::std::os::raw::c_int,
        value: *mut f32,
        decim: ::std::os::raw::c_int,
        comm: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkne(
        fptr: *mut fitsfile,
        keyroot: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nkey: ::std::os::raw::c_int,
        value: *mut f32,
        decim: ::std::os::raw::c_int,
        comm: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpkng(
        fptr: *mut fitsfile,
        keyroot: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nkey: ::std::os::raw::c_int,
        value: *mut f64,
        decim: ::std::os::raw::c_int,
        comm: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpknd(
        fptr: *mut fitsfile,
        keyroot: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nkey: ::std::os::raw::c_int,
        value: *mut f64,
        decim: ::std::os::raw::c_int,
        comm: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcpky(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        incol: ::std::os::raw::c_int,
        outcol: ::std::os::raw::c_int,
        rootname: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffphps(
        fptr: *mut fitsfile,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffphpsll(
        fptr: *mut fitsfile,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffphpr(
        fptr: *mut fitsfile,
        simple: ::std::os::raw::c_int,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        pcount: LONGLONG,
        gcount: LONGLONG,
        extend: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffphprll(
        fptr: *mut fitsfile,
        simple: ::std::os::raw::c_int,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        pcount: LONGLONG,
        gcount: LONGLONG,
        extend: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffphtb(
        fptr: *mut fitsfile,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        tfields: ::std::os::raw::c_int,
        ttype: *mut *mut ::std::os::raw::c_char,
        tbcol: *mut ::std::os::raw::c_long,
        tform: *mut *mut ::std::os::raw::c_char,
        tunit: *mut *mut ::std::os::raw::c_char,
        extname: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffphbn(
        fptr: *mut fitsfile,
        naxis2: LONGLONG,
        tfields: ::std::os::raw::c_int,
        ttype: *mut *mut ::std::os::raw::c_char,
        tform: *mut *mut ::std::os::raw::c_char,
        tunit: *mut *mut ::std::os::raw::c_char,
        extname: *const ::std::os::raw::c_char,
        pcount: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffphext(
        fptr: *mut fitsfile,
        xtension: *const ::std::os::raw::c_char,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        pcount: LONGLONG,
        gcount: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpktp(
        fptr: *mut fitsfile,
        filename: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghsp(
        fptr: *mut fitsfile,
        nexist: *mut ::std::os::raw::c_int,
        nmore: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghps(
        fptr: *mut fitsfile,
        nexist: *mut ::std::os::raw::c_int,
        position: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmaky(
        fptr: *mut fitsfile,
        nrec: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmrky(
        fptr: *mut fitsfile,
        nrec: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgnxk(
        fptr: *mut fitsfile,
        inclist: *mut *mut ::std::os::raw::c_char,
        ninc: ::std::os::raw::c_int,
        exclist: *mut *mut ::std::os::raw::c_char,
        nexc: ::std::os::raw::c_int,
        card: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgrec(
        fptr: *mut fitsfile,
        nrec: ::std::os::raw::c_int,
        card: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcrd(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        card: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgstr(
        fptr: *mut fitsfile,
        string: *const ::std::os::raw::c_char,
        card: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgunt(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        unit: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkyn(
        fptr: *mut fitsfile,
        nkey: ::std::os::raw::c_int,
        keyname: *mut ::std::os::raw::c_char,
        keyval: *mut ::std::os::raw::c_char,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkey(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        keyval: *mut ::std::os::raw::c_char,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgky(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        keyname: *const ::std::os::raw::c_char,
        value: *mut ::std::os::raw::c_void,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkys(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut ::std::os::raw::c_char,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgksl(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        length: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkls(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut *mut ::std::os::raw::c_char,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsky(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        firstchar: ::std::os::raw::c_int,
        maxchar: ::std::os::raw::c_int,
        value: *mut ::std::os::raw::c_char,
        valuelen: *mut ::std::os::raw::c_int,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fffree(
        value: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fffkls(
        value: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkyl(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut ::std::os::raw::c_int,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkyj(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut ::std::os::raw::c_long,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkyjj(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut LONGLONG,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkyujj(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut ULONGLONG,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkye(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f32,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkyd(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f64,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkyc(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f32,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkym(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f64,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkyt(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        ivalue: *mut ::std::os::raw::c_long,
        dvalue: *mut f64,
        comm: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtdm(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        maxdim: ::std::os::raw::c_int,
        naxis: *mut ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtdmll(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        maxdim: ::std::os::raw::c_int,
        naxis: *mut ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdtdm(
        fptr: *mut fitsfile,
        tdimstr: *mut ::std::os::raw::c_char,
        colnum: ::std::os::raw::c_int,
        maxdim: ::std::os::raw::c_int,
        naxis: *mut ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdtdmll(
        fptr: *mut fitsfile,
        tdimstr: *mut ::std::os::raw::c_char,
        colnum: ::std::os::raw::c_int,
        maxdim: ::std::os::raw::c_int,
        naxis: *mut ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkns(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nmax: ::std::os::raw::c_int,
        value: *mut *mut ::std::os::raw::c_char,
        nfound: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgknl(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nmax: ::std::os::raw::c_int,
        value: *mut ::std::os::raw::c_int,
        nfound: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgknj(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nmax: ::std::os::raw::c_int,
        value: *mut ::std::os::raw::c_long,
        nfound: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgknjj(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nmax: ::std::os::raw::c_int,
        value: *mut LONGLONG,
        nfound: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgkne(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nmax: ::std::os::raw::c_int,
        value: *mut f32,
        nfound: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgknd(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        nstart: ::std::os::raw::c_int,
        nmax: ::std::os::raw::c_int,
        value: *mut f64,
        nfound: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffh2st(
        fptr: *mut fitsfile,
        header: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffhdr2str(
        fptr: *mut fitsfile,
        exclude_comm: ::std::os::raw::c_int,
        exclist: *mut *mut ::std::os::raw::c_char,
        nexc: ::std::os::raw::c_int,
        header: *mut *mut ::std::os::raw::c_char,
        nkeys: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcnvthdr2str(
        fptr: *mut fitsfile,
        exclude_comm: ::std::os::raw::c_int,
        exclist: *mut *mut ::std::os::raw::c_char,
        nexc: ::std::os::raw::c_int,
        header: *mut *mut ::std::os::raw::c_char,
        nkeys: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghpr(
        fptr: *mut fitsfile,
        maxdim: ::std::os::raw::c_int,
        simple: *mut ::std::os::raw::c_int,
        bitpix: *mut ::std::os::raw::c_int,
        naxis: *mut ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        pcount: *mut ::std::os::raw::c_long,
        gcount: *mut ::std::os::raw::c_long,
        extend: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghprll(
        fptr: *mut fitsfile,
        maxdim: ::std::os::raw::c_int,
        simple: *mut ::std::os::raw::c_int,
        bitpix: *mut ::std::os::raw::c_int,
        naxis: *mut ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        pcount: *mut ::std::os::raw::c_long,
        gcount: *mut ::std::os::raw::c_long,
        extend: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghtb(
        fptr: *mut fitsfile,
        maxfield: ::std::os::raw::c_int,
        naxis1: *mut ::std::os::raw::c_long,
        naxis2: *mut ::std::os::raw::c_long,
        tfields: *mut ::std::os::raw::c_int,
        ttype: *mut *mut ::std::os::raw::c_char,
        tbcol: *mut ::std::os::raw::c_long,
        tform: *mut *mut ::std::os::raw::c_char,
        tunit: *mut *mut ::std::os::raw::c_char,
        extname: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghtbll(
        fptr: *mut fitsfile,
        maxfield: ::std::os::raw::c_int,
        naxis1: *mut LONGLONG,
        naxis2: *mut LONGLONG,
        tfields: *mut ::std::os::raw::c_int,
        ttype: *mut *mut ::std::os::raw::c_char,
        tbcol: *mut LONGLONG,
        tform: *mut *mut ::std::os::raw::c_char,
        tunit: *mut *mut ::std::os::raw::c_char,
        extname: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghbn(
        fptr: *mut fitsfile,
        maxfield: ::std::os::raw::c_int,
        naxis2: *mut ::std::os::raw::c_long,
        tfields: *mut ::std::os::raw::c_int,
        ttype: *mut *mut ::std::os::raw::c_char,
        tform: *mut *mut ::std::os::raw::c_char,
        tunit: *mut *mut ::std::os::raw::c_char,
        extname: *mut ::std::os::raw::c_char,
        pcount: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghbnll(
        fptr: *mut fitsfile,
        maxfield: ::std::os::raw::c_int,
        naxis2: *mut LONGLONG,
        tfields: *mut ::std::os::raw::c_int,
        ttype: *mut *mut ::std::os::raw::c_char,
        tform: *mut *mut ::std::os::raw::c_char,
        tunit: *mut *mut ::std::os::raw::c_char,
        extname: *mut ::std::os::raw::c_char,
        pcount: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffuky(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        keyname: *const ::std::os::raw::c_char,
        value: *mut ::std::os::raw::c_void,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffucrd(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        card: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukyu(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukys(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukls(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukyl(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukyj(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: LONGLONG,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukyf(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukye(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukyg(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukyd(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukyc(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukym(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukfc(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffukfm(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmrec(
        fptr: *mut fitsfile,
        nkey: ::std::os::raw::c_int,
        card: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmcrd(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        card: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmnam(
        fptr: *mut fitsfile,
        oldname: *const ::std::os::raw::c_char,
        newname: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmcom(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkyu(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkys(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkls(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkyl(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkyj(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: LONGLONG,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkyf(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkye(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkyg(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkyd(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkyc(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkym(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkfc(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmkfm(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffirec(
        fptr: *mut fitsfile,
        nkey: ::std::os::raw::c_int,
        card: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikey(
        fptr: *mut fitsfile,
        card: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikyu(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikys(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikls(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *const ::std::os::raw::c_char,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikyl(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikyj(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: LONGLONG,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikyf(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikye(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikyg(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikyd(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikyc(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikym(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikfc(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f32,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffikfm(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        value: *mut f64,
        decim: ::std::os::raw::c_int,
        comm: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdkey(
        fptr: *mut fitsfile,
        keyname: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdstr(
        fptr: *mut fitsfile,
        string: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdrec(
        fptr: *mut fitsfile,
        keypos: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghdn(
        fptr: *mut fitsfile,
        chdunum: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghdt(
        fptr: *mut fitsfile,
        exttype: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghad(
        fptr: *mut fitsfile,
        headstart: *mut ::std::os::raw::c_long,
        datastart: *mut ::std::os::raw::c_long,
        dataend: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghadll(
        fptr: *mut fitsfile,
        headstart: *mut LONGLONG,
        datastart: *mut LONGLONG,
        dataend: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffghof(
        fptr: *mut fitsfile,
        headstart: *mut off_t,
        datastart: *mut off_t,
        dataend: *mut off_t,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgipr(
        fptr: *mut fitsfile,
        maxaxis: ::std::os::raw::c_int,
        imgtype: *mut ::std::os::raw::c_int,
        naxis: *mut ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgiprll(
        fptr: *mut fitsfile,
        maxaxis: ::std::os::raw::c_int,
        imgtype: *mut ::std::os::raw::c_int,
        naxis: *mut ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgidt(
        fptr: *mut fitsfile,
        imgtype: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgiet(
        fptr: *mut fitsfile,
        imgtype: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgidm(
        fptr: *mut fitsfile,
        naxis: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgisz(
        fptr: *mut fitsfile,
        nlen: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgiszll(
        fptr: *mut fitsfile,
        nlen: ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmahd(
        fptr: *mut fitsfile,
        hdunum: ::std::os::raw::c_int,
        exttype: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmrhd(
        fptr: *mut fitsfile,
        hdumov: ::std::os::raw::c_int,
        exttype: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmnhd(
        fptr: *mut fitsfile,
        exttype: ::std::os::raw::c_int,
        hduname: *mut ::std::os::raw::c_char,
        hduvers: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffthdu(
        fptr: *mut fitsfile,
        nhdu: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcrhd(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcrim(
        fptr: *mut fitsfile,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcrimll(
        fptr: *mut fitsfile,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcrtb(
        fptr: *mut fitsfile,
        tbltype: ::std::os::raw::c_int,
        naxis2: LONGLONG,
        tfields: ::std::os::raw::c_int,
        ttype: *mut *mut ::std::os::raw::c_char,
        tform: *mut *mut ::std::os::raw::c_char,
        tunit: *mut *mut ::std::os::raw::c_char,
        extname: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffiimg(
        fptr: *mut fitsfile,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffiimgll(
        fptr: *mut fitsfile,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffitab(
        fptr: *mut fitsfile,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        tfields: ::std::os::raw::c_int,
        ttype: *mut *mut ::std::os::raw::c_char,
        tbcol: *mut ::std::os::raw::c_long,
        tform: *mut *mut ::std::os::raw::c_char,
        tunit: *mut *mut ::std::os::raw::c_char,
        extname: *const ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffibin(
        fptr: *mut fitsfile,
        naxis2: LONGLONG,
        tfields: ::std::os::raw::c_int,
        ttype: *mut *mut ::std::os::raw::c_char,
        tform: *mut *mut ::std::os::raw::c_char,
        tunit: *mut *mut ::std::os::raw::c_char,
        extname: *const ::std::os::raw::c_char,
        pcount: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffrsim(
        fptr: *mut fitsfile,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffrsimll(
        fptr: *mut fitsfile,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdhdu(
        fptr: *mut fitsfile,
        hdutype: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcopy(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        morekeys: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcpfl(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        prev: ::std::os::raw::c_int,
        cur: ::std::os::raw::c_int,
        follow: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcphd(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcpdt(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffchfl(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcdfl(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffwrhdu(
        fptr: *mut fitsfile,
        outstream: *mut FILE,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffrdef(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffrhdu(
        fptr: *mut fitsfile,
        hdutype: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffhdef(
        fptr: *mut fitsfile,
        morekeys: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpthp(
        fptr: *mut fitsfile,
        theap: ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcsum(
        fptr: *mut fitsfile,
        nrec: ::std::os::raw::c_long,
        sum: *mut ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffesum(
        sum: ::std::os::raw::c_ulong,
        complm: ::std::os::raw::c_int,
        ascii: *mut ::std::os::raw::c_char,
    );
}
extern "C" {
    pub fn ffdsum(
        ascii: *mut ::std::os::raw::c_char,
        complm: ::std::os::raw::c_int,
        sum: *mut ::std::os::raw::c_ulong,
    ) -> ::std::os::raw::c_ulong;
}
extern "C" {
    pub fn ffpcks(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffupck(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffvcks(
        fptr: *mut fitsfile,
        datastatus: *mut ::std::os::raw::c_int,
        hdustatus: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcks(
        fptr: *mut fitsfile,
        datasum: *mut ::std::os::raw::c_ulong,
        hdusum: *mut ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpscl(
        fptr: *mut fitsfile,
        scale: f64,
        zeroval: f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpnul(
        fptr: *mut fitsfile,
        nulvalue: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fftscl(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        scale: f64,
        zeroval: f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fftnul(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        nulvalue: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffsnul(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        nulstring: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcno(
        fptr: *mut fitsfile,
        casesen: ::std::os::raw::c_int,
        templt: *mut ::std::os::raw::c_char,
        colnum: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcnn(
        fptr: *mut fitsfile,
        casesen: ::std::os::raw::c_int,
        templt: *mut ::std::os::raw::c_char,
        colname: *mut ::std::os::raw::c_char,
        colnum: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtcl(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        typecode: *mut ::std::os::raw::c_int,
        repeat: *mut ::std::os::raw::c_long,
        width: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtclll(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        typecode: *mut ::std::os::raw::c_int,
        repeat: *mut LONGLONG,
        width: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffeqty(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        typecode: *mut ::std::os::raw::c_int,
        repeat: *mut ::std::os::raw::c_long,
        width: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffeqtyll(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        typecode: *mut ::std::os::raw::c_int,
        repeat: *mut LONGLONG,
        width: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgncl(
        fptr: *mut fitsfile,
        ncols: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgnrw(
        fptr: *mut fitsfile,
        nrows: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgnrwll(
        fptr: *mut fitsfile,
        nrows: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgacl(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        ttype: *mut ::std::os::raw::c_char,
        tbcol: *mut ::std::os::raw::c_long,
        tunit: *mut ::std::os::raw::c_char,
        tform: *mut ::std::os::raw::c_char,
        tscal: *mut f64,
        tzero: *mut f64,
        tnull: *mut ::std::os::raw::c_char,
        tdisp: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgbcl(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        ttype: *mut ::std::os::raw::c_char,
        tunit: *mut ::std::os::raw::c_char,
        dtype: *mut ::std::os::raw::c_char,
        repeat: *mut ::std::os::raw::c_long,
        tscal: *mut f64,
        tzero: *mut f64,
        tnull: *mut ::std::os::raw::c_long,
        tdisp: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgbclll(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        ttype: *mut ::std::os::raw::c_char,
        tunit: *mut ::std::os::raw::c_char,
        dtype: *mut ::std::os::raw::c_char,
        repeat: *mut LONGLONG,
        tscal: *mut f64,
        tzero: *mut f64,
        tnull: *mut LONGLONG,
        tdisp: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgrsz(
        fptr: *mut fitsfile,
        nrows: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcdw(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        width: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpxv(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstpix: *mut ::std::os::raw::c_long,
        nelem: LONGLONG,
        nulval: *mut ::std::os::raw::c_void,
        array: *mut ::std::os::raw::c_void,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpxvll(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstpix: *mut LONGLONG,
        nelem: LONGLONG,
        nulval: *mut ::std::os::raw::c_void,
        array: *mut ::std::os::raw::c_void,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpxf(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstpix: *mut ::std::os::raw::c_long,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        nullarray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpxfll(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstpix: *mut LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        nullarray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsv(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: *mut ::std::os::raw::c_void,
        array: *mut ::std::os::raw::c_void,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpv(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: *mut ::std::os::raw::c_void,
        array: *mut ::std::os::raw::c_void,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpf(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        nullarray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_uchar,
        array: *mut ::std::os::raw::c_uchar,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvsb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_schar,
        array: *mut ::std::os::raw::c_schar,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_ushort,
        array: *mut ::std::os::raw::c_ushort,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvi(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_short,
        array: *mut ::std::os::raw::c_short,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvuj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_ulong,
        array: *mut ::std::os::raw::c_ulong,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_long,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ULONGLONG,
        array: *mut ULONGLONG,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvjj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: LONGLONG,
        array: *mut LONGLONG,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvuk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_uint,
        array: *mut ::std::os::raw::c_uint,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_int,
        array: *mut ::std::os::raw::c_int,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpve(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: f32,
        array: *mut f32,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpvd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: f64,
        array: *mut f64,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uchar,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfsb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_schar,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ushort,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfi(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_short,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfuj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ulong,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_long,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ULONGLONG,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfjj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut LONGLONG,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfuk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uint,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_int,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfe(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f32,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgpfd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f64,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2db(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_uchar,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_uchar,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2dsb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_schar,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_schar,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2dui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_ushort,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_ushort,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2di(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_short,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_short,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2duj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_ulong,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_ulong,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2dj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_long,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2dujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ULONGLONG,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ULONGLONG,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2djj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: LONGLONG,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut LONGLONG,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2duk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_uint,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_uint,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2dk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_int,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_int,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2de(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: f32,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut f32,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg2dd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: f64,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut f64,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3db(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_uchar,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_uchar,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3dsb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_schar,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_schar,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3dui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_ushort,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_ushort,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3di(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_short,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_short,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3duj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_ulong,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_ulong,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3dj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_long,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3dujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ULONGLONG,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ULONGLONG,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3djj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: LONGLONG,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut LONGLONG,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3duk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_uint,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_uint,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3dk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_int,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_int,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3de(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: f32,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut f32,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffg3dd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        nulval: f64,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut f64,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_uchar,
        array: *mut ::std::os::raw::c_uchar,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvsb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_schar,
        array: *mut ::std::os::raw::c_schar,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvui(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_ushort,
        array: *mut ::std::os::raw::c_ushort,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvi(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_short,
        array: *mut ::std::os::raw::c_short,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvuj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_ulong,
        array: *mut ::std::os::raw::c_ulong,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_long,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvujj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: ULONGLONG,
        array: *mut ULONGLONG,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvjj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: LONGLONG,
        array: *mut LONGLONG,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvuk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_uint,
        array: *mut ::std::os::raw::c_uint,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_int,
        array: *mut ::std::os::raw::c_int,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsve(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: f32,
        array: *mut f32,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsvd(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        nulval: f64,
        array: *mut f64,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_uchar,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfsb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_schar,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfui(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_ushort,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfi(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_short,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfuj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_ulong,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_long,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfujj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut ULONGLONG,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfjj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut LONGLONG,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfuk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_uint,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_int,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfe(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut f32,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgsfd(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        blc: *mut ::std::os::raw::c_long,
        trc: *mut ::std::os::raw::c_long,
        inc: *mut ::std::os::raw::c_long,
        array: *mut f64,
        flagval: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpsb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_schar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_ushort,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpi(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_short,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpuj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ULONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpjj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpuk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_uint,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpe(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffggpd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcv(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: *mut ::std::os::raw::c_void,
        array: *mut ::std::os::raw::c_void,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcf(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        nullarray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvs(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: *mut ::std::os::raw::c_char,
        array: *mut *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcl(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvl(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_char,
        array: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_uchar,
        array: *mut ::std::os::raw::c_uchar,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvsb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_schar,
        array: *mut ::std::os::raw::c_schar,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvui(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_ushort,
        array: *mut ::std::os::raw::c_ushort,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvi(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_short,
        array: *mut ::std::os::raw::c_short,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvuj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_ulong,
        array: *mut ::std::os::raw::c_ulong,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_long,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvujj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ULONGLONG,
        array: *mut ULONGLONG,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvjj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: LONGLONG,
        array: *mut LONGLONG,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvuk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_uint,
        array: *mut ::std::os::raw::c_uint,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: ::std::os::raw::c_int,
        array: *mut ::std::os::raw::c_int,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcve(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: f32,
        array: *mut f32,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvd(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: f64,
        array: *mut f64,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvc(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: f32,
        array: *mut f32,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcvm(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        nulval: f64,
        array: *mut f64,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcx(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstbit: LONGLONG,
        nbits: LONGLONG,
        larray: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcxui(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        nrows: LONGLONG,
        firstbit: ::std::os::raw::c_long,
        nbits: ::std::os::raw::c_int,
        array: *mut ::std::os::raw::c_ushort,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcxuk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        nrows: LONGLONG,
        firstbit: ::std::os::raw::c_long,
        nbits: ::std::os::raw::c_int,
        array: *mut ::std::os::raw::c_uint,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfs(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut *mut ::std::os::raw::c_char,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfl(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_char,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uchar,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfsb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_schar,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfui(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ushort,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfi(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_short,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfuj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ulong,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_long,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfujj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ULONGLONG,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfjj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut LONGLONG,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfuk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uint,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_int,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfe(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f32,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfd(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f64,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfc(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f32,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgcfm(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f64,
        nularray: *mut ::std::os::raw::c_char,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgdes(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        rownum: LONGLONG,
        length: *mut ::std::os::raw::c_long,
        heapaddr: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgdesll(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        rownum: LONGLONG,
        length: *mut LONGLONG,
        heapaddr: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgdess(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        nrows: LONGLONG,
        length: *mut ::std::os::raw::c_long,
        heapaddr: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgdessll(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        nrows: LONGLONG,
        length: *mut LONGLONG,
        heapaddr: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpdes(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        rownum: LONGLONG,
        length: LONGLONG,
        heapaddr: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fftheap(
        fptr: *mut fitsfile,
        heapsize: *mut LONGLONG,
        unused: *mut LONGLONG,
        overlap: *mut LONGLONG,
        valid: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcmph(fptr: *mut fitsfile, status: *mut ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtbb(
        fptr: *mut fitsfile,
        firstrow: LONGLONG,
        firstchar: LONGLONG,
        nchars: LONGLONG,
        values: *mut ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgextn(
        fptr: *mut fitsfile,
        offset: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpextn(
        fptr: *mut fitsfile,
        offset: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppx(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstpix: *mut ::std::os::raw::c_long,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppxll(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstpix: *mut LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppxn(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstpix: *mut ::std::os::raw::c_long,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        nulval: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppxnll(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstpix: *mut LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        nulval: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppr(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpprb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpprsb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_schar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpprui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ushort,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppri(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_short,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppruj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpprj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppruk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uint,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpprk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppre(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpprd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpprjj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpprujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ULONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppru(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpprn(
        fptr: *mut fitsfile,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppn(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        nulval: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppnb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uchar,
        nulval: ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppnsb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_schar,
        nulval: ::std::os::raw::c_schar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppnui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ushort,
        nulval: ::std::os::raw::c_ushort,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppni(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_short,
        nulval: ::std::os::raw::c_short,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppnj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_long,
        nulval: ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppnuj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ulong,
        nulval: ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppnuk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uint,
        nulval: ::std::os::raw::c_uint,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppnk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_int,
        nulval: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppne(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f32,
        nulval: f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppnd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f64,
        nulval: f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppnjj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut LONGLONG,
        nulval: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffppnujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ULONGLONG,
        nulval: ULONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2db(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2dsb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_schar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2dui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_ushort,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2di(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_short,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2duj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2dj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2duk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_uint,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2dk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2de(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2dd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2djj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp2dujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        array: *mut ULONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3db(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3dsb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_schar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3dui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_ushort,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3di(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_short,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3duj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3dj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3duk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_uint,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3dk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3de(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3dd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3djj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffp3dujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        ncols: LONGLONG,
        nrows: LONGLONG,
        naxis1: LONGLONG,
        naxis2: LONGLONG,
        naxis3: LONGLONG,
        array: *mut ULONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpss(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpssb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpsssb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_schar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpssui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_ushort,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpssi(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_short,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpssuj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpssj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpssuk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_uint,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpssk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpsse(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpssd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpssjj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpssujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        naxis: ::std::os::raw::c_long,
        naxes: *mut ::std::os::raw::c_long,
        fpixel: *mut ::std::os::raw::c_long,
        lpixel: *mut ::std::os::raw::c_long,
        array: *mut ULONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpsb(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_schar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpui(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_ushort,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpi(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_short,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpuj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpuk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_uint,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpk(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpe(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpd(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpjj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpgpujj(
        fptr: *mut fitsfile,
        group: ::std::os::raw::c_long,
        firstelem: ::std::os::raw::c_long,
        nelem: ::std::os::raw::c_long,
        array: *mut ULONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_set_by_name(
        col: *mut iteratorCol,
        fptr: *mut fitsfile,
        colname: *mut ::std::os::raw::c_char,
        datatype: ::std::os::raw::c_int,
        iotype: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_set_by_num(
        col: *mut iteratorCol,
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        datatype: ::std::os::raw::c_int,
        iotype: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_set_file(col: *mut iteratorCol, fptr: *mut fitsfile) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_set_colname(
        col: *mut iteratorCol,
        colname: *mut ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_set_colnum(
        col: *mut iteratorCol,
        colnum: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_set_datatype(
        col: *mut iteratorCol,
        datatype: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_set_iotype(
        col: *mut iteratorCol,
        iotype: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_get_file(col: *mut iteratorCol) -> *mut fitsfile;
}
extern "C" {
    pub fn fits_iter_get_colname(col: *mut iteratorCol) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn fits_iter_get_colnum(col: *mut iteratorCol) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_get_datatype(col: *mut iteratorCol) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_get_iotype(col: *mut iteratorCol) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_iter_get_array(col: *mut iteratorCol) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn fits_iter_get_tlmin(col: *mut iteratorCol) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn fits_iter_get_tlmax(col: *mut iteratorCol) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn fits_iter_get_repeat(col: *mut iteratorCol) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn fits_iter_get_tunit(col: *mut iteratorCol) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn fits_iter_get_tdisp(col: *mut iteratorCol) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn ffiter(
        ncols: ::std::os::raw::c_int,
        data: *mut iteratorCol,
        offset: ::std::os::raw::c_long,
        nPerLoop: ::std::os::raw::c_long,
        workFn: ::std::option::Option<
            unsafe extern "C" fn(
                totaln: ::std::os::raw::c_long,
                offset: ::std::os::raw::c_long,
                firstn: ::std::os::raw::c_long,
                nvalues: ::std::os::raw::c_long,
                narrays: ::std::os::raw::c_int,
                data: *mut iteratorCol,
                userPointer: *mut ::std::os::raw::c_void,
            ) -> ::std::os::raw::c_int,
        >,
        userPointer: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcl(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcls(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcll(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpclb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpclsb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_schar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpclui(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ushort,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcli(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_short,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcluj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpclj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcluk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uint,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpclk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcle(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcld(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpclc(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpclm(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpclu(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffprwu(
        fptr: *mut fitsfile,
        firstrow: LONGLONG,
        nrows: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcljj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpclujj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ULONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpclx(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        frow: LONGLONG,
        fbit: ::std::os::raw::c_long,
        nbit: ::std::os::raw::c_long,
        larray: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcn(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_void,
        nulval: *mut ::std::os::raw::c_void,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcns(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut *mut ::std::os::raw::c_char,
        nulvalue: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnl(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_char,
        nulvalue: ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uchar,
        nulvalue: ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnsb(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_schar,
        nulvalue: ::std::os::raw::c_schar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnui(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ushort,
        nulvalue: ::std::os::raw::c_ushort,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcni(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_short,
        nulvalue: ::std::os::raw::c_short,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnuj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_ulong,
        nulvalue: ::std::os::raw::c_ulong,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_long,
        nulvalue: ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnuk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_uint,
        nulvalue: ::std::os::raw::c_uint,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnk(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ::std::os::raw::c_int,
        nulvalue: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcne(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f32,
        nulvalue: f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnd(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut f64,
        nulvalue: f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnjj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut LONGLONG,
        nulvalue: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffpcnujj(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        firstrow: LONGLONG,
        firstelem: LONGLONG,
        nelem: LONGLONG,
        array: *mut ULONGLONG,
        nulvalue: ULONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffptbb(
        fptr: *mut fitsfile,
        firstrow: LONGLONG,
        firstchar: LONGLONG,
        nchars: LONGLONG,
        values: *mut ::std::os::raw::c_uchar,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffirow(
        fptr: *mut fitsfile,
        firstrow: LONGLONG,
        nrows: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdrow(
        fptr: *mut fitsfile,
        firstrow: LONGLONG,
        nrows: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdrrg(
        fptr: *mut fitsfile,
        ranges: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdrws(
        fptr: *mut fitsfile,
        rownum: *mut ::std::os::raw::c_long,
        nrows: ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdrwsll(
        fptr: *mut fitsfile,
        rownum: *mut LONGLONG,
        nrows: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fficol(
        fptr: *mut fitsfile,
        numcol: ::std::os::raw::c_int,
        ttype: *mut ::std::os::raw::c_char,
        tform: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fficls(
        fptr: *mut fitsfile,
        firstcol: ::std::os::raw::c_int,
        ncols: ::std::os::raw::c_int,
        ttype: *mut *mut ::std::os::raw::c_char,
        tform: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffmvec(
        fptr: *mut fitsfile,
        colnum: ::std::os::raw::c_int,
        newveclen: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffdcol(
        fptr: *mut fitsfile,
        numcol: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcpcl(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        incol: ::std::os::raw::c_int,
        outcol: ::std::os::raw::c_int,
        create_col: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffccls(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        incol: ::std::os::raw::c_int,
        outcol: ::std::os::raw::c_int,
        ncols: ::std::os::raw::c_int,
        create_col: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcprw(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        firstrow: LONGLONG,
        nrows: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcpht(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        firstrow: LONGLONG,
        nrows: LONGLONG,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgics(
        fptr: *mut fitsfile,
        xrval: *mut f64,
        yrval: *mut f64,
        xrpix: *mut f64,
        yrpix: *mut f64,
        xinc: *mut f64,
        yinc: *mut f64,
        rot: *mut f64,
        type_: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgicsa(
        fptr: *mut fitsfile,
        version: ::std::os::raw::c_char,
        xrval: *mut f64,
        yrval: *mut f64,
        xrpix: *mut f64,
        yrpix: *mut f64,
        xinc: *mut f64,
        yinc: *mut f64,
        rot: *mut f64,
        type_: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtcs(
        fptr: *mut fitsfile,
        xcol: ::std::os::raw::c_int,
        ycol: ::std::os::raw::c_int,
        xrval: *mut f64,
        yrval: *mut f64,
        xrpix: *mut f64,
        yrpix: *mut f64,
        xinc: *mut f64,
        yinc: *mut f64,
        rot: *mut f64,
        type_: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffwldp(
        xpix: f64,
        ypix: f64,
        xref: f64,
        yref: f64,
        xrefpix: f64,
        yrefpix: f64,
        xinc: f64,
        yinc: f64,
        rot: f64,
        type_: *mut ::std::os::raw::c_char,
        xpos: *mut f64,
        ypos: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffxypx(
        xpos: f64,
        ypos: f64,
        xref: f64,
        yref: f64,
        xrefpix: f64,
        yrefpix: f64,
        xinc: f64,
        yinc: f64,
        rot: f64,
        type_: *mut ::std::os::raw::c_char,
        xpix: *mut f64,
        ypix: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgiwcs(
        fptr: *mut fitsfile,
        header: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtwcs(
        fptr: *mut fitsfile,
        xcol: ::std::os::raw::c_int,
        ycol: ::std::os::raw::c_int,
        header: *mut *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fftexp(
        fptr: *mut fitsfile,
        expr: *mut ::std::os::raw::c_char,
        maxdim: ::std::os::raw::c_int,
        datatype: *mut ::std::os::raw::c_int,
        nelem: *mut ::std::os::raw::c_long,
        naxis: *mut ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fffrow(
        infptr: *mut fitsfile,
        expr: *mut ::std::os::raw::c_char,
        firstrow: ::std::os::raw::c_long,
        nrows: ::std::os::raw::c_long,
        n_good_rows: *mut ::std::os::raw::c_long,
        row_status: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffffrw(
        fptr: *mut fitsfile,
        expr: *mut ::std::os::raw::c_char,
        rownum: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fffrwc(
        fptr: *mut fitsfile,
        expr: *mut ::std::os::raw::c_char,
        timeCol: *mut ::std::os::raw::c_char,
        parCol: *mut ::std::os::raw::c_char,
        valCol: *mut ::std::os::raw::c_char,
        ntimes: ::std::os::raw::c_long,
        times: *mut f64,
        time_status: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffsrow(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        expr: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcrow(
        fptr: *mut fitsfile,
        datatype: ::std::os::raw::c_int,
        expr: *mut ::std::os::raw::c_char,
        firstrow: ::std::os::raw::c_long,
        nelements: ::std::os::raw::c_long,
        nulval: *mut ::std::os::raw::c_void,
        array: *mut ::std::os::raw::c_void,
        anynul: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcalc_rng(
        infptr: *mut fitsfile,
        expr: *mut ::std::os::raw::c_char,
        outfptr: *mut fitsfile,
        parName: *mut ::std::os::raw::c_char,
        parInfo: *mut ::std::os::raw::c_char,
        nRngs: ::std::os::raw::c_int,
        start: *mut ::std::os::raw::c_long,
        end: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffcalc(
        infptr: *mut fitsfile,
        expr: *mut ::std::os::raw::c_char,
        outfptr: *mut fitsfile,
        parName: *mut ::std::os::raw::c_char,
        parInfo: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffhist(
        fptr: *mut *mut fitsfile,
        outfile: *mut ::std::os::raw::c_char,
        imagetype: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        colname: *mut [::std::os::raw::c_char; 71usize],
        minin: *mut f64,
        maxin: *mut f64,
        binsizein: *mut f64,
        minname: *mut [::std::os::raw::c_char; 71usize],
        maxname: *mut [::std::os::raw::c_char; 71usize],
        binname: *mut [::std::os::raw::c_char; 71usize],
        weightin: f64,
        wtcol: *mut ::std::os::raw::c_char,
        recip: ::std::os::raw::c_int,
        rowselect: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffhist2(
        fptr: *mut *mut fitsfile,
        outfile: *mut ::std::os::raw::c_char,
        imagetype: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        colname: *mut [::std::os::raw::c_char; 71usize],
        minin: *mut f64,
        maxin: *mut f64,
        binsizein: *mut f64,
        minname: *mut [::std::os::raw::c_char; 71usize],
        maxname: *mut [::std::os::raw::c_char; 71usize],
        binname: *mut [::std::os::raw::c_char; 71usize],
        weightin: f64,
        wtcol: *mut ::std::os::raw::c_char,
        recip: ::std::os::raw::c_int,
        rowselect: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffhist3(
        fptr: *mut fitsfile,
        outfile: *mut ::std::os::raw::c_char,
        imagetype: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        colname: *mut [::std::os::raw::c_char; 71usize],
        minin: *mut f64,
        maxin: *mut f64,
        binsizein: *mut f64,
        minname: *mut [::std::os::raw::c_char; 71usize],
        maxname: *mut [::std::os::raw::c_char; 71usize],
        binname: *mut [::std::os::raw::c_char; 71usize],
        weightin: f64,
        wtcol: *mut ::std::os::raw::c_char,
        recip: ::std::os::raw::c_int,
        selectrow: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> *mut fitsfile;
}
extern "C" {
    pub fn fits_select_image_section(
        fptr: *mut *mut fitsfile,
        outfile: *mut ::std::os::raw::c_char,
        imagesection: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_copy_image_section(
        infptr: *mut fitsfile,
        outfile: *mut fitsfile,
        imagesection: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_calc_binning(
        fptr: *mut fitsfile,
        naxis: ::std::os::raw::c_int,
        colname: *mut [::std::os::raw::c_char; 71usize],
        minin: *mut f64,
        maxin: *mut f64,
        binsizein: *mut f64,
        minname: *mut [::std::os::raw::c_char; 71usize],
        maxname: *mut [::std::os::raw::c_char; 71usize],
        binname: *mut [::std::os::raw::c_char; 71usize],
        colnum: *mut ::std::os::raw::c_int,
        haxes: *mut ::std::os::raw::c_long,
        amin: *mut f32,
        amax: *mut f32,
        binsize: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_calc_binningd(
        fptr: *mut fitsfile,
        naxis: ::std::os::raw::c_int,
        colname: *mut [::std::os::raw::c_char; 71usize],
        minin: *mut f64,
        maxin: *mut f64,
        binsizein: *mut f64,
        minname: *mut [::std::os::raw::c_char; 71usize],
        maxname: *mut [::std::os::raw::c_char; 71usize],
        binname: *mut [::std::os::raw::c_char; 71usize],
        colnum: *mut ::std::os::raw::c_int,
        haxes: *mut ::std::os::raw::c_long,
        amin: *mut f64,
        amax: *mut f64,
        binsize: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_write_keys_histo(
        fptr: *mut fitsfile,
        histptr: *mut fitsfile,
        naxis: ::std::os::raw::c_int,
        colnum: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_rebin_wcs(
        fptr: *mut fitsfile,
        naxis: ::std::os::raw::c_int,
        amin: *mut f32,
        binsize: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_rebin_wcsd(
        fptr: *mut fitsfile,
        naxis: ::std::os::raw::c_int,
        amin: *mut f64,
        binsize: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_make_hist(
        fptr: *mut fitsfile,
        histptr: *mut fitsfile,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        colnum: *mut ::std::os::raw::c_int,
        amin: *mut f32,
        amax: *mut f32,
        binsize: *mut f32,
        weight: f32,
        wtcolnum: ::std::os::raw::c_int,
        recip: ::std::os::raw::c_int,
        selectrow: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_make_histd(
        fptr: *mut fitsfile,
        histptr: *mut fitsfile,
        bitpix: ::std::os::raw::c_int,
        naxis: ::std::os::raw::c_int,
        naxes: *mut ::std::os::raw::c_long,
        colnum: *mut ::std::os::raw::c_int,
        amin: *mut f64,
        amax: *mut f64,
        binsize: *mut f64,
        weight: f64,
        wtcolnum: ::std::os::raw::c_int,
        recip: ::std::os::raw::c_int,
        selectrow: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Copy)]
pub struct PixelFilter {
    pub count: ::std::os::raw::c_int,
    pub path: *mut *mut ::std::os::raw::c_char,
    pub tag: *mut *mut ::std::os::raw::c_char,
    pub ifptr: *mut *mut fitsfile,
    pub expression: *mut ::std::os::raw::c_char,
    pub bitpix: ::std::os::raw::c_int,
    pub blank: ::std::os::raw::c_long,
    pub ofptr: *mut fitsfile,
    pub keyword: [::std::os::raw::c_char; 75usize],
    pub comment: [::std::os::raw::c_char; 73usize],
}
#[test]
fn bindgen_test_layout_PixelFilter() {
    assert_eq!(
        ::std::mem::size_of::<PixelFilter>(),
        216usize,
        concat!("Size of: ", stringify!(PixelFilter))
    );
    assert_eq!(
        ::std::mem::align_of::<PixelFilter>(),
        8usize,
        concat!("Alignment of ", stringify!(PixelFilter))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<PixelFilter>())).count as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(PixelFilter),
            "::",
            stringify!(count)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<PixelFilter>())).path as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(PixelFilter),
            "::",
            stringify!(path)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<PixelFilter>())).tag as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(PixelFilter),
            "::",
            stringify!(tag)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<PixelFilter>())).ifptr as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(PixelFilter),
            "::",
            stringify!(ifptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<PixelFilter>())).expression as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(PixelFilter),
            "::",
            stringify!(expression)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<PixelFilter>())).bitpix as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(PixelFilter),
            "::",
            stringify!(bitpix)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<PixelFilter>())).blank as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(PixelFilter),
            "::",
            stringify!(blank)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<PixelFilter>())).ofptr as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(PixelFilter),
            "::",
            stringify!(ofptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<PixelFilter>())).keyword as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(PixelFilter),
            "::",
            stringify!(keyword)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<PixelFilter>())).comment as *const _ as usize },
        139usize,
        concat!(
            "Offset of field: ",
            stringify!(PixelFilter),
            "::",
            stringify!(comment)
        )
    );
}
impl Clone for PixelFilter {
    fn clone(&self) -> Self {
        *self
    }
}
extern "C" {
    pub fn fits_pixel_filter(
        filter: *mut PixelFilter,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtcr(
        fptr: *mut fitsfile,
        grpname: *mut ::std::os::raw::c_char,
        grouptype: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtis(
        fptr: *mut fitsfile,
        grpname: *mut ::std::os::raw::c_char,
        grouptype: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtch(
        gfptr: *mut fitsfile,
        grouptype: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtrm(
        gfptr: *mut fitsfile,
        rmopt: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtcp(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        cpopt: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtmg(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        mgopt: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtcm(
        gfptr: *mut fitsfile,
        cmopt: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtvf(
        gfptr: *mut fitsfile,
        firstfailed: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtop(
        mfptr: *mut fitsfile,
        group: ::std::os::raw::c_int,
        gfptr: *mut *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtam(
        gfptr: *mut fitsfile,
        mfptr: *mut fitsfile,
        hdupos: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgtnm(
        gfptr: *mut fitsfile,
        nmembers: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgmng(
        mfptr: *mut fitsfile,
        nmembers: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgmop(
        gfptr: *mut fitsfile,
        member: ::std::os::raw::c_long,
        mfptr: *mut *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgmcp(
        gfptr: *mut fitsfile,
        mfptr: *mut fitsfile,
        member: ::std::os::raw::c_long,
        cpopt: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgmtf(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        member: ::std::os::raw::c_long,
        tfopt: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffgmrm(
        fptr: *mut fitsfile,
        member: ::std::os::raw::c_long,
        rmopt: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_execute_template(
        ff: *mut fitsfile,
        ngp_template: *mut ::std::os::raw::c_char,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_img_stats_short(
        array: *mut ::std::os::raw::c_short,
        nx: ::std::os::raw::c_long,
        ny: ::std::os::raw::c_long,
        nullcheck: ::std::os::raw::c_int,
        nullvalue: ::std::os::raw::c_short,
        ngoodpix: *mut ::std::os::raw::c_long,
        minvalue: *mut ::std::os::raw::c_short,
        maxvalue: *mut ::std::os::raw::c_short,
        mean: *mut f64,
        sigma: *mut f64,
        noise1: *mut f64,
        noise2: *mut f64,
        noise3: *mut f64,
        noise5: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_img_stats_int(
        array: *mut ::std::os::raw::c_int,
        nx: ::std::os::raw::c_long,
        ny: ::std::os::raw::c_long,
        nullcheck: ::std::os::raw::c_int,
        nullvalue: ::std::os::raw::c_int,
        ngoodpix: *mut ::std::os::raw::c_long,
        minvalue: *mut ::std::os::raw::c_int,
        maxvalue: *mut ::std::os::raw::c_int,
        mean: *mut f64,
        sigma: *mut f64,
        noise1: *mut f64,
        noise2: *mut f64,
        noise3: *mut f64,
        noise5: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_img_stats_float(
        array: *mut f32,
        nx: ::std::os::raw::c_long,
        ny: ::std::os::raw::c_long,
        nullcheck: ::std::os::raw::c_int,
        nullvalue: f32,
        ngoodpix: *mut ::std::os::raw::c_long,
        minvalue: *mut f32,
        maxvalue: *mut f32,
        mean: *mut f64,
        sigma: *mut f64,
        noise1: *mut f64,
        noise2: *mut f64,
        noise3: *mut f64,
        noise5: *mut f64,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_compression_type(
        fptr: *mut fitsfile,
        ctype: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_tile_dim(
        fptr: *mut fitsfile,
        ndim: ::std::os::raw::c_int,
        dims: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_noise_bits(
        fptr: *mut fitsfile,
        noisebits: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_quantize_level(
        fptr: *mut fitsfile,
        qlevel: f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_hcomp_scale(
        fptr: *mut fitsfile,
        scale: f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_hcomp_smooth(
        fptr: *mut fitsfile,
        smooth: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_quantize_method(
        fptr: *mut fitsfile,
        method: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_quantize_dither(
        fptr: *mut fitsfile,
        dither: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_dither_seed(
        fptr: *mut fitsfile,
        seed: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_dither_offset(
        fptr: *mut fitsfile,
        offset: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_lossy_int(
        fptr: *mut fitsfile,
        lossy_int: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_huge_hdu(
        fptr: *mut fitsfile,
        huge: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_set_compression_pref(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_get_compression_type(
        fptr: *mut fitsfile,
        ctype: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_get_tile_dim(
        fptr: *mut fitsfile,
        ndim: ::std::os::raw::c_int,
        dims: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_get_quantize_level(
        fptr: *mut fitsfile,
        qlevel: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_get_noise_bits(
        fptr: *mut fitsfile,
        noisebits: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_get_hcomp_scale(
        fptr: *mut fitsfile,
        scale: *mut f32,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_get_hcomp_smooth(
        fptr: *mut fitsfile,
        smooth: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_get_dither_seed(
        fptr: *mut fitsfile,
        seed: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_img_compress(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_comp_img(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        compress_type: ::std::os::raw::c_int,
        tilesize: *mut ::std::os::raw::c_long,
        parm1: ::std::os::raw::c_int,
        parm2: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_is_compressed_image(
        fptr: *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_is_reentrant() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_decomp_img(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_img_decompress_header(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_img_decompress(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_hcompress(
        a: *mut ::std::os::raw::c_int,
        nx: ::std::os::raw::c_int,
        ny: ::std::os::raw::c_int,
        scale: ::std::os::raw::c_int,
        output: *mut ::std::os::raw::c_char,
        nbytes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_hcompress64(
        a: *mut LONGLONG,
        nx: ::std::os::raw::c_int,
        ny: ::std::os::raw::c_int,
        scale: ::std::os::raw::c_int,
        output: *mut ::std::os::raw::c_char,
        nbytes: *mut ::std::os::raw::c_long,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_hdecompress(
        input: *mut ::std::os::raw::c_uchar,
        smooth: ::std::os::raw::c_int,
        a: *mut ::std::os::raw::c_int,
        nx: *mut ::std::os::raw::c_int,
        ny: *mut ::std::os::raw::c_int,
        scale: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_hdecompress64(
        input: *mut ::std::os::raw::c_uchar,
        smooth: ::std::os::raw::c_int,
        a: *mut LONGLONG,
        nx: *mut ::std::os::raw::c_int,
        ny: *mut ::std::os::raw::c_int,
        scale: *mut ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_compress_table(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn fits_uncompress_table(
        infptr: *mut fitsfile,
        outfptr: *mut fitsfile,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffihtps() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffchtps() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffvhtps(flag: ::std::os::raw::c_int);
}
extern "C" {
    pub fn ffshdwn(flag: ::std::os::raw::c_int);
}
extern "C" {
    pub fn ffgtmo() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn ffstmo(
        sec: ::std::os::raw::c_int,
        status: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
pub type __builtin_va_list = [__va_list_tag; 1usize];
#[repr(C)]
#[derive(Debug, Copy)]
pub struct __va_list_tag {
    pub gp_offset: ::std::os::raw::c_uint,
    pub fp_offset: ::std::os::raw::c_uint,
    pub overflow_arg_area: *mut ::std::os::raw::c_void,
    pub reg_save_area: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout___va_list_tag() {
    assert_eq!(
        ::std::mem::size_of::<__va_list_tag>(),
        24usize,
        concat!("Size of: ", stringify!(__va_list_tag))
    );
    assert_eq!(
        ::std::mem::align_of::<__va_list_tag>(),
        8usize,
        concat!("Alignment of ", stringify!(__va_list_tag))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__va_list_tag),
            "::",
            stringify!(gp_offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(__va_list_tag),
            "::",
            stringify!(fp_offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(__va_list_tag),
            "::",
            stringify!(overflow_arg_area)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(__va_list_tag),
            "::",
            stringify!(reg_save_area)
        )
    );
}
impl Clone for __va_list_tag {
    fn clone(&self) -> Self {
        *self
    }
}