#ifndef __OBJC2__
#define __OBJC2__
#endif
struct objc_selector; struct objc_class;
struct __rw_objc_super { 
	struct objc_object *object; 
	struct objc_object *superClass; 
	__rw_objc_super(struct objc_object *o, struct objc_object *s) : object(o), superClass(s) {} 
};
#ifndef _REWRITER_typedef_Protocol
typedef struct objc_object Protocol;
#define _REWRITER_typedef_Protocol
#endif
#define __OBJC_RW_DLLIMPORT extern
__OBJC_RW_DLLIMPORT void objc_msgSend(void);
__OBJC_RW_DLLIMPORT void objc_msgSendSuper(void);
__OBJC_RW_DLLIMPORT void objc_msgSend_stret(void);
__OBJC_RW_DLLIMPORT void objc_msgSendSuper_stret(void);
__OBJC_RW_DLLIMPORT void objc_msgSend_fpret(void);
__OBJC_RW_DLLIMPORT struct objc_class *objc_getClass(const char *);
__OBJC_RW_DLLIMPORT struct objc_class *class_getSuperclass(struct objc_class *);
__OBJC_RW_DLLIMPORT struct objc_class *objc_getMetaClass(const char *);
__OBJC_RW_DLLIMPORT void objc_exception_throw( struct objc_object *);
__OBJC_RW_DLLIMPORT int objc_sync_enter( struct objc_object *);
__OBJC_RW_DLLIMPORT int objc_sync_exit( struct objc_object *);
__OBJC_RW_DLLIMPORT Protocol *objc_getProtocol(const char *);
#ifdef _WIN64
typedef unsigned long long  _WIN_NSUInteger;
#else
typedef unsigned int _WIN_NSUInteger;
#endif
#ifndef __FASTENUMERATIONSTATE
struct __objcFastEnumerationState {
	unsigned long state;
	void **itemsPtr;
	unsigned long *mutationsPtr;
	unsigned long extra[5];
};
__OBJC_RW_DLLIMPORT void objc_enumerationMutation(struct objc_object *);
#define __FASTENUMERATIONSTATE
#endif
#ifndef __NSCONSTANTSTRINGIMPL
struct __NSConstantStringImpl {
  int *isa;
  int flags;
  char *str;
#if _WIN64
  long long length;
#else
  long length;
#endif
};
#ifdef CF_EXPORT_CONSTANT_STRING
extern "C" __declspec(dllexport) int __CFConstantStringClassReference[];
#else
__OBJC_RW_DLLIMPORT int __CFConstantStringClassReference[];
#endif
#define __NSCONSTANTSTRINGIMPL
#endif
#ifndef BLOCK_IMPL
#define BLOCK_IMPL
struct __block_impl {
  void *isa;
  int Flags;
  int Reserved;
  void *FuncPtr;
};
// Runtime copy/destroy helper functions (from Block_private.h)
#ifdef __OBJC_EXPORT_BLOCKS
extern "C" __declspec(dllexport) void _Block_object_assign(void *, const void *, const int);
extern "C" __declspec(dllexport) void _Block_object_dispose(const void *, const int);
extern "C" __declspec(dllexport) void *_NSConcreteGlobalBlock[32];
extern "C" __declspec(dllexport) void *_NSConcreteStackBlock[32];
#else
__OBJC_RW_DLLIMPORT void _Block_object_assign(void *, const void *, const int);
__OBJC_RW_DLLIMPORT void _Block_object_dispose(const void *, const int);
__OBJC_RW_DLLIMPORT void *_NSConcreteGlobalBlock[32];
__OBJC_RW_DLLIMPORT void *_NSConcreteStackBlock[32];
#endif
#endif
#define __block
#define __weak

#include <stdarg.h>
struct __NSContainer_literal {
  void * *arr;
  __NSContainer_literal (unsigned int count, ...) {
	va_list marker;
	va_start(marker, count);
	arr = new void *[count];
	for (unsigned i = 0; i < count; i++)
	  arr[i] = va_arg(marker, void *);
	va_end( marker );
  };
  ~__NSContainer_literal() {
	delete[] arr;
  }
};
extern "C" __declspec(dllimport) void * objc_autoreleasePoolPush(void);
extern "C" __declspec(dllimport) void objc_autoreleasePoolPop(void *);

struct __AtAutoreleasePool {
  __AtAutoreleasePool() {atautoreleasepoolobj = objc_autoreleasePoolPush();}
  ~__AtAutoreleasePool() {objc_autoreleasePoolPop(atautoreleasepoolobj);}
  void * atautoreleasepoolobj;
};

#define __OFFSETOFIVAR__(TYPE, MEMBER) ((long long) &((TYPE *)0)->MEMBER)

















typedef signed char __int8_t;



typedef unsigned char __uint8_t;
typedef short __int16_t;
typedef unsigned short __uint16_t;
typedef int __int32_t;
typedef unsigned int __uint32_t;
typedef long long __int64_t;
typedef unsigned long long __uint64_t;

typedef long __darwin_intptr_t;
typedef unsigned int __darwin_natural_t;
typedef int __darwin_ct_rune_t;





typedef union {
 char __mbstate8[128];
 long long _mbstateL;
} __mbstate_t;

typedef __mbstate_t __darwin_mbstate_t;


typedef long int __darwin_ptrdiff_t;







typedef long unsigned int __darwin_size_t;





typedef __builtin_va_list __darwin_va_list;





typedef int __darwin_wchar_t;




typedef __darwin_wchar_t __darwin_rune_t;


typedef int __darwin_wint_t;




typedef unsigned long __darwin_clock_t;
typedef __uint32_t __darwin_socklen_t;
typedef long __darwin_ssize_t;
typedef long __darwin_time_t;





typedef signed char int8_t;
typedef short int16_t;
typedef int int32_t;
typedef long long int64_t;

typedef unsigned char u_int8_t;
typedef unsigned short u_int16_t;
typedef unsigned int u_int32_t;
typedef unsigned long long u_int64_t;


typedef int64_t register_t;






typedef __darwin_intptr_t intptr_t;
typedef unsigned long uintptr_t;




typedef u_int64_t user_addr_t;
typedef u_int64_t user_size_t;
typedef int64_t user_ssize_t;
typedef int64_t user_long_t;
typedef u_int64_t user_ulong_t;
typedef int64_t user_time_t;
typedef int64_t user_off_t;
typedef u_int64_t syscall_arg_t;
typedef __int64_t __darwin_blkcnt_t;
typedef __int32_t __darwin_blksize_t;
typedef __int32_t __darwin_dev_t;
typedef unsigned int __darwin_fsblkcnt_t;
typedef unsigned int __darwin_fsfilcnt_t;
typedef __uint32_t __darwin_gid_t;
typedef __uint32_t __darwin_id_t;
typedef __uint64_t __darwin_ino64_t;

typedef __darwin_ino64_t __darwin_ino_t;



typedef __darwin_natural_t __darwin_mach_port_name_t;
typedef __darwin_mach_port_name_t __darwin_mach_port_t;
typedef __uint16_t __darwin_mode_t;
typedef __int64_t __darwin_off_t;
typedef __int32_t __darwin_pid_t;
typedef __uint32_t __darwin_sigset_t;
typedef __int32_t __darwin_suseconds_t;
typedef __uint32_t __darwin_uid_t;
typedef __uint32_t __darwin_useconds_t;
typedef unsigned char __darwin_uuid_t[16];
typedef char __darwin_uuid_string_t[37];


struct __darwin_pthread_handler_rec {
 void (*__routine)(void *);
 void *__arg;
 struct __darwin_pthread_handler_rec *__next;
};

struct _opaque_pthread_attr_t {
 long __sig;
 char __opaque[56];
};

struct _opaque_pthread_cond_t {
 long __sig;
 char __opaque[40];
};

struct _opaque_pthread_condattr_t {
 long __sig;
 char __opaque[8];
};

struct _opaque_pthread_mutex_t {
 long __sig;
 char __opaque[56];
};

struct _opaque_pthread_mutexattr_t {
 long __sig;
 char __opaque[8];
};

struct _opaque_pthread_once_t {
 long __sig;
 char __opaque[8];
};

struct _opaque_pthread_rwlock_t {
 long __sig;
 char __opaque[192];
};

struct _opaque_pthread_rwlockattr_t {
 long __sig;
 char __opaque[16];
};

struct _opaque_pthread_t {
 long __sig;
 struct __darwin_pthread_handler_rec *__cleanup_stack;
 char __opaque[8176];
};

typedef struct _opaque_pthread_attr_t __darwin_pthread_attr_t;
typedef struct _opaque_pthread_cond_t __darwin_pthread_cond_t;
typedef struct _opaque_pthread_condattr_t __darwin_pthread_condattr_t;
typedef unsigned long __darwin_pthread_key_t;
typedef struct _opaque_pthread_mutex_t __darwin_pthread_mutex_t;
typedef struct _opaque_pthread_mutexattr_t __darwin_pthread_mutexattr_t;
typedef struct _opaque_pthread_once_t __darwin_pthread_once_t;
typedef struct _opaque_pthread_rwlock_t __darwin_pthread_rwlock_t;
typedef struct _opaque_pthread_rwlockattr_t __darwin_pthread_rwlockattr_t;
typedef struct _opaque_pthread_t *__darwin_pthread_t;








typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
typedef unsigned long long uint64_t;


typedef int8_t int_least8_t;
typedef int16_t int_least16_t;
typedef int32_t int_least32_t;
typedef int64_t int_least64_t;
typedef uint8_t uint_least8_t;
typedef uint16_t uint_least16_t;
typedef uint32_t uint_least32_t;
typedef uint64_t uint_least64_t;



typedef int8_t int_fast8_t;
typedef int16_t int_fast16_t;
typedef int32_t int_fast32_t;
typedef int64_t int_fast64_t;
typedef uint8_t uint_fast8_t;
typedef uint16_t uint_fast16_t;
typedef uint32_t uint_fast32_t;
typedef uint64_t uint_fast64_t;
typedef long int intmax_t;
typedef long unsigned int uintmax_t;



static __inline__
uint16_t
_OSSwapInt16(
 uint16_t data
 )
{

 return (uint16_t)(data << 8 | data >> 8);
}

static __inline__
uint32_t
_OSSwapInt32(
 uint32_t data
 )
{

 data = __builtin_bswap32(data);





 return data;
}

static __inline__
uint64_t
_OSSwapInt64(
 uint64_t data
 )
{

 return __builtin_bswap64(data);
}



static __inline__
uint16_t
OSReadSwapInt16(
 const volatile void * base,
 uintptr_t offset
 )
{
 uint16_t result;

 result = *(volatile uint16_t *)((volatile uintptr_t)base + offset);
 return _OSSwapInt16(result);
}

static __inline__
uint32_t
OSReadSwapInt32(
 const volatile void * base,
 uintptr_t offset
 )
{
 uint32_t result;

 result = *(volatile uint32_t *)((volatile uintptr_t)base + offset);
 return _OSSwapInt32(result);
}

static __inline__
uint64_t
OSReadSwapInt64(
 const volatile void * base,
 uintptr_t offset
 )
{
 volatile uint32_t * inp;
 union ullc {
  uint64_t ull;
  uint32_t ul[2];
 } outv;

 inp = (volatile uint32_t *)((volatile uintptr_t)base + offset);
 outv.ul[0] = inp[1];
 outv.ul[1] = inp[0];
 outv.ul[0] = _OSSwapInt32(outv.ul[0]);
 outv.ul[1] = _OSSwapInt32(outv.ul[1]);
 return outv.ull;
}



static __inline__
void
OSWriteSwapInt16(
 volatile void * base,
 uintptr_t offset,
 uint16_t data
 )
{
 *(volatile uint16_t *)((volatile uintptr_t)base + offset) = _OSSwapInt16(data);
}

static __inline__
void
OSWriteSwapInt32(
 volatile void * base,
 uintptr_t offset,
 uint32_t data
 )
{
 *(volatile uint32_t *)((volatile uintptr_t)base + offset) = _OSSwapInt32(data);
}

static __inline__
void
OSWriteSwapInt64(
 volatile void * base,
 uintptr_t offset,
 uint64_t data
 )
{
 *(volatile uint64_t *)((volatile uintptr_t)base + offset) = _OSSwapInt64(data);
}


typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;

typedef unsigned long u_long;


typedef unsigned short ushort;
typedef unsigned int uint;


typedef u_int64_t u_quad_t;
typedef int64_t quad_t;
typedef quad_t * qaddr_t;


typedef char * caddr_t;

typedef int32_t daddr_t;


typedef __darwin_dev_t dev_t;

typedef u_int32_t fixpt_t;


typedef __darwin_blkcnt_t blkcnt_t;
typedef __darwin_blksize_t blksize_t;
typedef __darwin_gid_t gid_t;
typedef __uint32_t in_addr_t;
typedef __uint16_t in_port_t;
typedef __darwin_ino_t ino_t;


typedef __darwin_ino64_t ino64_t;


typedef __int32_t key_t;
typedef __darwin_mode_t mode_t;
typedef __uint16_t nlink_t;
typedef __darwin_id_t id_t;
typedef __darwin_pid_t pid_t;
typedef __darwin_off_t off_t;

typedef int32_t segsz_t;
typedef int32_t swblk_t;


typedef __darwin_uid_t uid_t;
static inline __int32_t
major(__uint32_t _x)
{
 return (__int32_t)(((__uint32_t)_x >> 24) & 0xff);
}

static inline __int32_t
minor(__uint32_t _x)
{
 return (__int32_t)((_x) & 0xffffff);
}

static inline dev_t
makedev(__uint32_t _major, __uint32_t _minor)
{
 return (dev_t)(((_major) << 24) | (_minor));
}
typedef __darwin_clock_t clock_t;
typedef __darwin_size_t size_t;
typedef __darwin_ssize_t ssize_t;
typedef __darwin_time_t time_t;

typedef __darwin_useconds_t useconds_t;
typedef __darwin_suseconds_t suseconds_t;


typedef __darwin_size_t rsize_t;
typedef int errno_t;








extern "C" {
typedef struct fd_set {
 __int32_t fds_bits[((((1024) % ((sizeof(__int32_t) * 8))) == 0) ? ((1024) / ((sizeof(__int32_t) * 8))) : (((1024) / ((sizeof(__int32_t) * 8))) + 1))];
} fd_set;
}


static inline int
__darwin_fd_isset(int _n, const struct fd_set *_p)
{
 return _p->fds_bits[(unsigned long)_n / (sizeof(__int32_t) * 8)] & ((__int32_t)(((unsigned long)1) << ((unsigned long)_n % (sizeof(__int32_t) * 8))));
}




typedef __int32_t fd_mask;










typedef __darwin_pthread_attr_t pthread_attr_t;
typedef __darwin_pthread_cond_t pthread_cond_t;
typedef __darwin_pthread_condattr_t pthread_condattr_t;
typedef __darwin_pthread_mutex_t pthread_mutex_t;
typedef __darwin_pthread_mutexattr_t pthread_mutexattr_t;
typedef __darwin_pthread_once_t pthread_once_t;
typedef __darwin_pthread_rwlock_t pthread_rwlock_t;
typedef __darwin_pthread_rwlockattr_t pthread_rwlockattr_t;
typedef __darwin_pthread_t pthread_t;



typedef __darwin_pthread_key_t pthread_key_t;




typedef __darwin_fsblkcnt_t fsblkcnt_t;
typedef __darwin_fsfilcnt_t fsfilcnt_t;
typedef __builtin_va_list va_list;
typedef __builtin_va_list __gnuc_va_list;


typedef int __darwin_nl_item;
typedef int __darwin_wctrans_t;

typedef __uint32_t __darwin_wctype_t;

typedef enum {
 P_ALL,
 P_PID,
 P_PGID
} idtype_t;
typedef int sig_atomic_t;
struct __darwin_arm_exception_state
{
 __uint32_t __exception;
 __uint32_t __fsr;
 __uint32_t __far;
};
struct __darwin_arm_exception_state64
{
 __uint64_t __far;
 __uint32_t __esr;
 __uint32_t __exception;
};
struct __darwin_arm_thread_state
{
 __uint32_t __r[13];
 __uint32_t __sp;
 __uint32_t __lr;
 __uint32_t __pc;
 __uint32_t __cpsr;
};
struct __darwin_arm_thread_state64
{
 __uint64_t __x[29];
 __uint64_t __fp;
 __uint64_t __lr;
 __uint64_t __sp;
 __uint64_t __pc;
 __uint32_t __cpsr;
 __uint32_t __pad;
};
struct __darwin_arm_vfp_state
{
 __uint32_t __r[64];
 __uint32_t __fpscr;
};
struct __darwin_arm_neon_state64
{
 __uint128_t __v[32];
 __uint32_t __fpsr;
 __uint32_t __fpcr;
};

struct __darwin_arm_neon_state
{
 __uint128_t __v[16];
 __uint32_t __fpsr;
 __uint32_t __fpcr;
};
struct __darwin_arm_amx_state_v1
{
 __uint8_t __x[8][64];
 __uint8_t __y[8][64];
 __uint8_t __z[64][64];
 __uint64_t __amx_state_t_el1;
} __attribute__((aligned(64)));
struct __arm_pagein_state
{
 int __pagein_error;
};
struct arm_legacy_debug_state
{
 __uint32_t __bvr[16];
 __uint32_t __bcr[16];
 __uint32_t __wvr[16];
 __uint32_t __wcr[16];
};
struct __darwin_arm_debug_state32
{
 __uint32_t __bvr[16];
 __uint32_t __bcr[16];
 __uint32_t __wvr[16];
 __uint32_t __wcr[16];
 __uint64_t __mdscr_el1;
};


struct __darwin_arm_debug_state64
{
 __uint64_t __bvr[16];
 __uint64_t __bcr[16];
 __uint64_t __wvr[16];
 __uint64_t __wcr[16];
 __uint64_t __mdscr_el1;
};
struct __darwin_arm_cpmu_state64
{
 __uint64_t __ctrs[16];
};




struct __darwin_mcontext32
{
 struct __darwin_arm_exception_state __es;
 struct __darwin_arm_thread_state __ss;
 struct __darwin_arm_vfp_state __fs;
};
struct __darwin_mcontext64
{
 struct __darwin_arm_exception_state64 __es;
 struct __darwin_arm_thread_state64 __ss;
 struct __darwin_arm_neon_state64 __ns;
};
typedef struct __darwin_mcontext64 *mcontext_t;



struct __darwin_sigaltstack
{
 void *ss_sp;
 __darwin_size_t ss_size;
 int ss_flags;
};
typedef struct __darwin_sigaltstack stack_t;


struct __darwin_ucontext
{
 int uc_onstack;
 __darwin_sigset_t uc_sigmask;
 struct __darwin_sigaltstack uc_stack;
 struct __darwin_ucontext *uc_link;
 __darwin_size_t uc_mcsize;
 struct __darwin_mcontext64 *uc_mcontext;



};


typedef struct __darwin_ucontext ucontext_t;


typedef __darwin_sigset_t sigset_t;



union sigval {

 int sival_int;
 void *sival_ptr;
};





struct sigevent {
 int sigev_notify;
 int sigev_signo;
 union sigval sigev_value;
 void (*sigev_notify_function)(union sigval);
 pthread_attr_t *sigev_notify_attributes;
};


typedef struct __siginfo {
 int si_signo;
 int si_errno;
 int si_code;
 pid_t si_pid;
 uid_t si_uid;
 int si_status;
 void *si_addr;
 union sigval si_value;
 long si_band;
 unsigned long __pad[7];
} siginfo_t;
union __sigaction_u {
 void (*__sa_handler)(int);
 void (*__sa_sigaction)(int, struct __siginfo *,
     void *);
};


struct __sigaction {
 union __sigaction_u __sigaction_u;
 void (*sa_tramp)(void *, int, int, siginfo_t *, void *);
 sigset_t sa_mask;
 int sa_flags;
};




struct sigaction {
 union __sigaction_u __sigaction_u;
 sigset_t sa_mask;
 int sa_flags;
};
typedef void (*sig_t)(int);
struct sigvec {
 void (*sv_handler)(int);
 int sv_mask;
 int sv_flags;
};
struct sigstack {
 char *ss_sp;
 int ss_onstack;
};
extern "C" {
    void(*signal(int, void (*)(int)))(int);
}
struct timeval
{
 __darwin_time_t tv_sec;
 __darwin_suseconds_t tv_usec;
};








typedef __uint64_t rlim_t;
struct rusage {
 struct timeval ru_utime;
 struct timeval ru_stime;
 long ru_maxrss;

 long ru_ixrss;
 long ru_idrss;
 long ru_isrss;
 long ru_minflt;
 long ru_majflt;
 long ru_nswap;
 long ru_inblock;
 long ru_oublock;
 long ru_msgsnd;
 long ru_msgrcv;
 long ru_nsignals;
 long ru_nvcsw;
 long ru_nivcsw;


};
typedef void *rusage_info_t;

struct rusage_info_v0 {
 uint8_t ri_uuid[16];
 uint64_t ri_user_time;
 uint64_t ri_system_time;
 uint64_t ri_pkg_idle_wkups;
 uint64_t ri_interrupt_wkups;
 uint64_t ri_pageins;
 uint64_t ri_wired_size;
 uint64_t ri_resident_size;
 uint64_t ri_phys_footprint;
 uint64_t ri_proc_start_abstime;
 uint64_t ri_proc_exit_abstime;
};

struct rusage_info_v1 {
 uint8_t ri_uuid[16];
 uint64_t ri_user_time;
 uint64_t ri_system_time;
 uint64_t ri_pkg_idle_wkups;
 uint64_t ri_interrupt_wkups;
 uint64_t ri_pageins;
 uint64_t ri_wired_size;
 uint64_t ri_resident_size;
 uint64_t ri_phys_footprint;
 uint64_t ri_proc_start_abstime;
 uint64_t ri_proc_exit_abstime;
 uint64_t ri_child_user_time;
 uint64_t ri_child_system_time;
 uint64_t ri_child_pkg_idle_wkups;
 uint64_t ri_child_interrupt_wkups;
 uint64_t ri_child_pageins;
 uint64_t ri_child_elapsed_abstime;
};

struct rusage_info_v2 {
 uint8_t ri_uuid[16];
 uint64_t ri_user_time;
 uint64_t ri_system_time;
 uint64_t ri_pkg_idle_wkups;
 uint64_t ri_interrupt_wkups;
 uint64_t ri_pageins;
 uint64_t ri_wired_size;
 uint64_t ri_resident_size;
 uint64_t ri_phys_footprint;
 uint64_t ri_proc_start_abstime;
 uint64_t ri_proc_exit_abstime;
 uint64_t ri_child_user_time;
 uint64_t ri_child_system_time;
 uint64_t ri_child_pkg_idle_wkups;
 uint64_t ri_child_interrupt_wkups;
 uint64_t ri_child_pageins;
 uint64_t ri_child_elapsed_abstime;
 uint64_t ri_diskio_bytesread;
 uint64_t ri_diskio_byteswritten;
};

struct rusage_info_v3 {
 uint8_t ri_uuid[16];
 uint64_t ri_user_time;
 uint64_t ri_system_time;
 uint64_t ri_pkg_idle_wkups;
 uint64_t ri_interrupt_wkups;
 uint64_t ri_pageins;
 uint64_t ri_wired_size;
 uint64_t ri_resident_size;
 uint64_t ri_phys_footprint;
 uint64_t ri_proc_start_abstime;
 uint64_t ri_proc_exit_abstime;
 uint64_t ri_child_user_time;
 uint64_t ri_child_system_time;
 uint64_t ri_child_pkg_idle_wkups;
 uint64_t ri_child_interrupt_wkups;
 uint64_t ri_child_pageins;
 uint64_t ri_child_elapsed_abstime;
 uint64_t ri_diskio_bytesread;
 uint64_t ri_diskio_byteswritten;
 uint64_t ri_cpu_time_qos_default;
 uint64_t ri_cpu_time_qos_maintenance;
 uint64_t ri_cpu_time_qos_background;
 uint64_t ri_cpu_time_qos_utility;
 uint64_t ri_cpu_time_qos_legacy;
 uint64_t ri_cpu_time_qos_user_initiated;
 uint64_t ri_cpu_time_qos_user_interactive;
 uint64_t ri_billed_system_time;
 uint64_t ri_serviced_system_time;
};

struct rusage_info_v4 {
 uint8_t ri_uuid[16];
 uint64_t ri_user_time;
 uint64_t ri_system_time;
 uint64_t ri_pkg_idle_wkups;
 uint64_t ri_interrupt_wkups;
 uint64_t ri_pageins;
 uint64_t ri_wired_size;
 uint64_t ri_resident_size;
 uint64_t ri_phys_footprint;
 uint64_t ri_proc_start_abstime;
 uint64_t ri_proc_exit_abstime;
 uint64_t ri_child_user_time;
 uint64_t ri_child_system_time;
 uint64_t ri_child_pkg_idle_wkups;
 uint64_t ri_child_interrupt_wkups;
 uint64_t ri_child_pageins;
 uint64_t ri_child_elapsed_abstime;
 uint64_t ri_diskio_bytesread;
 uint64_t ri_diskio_byteswritten;
 uint64_t ri_cpu_time_qos_default;
 uint64_t ri_cpu_time_qos_maintenance;
 uint64_t ri_cpu_time_qos_background;
 uint64_t ri_cpu_time_qos_utility;
 uint64_t ri_cpu_time_qos_legacy;
 uint64_t ri_cpu_time_qos_user_initiated;
 uint64_t ri_cpu_time_qos_user_interactive;
 uint64_t ri_billed_system_time;
 uint64_t ri_serviced_system_time;
 uint64_t ri_logical_writes;
 uint64_t ri_lifetime_max_phys_footprint;
 uint64_t ri_instructions;
 uint64_t ri_cycles;
 uint64_t ri_billed_energy;
 uint64_t ri_serviced_energy;
 uint64_t ri_interval_max_phys_footprint;
 uint64_t ri_runnable_time;
};

typedef struct rusage_info_v4 rusage_info_current;
struct rlimit {
 rlim_t rlim_cur;
 rlim_t rlim_max;
};
struct proc_rlimit_control_wakeupmon {
 uint32_t wm_flags;
 int32_t wm_rate;
};
extern "C" {
int getpriority(int, id_t);

int getiopolicy_np(int, int) __attribute__((availability(ios,introduced=2.0)));

int getrlimit(int, struct rlimit *) __asm("_" "getrlimit" );
int getrusage(int, struct rusage *);
int setpriority(int, id_t, int);

int setiopolicy_np(int, int, int) __attribute__((availability(ios,introduced=2.0)));

int setrlimit(int, const struct rlimit *) __asm("_" "setrlimit" );
}
union wait {
 int w_status;



 struct {

  unsigned int w_Termsig:7,
      w_Coredump:1,
      w_Retcode:8,
      w_Filler:16;







 } w_T;





 struct {

  unsigned int w_Stopval:8,
      w_Stopsig:8,
      w_Filler:16;






 } w_S;
};
extern "C" {
pid_t wait(int *) __asm("_" "wait" );
pid_t waitpid(pid_t, int *, int) __asm("_" "waitpid" );

int waitid(idtype_t, id_t, siginfo_t *, int) __asm("_" "waitid" );


pid_t wait3(int *, int, struct rusage *);
pid_t wait4(pid_t, int *, int, struct rusage *);

}

extern "C" {
void *alloca(size_t);
}








typedef __darwin_ct_rune_t ct_rune_t;
typedef __darwin_rune_t rune_t;



typedef struct {
 int quot;
 int rem;
} div_t;

typedef struct {
 long quot;
 long rem;
} ldiv_t;


typedef struct {
 long long quot;
 long long rem;
} lldiv_t;



extern int __mb_cur_max;
extern "C" {

void *malloc(size_t __size) __attribute__((__warn_unused_result__)) __attribute__((alloc_size(1)));
void *calloc(size_t __count, size_t __size) __attribute__((__warn_unused_result__)) __attribute__((alloc_size(1,2)));
void free(void *);
void *realloc(void *__ptr, size_t __size) __attribute__((__warn_unused_result__)) __attribute__((alloc_size(2)));

void *valloc(size_t) __attribute__((alloc_size(1)));






int posix_memalign(void **__memptr, size_t __alignment, size_t __size) __attribute__((availability(ios,introduced=3.0)));

}

extern "C" {
void abort(void) __attribute__((__cold__)) __attribute__((__noreturn__));
int abs(int) __attribute__((__const__));
int atexit(void (* _Nonnull)(void));
double atof(const char *);
int atoi(const char *);
long atol(const char *);

long long
  atoll(const char *);

void *bsearch(const void *__key, const void *__base, size_t __nel,
     size_t __width, int (* _Nonnull __compar)(const void *, const void *));

div_t div(int, int) __attribute__((__const__));
void exit(int) __attribute__((__noreturn__));

char *getenv(const char *);
long labs(long) __attribute__((__const__));
ldiv_t ldiv(long, long) __attribute__((__const__));

long long
  llabs(long long);
lldiv_t lldiv(long long, long long);


int mblen(const char *__s, size_t __n);
size_t mbstowcs(wchar_t * , const char * , size_t);
int mbtowc(wchar_t * , const char * , size_t);

void qsort(void *__base, size_t __nel, size_t __width,
     int (* _Nonnull __compar)(const void *, const void *));
int rand(void) __attribute__((__availability__(swift, unavailable, message="Use arc4random instead.")));

void srand(unsigned) __attribute__((__availability__(swift, unavailable, message="Use arc4random instead.")));
double strtod(const char *, char **) __asm("_" "strtod" );
float strtof(const char *, char **) __asm("_" "strtof" );
long strtol(const char *__str, char **__endptr, int __base);
long double
  strtold(const char *, char **);

long long
  strtoll(const char *__str, char **__endptr, int __base);

unsigned long
  strtoul(const char *__str, char **__endptr, int __base);

unsigned long long
  strtoull(const char *__str, char **__endptr, int __base);
__attribute__((__availability__(swift, unavailable, message="Use posix_spawn APIs or NSTask instead.")))
__attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable)))
__attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)))
int system(const char *) __asm("_" "system" );



size_t wcstombs(char * , const wchar_t * , size_t);
int wctomb(char *, wchar_t);


void _Exit(int) __attribute__((__noreturn__));
long a64l(const char *);
double drand48(void);
char *ecvt(double, int, int *, int *);
double erand48(unsigned short[3]);
char *fcvt(double, int, int *, int *);
char *gcvt(double, int, char *);
int getsubopt(char **, char * const *, char **);
int grantpt(int);

char *initstate(unsigned, char *, size_t);



long jrand48(unsigned short[3]) __attribute__((__availability__(swift, unavailable, message="Use arc4random instead.")));
char *l64a(long);
void lcong48(unsigned short[7]);
long lrand48(void) __attribute__((__availability__(swift, unavailable, message="Use arc4random instead.")));
char *mktemp(char *);
int mkstemp(char *);
long mrand48(void) __attribute__((__availability__(swift, unavailable, message="Use arc4random instead.")));
long nrand48(unsigned short[3]) __attribute__((__availability__(swift, unavailable, message="Use arc4random instead.")));
int posix_openpt(int);
char *ptsname(int);


int ptsname_r(int fildes, char *buffer, size_t buflen) __attribute__((availability(macos,introduced=10.13.4))) __attribute__((availability(ios,introduced=11.3))) __attribute__((availability(tvos,introduced=11.3))) __attribute__((availability(watchos,introduced=4.3)));


int putenv(char *) __asm("_" "putenv" );
long random(void) __attribute__((__availability__(swift, unavailable, message="Use arc4random instead.")));
int rand_r(unsigned *) __attribute__((__availability__(swift, unavailable, message="Use arc4random instead.")));

char *realpath(const char * , char * ) __asm("_" "realpath" "$DARWIN_EXTSN");



unsigned short
 *seed48(unsigned short[3]);
int setenv(const char * __name, const char * __value, int __overwrite) __asm("_" "setenv" );

void setkey(const char *) __asm("_" "setkey" );



char *setstate(const char *);
void srand48(long);

void srandom(unsigned);



int unlockpt(int);

int unsetenv(const char *) __asm("_" "unsetenv" );
uint32_t arc4random(void);
void arc4random_addrandom(unsigned char * , int )
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(macosx,deprecated=10.12,message="use arc4random_stir")))
    __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(ios,deprecated=10.0,message="use arc4random_stir")))
    __attribute__((availability(tvos,introduced=2.0))) __attribute__((availability(tvos,deprecated=10.0,message="use arc4random_stir")))
    __attribute__((availability(watchos,introduced=1.0))) __attribute__((availability(watchos,deprecated=3.0,message="use arc4random_stir")));
void arc4random_buf(void * __buf, size_t __nbytes) __attribute__((availability(ios,introduced=4.3)));
void arc4random_stir(void);
uint32_t
  arc4random_uniform(uint32_t __upper_bound) __attribute__((availability(ios,introduced=4.3)));

int atexit_b(void (^ _Nonnull)(void)) __attribute__((availability(ios,introduced=3.2)));
void *bsearch_b(const void *__key, const void *__base, size_t __nel,
     size_t __width, int (^ _Nonnull __compar)(const void *, const void *)) __attribute__((availability(ios,introduced=3.2)));



char *cgetcap(char *, const char *, int);
int cgetclose(void);
int cgetent(char **, char **, const char *);
int cgetfirst(char **, char **);
int cgetmatch(const char *, const char *);
int cgetnext(char **, char **);
int cgetnum(char *, const char *, long *);
int cgetset(const char *);
int cgetstr(char *, const char *, char **);
int cgetustr(char *, const char *, char **);

int daemon(int, int) __asm("_" "daemon" ) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use posix_spawn APIs instead."))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
char *devname(dev_t, mode_t);
char *devname_r(dev_t, mode_t, char *buf, int len);
char *getbsize(int *, long *);
int getloadavg(double [], int);
const char
 *getprogname(void);
void setprogname(const char *);
int heapsort(void *__base, size_t __nel, size_t __width,
     int (* _Nonnull __compar)(const void *, const void *));

int heapsort_b(void *__base, size_t __nel, size_t __width,
     int (^ _Nonnull __compar)(const void *, const void *) __attribute__((__noescape__)))
     __attribute__((availability(ios,introduced=3.2)));

int mergesort(void *__base, size_t __nel, size_t __width,
     int (* _Nonnull __compar)(const void *, const void *));

int mergesort_b(void *__base, size_t __nel, size_t __width,
     int (^ _Nonnull __compar)(const void *, const void *) __attribute__((__noescape__)))
     __attribute__((availability(ios,introduced=3.2)));

void psort(void *__base, size_t __nel, size_t __width,
     int (* _Nonnull __compar)(const void *, const void *))
     __attribute__((availability(ios,introduced=3.2)));

void psort_b(void *__base, size_t __nel, size_t __width,
     int (^ _Nonnull __compar)(const void *, const void *) __attribute__((__noescape__)))
     __attribute__((availability(ios,introduced=3.2)));

void psort_r(void *__base, size_t __nel, size_t __width, void *,
     int (* _Nonnull __compar)(void *, const void *, const void *))
     __attribute__((availability(ios,introduced=3.2)));

void qsort_b(void *__base, size_t __nel, size_t __width,
     int (^ _Nonnull __compar)(const void *, const void *) __attribute__((__noescape__)))
     __attribute__((availability(ios,introduced=3.2)));

void qsort_r(void *__base, size_t __nel, size_t __width, void *,
     int (* _Nonnull __compar)(void *, const void *, const void *));
int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
     unsigned __endbyte);
int rpmatch(const char *)
 __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));
int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
     unsigned __endbyte);
void sranddev(void);
void srandomdev(void);
void *reallocf(void *__ptr, size_t __size) __attribute__((alloc_size(2)));

long long
  strtoq(const char *__str, char **__endptr, int __base);
unsigned long long
  strtouq(const char *__str, char **__endptr, int __base);

extern char *suboptarg;







}
extern "C" {
void __assert_rtn(const char *, const char *, int, const char *) __attribute__((__noreturn__)) __attribute__((__cold__)) __attribute__((__disable_tail_calls__));



}
typedef __darwin_wint_t wint_t;
typedef struct {
 __darwin_rune_t __min;
 __darwin_rune_t __max;
 __darwin_rune_t __map;
 __uint32_t *__types;
} _RuneEntry;

typedef struct {
 int __nranges;
 _RuneEntry *__ranges;
} _RuneRange;

typedef struct {
 char __name[14];
 __uint32_t __mask;
} _RuneCharClass;

typedef struct {
 char __magic[8];
 char __encoding[32];

 __darwin_rune_t (*__sgetrune)(const char *, __darwin_size_t, char const **);
 int (*__sputrune)(__darwin_rune_t, char *, __darwin_size_t, char **);
 __darwin_rune_t __invalid_rune;

 __uint32_t __runetype[(1 <<8 )];
 __darwin_rune_t __maplower[(1 <<8 )];
 __darwin_rune_t __mapupper[(1 <<8 )];






 _RuneRange __runetype_ext;
 _RuneRange __maplower_ext;
 _RuneRange __mapupper_ext;

 void *__variable;
 int __variable_len;




 int __ncharclasses;
 _RuneCharClass *__charclasses;
} _RuneLocale;



extern "C" {
extern _RuneLocale _DefaultRuneLocale;
extern _RuneLocale *_CurrentRuneLocale;
}
extern "C" {
unsigned long ___runetype(__darwin_ct_rune_t);
__darwin_ct_rune_t ___tolower(__darwin_ct_rune_t);
__darwin_ct_rune_t ___toupper(__darwin_ct_rune_t);
}

inline int
isascii(int _c)
{
 return ((_c & ~0x7F) == 0);
}
extern "C" {
int __maskrune(__darwin_ct_rune_t, unsigned long);
}


inline int
__istype(__darwin_ct_rune_t _c, unsigned long _f)
{



 return (isascii(_c) ? !!(_DefaultRuneLocale.__runetype[_c] & _f)
  : !!__maskrune(_c, _f));

}

inline __darwin_ct_rune_t
__isctype(__darwin_ct_rune_t _c, unsigned long _f)
{



 return (_c < 0 || _c >= (1 <<8 )) ? 0 :
  !!(_DefaultRuneLocale.__runetype[_c] & _f);

}
extern "C" {
__darwin_ct_rune_t __toupper(__darwin_ct_rune_t);
__darwin_ct_rune_t __tolower(__darwin_ct_rune_t);
}


inline int
__wcwidth(__darwin_ct_rune_t _c)
{
 unsigned int _x;

 if (_c == 0)
  return (0);
 _x = (unsigned int)__maskrune(_c, 0xe0000000L|0x00040000L);
 if ((_x & 0xe0000000L) != 0)
  return ((_x & 0xe0000000L) >> 30);
 return ((_x & 0x00040000L) != 0 ? 1 : -1);
}






inline int
isalnum(int _c)
{
 return (__istype(_c, 0x00000100L|0x00000400L));
}

inline int
isalpha(int _c)
{
 return (__istype(_c, 0x00000100L));
}

inline int
isblank(int _c)
{
 return (__istype(_c, 0x00020000L));
}

inline int
iscntrl(int _c)
{
 return (__istype(_c, 0x00000200L));
}


inline int
isdigit(int _c)
{
 return (__isctype(_c, 0x00000400L));
}

inline int
isgraph(int _c)
{
 return (__istype(_c, 0x00000800L));
}

inline int
islower(int _c)
{
 return (__istype(_c, 0x00001000L));
}

inline int
isprint(int _c)
{
 return (__istype(_c, 0x00040000L));
}

inline int
ispunct(int _c)
{
 return (__istype(_c, 0x00002000L));
}

inline int
isspace(int _c)
{
 return (__istype(_c, 0x00004000L));
}

inline int
isupper(int _c)
{
 return (__istype(_c, 0x00008000L));
}


inline int
isxdigit(int _c)
{
 return (__isctype(_c, 0x00010000L));
}

inline int
toascii(int _c)
{
 return (_c & 0x7F);
}

inline int
tolower(int _c)
{
        return (__tolower(_c));
}

inline int
toupper(int _c)
{
        return (__toupper(_c));
}


inline int
digittoint(int _c)
{
 return (__maskrune(_c, 0x0F));
}

inline int
ishexnumber(int _c)
{
 return (__istype(_c, 0x00010000L));
}

inline int
isideogram(int _c)
{
 return (__istype(_c, 0x00080000L));
}

inline int
isnumber(int _c)
{
 return (__istype(_c, 0x00000400L));
}

inline int
isphonogram(int _c)
{
 return (__istype(_c, 0x00200000L));
}

inline int
isrune(int _c)
{
 return (__istype(_c, 0xFFFFFFF0L));
}

inline int
isspecial(int _c)
{
 return (__istype(_c, 0x00100000L));
}
extern "C" {
extern int * __error(void);

}





struct lconv {
 char *decimal_point;
 char *thousands_sep;
 char *grouping;
 char *int_curr_symbol;
 char *currency_symbol;
 char *mon_decimal_point;
 char *mon_thousands_sep;
 char *mon_grouping;
 char *positive_sign;
 char *negative_sign;
 char int_frac_digits;
 char frac_digits;
 char p_cs_precedes;
 char p_sep_by_space;
 char n_cs_precedes;
 char n_sep_by_space;
 char p_sign_posn;
 char n_sign_posn;
 char int_p_cs_precedes;
 char int_n_cs_precedes;
 char int_p_sep_by_space;
 char int_n_sep_by_space;
 char int_p_sign_posn;
 char int_n_sign_posn;
};



extern "C" {
struct lconv *localeconv(void);
}
extern "C" {
char *setlocale(int, const char *);
}
extern "C" {
    typedef float float_t;
    typedef double double_t;
extern int __math_errhandling(void);
extern int __fpclassifyf(float);
extern int __fpclassifyd(double);
extern int __fpclassifyl(long double);
inline __attribute__ ((__always_inline__)) int __inline_isfinitef(float);
inline __attribute__ ((__always_inline__)) int __inline_isfinited(double);
inline __attribute__ ((__always_inline__)) int __inline_isfinitel(long double);
inline __attribute__ ((__always_inline__)) int __inline_isinff(float);
inline __attribute__ ((__always_inline__)) int __inline_isinfd(double);
inline __attribute__ ((__always_inline__)) int __inline_isinfl(long double);
inline __attribute__ ((__always_inline__)) int __inline_isnanf(float);
inline __attribute__ ((__always_inline__)) int __inline_isnand(double);
inline __attribute__ ((__always_inline__)) int __inline_isnanl(long double);
inline __attribute__ ((__always_inline__)) int __inline_isnormalf(float);
inline __attribute__ ((__always_inline__)) int __inline_isnormald(double);
inline __attribute__ ((__always_inline__)) int __inline_isnormall(long double);
inline __attribute__ ((__always_inline__)) int __inline_signbitf(float);
inline __attribute__ ((__always_inline__)) int __inline_signbitd(double);
inline __attribute__ ((__always_inline__)) int __inline_signbitl(long double);

inline __attribute__ ((__always_inline__)) int __inline_isfinitef(float __x) {
    return __x == __x && __builtin_fabsf(__x) != __builtin_inff();
}
inline __attribute__ ((__always_inline__)) int __inline_isfinited(double __x) {
    return __x == __x && __builtin_fabs(__x) != __builtin_inf();
}
inline __attribute__ ((__always_inline__)) int __inline_isfinitel(long double __x) {
    return __x == __x && __builtin_fabsl(__x) != __builtin_infl();
}
inline __attribute__ ((__always_inline__)) int __inline_isinff(float __x) {
    return __builtin_fabsf(__x) == __builtin_inff();
}
inline __attribute__ ((__always_inline__)) int __inline_isinfd(double __x) {
    return __builtin_fabs(__x) == __builtin_inf();
}
inline __attribute__ ((__always_inline__)) int __inline_isinfl(long double __x) {
    return __builtin_fabsl(__x) == __builtin_infl();
}
inline __attribute__ ((__always_inline__)) int __inline_isnanf(float __x) {
    return __x != __x;
}
inline __attribute__ ((__always_inline__)) int __inline_isnand(double __x) {
    return __x != __x;
}
inline __attribute__ ((__always_inline__)) int __inline_isnanl(long double __x) {
    return __x != __x;
}
inline __attribute__ ((__always_inline__)) int __inline_signbitf(float __x) {
    union { float __f; unsigned int __u; } __u;
    __u.__f = __x;
    return (int)(__u.__u >> 31);
}
inline __attribute__ ((__always_inline__)) int __inline_signbitd(double __x) {
    union { double __f; unsigned long long __u; } __u;
    __u.__f = __x;
    return (int)(__u.__u >> 63);
}
inline __attribute__ ((__always_inline__)) int __inline_signbitl(long double __x) {
    union { long double __f; unsigned long long __u;} __u;
    __u.__f = __x;
    return (int)(__u.__u >> 63);
}

inline __attribute__ ((__always_inline__)) int __inline_isnormalf(float __x) {
    return __inline_isfinitef(__x) && __builtin_fabsf(__x) >= 1.17549435e-38F;
}
inline __attribute__ ((__always_inline__)) int __inline_isnormald(double __x) {
    return __inline_isfinited(__x) && __builtin_fabs(__x) >= 2.2250738585072014e-308;
}
inline __attribute__ ((__always_inline__)) int __inline_isnormall(long double __x) {
    return __inline_isfinitel(__x) && __builtin_fabsl(__x) >= 2.2250738585072014e-308L;
}
extern float acosf(float);
extern double acos(double);
extern long double acosl(long double);

extern float asinf(float);
extern double asin(double);
extern long double asinl(long double);

extern float atanf(float);
extern double atan(double);
extern long double atanl(long double);

extern float atan2f(float, float);
extern double atan2(double, double);
extern long double atan2l(long double, long double);

extern float cosf(float);
extern double cos(double);
extern long double cosl(long double);

extern float sinf(float);
extern double sin(double);
extern long double sinl(long double);

extern float tanf(float);
extern double tan(double);
extern long double tanl(long double);

extern float acoshf(float);
extern double acosh(double);
extern long double acoshl(long double);

extern float asinhf(float);
extern double asinh(double);
extern long double asinhl(long double);

extern float atanhf(float);
extern double atanh(double);
extern long double atanhl(long double);

extern float coshf(float);
extern double cosh(double);
extern long double coshl(long double);

extern float sinhf(float);
extern double sinh(double);
extern long double sinhl(long double);

extern float tanhf(float);
extern double tanh(double);
extern long double tanhl(long double);

extern float expf(float);
extern double exp(double);
extern long double expl(long double);

extern float exp2f(float);
extern double exp2(double);
extern long double exp2l(long double);

extern float expm1f(float);
extern double expm1(double);
extern long double expm1l(long double);

extern float logf(float);
extern double log(double);
extern long double logl(long double);

extern float log10f(float);
extern double log10(double);
extern long double log10l(long double);

extern float log2f(float);
extern double log2(double);
extern long double log2l(long double);

extern float log1pf(float);
extern double log1p(double);
extern long double log1pl(long double);

extern float logbf(float);
extern double logb(double);
extern long double logbl(long double);

extern float modff(float, float *);
extern double modf(double, double *);
extern long double modfl(long double, long double *);

extern float ldexpf(float, int);
extern double ldexp(double, int);
extern long double ldexpl(long double, int);

extern float frexpf(float, int *);
extern double frexp(double, int *);
extern long double frexpl(long double, int *);

extern int ilogbf(float);
extern int ilogb(double);
extern int ilogbl(long double);

extern float scalbnf(float, int);
extern double scalbn(double, int);
extern long double scalbnl(long double, int);

extern float scalblnf(float, long int);
extern double scalbln(double, long int);
extern long double scalblnl(long double, long int);

extern float fabsf(float);
extern double fabs(double);
extern long double fabsl(long double);

extern float cbrtf(float);
extern double cbrt(double);
extern long double cbrtl(long double);

extern float hypotf(float, float);
extern double hypot(double, double);
extern long double hypotl(long double, long double);

extern float powf(float, float);
extern double pow(double, double);
extern long double powl(long double, long double);

extern float sqrtf(float);
extern double sqrt(double);
extern long double sqrtl(long double);

extern float erff(float);
extern double erf(double);
extern long double erfl(long double);

extern float erfcf(float);
extern double erfc(double);
extern long double erfcl(long double);




extern float lgammaf(float);
extern double lgamma(double);
extern long double lgammal(long double);

extern float tgammaf(float);
extern double tgamma(double);
extern long double tgammal(long double);

extern float ceilf(float);
extern double ceil(double);
extern long double ceill(long double);

extern float floorf(float);
extern double floor(double);
extern long double floorl(long double);

extern float nearbyintf(float);
extern double nearbyint(double);
extern long double nearbyintl(long double);

extern float rintf(float);
extern double rint(double);
extern long double rintl(long double);

extern long int lrintf(float);
extern long int lrint(double);
extern long int lrintl(long double);

extern float roundf(float);
extern double round(double);
extern long double roundl(long double);

extern long int lroundf(float);
extern long int lround(double);
extern long int lroundl(long double);




extern long long int llrintf(float);
extern long long int llrint(double);
extern long long int llrintl(long double);

extern long long int llroundf(float);
extern long long int llround(double);
extern long long int llroundl(long double);


extern float truncf(float);
extern double trunc(double);
extern long double truncl(long double);

extern float fmodf(float, float);
extern double fmod(double, double);
extern long double fmodl(long double, long double);

extern float remainderf(float, float);
extern double remainder(double, double);
extern long double remainderl(long double, long double);

extern float remquof(float, float, int *);
extern double remquo(double, double, int *);
extern long double remquol(long double, long double, int *);

extern float copysignf(float, float);
extern double copysign(double, double);
extern long double copysignl(long double, long double);

extern float nanf(const char *);
extern double nan(const char *);
extern long double nanl(const char *);

extern float nextafterf(float, float);
extern double nextafter(double, double);
extern long double nextafterl(long double, long double);

extern double nexttoward(double, long double);
extern float nexttowardf(float, long double);
extern long double nexttowardl(long double, long double);

extern float fdimf(float, float);
extern double fdim(double, double);
extern long double fdiml(long double, long double);

extern float fmaxf(float, float);
extern double fmax(double, double);
extern long double fmaxl(long double, long double);

extern float fminf(float, float);
extern double fmin(double, double);
extern long double fminl(long double, long double);

extern float fmaf(float, float, float);
extern double fma(double, double, double);
extern long double fmal(long double, long double, long double);
extern float __inff(void)
__attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="use `(float)INFINITY` instead"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern double __inf(void)
__attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="use `INFINITY` instead"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern long double __infl(void)
__attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="use `(long double)INFINITY` instead"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern float __nan(void)
__attribute__((availability(macos,introduced=10.0,deprecated=10.14,message="use `NAN` instead"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern float __exp10f(float) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)));
extern double __exp10(double) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)));





inline __attribute__ ((__always_inline__)) void __sincosf(float __x, float *__sinp, float *__cosp);
inline __attribute__ ((__always_inline__)) void __sincos(double __x, double *__sinp, double *__cosp);
extern float __cospif(float) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)));
extern double __cospi(double) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)));
extern float __sinpif(float) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)));
extern double __sinpi(double) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)));
extern float __tanpif(float) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)));
extern double __tanpi(double) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)));
inline __attribute__ ((__always_inline__)) void __sincospif(float __x, float *__sinp, float *__cosp);
inline __attribute__ ((__always_inline__)) void __sincospi(double __x, double *__sinp, double *__cosp);






struct __float2 { float __sinval; float __cosval; };
struct __double2 { double __sinval; double __cosval; };

extern struct __float2 __sincosf_stret(float);
extern struct __double2 __sincos_stret(double);
extern struct __float2 __sincospif_stret(float);
extern struct __double2 __sincospi_stret(double);

inline __attribute__ ((__always_inline__)) void __sincosf(float __x, float *__sinp, float *__cosp) {
    const struct __float2 __stret = __sincosf_stret(__x);
    *__sinp = __stret.__sinval; *__cosp = __stret.__cosval;
}

inline __attribute__ ((__always_inline__)) void __sincos(double __x, double *__sinp, double *__cosp) {
    const struct __double2 __stret = __sincos_stret(__x);
    *__sinp = __stret.__sinval; *__cosp = __stret.__cosval;
}

inline __attribute__ ((__always_inline__)) void __sincospif(float __x, float *__sinp, float *__cosp) {
    const struct __float2 __stret = __sincospif_stret(__x);
    *__sinp = __stret.__sinval; *__cosp = __stret.__cosval;
}

inline __attribute__ ((__always_inline__)) void __sincospi(double __x, double *__sinp, double *__cosp) {
    const struct __double2 __stret = __sincospi_stret(__x);
    *__sinp = __stret.__sinval; *__cosp = __stret.__cosval;
}







extern double j0(double) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.2)));
extern double j1(double) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.2)));
extern double jn(int, double) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.2)));
extern double y0(double) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.2)));
extern double y1(double) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.2)));
extern double yn(int, double) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.2)));
extern double scalb(double, double);
extern int signgam;
extern long int rinttol(double)
__attribute__((availability(macos,introduced=10.0,deprecated=10.9,replacement="lrint"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern long int roundtol(double)
__attribute__((availability(macos,introduced=10.0,deprecated=10.9,replacement="lround"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern double drem(double, double)
__attribute__((availability(macos,introduced=10.0,deprecated=10.9,replacement="remainder"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern int finite(double)
__attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use `isfinite((double)x)` instead."))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern double gamma(double)
__attribute__((availability(macos,introduced=10.0,deprecated=10.9,replacement="tgamma"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern double significand(double)
__attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use `2*frexp( )` or `scalbn(x, -ilogb(x))` instead."))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
}
typedef int jmp_buf[((14 + 8 + 2) * 2)];
typedef int sigjmp_buf[((14 + 8 + 2) * 2) + 1];





extern "C" {
extern int setjmp(jmp_buf);
extern void longjmp(jmp_buf, int) __attribute__((__noreturn__));


int _setjmp(jmp_buf);
void _longjmp(jmp_buf, int) __attribute__((__noreturn__));
int sigsetjmp(sigjmp_buf, int);
void siglongjmp(sigjmp_buf, int) __attribute__((__noreturn__));



void longjmperror(void);

}
extern const char *const sys_signame[32];
extern const char *const sys_siglist[32];


extern "C" {
int raise(int);
}


extern "C" {
void (* _Nullable bsd_signal(int, void (* _Nullable)(int)))(int);
int kill(pid_t, int) __asm("_" "kill" );
int killpg(pid_t, int) __asm("_" "killpg" );
int pthread_kill(pthread_t, int);
int pthread_sigmask(int, const sigset_t *, sigset_t *) __asm("_" "pthread_sigmask" );
int sigaction(int, const struct sigaction * ,
     struct sigaction * );
int sigaddset(sigset_t *, int);
int sigaltstack(const stack_t * , stack_t * ) __asm("_" "sigaltstack" ) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
int sigdelset(sigset_t *, int);
int sigemptyset(sigset_t *);
int sigfillset(sigset_t *);
int sighold(int);
int sigignore(int);
int siginterrupt(int, int);
int sigismember(const sigset_t *, int);
int sigpause(int) __asm("_" "sigpause" );
int sigpending(sigset_t *);
int sigprocmask(int, const sigset_t * , sigset_t * );
int sigrelse(int);
void (* _Nullable sigset(int, void (* _Nullable)(int)))(int);
int sigsuspend(const sigset_t *) __asm("_" "sigsuspend" );
int sigwait(const sigset_t * , int * ) __asm("_" "sigwait" );

void psignal(unsigned int, const char *);
int sigblock(int);
int sigsetmask(int);
int sigvec(int, struct sigvec *, struct sigvec *);

}
typedef long int ptrdiff_t;
typedef __darwin_va_list va_list;



extern "C" {

int renameat(int, const char *, int, const char *) __attribute__((availability(ios,introduced=8.0)));






int renamex_np(const char *, const char *, unsigned int) __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
int renameatx_np(int, const char *, int, const char *, unsigned int) __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));



}

typedef __darwin_off_t fpos_t;
struct __sbuf {
 unsigned char *_base;
 int _size;
};


struct __sFILEX;
typedef struct __sFILE {
 unsigned char *_p;
 int _r;
 int _w;
 short _flags;
 short _file;
 struct __sbuf _bf;
 int _lbfsize;


 void *_cookie;
 int (* _Nullable _close)(void *);
 int (* _Nullable _read) (void *, char *, int);
 fpos_t (* _Nullable _seek) (void *, fpos_t, int);
 int (* _Nullable _write)(void *, const char *, int);


 struct __sbuf _ub;
 struct __sFILEX *_extra;
 int _ur;


 unsigned char _ubuf[3];
 unsigned char _nbuf[1];


 struct __sbuf _lb;


 int _blksize;
 fpos_t _offset;
} FILE;

extern "C" {
extern FILE *__stdinp;
extern FILE *__stdoutp;
extern FILE *__stderrp;
}
extern "C" {
void clearerr(FILE *);
int fclose(FILE *);
int feof(FILE *);
int ferror(FILE *);
int fflush(FILE *);
int fgetc(FILE *);
int fgetpos(FILE * , fpos_t *);
char *fgets(char * , int, FILE *);



FILE *fopen(const char * __filename, const char * __mode) __asm("_" "fopen" );

int fprintf(FILE * , const char * , ...) __attribute__((__format__ (__printf__, 2, 3)));
int fputc(int, FILE *);
int fputs(const char * , FILE * ) __asm("_" "fputs" );
size_t fread(void * __ptr, size_t __size, size_t __nitems, FILE * __stream);
FILE *freopen(const char * , const char * ,
                 FILE * ) __asm("_" "freopen" );
int fscanf(FILE * , const char * , ...) __attribute__((__format__ (__scanf__, 2, 3)));
int fseek(FILE *, long, int);
int fsetpos(FILE *, const fpos_t *);
long ftell(FILE *);
size_t fwrite(const void * __ptr, size_t __size, size_t __nitems, FILE * __stream) __asm("_" "fwrite" );
int getc(FILE *);
int getchar(void);
char *gets(char *);
void perror(const char *) __attribute__((__cold__));
int printf(const char * , ...) __attribute__((__format__ (__printf__, 1, 2)));
int putc(int, FILE *);
int putchar(int);
int puts(const char *);
int remove(const char *);
int rename (const char *__old, const char *__new);
void rewind(FILE *);
int scanf(const char * , ...) __attribute__((__format__ (__scanf__, 1, 2)));
void setbuf(FILE * , char * );
int setvbuf(FILE * , char * , int, size_t);
int sprintf(char * , const char * , ...) __attribute__((__format__ (__printf__, 2, 3))) __attribute__((__availability__(swift, unavailable, message="Use snprintf instead.")));
int sscanf(const char * , const char * , ...) __attribute__((__format__ (__scanf__, 2, 3)));
FILE *tmpfile(void);

__attribute__((__availability__(swift, unavailable, message="Use mkstemp(3) instead.")))

__attribute__((__deprecated__("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of tmpnam(3), it is highly recommended that you use mkstemp(3) instead.")))

char *tmpnam(char *);
int ungetc(int, FILE *);
int vfprintf(FILE * , const char * , va_list) __attribute__((__format__ (__printf__, 2, 0)));
int vprintf(const char * , va_list) __attribute__((__format__ (__printf__, 1, 0)));
int vsprintf(char * , const char * , va_list) __attribute__((__format__ (__printf__, 2, 0))) __attribute__((__availability__(swift, unavailable, message="Use vsnprintf instead.")));
}
extern "C" {

char *ctermid(char *);




FILE *fdopen(int, const char *) __asm("_" "fdopen" );

int fileno(FILE *);
}
extern "C" {
int pclose(FILE *) __attribute__((__availability__(swift, unavailable, message="Use posix_spawn APIs or NSTask instead.")));



FILE *popen(const char *, const char *) __asm("_" "popen" ) __attribute__((__availability__(swift, unavailable, message="Use posix_spawn APIs or NSTask instead.")));

}
extern "C" {
int __srget(FILE *);
int __svfscanf(FILE *, const char *, va_list) __attribute__((__format__ (__scanf__, 2, 0)));
int __swbuf(int, FILE *);
}







inline __attribute__ ((__always_inline__)) int __sputc(int _c, FILE *_p) {
 if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c != '\n'))
  return (*_p->_p++ = _c);
 else
  return (__swbuf(_c, _p));
}
extern "C" {
void flockfile(FILE *);
int ftrylockfile(FILE *);
void funlockfile(FILE *);
int getc_unlocked(FILE *);
int getchar_unlocked(void);
int putc_unlocked(int, FILE *);
int putchar_unlocked(int);



int getw(FILE *);
int putw(int, FILE *);


__attribute__((__availability__(swift, unavailable, message="Use mkstemp(3) instead.")))

__attribute__((__deprecated__("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of tempnam(3), it is highly recommended that you use mkstemp(3) instead.")))

char *tempnam(const char *__dir, const char *__prefix) __asm("_" "tempnam" );
}
extern "C" {
int fseeko(FILE * __stream, off_t __offset, int __whence);
off_t ftello(FILE * __stream);
}



extern "C" {
int snprintf(char * __str, size_t __size, const char * __format, ...) __attribute__((__format__ (__printf__, 3, 4)));
int vfscanf(FILE * __stream, const char * __format, va_list) __attribute__((__format__ (__scanf__, 2, 0)));
int vscanf(const char * __format, va_list) __attribute__((__format__ (__scanf__, 1, 0)));
int vsnprintf(char * __str, size_t __size, const char * __format, va_list) __attribute__((__format__ (__printf__, 3, 0)));
int vsscanf(const char * __str, const char * __format, va_list) __attribute__((__format__ (__scanf__, 2, 0)));
}
extern "C" {
int dprintf(int, const char * , ...) __attribute__((__format__ (__printf__, 2, 3))) __attribute__((availability(ios,introduced=4.3)));
int vdprintf(int, const char * , va_list) __attribute__((__format__ (__printf__, 2, 0))) __attribute__((availability(ios,introduced=4.3)));
ssize_t getdelim(char ** __linep, size_t * __linecapp, int __delimiter, FILE * __stream) __attribute__((availability(ios,introduced=4.3)));
ssize_t getline(char ** __linep, size_t * __linecapp, FILE * __stream) __attribute__((availability(ios,introduced=4.3)));
FILE *fmemopen(void * __buf, size_t __size, const char * __mode) __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
FILE *open_memstream(char **__bufp, size_t *__sizep) __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
}







extern "C" {
extern const int sys_nerr;
extern const char *const sys_errlist[];

int asprintf(char ** , const char * , ...) __attribute__((__format__ (__printf__, 2, 3)));
char *ctermid_r(char *);
char *fgetln(FILE *, size_t *);
const char *fmtcheck(const char *, const char *);
int fpurge(FILE *);
void setbuffer(FILE *, char *, int);
int setlinebuf(FILE *);
int vasprintf(char ** , const char * , va_list) __attribute__((__format__ (__printf__, 2, 0)));
FILE *zopen(const char *, const char *, int);





FILE *funopen(const void *,
                 int (* _Nullable)(void *, char *, int),
                 int (* _Nullable)(void *, const char *, int),
                 fpos_t (* _Nullable)(void *, fpos_t, int),
                 int (* _Nullable)(void *));
}

extern "C" {
void *memchr(const void *__s, int __c, size_t __n);
int memcmp(const void *__s1, const void *__s2, size_t __n);
void *memcpy(void *__dst, const void *__src, size_t __n);
void *memmove(void *__dst, const void *__src, size_t __len);
void *memset(void *__b, int __c, size_t __len);
char *strcat(char *__s1, const char *__s2);
char *strchr(const char *__s, int __c);
int strcmp(const char *__s1, const char *__s2);
int strcoll(const char *__s1, const char *__s2);
char *strcpy(char *__dst, const char *__src);
size_t strcspn(const char *__s, const char *__charset);
char *strerror(int __errnum) __asm("_" "strerror" );
size_t strlen(const char *__s);
char *strncat(char *__s1, const char *__s2, size_t __n);
int strncmp(const char *__s1, const char *__s2, size_t __n);
char *strncpy(char *__dst, const char *__src, size_t __n);
char *strpbrk(const char *__s, const char *__charset);
char *strrchr(const char *__s, int __c);
size_t strspn(const char *__s, const char *__charset);
char *strstr(const char *__big, const char *__little);
char *strtok(char *__str, const char *__sep);
size_t strxfrm(char *__s1, const char *__s2, size_t __n);
}
extern "C" {
char *strtok_r(char *__str, const char *__sep, char **__lasts);
}
extern "C" {
int strerror_r(int __errnum, char *__strerrbuf, size_t __buflen);
char *strdup(const char *__s1);
void *memccpy(void *__dst, const void *__src, int __c, size_t __n);
}
extern "C" {
char *stpcpy(char *__dst, const char *__src);
char *stpncpy(char *__dst, const char *__src, size_t __n) __attribute__((availability(ios,introduced=4.3)));
char *strndup(const char *__s1, size_t __n) __attribute__((availability(ios,introduced=4.3)));
size_t strnlen(const char *__s1, size_t __n) __attribute__((availability(ios,introduced=4.3)));
char *strsignal(int __sig);
}
extern "C" {
errno_t memset_s(void *__s, rsize_t __smax, int __c, rsize_t __n) __attribute__((availability(ios,introduced=7.0)));
}







extern "C" {
void *memmem(const void *__big, size_t __big_len, const void *__little, size_t __little_len) __attribute__((availability(ios,introduced=4.3)));
void memset_pattern4(void *__b, const void *__pattern4, size_t __len) __attribute__((availability(ios,introduced=3.0)));
void memset_pattern8(void *__b, const void *__pattern8, size_t __len) __attribute__((availability(ios,introduced=3.0)));
void memset_pattern16(void *__b, const void *__pattern16, size_t __len) __attribute__((availability(ios,introduced=3.0)));

char *strcasestr(const char *__big, const char *__little);
char *strnstr(const char *__big, const char *__little, size_t __len);
size_t strlcat(char *__dst, const char *__source, size_t __size);
size_t strlcpy(char *__dst, const char *__source, size_t __size);
void strmode(int __mode, char *__bp);
char *strsep(char **__stringp, const char *__delim);


void swab(const void * , void * , ssize_t);

__attribute__((availability(macosx,introduced=10.12.1))) __attribute__((availability(ios,introduced=10.1)))
__attribute__((availability(tvos,introduced=10.0.1))) __attribute__((availability(watchos,introduced=3.1)))
int timingsafe_bcmp(const void *__b1, const void *__b2, size_t __len);
}







extern "C" {


int bcmp(const void *, const void *, size_t) ;
void bcopy(const void *, void *, size_t) ;
void bzero(void *, size_t) ;
char *index(const char *, int) ;
char *rindex(const char *, int) ;


int ffs(int);
int strcasecmp(const char *, const char *);
int strncasecmp(const char *, const char *, size_t);
}



extern "C" {
int ffsl(long) __attribute__((availability(ios,introduced=2.0)));
int ffsll(long long) __attribute__((availability(ios,introduced=7.0)));
int fls(int) __attribute__((availability(ios,introduced=2.0)));
int flsl(long) __attribute__((availability(ios,introduced=2.0)));
int flsll(long long) __attribute__((availability(ios,introduced=7.0)));
}


struct timespec
{
 __darwin_time_t tv_sec;
 long tv_nsec;
};

struct tm {
 int tm_sec;
 int tm_min;
 int tm_hour;
 int tm_mday;
 int tm_mon;
 int tm_year;
 int tm_wday;
 int tm_yday;
 int tm_isdst;
 long tm_gmtoff;
 char *tm_zone;
};
extern char *tzname[];


extern int getdate_err;

extern long timezone __asm("_" "timezone" );

extern int daylight;

extern "C" {
char *asctime(const struct tm *);
clock_t clock(void) __asm("_" "clock" );
char *ctime(const time_t *);
double difftime(time_t, time_t);
struct tm *getdate(const char *);
struct tm *gmtime(const time_t *);
struct tm *localtime(const time_t *);
time_t mktime(struct tm *) __asm("_" "mktime" );
size_t strftime(char * , size_t, const char * , const struct tm * ) __asm("_" "strftime" );
char *strptime(const char * , const char * , struct tm * ) __asm("_" "strptime" );
time_t time(time_t *);


void tzset(void);



char *asctime_r(const struct tm * , char * );
char *ctime_r(const time_t *, char *);
struct tm *gmtime_r(const time_t * , struct tm * );
struct tm *localtime_r(const time_t * , struct tm * );


time_t posix2time(time_t);



void tzsetwall(void);
time_t time2posix(time_t);
time_t timelocal(struct tm * const);
time_t timegm(struct tm * const);



int nanosleep(const struct timespec *__rqtp, struct timespec *__rmtp) __asm("_" "nanosleep" );
typedef enum {
_CLOCK_REALTIME __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 0,

_CLOCK_MONOTONIC __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 6,


_CLOCK_MONOTONIC_RAW __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 4,

_CLOCK_MONOTONIC_RAW_APPROX __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 5,

_CLOCK_UPTIME_RAW __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 8,

_CLOCK_UPTIME_RAW_APPROX __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 9,


_CLOCK_PROCESS_CPUTIME_ID __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 12,

_CLOCK_THREAD_CPUTIME_ID __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 16

} clockid_t;

__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
int clock_getres(clockid_t __clock_id, struct timespec *__res);

__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
int clock_gettime(clockid_t __clock_id, struct timespec *__tp);


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
__uint64_t clock_gettime_nsec_np(clockid_t __clock_id);


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,unavailable)))
__attribute__((availability(tvos,unavailable))) __attribute__((availability(watchos,unavailable)))
int clock_settime(clockid_t __clock_id, const struct timespec *__tp);
}





extern "C" {





extern "C" void *_Block_copy(const void *aBlock)
    __attribute__((availability(ios,introduced=3.2)));


extern "C" void _Block_release(const void *aBlock)
    __attribute__((availability(ios,introduced=3.2)));



extern "C" void _Block_object_assign(void *, const void *, const int)
    __attribute__((availability(ios,introduced=3.2)));


extern "C" void _Block_object_dispose(const void *, const int)
    __attribute__((availability(ios,introduced=3.2)));


extern "C" void * _NSConcreteGlobalBlock[32]
    __attribute__((availability(ios,introduced=3.2)));
extern "C" void * _NSConcreteStackBlock[32]
    __attribute__((availability(ios,introduced=3.2)));



}




extern "C" {


#pragma pack(push, 2)
typedef unsigned char UInt8;
typedef signed char SInt8;
typedef unsigned short UInt16;
typedef signed short SInt16;


typedef unsigned int UInt32;
typedef signed int SInt32;
struct wide {
  UInt32 lo;
  SInt32 hi;
};
typedef struct wide wide;
struct UnsignedWide {
  UInt32 lo;
  UInt32 hi;
};
typedef struct UnsignedWide UnsignedWide;
      typedef signed long long SInt64;
        typedef unsigned long long UInt64;
typedef SInt32 Fixed;
typedef Fixed * FixedPtr;
typedef SInt32 Fract;
typedef Fract * FractPtr;
typedef UInt32 UnsignedFixed;
typedef UnsignedFixed * UnsignedFixedPtr;
typedef short ShortFixed;
typedef ShortFixed * ShortFixedPtr;
typedef float Float32;
typedef double Float64;
struct Float80 {
    SInt16 exp;
    UInt16 man[4];
};
typedef struct Float80 Float80;

struct Float96 {
    SInt16 exp[2];
    UInt16 man[4];
};
typedef struct Float96 Float96;
struct Float32Point {
    Float32 x;
    Float32 y;
};
typedef struct Float32Point Float32Point;
typedef char * Ptr;
typedef Ptr * Handle;
typedef long Size;
typedef SInt16 OSErr;
typedef SInt32 OSStatus;
typedef void * LogicalAddress;
typedef const void * ConstLogicalAddress;
typedef void * PhysicalAddress;
typedef UInt8 * BytePtr;
typedef unsigned long ByteCount;
typedef unsigned long ByteOffset;
typedef SInt32 Duration;
typedef UnsignedWide AbsoluteTime;
typedef UInt32 OptionBits;
typedef unsigned long ItemCount;
typedef UInt32 PBVersion;
typedef SInt16 ScriptCode;
typedef SInt16 LangCode;
typedef SInt16 RegionCode;
typedef UInt32 FourCharCode;
typedef FourCharCode OSType;
typedef FourCharCode ResType;
typedef OSType * OSTypePtr;
typedef ResType * ResTypePtr;
typedef unsigned char Boolean;
typedef long ( * ProcPtr)(void);
typedef void ( * Register68kProcPtr)(void);




typedef ProcPtr UniversalProcPtr;


typedef ProcPtr * ProcHandle;
typedef UniversalProcPtr * UniversalProcHandle;
typedef void * PRefCon;

typedef void * URefCon;
typedef void * SRefCon;
enum {
  noErr = 0
};

enum {
  kNilOptions = 0
};


enum {
  kVariableLengthArray


  __attribute__((deprecated))


  = 1
};

enum {
  kUnknownType = 0x3F3F3F3F
};
typedef UInt32 UnicodeScalarValue;
typedef UInt32 UTF32Char;
typedef UInt16 UniChar;
typedef UInt16 UTF16Char;
typedef UInt8 UTF8Char;
typedef UniChar * UniCharPtr;
typedef unsigned long UniCharCount;
typedef UniCharCount * UniCharCountPtr;
typedef unsigned char Str255[256];
typedef unsigned char Str63[64];
typedef unsigned char Str32[33];
typedef unsigned char Str31[32];
typedef unsigned char Str27[28];
typedef unsigned char Str15[16];
typedef unsigned char Str32Field[34];
typedef Str63 StrFileName;
typedef unsigned char * StringPtr;
typedef StringPtr * StringHandle;
typedef const unsigned char * ConstStringPtr;
typedef const unsigned char * ConstStr255Param;
typedef const unsigned char * ConstStr63Param;
typedef const unsigned char * ConstStr32Param;
typedef const unsigned char * ConstStr31Param;
typedef const unsigned char * ConstStr27Param;
typedef const unsigned char * ConstStr15Param;
typedef ConstStr63Param ConstStrFileNameParam;

inline unsigned char StrLength(ConstStr255Param string) { return (*string); }
struct ProcessSerialNumber {
  UInt32 highLongOfPSN;
  UInt32 lowLongOfPSN;
};
typedef struct ProcessSerialNumber ProcessSerialNumber;
typedef ProcessSerialNumber * ProcessSerialNumberPtr;
struct Point {
  short v;
  short h;
};
typedef struct Point Point;
typedef Point * PointPtr;
struct Rect {
  short top;
  short left;
  short bottom;
  short right;
};
typedef struct Rect Rect;
typedef Rect * RectPtr;
struct FixedPoint {
  Fixed x;
  Fixed y;
};
typedef struct FixedPoint FixedPoint;
struct FixedRect {
  Fixed left;
  Fixed top;
  Fixed right;
  Fixed bottom;
};
typedef struct FixedRect FixedRect;

typedef short CharParameter;
enum {
  normal = 0,
  bold = 1,
  italic = 2,
  underline = 4,
  outline = 8,
  shadow = 0x10,
  condense = 0x20,
  extend = 0x40
};

typedef unsigned char Style;
typedef short StyleParameter;
typedef Style StyleField;
typedef SInt32 TimeValue;
typedef SInt32 TimeScale;
typedef wide CompTimeValue;
typedef SInt64 TimeValue64;
typedef struct TimeBaseRecord* TimeBase;
struct TimeRecord {
  CompTimeValue value;
  TimeScale scale;
  TimeBase base;
};
typedef struct TimeRecord TimeRecord;
struct NumVersion {

  UInt8 nonRelRev;
  UInt8 stage;
  UInt8 minorAndBugRev;
  UInt8 majorRev;
};
typedef struct NumVersion NumVersion;


enum {

  developStage = 0x20,
  alphaStage = 0x40,
  betaStage = 0x60,
  finalStage = 0x80
};

union NumVersionVariant {

  NumVersion parts;
  UInt32 whole;
};
typedef union NumVersionVariant NumVersionVariant;
typedef NumVersionVariant * NumVersionVariantPtr;
typedef NumVersionVariantPtr * NumVersionVariantHandle;
struct VersRec {

  NumVersion numericVersion;
  short countryCode;
  Str255 shortVersion;
  Str255 reserved;
};
typedef struct VersRec VersRec;
typedef VersRec * VersRecPtr;
typedef VersRecPtr * VersRecHndl;





typedef UInt8 Byte;
typedef SInt8 SignedByte;
typedef wide * WidePtr;
typedef UnsignedWide * UnsignedWidePtr;
typedef Float80 extended80;
typedef Float96 extended96;
typedef SInt8 VHSelect;
extern void
Debugger(void) __attribute__((availability(ios,unavailable)));
extern void
DebugStr(ConstStr255Param debuggerMsg) __attribute__((availability(ios,unavailable)));
extern void
SysBreak(void) __attribute__((availability(ios,unavailable)));
extern void
SysBreakStr(ConstStr255Param debuggerMsg) __attribute__((availability(ios,unavailable)));
extern void
SysBreakFunc(ConstStr255Param debuggerMsg) __attribute__((availability(ios,unavailable)));
#pragma pack(pop)


}
extern "C" {
// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

// @class NSAttributedString;
#ifndef _REWRITER_typedef_NSAttributedString
#define _REWRITER_typedef_NSAttributedString
typedef struct objc_object NSAttributedString;
typedef struct {} _objc_exc_NSAttributedString;
#endif

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @class NSNull;
#ifndef _REWRITER_typedef_NSNull
#define _REWRITER_typedef_NSNull
typedef struct objc_object NSNull;
typedef struct {} _objc_exc_NSNull;
#endif

// @class NSCharacterSet;
#ifndef _REWRITER_typedef_NSCharacterSet
#define _REWRITER_typedef_NSCharacterSet
typedef struct objc_object NSCharacterSet;
typedef struct {} _objc_exc_NSCharacterSet;
#endif

// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

// @class NSDate;
#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

// @class NSTimeZone;
#ifndef _REWRITER_typedef_NSTimeZone
#define _REWRITER_typedef_NSTimeZone
typedef struct objc_object NSTimeZone;
typedef struct {} _objc_exc_NSTimeZone;
#endif

// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

// @class NSError;
#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

// @class NSLocale;
#ifndef _REWRITER_typedef_NSLocale
#define _REWRITER_typedef_NSLocale
typedef struct objc_object NSLocale;
typedef struct {} _objc_exc_NSLocale;
#endif

// @class NSNumber;
#ifndef _REWRITER_typedef_NSNumber
#define _REWRITER_typedef_NSNumber
typedef struct objc_object NSNumber;
typedef struct {} _objc_exc_NSNumber;
#endif

// @class NSSet;
#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif

// @class NSURL;
#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

extern double kCFCoreFoundationVersionNumber;
typedef unsigned long CFTypeID;
typedef unsigned long CFOptionFlags;
typedef unsigned long CFHashCode;
typedef signed long CFIndex;



typedef const __attribute__((objc_bridge(id))) void * CFTypeRef;

typedef const struct __attribute__((objc_bridge(NSString))) __CFString * CFStringRef;
typedef struct __attribute__((objc_bridge_mutable(NSMutableString))) __CFString * CFMutableStringRef;






typedef __attribute__((objc_bridge(id))) CFTypeRef CFPropertyListRef;


typedef CFIndex CFComparisonResult; enum {
    kCFCompareLessThan = -1L,
    kCFCompareEqualTo = 0,
    kCFCompareGreaterThan = 1
};


typedef CFComparisonResult (*CFComparatorFunction)(const void *val1, const void *val2, void *context);


static const CFIndex kCFNotFound = -1;



typedef struct {
    CFIndex location;
    CFIndex length;
} CFRange;


static __inline__ __attribute__((always_inline)) CFRange CFRangeMake(CFIndex loc, CFIndex len) {
    CFRange range;
    range.location = loc;
    range.length = len;
    return range;
}





extern
CFRange __CFRangeMake(CFIndex loc, CFIndex len);




typedef const struct __attribute__((objc_bridge(NSNull))) __CFNull * CFNullRef;

extern
CFTypeID CFNullGetTypeID(void);

extern
const CFNullRef kCFNull;
typedef const struct __attribute__((objc_bridge(id))) __CFAllocator * CFAllocatorRef;


extern
const CFAllocatorRef kCFAllocatorDefault;


extern
const CFAllocatorRef kCFAllocatorSystemDefault;







extern
const CFAllocatorRef kCFAllocatorMalloc;





extern
const CFAllocatorRef kCFAllocatorMallocZone;





extern
const CFAllocatorRef kCFAllocatorNull;





extern
const CFAllocatorRef kCFAllocatorUseContext;

typedef const void * (*CFAllocatorRetainCallBack)(const void *info);
typedef void (*CFAllocatorReleaseCallBack)(const void *info);
typedef CFStringRef (*CFAllocatorCopyDescriptionCallBack)(const void *info);
typedef void * (*CFAllocatorAllocateCallBack)(CFIndex allocSize, CFOptionFlags hint, void *info);
typedef void * (*CFAllocatorReallocateCallBack)(void *ptr, CFIndex newsize, CFOptionFlags hint, void *info);
typedef void (*CFAllocatorDeallocateCallBack)(void *ptr, void *info);
typedef CFIndex (*CFAllocatorPreferredSizeCallBack)(CFIndex size, CFOptionFlags hint, void *info);
typedef struct {
    CFIndex version;
    void * info;
    CFAllocatorRetainCallBack retain;
    CFAllocatorReleaseCallBack release;
    CFAllocatorCopyDescriptionCallBack copyDescription;
    CFAllocatorAllocateCallBack allocate;
    CFAllocatorReallocateCallBack reallocate;
    CFAllocatorDeallocateCallBack deallocate;
    CFAllocatorPreferredSizeCallBack preferredSize;
} CFAllocatorContext;

extern
CFTypeID CFAllocatorGetTypeID(void);
extern
void CFAllocatorSetDefault(CFAllocatorRef allocator);

extern
CFAllocatorRef CFAllocatorGetDefault(void);

extern
CFAllocatorRef CFAllocatorCreate(CFAllocatorRef allocator, CFAllocatorContext *context);

extern
void *CFAllocatorAllocate(CFAllocatorRef allocator, CFIndex size, CFOptionFlags hint);

extern
void *CFAllocatorReallocate(CFAllocatorRef allocator, void *ptr, CFIndex newsize, CFOptionFlags hint);

extern
void CFAllocatorDeallocate(CFAllocatorRef allocator, void *ptr);

extern
CFIndex CFAllocatorGetPreferredSizeForSize(CFAllocatorRef allocator, CFIndex size, CFOptionFlags hint);

extern
void CFAllocatorGetContext(CFAllocatorRef allocator, CFAllocatorContext *context);






extern
CFTypeID CFGetTypeID(CFTypeRef cf);

extern
CFStringRef CFCopyTypeIDDescription(CFTypeID type_id);

extern
CFTypeRef CFRetain(CFTypeRef cf);

extern
void CFRelease(CFTypeRef cf);



extern
CFTypeRef CFAutorelease(CFTypeRef __attribute__((cf_consumed)) arg) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
CFIndex CFGetRetainCount(CFTypeRef cf);


extern
Boolean CFEqual(CFTypeRef cf1, CFTypeRef cf2);

extern
CFHashCode CFHash(CFTypeRef cf);

extern
CFStringRef CFCopyDescription(CFTypeRef cf);

extern
CFAllocatorRef CFGetAllocator(CFTypeRef cf);




extern
CFTypeRef CFMakeCollectable(CFTypeRef cf) ;







}
extern "C" {
typedef const void * (*CFArrayRetainCallBack)(CFAllocatorRef allocator, const void *value);
typedef void (*CFArrayReleaseCallBack)(CFAllocatorRef allocator, const void *value);
typedef CFStringRef (*CFArrayCopyDescriptionCallBack)(const void *value);
typedef Boolean (*CFArrayEqualCallBack)(const void *value1, const void *value2);
typedef struct {
    CFIndex version;
    CFArrayRetainCallBack retain;
    CFArrayReleaseCallBack release;
    CFArrayCopyDescriptionCallBack copyDescription;
    CFArrayEqualCallBack equal;
} CFArrayCallBacks;






extern
const CFArrayCallBacks kCFTypeArrayCallBacks;
typedef void (*CFArrayApplierFunction)(const void *value, void *context);





typedef const struct __attribute__((objc_bridge(NSArray))) __CFArray * CFArrayRef;





typedef struct __attribute__((objc_bridge_mutable(NSMutableArray))) __CFArray * CFMutableArrayRef;





extern
CFTypeID CFArrayGetTypeID(void);
extern
CFArrayRef CFArrayCreate(CFAllocatorRef allocator, const void **values, CFIndex numValues, const CFArrayCallBacks *callBacks);
extern
CFArrayRef CFArrayCreateCopy(CFAllocatorRef allocator, CFArrayRef theArray);
extern
CFMutableArrayRef CFArrayCreateMutable(CFAllocatorRef allocator, CFIndex capacity, const CFArrayCallBacks *callBacks);
extern
CFMutableArrayRef CFArrayCreateMutableCopy(CFAllocatorRef allocator, CFIndex capacity, CFArrayRef theArray);
extern
CFIndex CFArrayGetCount(CFArrayRef theArray);
extern
CFIndex CFArrayGetCountOfValue(CFArrayRef theArray, CFRange range, const void *value);
extern
Boolean CFArrayContainsValue(CFArrayRef theArray, CFRange range, const void *value);
extern
const void *CFArrayGetValueAtIndex(CFArrayRef theArray, CFIndex idx);
extern
void CFArrayGetValues(CFArrayRef theArray, CFRange range, const void **values);
extern
void CFArrayApplyFunction(CFArrayRef theArray, CFRange range, CFArrayApplierFunction __attribute__((noescape)) applier, void *context);
extern
CFIndex CFArrayGetFirstIndexOfValue(CFArrayRef theArray, CFRange range, const void *value);
extern
CFIndex CFArrayGetLastIndexOfValue(CFArrayRef theArray, CFRange range, const void *value);
extern
CFIndex CFArrayBSearchValues(CFArrayRef theArray, CFRange range, const void *value, CFComparatorFunction comparator, void *context);
extern
void CFArrayAppendValue(CFMutableArrayRef theArray, const void *value);
extern
void CFArrayInsertValueAtIndex(CFMutableArrayRef theArray, CFIndex idx, const void *value);
extern
void CFArraySetValueAtIndex(CFMutableArrayRef theArray, CFIndex idx, const void *value);
extern
void CFArrayRemoveValueAtIndex(CFMutableArrayRef theArray, CFIndex idx);
extern
void CFArrayRemoveAllValues(CFMutableArrayRef theArray);
extern
void CFArrayReplaceValues(CFMutableArrayRef theArray, CFRange range, const void **newValues, CFIndex newCount);
extern
void CFArrayExchangeValuesAtIndices(CFMutableArrayRef theArray, CFIndex idx1, CFIndex idx2);
extern
void CFArraySortValues(CFMutableArrayRef theArray, CFRange range, CFComparatorFunction comparator, void *context);
extern
void CFArrayAppendArray(CFMutableArrayRef theArray, CFArrayRef otherArray, CFRange otherRange);

}
extern "C" {

typedef const void * (*CFBagRetainCallBack)(CFAllocatorRef allocator, const void *value);
typedef void (*CFBagReleaseCallBack)(CFAllocatorRef allocator, const void *value);
typedef CFStringRef (*CFBagCopyDescriptionCallBack)(const void *value);
typedef Boolean (*CFBagEqualCallBack)(const void *value1, const void *value2);
typedef CFHashCode (*CFBagHashCallBack)(const void *value);
typedef struct {
    CFIndex version;
    CFBagRetainCallBack retain;
    CFBagReleaseCallBack release;
    CFBagCopyDescriptionCallBack copyDescription;
    CFBagEqualCallBack equal;
    CFBagHashCallBack hash;
} CFBagCallBacks;

extern
const CFBagCallBacks kCFTypeBagCallBacks;
extern
const CFBagCallBacks kCFCopyStringBagCallBacks;

typedef void (*CFBagApplierFunction)(const void *value, void *context);

typedef const struct __attribute__((objc_bridge(id))) __CFBag * CFBagRef;
typedef struct __attribute__((objc_bridge_mutable(id))) __CFBag * CFMutableBagRef;

extern
CFTypeID CFBagGetTypeID(void);

extern
CFBagRef CFBagCreate(CFAllocatorRef allocator, const void **values, CFIndex numValues, const CFBagCallBacks *callBacks);

extern
CFBagRef CFBagCreateCopy(CFAllocatorRef allocator, CFBagRef theBag);

extern
CFMutableBagRef CFBagCreateMutable(CFAllocatorRef allocator, CFIndex capacity, const CFBagCallBacks *callBacks);

extern
CFMutableBagRef CFBagCreateMutableCopy(CFAllocatorRef allocator, CFIndex capacity, CFBagRef theBag);

extern
CFIndex CFBagGetCount(CFBagRef theBag);

extern
CFIndex CFBagGetCountOfValue(CFBagRef theBag, const void *value);

extern
Boolean CFBagContainsValue(CFBagRef theBag, const void *value);

extern
const void *CFBagGetValue(CFBagRef theBag, const void *value);

extern
Boolean CFBagGetValueIfPresent(CFBagRef theBag, const void *candidate, const void **value);

extern
void CFBagGetValues(CFBagRef theBag, const void **values);

extern
void CFBagApplyFunction(CFBagRef theBag, CFBagApplierFunction __attribute__((noescape)) applier, void *context);

extern
void CFBagAddValue(CFMutableBagRef theBag, const void *value);

extern
void CFBagReplaceValue(CFMutableBagRef theBag, const void *value);

extern
void CFBagSetValue(CFMutableBagRef theBag, const void *value);

extern
void CFBagRemoveValue(CFMutableBagRef theBag, const void *value);

extern
void CFBagRemoveAllValues(CFMutableBagRef theBag);

}
extern "C" {

typedef struct {
    CFIndex version;
    void * info;
    const void *(*retain)(const void *info);
    void (*release)(const void *info);
    CFStringRef (*copyDescription)(const void *info);
} CFBinaryHeapCompareContext;
typedef struct {
    CFIndex version;
    const void *(*retain)(CFAllocatorRef allocator, const void *ptr);
    void (*release)(CFAllocatorRef allocator, const void *ptr);
    CFStringRef (*copyDescription)(const void *ptr);
    CFComparisonResult (*compare)(const void *ptr1, const void *ptr2, void *context);
} CFBinaryHeapCallBacks;







extern const CFBinaryHeapCallBacks kCFStringBinaryHeapCallBacks;
typedef void (*CFBinaryHeapApplierFunction)(const void *val, void *context);





typedef struct __attribute__((objc_bridge_mutable(id))) __CFBinaryHeap * CFBinaryHeapRef;





extern CFTypeID CFBinaryHeapGetTypeID(void);
extern CFBinaryHeapRef CFBinaryHeapCreate(CFAllocatorRef allocator, CFIndex capacity, const CFBinaryHeapCallBacks *callBacks, const CFBinaryHeapCompareContext *compareContext);
extern CFBinaryHeapRef CFBinaryHeapCreateCopy(CFAllocatorRef allocator, CFIndex capacity, CFBinaryHeapRef heap);
extern CFIndex CFBinaryHeapGetCount(CFBinaryHeapRef heap);
extern CFIndex CFBinaryHeapGetCountOfValue(CFBinaryHeapRef heap, const void *value);
extern Boolean CFBinaryHeapContainsValue(CFBinaryHeapRef heap, const void *value);
extern const void * CFBinaryHeapGetMinimum(CFBinaryHeapRef heap);
extern Boolean CFBinaryHeapGetMinimumIfPresent(CFBinaryHeapRef heap, const void **value);
extern void CFBinaryHeapGetValues(CFBinaryHeapRef heap, const void **values);
extern void CFBinaryHeapApplyFunction(CFBinaryHeapRef heap, CFBinaryHeapApplierFunction __attribute__((noescape)) applier, void *context);
extern void CFBinaryHeapAddValue(CFBinaryHeapRef heap, const void *value);







extern void CFBinaryHeapRemoveMinimumValue(CFBinaryHeapRef heap);
extern void CFBinaryHeapRemoveAllValues(CFBinaryHeapRef heap);

}
extern "C" {

typedef UInt32 CFBit;

typedef const struct __attribute__((objc_bridge(id))) __CFBitVector * CFBitVectorRef;
typedef struct __attribute__((objc_bridge_mutable(id))) __CFBitVector * CFMutableBitVectorRef;

extern CFTypeID CFBitVectorGetTypeID(void);

extern CFBitVectorRef CFBitVectorCreate(CFAllocatorRef allocator, const UInt8 *bytes, CFIndex numBits);
extern CFBitVectorRef CFBitVectorCreateCopy(CFAllocatorRef allocator, CFBitVectorRef bv);
extern CFMutableBitVectorRef CFBitVectorCreateMutable(CFAllocatorRef allocator, CFIndex capacity);
extern CFMutableBitVectorRef CFBitVectorCreateMutableCopy(CFAllocatorRef allocator, CFIndex capacity, CFBitVectorRef bv);

extern CFIndex CFBitVectorGetCount(CFBitVectorRef bv);
extern CFIndex CFBitVectorGetCountOfBit(CFBitVectorRef bv, CFRange range, CFBit value);
extern Boolean CFBitVectorContainsBit(CFBitVectorRef bv, CFRange range, CFBit value);
extern CFBit CFBitVectorGetBitAtIndex(CFBitVectorRef bv, CFIndex idx);
extern void CFBitVectorGetBits(CFBitVectorRef bv, CFRange range, UInt8 *bytes);
extern CFIndex CFBitVectorGetFirstIndexOfBit(CFBitVectorRef bv, CFRange range, CFBit value);
extern CFIndex CFBitVectorGetLastIndexOfBit(CFBitVectorRef bv, CFRange range, CFBit value);

extern void CFBitVectorSetCount(CFMutableBitVectorRef bv, CFIndex count);
extern void CFBitVectorFlipBitAtIndex(CFMutableBitVectorRef bv, CFIndex idx);
extern void CFBitVectorFlipBits(CFMutableBitVectorRef bv, CFRange range);
extern void CFBitVectorSetBitAtIndex(CFMutableBitVectorRef bv, CFIndex idx, CFBit value);
extern void CFBitVectorSetBits(CFMutableBitVectorRef bv, CFRange range, CFBit value);
extern void CFBitVectorSetAllBits(CFMutableBitVectorRef bv, CFBit value);

}
enum {
 OSUnknownByteOrder,
 OSLittleEndian,
 OSBigEndian
};

static __inline__
int32_t
OSHostByteOrder(void)
{

 return OSLittleEndian;





}
static __inline__
uint16_t
_OSReadInt16(
 const volatile void * base,
 uintptr_t byteOffset
 )
{
 return *(volatile uint16_t *)((uintptr_t)base + byteOffset);
}

static __inline__
uint32_t
_OSReadInt32(
 const volatile void * base,
 uintptr_t byteOffset
 )
{
 return *(volatile uint32_t *)((uintptr_t)base + byteOffset);
}

static __inline__
uint64_t
_OSReadInt64(
 const volatile void * base,
 uintptr_t byteOffset
 )
{
 return *(volatile uint64_t *)((uintptr_t)base + byteOffset);
}



static __inline__
void
_OSWriteInt16(
 volatile void * base,
 uintptr_t byteOffset,
 uint16_t data
 )
{
 *(volatile uint16_t *)((uintptr_t)base + byteOffset) = data;
}

static __inline__
void
_OSWriteInt32(
 volatile void * base,
 uintptr_t byteOffset,
 uint32_t data
 )
{
 *(volatile uint32_t *)((uintptr_t)base + byteOffset) = data;
}

static __inline__
void
_OSWriteInt64(
 volatile void * base,
 uintptr_t byteOffset,
 uint64_t data
 )
{
 *(volatile uint64_t *)((uintptr_t)base + byteOffset) = data;
}



extern "C" {

enum __CFByteOrder {
    CFByteOrderUnknown,
    CFByteOrderLittleEndian,
    CFByteOrderBigEndian
};
typedef CFIndex CFByteOrder;

static __inline__ __attribute__((always_inline)) CFByteOrder CFByteOrderGetCurrent(void) {

    int32_t byteOrder = OSHostByteOrder();
    switch (byteOrder) {
    case OSLittleEndian: return CFByteOrderLittleEndian;
    case OSBigEndian: return CFByteOrderBigEndian;
    default: break;
    }
    return CFByteOrderUnknown;
}

static __inline__ __attribute__((always_inline)) uint16_t CFSwapInt16(uint16_t arg) {

    return ((__uint16_t)(__builtin_constant_p(arg) ? ((__uint16_t)((((__uint16_t)(arg) & 0xff00) >> 8) | (((__uint16_t)(arg) & 0x00ff) << 8))) : _OSSwapInt16(arg)));





}

static __inline__ __attribute__((always_inline)) uint32_t CFSwapInt32(uint32_t arg) {

    return (__builtin_constant_p(arg) ? ((__uint32_t)((((__uint32_t)(arg) & 0xff000000) >> 24) | (((__uint32_t)(arg) & 0x00ff0000) >> 8) | (((__uint32_t)(arg) & 0x0000ff00) << 8) | (((__uint32_t)(arg) & 0x000000ff) << 24))) : _OSSwapInt32(arg));





}

static __inline__ __attribute__((always_inline)) uint64_t CFSwapInt64(uint64_t arg) {

    return (__builtin_constant_p(arg) ? ((__uint64_t)((((__uint64_t)(arg) & 0xff00000000000000ULL) >> 56) | (((__uint64_t)(arg) & 0x00ff000000000000ULL) >> 40) | (((__uint64_t)(arg) & 0x0000ff0000000000ULL) >> 24) | (((__uint64_t)(arg) & 0x000000ff00000000ULL) >> 8) | (((__uint64_t)(arg) & 0x00000000ff000000ULL) << 8) | (((__uint64_t)(arg) & 0x0000000000ff0000ULL) << 24) | (((__uint64_t)(arg) & 0x000000000000ff00ULL) << 40) | (((__uint64_t)(arg) & 0x00000000000000ffULL) << 56))) : _OSSwapInt64(arg));
}

static __inline__ __attribute__((always_inline)) uint16_t CFSwapInt16BigToHost(uint16_t arg) {

    return ((__uint16_t)(__builtin_constant_p(arg) ? ((__uint16_t)((((__uint16_t)(arg) & 0xff00) >> 8) | (((__uint16_t)(arg) & 0x00ff) << 8))) : _OSSwapInt16(arg)));





}

static __inline__ __attribute__((always_inline)) uint32_t CFSwapInt32BigToHost(uint32_t arg) {

    return (__builtin_constant_p(arg) ? ((__uint32_t)((((__uint32_t)(arg) & 0xff000000) >> 24) | (((__uint32_t)(arg) & 0x00ff0000) >> 8) | (((__uint32_t)(arg) & 0x0000ff00) << 8) | (((__uint32_t)(arg) & 0x000000ff) << 24))) : _OSSwapInt32(arg));





}

static __inline__ __attribute__((always_inline)) uint64_t CFSwapInt64BigToHost(uint64_t arg) {

    return (__builtin_constant_p(arg) ? ((__uint64_t)((((__uint64_t)(arg) & 0xff00000000000000ULL) >> 56) | (((__uint64_t)(arg) & 0x00ff000000000000ULL) >> 40) | (((__uint64_t)(arg) & 0x0000ff0000000000ULL) >> 24) | (((__uint64_t)(arg) & 0x000000ff00000000ULL) >> 8) | (((__uint64_t)(arg) & 0x00000000ff000000ULL) << 8) | (((__uint64_t)(arg) & 0x0000000000ff0000ULL) << 24) | (((__uint64_t)(arg) & 0x000000000000ff00ULL) << 40) | (((__uint64_t)(arg) & 0x00000000000000ffULL) << 56))) : _OSSwapInt64(arg));





}

static __inline__ __attribute__((always_inline)) uint16_t CFSwapInt16HostToBig(uint16_t arg) {

    return ((__uint16_t)(__builtin_constant_p(arg) ? ((__uint16_t)((((__uint16_t)(arg) & 0xff00) >> 8) | (((__uint16_t)(arg) & 0x00ff) << 8))) : _OSSwapInt16(arg)));





}

static __inline__ __attribute__((always_inline)) uint32_t CFSwapInt32HostToBig(uint32_t arg) {

    return (__builtin_constant_p(arg) ? ((__uint32_t)((((__uint32_t)(arg) & 0xff000000) >> 24) | (((__uint32_t)(arg) & 0x00ff0000) >> 8) | (((__uint32_t)(arg) & 0x0000ff00) << 8) | (((__uint32_t)(arg) & 0x000000ff) << 24))) : _OSSwapInt32(arg));





}

static __inline__ __attribute__((always_inline)) uint64_t CFSwapInt64HostToBig(uint64_t arg) {

    return (__builtin_constant_p(arg) ? ((__uint64_t)((((__uint64_t)(arg) & 0xff00000000000000ULL) >> 56) | (((__uint64_t)(arg) & 0x00ff000000000000ULL) >> 40) | (((__uint64_t)(arg) & 0x0000ff0000000000ULL) >> 24) | (((__uint64_t)(arg) & 0x000000ff00000000ULL) >> 8) | (((__uint64_t)(arg) & 0x00000000ff000000ULL) << 8) | (((__uint64_t)(arg) & 0x0000000000ff0000ULL) << 24) | (((__uint64_t)(arg) & 0x000000000000ff00ULL) << 40) | (((__uint64_t)(arg) & 0x00000000000000ffULL) << 56))) : _OSSwapInt64(arg));





}

static __inline__ __attribute__((always_inline)) uint16_t CFSwapInt16LittleToHost(uint16_t arg) {

    return ((uint16_t)(arg));





}

static __inline__ __attribute__((always_inline)) uint32_t CFSwapInt32LittleToHost(uint32_t arg) {

    return ((uint32_t)(arg));





}

static __inline__ __attribute__((always_inline)) uint64_t CFSwapInt64LittleToHost(uint64_t arg) {

    return ((uint64_t)(arg));





}

static __inline__ __attribute__((always_inline)) uint16_t CFSwapInt16HostToLittle(uint16_t arg) {

    return ((uint16_t)(arg));





}

static __inline__ __attribute__((always_inline)) uint32_t CFSwapInt32HostToLittle(uint32_t arg) {

    return ((uint32_t)(arg));





}

static __inline__ __attribute__((always_inline)) uint64_t CFSwapInt64HostToLittle(uint64_t arg) {

    return ((uint64_t)(arg));





}

typedef struct {uint32_t v;} CFSwappedFloat32;
typedef struct {uint64_t v;} CFSwappedFloat64;

static __inline__ __attribute__((always_inline)) CFSwappedFloat32 CFConvertFloat32HostToSwapped(Float32 arg) {
    union CFSwap {
 Float32 v;
 CFSwappedFloat32 sv;
    } result;
    result.v = arg;

    result.sv.v = CFSwapInt32(result.sv.v);

    return result.sv;
}

static __inline__ __attribute__((always_inline)) Float32 CFConvertFloat32SwappedToHost(CFSwappedFloat32 arg) {
    union CFSwap {
 Float32 v;
 CFSwappedFloat32 sv;
    } result;
    result.sv = arg;

    result.sv.v = CFSwapInt32(result.sv.v);

    return result.v;
}

static __inline__ __attribute__((always_inline)) CFSwappedFloat64 CFConvertFloat64HostToSwapped(Float64 arg) {
    union CFSwap {
 Float64 v;
 CFSwappedFloat64 sv;
    } result;
    result.v = arg;

    result.sv.v = CFSwapInt64(result.sv.v);

    return result.sv;
}

static __inline__ __attribute__((always_inline)) Float64 CFConvertFloat64SwappedToHost(CFSwappedFloat64 arg) {
    union CFSwap {
 Float64 v;
 CFSwappedFloat64 sv;
    } result;
    result.sv = arg;

    result.sv.v = CFSwapInt64(result.sv.v);

    return result.v;
}

static __inline__ __attribute__((always_inline)) CFSwappedFloat32 CFConvertFloatHostToSwapped(float arg) {
    union CFSwap {
 float v;
 CFSwappedFloat32 sv;
    } result;
    result.v = arg;

    result.sv.v = CFSwapInt32(result.sv.v);

    return result.sv;
}

static __inline__ __attribute__((always_inline)) float CFConvertFloatSwappedToHost(CFSwappedFloat32 arg) {
    union CFSwap {
 float v;
 CFSwappedFloat32 sv;
    } result;
    result.sv = arg;

    result.sv.v = CFSwapInt32(result.sv.v);

    return result.v;
}

static __inline__ __attribute__((always_inline)) CFSwappedFloat64 CFConvertDoubleHostToSwapped(double arg) {
    union CFSwap {
 double v;
 CFSwappedFloat64 sv;
    } result;
    result.v = arg;

    result.sv.v = CFSwapInt64(result.sv.v);

    return result.sv;
}

static __inline__ __attribute__((always_inline)) double CFConvertDoubleSwappedToHost(CFSwappedFloat64 arg) {
    union CFSwap {
 double v;
 CFSwappedFloat64 sv;
    } result;
    result.sv = arg;

    result.sv.v = CFSwapInt64(result.sv.v);

    return result.v;
}

}
extern "C" {
typedef const void * (*CFDictionaryRetainCallBack)(CFAllocatorRef allocator, const void *value);
typedef void (*CFDictionaryReleaseCallBack)(CFAllocatorRef allocator, const void *value);
typedef CFStringRef (*CFDictionaryCopyDescriptionCallBack)(const void *value);
typedef Boolean (*CFDictionaryEqualCallBack)(const void *value1, const void *value2);
typedef CFHashCode (*CFDictionaryHashCallBack)(const void *value);
typedef struct {
    CFIndex version;
    CFDictionaryRetainCallBack retain;
    CFDictionaryReleaseCallBack release;
    CFDictionaryCopyDescriptionCallBack copyDescription;
    CFDictionaryEqualCallBack equal;
    CFDictionaryHashCallBack hash;
} CFDictionaryKeyCallBacks;







extern
const CFDictionaryKeyCallBacks kCFTypeDictionaryKeyCallBacks;
extern
const CFDictionaryKeyCallBacks kCFCopyStringDictionaryKeyCallBacks;
typedef struct {
    CFIndex version;
    CFDictionaryRetainCallBack retain;
    CFDictionaryReleaseCallBack release;
    CFDictionaryCopyDescriptionCallBack copyDescription;
    CFDictionaryEqualCallBack equal;
} CFDictionaryValueCallBacks;







extern
const CFDictionaryValueCallBacks kCFTypeDictionaryValueCallBacks;
typedef void (*CFDictionaryApplierFunction)(const void *key, const void *value, void *context);





typedef const struct __attribute__((objc_bridge(NSDictionary))) __CFDictionary * CFDictionaryRef;





typedef struct __attribute__((objc_bridge_mutable(NSMutableDictionary))) __CFDictionary * CFMutableDictionaryRef;





extern
CFTypeID CFDictionaryGetTypeID(void);
extern
CFDictionaryRef CFDictionaryCreate(CFAllocatorRef allocator, const void **keys, const void **values, CFIndex numValues, const CFDictionaryKeyCallBacks *keyCallBacks, const CFDictionaryValueCallBacks *valueCallBacks);
extern
CFDictionaryRef CFDictionaryCreateCopy(CFAllocatorRef allocator, CFDictionaryRef theDict);
extern
CFMutableDictionaryRef CFDictionaryCreateMutable(CFAllocatorRef allocator, CFIndex capacity, const CFDictionaryKeyCallBacks *keyCallBacks, const CFDictionaryValueCallBacks *valueCallBacks);
extern
CFMutableDictionaryRef CFDictionaryCreateMutableCopy(CFAllocatorRef allocator, CFIndex capacity, CFDictionaryRef theDict);
extern
CFIndex CFDictionaryGetCount(CFDictionaryRef theDict);
extern
CFIndex CFDictionaryGetCountOfKey(CFDictionaryRef theDict, const void *key);
extern
CFIndex CFDictionaryGetCountOfValue(CFDictionaryRef theDict, const void *value);
extern
Boolean CFDictionaryContainsKey(CFDictionaryRef theDict, const void *key);
extern
Boolean CFDictionaryContainsValue(CFDictionaryRef theDict, const void *value);
extern
const void *CFDictionaryGetValue(CFDictionaryRef theDict, const void *key);
extern
Boolean CFDictionaryGetValueIfPresent(CFDictionaryRef theDict, const void *key, const void **value);
extern
void CFDictionaryGetKeysAndValues(CFDictionaryRef theDict, const void **keys, const void **values);
extern
void CFDictionaryApplyFunction(CFDictionaryRef theDict, CFDictionaryApplierFunction __attribute__((noescape)) applier, void *context);
extern
void CFDictionaryAddValue(CFMutableDictionaryRef theDict, const void *key, const void *value);
extern
void CFDictionarySetValue(CFMutableDictionaryRef theDict, const void *key, const void *value);
extern
void CFDictionaryReplaceValue(CFMutableDictionaryRef theDict, const void *key, const void *value);
extern
void CFDictionaryRemoveValue(CFMutableDictionaryRef theDict, const void *key);
extern
void CFDictionaryRemoveAllValues(CFMutableDictionaryRef theDict);

}
extern "C" {

typedef CFStringRef CFNotificationName __attribute__((swift_wrapper(struct)));

typedef struct __attribute__((objc_bridge_mutable(id))) __CFNotificationCenter * CFNotificationCenterRef;

typedef void (*CFNotificationCallback)(CFNotificationCenterRef center, void *observer, CFNotificationName name, const void *object, CFDictionaryRef userInfo);

typedef CFIndex CFNotificationSuspensionBehavior; enum {
    CFNotificationSuspensionBehaviorDrop = 1,

    CFNotificationSuspensionBehaviorCoalesce = 2,

    CFNotificationSuspensionBehaviorHold = 3,

    CFNotificationSuspensionBehaviorDeliverImmediately = 4

};

extern CFTypeID CFNotificationCenterGetTypeID(void);

extern CFNotificationCenterRef CFNotificationCenterGetLocalCenter(void);





extern CFNotificationCenterRef CFNotificationCenterGetDarwinNotifyCenter(void);
extern void CFNotificationCenterAddObserver(CFNotificationCenterRef center, const void *observer, CFNotificationCallback callBack, CFStringRef name, const void *object, CFNotificationSuspensionBehavior suspensionBehavior);

extern void CFNotificationCenterRemoveObserver(CFNotificationCenterRef center, const void *observer, CFNotificationName name, const void *object);
extern void CFNotificationCenterRemoveEveryObserver(CFNotificationCenterRef center, const void *observer);

extern void CFNotificationCenterPostNotification(CFNotificationCenterRef center, CFNotificationName name, const void *object, CFDictionaryRef userInfo, Boolean deliverImmediately);

enum {
    kCFNotificationDeliverImmediately = (1UL << 0),
    kCFNotificationPostToAllSessions = (1UL << 1)
};

extern void CFNotificationCenterPostNotificationWithOptions(CFNotificationCenterRef center, CFNotificationName name, const void *object, CFDictionaryRef userInfo, CFOptionFlags options);


}


extern "C" {

typedef CFStringRef CFLocaleIdentifier __attribute__((swift_wrapper(struct)));
typedef CFStringRef CFLocaleKey __attribute__((swift_wrapper(enum)));

typedef const struct __attribute__((objc_bridge(NSLocale))) __CFLocale *CFLocaleRef;

extern
CFTypeID CFLocaleGetTypeID(void);

extern
CFLocaleRef CFLocaleGetSystem(void);


extern
CFLocaleRef CFLocaleCopyCurrent(void);
extern
CFArrayRef CFLocaleCopyAvailableLocaleIdentifiers(void);



extern
CFArrayRef CFLocaleCopyISOLanguageCodes(void);




extern
CFArrayRef CFLocaleCopyISOCountryCodes(void);




extern
CFArrayRef CFLocaleCopyISOCurrencyCodes(void);




extern
CFArrayRef CFLocaleCopyCommonISOCurrencyCodes(void) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFArrayRef CFLocaleCopyPreferredLanguages(void) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
CFLocaleIdentifier CFLocaleCreateCanonicalLanguageIdentifierFromString(CFAllocatorRef allocator, CFStringRef localeIdentifier);



extern
CFLocaleIdentifier CFLocaleCreateCanonicalLocaleIdentifierFromString(CFAllocatorRef allocator, CFStringRef localeIdentifier);



extern
CFLocaleIdentifier CFLocaleCreateCanonicalLocaleIdentifierFromScriptManagerCodes(CFAllocatorRef allocator, LangCode lcode, RegionCode rcode);


extern
CFLocaleIdentifier CFLocaleCreateLocaleIdentifierFromWindowsLocaleCode(CFAllocatorRef allocator, uint32_t lcid) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
uint32_t CFLocaleGetWindowsLocaleCodeFromLocaleIdentifier(CFLocaleIdentifier localeIdentifier) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


typedef CFIndex CFLocaleLanguageDirection; enum {
    kCFLocaleLanguageDirectionUnknown = 0,
    kCFLocaleLanguageDirectionLeftToRight = 1,
    kCFLocaleLanguageDirectionRightToLeft = 2,
    kCFLocaleLanguageDirectionTopToBottom = 3,
    kCFLocaleLanguageDirectionBottomToTop = 4
};

extern
CFLocaleLanguageDirection CFLocaleGetLanguageCharacterDirection(CFStringRef isoLangCode) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
CFLocaleLanguageDirection CFLocaleGetLanguageLineDirection(CFStringRef isoLangCode) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
CFDictionaryRef CFLocaleCreateComponentsFromLocaleIdentifier(CFAllocatorRef allocator, CFLocaleIdentifier localeID);
extern
CFLocaleIdentifier CFLocaleCreateLocaleIdentifierFromComponents(CFAllocatorRef allocator, CFDictionaryRef dictionary);






extern
CFLocaleRef CFLocaleCreate(CFAllocatorRef allocator, CFLocaleIdentifier localeIdentifier);


extern
CFLocaleRef CFLocaleCreateCopy(CFAllocatorRef allocator, CFLocaleRef locale);




extern
CFLocaleIdentifier CFLocaleGetIdentifier(CFLocaleRef locale);



extern
CFTypeRef CFLocaleGetValue(CFLocaleRef locale, CFLocaleKey key);



extern
CFStringRef CFLocaleCopyDisplayNameForPropertyValue(CFLocaleRef displayLocale, CFLocaleKey key, CFStringRef value);





extern const CFNotificationName kCFLocaleCurrentLocaleDidChangeNotification __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern const CFLocaleKey kCFLocaleIdentifier;
extern const CFLocaleKey kCFLocaleLanguageCode;
extern const CFLocaleKey kCFLocaleCountryCode;
extern const CFLocaleKey kCFLocaleScriptCode;
extern const CFLocaleKey kCFLocaleVariantCode;

extern const CFLocaleKey kCFLocaleExemplarCharacterSet;
extern const CFLocaleKey kCFLocaleCalendarIdentifier;
extern const CFLocaleKey kCFLocaleCalendar;
extern const CFLocaleKey kCFLocaleCollationIdentifier;
extern const CFLocaleKey kCFLocaleUsesMetricSystem;
extern const CFLocaleKey kCFLocaleMeasurementSystem;
extern const CFLocaleKey kCFLocaleDecimalSeparator;
extern const CFLocaleKey kCFLocaleGroupingSeparator;
extern const CFLocaleKey kCFLocaleCurrencySymbol;
extern const CFLocaleKey kCFLocaleCurrencyCode;
extern const CFLocaleKey kCFLocaleCollatorIdentifier __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFLocaleKey kCFLocaleQuotationBeginDelimiterKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFLocaleKey kCFLocaleQuotationEndDelimiterKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFLocaleKey kCFLocaleAlternateQuotationBeginDelimiterKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFLocaleKey kCFLocaleAlternateQuotationEndDelimiterKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


typedef CFStringRef CFCalendarIdentifier __attribute__((swift_wrapper(enum)));

extern const CFCalendarIdentifier kCFGregorianCalendar;
extern const CFCalendarIdentifier kCFBuddhistCalendar;
extern const CFCalendarIdentifier kCFChineseCalendar;
extern const CFCalendarIdentifier kCFHebrewCalendar;
extern const CFCalendarIdentifier kCFIslamicCalendar;
extern const CFCalendarIdentifier kCFIslamicCivilCalendar;
extern const CFCalendarIdentifier kCFJapaneseCalendar;
extern const CFCalendarIdentifier kCFRepublicOfChinaCalendar __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFCalendarIdentifier kCFPersianCalendar __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFCalendarIdentifier kCFIndianCalendar __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFCalendarIdentifier kCFISO8601Calendar __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFCalendarIdentifier kCFIslamicTabularCalendar __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFCalendarIdentifier kCFIslamicUmmAlQuraCalendar __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

}
extern "C" {

typedef double CFTimeInterval;
typedef CFTimeInterval CFAbsoluteTime;



extern
CFAbsoluteTime CFAbsoluteTimeGetCurrent(void);

extern
const CFTimeInterval kCFAbsoluteTimeIntervalSince1970;
extern
const CFTimeInterval kCFAbsoluteTimeIntervalSince1904;

typedef const struct __attribute__((objc_bridge(NSDate))) __CFDate * CFDateRef;

extern
CFTypeID CFDateGetTypeID(void);

extern
CFDateRef CFDateCreate(CFAllocatorRef allocator, CFAbsoluteTime at);

extern
CFAbsoluteTime CFDateGetAbsoluteTime(CFDateRef theDate);

extern
CFTimeInterval CFDateGetTimeIntervalSinceDate(CFDateRef theDate, CFDateRef otherDate);

extern
CFComparisonResult CFDateCompare(CFDateRef theDate, CFDateRef otherDate, void *context);



typedef const struct __attribute__((objc_bridge(NSTimeZone))) __CFTimeZone * CFTimeZoneRef;
typedef struct {
    SInt32 year;
    SInt8 month;
    SInt8 day;
    SInt8 hour;
    SInt8 minute;
    double second;
} CFGregorianDate __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead")));

typedef struct {
    SInt32 years;
    SInt32 months;
    SInt32 days;
    SInt32 hours;
    SInt32 minutes;
    double seconds;
} CFGregorianUnits __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead")));

typedef CFOptionFlags CFGregorianUnitFlags; enum {
    kCFGregorianUnitsYears __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead"))) = (1UL << 0),
    kCFGregorianUnitsMonths __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead"))) = (1UL << 1),
    kCFGregorianUnitsDays __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead"))) = (1UL << 2),
    kCFGregorianUnitsHours __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead"))) = (1UL << 3),
    kCFGregorianUnitsMinutes __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead"))) = (1UL << 4),
    kCFGregorianUnitsSeconds __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead"))) = (1UL << 5),
    kCFGregorianAllUnits __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead"))) = 0x00FFFFFF
};

extern
Boolean CFGregorianDateIsValid(CFGregorianDate gdate, CFOptionFlags unitFlags) __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead")));

extern
CFAbsoluteTime CFGregorianDateGetAbsoluteTime(CFGregorianDate gdate, CFTimeZoneRef tz) __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead")));

extern
CFGregorianDate CFAbsoluteTimeGetGregorianDate(CFAbsoluteTime at, CFTimeZoneRef tz) __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead")));

extern
CFAbsoluteTime CFAbsoluteTimeAddGregorianUnits(CFAbsoluteTime at, CFTimeZoneRef tz, CFGregorianUnits units) __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead")));

extern
CFGregorianUnits CFAbsoluteTimeGetDifferenceAsGregorianUnits(CFAbsoluteTime at1, CFAbsoluteTime at2, CFTimeZoneRef tz, CFOptionFlags unitFlags) __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead")));

extern
SInt32 CFAbsoluteTimeGetDayOfWeek(CFAbsoluteTime at, CFTimeZoneRef tz) __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead")));

extern
SInt32 CFAbsoluteTimeGetDayOfYear(CFAbsoluteTime at, CFTimeZoneRef tz) __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead")));

extern
SInt32 CFAbsoluteTimeGetWeekOfYear(CFAbsoluteTime at, CFTimeZoneRef tz) __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFCalendar or NSCalendar API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFCalendar or NSCalendar API instead")));

}
extern "C" {

typedef const struct __attribute__((objc_bridge(NSData))) __CFData * CFDataRef;
typedef struct __attribute__((objc_bridge_mutable(NSMutableData))) __CFData * CFMutableDataRef;

extern
CFTypeID CFDataGetTypeID(void);

extern
CFDataRef CFDataCreate(CFAllocatorRef allocator, const UInt8 *bytes, CFIndex length);

extern
CFDataRef CFDataCreateWithBytesNoCopy(CFAllocatorRef allocator, const UInt8 *bytes, CFIndex length, CFAllocatorRef bytesDeallocator);


extern
CFDataRef CFDataCreateCopy(CFAllocatorRef allocator, CFDataRef theData);

extern
CFMutableDataRef CFDataCreateMutable(CFAllocatorRef allocator, CFIndex capacity);

extern
CFMutableDataRef CFDataCreateMutableCopy(CFAllocatorRef allocator, CFIndex capacity, CFDataRef theData);

extern
CFIndex CFDataGetLength(CFDataRef theData);

extern
const UInt8 *CFDataGetBytePtr(CFDataRef theData);

extern
UInt8 *CFDataGetMutableBytePtr(CFMutableDataRef theData);

extern
void CFDataGetBytes(CFDataRef theData, CFRange range, UInt8 *buffer);

extern
void CFDataSetLength(CFMutableDataRef theData, CFIndex length);

extern
void CFDataIncreaseLength(CFMutableDataRef theData, CFIndex extraLength);

extern
void CFDataAppendBytes(CFMutableDataRef theData, const UInt8 *bytes, CFIndex length);

extern
void CFDataReplaceBytes(CFMutableDataRef theData, CFRange range, const UInt8 *newBytes, CFIndex newLength);

extern
void CFDataDeleteBytes(CFMutableDataRef theData, CFRange range);

typedef CFOptionFlags CFDataSearchFlags; enum {
    kCFDataSearchBackwards = 1UL << 0,
    kCFDataSearchAnchored = 1UL << 1
} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
CFRange CFDataFind(CFDataRef theData, CFDataRef dataToFind, CFRange searchRange, CFDataSearchFlags compareOptions) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

}


extern "C" {





typedef const struct __attribute__((objc_bridge(NSCharacterSet))) __CFCharacterSet * CFCharacterSetRef;





typedef struct __attribute__((objc_bridge_mutable(NSMutableCharacterSet))) __CFCharacterSet * CFMutableCharacterSetRef;






typedef CFIndex CFCharacterSetPredefinedSet; enum {
    kCFCharacterSetControl = 1,
    kCFCharacterSetWhitespace,
    kCFCharacterSetWhitespaceAndNewline,
    kCFCharacterSetDecimalDigit,
    kCFCharacterSetLetter,
    kCFCharacterSetLowercaseLetter,
    kCFCharacterSetUppercaseLetter,
    kCFCharacterSetNonBase,
    kCFCharacterSetDecomposable,
    kCFCharacterSetAlphaNumeric,
    kCFCharacterSetPunctuation,
    kCFCharacterSetCapitalizedLetter = 13,
    kCFCharacterSetSymbol = 14,
    kCFCharacterSetNewline __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 15,
    kCFCharacterSetIllegal = 12
};





extern
CFTypeID CFCharacterSetGetTypeID(void);
extern
CFCharacterSetRef CFCharacterSetGetPredefined(CFCharacterSetPredefinedSet theSetIdentifier);
extern
CFCharacterSetRef CFCharacterSetCreateWithCharactersInRange(CFAllocatorRef alloc, CFRange theRange);
extern
CFCharacterSetRef CFCharacterSetCreateWithCharactersInString(CFAllocatorRef alloc, CFStringRef theString);
extern
CFCharacterSetRef CFCharacterSetCreateWithBitmapRepresentation(CFAllocatorRef alloc, CFDataRef theData);
extern CFCharacterSetRef CFCharacterSetCreateInvertedSet(CFAllocatorRef alloc, CFCharacterSetRef theSet);
extern Boolean CFCharacterSetIsSupersetOfSet(CFCharacterSetRef theSet, CFCharacterSetRef theOtherset);
extern Boolean CFCharacterSetHasMemberInPlane(CFCharacterSetRef theSet, CFIndex thePlane);
extern
CFMutableCharacterSetRef CFCharacterSetCreateMutable(CFAllocatorRef alloc);
extern
CFCharacterSetRef CFCharacterSetCreateCopy(CFAllocatorRef alloc, CFCharacterSetRef theSet);
extern
CFMutableCharacterSetRef CFCharacterSetCreateMutableCopy(CFAllocatorRef alloc, CFCharacterSetRef theSet);
extern
Boolean CFCharacterSetIsCharacterMember(CFCharacterSetRef theSet, UniChar theChar);
extern Boolean CFCharacterSetIsLongCharacterMember(CFCharacterSetRef theSet, UTF32Char theChar);
extern
CFDataRef CFCharacterSetCreateBitmapRepresentation(CFAllocatorRef alloc, CFCharacterSetRef theSet);
extern
void CFCharacterSetAddCharactersInRange(CFMutableCharacterSetRef theSet, CFRange theRange);
extern
void CFCharacterSetRemoveCharactersInRange(CFMutableCharacterSetRef theSet, CFRange theRange);
extern
void CFCharacterSetAddCharactersInString(CFMutableCharacterSetRef theSet, CFStringRef theString);
extern
void CFCharacterSetRemoveCharactersInString(CFMutableCharacterSetRef theSet, CFStringRef theString);
extern
void CFCharacterSetUnion(CFMutableCharacterSetRef theSet, CFCharacterSetRef theOtherSet);
extern
void CFCharacterSetIntersect(CFMutableCharacterSetRef theSet, CFCharacterSetRef theOtherSet);
extern
void CFCharacterSetInvert(CFMutableCharacterSetRef theSet);

}




extern "C" {
typedef UInt32 CFStringEncoding;





typedef CFStringEncoding CFStringBuiltInEncodings; enum {
    kCFStringEncodingMacRoman = 0,
    kCFStringEncodingWindowsLatin1 = 0x0500,
    kCFStringEncodingISOLatin1 = 0x0201,
    kCFStringEncodingNextStepLatin = 0x0B01,
    kCFStringEncodingASCII = 0x0600,
    kCFStringEncodingUnicode = 0x0100,
    kCFStringEncodingUTF8 = 0x08000100,
    kCFStringEncodingNonLossyASCII = 0x0BFF,

    kCFStringEncodingUTF16 = 0x0100,
    kCFStringEncodingUTF16BE = 0x10000100,
    kCFStringEncodingUTF16LE = 0x14000100,

    kCFStringEncodingUTF32 = 0x0c000100,
    kCFStringEncodingUTF32BE = 0x18000100,
    kCFStringEncodingUTF32LE = 0x1c000100
};



extern
CFTypeID CFStringGetTypeID(void);
extern
CFStringRef CFStringCreateWithPascalString(CFAllocatorRef alloc, ConstStr255Param pStr, CFStringEncoding encoding);

extern
CFStringRef CFStringCreateWithCString(CFAllocatorRef alloc, const char *cStr, CFStringEncoding encoding);



extern
CFStringRef CFStringCreateWithBytes(CFAllocatorRef alloc, const UInt8 *bytes, CFIndex numBytes, CFStringEncoding encoding, Boolean isExternalRepresentation);

extern
CFStringRef CFStringCreateWithCharacters(CFAllocatorRef alloc, const UniChar *chars, CFIndex numChars);
extern
CFStringRef CFStringCreateWithPascalStringNoCopy(CFAllocatorRef alloc, ConstStr255Param pStr, CFStringEncoding encoding, CFAllocatorRef contentsDeallocator);

extern
CFStringRef CFStringCreateWithCStringNoCopy(CFAllocatorRef alloc, const char *cStr, CFStringEncoding encoding, CFAllocatorRef contentsDeallocator);



extern
CFStringRef CFStringCreateWithBytesNoCopy(CFAllocatorRef alloc, const UInt8 *bytes, CFIndex numBytes, CFStringEncoding encoding, Boolean isExternalRepresentation, CFAllocatorRef contentsDeallocator);

extern
CFStringRef CFStringCreateWithCharactersNoCopy(CFAllocatorRef alloc, const UniChar *chars, CFIndex numChars, CFAllocatorRef contentsDeallocator);



extern
CFStringRef CFStringCreateWithSubstring(CFAllocatorRef alloc, CFStringRef str, CFRange range);

extern
CFStringRef CFStringCreateCopy(CFAllocatorRef alloc, CFStringRef theString);



extern
CFStringRef CFStringCreateWithFormat(CFAllocatorRef alloc, CFDictionaryRef formatOptions, CFStringRef format, ...) __attribute__((format(CFString, 3, 4)));

extern
CFStringRef CFStringCreateWithFormatAndArguments(CFAllocatorRef alloc, CFDictionaryRef formatOptions, CFStringRef format, va_list arguments) __attribute__((format(CFString, 3, 0)));



extern
CFMutableStringRef CFStringCreateMutable(CFAllocatorRef alloc, CFIndex maxLength);

extern
CFMutableStringRef CFStringCreateMutableCopy(CFAllocatorRef alloc, CFIndex maxLength, CFStringRef theString);







extern
CFMutableStringRef CFStringCreateMutableWithExternalCharactersNoCopy(CFAllocatorRef alloc, UniChar *chars, CFIndex numChars, CFIndex capacity, CFAllocatorRef externalCharactersAllocator);





extern
CFIndex CFStringGetLength(CFStringRef theString);






extern
UniChar CFStringGetCharacterAtIndex(CFStringRef theString, CFIndex idx);

extern
void CFStringGetCharacters(CFStringRef theString, CFRange range, UniChar *buffer);
extern
Boolean CFStringGetPascalString(CFStringRef theString, StringPtr buffer, CFIndex bufferSize, CFStringEncoding encoding);

extern
Boolean CFStringGetCString(CFStringRef theString, char *buffer, CFIndex bufferSize, CFStringEncoding encoding);






extern
ConstStringPtr CFStringGetPascalStringPtr(CFStringRef theString, CFStringEncoding encoding);

extern
const char *CFStringGetCStringPtr(CFStringRef theString, CFStringEncoding encoding);

extern
const UniChar *CFStringGetCharactersPtr(CFStringRef theString);
extern
CFIndex CFStringGetBytes(CFStringRef theString, CFRange range, CFStringEncoding encoding, UInt8 lossByte, Boolean isExternalRepresentation, UInt8 *buffer, CFIndex maxBufLen, CFIndex *usedBufLen);







extern
CFStringRef CFStringCreateFromExternalRepresentation(CFAllocatorRef alloc, CFDataRef data, CFStringEncoding encoding);

extern
CFDataRef CFStringCreateExternalRepresentation(CFAllocatorRef alloc, CFStringRef theString, CFStringEncoding encoding, UInt8 lossByte);



extern
CFStringEncoding CFStringGetSmallestEncoding(CFStringRef theString);

extern
CFStringEncoding CFStringGetFastestEncoding(CFStringRef theString);



extern
CFStringEncoding CFStringGetSystemEncoding(void);

extern
CFIndex CFStringGetMaximumSizeForEncoding(CFIndex length, CFStringEncoding encoding);






extern
Boolean CFStringGetFileSystemRepresentation(CFStringRef string, char *buffer, CFIndex maxBufLen);



extern
CFIndex CFStringGetMaximumSizeOfFileSystemRepresentation(CFStringRef string);



extern
CFStringRef CFStringCreateWithFileSystemRepresentation(CFAllocatorRef alloc, const char *buffer);






typedef CFOptionFlags CFStringCompareFlags; enum {
    kCFCompareCaseInsensitive = 1,
    kCFCompareBackwards = 4,
    kCFCompareAnchored = 8,
    kCFCompareNonliteral = 16,
    kCFCompareLocalized = 32,
    kCFCompareNumerically = 64,
    kCFCompareDiacriticInsensitive __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 128,
    kCFCompareWidthInsensitive __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 256,
    kCFCompareForcedOrdering __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 512
};







extern
CFComparisonResult CFStringCompareWithOptionsAndLocale(CFStringRef theString1, CFStringRef theString2, CFRange rangeToCompare, CFStringCompareFlags compareOptions, CFLocaleRef locale) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFComparisonResult CFStringCompareWithOptions(CFStringRef theString1, CFStringRef theString2, CFRange rangeToCompare, CFStringCompareFlags compareOptions);





extern
CFComparisonResult CFStringCompare(CFStringRef theString1, CFStringRef theString2, CFStringCompareFlags compareOptions);







extern
Boolean CFStringFindWithOptionsAndLocale(CFStringRef theString, CFStringRef stringToFind, CFRange rangeToSearch, CFStringCompareFlags searchOptions, CFLocaleRef locale, CFRange *result) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
Boolean CFStringFindWithOptions(CFStringRef theString, CFStringRef stringToFind, CFRange rangeToSearch, CFStringCompareFlags searchOptions, CFRange *result);
extern
CFArrayRef CFStringCreateArrayWithFindResults(CFAllocatorRef alloc, CFStringRef theString, CFStringRef stringToFind, CFRange rangeToSearch, CFStringCompareFlags compareOptions);



extern
CFRange CFStringFind(CFStringRef theString, CFStringRef stringToFind, CFStringCompareFlags compareOptions);

extern
Boolean CFStringHasPrefix(CFStringRef theString, CFStringRef prefix);

extern
Boolean CFStringHasSuffix(CFStringRef theString, CFStringRef suffix);
extern CFRange CFStringGetRangeOfComposedCharactersAtIndex(CFStringRef theString, CFIndex theIndex);
extern Boolean CFStringFindCharacterFromSet(CFStringRef theString, CFCharacterSetRef theSet, CFRange rangeToSearch, CFStringCompareFlags searchOptions, CFRange *result);
extern
void CFStringGetLineBounds(CFStringRef theString, CFRange range, CFIndex *lineBeginIndex, CFIndex *lineEndIndex, CFIndex *contentsEndIndex);



extern
void CFStringGetParagraphBounds(CFStringRef string, CFRange range, CFIndex *parBeginIndex, CFIndex *parEndIndex, CFIndex *contentsEndIndex) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFIndex CFStringGetHyphenationLocationBeforeIndex(CFStringRef string, CFIndex location, CFRange limitRange, CFOptionFlags options, CFLocaleRef locale, UTF32Char *character) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.2))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
Boolean CFStringIsHyphenationAvailableForLocale(CFLocaleRef locale) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFStringRef CFStringCreateByCombiningStrings(CFAllocatorRef alloc, CFArrayRef theArray, CFStringRef separatorString);

extern
CFArrayRef CFStringCreateArrayBySeparatingStrings(CFAllocatorRef alloc, CFStringRef theString, CFStringRef separatorString);




extern
SInt32 CFStringGetIntValue(CFStringRef str);

extern
double CFStringGetDoubleValue(CFStringRef str);
extern
void CFStringAppend(CFMutableStringRef theString, CFStringRef appendedString);

extern
void CFStringAppendCharacters(CFMutableStringRef theString, const UniChar *chars, CFIndex numChars);

extern
void CFStringAppendPascalString(CFMutableStringRef theString, ConstStr255Param pStr, CFStringEncoding encoding);

extern
void CFStringAppendCString(CFMutableStringRef theString, const char *cStr, CFStringEncoding encoding);

extern
void CFStringAppendFormat(CFMutableStringRef theString, CFDictionaryRef formatOptions, CFStringRef format, ...) __attribute__((format(CFString, 3, 4)));

extern
void CFStringAppendFormatAndArguments(CFMutableStringRef theString, CFDictionaryRef formatOptions, CFStringRef format, va_list arguments) __attribute__((format(CFString, 3, 0)));

extern
void CFStringInsert(CFMutableStringRef str, CFIndex idx, CFStringRef insertedStr);

extern
void CFStringDelete(CFMutableStringRef theString, CFRange range);

extern
void CFStringReplace(CFMutableStringRef theString, CFRange range, CFStringRef replacement);

extern
void CFStringReplaceAll(CFMutableStringRef theString, CFStringRef replacement);
extern
CFIndex CFStringFindAndReplace(CFMutableStringRef theString, CFStringRef stringToFind, CFStringRef replacementString, CFRange rangeToSearch, CFStringCompareFlags compareOptions);
extern
void CFStringSetExternalCharactersNoCopy(CFMutableStringRef theString, UniChar *chars, CFIndex length, CFIndex capacity);
extern
void CFStringPad(CFMutableStringRef theString, CFStringRef padString, CFIndex length, CFIndex indexIntoPad);

extern
void CFStringTrim(CFMutableStringRef theString, CFStringRef trimString);

extern
void CFStringTrimWhitespace(CFMutableStringRef theString);

extern
void CFStringLowercase(CFMutableStringRef theString, CFLocaleRef locale);

extern
void CFStringUppercase(CFMutableStringRef theString, CFLocaleRef locale);

extern
void CFStringCapitalize(CFMutableStringRef theString, CFLocaleRef locale);







typedef CFIndex CFStringNormalizationForm; enum {
 kCFStringNormalizationFormD = 0,
 kCFStringNormalizationFormKD,
 kCFStringNormalizationFormC,
 kCFStringNormalizationFormKC
};
extern void CFStringNormalize(CFMutableStringRef theString, CFStringNormalizationForm theForm);
extern
void CFStringFold(CFMutableStringRef theString, CFStringCompareFlags theFlags, CFLocaleRef theLocale) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern
Boolean CFStringTransform(CFMutableStringRef string, CFRange *range, CFStringRef transform, Boolean reverse);



extern const CFStringRef kCFStringTransformStripCombiningMarks;
extern const CFStringRef kCFStringTransformToLatin;
extern const CFStringRef kCFStringTransformFullwidthHalfwidth;
extern const CFStringRef kCFStringTransformLatinKatakana;
extern const CFStringRef kCFStringTransformLatinHiragana;
extern const CFStringRef kCFStringTransformHiraganaKatakana;
extern const CFStringRef kCFStringTransformMandarinLatin;
extern const CFStringRef kCFStringTransformLatinHangul;
extern const CFStringRef kCFStringTransformLatinArabic;
extern const CFStringRef kCFStringTransformLatinHebrew;
extern const CFStringRef kCFStringTransformLatinThai;
extern const CFStringRef kCFStringTransformLatinCyrillic;
extern const CFStringRef kCFStringTransformLatinGreek;
extern const CFStringRef kCFStringTransformToXMLHex;
extern const CFStringRef kCFStringTransformToUnicodeName;
extern const CFStringRef kCFStringTransformStripDiacritics __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






extern
Boolean CFStringIsEncodingAvailable(CFStringEncoding encoding);



extern
const CFStringEncoding *CFStringGetListOfAvailableEncodings(void);



extern
CFStringRef CFStringGetNameOfEncoding(CFStringEncoding encoding);



extern
unsigned long CFStringConvertEncodingToNSStringEncoding(CFStringEncoding encoding);

extern
CFStringEncoding CFStringConvertNSStringEncodingToEncoding(unsigned long encoding);



extern
UInt32 CFStringConvertEncodingToWindowsCodepage(CFStringEncoding encoding);

extern
CFStringEncoding CFStringConvertWindowsCodepageToEncoding(UInt32 codepage);



extern
CFStringEncoding CFStringConvertIANACharSetNameToEncoding(CFStringRef theString);

extern
CFStringRef CFStringConvertEncodingToIANACharSetName(CFStringEncoding encoding);





extern
CFStringEncoding CFStringGetMostCompatibleMacStringEncoding(CFStringEncoding encoding);
typedef struct {
    UniChar buffer[64];
    CFStringRef theString;
    const UniChar *directUniCharBuffer;
    const char *directCStringBuffer;
    CFRange rangeToBuffer;
    CFIndex bufferedRangeStart;
    CFIndex bufferedRangeEnd;
} CFStringInlineBuffer;


static __inline__ __attribute__((always_inline)) void CFStringInitInlineBuffer(CFStringRef str, CFStringInlineBuffer *buf, CFRange range) {
    buf->theString = str;
    buf->rangeToBuffer = range;
    buf->directCStringBuffer = (buf->directUniCharBuffer = CFStringGetCharactersPtr(str)) ? __null : CFStringGetCStringPtr(str, kCFStringEncodingASCII);
    buf->bufferedRangeStart = buf->bufferedRangeEnd = 0;
}

static __inline__ __attribute__((always_inline)) UniChar CFStringGetCharacterFromInlineBuffer(CFStringInlineBuffer *buf, CFIndex idx) {
    if (idx < 0 || idx >= buf->rangeToBuffer.length) return 0;
    if (buf->directUniCharBuffer) return buf->directUniCharBuffer[idx + buf->rangeToBuffer.location];
    if (buf->directCStringBuffer) return (UniChar)(buf->directCStringBuffer[idx + buf->rangeToBuffer.location]);
    if (idx >= buf->bufferedRangeEnd || idx < buf->bufferedRangeStart) {
 if ((buf->bufferedRangeStart = idx - 4) < 0) buf->bufferedRangeStart = 0;
 buf->bufferedRangeEnd = buf->bufferedRangeStart + 64;
 if (buf->bufferedRangeEnd > buf->rangeToBuffer.length) buf->bufferedRangeEnd = buf->rangeToBuffer.length;
 CFStringGetCharacters(buf->theString, CFRangeMake(buf->rangeToBuffer.location + buf->bufferedRangeStart, buf->bufferedRangeEnd - buf->bufferedRangeStart), buf->buffer);
    }
    return buf->buffer[idx - buf->bufferedRangeStart];
}
static __inline__ __attribute__((always_inline)) Boolean CFStringIsSurrogateHighCharacter(UniChar character) {
    return ((character >= 0xD800UL) && (character <= 0xDBFFUL) ? true : false);
}

static __inline__ __attribute__((always_inline)) Boolean CFStringIsSurrogateLowCharacter(UniChar character) {
    return ((character >= 0xDC00UL) && (character <= 0xDFFFUL) ? true : false);
}

static __inline__ __attribute__((always_inline)) UTF32Char CFStringGetLongCharacterForSurrogatePair(UniChar surrogateHigh, UniChar surrogateLow) {
    return (UTF32Char)(((surrogateHigh - 0xD800UL) << 10) + (surrogateLow - 0xDC00UL) + 0x0010000UL);
}


static __inline__ __attribute__((always_inline)) Boolean CFStringGetSurrogatePairForLongCharacter(UTF32Char character, UniChar *surrogates) {
    if ((character > 0xFFFFUL) && (character < 0x110000UL)) {
        character -= 0x10000;
        if (__null != surrogates) {
            surrogates[0] = (UniChar)((character >> 10) + 0xD800UL);
            surrogates[1] = (UniChar)((character & 0x3FF) + 0xDC00UL);
        }
        return true;
    } else {
        if (__null != surrogates) *surrogates = (UniChar)character;
        return false;
    }
}







extern
void CFShow(CFTypeRef obj);

extern
void CFShowStr(CFStringRef str);


extern
CFStringRef __CFStringMakeConstantString(const char *cStr) __attribute__((format_arg(1)));

}




extern "C" {

extern
CFTypeID CFTimeZoneGetTypeID(void);

extern
CFTimeZoneRef CFTimeZoneCopySystem(void);

extern
void CFTimeZoneResetSystem(void);

extern
CFTimeZoneRef CFTimeZoneCopyDefault(void);

extern
void CFTimeZoneSetDefault(CFTimeZoneRef tz);

extern
CFArrayRef CFTimeZoneCopyKnownNames(void);

extern
CFDictionaryRef CFTimeZoneCopyAbbreviationDictionary(void);

extern
void CFTimeZoneSetAbbreviationDictionary(CFDictionaryRef dict);

extern
CFTimeZoneRef CFTimeZoneCreate(CFAllocatorRef allocator, CFStringRef name, CFDataRef data);

extern
CFTimeZoneRef CFTimeZoneCreateWithTimeIntervalFromGMT(CFAllocatorRef allocator, CFTimeInterval ti);

extern
CFTimeZoneRef CFTimeZoneCreateWithName(CFAllocatorRef allocator, CFStringRef name, Boolean tryAbbrev);

extern
CFStringRef CFTimeZoneGetName(CFTimeZoneRef tz);

extern
CFDataRef CFTimeZoneGetData(CFTimeZoneRef tz);

extern
CFTimeInterval CFTimeZoneGetSecondsFromGMT(CFTimeZoneRef tz, CFAbsoluteTime at);

extern
CFStringRef CFTimeZoneCopyAbbreviation(CFTimeZoneRef tz, CFAbsoluteTime at);

extern
Boolean CFTimeZoneIsDaylightSavingTime(CFTimeZoneRef tz, CFAbsoluteTime at);

extern
CFTimeInterval CFTimeZoneGetDaylightSavingTimeOffset(CFTimeZoneRef tz, CFAbsoluteTime at) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
CFAbsoluteTime CFTimeZoneGetNextDaylightSavingTimeTransition(CFTimeZoneRef tz, CFAbsoluteTime at) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef CFIndex CFTimeZoneNameStyle; enum {
 kCFTimeZoneNameStyleStandard,
 kCFTimeZoneNameStyleShortStandard,
 kCFTimeZoneNameStyleDaylightSaving,
 kCFTimeZoneNameStyleShortDaylightSaving,
 kCFTimeZoneNameStyleGeneric,
 kCFTimeZoneNameStyleShortGeneric
} __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
CFStringRef CFTimeZoneCopyLocalizedName(CFTimeZoneRef tz, CFTimeZoneNameStyle style, CFLocaleRef locale) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
const CFNotificationName kCFTimeZoneSystemTimeZoneDidChangeNotification __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

}


extern "C" {

typedef struct __attribute__((objc_bridge_mutable(NSCalendar))) __CFCalendar * CFCalendarRef;

extern
CFTypeID CFCalendarGetTypeID(void);

extern
CFCalendarRef CFCalendarCopyCurrent(void);

extern
CFCalendarRef CFCalendarCreateWithIdentifier(CFAllocatorRef allocator, CFCalendarIdentifier identifier);



extern
CFCalendarIdentifier CFCalendarGetIdentifier(CFCalendarRef calendar);


extern
CFLocaleRef CFCalendarCopyLocale(CFCalendarRef calendar);

extern
void CFCalendarSetLocale(CFCalendarRef calendar, CFLocaleRef locale);

extern
CFTimeZoneRef CFCalendarCopyTimeZone(CFCalendarRef calendar);

extern
void CFCalendarSetTimeZone(CFCalendarRef calendar, CFTimeZoneRef tz);

extern
CFIndex CFCalendarGetFirstWeekday(CFCalendarRef calendar);

extern
void CFCalendarSetFirstWeekday(CFCalendarRef calendar, CFIndex wkdy);

extern
CFIndex CFCalendarGetMinimumDaysInFirstWeek(CFCalendarRef calendar);

extern
void CFCalendarSetMinimumDaysInFirstWeek(CFCalendarRef calendar, CFIndex mwd);


typedef CFOptionFlags CFCalendarUnit; enum {
 kCFCalendarUnitEra = (1UL << 1),
 kCFCalendarUnitYear = (1UL << 2),
 kCFCalendarUnitMonth = (1UL << 3),
 kCFCalendarUnitDay = (1UL << 4),
 kCFCalendarUnitHour = (1UL << 5),
 kCFCalendarUnitMinute = (1UL << 6),
 kCFCalendarUnitSecond = (1UL << 7),
 kCFCalendarUnitWeek __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="Use kCFCalendarUnitWeekOfYear or kCFCalendarUnitWeekOfMonth instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use kCFCalendarUnitWeekOfYear or kCFCalendarUnitWeekOfMonth instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use kCFCalendarUnitWeekOfYear or kCFCalendarUnitWeekOfMonth instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use kCFCalendarUnitWeekOfYear or kCFCalendarUnitWeekOfMonth instead"))) = (1UL << 8),
 kCFCalendarUnitWeekday = (1UL << 9),
 kCFCalendarUnitWeekdayOrdinal = (1UL << 10),
 kCFCalendarUnitQuarter __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1UL << 11),
 kCFCalendarUnitWeekOfMonth __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1UL << 12),
 kCFCalendarUnitWeekOfYear __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1UL << 13),
 kCFCalendarUnitYearForWeekOfYear __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1UL << 14),
};

extern
CFRange CFCalendarGetMinimumRangeOfUnit(CFCalendarRef calendar, CFCalendarUnit unit);

extern
CFRange CFCalendarGetMaximumRangeOfUnit(CFCalendarRef calendar, CFCalendarUnit unit);

extern
CFRange CFCalendarGetRangeOfUnit(CFCalendarRef calendar, CFCalendarUnit smallerUnit, CFCalendarUnit biggerUnit, CFAbsoluteTime at);

extern
CFIndex CFCalendarGetOrdinalityOfUnit(CFCalendarRef calendar, CFCalendarUnit smallerUnit, CFCalendarUnit biggerUnit, CFAbsoluteTime at);

extern
Boolean CFCalendarGetTimeRangeOfUnit(CFCalendarRef calendar, CFCalendarUnit unit, CFAbsoluteTime at, CFAbsoluteTime *startp, CFTimeInterval *tip) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
Boolean CFCalendarComposeAbsoluteTime(CFCalendarRef calendar, CFAbsoluteTime *at, const char *componentDesc, ...);

extern
Boolean CFCalendarDecomposeAbsoluteTime(CFCalendarRef calendar, CFAbsoluteTime at, const char *componentDesc, ...);


enum {
    kCFCalendarComponentsWrap = (1UL << 0)
};

extern
Boolean CFCalendarAddComponents(CFCalendarRef calendar, CFAbsoluteTime *at, CFOptionFlags options, const char *componentDesc, ...);

extern
Boolean CFCalendarGetComponentDifference(CFCalendarRef calendar, CFAbsoluteTime startingAT, CFAbsoluteTime resultAT, CFOptionFlags options, const char *componentDesc, ...);


}



extern "C" {

typedef CFStringRef CFDateFormatterKey __attribute__((swift_wrapper(enum)));

typedef struct __attribute__((objc_bridge_mutable(id))) __CFDateFormatter *CFDateFormatterRef;



extern
CFStringRef CFDateFormatterCreateDateFormatFromTemplate(CFAllocatorRef allocator, CFStringRef tmplate, CFOptionFlags options, CFLocaleRef locale) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
CFTypeID CFDateFormatterGetTypeID(void);
typedef CFIndex CFDateFormatterStyle; enum {
    kCFDateFormatterNoStyle = 0,
    kCFDateFormatterShortStyle = 1,
    kCFDateFormatterMediumStyle = 2,
    kCFDateFormatterLongStyle = 3,
    kCFDateFormatterFullStyle = 4
};

typedef CFOptionFlags CFISO8601DateFormatOptions; enum {




    kCFISO8601DateFormatWithYear __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = (1UL << 0),
    kCFISO8601DateFormatWithMonth __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = (1UL << 1),

    kCFISO8601DateFormatWithWeekOfYear __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = (1UL << 2),






    kCFISO8601DateFormatWithDay __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = (1UL << 4),

    kCFISO8601DateFormatWithTime __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = (1UL << 5),
    kCFISO8601DateFormatWithTimeZone __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = (1UL << 6),

    kCFISO8601DateFormatWithSpaceBetweenDateAndTime __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = (1UL << 7),
    kCFISO8601DateFormatWithDashSeparatorInDate __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = (1UL << 8),
    kCFISO8601DateFormatWithColonSeparatorInTime __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = (1UL << 9),
    kCFISO8601DateFormatWithColonSeparatorInTimeZone __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = (1UL << 10),
    kCFISO8601DateFormatWithFractionalSeconds __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) = (1UL << 11),

    kCFISO8601DateFormatWithFullDate __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithYear | kCFISO8601DateFormatWithMonth | kCFISO8601DateFormatWithDay | kCFISO8601DateFormatWithDashSeparatorInDate,
    kCFISO8601DateFormatWithFullTime __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithTime | kCFISO8601DateFormatWithColonSeparatorInTime | kCFISO8601DateFormatWithTimeZone | kCFISO8601DateFormatWithColonSeparatorInTimeZone,

    kCFISO8601DateFormatWithInternetDateTime __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithFullDate | kCFISO8601DateFormatWithFullTime,
};

extern
CFDateFormatterRef CFDateFormatterCreateISO8601Formatter(CFAllocatorRef allocator, CFISO8601DateFormatOptions formatOptions) __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

extern
CFDateFormatterRef CFDateFormatterCreate(CFAllocatorRef allocator, CFLocaleRef locale, CFDateFormatterStyle dateStyle, CFDateFormatterStyle timeStyle);



extern
CFLocaleRef CFDateFormatterGetLocale(CFDateFormatterRef formatter);

extern
CFDateFormatterStyle CFDateFormatterGetDateStyle(CFDateFormatterRef formatter);

extern
CFDateFormatterStyle CFDateFormatterGetTimeStyle(CFDateFormatterRef formatter);


extern
CFStringRef CFDateFormatterGetFormat(CFDateFormatterRef formatter);

extern
void CFDateFormatterSetFormat(CFDateFormatterRef formatter, CFStringRef formatString);







extern
CFStringRef CFDateFormatterCreateStringWithDate(CFAllocatorRef allocator, CFDateFormatterRef formatter, CFDateRef date);

extern
CFStringRef CFDateFormatterCreateStringWithAbsoluteTime(CFAllocatorRef allocator, CFDateFormatterRef formatter, CFAbsoluteTime at);




extern
CFDateRef CFDateFormatterCreateDateFromString(CFAllocatorRef allocator, CFDateFormatterRef formatter, CFStringRef string, CFRange *rangep);

extern
Boolean CFDateFormatterGetAbsoluteTimeFromString(CFDateFormatterRef formatter, CFStringRef string, CFRange *rangep, CFAbsoluteTime *atp);
extern
void CFDateFormatterSetProperty(CFDateFormatterRef formatter, CFStringRef key, CFTypeRef value);

extern
CFTypeRef CFDateFormatterCopyProperty(CFDateFormatterRef formatter, CFDateFormatterKey key);



extern const CFDateFormatterKey kCFDateFormatterIsLenient;
extern const CFDateFormatterKey kCFDateFormatterTimeZone;
extern const CFDateFormatterKey kCFDateFormatterCalendarName;
extern const CFDateFormatterKey kCFDateFormatterDefaultFormat;
extern const CFDateFormatterKey kCFDateFormatterTwoDigitStartDate;
extern const CFDateFormatterKey kCFDateFormatterDefaultDate;
extern const CFDateFormatterKey kCFDateFormatterCalendar;
extern const CFDateFormatterKey kCFDateFormatterEraSymbols;
extern const CFDateFormatterKey kCFDateFormatterMonthSymbols;
extern const CFDateFormatterKey kCFDateFormatterShortMonthSymbols;
extern const CFDateFormatterKey kCFDateFormatterWeekdaySymbols;
extern const CFDateFormatterKey kCFDateFormatterShortWeekdaySymbols;
extern const CFDateFormatterKey kCFDateFormatterAMSymbol;
extern const CFDateFormatterKey kCFDateFormatterPMSymbol;
extern const CFDateFormatterKey kCFDateFormatterLongEraSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterVeryShortMonthSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterStandaloneMonthSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterShortStandaloneMonthSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterVeryShortStandaloneMonthSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterVeryShortWeekdaySymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterStandaloneWeekdaySymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterShortStandaloneWeekdaySymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterVeryShortStandaloneWeekdaySymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterQuarterSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterShortQuarterSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterStandaloneQuarterSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterShortStandaloneQuarterSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterGregorianStartDate __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFDateFormatterKey kCFDateFormatterDoesRelativeDateFormattingKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
}

extern "C" {

typedef CFStringRef CFErrorDomain __attribute__((swift_wrapper(struct)));





typedef struct __attribute__((objc_bridge(NSError))) __CFError * CFErrorRef;





extern
CFTypeID CFErrorGetTypeID(void) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern const CFErrorDomain kCFErrorDomainPOSIX __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFErrorDomain kCFErrorDomainOSStatus __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFErrorDomain kCFErrorDomainMach __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFErrorDomain kCFErrorDomainCocoa __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern const CFStringRef kCFErrorLocalizedDescriptionKey __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFStringRef kCFErrorLocalizedFailureKey __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
extern const CFStringRef kCFErrorLocalizedFailureReasonKey __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFStringRef kCFErrorLocalizedRecoverySuggestionKey __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern const CFStringRef kCFErrorDescriptionKey __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern const CFStringRef kCFErrorUnderlyingErrorKey __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFStringRef kCFErrorURLKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFStringRef kCFErrorFilePathKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFErrorRef CFErrorCreate(CFAllocatorRef allocator, CFErrorDomain domain, CFIndex code, CFDictionaryRef userInfo) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFErrorRef CFErrorCreateWithUserInfoKeysAndValues(CFAllocatorRef allocator, CFErrorDomain domain, CFIndex code, const void *const *userInfoKeys, const void *const *userInfoValues, CFIndex numUserInfoValues) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







extern
CFErrorDomain CFErrorGetDomain(CFErrorRef err) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







extern
CFIndex CFErrorGetCode(CFErrorRef err) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFDictionaryRef CFErrorCopyUserInfo(CFErrorRef err) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFStringRef CFErrorCopyDescription(CFErrorRef err) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFStringRef CFErrorCopyFailureReason(CFErrorRef err) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFStringRef CFErrorCopyRecoverySuggestion(CFErrorRef err) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



}

extern "C" {

typedef const struct __attribute__((objc_bridge(NSNumber))) __CFBoolean * CFBooleanRef;

extern
const CFBooleanRef kCFBooleanTrue;
extern
const CFBooleanRef kCFBooleanFalse;

extern
CFTypeID CFBooleanGetTypeID(void);

extern
Boolean CFBooleanGetValue(CFBooleanRef boolean);

typedef CFIndex CFNumberType; enum {

    kCFNumberSInt8Type = 1,
    kCFNumberSInt16Type = 2,
    kCFNumberSInt32Type = 3,
    kCFNumberSInt64Type = 4,
    kCFNumberFloat32Type = 5,
    kCFNumberFloat64Type = 6,

    kCFNumberCharType = 7,
    kCFNumberShortType = 8,
    kCFNumberIntType = 9,
    kCFNumberLongType = 10,
    kCFNumberLongLongType = 11,
    kCFNumberFloatType = 12,
    kCFNumberDoubleType = 13,

    kCFNumberCFIndexType = 14,
    kCFNumberNSIntegerType __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 15,
    kCFNumberCGFloatType __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 16,
    kCFNumberMaxType = 16
};

typedef const struct __attribute__((objc_bridge(NSNumber))) __CFNumber * CFNumberRef;

extern
const CFNumberRef kCFNumberPositiveInfinity;
extern
const CFNumberRef kCFNumberNegativeInfinity;
extern
const CFNumberRef kCFNumberNaN;

extern
CFTypeID CFNumberGetTypeID(void);
extern
CFNumberRef CFNumberCreate(CFAllocatorRef allocator, CFNumberType theType, const void *valuePtr);





extern
CFNumberType CFNumberGetType(CFNumberRef number);




extern
CFIndex CFNumberGetByteSize(CFNumberRef number);





extern
Boolean CFNumberIsFloatType(CFNumberRef number);
extern
Boolean CFNumberGetValue(CFNumberRef number, CFNumberType theType, void *valuePtr);
extern
CFComparisonResult CFNumberCompare(CFNumberRef number, CFNumberRef otherNumber, void *context);

}
extern "C" {

typedef CFStringRef CFNumberFormatterKey __attribute__((swift_wrapper(enum)));

typedef struct __attribute__((objc_bridge_mutable(id))) __CFNumberFormatter *CFNumberFormatterRef;



extern
CFTypeID CFNumberFormatterGetTypeID(void);

typedef CFIndex CFNumberFormatterStyle; enum {
 kCFNumberFormatterNoStyle = 0,
 kCFNumberFormatterDecimalStyle = 1,
 kCFNumberFormatterCurrencyStyle = 2,
 kCFNumberFormatterPercentStyle = 3,
 kCFNumberFormatterScientificStyle = 4,
 kCFNumberFormatterSpellOutStyle = 5,
 kCFNumberFormatterOrdinalStyle __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 6,
 kCFNumberFormatterCurrencyISOCodeStyle __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 8,
 kCFNumberFormatterCurrencyPluralStyle __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 9,
 kCFNumberFormatterCurrencyAccountingStyle __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 10,
};


extern
CFNumberFormatterRef CFNumberFormatterCreate(CFAllocatorRef allocator, CFLocaleRef locale, CFNumberFormatterStyle style);



extern
CFLocaleRef CFNumberFormatterGetLocale(CFNumberFormatterRef formatter);

extern
CFNumberFormatterStyle CFNumberFormatterGetStyle(CFNumberFormatterRef formatter);


extern
CFStringRef CFNumberFormatterGetFormat(CFNumberFormatterRef formatter);

extern
void CFNumberFormatterSetFormat(CFNumberFormatterRef formatter, CFStringRef formatString);
extern
CFStringRef CFNumberFormatterCreateStringWithNumber(CFAllocatorRef allocator, CFNumberFormatterRef formatter, CFNumberRef number);

extern
CFStringRef CFNumberFormatterCreateStringWithValue(CFAllocatorRef allocator, CFNumberFormatterRef formatter, CFNumberType numberType, const void *valuePtr);




typedef CFOptionFlags CFNumberFormatterOptionFlags; enum {
    kCFNumberFormatterParseIntegersOnly = 1
};

extern
CFNumberRef CFNumberFormatterCreateNumberFromString(CFAllocatorRef allocator, CFNumberFormatterRef formatter, CFStringRef string, CFRange *rangep, CFOptionFlags options);

extern
Boolean CFNumberFormatterGetValueFromString(CFNumberFormatterRef formatter, CFStringRef string, CFRange *rangep, CFNumberType numberType, void *valuePtr);
extern
void CFNumberFormatterSetProperty(CFNumberFormatterRef formatter, CFNumberFormatterKey key, CFTypeRef value);

extern
CFTypeRef CFNumberFormatterCopyProperty(CFNumberFormatterRef formatter, CFNumberFormatterKey key);



extern const CFNumberFormatterKey kCFNumberFormatterCurrencyCode;
extern const CFNumberFormatterKey kCFNumberFormatterDecimalSeparator;
extern const CFNumberFormatterKey kCFNumberFormatterCurrencyDecimalSeparator;
extern const CFNumberFormatterKey kCFNumberFormatterAlwaysShowDecimalSeparator;
extern const CFNumberFormatterKey kCFNumberFormatterGroupingSeparator;
extern const CFNumberFormatterKey kCFNumberFormatterUseGroupingSeparator;
extern const CFNumberFormatterKey kCFNumberFormatterPercentSymbol;
extern const CFNumberFormatterKey kCFNumberFormatterZeroSymbol;
extern const CFNumberFormatterKey kCFNumberFormatterNaNSymbol;
extern const CFNumberFormatterKey kCFNumberFormatterInfinitySymbol;
extern const CFNumberFormatterKey kCFNumberFormatterMinusSign;
extern const CFNumberFormatterKey kCFNumberFormatterPlusSign;
extern const CFNumberFormatterKey kCFNumberFormatterCurrencySymbol;
extern const CFNumberFormatterKey kCFNumberFormatterExponentSymbol;
extern const CFNumberFormatterKey kCFNumberFormatterMinIntegerDigits;
extern const CFNumberFormatterKey kCFNumberFormatterMaxIntegerDigits;
extern const CFNumberFormatterKey kCFNumberFormatterMinFractionDigits;
extern const CFNumberFormatterKey kCFNumberFormatterMaxFractionDigits;
extern const CFNumberFormatterKey kCFNumberFormatterGroupingSize;
extern const CFNumberFormatterKey kCFNumberFormatterSecondaryGroupingSize;
extern const CFNumberFormatterKey kCFNumberFormatterRoundingMode;
extern const CFNumberFormatterKey kCFNumberFormatterRoundingIncrement;
extern const CFNumberFormatterKey kCFNumberFormatterFormatWidth;
extern const CFNumberFormatterKey kCFNumberFormatterPaddingPosition;
extern const CFNumberFormatterKey kCFNumberFormatterPaddingCharacter;
extern const CFNumberFormatterKey kCFNumberFormatterDefaultFormat;
extern const CFNumberFormatterKey kCFNumberFormatterMultiplier;
extern const CFNumberFormatterKey kCFNumberFormatterPositivePrefix;
extern const CFNumberFormatterKey kCFNumberFormatterPositiveSuffix;
extern const CFNumberFormatterKey kCFNumberFormatterNegativePrefix;
extern const CFNumberFormatterKey kCFNumberFormatterNegativeSuffix;
extern const CFNumberFormatterKey kCFNumberFormatterPerMillSymbol;
extern const CFNumberFormatterKey kCFNumberFormatterInternationalCurrencySymbol;
extern const CFNumberFormatterKey kCFNumberFormatterCurrencyGroupingSeparator __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFNumberFormatterKey kCFNumberFormatterIsLenient __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFNumberFormatterKey kCFNumberFormatterUseSignificantDigits __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFNumberFormatterKey kCFNumberFormatterMinSignificantDigits __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern const CFNumberFormatterKey kCFNumberFormatterMaxSignificantDigits __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef CFIndex CFNumberFormatterRoundingMode; enum {
    kCFNumberFormatterRoundCeiling = 0,
    kCFNumberFormatterRoundFloor = 1,
    kCFNumberFormatterRoundDown = 2,
    kCFNumberFormatterRoundUp = 3,
    kCFNumberFormatterRoundHalfEven = 4,
    kCFNumberFormatterRoundHalfDown = 5,
    kCFNumberFormatterRoundHalfUp = 6
};

typedef CFIndex CFNumberFormatterPadPosition; enum {
    kCFNumberFormatterPadBeforePrefix = 0,
    kCFNumberFormatterPadAfterPrefix = 1,
    kCFNumberFormatterPadBeforeSuffix = 2,
    kCFNumberFormatterPadAfterSuffix = 3
};


extern
Boolean CFNumberFormatterGetDecimalInfoForCurrencyCode(CFStringRef currencyCode, int32_t *defaultFractionDigits, double *roundingIncrement);






}
#pragma clang assume_nonnull begin
extern "C" {

extern
const CFStringRef kCFPreferencesAnyApplication;
extern
const CFStringRef kCFPreferencesCurrentApplication;
extern
const CFStringRef kCFPreferencesAnyHost;
extern
const CFStringRef kCFPreferencesCurrentHost;
extern
const CFStringRef kCFPreferencesAnyUser;
extern
const CFStringRef kCFPreferencesCurrentUser;
extern
_Nullable CFPropertyListRef CFPreferencesCopyAppValue(CFStringRef key, CFStringRef applicationID);




extern
Boolean CFPreferencesGetAppBooleanValue(CFStringRef key, CFStringRef applicationID, Boolean * _Nullable keyExistsAndHasValidFormat);




extern
CFIndex CFPreferencesGetAppIntegerValue(CFStringRef key, CFStringRef applicationID, Boolean * _Nullable keyExistsAndHasValidFormat);




extern
void CFPreferencesSetAppValue(CFStringRef key, _Nullable CFPropertyListRef value, CFStringRef applicationID);





extern
void CFPreferencesAddSuitePreferencesToApp(CFStringRef applicationID, CFStringRef suiteID);

extern
void CFPreferencesRemoveSuitePreferencesFromApp(CFStringRef applicationID, CFStringRef suiteID);



extern
Boolean CFPreferencesAppSynchronize(CFStringRef applicationID);





extern
_Nullable CFPropertyListRef CFPreferencesCopyValue(CFStringRef key, CFStringRef applicationID, CFStringRef userName, CFStringRef hostName);





extern
CFDictionaryRef CFPreferencesCopyMultiple(_Nullable CFArrayRef keysToFetch, CFStringRef applicationID, CFStringRef userName, CFStringRef hostName);



extern
void CFPreferencesSetValue(CFStringRef key, _Nullable CFPropertyListRef value, CFStringRef applicationID, CFStringRef userName, CFStringRef hostName);



extern
void CFPreferencesSetMultiple(_Nullable CFDictionaryRef keysToSet, _Nullable CFArrayRef keysToRemove, CFStringRef applicationID, CFStringRef userName, CFStringRef hostName);

extern
Boolean CFPreferencesSynchronize(CFStringRef applicationID, CFStringRef userName, CFStringRef hostName);





extern
_Nullable CFArrayRef CFPreferencesCopyApplicationList(CFStringRef userName, CFStringRef hostName) __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Unsupported API"))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Unsupported API"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Unsupported API"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Unsupported API")));




extern
_Nullable CFArrayRef CFPreferencesCopyKeyList(CFStringRef applicationID, CFStringRef userName, CFStringRef hostName);







extern
Boolean CFPreferencesAppValueIsForced(CFStringRef key, CFStringRef applicationID);



}
#pragma clang assume_nonnull end
extern "C" {

typedef CFIndex CFURLPathStyle; enum {
    kCFURLPOSIXPathStyle = 0,
    kCFURLHFSPathStyle __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Carbon File Manager is deprecated, use kCFURLPOSIXPathStyle where possible"))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Carbon File Manager is deprecated, use kCFURLPOSIXPathStyle where possible"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Carbon File Manager is deprecated, use kCFURLPOSIXPathStyle where possible"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Carbon File Manager is deprecated, use kCFURLPOSIXPathStyle where possible"))),
    kCFURLWindowsPathStyle
};

typedef const struct __attribute__((objc_bridge(NSURL))) __CFURL * CFURLRef;
extern
CFTypeID CFURLGetTypeID(void);
extern
CFURLRef CFURLCreateWithBytes(CFAllocatorRef allocator, const UInt8 *URLBytes, CFIndex length, CFStringEncoding encoding, CFURLRef baseURL);





extern
CFDataRef CFURLCreateData(CFAllocatorRef allocator, CFURLRef url, CFStringEncoding encoding, Boolean escapeWhitespace);


extern
CFURLRef CFURLCreateWithString(CFAllocatorRef allocator, CFStringRef URLString, CFURLRef baseURL);
extern
CFURLRef CFURLCreateAbsoluteURLWithBytes(CFAllocatorRef alloc, const UInt8 *relativeURLBytes, CFIndex length, CFStringEncoding encoding, CFURLRef baseURL, Boolean useCompatibilityMode);







extern
CFURLRef CFURLCreateWithFileSystemPath(CFAllocatorRef allocator, CFStringRef filePath, CFURLPathStyle pathStyle, Boolean isDirectory);

extern
CFURLRef CFURLCreateFromFileSystemRepresentation(CFAllocatorRef allocator, const UInt8 *buffer, CFIndex bufLen, Boolean isDirectory);







extern
CFURLRef CFURLCreateWithFileSystemPathRelativeToBase(CFAllocatorRef allocator, CFStringRef filePath, CFURLPathStyle pathStyle, Boolean isDirectory, CFURLRef baseURL);

extern
CFURLRef CFURLCreateFromFileSystemRepresentationRelativeToBase(CFAllocatorRef allocator, const UInt8 *buffer, CFIndex bufLen, Boolean isDirectory, CFURLRef baseURL);
extern
Boolean CFURLGetFileSystemRepresentation(CFURLRef url, Boolean resolveAgainstBase, UInt8 *buffer, CFIndex maxBufLen);


extern
CFURLRef CFURLCopyAbsoluteURL(CFURLRef relativeURL);


extern
CFStringRef CFURLGetString(CFURLRef anURL);


extern
CFURLRef CFURLGetBaseURL(CFURLRef anURL);
extern
Boolean CFURLCanBeDecomposed(CFURLRef anURL);

extern
CFStringRef CFURLCopyScheme(CFURLRef anURL);


extern
CFStringRef CFURLCopyNetLocation(CFURLRef anURL);
extern
CFStringRef CFURLCopyPath(CFURLRef anURL);


extern
CFStringRef CFURLCopyStrictPath(CFURLRef anURL, Boolean *isAbsolute);




extern
CFStringRef CFURLCopyFileSystemPath(CFURLRef anURL, CFURLPathStyle pathStyle);



extern
Boolean CFURLHasDirectoryPath(CFURLRef anURL);




extern
CFStringRef CFURLCopyResourceSpecifier(CFURLRef anURL);


extern
CFStringRef CFURLCopyHostName(CFURLRef anURL);

extern
SInt32 CFURLGetPortNumber(CFURLRef anURL);


extern
CFStringRef CFURLCopyUserName(CFURLRef anURL);


extern
CFStringRef CFURLCopyPassword(CFURLRef anURL);







extern
CFStringRef CFURLCopyParameterString(CFURLRef anURL, CFStringRef charactersToLeaveEscaped) __attribute__((availability(macosx,introduced=10.2,deprecated=10.15,message="The CFURLCopyParameterString function is deprecated. Post deprecation for applications linked with or after the macOS 10.15, and for all iOS, watchOS, and tvOS applications, CFURLCopyParameterString will always return NULL, and the CFURLCopyPath(), CFURLCopyStrictPath(), and CFURLCopyFileSystemPath() functions will return the complete path including the semicolon separator and params component if the URL string contains them."))) __attribute__((availability(ios,introduced=2.0,deprecated=13.0,message="The CFURLCopyParameterString function is deprecated. Post deprecation for applications linked with or after the macOS 10.15, and for all iOS, watchOS, and tvOS applications, CFURLCopyParameterString will always return NULL, and the CFURLCopyPath(), CFURLCopyStrictPath(), and CFURLCopyFileSystemPath() functions will return the complete path including the semicolon separator and params component if the URL string contains them."))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="The CFURLCopyParameterString function is deprecated. Post deprecation for applications linked with or after the macOS 10.15, and for all iOS, watchOS, and tvOS applications, CFURLCopyParameterString will always return NULL, and the CFURLCopyPath(), CFURLCopyStrictPath(), and CFURLCopyFileSystemPath() functions will return the complete path including the semicolon separator and params component if the URL string contains them."))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="The CFURLCopyParameterString function is deprecated. Post deprecation for applications linked with or after the macOS 10.15, and for all iOS, watchOS, and tvOS applications, CFURLCopyParameterString will always return NULL, and the CFURLCopyPath(), CFURLCopyStrictPath(), and CFURLCopyFileSystemPath() functions will return the complete path including the semicolon separator and params component if the URL string contains them.")));
extern
CFStringRef CFURLCopyQueryString(CFURLRef anURL, CFStringRef charactersToLeaveEscaped);

extern
CFStringRef CFURLCopyFragment(CFURLRef anURL, CFStringRef charactersToLeaveEscaped);


extern
CFStringRef CFURLCopyLastPathComponent(CFURLRef url);


extern
CFStringRef CFURLCopyPathExtension(CFURLRef url);

extern
CFURLRef CFURLCreateCopyAppendingPathComponent(CFAllocatorRef allocator, CFURLRef url, CFStringRef pathComponent, Boolean isDirectory);

extern
CFURLRef CFURLCreateCopyDeletingLastPathComponent(CFAllocatorRef allocator, CFURLRef url);

extern
CFURLRef CFURLCreateCopyAppendingPathExtension(CFAllocatorRef allocator, CFURLRef url, CFStringRef extension);

extern
CFURLRef CFURLCreateCopyDeletingPathExtension(CFAllocatorRef allocator, CFURLRef url);







extern
CFIndex CFURLGetBytes(CFURLRef url, UInt8 *buffer, CFIndex bufferLength);

typedef CFIndex CFURLComponentType; enum {
 kCFURLComponentScheme = 1,
 kCFURLComponentNetLocation = 2,
 kCFURLComponentPath = 3,
 kCFURLComponentResourceSpecifier = 4,

 kCFURLComponentUser = 5,
 kCFURLComponentPassword = 6,
 kCFURLComponentUserInfo = 7,
 kCFURLComponentHost = 8,
 kCFURLComponentPort = 9,
 kCFURLComponentParameterString = 10,
 kCFURLComponentQuery = 11,
 kCFURLComponentFragment = 12
};
extern
CFRange CFURLGetByteRangeForComponent(CFURLRef url, CFURLComponentType component, CFRange *rangeIncludingSeparators);
extern
CFStringRef CFURLCreateStringByReplacingPercentEscapes(CFAllocatorRef allocator, CFStringRef originalString, CFStringRef charactersToLeaveEscaped);


extern
CFStringRef CFURLCreateStringByReplacingPercentEscapesUsingEncoding(CFAllocatorRef allocator, CFStringRef origString, CFStringRef charsToLeaveEscaped, CFStringEncoding encoding) __attribute__((availability(macos,introduced=10.0,deprecated=10.11,message="Use [NSString stringByRemovingPercentEncoding] or CFURLCreateStringByReplacingPercentEscapes() instead, which always uses the recommended UTF-8 encoding."))) __attribute__((availability(ios,introduced=2.0,deprecated=9.0,message="Use [NSString stringByRemovingPercentEncoding] or CFURLCreateStringByReplacingPercentEscapes() instead, which always uses the recommended UTF-8 encoding."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use [NSString stringByRemovingPercentEncoding] or CFURLCreateStringByReplacingPercentEscapes() instead, which always uses the recommended UTF-8 encoding."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use [NSString stringByRemovingPercentEncoding] or CFURLCreateStringByReplacingPercentEscapes() instead, which always uses the recommended UTF-8 encoding.")));
extern
CFStringRef CFURLCreateStringByAddingPercentEscapes(CFAllocatorRef allocator, CFStringRef originalString, CFStringRef charactersToLeaveUnescaped, CFStringRef legalURLCharactersToBeEscaped, CFStringEncoding encoding) __attribute__((availability(macos,introduced=10.0,deprecated=10.11,message="Use [NSString stringByAddingPercentEncodingWithAllowedCharacters:] instead, which always uses the recommended UTF-8 encoding, and which encodes for a specific URL component or subcomponent (since each URL component or subcomponent has different rules for what characters are valid)."))) __attribute__((availability(ios,introduced=2.0,deprecated=9.0,message="Use [NSString stringByAddingPercentEncodingWithAllowedCharacters:] instead, which always uses the recommended UTF-8 encoding, and which encodes for a specific URL component or subcomponent (since each URL component or subcomponent has different rules for what characters are valid)."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use [NSString stringByAddingPercentEncodingWithAllowedCharacters:] instead, which always uses the recommended UTF-8 encoding, and which encodes for a specific URL component or subcomponent (since each URL component or subcomponent has different rules for what characters are valid)."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use [NSString stringByAddingPercentEncodingWithAllowedCharacters:] instead, which always uses the recommended UTF-8 encoding, and which encodes for a specific URL component or subcomponent (since each URL component or subcomponent has different rules for what characters are valid).")));
extern
Boolean CFURLIsFileReferenceURL(CFURLRef url) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFURLRef CFURLCreateFileReferenceURL(CFAllocatorRef allocator, CFURLRef url, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFURLRef CFURLCreateFilePathURL(CFAllocatorRef allocator, CFURLRef url, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







struct FSRef;



extern
CFURLRef CFURLCreateFromFSRef(CFAllocatorRef allocator, const struct FSRef *fsRef) __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Not supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported")));

extern
Boolean CFURLGetFSRef(CFURLRef url, struct FSRef *fsRef) __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Not supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported")));
extern
Boolean CFURLCopyResourcePropertyForKey(CFURLRef url, CFStringRef key, void *propertyValueTypeRefPtr, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFDictionaryRef CFURLCopyResourcePropertiesForKeys(CFURLRef url, CFArrayRef keys, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFURLSetResourcePropertyForKey(CFURLRef url, CFStringRef key, CFTypeRef propertyValue, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFURLSetResourcePropertiesForKeys(CFURLRef url, CFDictionaryRef keyedPropertyValues, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLKeysOfUnsetValuesKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
void CFURLClearResourcePropertyCacheForKey(CFURLRef url, CFStringRef key) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
void CFURLClearResourcePropertyCache(CFURLRef url) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
void CFURLSetTemporaryResourcePropertyForKey(CFURLRef url, CFStringRef key, CFTypeRef propertyValue) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFURLResourceIsReachable(CFURLRef url, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






extern
const CFStringRef kCFURLNameKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLLocalizedNameKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsRegularFileKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsDirectoryKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsSymbolicLinkKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsVolumeKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsPackageKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsApplicationKey __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLApplicationIsScriptableKey __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));


extern
const CFStringRef kCFURLIsSystemImmutableKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsUserImmutableKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsHiddenKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLHasHiddenExtensionKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLCreationDateKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLContentAccessDateKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLContentModificationDateKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLAttributeModificationDateKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLLinkCountKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLParentDirectoryURLKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeURLKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLTypeIdentifierKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLLocalizedTypeDescriptionKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLLabelNumberKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLLabelColorKey __attribute__((availability(macosx,introduced=10.6,deprecated=10.12,message="Use NSURLLabelColorKey"))) __attribute__((availability(ios,introduced=4.0,deprecated=10.0,message="Use NSURLLabelColorKey"))) __attribute__((availability(watchos,introduced=2.0,deprecated=3.0,message="Use NSURLLabelColorKey"))) __attribute__((availability(tvos,introduced=9.0,deprecated=10.0,message="Use NSURLLabelColorKey")));


extern
const CFStringRef kCFURLLocalizedLabelKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLEffectiveIconKey __attribute__((availability(macosx,introduced=10.6,deprecated=10.12,message="Use NSURLEffectiveIconKey"))) __attribute__((availability(ios,introduced=4.0,deprecated=10.0,message="Use NSURLEffectiveIconKey"))) __attribute__((availability(watchos,introduced=2.0,deprecated=3.0,message="Use NSURLEffectiveIconKey"))) __attribute__((availability(tvos,introduced=9.0,deprecated=10.0,message="Use NSURLEffectiveIconKey")));


extern
const CFStringRef kCFURLCustomIconKey __attribute__((availability(macosx,introduced=10.6,deprecated=10.12,message="Use NSURLCustomIconKey"))) __attribute__((availability(ios,introduced=4.0,deprecated=10.0,message="Use NSURLCustomIconKey"))) __attribute__((availability(watchos,introduced=2.0,deprecated=3.0,message="Use NSURLCustomIconKey"))) __attribute__((availability(tvos,introduced=9.0,deprecated=10.0,message="Use NSURLCustomIconKey")));


extern
const CFStringRef kCFURLFileResourceIdentifierKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeIdentifierKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLPreferredIOBlockSizeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsReadableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsWritableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsExecutableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLFileSecurityKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsExcludedFromBackupKey __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=5.1))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLTagNamesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));


extern
const CFStringRef kCFURLPathKey __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLCanonicalPathKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));


extern
const CFStringRef kCFURLIsMountTriggerKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLGenerationIdentifierKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLDocumentIdentifierKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLAddedToDirectoryDateKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLQuarantinePropertiesKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));


extern
const CFStringRef kCFURLFileResourceTypeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
const CFStringRef kCFURLFileResourceTypeNamedPipe __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
const CFStringRef kCFURLFileResourceTypeCharacterSpecial __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
const CFStringRef kCFURLFileResourceTypeDirectory __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
const CFStringRef kCFURLFileResourceTypeBlockSpecial __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
const CFStringRef kCFURLFileResourceTypeRegular __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
const CFStringRef kCFURLFileResourceTypeSymbolicLink __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
const CFStringRef kCFURLFileResourceTypeSocket __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
const CFStringRef kCFURLFileResourceTypeUnknown __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
const CFStringRef kCFURLFileSizeKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLFileAllocatedSizeKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLTotalFileSizeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLTotalFileAllocatedSizeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLIsAliasFileKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLFileProtectionKey __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));



extern
const CFStringRef kCFURLFileProtectionNone __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

extern
const CFStringRef kCFURLFileProtectionComplete __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

extern
const CFStringRef kCFURLFileProtectionCompleteUnlessOpen __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

extern
const CFStringRef kCFURLFileProtectionCompleteUntilFirstUserAuthentication __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));





extern
const CFStringRef kCFURLVolumeLocalizedFormatDescriptionKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeTotalCapacityKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeAvailableCapacityKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeAvailableCapacityForImportantUsageKey __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));






extern
const CFStringRef kCFURLVolumeAvailableCapacityForOpportunisticUsageKey __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));




extern
const CFStringRef kCFURLVolumeResourceCountKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsPersistentIDsKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsSymbolicLinksKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsHardLinksKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsJournalingKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeIsJournalingKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsSparseFilesKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsZeroRunsKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsCaseSensitiveNamesKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsCasePreservedNamesKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsRootDirectoryDatesKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsVolumeSizesKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsRenamingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsAdvisoryFileLockingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeSupportsExtendedSecurityKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeIsBrowsableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeMaximumFileSizeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeIsEjectableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeIsRemovableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeIsInternalKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeIsAutomountedKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeIsLocalKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeIsReadOnlyKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeCreationDateKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeURLForRemountingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeUUIDStringKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeNameKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeLocalizedNameKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLVolumeIsEncryptedKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));


extern
const CFStringRef kCFURLVolumeIsRootFileSystemKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));


extern
const CFStringRef kCFURLVolumeSupportsCompressionKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));


extern
const CFStringRef kCFURLVolumeSupportsFileCloningKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));


extern
const CFStringRef kCFURLVolumeSupportsSwapRenamingKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));


extern
const CFStringRef kCFURLVolumeSupportsExclusiveRenamingKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));


extern
const CFStringRef kCFURLVolumeSupportsImmutableFilesKey __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


extern
const CFStringRef kCFURLVolumeSupportsAccessPermissionsKey __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));




extern
const CFStringRef kCFURLIsUbiquitousItemKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLUbiquitousItemHasUnresolvedConflictsKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLUbiquitousItemIsDownloadedKey __attribute__((availability(macos,introduced=10.7,deprecated=10.9,message="Use kCFURLUbiquitousItemDownloadingStatusKey instead"))) __attribute__((availability(ios,introduced=5.0,deprecated=7.0,message="Use kCFURLUbiquitousItemDownloadingStatusKey instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use kCFURLUbiquitousItemDownloadingStatusKey instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use kCFURLUbiquitousItemDownloadingStatusKey instead")));


extern
const CFStringRef kCFURLUbiquitousItemIsDownloadingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLUbiquitousItemIsUploadedKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLUbiquitousItemIsUploadingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLUbiquitousItemPercentDownloadedKey __attribute__((availability(macos,introduced=10.7,deprecated=10.8,message="Use NSMetadataQuery and NSMetadataUbiquitousItemPercentDownloadedKey on NSMetadataItem instead"))) __attribute__((availability(ios,introduced=5.0,deprecated=6.0,message="Use NSMetadataQuery and NSMetadataUbiquitousItemPercentDownloadedKey on NSMetadataItem instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSMetadataQuery and NSMetadataUbiquitousItemPercentDownloadedKey on NSMetadataItem instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSMetadataQuery and NSMetadataUbiquitousItemPercentDownloadedKey on NSMetadataItem instead")));


extern
const CFStringRef kCFURLUbiquitousItemPercentUploadedKey __attribute__((availability(macos,introduced=10.7,deprecated=10.8,message="Use NSMetadataQuery and NSMetadataUbiquitousItemPercentUploadedKey on NSMetadataItem instead"))) __attribute__((availability(ios,introduced=5.0,deprecated=6.0,message="Use NSMetadataQuery and NSMetadataUbiquitousItemPercentUploadedKey on NSMetadataItem instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSMetadataQuery and NSMetadataUbiquitousItemPercentUploadedKey on NSMetadataItem instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSMetadataQuery and NSMetadataUbiquitousItemPercentUploadedKey on NSMetadataItem instead")));


extern
const CFStringRef kCFURLUbiquitousItemDownloadingStatusKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLUbiquitousItemDownloadingErrorKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLUbiquitousItemUploadingErrorKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




extern
const CFStringRef kCFURLUbiquitousItemDownloadingStatusNotDownloaded __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLUbiquitousItemDownloadingStatusDownloaded __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern
const CFStringRef kCFURLUbiquitousItemDownloadingStatusCurrent __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



typedef CFOptionFlags CFURLBookmarkCreationOptions; enum {
    kCFURLBookmarkCreationMinimalBookmarkMask = ( 1UL << 9 ),
    kCFURLBookmarkCreationSuitableForBookmarkFile = ( 1UL << 10 ),
    kCFURLBookmarkCreationWithSecurityScope __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(macCatalyst,introduced=13.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = ( 1UL << 11 ),
    kCFURLBookmarkCreationSecurityScopeAllowOnlyReadAccess __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(macCatalyst,introduced=13.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = ( 1UL << 12 ),


    kCFURLBookmarkCreationPreferFileIDResolutionMask
    __attribute__((availability(macos,introduced=10.6,deprecated=10.9,message="kCFURLBookmarkCreationPreferFileIDResolutionMask does nothing and has no effect on bookmark resolution"))) __attribute__((availability(ios,introduced=4.0,deprecated=7.0,message="kCFURLBookmarkCreationPreferFileIDResolutionMask does nothing and has no effect on bookmark resolution"))) = ( 1UL << 8 ),
} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef CFOptionFlags CFURLBookmarkResolutionOptions; enum {
    kCFURLBookmarkResolutionWithoutUIMask = ( 1UL << 8 ),
    kCFURLBookmarkResolutionWithoutMountingMask = ( 1UL << 9 ),
    kCFURLBookmarkResolutionWithSecurityScope __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(macCatalyst,introduced=13.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = ( 1UL << 10 ),

    kCFBookmarkResolutionWithoutUIMask = kCFURLBookmarkResolutionWithoutUIMask,
    kCFBookmarkResolutionWithoutMountingMask = kCFURLBookmarkResolutionWithoutMountingMask,
} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef CFOptionFlags CFURLBookmarkFileCreationOptions;





extern
CFDataRef CFURLCreateBookmarkData ( CFAllocatorRef allocator, CFURLRef url, CFURLBookmarkCreationOptions options, CFArrayRef resourcePropertiesToInclude, CFURLRef relativeToURL, CFErrorRef* error ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFURLRef CFURLCreateByResolvingBookmarkData ( CFAllocatorRef allocator, CFDataRef bookmark, CFURLBookmarkResolutionOptions options, CFURLRef relativeToURL, CFArrayRef resourcePropertiesToInclude, Boolean* isStale, CFErrorRef* error ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFDictionaryRef CFURLCreateResourcePropertiesForKeysFromBookmarkData ( CFAllocatorRef allocator, CFArrayRef resourcePropertiesToReturn, CFDataRef bookmark ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFTypeRef CFURLCreateResourcePropertyForKeyFromBookmarkData( CFAllocatorRef allocator, CFStringRef resourcePropertyKey, CFDataRef bookmark ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFDataRef CFURLCreateBookmarkDataFromFile(CFAllocatorRef allocator, CFURLRef fileURL, CFErrorRef *errorRef ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
Boolean CFURLWriteBookmarkDataToFile( CFDataRef bookmarkRef, CFURLRef fileURL, CFURLBookmarkFileCreationOptions options, CFErrorRef *errorRef ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFDataRef CFURLCreateBookmarkDataFromAliasRecord ( CFAllocatorRef allocatorRef, CFDataRef aliasRecordDataRef ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));





extern
Boolean CFURLStartAccessingSecurityScopedResource(CFURLRef url) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
void CFURLStopAccessingSecurityScopedResource(CFURLRef url) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



}
typedef int boolean_t;
typedef __darwin_natural_t natural_t;
typedef int integer_t;






typedef uintptr_t vm_offset_t;
typedef uintptr_t vm_size_t;

typedef uint64_t mach_vm_address_t;
typedef uint64_t mach_vm_offset_t;
typedef uint64_t mach_vm_size_t;

typedef uint64_t vm_map_offset_t;
typedef uint64_t vm_map_address_t;
typedef uint64_t vm_map_size_t;
typedef uint32_t vm32_offset_t;
typedef uint32_t vm32_address_t;
typedef uint32_t vm32_size_t;

typedef vm_offset_t mach_port_context_t;
typedef natural_t mach_port_name_t;
typedef mach_port_name_t *mach_port_name_array_t;
typedef __darwin_mach_port_t mach_port_t;


typedef mach_port_t *mach_port_array_t;
typedef natural_t mach_port_right_t;
typedef natural_t mach_port_type_t;
typedef mach_port_type_t *mach_port_type_array_t;
typedef natural_t mach_port_urefs_t;
typedef integer_t mach_port_delta_t;



typedef natural_t mach_port_seqno_t;
typedef natural_t mach_port_mscount_t;
typedef natural_t mach_port_msgcount_t;
typedef natural_t mach_port_rights_t;






typedef unsigned int mach_port_srights_t;

typedef struct mach_port_status {
 mach_port_rights_t mps_pset;
 mach_port_seqno_t mps_seqno;
 mach_port_mscount_t mps_mscount;
 mach_port_msgcount_t mps_qlimit;
 mach_port_msgcount_t mps_msgcount;
 mach_port_rights_t mps_sorights;
 boolean_t mps_srights;
 boolean_t mps_pdrequest;
 boolean_t mps_nsrequest;
 natural_t mps_flags;
} mach_port_status_t;
typedef struct mach_port_limits {
 mach_port_msgcount_t mpl_qlimit;
} mach_port_limits_t;
typedef struct mach_port_info_ext {
 mach_port_status_t mpie_status;
 mach_port_msgcount_t mpie_boost_cnt;
 uint32_t reserved[6];
} mach_port_info_ext_t;

typedef integer_t *mach_port_info_t;


typedef int mach_port_flavor_t;
typedef struct mach_port_qos {
 unsigned int name:1;
 unsigned int prealloc:1;
 boolean_t pad1:30;
 natural_t len;
} mach_port_qos_t;
typedef struct mach_port_options {
 uint32_t flags;
 mach_port_limits_t mpl;
 uint64_t reserved[2];
}mach_port_options_t;

typedef mach_port_options_t *mach_port_options_ptr_t;
enum mach_port_guard_exception_codes {
 kGUARD_EXC_DESTROY = 1u << 0,
 kGUARD_EXC_MOD_REFS = 1u << 1,
 kGUARD_EXC_SET_CONTEXT = 1u << 2,
 kGUARD_EXC_UNGUARDED = 1u << 3,
 kGUARD_EXC_INCORRECT_GUARD = 1u << 4,
 kGUARD_EXC_IMMOVABLE = 1u << 5,
 kGUARD_EXC_STRICT_REPLY = 1u << 6,

 kGUARD_EXC_INVALID_RIGHT = 1u << 8,
 kGUARD_EXC_INVALID_NAME = 1u << 9,
 kGUARD_EXC_INVALID_VALUE = 1u << 10,
 kGUARD_EXC_INVALID_ARGUMENT = 1u << 11,
 kGUARD_EXC_RIGHT_EXISTS = 1u << 12,
 kGUARD_EXC_KERN_NO_SPACE = 1u << 13,
 kGUARD_EXC_KERN_FAILURE = 1u << 14,
 kGUARD_EXC_KERN_RESOURCE = 1u << 15,
 kGUARD_EXC_SEND_INVALID_REPLY = 1u << 16,
 kGUARD_EXC_SEND_INVALID_VOUCHER = 1u << 17,
 kGUARD_EXC_SEND_INVALID_RIGHT = 1u << 18,
 kGUARD_EXC_RCV_INVALID_NAME = 1u << 19,
 kGUARD_EXC_RCV_GUARDED_DESC = 1u << 20,
};



extern "C" {

typedef CFStringRef CFRunLoopMode __attribute__((swift_wrapper(struct)));

typedef struct __attribute__((objc_bridge_mutable(id))) __CFRunLoop * CFRunLoopRef;

typedef struct __attribute__((objc_bridge_mutable(id))) __CFRunLoopSource * CFRunLoopSourceRef;

typedef struct __attribute__((objc_bridge_mutable(id))) __CFRunLoopObserver * CFRunLoopObserverRef;

typedef struct __attribute__((objc_bridge_mutable(NSTimer))) __CFRunLoopTimer * CFRunLoopTimerRef;


typedef SInt32 CFRunLoopRunResult; enum {
    kCFRunLoopRunFinished = 1,
    kCFRunLoopRunStopped = 2,
    kCFRunLoopRunTimedOut = 3,
    kCFRunLoopRunHandledSource = 4
};


typedef CFOptionFlags CFRunLoopActivity; enum {
    kCFRunLoopEntry = (1UL << 0),
    kCFRunLoopBeforeTimers = (1UL << 1),
    kCFRunLoopBeforeSources = (1UL << 2),
    kCFRunLoopBeforeWaiting = (1UL << 5),
    kCFRunLoopAfterWaiting = (1UL << 6),
    kCFRunLoopExit = (1UL << 7),
    kCFRunLoopAllActivities = 0x0FFFFFFFU
};

extern const CFRunLoopMode kCFRunLoopDefaultMode;
extern const CFRunLoopMode kCFRunLoopCommonModes;

extern CFTypeID CFRunLoopGetTypeID(void);

extern CFRunLoopRef CFRunLoopGetCurrent(void);
extern CFRunLoopRef CFRunLoopGetMain(void);

extern CFRunLoopMode CFRunLoopCopyCurrentMode(CFRunLoopRef rl);

extern CFArrayRef CFRunLoopCopyAllModes(CFRunLoopRef rl);

extern void CFRunLoopAddCommonMode(CFRunLoopRef rl, CFRunLoopMode mode);

extern CFAbsoluteTime CFRunLoopGetNextTimerFireDate(CFRunLoopRef rl, CFRunLoopMode mode);

extern void CFRunLoopRun(void);
extern CFRunLoopRunResult CFRunLoopRunInMode(CFRunLoopMode mode, CFTimeInterval seconds, Boolean returnAfterSourceHandled);
extern Boolean CFRunLoopIsWaiting(CFRunLoopRef rl);
extern void CFRunLoopWakeUp(CFRunLoopRef rl);
extern void CFRunLoopStop(CFRunLoopRef rl);


extern void CFRunLoopPerformBlock(CFRunLoopRef rl, CFTypeRef mode, void (*block)(void)) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern Boolean CFRunLoopContainsSource(CFRunLoopRef rl, CFRunLoopSourceRef source, CFRunLoopMode mode);
extern void CFRunLoopAddSource(CFRunLoopRef rl, CFRunLoopSourceRef source, CFRunLoopMode mode);
extern void CFRunLoopRemoveSource(CFRunLoopRef rl, CFRunLoopSourceRef source, CFRunLoopMode mode);

extern Boolean CFRunLoopContainsObserver(CFRunLoopRef rl, CFRunLoopObserverRef observer, CFRunLoopMode mode);
extern void CFRunLoopAddObserver(CFRunLoopRef rl, CFRunLoopObserverRef observer, CFRunLoopMode mode);
extern void CFRunLoopRemoveObserver(CFRunLoopRef rl, CFRunLoopObserverRef observer, CFRunLoopMode mode);

extern Boolean CFRunLoopContainsTimer(CFRunLoopRef rl, CFRunLoopTimerRef timer, CFRunLoopMode mode);
extern void CFRunLoopAddTimer(CFRunLoopRef rl, CFRunLoopTimerRef timer, CFRunLoopMode mode);
extern void CFRunLoopRemoveTimer(CFRunLoopRef rl, CFRunLoopTimerRef timer, CFRunLoopMode mode);

typedef struct {
    CFIndex version;
    void * info;
    const void *(*retain)(const void *info);
    void (*release)(const void *info);
    CFStringRef (*copyDescription)(const void *info);
    Boolean (*equal)(const void *info1, const void *info2);
    CFHashCode (*hash)(const void *info);
    void (*schedule)(void *info, CFRunLoopRef rl, CFRunLoopMode mode);
    void (*cancel)(void *info, CFRunLoopRef rl, CFRunLoopMode mode);
    void (*perform)(void *info);
} CFRunLoopSourceContext;

typedef struct {
    CFIndex version;
    void * info;
    const void *(*retain)(const void *info);
    void (*release)(const void *info);
    CFStringRef (*copyDescription)(const void *info);
    Boolean (*equal)(const void *info1, const void *info2);
    CFHashCode (*hash)(const void *info);

    mach_port_t (*getPort)(void *info);
    void * (*perform)(void *msg, CFIndex size, CFAllocatorRef allocator, void *info);




} CFRunLoopSourceContext1;

extern CFTypeID CFRunLoopSourceGetTypeID(void);

extern CFRunLoopSourceRef CFRunLoopSourceCreate(CFAllocatorRef allocator, CFIndex order, CFRunLoopSourceContext *context);

extern CFIndex CFRunLoopSourceGetOrder(CFRunLoopSourceRef source);
extern void CFRunLoopSourceInvalidate(CFRunLoopSourceRef source);
extern Boolean CFRunLoopSourceIsValid(CFRunLoopSourceRef source);
extern void CFRunLoopSourceGetContext(CFRunLoopSourceRef source, CFRunLoopSourceContext *context);
extern void CFRunLoopSourceSignal(CFRunLoopSourceRef source);

typedef struct {
    CFIndex version;
    void * info;
    const void *(*retain)(const void *info);
    void (*release)(const void *info);
    CFStringRef (*copyDescription)(const void *info);
} CFRunLoopObserverContext;

typedef void (*CFRunLoopObserverCallBack)(CFRunLoopObserverRef observer, CFRunLoopActivity activity, void *info);

extern CFTypeID CFRunLoopObserverGetTypeID(void);

extern CFRunLoopObserverRef CFRunLoopObserverCreate(CFAllocatorRef allocator, CFOptionFlags activities, Boolean repeats, CFIndex order, CFRunLoopObserverCallBack callout, CFRunLoopObserverContext *context);

extern CFRunLoopObserverRef CFRunLoopObserverCreateWithHandler(CFAllocatorRef allocator, CFOptionFlags activities, Boolean repeats, CFIndex order, void (*block) (CFRunLoopObserverRef observer, CFRunLoopActivity activity)) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern CFOptionFlags CFRunLoopObserverGetActivities(CFRunLoopObserverRef observer);
extern Boolean CFRunLoopObserverDoesRepeat(CFRunLoopObserverRef observer);
extern CFIndex CFRunLoopObserverGetOrder(CFRunLoopObserverRef observer);
extern void CFRunLoopObserverInvalidate(CFRunLoopObserverRef observer);
extern Boolean CFRunLoopObserverIsValid(CFRunLoopObserverRef observer);
extern void CFRunLoopObserverGetContext(CFRunLoopObserverRef observer, CFRunLoopObserverContext *context);

typedef struct {
    CFIndex version;
    void * info;
    const void *(*retain)(const void *info);
    void (*release)(const void *info);
    CFStringRef (*copyDescription)(const void *info);
} CFRunLoopTimerContext;

typedef void (*CFRunLoopTimerCallBack)(CFRunLoopTimerRef timer, void *info);

extern CFTypeID CFRunLoopTimerGetTypeID(void);

extern CFRunLoopTimerRef CFRunLoopTimerCreate(CFAllocatorRef allocator, CFAbsoluteTime fireDate, CFTimeInterval interval, CFOptionFlags flags, CFIndex order, CFRunLoopTimerCallBack callout, CFRunLoopTimerContext *context);

extern CFRunLoopTimerRef CFRunLoopTimerCreateWithHandler(CFAllocatorRef allocator, CFAbsoluteTime fireDate, CFTimeInterval interval, CFOptionFlags flags, CFIndex order, void (*block) (CFRunLoopTimerRef timer)) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern CFAbsoluteTime CFRunLoopTimerGetNextFireDate(CFRunLoopTimerRef timer);
extern void CFRunLoopTimerSetNextFireDate(CFRunLoopTimerRef timer, CFAbsoluteTime fireDate);
extern CFTimeInterval CFRunLoopTimerGetInterval(CFRunLoopTimerRef timer);
extern Boolean CFRunLoopTimerDoesRepeat(CFRunLoopTimerRef timer);
extern CFIndex CFRunLoopTimerGetOrder(CFRunLoopTimerRef timer);
extern void CFRunLoopTimerInvalidate(CFRunLoopTimerRef timer);
extern Boolean CFRunLoopTimerIsValid(CFRunLoopTimerRef timer);
extern void CFRunLoopTimerGetContext(CFRunLoopTimerRef timer, CFRunLoopTimerContext *context);



extern CFTimeInterval CFRunLoopTimerGetTolerance(CFRunLoopTimerRef timer) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern void CFRunLoopTimerSetTolerance(CFRunLoopTimerRef timer, CFTimeInterval tolerance) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

}
extern "C" {

typedef struct __attribute__((objc_bridge_mutable(id))) __CFSocket * CFSocketRef;
typedef CFIndex CFSocketError; enum {
    kCFSocketSuccess = 0,
    kCFSocketError = -1L,
    kCFSocketTimeout = -2L
};

typedef struct {
    SInt32 protocolFamily;
    SInt32 socketType;
    SInt32 protocol;
    CFDataRef address;
} CFSocketSignature;


typedef CFOptionFlags CFSocketCallBackType; enum {
    kCFSocketNoCallBack = 0,
    kCFSocketReadCallBack = 1,
    kCFSocketAcceptCallBack = 2,
    kCFSocketDataCallBack = 3,
    kCFSocketConnectCallBack = 4,
    kCFSocketWriteCallBack = 8
};


enum {
    kCFSocketAutomaticallyReenableReadCallBack = 1,
    kCFSocketAutomaticallyReenableAcceptCallBack = 2,
    kCFSocketAutomaticallyReenableDataCallBack = 3,
    kCFSocketAutomaticallyReenableWriteCallBack = 8,
    kCFSocketLeaveErrors __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 64,
    kCFSocketCloseOnInvalidate = 128
};

typedef void (*CFSocketCallBack)(CFSocketRef s, CFSocketCallBackType type, CFDataRef address, const void *data, void *info);


typedef struct {
    CFIndex version;
    void * info;
    const void *(*retain)(const void *info);
    void (*release)(const void *info);
    CFStringRef (*copyDescription)(const void *info);
} CFSocketContext;


typedef int CFSocketNativeHandle;


extern CFTypeID CFSocketGetTypeID(void);

extern CFSocketRef CFSocketCreate(CFAllocatorRef allocator, SInt32 protocolFamily, SInt32 socketType, SInt32 protocol, CFOptionFlags callBackTypes, CFSocketCallBack callout, const CFSocketContext *context);
extern CFSocketRef CFSocketCreateWithNative(CFAllocatorRef allocator, CFSocketNativeHandle sock, CFOptionFlags callBackTypes, CFSocketCallBack callout, const CFSocketContext *context);
extern CFSocketRef CFSocketCreateWithSocketSignature(CFAllocatorRef allocator, const CFSocketSignature *signature, CFOptionFlags callBackTypes, CFSocketCallBack callout, const CFSocketContext *context);

extern CFSocketRef CFSocketCreateConnectedToSocketSignature(CFAllocatorRef allocator, const CFSocketSignature *signature, CFOptionFlags callBackTypes, CFSocketCallBack callout, const CFSocketContext *context, CFTimeInterval timeout);


extern CFSocketError CFSocketSetAddress(CFSocketRef s, CFDataRef address);
extern CFSocketError CFSocketConnectToAddress(CFSocketRef s, CFDataRef address, CFTimeInterval timeout);
extern void CFSocketInvalidate(CFSocketRef s);

extern Boolean CFSocketIsValid(CFSocketRef s);
extern CFDataRef CFSocketCopyAddress(CFSocketRef s);
extern CFDataRef CFSocketCopyPeerAddress(CFSocketRef s);
extern void CFSocketGetContext(CFSocketRef s, CFSocketContext *context);
extern CFSocketNativeHandle CFSocketGetNative(CFSocketRef s);

extern CFRunLoopSourceRef CFSocketCreateRunLoopSource(CFAllocatorRef allocator, CFSocketRef s, CFIndex order);

extern CFOptionFlags CFSocketGetSocketFlags(CFSocketRef s);
extern void CFSocketSetSocketFlags(CFSocketRef s, CFOptionFlags flags);
extern void CFSocketDisableCallBacks(CFSocketRef s, CFOptionFlags callBackTypes);
extern void CFSocketEnableCallBacks(CFSocketRef s, CFOptionFlags callBackTypes);



extern CFSocketError CFSocketSendData(CFSocketRef s, CFDataRef address, CFDataRef data, CFTimeInterval timeout);
extern CFSocketError CFSocketRegisterValue(const CFSocketSignature *nameServerSignature, CFTimeInterval timeout, CFStringRef name, CFPropertyListRef value);
extern CFSocketError CFSocketCopyRegisteredValue(const CFSocketSignature *nameServerSignature, CFTimeInterval timeout, CFStringRef name, CFPropertyListRef *value, CFDataRef *nameServerAddress);

extern CFSocketError CFSocketRegisterSocketSignature(const CFSocketSignature *nameServerSignature, CFTimeInterval timeout, CFStringRef name, const CFSocketSignature *signature);
extern CFSocketError CFSocketCopyRegisteredSocketSignature(const CFSocketSignature *nameServerSignature, CFTimeInterval timeout, CFStringRef name, CFSocketSignature *signature, CFDataRef *nameServerAddress);

extern CFSocketError CFSocketUnregister(const CFSocketSignature *nameServerSignature, CFTimeInterval timeout, CFStringRef name);

extern void CFSocketSetDefaultNameRegistryPortNumber(UInt16 port);
extern UInt16 CFSocketGetDefaultNameRegistryPortNumber(void);


extern const CFStringRef kCFSocketCommandKey;
extern const CFStringRef kCFSocketNameKey;
extern const CFStringRef kCFSocketValueKey;
extern const CFStringRef kCFSocketResultKey;
extern const CFStringRef kCFSocketErrorKey;
extern const CFStringRef kCFSocketRegisterCommand;
extern const CFStringRef kCFSocketRetrieveCommand;

}

typedef void (*os_function_t)(void *_Nullable);
typedef void (*os_block_t)(void);











struct accessx_descriptor {
 unsigned int ad_name_offset;
 int ad_flags;
 int ad_pad[2];
};
extern "C" {

int getattrlistbulk(int, void *, void *, size_t, uint64_t) __attribute__((availability(ios,introduced=8.0)));
int getattrlistat(int, const char *, void *, void *, size_t, unsigned long) __attribute__((availability(ios,introduced=8.0)));
int setattrlistat(int, const char *, void *, void *, size_t, uint32_t) __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));

}
extern "C" {

int faccessat(int, const char *, int, int) __attribute__((availability(ios,introduced=8.0)));
int fchownat(int, const char *, uid_t, gid_t, int) __attribute__((availability(ios,introduced=8.0)));
int linkat(int, const char *, int, const char *, int) __attribute__((availability(ios,introduced=8.0)));
ssize_t readlinkat(int, const char *, char *, size_t) __attribute__((availability(ios,introduced=8.0)));
int symlinkat(const char *, int, const char *) __attribute__((availability(ios,introduced=8.0)));
int unlinkat(int, const char *, int) __attribute__((availability(ios,introduced=8.0)));

}
extern "C" {
void _exit(int) __attribute__((__noreturn__));
int access(const char *, int);
unsigned int
  alarm(unsigned int);
int chdir(const char *);
int chown(const char *, uid_t, gid_t);

int close(int) __asm("_" "close" );

int dup(int);
int dup2(int, int);
int execl(const char * __path, const char * __arg0, ...) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
int execle(const char * __path, const char * __arg0, ...) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
int execlp(const char * __file, const char * __arg0, ...) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
int execv(const char * __path, char * const * __argv) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
int execve(const char * __file, char * const * __argv, char * const * __envp) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
int execvp(const char * __file, char * const * __argv) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
pid_t fork(void) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
long fpathconf(int, int);
char *getcwd(char *, size_t);
gid_t getegid(void);
uid_t geteuid(void);
gid_t getgid(void);



int getgroups(int, gid_t []);

char *getlogin(void);
pid_t getpgrp(void);
pid_t getpid(void);
pid_t getppid(void);
uid_t getuid(void);
int isatty(int);
int link(const char *, const char *);
off_t lseek(int, off_t, int);
long pathconf(const char *, int);

int pause(void) __asm("_" "pause" );

int pipe(int [2]);

ssize_t read(int, void *, size_t) __asm("_" "read" );

int rmdir(const char *);
int setgid(gid_t);
int setpgid(pid_t, pid_t);
pid_t setsid(void);
int setuid(uid_t);

unsigned int
  sleep(unsigned int) __asm("_" "sleep" );

long sysconf(int);
pid_t tcgetpgrp(int);
int tcsetpgrp(int, pid_t);
char *ttyname(int);


int ttyname_r(int, char *, size_t) __asm("_" "ttyname_r" );




int unlink(const char *);

ssize_t write(int __fd, const void * __buf, size_t __nbyte) __asm("_" "write" );
}
extern "C" {
size_t confstr(int, char *, size_t) __asm("_" "confstr" );

int getopt(int, char * const [], const char *) __asm("_" "getopt" );

extern char *optarg;
extern int optind, opterr, optopt;
}
 extern "C" {





__attribute__((__deprecated__)) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)))

void *brk(const void *);
int chroot(const char *) ;


char *crypt(const char *, const char *);

void encrypt(char *, int) __asm("_" "encrypt" );



int fchdir(int);
long gethostid(void);
pid_t getpgid(pid_t);
pid_t getsid(pid_t);



int getdtablesize(void) ;
int getpagesize(void) __attribute__((__const__)) ;
char *getpass(const char *) ;




char *getwd(char *) ;


int lchown(const char *, uid_t, gid_t) __asm("_" "lchown" );

int lockf(int, int, off_t) __asm("_" "lockf" );

int nice(int) __asm("_" "nice" );

ssize_t pread(int __fd, void * __buf, size_t __nbyte, off_t __offset) __asm("_" "pread" );

ssize_t pwrite(int __fd, const void * __buf, size_t __nbyte, off_t __offset) __asm("_" "pwrite" );






__attribute__((__deprecated__)) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)))

void *sbrk(int);



pid_t setpgrp(void) __asm("_" "setpgrp" );




int setregid(gid_t, gid_t) __asm("_" "setregid" );

int setreuid(uid_t, uid_t) __asm("_" "setreuid" );

void swab(const void * , void * , ssize_t);
void sync(void);
int truncate(const char *, off_t);
useconds_t ualarm(useconds_t, useconds_t);
int usleep(useconds_t) __asm("_" "usleep" );
pid_t vfork(void) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));


int fsync(int) __asm("_" "fsync" );

int ftruncate(int, off_t);
int getlogin_r(char *, size_t);
}
extern "C" {
int fchown(int, uid_t, gid_t);
int gethostname(char *, size_t);
ssize_t readlink(const char * , char * , size_t);
int setegid(gid_t);
int seteuid(uid_t);
int symlink(const char *, const char *);
}








extern "C" {


int pselect(int, fd_set * , fd_set * ,
    fd_set * , const struct timespec * ,
    const sigset_t * )




__asm("_" "pselect" )




;



int select(int, fd_set * , fd_set * ,
    fd_set * , struct timeval * )




__asm("_" "select" )




;

}



typedef __darwin_uuid_t uuid_t;

extern "C" {
void _Exit(int) __attribute__((__noreturn__));
int accessx_np(const struct accessx_descriptor *, size_t, int *, uid_t);
int acct(const char *);
int add_profil(char *, size_t, unsigned long, unsigned int) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
void endusershell(void);
int execvP(const char * __file, const char * __searchpath, char * const * __argv) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
char *fflagstostr(unsigned long);
int getdomainname(char *, int);
int getgrouplist(const char *, int, int *, int *);





int gethostuuid(uuid_t, const struct timespec *) __attribute__((availability(ios,unavailable)));




mode_t getmode(const void *, mode_t);
int getpeereid(int, uid_t *, gid_t *);
int getsgroups_np(int *, uuid_t);
char *getusershell(void);
int getwgroups_np(int *, uuid_t);
int initgroups(const char *, int);
int issetugid(void);
char *mkdtemp(char *);
int mknod(const char *, mode_t, dev_t);
int mkpath_np(const char *path, mode_t omode) __attribute__((availability(ios,introduced=5.0)));
int mkpathat_np(int dfd, const char *path, mode_t omode)
  __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0)))
  __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
int mkstemp(char *);
int mkstemps(char *, int);
char *mktemp(char *);
int mkostemp(char *path, int oflags)
  __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0)))
  __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
int mkostemps(char *path, int slen, int oflags)
  __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0)))
  __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

int mkstemp_dprotected_np(char *path, int dpclass, int dpflags)
  __attribute__((availability(macosx,unavailable))) __attribute__((availability(ios,introduced=10.0)))
  __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
char *mkdtempat_np(int dfd, char *path)
  __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0)))
  __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
int mkstempsat_np(int dfd, char *path, int slen)
  __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0)))
  __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
int mkostempsat_np(int dfd, char *path, int slen, int oflags)
  __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0)))
  __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
int nfssvc(int, void *);
int profil(char *, size_t, unsigned long, unsigned int);

__attribute__((__deprecated__("Use of per-thread security contexts is error-prone and discouraged.")))
int pthread_setugid_np(uid_t, gid_t);
int pthread_getugid_np( uid_t *, gid_t *);

int reboot(int);
int revoke(const char *);

__attribute__((__deprecated__)) int rcmd(char **, int, const char *, const char *, const char *, int *);
__attribute__((__deprecated__)) int rcmd_af(char **, int, const char *, const char *, const char *, int *,
  int);
__attribute__((__deprecated__)) int rresvport(int *);
__attribute__((__deprecated__)) int rresvport_af(int *, int);
__attribute__((__deprecated__)) int iruserok(unsigned long, int, const char *, const char *);
__attribute__((__deprecated__)) int iruserok_sa(const void *, int, int, const char *, const char *);
__attribute__((__deprecated__)) int ruserok(const char *, int, const char *, const char *);

int setdomainname(const char *, int);
int setgroups(int, const gid_t *);
void sethostid(long);
int sethostname(const char *, int);

void setkey(const char *) __asm("_" "setkey" );



int setlogin(const char *);
void *setmode(const char *) __asm("_" "setmode" );
int setrgid(gid_t);
int setruid(uid_t);
int setsgroups_np(int, const uuid_t);
void setusershell(void);
int setwgroups_np(int, const uuid_t);
int strtofflags(char **, unsigned long *, unsigned long *);
int swapon(const char *);
int ttyslot(void);
int undelete(const char *);
int unwhiteout(const char *);
void *valloc(size_t);

__attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)))
__attribute__((availability(ios,deprecated=10.0,message="syscall(2) is unsupported; " "please switch to a supported interface. For SYS_kdebug_trace use kdebug_signpost().")))

__attribute__((availability(macosx,deprecated=10.12,message="syscall(2) is unsupported; " "please switch to a supported interface. For SYS_kdebug_trace use kdebug_signpost().")))

int syscall(int, ...);

extern char *suboptarg;
int getsubopt(char **, char * const *, char **);



int fgetattrlist(int,void*,void*,size_t,unsigned int) __attribute__((availability(ios,introduced=3.0)));
int fsetattrlist(int,void*,void*,size_t,unsigned int) __attribute__((availability(ios,introduced=3.0)));
int getattrlist(const char*,void*,void*,size_t,unsigned int) __asm("_" "getattrlist" );
int setattrlist(const char*,void*,void*,size_t,unsigned int) __asm("_" "setattrlist" );
int exchangedata(const char*,const char*,unsigned int) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
int getdirentriesattr(int,void*,void*,size_t,unsigned int*,unsigned int*,unsigned int*,unsigned int) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
struct fssearchblock;
struct searchstate;

int searchfs(const char *, struct fssearchblock *, unsigned long *, unsigned int, unsigned int, struct searchstate *) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
int fsctl(const char *,unsigned long,void*,unsigned int);
int ffsctl(int,unsigned long,void*,unsigned int) __attribute__((availability(ios,introduced=3.0)));




int fsync_volume_np(int, int) __attribute__((availability(ios,introduced=6.0)));
int sync_volume_np(const char *, int) __attribute__((availability(ios,introduced=6.0)));

extern int optreset;

}






struct flock {
 off_t l_start;
 off_t l_len;
 pid_t l_pid;
 short l_type;
 short l_whence;
};
struct flocktimeout {
 struct flock fl;
 struct timespec timeout;
};
struct radvisory {
 off_t ra_offset;
 int ra_count;
};



typedef struct fcodeblobs {
 void *f_cd_hash;
 size_t f_hash_size;
 void *f_cd_buffer;
 size_t f_cd_size;
 unsigned int *f_out_size;
 int f_arch;
 int __padding;
} fcodeblobs_t;
typedef struct fsignatures {
 off_t fs_file_start;
 void *fs_blob_start;
 size_t fs_blob_size;
} fsignatures_t;
typedef struct fchecklv {
 off_t lv_file_start;
 size_t lv_error_message_size;
 void *lv_error_message;
} fchecklv_t;
typedef struct fstore {
 unsigned int fst_flags;
 int fst_posmode;
 off_t fst_offset;
 off_t fst_length;
 off_t fst_bytesalloc;
} fstore_t;


typedef struct fpunchhole {
 unsigned int fp_flags;
 unsigned int reserved;
 off_t fp_offset;
 off_t fp_length;
} fpunchhole_t;


typedef struct ftrimactivefile {
 off_t fta_offset;
 off_t fta_length;
} ftrimactivefile_t;


typedef struct fspecread {
 unsigned int fsr_flags;
 unsigned int reserved;
 off_t fsr_offset;
 off_t fsr_length;
} fspecread_t;



typedef struct fbootstraptransfer {
 off_t fbt_offset;
 size_t fbt_length;
 void *fbt_buffer;
} fbootstraptransfer_t;
#pragma pack(4)

struct log2phys {
 unsigned int l2p_flags;
 off_t l2p_contigbytes;


 off_t l2p_devoffset;


};

#pragma pack()
struct _filesec;
typedef struct _filesec *filesec_t;

typedef enum {
 FILESEC_OWNER = 1,
 FILESEC_GROUP = 2,
 FILESEC_UUID = 3,
 FILESEC_MODE = 4,
 FILESEC_ACL = 5,
 FILESEC_GRPUUID = 6,


 FILESEC_ACL_RAW = 100,
 FILESEC_ACL_ALLOCSIZE = 101
} filesec_property_t;





extern "C" {
int open(const char *, int, ...) __asm("_" "open" );

int openat(int, const char *, int, ...) __asm("_" "openat" ) __attribute__((availability(ios,introduced=8.0)));

int creat(const char *, mode_t) __asm("_" "creat" );
int fcntl(int, int, ...) __asm("_" "fcntl" );


int openx_np(const char *, int, filesec_t);




int open_dprotected_np( const char *, int, int, int, ...);
int flock(int, int);
filesec_t filesec_init(void);
filesec_t filesec_dup(filesec_t);
void filesec_free(filesec_t);
int filesec_get_property(filesec_t, filesec_property_t, void *);
int filesec_query_property(filesec_t, filesec_property_t, int *);
int filesec_set_property(filesec_t, filesec_property_t, const void *);
int filesec_unset_property(filesec_t, filesec_property_t) __attribute__((availability(ios,introduced=3.2)));



}




typedef struct objc_class *Class;


struct objc_object {
    Class _Nonnull isa __attribute__((deprecated));
};


typedef struct objc_object *id;



typedef struct objc_selector *SEL;



typedef void (*IMP)(void );
    typedef bool BOOL;
extern "C" __attribute__((visibility("default"))) const char * _Nonnull sel_getName(SEL _Nonnull sel)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) SEL _Nonnull sel_registerName(const char * _Nonnull str)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nonnull object_getClassName(id _Nullable obj)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void * _Nullable object_getIndexedIvars(id _Nullable obj)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)))
                        ;
extern "C" __attribute__((visibility("default"))) BOOL sel_isMapped(SEL _Nonnull sel)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) SEL _Nonnull sel_getUid(const char * _Nonnull str)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));

typedef const void* objc_objectptr_t;




extern "C" __attribute__((visibility("default"))) id _Nullable objc_retainedObject(objc_objectptr_t _Nullable obj)

    __attribute__((unavailable("use CFBridgingRelease() or a (__bridge_transfer id) cast instead")))

    ;
extern "C" __attribute__((visibility("default"))) id _Nullable objc_unretainedObject(objc_objectptr_t _Nullable obj)

    __attribute__((unavailable("use a (__bridge id) cast instead")))

    ;
extern "C" __attribute__((visibility("default"))) objc_objectptr_t _Nullable objc_unretainedPointer(id _Nullable obj)

    __attribute__((unavailable("use a __bridge cast instead")))

    ;
typedef long NSInteger;
typedef unsigned long NSUInteger;

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSMethodSignature
#define _REWRITER_typedef_NSMethodSignature
typedef struct objc_object NSMethodSignature;
typedef struct {} _objc_exc_NSMethodSignature;
#endif

#ifndef _REWRITER_typedef_NSInvocation
#define _REWRITER_typedef_NSInvocation
typedef struct objc_object NSInvocation;
typedef struct {} _objc_exc_NSInvocation;
#endif


// @protocol NSObject

// - (BOOL)isEqual:(id)object;
// @property (readonly) NSUInteger hash;

// @property (readonly) Class superclass;
// - (Class)class __attribute__((availability(swift, unavailable, message="use 'type(of: anObject)' instead")));
// - (instancetype)self;

// - (id)performSelector:(SEL)aSelector;
// - (id)performSelector:(SEL)aSelector withObject:(id)object;
// - (id)performSelector:(SEL)aSelector withObject:(id)object1 withObject:(id)object2;

// - (BOOL)isProxy;

// - (BOOL)isKindOfClass:(Class)aClass;
// - (BOOL)isMemberOfClass:(Class)aClass;
// - (BOOL)conformsToProtocol:(Protocol *)aProtocol;

// - (BOOL)respondsToSelector:(SEL)aSelector;

// - (instancetype)retain ;
// - (oneway void)release ;
// - (instancetype)autorelease ;
// - (NSUInteger)retainCount ;

// - (struct _NSZone *)zone ;

// @property (readonly, copy) NSString *description;
/* @optional */
// @property (readonly, copy) NSString *debugDescription;

/* @end */



__attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)))
__attribute__((objc_root_class))
extern "C" __attribute__((visibility("default")))

#ifndef _REWRITER_typedef_NSObject
#define _REWRITER_typedef_NSObject
typedef struct objc_object NSObject;
typedef struct {} _objc_exc_NSObject;
#endif

struct NSObject_IMPL {
	Class isa;
};


// + (void)load;

// + (void)initialize;
#if 0
- (instancetype)init

    __attribute__((objc_designated_initializer))

    ;
#endif


// + (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead")));
// + (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((availability(swift, unavailable, message="use object initializers instead")));
// + (instancetype)alloc __attribute__((availability(swift, unavailable, message="use object initializers instead")));
// - (void)dealloc __attribute__((availability(swift, unavailable, message="use 'deinit' to define a de-initializer")));

// - (void)finalize __attribute__((deprecated("Objective-C garbage collection is no longer supported")));

// - (id)copy;
// - (id)mutableCopy;

// + (id)copyWithZone:(struct _NSZone *)zone ;
// + (id)mutableCopyWithZone:(struct _NSZone *)zone ;

// + (BOOL)instancesRespondToSelector:(SEL)aSelector;
// + (BOOL)conformsToProtocol:(Protocol *)protocol;
// - (IMP)methodForSelector:(SEL)aSelector;
// + (IMP)instanceMethodForSelector:(SEL)aSelector;
// - (void)doesNotRecognizeSelector:(SEL)aSelector;

// - (id)forwardingTargetForSelector:(SEL)aSelector __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
// - (void)forwardInvocation:(NSInvocation *)anInvocation __attribute__((availability(swift, unavailable, message="")));
// - (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector __attribute__((availability(swift, unavailable, message="")));

// + (NSMethodSignature *)instanceMethodSignatureForSelector:(SEL)aSelector __attribute__((availability(swift, unavailable, message="")));

// - (BOOL)allowsWeakReference __attribute__((unavailable));
// - (BOOL)retainWeakReference __attribute__((unavailable));

// + (BOOL)isSubclassOfClass:(Class)aClass;

// + (BOOL)resolveClassMethod:(SEL)sel __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
// + (BOOL)resolveInstanceMethod:(SEL)sel __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));

// + (NSUInteger)hash;
// + (Class)superclass;
// + (Class)class __attribute__((availability(swift, unavailable, message="use 'aClass.self' instead")));
// + (NSString *)description;
// + (NSString *)debugDescription;

/* @end */

extern "C" {
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((__visibility__("default"))) __attribute__((__availability__(swift, unavailable, message="Can't be used with ARC")))
void*
os_retain(void *object);
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((__visibility__("default")))
void __attribute__((__availability__(swift, unavailable, message="Can't be used with ARC")))
os_release(void *object);





}
typedef void (*dispatch_function_t)(void *_Nullable);
struct time_value {
 integer_t seconds;
 integer_t microseconds;
};

typedef struct time_value time_value_t;




typedef int alarm_type_t;
typedef int sleep_type_t;
typedef int clock_id_t;
typedef int clock_flavor_t;
typedef int *clock_attr_t;
typedef int clock_res_t;




struct mach_timespec {
 unsigned int tv_sec;
 clock_res_t tv_nsec;
};
typedef struct mach_timespec mach_timespec_t;


#pragma clang assume_nonnull begin
extern "C" {

struct timespec;
typedef uint64_t dispatch_time_t;

enum {
 DISPATCH_WALLTIME_NOW __attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) = ~1ull,

};
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_time_t
dispatch_time(dispatch_time_t when, int64_t delta);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_time_t
dispatch_walltime(const struct timespec *_Nullable when, int64_t delta);

}
#pragma clang assume_nonnull end
typedef enum : unsigned int { QOS_CLASS_USER_INTERACTIVE __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x21, QOS_CLASS_USER_INITIATED __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x19, QOS_CLASS_DEFAULT __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x15, QOS_CLASS_UTILITY __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x11, QOS_CLASS_BACKGROUND __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x09, QOS_CLASS_UNSPECIFIED __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x00, } qos_class_t;
extern "C" {
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
qos_class_t
qos_class_self(void);
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
qos_class_t
qos_class_main(void);

}


#pragma clang assume_nonnull begin
// @protocol OS_dispatch_object <NSObject> /* @end */
 typedef NSObject/*<OS_dispatch_object>*/ * __attribute__((objc_independent_class)) dispatch_object_t;
static __inline__ __attribute__((__always_inline__)) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
_dispatch_object_validate(dispatch_object_t object)
{
 void *isa = *(void *volatile*)( void*)object;
 (void)isa;
}
typedef void (*dispatch_block_t)(void);


extern "C" {






typedef qos_class_t dispatch_qos_class_t;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
__attribute__((__availability__(swift, unavailable, message="Can't be used with ARC")))
void
dispatch_retain(dispatch_object_t object);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
__attribute__((__availability__(swift, unavailable, message="Can't be used with ARC")))
void
dispatch_release(dispatch_object_t object);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__pure__)) __attribute__((__warn_unused_result__))
__attribute__((__nothrow__))
void *_Nullable
dispatch_get_context(dispatch_object_t object);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nothrow__))
void
dispatch_set_context(dispatch_object_t object, void *_Nullable context);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nothrow__))
void
dispatch_set_finalizer_f(dispatch_object_t object,
  dispatch_function_t _Nullable finalizer);
__attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_activate(dispatch_object_t object);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_suspend(dispatch_object_t object);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_resume(dispatch_object_t object);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nothrow__))
void
dispatch_set_qos_class_floor(dispatch_object_t object,
  dispatch_qos_class_t qos_class, int relative_priority);
__attribute__((__unavailable__))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
long
dispatch_wait(void *object, dispatch_time_t timeout);
__attribute__((__unavailable__))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_notify(void *object, dispatch_object_t queue,
  dispatch_block_t notification_block);
__attribute__((__unavailable__))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_cancel(void *object);
__attribute__((__unavailable__))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__warn_unused_result__)) __attribute__((__pure__))
__attribute__((__nothrow__))
long
dispatch_testcancel(void *object);
__attribute__((availability(macos,introduced=10.6,deprecated=10.9,message="unsupported interface"))) __attribute__((availability(ios,introduced=4.0,deprecated=6.0,message="unsupported interface")))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(2))) __attribute__((__nothrow__)) __attribute__((__cold__))
__attribute__((__format__(printf,2,3)))
void
dispatch_debug(dispatch_object_t object, const char *message, ...);

__attribute__((availability(macos,introduced=10.6,deprecated=10.9,message="unsupported interface"))) __attribute__((availability(ios,introduced=4.0,deprecated=6.0,message="unsupported interface")))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(2))) __attribute__((__nothrow__)) __attribute__((__cold__))
__attribute__((__format__(printf,2,0)))
void
dispatch_debugv(dispatch_object_t object, const char *message, va_list ap);

}
#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin
// @protocol OS_dispatch_queue <OS_dispatch_object> /* @end */
 typedef NSObject/*<OS_dispatch_queue>*/ * __attribute__((objc_independent_class)) dispatch_queue_t;
// @protocol OS_dispatch_queue_global <OS_dispatch_queue> /* @end */
 typedef NSObject/*<OS_dispatch_queue_global>*/ * __attribute__((objc_independent_class)) dispatch_queue_global_t;
// @protocol OS_dispatch_queue_serial <OS_dispatch_queue> /* @end */
 typedef NSObject/*<OS_dispatch_queue_serial>*/ * __attribute__((objc_independent_class)) dispatch_queue_serial_t;
// @protocol OS_dispatch_queue_main <OS_dispatch_queue_serial> /* @end */
 typedef NSObject/*<OS_dispatch_queue_main>*/ * __attribute__((objc_independent_class)) dispatch_queue_main_t;
// @protocol OS_dispatch_queue_concurrent <OS_dispatch_queue> /* @end */
 typedef NSObject/*<OS_dispatch_queue_concurrent>*/ * __attribute__((objc_independent_class)) dispatch_queue_concurrent_t;

extern "C" {
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_async(dispatch_queue_t queue, dispatch_block_t block);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(3))) __attribute__((__nothrow__))
void
dispatch_async_f(dispatch_queue_t queue,
  void *_Nullable context, dispatch_function_t work);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_sync(dispatch_queue_t queue, __attribute__((__noescape__)) dispatch_block_t block);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(3))) __attribute__((__nothrow__))
void
dispatch_sync_f(dispatch_queue_t queue,
  void *_Nullable context, dispatch_function_t work);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_async_and_wait(dispatch_queue_t queue,
  __attribute__((__noescape__)) dispatch_block_t block);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(3))) __attribute__((__nothrow__))
void
dispatch_async_and_wait_f(dispatch_queue_t queue,
  void *_Nullable context, dispatch_function_t work);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(3))) __attribute__((__nothrow__))
void
dispatch_apply(size_t iterations,
  dispatch_queue_t _Nullable queue,
  __attribute__((__noescape__)) void (^block)(size_t));
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(4))) __attribute__((__nothrow__))
void
dispatch_apply_f(size_t iterations,
  dispatch_queue_t _Nullable queue,
  void *_Nullable context, void (*work)(void *_Nullable, size_t));
__attribute__((availability(macos,introduced=10.6,deprecated=10.9,message="unsupported interface"))) __attribute__((availability(ios,introduced=4.0,deprecated=6.0,message="unsupported interface")))
extern __attribute__((visibility("default"))) __attribute__((__pure__)) __attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_queue_t
dispatch_get_current_queue(void);

__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default")))
struct dispatch_queue_s _dispatch_main_q;
static __inline__ __attribute__((__always_inline__)) __attribute__((__const__)) __attribute__((__nothrow__))
dispatch_queue_main_t
dispatch_get_main_queue(void)
{
 return (( dispatch_queue_main_t)&(_dispatch_main_q));
}
typedef long dispatch_queue_priority_t;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__const__)) __attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_queue_global_t
dispatch_get_global_queue(long identifier, unsigned long flags);







// @protocol OS_dispatch_queue_attr <OS_dispatch_object> /* @end */
 typedef NSObject/*<OS_dispatch_queue_attr>*/ * __attribute__((objc_independent_class)) dispatch_queue_attr_t;
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.3)))
extern __attribute__((visibility("default")))
struct dispatch_queue_attr_s _dispatch_queue_attr_concurrent;
__attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
extern __attribute__((visibility("default"))) __attribute__((__warn_unused_result__)) __attribute__((__pure__)) __attribute__((__nothrow__))
dispatch_queue_attr_t
dispatch_queue_attr_make_initially_inactive(
  dispatch_queue_attr_t _Nullable attr);
typedef enum : unsigned long { DISPATCH_AUTORELEASE_FREQUENCY_INHERIT __attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 0, DISPATCH_AUTORELEASE_FREQUENCY_WORK_ITEM __attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 1, DISPATCH_AUTORELEASE_FREQUENCY_NEVER __attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) = 2, } __attribute__((__enum_extensibility__(open))) dispatch_autorelease_frequency_t;
__attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
extern __attribute__((visibility("default"))) __attribute__((__warn_unused_result__)) __attribute__((__pure__)) __attribute__((__nothrow__))
dispatch_queue_attr_t
dispatch_queue_attr_make_with_autorelease_frequency(
  dispatch_queue_attr_t _Nullable attr,
  dispatch_autorelease_frequency_t frequency);
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((visibility("default"))) __attribute__((__warn_unused_result__)) __attribute__((__pure__)) __attribute__((__nothrow__))
dispatch_queue_attr_t
dispatch_queue_attr_make_with_qos_class(dispatch_queue_attr_t _Nullable attr,
  dispatch_qos_class_t qos_class, int relative_priority);
__attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
extern __attribute__((visibility("default"))) __attribute__((__malloc__)) __attribute__((__ns_returns_retained__)) __attribute__((__warn_unused_result__))
__attribute__((__nothrow__))
dispatch_queue_t
dispatch_queue_create_with_target(const char *_Nullable label,
  dispatch_queue_attr_t _Nullable attr, dispatch_queue_t _Nullable target)
  __asm__("_" "dispatch_queue_create_with_target" "$V2");
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__malloc__)) __attribute__((__ns_returns_retained__)) __attribute__((__warn_unused_result__))
__attribute__((__nothrow__))
dispatch_queue_t
dispatch_queue_create(const char *_Nullable label,
  dispatch_queue_attr_t _Nullable attr);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__pure__)) __attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
const char *
dispatch_queue_get_label(dispatch_queue_t _Nullable queue);
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((visibility("default"))) __attribute__((__warn_unused_result__)) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
dispatch_qos_class_t
dispatch_queue_get_qos_class(dispatch_queue_t queue,
  int *_Nullable relative_priority_ptr);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nothrow__))
void
dispatch_set_target_queue(dispatch_object_t object,
  dispatch_queue_t _Nullable queue);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nothrow__)) __attribute__((__noreturn__))
void
dispatch_main(void);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(2))) __attribute__((__nonnull__(3))) __attribute__((__nothrow__))
void
dispatch_after(dispatch_time_t when, dispatch_queue_t queue,
  dispatch_block_t block);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(2))) __attribute__((__nonnull__(4))) __attribute__((__nothrow__))
void
dispatch_after_f(dispatch_time_t when, dispatch_queue_t queue,
  void *_Nullable context, dispatch_function_t work);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.3)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_barrier_async(dispatch_queue_t queue, dispatch_block_t block);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.3)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(3))) __attribute__((__nothrow__))
void
dispatch_barrier_async_f(dispatch_queue_t queue,
  void *_Nullable context, dispatch_function_t work);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.3)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_barrier_sync(dispatch_queue_t queue,
  __attribute__((__noescape__)) dispatch_block_t block);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.3)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(3))) __attribute__((__nothrow__))
void
dispatch_barrier_sync_f(dispatch_queue_t queue,
  void *_Nullable context, dispatch_function_t work);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_barrier_async_and_wait(dispatch_queue_t queue,
  __attribute__((__noescape__)) dispatch_block_t block);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(3))) __attribute__((__nothrow__))
void
dispatch_barrier_async_and_wait_f(dispatch_queue_t queue,
  void *_Nullable context, dispatch_function_t work);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_queue_set_specific(dispatch_queue_t queue, const void *key,
  void *_Nullable context, dispatch_function_t _Nullable destructor);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__pure__)) __attribute__((__warn_unused_result__))
__attribute__((__nothrow__))
void *_Nullable
dispatch_queue_get_specific(dispatch_queue_t queue, const void *key);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__pure__)) __attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
void *_Nullable
dispatch_get_specific(const void *key);
__attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1)))
void
dispatch_assert_queue(dispatch_queue_t queue)
  __asm__("_" "dispatch_assert_queue" "$V2");
__attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1)))
void
dispatch_assert_queue_barrier(dispatch_queue_t queue);
__attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1)))
void
dispatch_assert_queue_not(dispatch_queue_t queue)
  __asm__("_" "dispatch_assert_queue_not" "$V2");
}
#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin

extern "C" {
typedef enum : unsigned long { DISPATCH_BLOCK_BARRIER __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x1, DISPATCH_BLOCK_DETACHED __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x2, DISPATCH_BLOCK_ASSIGN_CURRENT __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x4, DISPATCH_BLOCK_NO_QOS_CLASS __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x8, DISPATCH_BLOCK_INHERIT_QOS_CLASS __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x10, DISPATCH_BLOCK_ENFORCE_QOS_CLASS __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) = 0x20, } __attribute__((__flag_enum__)) __attribute__((__enum_extensibility__(open))) dispatch_block_flags_t;
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(2))) __attribute__((__ns_returns_retained__))
__attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_block_t
dispatch_block_create(dispatch_block_flags_t flags, dispatch_block_t block);
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(4))) __attribute__((__ns_returns_retained__))
__attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_block_t
dispatch_block_create_with_qos_class(dispatch_block_flags_t flags,
  dispatch_qos_class_t qos_class, int relative_priority,
  dispatch_block_t block);
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(2))) __attribute__((__nothrow__))
void
dispatch_block_perform(dispatch_block_flags_t flags,
  __attribute__((__noescape__)) dispatch_block_t block);
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
long
dispatch_block_wait(dispatch_block_t block, dispatch_time_t timeout);
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_block_notify(dispatch_block_t block, dispatch_queue_t queue,
  dispatch_block_t notification_block);
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_block_cancel(dispatch_block_t block);
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__warn_unused_result__)) __attribute__((__pure__))
__attribute__((__nothrow__))
long
dispatch_block_testcancel(dispatch_block_t block);

}
#pragma clang assume_nonnull end
typedef int kern_return_t;
typedef natural_t mach_msg_timeout_t;
typedef unsigned int mach_msg_bits_t;
typedef natural_t mach_msg_size_t;
typedef integer_t mach_msg_id_t;



typedef unsigned int mach_msg_priority_t;



typedef unsigned int mach_msg_type_name_t;
typedef unsigned int mach_msg_copy_options_t;
typedef unsigned int mach_msg_guard_flags_t;
typedef unsigned int mach_msg_descriptor_type_t;







#pragma pack(push, 4)

typedef struct{
 natural_t pad1;
 mach_msg_size_t pad2;
 unsigned int pad3 : 24;
 mach_msg_descriptor_type_t type : 8;
} mach_msg_type_descriptor_t;

typedef struct{
 mach_port_t name;

 mach_msg_size_t pad1;
 unsigned int pad2 : 16;
 mach_msg_type_name_t disposition : 8;
 mach_msg_descriptor_type_t type : 8;
} mach_msg_port_descriptor_t;

typedef struct{
 uint32_t address;
 mach_msg_size_t size;
 boolean_t deallocate: 8;
 mach_msg_copy_options_t copy: 8;
 unsigned int pad1: 8;
 mach_msg_descriptor_type_t type: 8;
} mach_msg_ool_descriptor32_t;

typedef struct{
 uint64_t address;
 boolean_t deallocate: 8;
 mach_msg_copy_options_t copy: 8;
 unsigned int pad1: 8;
 mach_msg_descriptor_type_t type: 8;
 mach_msg_size_t size;
} mach_msg_ool_descriptor64_t;

typedef struct{
 void* address;



 boolean_t deallocate: 8;
 mach_msg_copy_options_t copy: 8;
 unsigned int pad1: 8;
 mach_msg_descriptor_type_t type: 8;

 mach_msg_size_t size;

} mach_msg_ool_descriptor_t;

typedef struct{
 uint32_t address;
 mach_msg_size_t count;
 boolean_t deallocate: 8;
 mach_msg_copy_options_t copy: 8;
 mach_msg_type_name_t disposition : 8;
 mach_msg_descriptor_type_t type : 8;
} mach_msg_ool_ports_descriptor32_t;

typedef struct{
 uint64_t address;
 boolean_t deallocate: 8;
 mach_msg_copy_options_t copy: 8;
 mach_msg_type_name_t disposition : 8;
 mach_msg_descriptor_type_t type : 8;
 mach_msg_size_t count;
} mach_msg_ool_ports_descriptor64_t;

typedef struct{
 void* address;



 boolean_t deallocate: 8;
 mach_msg_copy_options_t copy: 8;
 mach_msg_type_name_t disposition : 8;
 mach_msg_descriptor_type_t type : 8;

 mach_msg_size_t count;

} mach_msg_ool_ports_descriptor_t;

typedef struct{
 uint32_t context;
 mach_port_name_t name;
 mach_msg_guard_flags_t flags : 16;
 mach_msg_type_name_t disposition : 8;
 mach_msg_descriptor_type_t type : 8;
} mach_msg_guarded_port_descriptor32_t;

typedef struct{
 uint64_t context;
 mach_msg_guard_flags_t flags : 16;
 mach_msg_type_name_t disposition : 8;
 mach_msg_descriptor_type_t type : 8;
 mach_port_name_t name;
} mach_msg_guarded_port_descriptor64_t;

typedef struct{
 mach_port_context_t context;



 mach_msg_guard_flags_t flags : 16;
 mach_msg_type_name_t disposition : 8;
 mach_msg_descriptor_type_t type : 8;

 mach_port_name_t name;

} mach_msg_guarded_port_descriptor_t;






typedef union{
 mach_msg_port_descriptor_t port;
 mach_msg_ool_descriptor_t out_of_line;
 mach_msg_ool_ports_descriptor_t ool_ports;
 mach_msg_type_descriptor_t type;
 mach_msg_guarded_port_descriptor_t guarded_port;
} mach_msg_descriptor_t;

typedef struct{
 mach_msg_size_t msgh_descriptor_count;
} mach_msg_body_t;




typedef struct{
 mach_msg_bits_t msgh_bits;
 mach_msg_size_t msgh_size;
 mach_port_t msgh_remote_port;
 mach_port_t msgh_local_port;
 mach_port_name_t msgh_voucher_port;
 mach_msg_id_t msgh_id;
} mach_msg_header_t;




typedef struct{
 mach_msg_header_t header;
 mach_msg_body_t body;
} mach_msg_base_t;

typedef unsigned int mach_msg_trailer_type_t;



typedef unsigned int mach_msg_trailer_size_t;
typedef char *mach_msg_trailer_info_t;

typedef struct{
 mach_msg_trailer_type_t msgh_trailer_type;
 mach_msg_trailer_size_t msgh_trailer_size;
} mach_msg_trailer_t;
typedef struct{
 mach_msg_trailer_type_t msgh_trailer_type;
 mach_msg_trailer_size_t msgh_trailer_size;
 mach_port_seqno_t msgh_seqno;
} mach_msg_seqno_trailer_t;

typedef struct{
 unsigned int val[2];
} security_token_t;

typedef struct{
 mach_msg_trailer_type_t msgh_trailer_type;
 mach_msg_trailer_size_t msgh_trailer_size;
 mach_port_seqno_t msgh_seqno;
 security_token_t msgh_sender;
} mach_msg_security_trailer_t;
typedef struct{
 unsigned int val[8];
} audit_token_t;

typedef struct{
 mach_msg_trailer_type_t msgh_trailer_type;
 mach_msg_trailer_size_t msgh_trailer_size;
 mach_port_seqno_t msgh_seqno;
 security_token_t msgh_sender;
 audit_token_t msgh_audit;
} mach_msg_audit_trailer_t;

typedef struct{
 mach_msg_trailer_type_t msgh_trailer_type;
 mach_msg_trailer_size_t msgh_trailer_size;
 mach_port_seqno_t msgh_seqno;
 security_token_t msgh_sender;
 audit_token_t msgh_audit;
 mach_port_context_t msgh_context;
} mach_msg_context_trailer_t;



typedef struct{
 mach_port_name_t sender;
} msg_labels_t;






typedef struct{
 mach_msg_trailer_type_t msgh_trailer_type;
 mach_msg_trailer_size_t msgh_trailer_size;
 mach_port_seqno_t msgh_seqno;
 security_token_t msgh_sender;
 audit_token_t msgh_audit;
 mach_port_context_t msgh_context;
 int msgh_ad;
 msg_labels_t msgh_labels;
} mach_msg_mac_trailer_t;
typedef mach_msg_mac_trailer_t mach_msg_max_trailer_t;
typedef mach_msg_security_trailer_t mach_msg_format_0_trailer_t;







extern const security_token_t KERNEL_SECURITY_TOKEN;


extern const audit_token_t KERNEL_AUDIT_TOKEN;

typedef integer_t mach_msg_options_t;

typedef struct{
 mach_msg_header_t header;
} mach_msg_empty_send_t;

typedef struct{
 mach_msg_header_t header;
 mach_msg_trailer_t trailer;
} mach_msg_empty_rcv_t;

typedef union{
 mach_msg_empty_send_t send;
 mach_msg_empty_rcv_t rcv;
} mach_msg_empty_t;

#pragma pack(pop)
typedef natural_t mach_msg_type_size_t;
typedef natural_t mach_msg_type_number_t;
typedef integer_t mach_msg_option_t;
typedef kern_return_t mach_msg_return_t;
extern "C" {
__attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)))
extern mach_msg_return_t mach_msg_overwrite(
 mach_msg_header_t *msg,
 mach_msg_option_t option,
 mach_msg_size_t send_size,
 mach_msg_size_t rcv_size,
 mach_port_name_t rcv_name,
 mach_msg_timeout_t timeout,
 mach_port_name_t notify,
 mach_msg_header_t *rcv_msg,
 mach_msg_size_t rcv_limit);
__attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)))
extern mach_msg_return_t mach_msg(
 mach_msg_header_t *msg,
 mach_msg_option_t option,
 mach_msg_size_t send_size,
 mach_msg_size_t rcv_size,
 mach_port_name_t rcv_name,
 mach_msg_timeout_t timeout,
 mach_port_name_t notify);







__attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)))
extern kern_return_t mach_voucher_deallocate(
 mach_port_name_t voucher);


}






#pragma clang assume_nonnull begin
// @protocol OS_dispatch_source <OS_dispatch_object> /* @end */
 typedef NSObject/*<OS_dispatch_source>*/ * __attribute__((objc_independent_class)) dispatch_source_t;;

extern "C" {
typedef const struct dispatch_source_type_s *dispatch_source_type_t;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_data_add;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_data_or;
__attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_data_replace;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_mach_send;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_mach_recv;
__attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_memorypressure;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_proc;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_read;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_signal;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_timer;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_vnode;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) const struct dispatch_source_type_s _dispatch_source_type_write;
typedef unsigned long dispatch_source_mach_send_flags_t;





typedef unsigned long dispatch_source_mach_recv_flags_t;
typedef unsigned long dispatch_source_memorypressure_flags_t;
typedef unsigned long dispatch_source_proc_flags_t;
typedef unsigned long dispatch_source_vnode_flags_t;
typedef unsigned long dispatch_source_timer_flags_t;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__malloc__)) __attribute__((__ns_returns_retained__)) __attribute__((__warn_unused_result__))
__attribute__((__nothrow__))
dispatch_source_t
dispatch_source_create(dispatch_source_type_t type,
 uintptr_t handle,
 unsigned long mask,
 dispatch_queue_t _Nullable queue);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_source_set_event_handler(dispatch_source_t source,
 dispatch_block_t _Nullable handler);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_source_set_event_handler_f(dispatch_source_t source,
 dispatch_function_t _Nullable handler);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_source_set_cancel_handler(dispatch_source_t source,
 dispatch_block_t _Nullable handler);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_source_set_cancel_handler_f(dispatch_source_t source,
 dispatch_function_t _Nullable handler);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_source_cancel(dispatch_source_t source);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__warn_unused_result__)) __attribute__((__pure__))
__attribute__((__nothrow__))
long
dispatch_source_testcancel(dispatch_source_t source);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__warn_unused_result__)) __attribute__((__pure__))
__attribute__((__nothrow__))
uintptr_t
dispatch_source_get_handle(dispatch_source_t source);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__warn_unused_result__)) __attribute__((__pure__))
__attribute__((__nothrow__))
unsigned long
dispatch_source_get_mask(dispatch_source_t source);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__warn_unused_result__)) __attribute__((__pure__))
__attribute__((__nothrow__))
unsigned long
dispatch_source_get_data(dispatch_source_t source);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_source_merge_data(dispatch_source_t source, unsigned long value);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_source_set_timer(dispatch_source_t source,
 dispatch_time_t start,
 uint64_t interval,
 uint64_t leeway);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.3)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_source_set_registration_handler(dispatch_source_t source,
 dispatch_block_t _Nullable handler);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.3)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_source_set_registration_handler_f(dispatch_source_t source,
 dispatch_function_t _Nullable handler);

}
#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin






// @protocol OS_dispatch_group <OS_dispatch_object> /* @end */
 typedef NSObject/*<OS_dispatch_group>*/ * __attribute__((objc_independent_class)) dispatch_group_t;

extern "C" {
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__malloc__)) __attribute__((__ns_returns_retained__)) __attribute__((__warn_unused_result__))
__attribute__((__nothrow__))
dispatch_group_t
dispatch_group_create(void);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_group_async(dispatch_group_t group,
 dispatch_queue_t queue,
 dispatch_block_t block);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(2))) __attribute__((__nonnull__(4)))
__attribute__((__nothrow__))
void
dispatch_group_async_f(dispatch_group_t group,
 dispatch_queue_t queue,
 void *_Nullable context,
 dispatch_function_t work);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
long
dispatch_group_wait(dispatch_group_t group, dispatch_time_t timeout);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_group_notify(dispatch_group_t group,
 dispatch_queue_t queue,
 dispatch_block_t block);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(2))) __attribute__((__nonnull__(4)))
__attribute__((__nothrow__))
void
dispatch_group_notify_f(dispatch_group_t group,
 dispatch_queue_t queue,
 void *_Nullable context,
 dispatch_function_t work);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_group_enter(dispatch_group_t group);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_group_leave(dispatch_group_t group);

}
#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin







// @protocol OS_dispatch_semaphore <OS_dispatch_object> /* @end */
 typedef NSObject/*<OS_dispatch_semaphore>*/ * __attribute__((objc_independent_class)) dispatch_semaphore_t;

extern "C" {
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__malloc__)) __attribute__((__ns_returns_retained__)) __attribute__((__warn_unused_result__))
__attribute__((__nothrow__))
dispatch_semaphore_t
dispatch_semaphore_create(long value);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
long
dispatch_semaphore_wait(dispatch_semaphore_t dsema, dispatch_time_t timeout);
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
long
dispatch_semaphore_signal(dispatch_semaphore_t dsema);

}
#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin

extern "C" {
typedef intptr_t dispatch_once_t;
__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))

void
dispatch_once(dispatch_once_t *predicate,
  __attribute__((__noescape__)) dispatch_block_t block);


static __inline__ __attribute__((__always_inline__)) __attribute__((__nonnull__)) __attribute__((__nothrow__))

void
_dispatch_once(dispatch_once_t *predicate,
  __attribute__((__noescape__)) dispatch_block_t block)
{
 if (__builtin_expect((*predicate), (~0l)) != ~0l) {
  dispatch_once(predicate, block);
 } else {
  __asm__ __volatile__("" ::: "memory");
 }
 __builtin_assume(*predicate == ~0l);
}





__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(3))) __attribute__((__nothrow__))

void
dispatch_once_f(dispatch_once_t *predicate, void *_Nullable context,
  dispatch_function_t function);


static __inline__ __attribute__((__always_inline__)) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(3)))
__attribute__((__nothrow__))

void
_dispatch_once_f(dispatch_once_t *predicate, void *_Nullable context,
  dispatch_function_t function)
{
 if (__builtin_expect((*predicate), (~0l)) != ~0l) {
  dispatch_once_f(predicate, context, function);
 } else {
  __asm__ __volatile__("" ::: "memory");
 }
 __builtin_assume(*predicate == ~0l);
}




}
#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin

extern "C" {
// @protocol OS_dispatch_data <OS_dispatch_object> /* @end */
 typedef NSObject/*<OS_dispatch_data>*/ * __attribute__((objc_independent_class)) dispatch_data_t;
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) struct dispatch_data_s _dispatch_data_empty;
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) const dispatch_block_t _dispatch_data_destructor_free;







__attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)))
extern __attribute__((visibility("default"))) const dispatch_block_t _dispatch_data_destructor_munmap;
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__ns_returns_retained__)) __attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_data_t
dispatch_data_create(const void *buffer,
 size_t size,
 dispatch_queue_t _Nullable queue,
 dispatch_block_t _Nullable destructor);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__pure__)) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
size_t
dispatch_data_get_size(dispatch_data_t data);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__ns_returns_retained__))
__attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_data_t
dispatch_data_create_map(dispatch_data_t data,
 const void *_Nullable *_Nullable buffer_ptr,
 size_t *_Nullable size_ptr);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__ns_returns_retained__))
__attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_data_t
dispatch_data_create_concat(dispatch_data_t data1, dispatch_data_t data2);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__ns_returns_retained__))
__attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_data_t
dispatch_data_create_subrange(dispatch_data_t data,
 size_t offset,
 size_t length);
typedef bool (*dispatch_data_applier_t)(dispatch_data_t region,
 size_t offset,
 const void *buffer,
 size_t size);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
bool
dispatch_data_apply(dispatch_data_t data,
 __attribute__((__noescape__)) dispatch_data_applier_t applier);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(3))) __attribute__((__ns_returns_retained__))
__attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_data_t
dispatch_data_copy_region(dispatch_data_t data,
 size_t location,
 size_t *offset_ptr);

}
#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin

extern "C" {
typedef int dispatch_fd_t;
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(3))) __attribute__((__nonnull__(4))) __attribute__((__nothrow__))
void
dispatch_read(dispatch_fd_t fd,
 size_t length,
 dispatch_queue_t queue,
 void (^handler)(dispatch_data_t data, int error));
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(2))) __attribute__((__nonnull__(3))) __attribute__((__nonnull__(4)))
__attribute__((__nothrow__))
void
dispatch_write(dispatch_fd_t fd,
 dispatch_data_t data,
 dispatch_queue_t queue,
 void (^handler)(dispatch_data_t _Nullable data, int error));
// @protocol OS_dispatch_io <OS_dispatch_object> /* @end */
 typedef NSObject/*<OS_dispatch_io>*/ * __attribute__((objc_independent_class)) dispatch_io_t;
typedef unsigned long dispatch_io_type_t;
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__malloc__)) __attribute__((__ns_returns_retained__)) __attribute__((__warn_unused_result__))
__attribute__((__nothrow__))
dispatch_io_t
dispatch_io_create(dispatch_io_type_t type,
 dispatch_fd_t fd,
 dispatch_queue_t queue,
 void (^cleanup_handler)(int error));
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(2))) __attribute__((__malloc__)) __attribute__((__ns_returns_retained__))
__attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_io_t
dispatch_io_create_with_path(dispatch_io_type_t type,
 const char *path, int oflag, mode_t mode,
 dispatch_queue_t queue,
 void (^cleanup_handler)(int error));
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(2))) __attribute__((__malloc__)) __attribute__((__ns_returns_retained__))
__attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_io_t
dispatch_io_create_with_io(dispatch_io_type_t type,
 dispatch_io_t io,
 dispatch_queue_t queue,
 void (^cleanup_handler)(int error));
typedef void (*dispatch_io_handler_t)(bool done, dispatch_data_t _Nullable data,
  int error);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(4))) __attribute__((__nonnull__(5)))
__attribute__((__nothrow__))
void
dispatch_io_read(dispatch_io_t channel,
 off_t offset,
 size_t length,
 dispatch_queue_t queue,
 dispatch_io_handler_t io_handler);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nonnull__(3))) __attribute__((__nonnull__(4)))
__attribute__((__nonnull__(5))) __attribute__((__nothrow__))
void
dispatch_io_write(dispatch_io_t channel,
 off_t offset,
 dispatch_data_t data,
 dispatch_queue_t queue,
 dispatch_io_handler_t io_handler);
typedef unsigned long dispatch_io_close_flags_t;
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_io_close(dispatch_io_t channel, dispatch_io_close_flags_t flags);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_io_barrier(dispatch_io_t channel, dispatch_block_t barrier);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__warn_unused_result__)) __attribute__((__nothrow__))
dispatch_fd_t
dispatch_io_get_descriptor(dispatch_io_t channel);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_io_set_high_water(dispatch_io_t channel, size_t high_water);
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_io_set_low_water(dispatch_io_t channel, size_t low_water);
typedef unsigned long dispatch_io_interval_flags_t;
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__(1))) __attribute__((__nothrow__))
void
dispatch_io_set_interval(dispatch_io_t channel,
 uint64_t interval,
 dispatch_io_interval_flags_t flags);

}
#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin

extern "C" {
// @protocol OS_dispatch_workloop <OS_dispatch_queue> /* @end */
 typedef NSObject/*<OS_dispatch_workloop>*/ * __attribute__((objc_independent_class)) dispatch_workloop_t;
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__malloc__)) __attribute__((__ns_returns_retained__)) __attribute__((__warn_unused_result__))
__attribute__((__nothrow__))
dispatch_workloop_t
dispatch_workloop_create(const char *_Nullable label);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__malloc__)) __attribute__((__ns_returns_retained__)) __attribute__((__warn_unused_result__))
__attribute__((__nothrow__))
dispatch_workloop_t
dispatch_workloop_create_inactive(const char *_Nullable label);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0)))
extern __attribute__((visibility("default"))) __attribute__((__nonnull__)) __attribute__((__nothrow__))
void
dispatch_workloop_set_autorelease_frequency(dispatch_workloop_t workloop,
  dispatch_autorelease_frequency_t frequency);

}
#pragma clang assume_nonnull end


extern "C" {

typedef struct {
    CFIndex domain;
    SInt32 error;
} CFStreamError;

typedef CFStringRef CFStreamPropertyKey __attribute__((swift_wrapper(struct)));

typedef CFIndex CFStreamStatus; enum {
    kCFStreamStatusNotOpen = 0,
    kCFStreamStatusOpening,
    kCFStreamStatusOpen,
    kCFStreamStatusReading,
    kCFStreamStatusWriting,
    kCFStreamStatusAtEnd,
    kCFStreamStatusClosed,
    kCFStreamStatusError
};

typedef CFOptionFlags CFStreamEventType; enum {
    kCFStreamEventNone = 0,
    kCFStreamEventOpenCompleted = 1,
    kCFStreamEventHasBytesAvailable = 2,
    kCFStreamEventCanAcceptBytes = 4,
    kCFStreamEventErrorOccurred = 8,
    kCFStreamEventEndEncountered = 16
};

typedef struct {
    CFIndex version;
    void * _Null_unspecified info;
    void *_Null_unspecified(* _Null_unspecified retain)(void * _Null_unspecified info);
    void (* _Null_unspecified release)(void * _Null_unspecified info);
    CFStringRef _Null_unspecified (* _Null_unspecified copyDescription)(void * _Null_unspecified info);
} CFStreamClientContext;

typedef struct __attribute__((objc_bridge_mutable(NSInputStream))) __CFReadStream * CFReadStreamRef;
typedef struct __attribute__((objc_bridge_mutable(NSOutputStream))) __CFWriteStream * CFWriteStreamRef;

typedef void (*CFReadStreamClientCallBack)(CFReadStreamRef _Null_unspecified stream, CFStreamEventType type, void * _Null_unspecified clientCallBackInfo);
typedef void (*CFWriteStreamClientCallBack)(CFWriteStreamRef _Null_unspecified stream, CFStreamEventType type, void * _Null_unspecified clientCallBackInfo);

extern
CFTypeID CFReadStreamGetTypeID(void);
extern
CFTypeID CFWriteStreamGetTypeID(void);




extern
const CFStreamPropertyKey _Null_unspecified kCFStreamPropertyDataWritten;


extern
CFReadStreamRef _Null_unspecified CFReadStreamCreateWithBytesNoCopy(CFAllocatorRef _Null_unspecified alloc, const UInt8 * _Null_unspecified bytes, CFIndex length, CFAllocatorRef _Null_unspecified bytesDeallocator);


extern
CFWriteStreamRef _Null_unspecified CFWriteStreamCreateWithBuffer(CFAllocatorRef _Null_unspecified alloc, UInt8 * _Null_unspecified buffer, CFIndex bufferCapacity);


extern
CFWriteStreamRef _Null_unspecified CFWriteStreamCreateWithAllocatedBuffers(CFAllocatorRef _Null_unspecified alloc, CFAllocatorRef _Null_unspecified bufferAllocator);


extern
CFReadStreamRef _Null_unspecified CFReadStreamCreateWithFile(CFAllocatorRef _Null_unspecified alloc, CFURLRef _Null_unspecified fileURL);
extern
CFWriteStreamRef _Null_unspecified CFWriteStreamCreateWithFile(CFAllocatorRef _Null_unspecified alloc, CFURLRef _Null_unspecified fileURL);

extern
void CFStreamCreateBoundPair(CFAllocatorRef _Null_unspecified alloc, CFReadStreamRef _Null_unspecified * _Null_unspecified readStream, CFWriteStreamRef _Null_unspecified * _Null_unspecified writeStream, CFIndex transferBufferSize);



extern
const CFStreamPropertyKey _Null_unspecified kCFStreamPropertyAppendToFile;

extern
const CFStreamPropertyKey _Null_unspecified kCFStreamPropertyFileCurrentOffset;





extern
const CFStreamPropertyKey _Null_unspecified kCFStreamPropertySocketNativeHandle;


extern
const CFStreamPropertyKey _Null_unspecified kCFStreamPropertySocketRemoteHostName;


extern
const CFStreamPropertyKey _Null_unspecified kCFStreamPropertySocketRemotePortNumber;







extern const int kCFStreamErrorDomainSOCKS __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamPropertySOCKSProxy __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamPropertySOCKSProxyHost __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamPropertySOCKSProxyPort __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamPropertySOCKSVersion __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamSocketSOCKSVersion4 __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamSocketSOCKSVersion5 __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamPropertySOCKSUser __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamPropertySOCKSPassword __attribute__((availability(ios,introduced=2_0)));
extern const int kCFStreamErrorDomainSSL __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamPropertySocketSecurityLevel __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamSocketSecurityLevelNone __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamSocketSecurityLevelSSLv2 __attribute__((availability(ios,introduced=2_0,deprecated=10_0,message="" )));
extern const CFStringRef _Nonnull kCFStreamSocketSecurityLevelSSLv3 __attribute__((availability(ios,introduced=2_0,deprecated=10_0,message="" )));
extern const CFStringRef _Nonnull kCFStreamSocketSecurityLevelTLSv1 __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamSocketSecurityLevelNegotiatedSSL __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef _Nonnull kCFStreamPropertyShouldCloseNativeSocket __attribute__((availability(ios,introduced=2_0)));



extern
void CFStreamCreatePairWithSocket(CFAllocatorRef _Null_unspecified alloc, CFSocketNativeHandle sock, CFReadStreamRef _Null_unspecified * _Null_unspecified readStream, CFWriteStreamRef _Null_unspecified * _Null_unspecified writeStream);
extern
void CFStreamCreatePairWithSocketToHost(CFAllocatorRef _Null_unspecified alloc, CFStringRef _Null_unspecified host, UInt32 port, CFReadStreamRef _Null_unspecified * _Null_unspecified readStream, CFWriteStreamRef _Null_unspecified * _Null_unspecified writeStream);
extern
void CFStreamCreatePairWithPeerSocketSignature(CFAllocatorRef _Null_unspecified alloc, const CFSocketSignature * _Null_unspecified signature, CFReadStreamRef _Null_unspecified * _Null_unspecified readStream, CFWriteStreamRef _Null_unspecified * _Null_unspecified writeStream);




extern
CFStreamStatus CFReadStreamGetStatus(CFReadStreamRef _Null_unspecified stream);
extern
CFStreamStatus CFWriteStreamGetStatus(CFWriteStreamRef _Null_unspecified stream);


extern
CFErrorRef _Null_unspecified CFReadStreamCopyError(CFReadStreamRef _Null_unspecified stream) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFErrorRef _Null_unspecified CFWriteStreamCopyError(CFWriteStreamRef _Null_unspecified stream) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






extern
Boolean CFReadStreamOpen(CFReadStreamRef _Null_unspecified stream);
extern
Boolean CFWriteStreamOpen(CFWriteStreamRef _Null_unspecified stream);




extern
void CFReadStreamClose(CFReadStreamRef _Null_unspecified stream);
extern
void CFWriteStreamClose(CFWriteStreamRef _Null_unspecified stream);



extern
Boolean CFReadStreamHasBytesAvailable(CFReadStreamRef _Null_unspecified stream);
extern
CFIndex CFReadStreamRead(CFReadStreamRef _Null_unspecified stream, UInt8 * _Null_unspecified buffer, CFIndex bufferLength);
extern
const UInt8 * _Null_unspecified CFReadStreamGetBuffer(CFReadStreamRef _Null_unspecified stream, CFIndex maxBytesToRead, CFIndex * _Null_unspecified numBytesRead);



extern
Boolean CFWriteStreamCanAcceptBytes(CFWriteStreamRef _Null_unspecified stream);






extern
CFIndex CFWriteStreamWrite(CFWriteStreamRef _Null_unspecified stream, const UInt8 * _Null_unspecified buffer, CFIndex bufferLength);
extern
CFTypeRef _Null_unspecified CFReadStreamCopyProperty(CFReadStreamRef _Null_unspecified stream, CFStreamPropertyKey _Null_unspecified propertyName);
extern
CFTypeRef _Null_unspecified CFWriteStreamCopyProperty(CFWriteStreamRef _Null_unspecified stream, CFStreamPropertyKey _Null_unspecified propertyName);



extern
Boolean CFReadStreamSetProperty(CFReadStreamRef _Null_unspecified stream, CFStreamPropertyKey _Null_unspecified propertyName, CFTypeRef _Null_unspecified propertyValue);
extern
Boolean CFWriteStreamSetProperty(CFWriteStreamRef _Null_unspecified stream, CFStreamPropertyKey _Null_unspecified propertyName, CFTypeRef _Null_unspecified propertyValue);
extern
Boolean CFReadStreamSetClient(CFReadStreamRef _Null_unspecified stream, CFOptionFlags streamEvents, CFReadStreamClientCallBack _Null_unspecified clientCB, CFStreamClientContext * _Null_unspecified clientContext);
extern
Boolean CFWriteStreamSetClient(CFWriteStreamRef _Null_unspecified stream, CFOptionFlags streamEvents, CFWriteStreamClientCallBack _Null_unspecified clientCB, CFStreamClientContext * _Null_unspecified clientContext);

extern
void CFReadStreamScheduleWithRunLoop(CFReadStreamRef _Null_unspecified stream, CFRunLoopRef _Null_unspecified runLoop, CFRunLoopMode _Null_unspecified runLoopMode);
extern
void CFWriteStreamScheduleWithRunLoop(CFWriteStreamRef _Null_unspecified stream, CFRunLoopRef _Null_unspecified runLoop, _Null_unspecified CFRunLoopMode runLoopMode);

extern
void CFReadStreamUnscheduleFromRunLoop(CFReadStreamRef _Null_unspecified stream, CFRunLoopRef _Null_unspecified runLoop, CFRunLoopMode _Null_unspecified runLoopMode);
extern
void CFWriteStreamUnscheduleFromRunLoop(CFWriteStreamRef _Null_unspecified stream, CFRunLoopRef _Null_unspecified runLoop, CFRunLoopMode _Null_unspecified runLoopMode);
extern
void CFReadStreamSetDispatchQueue(CFReadStreamRef _Null_unspecified stream, dispatch_queue_t _Null_unspecified q) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
void CFWriteStreamSetDispatchQueue(CFWriteStreamRef _Null_unspecified stream, dispatch_queue_t _Null_unspecified q) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






extern
dispatch_queue_t _Null_unspecified CFReadStreamCopyDispatchQueue(CFReadStreamRef _Null_unspecified stream) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
dispatch_queue_t _Null_unspecified CFWriteStreamCopyDispatchQueue(CFWriteStreamRef _Null_unspecified stream) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



typedef CFIndex CFStreamErrorDomain; enum {
    kCFStreamErrorDomainCustom = -1L,
    kCFStreamErrorDomainPOSIX = 1,
    kCFStreamErrorDomainMacOSStatus
};

extern
CFStreamError CFReadStreamGetError(CFReadStreamRef _Null_unspecified stream);
extern
CFStreamError CFWriteStreamGetError(CFWriteStreamRef _Null_unspecified stream);


}


extern "C" {

typedef CFOptionFlags CFPropertyListMutabilityOptions; enum {
    kCFPropertyListImmutable = 0,
    kCFPropertyListMutableContainers = 1 << 0,
    kCFPropertyListMutableContainersAndLeaves = 1 << 1,
};
extern
CFPropertyListRef CFPropertyListCreateFromXMLData(CFAllocatorRef allocator, CFDataRef xmlData, CFOptionFlags mutabilityOption, CFStringRef *errorString) __attribute__((availability(macos,introduced=10.0,deprecated=10.10,message="Use CFPropertyListCreateWithData instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFPropertyListCreateWithData instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFPropertyListCreateWithData instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFPropertyListCreateWithData instead.")));
extern
CFDataRef CFPropertyListCreateXMLData(CFAllocatorRef allocator, CFPropertyListRef propertyList) __attribute__((availability(macos,introduced=10.0,deprecated=10.10,message="Use CFPropertyListCreateData instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFPropertyListCreateData instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFPropertyListCreateData instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFPropertyListCreateData instead.")));
extern
CFPropertyListRef CFPropertyListCreateDeepCopy(CFAllocatorRef allocator, CFPropertyListRef propertyList, CFOptionFlags mutabilityOption);

typedef CFIndex CFPropertyListFormat; enum {
    kCFPropertyListOpenStepFormat = 1,
    kCFPropertyListXMLFormat_v1_0 = 100,
    kCFPropertyListBinaryFormat_v1_0 = 200
};






extern
Boolean CFPropertyListIsValid(CFPropertyListRef plist, CFPropertyListFormat format);
extern
CFIndex CFPropertyListWriteToStream(CFPropertyListRef propertyList, CFWriteStreamRef stream, CFPropertyListFormat format, CFStringRef *errorString) __attribute__((availability(macos,introduced=10.2,deprecated=10.10,message="Use CFPropertyListWrite instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFPropertyListWrite instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFPropertyListWrite instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFPropertyListWrite instead.")));
extern
CFPropertyListRef CFPropertyListCreateFromStream(CFAllocatorRef allocator, CFReadStreamRef stream, CFIndex streamLength, CFOptionFlags mutabilityOption, CFPropertyListFormat *format, CFStringRef *errorString) __attribute__((availability(macos,introduced=10.2,deprecated=10.10,message="Use CFPropertyListCreateWithStream instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use CFPropertyListCreateWithStream instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFPropertyListCreateWithStream instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFPropertyListCreateWithStream instead.")));





enum {
    kCFPropertyListReadCorruptError = 3840,
    kCFPropertyListReadUnknownVersionError = 3841,
    kCFPropertyListReadStreamError = 3842,
    kCFPropertyListWriteStreamError = 3851,
} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFPropertyListRef CFPropertyListCreateWithData(CFAllocatorRef allocator, CFDataRef data, CFOptionFlags options, CFPropertyListFormat *format, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFPropertyListRef CFPropertyListCreateWithStream(CFAllocatorRef allocator, CFReadStreamRef stream, CFIndex streamLength, CFOptionFlags options, CFPropertyListFormat *format, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFIndex CFPropertyListWrite(CFPropertyListRef propertyList, CFWriteStreamRef stream, CFPropertyListFormat format, CFOptionFlags options, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern
CFDataRef CFPropertyListCreateData(CFAllocatorRef allocator, CFPropertyListRef propertyList, CFPropertyListFormat format, CFOptionFlags options, CFErrorRef *error) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



}
extern "C" {
typedef const void * (*CFSetRetainCallBack)(CFAllocatorRef allocator, const void *value);







typedef void (*CFSetReleaseCallBack)(CFAllocatorRef allocator, const void *value);







typedef CFStringRef (*CFSetCopyDescriptionCallBack)(const void *value);
typedef Boolean (*CFSetEqualCallBack)(const void *value1, const void *value2);







typedef CFHashCode (*CFSetHashCallBack)(const void *value);
typedef struct {
    CFIndex version;
    CFSetRetainCallBack retain;
    CFSetReleaseCallBack release;
    CFSetCopyDescriptionCallBack copyDescription;
    CFSetEqualCallBack equal;
    CFSetHashCallBack hash;
} CFSetCallBacks;






extern
const CFSetCallBacks kCFTypeSetCallBacks;







extern
const CFSetCallBacks kCFCopyStringSetCallBacks;
typedef void (*CFSetApplierFunction)(const void *value, void *context);





typedef const struct __attribute__((objc_bridge(NSSet))) __CFSet * CFSetRef;





typedef struct __attribute__((objc_bridge_mutable(NSMutableSet))) __CFSet * CFMutableSetRef;





extern
CFTypeID CFSetGetTypeID(void);
extern
CFSetRef CFSetCreate(CFAllocatorRef allocator, const void **values, CFIndex numValues, const CFSetCallBacks *callBacks);
extern
CFSetRef CFSetCreateCopy(CFAllocatorRef allocator, CFSetRef theSet);
extern
CFMutableSetRef CFSetCreateMutable(CFAllocatorRef allocator, CFIndex capacity, const CFSetCallBacks *callBacks);
extern
CFMutableSetRef CFSetCreateMutableCopy(CFAllocatorRef allocator, CFIndex capacity, CFSetRef theSet);
extern
CFIndex CFSetGetCount(CFSetRef theSet);
extern
CFIndex CFSetGetCountOfValue(CFSetRef theSet, const void *value);
extern
Boolean CFSetContainsValue(CFSetRef theSet, const void *value);
extern
const void *CFSetGetValue(CFSetRef theSet, const void *value);
extern
Boolean CFSetGetValueIfPresent(CFSetRef theSet, const void *candidate, const void **value);
extern
void CFSetGetValues(CFSetRef theSet, const void **values);
extern
void CFSetApplyFunction(CFSetRef theSet, CFSetApplierFunction __attribute__((noescape)) applier, void *context);
extern
void CFSetAddValue(CFMutableSetRef theSet, const void *value);
extern
void CFSetReplaceValue(CFMutableSetRef theSet, const void *value);
extern
void CFSetSetValue(CFMutableSetRef theSet, const void *value);
extern
void CFSetRemoveValue(CFMutableSetRef theSet, const void *value);
extern
void CFSetRemoveAllValues(CFMutableSetRef theSet);

}

extern "C" {

typedef CFIndex CFStringEncodings; enum {

    kCFStringEncodingMacJapanese = 1,
    kCFStringEncodingMacChineseTrad = 2,
    kCFStringEncodingMacKorean = 3,
    kCFStringEncodingMacArabic = 4,
    kCFStringEncodingMacHebrew = 5,
    kCFStringEncodingMacGreek = 6,
    kCFStringEncodingMacCyrillic = 7,
    kCFStringEncodingMacDevanagari = 9,
    kCFStringEncodingMacGurmukhi = 10,
    kCFStringEncodingMacGujarati = 11,
    kCFStringEncodingMacOriya = 12,
    kCFStringEncodingMacBengali = 13,
    kCFStringEncodingMacTamil = 14,
    kCFStringEncodingMacTelugu = 15,
    kCFStringEncodingMacKannada = 16,
    kCFStringEncodingMacMalayalam = 17,
    kCFStringEncodingMacSinhalese = 18,
    kCFStringEncodingMacBurmese = 19,
    kCFStringEncodingMacKhmer = 20,
    kCFStringEncodingMacThai = 21,
    kCFStringEncodingMacLaotian = 22,
    kCFStringEncodingMacGeorgian = 23,
    kCFStringEncodingMacArmenian = 24,
    kCFStringEncodingMacChineseSimp = 25,
    kCFStringEncodingMacTibetan = 26,
    kCFStringEncodingMacMongolian = 27,
    kCFStringEncodingMacEthiopic = 28,
    kCFStringEncodingMacCentralEurRoman = 29,
    kCFStringEncodingMacVietnamese = 30,
    kCFStringEncodingMacExtArabic = 31,

    kCFStringEncodingMacSymbol = 33,
    kCFStringEncodingMacDingbats = 34,
    kCFStringEncodingMacTurkish = 35,
    kCFStringEncodingMacCroatian = 36,
    kCFStringEncodingMacIcelandic = 37,
    kCFStringEncodingMacRomanian = 38,
    kCFStringEncodingMacCeltic = 39,
    kCFStringEncodingMacGaelic = 40,

    kCFStringEncodingMacFarsi = 0x8C,

    kCFStringEncodingMacUkrainian = 0x98,

    kCFStringEncodingMacInuit = 0xEC,
    kCFStringEncodingMacVT100 = 0xFC,

    kCFStringEncodingMacHFS = 0xFF,






    kCFStringEncodingISOLatin2 = 0x0202,
    kCFStringEncodingISOLatin3 = 0x0203,
    kCFStringEncodingISOLatin4 = 0x0204,
    kCFStringEncodingISOLatinCyrillic = 0x0205,
    kCFStringEncodingISOLatinArabic = 0x0206,
    kCFStringEncodingISOLatinGreek = 0x0207,
    kCFStringEncodingISOLatinHebrew = 0x0208,
    kCFStringEncodingISOLatin5 = 0x0209,
    kCFStringEncodingISOLatin6 = 0x020A,
    kCFStringEncodingISOLatinThai = 0x020B,
    kCFStringEncodingISOLatin7 = 0x020D,
    kCFStringEncodingISOLatin8 = 0x020E,
    kCFStringEncodingISOLatin9 = 0x020F,
    kCFStringEncodingISOLatin10 = 0x0210,


    kCFStringEncodingDOSLatinUS = 0x0400,
    kCFStringEncodingDOSGreek = 0x0405,
    kCFStringEncodingDOSBalticRim = 0x0406,
    kCFStringEncodingDOSLatin1 = 0x0410,
    kCFStringEncodingDOSGreek1 = 0x0411,
    kCFStringEncodingDOSLatin2 = 0x0412,
    kCFStringEncodingDOSCyrillic = 0x0413,
    kCFStringEncodingDOSTurkish = 0x0414,
    kCFStringEncodingDOSPortuguese = 0x0415,
    kCFStringEncodingDOSIcelandic = 0x0416,
    kCFStringEncodingDOSHebrew = 0x0417,
    kCFStringEncodingDOSCanadianFrench = 0x0418,
    kCFStringEncodingDOSArabic = 0x0419,
    kCFStringEncodingDOSNordic = 0x041A,
    kCFStringEncodingDOSRussian = 0x041B,
    kCFStringEncodingDOSGreek2 = 0x041C,
    kCFStringEncodingDOSThai = 0x041D,
    kCFStringEncodingDOSJapanese = 0x0420,
    kCFStringEncodingDOSChineseSimplif = 0x0421,
    kCFStringEncodingDOSKorean = 0x0422,
    kCFStringEncodingDOSChineseTrad = 0x0423,

    kCFStringEncodingWindowsLatin2 = 0x0501,
    kCFStringEncodingWindowsCyrillic = 0x0502,
    kCFStringEncodingWindowsGreek = 0x0503,
    kCFStringEncodingWindowsLatin5 = 0x0504,
    kCFStringEncodingWindowsHebrew = 0x0505,
    kCFStringEncodingWindowsArabic = 0x0506,
    kCFStringEncodingWindowsBalticRim = 0x0507,
    kCFStringEncodingWindowsVietnamese = 0x0508,
    kCFStringEncodingWindowsKoreanJohab = 0x0510,



    kCFStringEncodingANSEL = 0x0601,
    kCFStringEncodingJIS_X0201_76 = 0x0620,
    kCFStringEncodingJIS_X0208_83 = 0x0621,
    kCFStringEncodingJIS_X0208_90 = 0x0622,
    kCFStringEncodingJIS_X0212_90 = 0x0623,
    kCFStringEncodingJIS_C6226_78 = 0x0624,
    kCFStringEncodingShiftJIS_X0213 __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 0x0628,
    kCFStringEncodingShiftJIS_X0213_MenKuTen = 0x0629,
    kCFStringEncodingGB_2312_80 = 0x0630,
    kCFStringEncodingGBK_95 = 0x0631,
    kCFStringEncodingGB_18030_2000 = 0x0632,
    kCFStringEncodingKSC_5601_87 = 0x0640,
    kCFStringEncodingKSC_5601_92_Johab = 0x0641,
    kCFStringEncodingCNS_11643_92_P1 = 0x0651,
    kCFStringEncodingCNS_11643_92_P2 = 0x0652,
    kCFStringEncodingCNS_11643_92_P3 = 0x0653,


    kCFStringEncodingISO_2022_JP = 0x0820,
    kCFStringEncodingISO_2022_JP_2 = 0x0821,
    kCFStringEncodingISO_2022_JP_1 = 0x0822,
    kCFStringEncodingISO_2022_JP_3 = 0x0823,
    kCFStringEncodingISO_2022_CN = 0x0830,
    kCFStringEncodingISO_2022_CN_EXT = 0x0831,
    kCFStringEncodingISO_2022_KR = 0x0840,


    kCFStringEncodingEUC_JP = 0x0920,
    kCFStringEncodingEUC_CN = 0x0930,
    kCFStringEncodingEUC_TW = 0x0931,
    kCFStringEncodingEUC_KR = 0x0940,


    kCFStringEncodingShiftJIS = 0x0A01,
    kCFStringEncodingKOI8_R = 0x0A02,
    kCFStringEncodingBig5 = 0x0A03,
    kCFStringEncodingMacRomanLatin1 = 0x0A04,
    kCFStringEncodingHZ_GB_2312 = 0x0A05,
    kCFStringEncodingBig5_HKSCS_1999 = 0x0A06,
    kCFStringEncodingVISCII = 0x0A07,
    kCFStringEncodingKOI8_U = 0x0A08,
    kCFStringEncodingBig5_E = 0x0A09,



    kCFStringEncodingNextStepJapanese = 0x0B02,


    kCFStringEncodingEBCDIC_US = 0x0C01,
    kCFStringEncodingEBCDIC_CP037 = 0x0C02,

    kCFStringEncodingUTF7 __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 0x04000100,
    kCFStringEncodingUTF7_IMAP __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 0x0A10,


    kCFStringEncodingShiftJIS_X0213_00 = 0x0628
};

}

extern "C" {
typedef const void * (*CFTreeRetainCallBack)(const void *info);







typedef void (*CFTreeReleaseCallBack)(const void *info);
typedef CFStringRef (*CFTreeCopyDescriptionCallBack)(const void *info);
typedef struct {
    CFIndex version;
    void * info;
    CFTreeRetainCallBack retain;
    CFTreeReleaseCallBack release;
    CFTreeCopyDescriptionCallBack copyDescription;
} CFTreeContext;
typedef void (*CFTreeApplierFunction)(const void *value, void *context);





typedef struct __attribute__((objc_bridge_mutable(id))) __CFTree * CFTreeRef;





extern
CFTypeID CFTreeGetTypeID(void);
extern
CFTreeRef CFTreeCreate(CFAllocatorRef allocator, const CFTreeContext *context);
extern
CFTreeRef CFTreeGetParent(CFTreeRef tree);
extern
CFTreeRef CFTreeGetNextSibling(CFTreeRef tree);
extern
CFTreeRef CFTreeGetFirstChild(CFTreeRef tree);
extern
void CFTreeGetContext(CFTreeRef tree, CFTreeContext *context);
extern
CFIndex CFTreeGetChildCount(CFTreeRef tree);
extern
CFTreeRef CFTreeGetChildAtIndex(CFTreeRef tree, CFIndex idx);
extern
void CFTreeGetChildren(CFTreeRef tree, CFTreeRef *children);
extern
void CFTreeApplyFunctionToChildren(CFTreeRef tree, CFTreeApplierFunction __attribute__((noescape)) applier, void *context);
extern
CFTreeRef CFTreeFindRoot(CFTreeRef tree);
extern
void CFTreeSetContext(CFTreeRef tree, const CFTreeContext *context);
extern
void CFTreePrependChild(CFTreeRef tree, CFTreeRef newChild);
extern
void CFTreeAppendChild(CFTreeRef tree, CFTreeRef newChild);
extern
void CFTreeInsertSibling(CFTreeRef tree, CFTreeRef newSibling);







extern
void CFTreeRemove(CFTreeRef tree);







extern
void CFTreeRemoveAllChildren(CFTreeRef tree);
extern
void CFTreeSortChildren(CFTreeRef tree, CFComparatorFunction comparator, void *context);

}

extern "C" {
extern
Boolean CFURLCreateDataAndPropertiesFromResource(CFAllocatorRef alloc, CFURLRef url, CFDataRef *resourceData, CFDictionaryRef *properties, CFArrayRef desiredProperties, SInt32 *errorCode) __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="For resource data, use the CFReadStream API. For file resource properties, use CFURLCopyResourcePropertiesForKeys."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="For resource data, use the CFReadStream API. For file resource properties, use CFURLCopyResourcePropertiesForKeys."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="For resource data, use the CFReadStream API. For file resource properties, use CFURLCopyResourcePropertiesForKeys."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="For resource data, use the CFReadStream API. For file resource properties, use CFURLCopyResourcePropertiesForKeys.")));
extern
Boolean CFURLWriteDataAndPropertiesToResource(CFURLRef url, CFDataRef dataToWrite, CFDictionaryRef propertiesToWrite, SInt32 *errorCode) __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="For resource data, use the CFWriteStream API. For file resource properties, use CFURLSetResourcePropertiesForKeys."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="For resource data, use the CFWriteStream API. For file resource properties, use CFURLSetResourcePropertiesForKeys."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="For resource data, use the CFWriteStream API. For file resource properties, use CFURLSetResourcePropertiesForKeys."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="For resource data, use the CFWriteStream API. For file resource properties, use CFURLSetResourcePropertiesForKeys.")));





extern
Boolean CFURLDestroyResource(CFURLRef url, SInt32 *errorCode) __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use CFURLGetFileSystemRepresentation and removefile(3) instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use CFURLGetFileSystemRepresentation and removefile(3) instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFURLGetFileSystemRepresentation and removefile(3) instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFURLGetFileSystemRepresentation and removefile(3) instead.")));





extern
CFTypeRef CFURLCreatePropertyFromResource(CFAllocatorRef alloc, CFURLRef url, CFStringRef property, SInt32 *errorCode) __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="For file resource properties, use CFURLCopyResourcePropertyForKey."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="For file resource properties, use CFURLCopyResourcePropertyForKey."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="For file resource properties, use CFURLCopyResourcePropertyForKey."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="For file resource properties, use CFURLCopyResourcePropertyForKey.")));



typedef CFIndex CFURLError; enum {
    kCFURLUnknownError = -10L,
    kCFURLUnknownSchemeError = -11L,
    kCFURLResourceNotFoundError = -12L,
    kCFURLResourceAccessViolationError = -13L,
    kCFURLRemoteHostUnavailableError = -14L,
    kCFURLImproperArgumentsError = -15L,
    kCFURLUnknownPropertyKeyError = -16L,
    kCFURLPropertyKeyUnavailableError = -17L,
    kCFURLTimeoutError = -18L
} __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use CFError codes instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use CFError codes instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFError codes instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFError codes instead")));



extern
const CFStringRef kCFURLFileExists __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use CFURLResourceIsReachable instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use CFURLResourceIsReachable instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFURLResourceIsReachable instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFURLResourceIsReachable instead.")));
extern
const CFStringRef kCFURLFileDirectoryContents __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use the CFURLEnumerator API instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use the CFURLEnumerator API instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use the CFURLEnumerator API instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use the CFURLEnumerator API instead.")));
extern
const CFStringRef kCFURLFileLength __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSizeKey instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSizeKey instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSizeKey instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSizeKey instead.")));
extern
const CFStringRef kCFURLFileLastModificationTime __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use CFURLCopyResourcePropertyForKey with kCFURLContentModificationDateKey instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLContentModificationDateKey instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLContentModificationDateKey instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLContentModificationDateKey instead.")));
extern
const CFStringRef kCFURLFilePOSIXMode __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSecurityKey and then the CFFileSecurity API instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSecurityKey and then the CFFileSecurity API instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSecurityKey and then the CFFileSecurity API instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSecurityKey and then the CFFileSecurity API instead.")));
extern
const CFStringRef kCFURLFileOwnerID __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSecurityKey and then the CFFileSecurity API instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSecurityKey and then the CFFileSecurity API instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSecurityKey and then the CFFileSecurity API instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use CFURLCopyResourcePropertyForKey with kCFURLFileSecurityKey and then the CFFileSecurity API instead.")));
extern
const CFStringRef kCFURLHTTPStatusCode __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use NSHTTPURLResponse methods instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use NSHTTPURLResponse methods instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSHTTPURLResponse methods instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSHTTPURLResponse methods instead.")));
extern
const CFStringRef kCFURLHTTPStatusLine __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use NSHTTPURLResponse methods instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use NSHTTPURLResponse methods instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSHTTPURLResponse methods instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSHTTPURLResponse methods instead.")));
}
extern "C" {

typedef const struct __attribute__((objc_bridge(id))) __CFUUID * CFUUIDRef;

typedef struct {
    UInt8 byte0;
    UInt8 byte1;
    UInt8 byte2;
    UInt8 byte3;
    UInt8 byte4;
    UInt8 byte5;
    UInt8 byte6;
    UInt8 byte7;
    UInt8 byte8;
    UInt8 byte9;
    UInt8 byte10;
    UInt8 byte11;
    UInt8 byte12;
    UInt8 byte13;
    UInt8 byte14;
    UInt8 byte15;
} CFUUIDBytes;






extern
CFTypeID CFUUIDGetTypeID(void);

extern
CFUUIDRef CFUUIDCreate(CFAllocatorRef alloc);


extern
CFUUIDRef CFUUIDCreateWithBytes(CFAllocatorRef alloc, UInt8 byte0, UInt8 byte1, UInt8 byte2, UInt8 byte3, UInt8 byte4, UInt8 byte5, UInt8 byte6, UInt8 byte7, UInt8 byte8, UInt8 byte9, UInt8 byte10, UInt8 byte11, UInt8 byte12, UInt8 byte13, UInt8 byte14, UInt8 byte15);


extern
CFUUIDRef CFUUIDCreateFromString(CFAllocatorRef alloc, CFStringRef uuidStr);


extern
CFStringRef CFUUIDCreateString(CFAllocatorRef alloc, CFUUIDRef uuid);


extern
CFUUIDRef CFUUIDGetConstantUUIDWithBytes(CFAllocatorRef alloc, UInt8 byte0, UInt8 byte1, UInt8 byte2, UInt8 byte3, UInt8 byte4, UInt8 byte5, UInt8 byte6, UInt8 byte7, UInt8 byte8, UInt8 byte9, UInt8 byte10, UInt8 byte11, UInt8 byte12, UInt8 byte13, UInt8 byte14, UInt8 byte15);


extern
CFUUIDBytes CFUUIDGetUUIDBytes(CFUUIDRef uuid);

extern
CFUUIDRef CFUUIDCreateFromUUIDBytes(CFAllocatorRef alloc, CFUUIDBytes bytes);

}
extern "C" {

extern
CFURLRef CFCopyHomeDirectoryURL(void) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

}
extern "C" {

typedef struct __attribute__((objc_bridge(id))) __CFBundle *CFBundleRef;
typedef struct __attribute__((objc_bridge(id))) __CFBundle *CFPlugInRef;


extern
const CFStringRef kCFBundleInfoDictionaryVersionKey;

extern
const CFStringRef kCFBundleExecutableKey;

extern
const CFStringRef kCFBundleIdentifierKey;

extern
const CFStringRef kCFBundleVersionKey;



extern
const CFStringRef kCFBundleDevelopmentRegionKey;

extern
const CFStringRef kCFBundleNameKey;

extern
const CFStringRef kCFBundleLocalizationsKey;




extern
CFBundleRef CFBundleGetMainBundle(void);

extern
CFBundleRef CFBundleGetBundleWithIdentifier(CFStringRef bundleID);







extern
CFArrayRef CFBundleGetAllBundles(void);





extern
CFTypeID CFBundleGetTypeID(void);

extern
CFBundleRef CFBundleCreate(CFAllocatorRef allocator, CFURLRef bundleURL);


extern
CFArrayRef CFBundleCreateBundlesFromDirectory(CFAllocatorRef allocator, CFURLRef directoryURL, CFStringRef bundleType);





extern
CFURLRef CFBundleCopyBundleURL(CFBundleRef bundle);

extern
CFTypeRef CFBundleGetValueForInfoDictionaryKey(CFBundleRef bundle, CFStringRef key);



extern
CFDictionaryRef CFBundleGetInfoDictionary(CFBundleRef bundle);



extern
CFDictionaryRef CFBundleGetLocalInfoDictionary(CFBundleRef bundle);


extern
void CFBundleGetPackageInfo(CFBundleRef bundle, UInt32 *packageType, UInt32 *packageCreator);

extern
CFStringRef CFBundleGetIdentifier(CFBundleRef bundle);

extern
UInt32 CFBundleGetVersionNumber(CFBundleRef bundle);

extern
CFStringRef CFBundleGetDevelopmentRegion(CFBundleRef bundle);

extern
CFURLRef CFBundleCopySupportFilesDirectoryURL(CFBundleRef bundle);

extern
CFURLRef CFBundleCopyResourcesDirectoryURL(CFBundleRef bundle);

extern
CFURLRef CFBundleCopyPrivateFrameworksURL(CFBundleRef bundle);

extern
CFURLRef CFBundleCopySharedFrameworksURL(CFBundleRef bundle);

extern
CFURLRef CFBundleCopySharedSupportURL(CFBundleRef bundle);

extern
CFURLRef CFBundleCopyBuiltInPlugInsURL(CFBundleRef bundle);






extern
CFDictionaryRef CFBundleCopyInfoDictionaryInDirectory(CFURLRef bundleURL);

extern
Boolean CFBundleGetPackageInfoInDirectory(CFURLRef url, UInt32 *packageType, UInt32 *packageCreator);



extern
CFURLRef CFBundleCopyResourceURL(CFBundleRef bundle, CFStringRef resourceName, CFStringRef resourceType, CFStringRef subDirName);

extern
CFArrayRef CFBundleCopyResourceURLsOfType(CFBundleRef bundle, CFStringRef resourceType, CFStringRef subDirName);

extern
CFStringRef CFBundleCopyLocalizedString(CFBundleRef bundle, CFStringRef key, CFStringRef value, CFStringRef tableName) __attribute__((format_arg(2)));
extern
CFURLRef CFBundleCopyResourceURLInDirectory(CFURLRef bundleURL, CFStringRef resourceName, CFStringRef resourceType, CFStringRef subDirName);

extern
CFArrayRef CFBundleCopyResourceURLsOfTypeInDirectory(CFURLRef bundleURL, CFStringRef resourceType, CFStringRef subDirName);






extern
CFArrayRef CFBundleCopyBundleLocalizations(CFBundleRef bundle);


extern
CFArrayRef CFBundleCopyPreferredLocalizationsFromArray(CFArrayRef locArray);






extern
CFArrayRef CFBundleCopyLocalizationsForPreferences(CFArrayRef locArray, CFArrayRef prefArray);
extern
CFURLRef CFBundleCopyResourceURLForLocalization(CFBundleRef bundle, CFStringRef resourceName, CFStringRef resourceType, CFStringRef subDirName, CFStringRef localizationName);

extern
CFArrayRef CFBundleCopyResourceURLsOfTypeForLocalization(CFBundleRef bundle, CFStringRef resourceType, CFStringRef subDirName, CFStringRef localizationName);
extern
CFDictionaryRef CFBundleCopyInfoDictionaryForURL(CFURLRef url);




extern
CFArrayRef CFBundleCopyLocalizationsForURL(CFURLRef url);





extern
CFArrayRef CFBundleCopyExecutableArchitecturesForURL(CFURLRef url) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFURLRef CFBundleCopyExecutableURL(CFBundleRef bundle);

enum {
    kCFBundleExecutableArchitectureI386 = 0x00000007,
    kCFBundleExecutableArchitecturePPC = 0x00000012,
    kCFBundleExecutableArchitectureX86_64 = 0x01000007,
    kCFBundleExecutableArchitecturePPC64 = 0x01000012
} __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern
CFArrayRef CFBundleCopyExecutableArchitectures(CFBundleRef bundle) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern
Boolean CFBundlePreflightExecutable(CFBundleRef bundle, CFErrorRef *error) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






extern
Boolean CFBundleLoadExecutableAndReturnError(CFBundleRef bundle, CFErrorRef *error) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern
Boolean CFBundleLoadExecutable(CFBundleRef bundle);

extern
Boolean CFBundleIsExecutableLoaded(CFBundleRef bundle);

extern
void CFBundleUnloadExecutable(CFBundleRef bundle);

extern
void *CFBundleGetFunctionPointerForName(CFBundleRef bundle, CFStringRef functionName);

extern
void CFBundleGetFunctionPointersForNames(CFBundleRef bundle, CFArrayRef functionNames, void *ftbl[]);

extern
void *CFBundleGetDataPointerForName(CFBundleRef bundle, CFStringRef symbolName);

extern
void CFBundleGetDataPointersForNames(CFBundleRef bundle, CFArrayRef symbolNames, void *stbl[]);

extern
CFURLRef CFBundleCopyAuxiliaryExecutableURL(CFBundleRef bundle, CFStringRef executableName);
extern
CFPlugInRef CFBundleGetPlugIn(CFBundleRef bundle);




typedef int CFBundleRefNum;




extern
CFBundleRefNum CFBundleOpenBundleResourceMap(CFBundleRef bundle) __attribute__((availability(macosx,introduced=10.0,deprecated=10.15,message="The Carbon Resource Manager is deprecated. This should only be used to access Resource Manager-style resources in old bundles."))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));






extern
SInt32 CFBundleOpenBundleResourceFiles(CFBundleRef bundle, CFBundleRefNum *refNum, CFBundleRefNum *localizedRefNum) __attribute__((availability(macosx,introduced=10.0,deprecated=10.15,message="The Carbon Resource Manager is deprecated. This should only be used to access Resource Manager-style resources in old bundles."))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



extern
void CFBundleCloseBundleResourceMap(CFBundleRef bundle, CFBundleRefNum refNum) __attribute__((availability(macosx,introduced=10.0,deprecated=10.15,message="The Carbon Resource Manager is deprecated. This should only be used to access Resource Manager-style resources in old bundles."))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

}


extern "C" {

typedef struct __attribute__((objc_bridge_mutable(NSMessagePort))) __CFMessagePort * CFMessagePortRef;

enum {
    kCFMessagePortSuccess = 0,
    kCFMessagePortSendTimeout = -1,
    kCFMessagePortReceiveTimeout = -2,
    kCFMessagePortIsInvalid = -3,
    kCFMessagePortTransportError = -4,
    kCFMessagePortBecameInvalidError = -5
};

typedef struct {
    CFIndex version;
    void * info;
    const void *(*retain)(const void *info);
    void (*release)(const void *info);
    CFStringRef (*copyDescription)(const void *info);
} CFMessagePortContext;

typedef CFDataRef (*CFMessagePortCallBack)(CFMessagePortRef local, SInt32 msgid, CFDataRef data, void *info);

typedef void (*CFMessagePortInvalidationCallBack)(CFMessagePortRef ms, void *info);

extern CFTypeID CFMessagePortGetTypeID(void);

extern CFMessagePortRef CFMessagePortCreateLocal(CFAllocatorRef allocator, CFStringRef name, CFMessagePortCallBack callout, CFMessagePortContext *context, Boolean *shouldFreeInfo);
extern CFMessagePortRef CFMessagePortCreateRemote(CFAllocatorRef allocator, CFStringRef name);

extern Boolean CFMessagePortIsRemote(CFMessagePortRef ms);
extern CFStringRef CFMessagePortGetName(CFMessagePortRef ms);
extern Boolean CFMessagePortSetName(CFMessagePortRef ms, CFStringRef newName);
extern void CFMessagePortGetContext(CFMessagePortRef ms, CFMessagePortContext *context);
extern void CFMessagePortInvalidate(CFMessagePortRef ms);
extern Boolean CFMessagePortIsValid(CFMessagePortRef ms);
extern CFMessagePortInvalidationCallBack CFMessagePortGetInvalidationCallBack(CFMessagePortRef ms);
extern void CFMessagePortSetInvalidationCallBack(CFMessagePortRef ms, CFMessagePortInvalidationCallBack callout);


extern SInt32 CFMessagePortSendRequest(CFMessagePortRef remote, SInt32 msgid, CFDataRef data, CFTimeInterval sendTimeout, CFTimeInterval rcvTimeout, CFStringRef replyMode, CFDataRef *returnData);

extern CFRunLoopSourceRef CFMessagePortCreateRunLoopSource(CFAllocatorRef allocator, CFMessagePortRef local, CFIndex order);

extern void CFMessagePortSetDispatchQueue(CFMessagePortRef ms, dispatch_queue_t queue) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

}
extern "C" {



extern const CFStringRef kCFPlugInDynamicRegistrationKey;
extern const CFStringRef kCFPlugInDynamicRegisterFunctionKey;
extern const CFStringRef kCFPlugInUnloadFunctionKey;
extern const CFStringRef kCFPlugInFactoriesKey;
extern const CFStringRef kCFPlugInTypesKey;




typedef void (*CFPlugInDynamicRegisterFunction)(CFPlugInRef plugIn);
typedef void (*CFPlugInUnloadFunction)(CFPlugInRef plugIn);
typedef void *(*CFPlugInFactoryFunction)(CFAllocatorRef allocator, CFUUIDRef typeUUID);



extern CFTypeID CFPlugInGetTypeID(void);

extern CFPlugInRef CFPlugInCreate(CFAllocatorRef allocator, CFURLRef plugInURL);


extern CFBundleRef CFPlugInGetBundle(CFPlugInRef plugIn);







extern void CFPlugInSetLoadOnDemand(CFPlugInRef plugIn, Boolean flag);

extern Boolean CFPlugInIsLoadOnDemand(CFPlugInRef plugIn);






extern CFArrayRef CFPlugInFindFactoriesForPlugInType(CFUUIDRef typeUUID) __attribute__((cf_returns_retained));



extern CFArrayRef CFPlugInFindFactoriesForPlugInTypeInPlugIn(CFUUIDRef typeUUID, CFPlugInRef plugIn) __attribute__((cf_returns_retained));


extern void *CFPlugInInstanceCreate(CFAllocatorRef allocator, CFUUIDRef factoryUUID, CFUUIDRef typeUUID);





extern Boolean CFPlugInRegisterFactoryFunction(CFUUIDRef factoryUUID, CFPlugInFactoryFunction func);

extern Boolean CFPlugInRegisterFactoryFunctionByName(CFUUIDRef factoryUUID, CFPlugInRef plugIn, CFStringRef functionName);

extern Boolean CFPlugInUnregisterFactory(CFUUIDRef factoryUUID);

extern Boolean CFPlugInRegisterPlugInType(CFUUIDRef factoryUUID, CFUUIDRef typeUUID);

extern Boolean CFPlugInUnregisterPlugInType(CFUUIDRef factoryUUID, CFUUIDRef typeUUID);





extern void CFPlugInAddInstanceForFactory(CFUUIDRef factoryID);

extern void CFPlugInRemoveInstanceForFactory(CFUUIDRef factoryID);




typedef struct __attribute__((objc_bridge(id))) __CFPlugInInstance *CFPlugInInstanceRef;

typedef Boolean (*CFPlugInInstanceGetInterfaceFunction)(CFPlugInInstanceRef instance, CFStringRef interfaceName, void **ftbl);
typedef void (*CFPlugInInstanceDeallocateInstanceDataFunction)(void *instanceData);

extern Boolean CFPlugInInstanceGetInterfaceFunctionTable(CFPlugInInstanceRef instance, CFStringRef interfaceName, void **ftbl);


extern CFStringRef CFPlugInInstanceGetFactoryName(CFPlugInInstanceRef instance) __attribute__((cf_returns_retained));

extern void *CFPlugInInstanceGetInstanceData(CFPlugInInstanceRef instance);

extern CFTypeID CFPlugInInstanceGetTypeID(void);

extern CFPlugInInstanceRef CFPlugInInstanceCreateWithInstanceDataSize(CFAllocatorRef allocator, CFIndex instanceDataSize, CFPlugInInstanceDeallocateInstanceDataFunction deallocateInstanceFunction, CFStringRef factoryName, CFPlugInInstanceGetInterfaceFunction getInterfaceFunction);

}



extern "C" {

typedef struct __attribute__((objc_bridge_mutable(NSMachPort))) __CFMachPort * CFMachPortRef;

typedef struct {
    CFIndex version;
    void * info;
    const void *(*retain)(const void *info);
    void (*release)(const void *info);
    CFStringRef (*copyDescription)(const void *info);
} CFMachPortContext;

typedef void (*CFMachPortCallBack)(CFMachPortRef port, void *msg, CFIndex size, void *info);
typedef void (*CFMachPortInvalidationCallBack)(CFMachPortRef port, void *info);

extern CFTypeID CFMachPortGetTypeID(void);

extern CFMachPortRef CFMachPortCreate(CFAllocatorRef allocator, CFMachPortCallBack callout, CFMachPortContext *context, Boolean *shouldFreeInfo);
extern CFMachPortRef CFMachPortCreateWithPort(CFAllocatorRef allocator, mach_port_t portNum, CFMachPortCallBack callout, CFMachPortContext *context, Boolean *shouldFreeInfo);

extern mach_port_t CFMachPortGetPort(CFMachPortRef port);
extern void CFMachPortGetContext(CFMachPortRef port, CFMachPortContext *context);
extern void CFMachPortInvalidate(CFMachPortRef port);
extern Boolean CFMachPortIsValid(CFMachPortRef port);
extern CFMachPortInvalidationCallBack CFMachPortGetInvalidationCallBack(CFMachPortRef port);
extern void CFMachPortSetInvalidationCallBack(CFMachPortRef port, CFMachPortInvalidationCallBack callout);

extern CFRunLoopSourceRef CFMachPortCreateRunLoopSource(CFAllocatorRef allocator, CFMachPortRef port, CFIndex order);

}

extern "C" {




typedef const struct __attribute__((objc_bridge(NSAttributedString))) __CFAttributedString *CFAttributedStringRef;
typedef struct __attribute__((objc_bridge_mutable(NSMutableAttributedString))) __CFAttributedString *CFMutableAttributedStringRef;




extern CFTypeID CFAttributedStringGetTypeID(void);
extern CFAttributedStringRef CFAttributedStringCreate(CFAllocatorRef alloc, CFStringRef str, CFDictionaryRef attributes);




extern CFAttributedStringRef CFAttributedStringCreateWithSubstring(CFAllocatorRef alloc, CFAttributedStringRef aStr, CFRange range);




extern CFAttributedStringRef CFAttributedStringCreateCopy(CFAllocatorRef alloc, CFAttributedStringRef aStr);




extern CFStringRef CFAttributedStringGetString(CFAttributedStringRef aStr);




extern CFIndex CFAttributedStringGetLength(CFAttributedStringRef aStr);






extern CFDictionaryRef CFAttributedStringGetAttributes(CFAttributedStringRef aStr, CFIndex loc, CFRange *effectiveRange);




extern CFTypeRef CFAttributedStringGetAttribute(CFAttributedStringRef aStr, CFIndex loc, CFStringRef attrName, CFRange *effectiveRange);




extern CFDictionaryRef CFAttributedStringGetAttributesAndLongestEffectiveRange(CFAttributedStringRef aStr, CFIndex loc, CFRange inRange, CFRange *longestEffectiveRange);




extern CFTypeRef CFAttributedStringGetAttributeAndLongestEffectiveRange(CFAttributedStringRef aStr, CFIndex loc, CFStringRef attrName, CFRange inRange, CFRange *longestEffectiveRange);
extern CFMutableAttributedStringRef CFAttributedStringCreateMutableCopy(CFAllocatorRef alloc, CFIndex maxLength, CFAttributedStringRef aStr);




extern CFMutableAttributedStringRef CFAttributedStringCreateMutable(CFAllocatorRef alloc, CFIndex maxLength);






extern void CFAttributedStringReplaceString(CFMutableAttributedStringRef aStr, CFRange range, CFStringRef replacement);






extern CFMutableStringRef CFAttributedStringGetMutableString(CFMutableAttributedStringRef aStr);




extern void CFAttributedStringSetAttributes(CFMutableAttributedStringRef aStr, CFRange range, CFDictionaryRef replacement, Boolean clearOtherAttributes);




extern void CFAttributedStringSetAttribute(CFMutableAttributedStringRef aStr, CFRange range, CFStringRef attrName, CFTypeRef value);




extern void CFAttributedStringRemoveAttribute(CFMutableAttributedStringRef aStr, CFRange range, CFStringRef attrName);




extern void CFAttributedStringReplaceAttributedString(CFMutableAttributedStringRef aStr, CFRange range, CFAttributedStringRef replacement);




extern void CFAttributedStringBeginEditing(CFMutableAttributedStringRef aStr);




extern void CFAttributedStringEndEditing(CFMutableAttributedStringRef aStr);


}


extern "C" {


typedef const struct __attribute__((objc_bridge_mutable(id))) __CFURLEnumerator *CFURLEnumeratorRef;


extern
CFTypeID CFURLEnumeratorGetTypeID( void ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



typedef CFOptionFlags CFURLEnumeratorOptions; enum {
    kCFURLEnumeratorDefaultBehavior = 0,
    kCFURLEnumeratorDescendRecursively = 1UL << 0,
    kCFURLEnumeratorSkipInvisibles = 1UL << 1,
    kCFURLEnumeratorGenerateFileReferenceURLs = 1UL << 2,
    kCFURLEnumeratorSkipPackageContents = 1UL << 3,
    kCFURLEnumeratorIncludeDirectoriesPreOrder = 1UL << 4,
    kCFURLEnumeratorIncludeDirectoriesPostOrder = 1UL << 5,

    kCFURLEnumeratorGenerateRelativePathURLs __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) = 1UL << 6,
};







extern
CFURLEnumeratorRef CFURLEnumeratorCreateForDirectoryURL( CFAllocatorRef alloc, CFURLRef directoryURL, CFURLEnumeratorOptions option, CFArrayRef propertyKeys ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFURLEnumeratorRef CFURLEnumeratorCreateForMountedVolumes( CFAllocatorRef alloc, CFURLEnumeratorOptions option, CFArrayRef propertyKeys ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



typedef CFIndex CFURLEnumeratorResult; enum {
    kCFURLEnumeratorSuccess = 1,
    kCFURLEnumeratorEnd = 2,
    kCFURLEnumeratorError = 3,
    kCFURLEnumeratorDirectoryPostOrderSuccess = 4,
};





extern
CFURLEnumeratorResult CFURLEnumeratorGetNextURL( CFURLEnumeratorRef enumerator, CFURLRef *url, CFErrorRef *error ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
void CFURLEnumeratorSkipDescendents( CFURLEnumeratorRef enumerator ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




extern
CFIndex CFURLEnumeratorGetDescendentLevel( CFURLEnumeratorRef enumerator ) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






extern
Boolean CFURLEnumeratorGetSourceDidChange( CFURLEnumeratorRef enumerator ) __attribute__((availability(macos,introduced=10.6,deprecated=10.7,message="Use File System Events API instead"))) __attribute__((availability(ios,introduced=4.0,deprecated=5.0,message="Use File System Events API instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use File System Events API instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use File System Events API instead")));


}






typedef union {

 unsigned char g_guid[16];
 unsigned int g_guid_asint[16 / sizeof(unsigned int)];
} guid_t;


#pragma pack(1)
typedef struct {
 u_int8_t sid_kind;
 u_int8_t sid_authcount;
 u_int8_t sid_authority[6];

 u_int32_t sid_authorities[16];
} ntsid_t;
#pragma pack()
struct kauth_identity_extlookup {
 u_int32_t el_seqno;
 u_int32_t el_result;





 u_int32_t el_flags;
 __darwin_pid_t el_info_pid;
 u_int64_t el_extend;
 u_int32_t el_info_reserved_1;

 uid_t el_uid;
 guid_t el_uguid;
 u_int32_t el_uguid_valid;
 ntsid_t el_usid;
 u_int32_t el_usid_valid;
 gid_t el_gid;
 guid_t el_gguid;
 u_int32_t el_gguid_valid;
 ntsid_t el_gsid;
 u_int32_t el_gsid_valid;
 u_int32_t el_member_valid;
 u_int32_t el_sup_grp_cnt;
 gid_t el_sup_groups[16];
};

struct kauth_cache_sizes {
 u_int32_t kcs_group_size;
 u_int32_t kcs_id_size;
};
typedef u_int32_t kauth_ace_rights_t;


struct kauth_ace {
 guid_t ace_applicable;
 u_int32_t ace_flags;
 kauth_ace_rights_t ace_rights;





};



typedef struct kauth_ace *kauth_ace_t;




struct kauth_acl {
 u_int32_t acl_entrycount;
 u_int32_t acl_flags;

 struct kauth_ace acl_ace[1];
};
typedef struct kauth_acl *kauth_acl_t;
struct kauth_filesec {
 u_int32_t fsec_magic;

 guid_t fsec_owner;
 guid_t fsec_group;

 struct kauth_acl fsec_acl;
};
typedef struct kauth_filesec *kauth_filesec_t;
typedef enum {
 ACL_READ_DATA = (1<<1),
 ACL_LIST_DIRECTORY = (1<<1),
 ACL_WRITE_DATA = (1<<2),
 ACL_ADD_FILE = (1<<2),
 ACL_EXECUTE = (1<<3),
 ACL_SEARCH = (1<<3),
 ACL_DELETE = (1<<4),
 ACL_APPEND_DATA = (1<<5),
 ACL_ADD_SUBDIRECTORY = (1<<5),
 ACL_DELETE_CHILD = (1<<6),
 ACL_READ_ATTRIBUTES = (1<<7),
 ACL_WRITE_ATTRIBUTES = (1<<8),
 ACL_READ_EXTATTRIBUTES = (1<<9),
 ACL_WRITE_EXTATTRIBUTES = (1<<10),
 ACL_READ_SECURITY = (1<<11),
 ACL_WRITE_SECURITY = (1<<12),
 ACL_CHANGE_OWNER = (1<<13),
 ACL_SYNCHRONIZE = (1<<20),
} acl_perm_t;


typedef enum {
 ACL_UNDEFINED_TAG = 0,
 ACL_EXTENDED_ALLOW = 1,
 ACL_EXTENDED_DENY = 2
} acl_tag_t;


typedef enum {
 ACL_TYPE_EXTENDED = 0x00000100,

 ACL_TYPE_ACCESS = 0x00000000,
 ACL_TYPE_DEFAULT = 0x00000001,

 ACL_TYPE_AFS = 0x00000002,
 ACL_TYPE_CODA = 0x00000003,
 ACL_TYPE_NTFS = 0x00000004,
 ACL_TYPE_NWFS = 0x00000005
} acl_type_t;






typedef enum {
 ACL_FIRST_ENTRY = 0,
 ACL_NEXT_ENTRY = -1,
 ACL_LAST_ENTRY = -2
} acl_entry_id_t;


typedef enum {
 ACL_FLAG_DEFER_INHERIT = (1 << 0),
 ACL_FLAG_NO_INHERIT = (1<<17),
 ACL_ENTRY_INHERITED = (1<<4),
 ACL_ENTRY_FILE_INHERIT = (1<<5),
 ACL_ENTRY_DIRECTORY_INHERIT = (1<<6),
 ACL_ENTRY_LIMIT_INHERIT = (1<<7),
 ACL_ENTRY_ONLY_INHERIT = (1<<8)
} acl_flag_t;



struct _acl;
struct _acl_entry;
struct _acl_permset;
struct _acl_flagset;

typedef struct _acl *acl_t;
typedef struct _acl_entry *acl_entry_t;
typedef struct _acl_permset *acl_permset_t;
typedef struct _acl_flagset *acl_flagset_t;

typedef u_int64_t acl_permset_mask_t;

extern "C" {

extern acl_t acl_dup(acl_t acl);
extern int acl_free(void *obj_p);
extern acl_t acl_init(int count);


extern int acl_copy_entry(acl_entry_t dest_d, acl_entry_t src_d);
extern int acl_create_entry(acl_t *acl_p, acl_entry_t *entry_p);
extern int acl_create_entry_np(acl_t *acl_p, acl_entry_t *entry_p, int entry_index);
extern int acl_delete_entry(acl_t acl, acl_entry_t entry_d);
extern int acl_get_entry(acl_t acl, int entry_id, acl_entry_t *entry_p);
extern int acl_valid(acl_t acl);
extern int acl_valid_fd_np(int fd, acl_type_t type, acl_t acl);
extern int acl_valid_file_np(const char *path, acl_type_t type, acl_t acl);
extern int acl_valid_link_np(const char *path, acl_type_t type, acl_t acl);


extern int acl_add_perm(acl_permset_t permset_d, acl_perm_t perm);
extern int acl_calc_mask(acl_t *acl_p);
extern int acl_clear_perms(acl_permset_t permset_d);
extern int acl_delete_perm(acl_permset_t permset_d, acl_perm_t perm);
extern int acl_get_perm_np(acl_permset_t permset_d, acl_perm_t perm);
extern int acl_get_permset(acl_entry_t entry_d, acl_permset_t *permset_p);
extern int acl_set_permset(acl_entry_t entry_d, acl_permset_t permset_d);


extern int acl_maximal_permset_mask_np(acl_permset_mask_t * mask_p) __attribute__((availability(ios,introduced=4.3)));
extern int acl_get_permset_mask_np(acl_entry_t entry_d, acl_permset_mask_t * mask_p) __attribute__((availability(ios,introduced=4.3)));
extern int acl_set_permset_mask_np(acl_entry_t entry_d, acl_permset_mask_t mask) __attribute__((availability(ios,introduced=4.3)));


extern int acl_add_flag_np(acl_flagset_t flagset_d, acl_flag_t flag);
extern int acl_clear_flags_np(acl_flagset_t flagset_d);
extern int acl_delete_flag_np(acl_flagset_t flagset_d, acl_flag_t flag);
extern int acl_get_flag_np(acl_flagset_t flagset_d, acl_flag_t flag);
extern int acl_get_flagset_np(void *obj_p, acl_flagset_t *flagset_p);
extern int acl_set_flagset_np(void *obj_p, acl_flagset_t flagset_d);


extern void *acl_get_qualifier(acl_entry_t entry_d);
extern int acl_get_tag_type(acl_entry_t entry_d, acl_tag_t *tag_type_p);
extern int acl_set_qualifier(acl_entry_t entry_d, const void *tag_qualifier_p);
extern int acl_set_tag_type(acl_entry_t entry_d, acl_tag_t tag_type);


extern int acl_delete_def_file(const char *path_p);
extern acl_t acl_get_fd(int fd);
extern acl_t acl_get_fd_np(int fd, acl_type_t type);
extern acl_t acl_get_file(const char *path_p, acl_type_t type);
extern acl_t acl_get_link_np(const char *path_p, acl_type_t type);
extern int acl_set_fd(int fd, acl_t acl);
extern int acl_set_fd_np(int fd, acl_t acl, acl_type_t acl_type);
extern int acl_set_file(const char *path_p, acl_type_t type, acl_t acl);
extern int acl_set_link_np(const char *path_p, acl_type_t type, acl_t acl);


extern ssize_t acl_copy_ext(void *buf_p, acl_t acl, ssize_t size);
extern ssize_t acl_copy_ext_native(void *buf_p, acl_t acl, ssize_t size);
extern acl_t acl_copy_int(const void *buf_p);
extern acl_t acl_copy_int_native(const void *buf_p);
extern acl_t acl_from_text(const char *buf_p);
extern ssize_t acl_size(acl_t acl);
extern char *acl_to_text(acl_t acl, ssize_t *len_p);
}




extern "C" {





typedef struct __attribute__((objc_bridge_mutable(NSFileSecurity))) __CFFileSecurity* CFFileSecurityRef;







extern
CFTypeID CFFileSecurityGetTypeID(void) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFFileSecurityRef CFFileSecurityCreate(CFAllocatorRef allocator) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFFileSecurityRef CFFileSecurityCreateCopy(CFAllocatorRef allocator, CFFileSecurityRef fileSec) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecurityCopyOwnerUUID(CFFileSecurityRef fileSec, CFUUIDRef *ownerUUID) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecuritySetOwnerUUID(CFFileSecurityRef fileSec, CFUUIDRef ownerUUID) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecurityCopyGroupUUID(CFFileSecurityRef fileSec, CFUUIDRef *groupUUID) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecuritySetGroupUUID(CFFileSecurityRef fileSec, CFUUIDRef groupUUID) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecurityCopyAccessControlList(CFFileSecurityRef fileSec, acl_t *accessControlList) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecuritySetAccessControlList(CFFileSecurityRef fileSec, acl_t accessControlList) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecurityGetOwner(CFFileSecurityRef fileSec, uid_t *owner) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecuritySetOwner(CFFileSecurityRef fileSec, uid_t owner) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecurityGetGroup(CFFileSecurityRef fileSec, gid_t *group) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecuritySetGroup(CFFileSecurityRef fileSec, gid_t group) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecurityGetMode(CFFileSecurityRef fileSec, mode_t *mode) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecuritySetMode(CFFileSecurityRef fileSec, mode_t mode) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



typedef CFOptionFlags CFFileSecurityClearOptions; enum {
    kCFFileSecurityClearOwner = 1UL << 0,
    kCFFileSecurityClearGroup = 1UL << 1,
    kCFFileSecurityClearMode = 1UL << 2,
    kCFFileSecurityClearOwnerUUID = 1UL << 3,
    kCFFileSecurityClearGroupUUID = 1UL << 4,
    kCFFileSecurityClearAccessControlList = 1UL << 5
} __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
Boolean CFFileSecurityClearProperties(CFFileSecurityRef fileSec, CFFileSecurityClearOptions clearPropertyMask) __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


}
extern "C" {
extern
CFStringRef CFStringTokenizerCopyBestStringLanguage(CFStringRef string, CFRange range) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







typedef struct __attribute__((objc_bridge_mutable(id))) __CFStringTokenizer * CFStringTokenizerRef;




enum {






    kCFStringTokenizerUnitWord = 0,
    kCFStringTokenizerUnitSentence = 1,
    kCFStringTokenizerUnitParagraph = 2,
    kCFStringTokenizerUnitLineBreak = 3,




    kCFStringTokenizerUnitWordBoundary = 4,
    kCFStringTokenizerAttributeLatinTranscription = 1UL << 16,


    kCFStringTokenizerAttributeLanguage = 1UL << 17,
};






typedef CFOptionFlags CFStringTokenizerTokenType; enum {

    kCFStringTokenizerTokenNone = 0,


    kCFStringTokenizerTokenNormal = 1UL << 0,





    kCFStringTokenizerTokenHasSubTokensMask = 1UL << 1,






    kCFStringTokenizerTokenHasDerivedSubTokensMask = 1UL << 2,

    kCFStringTokenizerTokenHasHasNumbersMask = 1UL << 3,
    kCFStringTokenizerTokenHasNonLettersMask = 1UL << 4,
    kCFStringTokenizerTokenIsCJWordMask = 1UL << 5
};






extern
CFTypeID CFStringTokenizerGetTypeID(void) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFStringTokenizerRef CFStringTokenizerCreate(CFAllocatorRef alloc, CFStringRef string, CFRange range, CFOptionFlags options, CFLocaleRef locale) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
void CFStringTokenizerSetString(CFStringTokenizerRef tokenizer, CFStringRef string, CFRange range) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFStringTokenizerTokenType CFStringTokenizerGoToTokenAtIndex(CFStringTokenizerRef tokenizer, CFIndex index) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFStringTokenizerTokenType CFStringTokenizerAdvanceToNextToken(CFStringTokenizerRef tokenizer) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFRange CFStringTokenizerGetCurrentTokenRange(CFStringTokenizerRef tokenizer) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFTypeRef CFStringTokenizerCopyCurrentTokenAttribute(CFStringTokenizerRef tokenizer, CFOptionFlags attribute) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern
CFIndex CFStringTokenizerGetCurrentSubTokens(CFStringTokenizerRef tokenizer, CFRange *ranges, CFIndex maxRangeLength, CFMutableArrayRef derivedSubTokens) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

}
extern "C" {

typedef int CFFileDescriptorNativeDescriptor;

typedef struct __attribute__((objc_bridge_mutable(id))) __CFFileDescriptor * CFFileDescriptorRef;


enum {
    kCFFileDescriptorReadCallBack = 1UL << 0,
    kCFFileDescriptorWriteCallBack = 1UL << 1
};

typedef void (*CFFileDescriptorCallBack)(CFFileDescriptorRef f, CFOptionFlags callBackTypes, void *info);

typedef struct {
    CFIndex version;
    void * info;
    void * (*retain)(void *info);
    void (*release)(void *info);
    CFStringRef (*copyDescription)(void *info);
} CFFileDescriptorContext;

extern CFTypeID CFFileDescriptorGetTypeID(void) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern CFFileDescriptorRef CFFileDescriptorCreate(CFAllocatorRef allocator, CFFileDescriptorNativeDescriptor fd, Boolean closeOnInvalidate, CFFileDescriptorCallBack callout, const CFFileDescriptorContext *context) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern CFFileDescriptorNativeDescriptor CFFileDescriptorGetNativeDescriptor(CFFileDescriptorRef f) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern void CFFileDescriptorGetContext(CFFileDescriptorRef f, CFFileDescriptorContext *context) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern void CFFileDescriptorEnableCallBacks(CFFileDescriptorRef f, CFOptionFlags callBackTypes) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern void CFFileDescriptorDisableCallBacks(CFFileDescriptorRef f, CFOptionFlags callBackTypes) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern void CFFileDescriptorInvalidate(CFFileDescriptorRef f) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern Boolean CFFileDescriptorIsValid(CFFileDescriptorRef f) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern CFRunLoopSourceRef CFFileDescriptorCreateRunLoopSource(CFAllocatorRef allocator, CFFileDescriptorRef f, CFIndex order) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


}



extern "C" {

typedef struct __attribute__((objc_bridge_mutable(id))) __CFUserNotification * CFUserNotificationRef;
typedef void (*CFUserNotificationCallBack)(CFUserNotificationRef userNotification, CFOptionFlags responseFlags);

extern
CFTypeID CFUserNotificationGetTypeID(void) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
CFUserNotificationRef CFUserNotificationCreate(CFAllocatorRef allocator, CFTimeInterval timeout, CFOptionFlags flags, SInt32 *error, CFDictionaryRef dictionary) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
SInt32 CFUserNotificationReceiveResponse(CFUserNotificationRef userNotification, CFTimeInterval timeout, CFOptionFlags *responseFlags) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
CFStringRef CFUserNotificationGetResponseValue(CFUserNotificationRef userNotification, CFStringRef key, CFIndex idx) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
CFDictionaryRef CFUserNotificationGetResponseDictionary(CFUserNotificationRef userNotification) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
SInt32 CFUserNotificationUpdate(CFUserNotificationRef userNotification, CFTimeInterval timeout, CFOptionFlags flags, CFDictionaryRef dictionary) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
SInt32 CFUserNotificationCancel(CFUserNotificationRef userNotification) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
CFRunLoopSourceRef CFUserNotificationCreateRunLoopSource(CFAllocatorRef allocator, CFUserNotificationRef userNotification, CFUserNotificationCallBack callout, CFIndex order) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));




extern
SInt32 CFUserNotificationDisplayNotice(CFTimeInterval timeout, CFOptionFlags flags, CFURLRef iconURL, CFURLRef soundURL, CFURLRef localizationURL, CFStringRef alertHeader, CFStringRef alertMessage, CFStringRef defaultButtonTitle) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
SInt32 CFUserNotificationDisplayAlert(CFTimeInterval timeout, CFOptionFlags flags, CFURLRef iconURL, CFURLRef soundURL, CFURLRef localizationURL, CFStringRef alertHeader, CFStringRef alertMessage, CFStringRef defaultButtonTitle, CFStringRef alternateButtonTitle, CFStringRef otherButtonTitle, CFOptionFlags *responseFlags) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));




enum {
    kCFUserNotificationStopAlertLevel __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 0,
    kCFUserNotificationNoteAlertLevel __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 1,
    kCFUserNotificationCautionAlertLevel __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 2,
    kCFUserNotificationPlainAlertLevel __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 3
};

enum {
    kCFUserNotificationDefaultResponse __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 0,
    kCFUserNotificationAlternateResponse __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 1,
    kCFUserNotificationOtherResponse __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 2,
    kCFUserNotificationCancelResponse __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 3
};

enum {
    kCFUserNotificationNoDefaultButtonFlag __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = (1UL << 5),
    kCFUserNotificationUseRadioButtonsFlag __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = (1UL << 6)
};

static __inline__ __attribute__((always_inline)) CFOptionFlags CFUserNotificationCheckBoxChecked(CFIndex i) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) {return ((CFOptionFlags)(1UL << (8 + i)));}
static __inline__ __attribute__((always_inline)) CFOptionFlags CFUserNotificationSecureTextField(CFIndex i) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) {return ((CFOptionFlags)(1UL << (16 + i)));}
static __inline__ __attribute__((always_inline)) CFOptionFlags CFUserNotificationPopUpSelection(CFIndex n) __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) {return ((CFOptionFlags)(n << 24));}




extern
const CFStringRef kCFUserNotificationIconURLKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationSoundURLKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationLocalizationURLKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationAlertHeaderKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationAlertMessageKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationDefaultButtonTitleKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationAlternateButtonTitleKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationOtherButtonTitleKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationProgressIndicatorValueKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationPopUpTitlesKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationTextFieldTitlesKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationCheckBoxTitlesKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationTextFieldValuesKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationPopUpSelectionKey __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationAlertTopMostKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern
const CFStringRef kCFUserNotificationKeyboardTypesKey __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

}

#pragma clang assume_nonnull begin

extern "C" double NSFoundationVersionNumber;
// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_Protocol
#define _REWRITER_typedef_Protocol
typedef struct objc_object Protocol;
typedef struct {} _objc_exc_Protocol;
#endif


typedef NSString * NSExceptionName __attribute__((swift_wrapper(struct)));
typedef NSString * NSRunLoopMode __attribute__((swift_wrapper(struct)));

extern "C" NSString *NSStringFromSelector(SEL aSelector);
extern "C" SEL NSSelectorFromString(NSString *aSelectorName);

extern "C" NSString *NSStringFromClass(Class aClass);
extern "C" Class _Nullable NSClassFromString(NSString *aClassName);

extern "C" NSString *NSStringFromProtocol(Protocol *proto) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" Protocol * _Nullable NSProtocolFromString(NSString *namestr) __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" const char *NSGetSizeAndAlignment(const char *typePtr, NSUInteger * _Nullable sizep, NSUInteger * _Nullable alignp);

extern "C" void NSLog(NSString *format, ...) __attribute__((format(__NSString__, 1, 2))) __attribute__((not_tail_called));
extern "C" void NSLogv(NSString *format, va_list args) __attribute__((format(__NSString__, 1, 0))) __attribute__((not_tail_called));
typedef NSInteger NSComparisonResult; enum {
    NSOrderedAscending = -1L,
    NSOrderedSame,
    NSOrderedDescending
};


typedef NSComparisonResult (*NSComparator)(id obj1, id obj2);


typedef NSUInteger NSEnumerationOptions; enum {
    NSEnumerationConcurrent = (1UL << 0),
    NSEnumerationReverse = (1UL << 1),
};

typedef NSUInteger NSSortOptions; enum {
    NSSortConcurrent = (1UL << 0),
    NSSortStable = (1UL << 4),
};

typedef NSInteger NSQualityOfService; enum {
    NSQualityOfServiceUserInteractive = 0x21,
    NSQualityOfServiceUserInitiated = 0x19,
    NSQualityOfServiceUtility = 0x11,
    NSQualityOfServiceBackground = 0x09,
    NSQualityOfServiceDefault = -1
} __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

static const NSInteger NSNotFound = 9223372036854775807L;
#pragma clang assume_nonnull end



















// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin

typedef struct _NSZone NSZone;

extern "C" NSZone *NSDefaultMallocZone(void) __attribute__((availability(swift, unavailable, message="Zone-based memory management is unavailable")));
extern "C" NSZone *NSCreateZone(NSUInteger startSize, NSUInteger granularity, BOOL canFree) __attribute__((availability(swift, unavailable, message="Zone-based memory management is unavailable")));
extern "C" void NSRecycleZone(NSZone *zone)__attribute__((availability(swift, unavailable, message="Zone-based memory management is unavailable")));

extern "C" void NSSetZoneName(NSZone * _Nullable zone, NSString *name)__attribute__((availability(swift, unavailable, message="Zone-based memory management is unavailable")));
extern "C" NSString *NSZoneName(NSZone * _Nullable zone) __attribute__((availability(swift, unavailable, message="Zone-based memory management is unavailable")));
extern "C" NSZone * _Nullable NSZoneFromPointer(void *ptr) __attribute__((availability(swift, unavailable, message="Zone-based memory management is unavailable")));

extern "C" void *NSZoneMalloc(NSZone * _Nullable zone, NSUInteger size) __attribute__((availability(swift, unavailable, message="Zone-based memory management is unavailable")));
extern "C" void *NSZoneCalloc(NSZone * _Nullable zone, NSUInteger numElems, NSUInteger byteSize) __attribute__((availability(swift, unavailable, message="Zone-based memory management is unavailable")));
extern "C" void *NSZoneRealloc(NSZone * _Nullable zone, void * _Nullable ptr, NSUInteger size) __attribute__((availability(swift, unavailable, message="Zone-based memory management is unavailable")));
extern "C" void NSZoneFree(NSZone * _Nullable zone, void *ptr) __attribute__((availability(swift, unavailable, message="Zone-based memory management is unavailable")));
static __inline__ __attribute__((always_inline)) __attribute__((ns_returns_retained)) id _Nullable NSMakeCollectable(CFTypeRef _Nullable __attribute__((cf_consumed)) cf) __attribute__((availability(swift, unavailable, message="Garbage Collection is not supported")));
static __inline__ __attribute__((always_inline)) __attribute__((ns_returns_retained)) id _Nullable NSMakeCollectable(CFTypeRef _Nullable __attribute__((cf_consumed)) cf) {



    return (id)cf;

}

extern "C" NSUInteger NSPageSize(void);
extern "C" NSUInteger NSLogPageSize(void);
extern "C" NSUInteger NSRoundUpToMultipleOfPageSize(NSUInteger bytes);
extern "C" NSUInteger NSRoundDownToMultipleOfPageSize(NSUInteger bytes);
extern "C" void *NSAllocateMemoryPages(NSUInteger bytes);
extern "C" void NSDeallocateMemoryPages(void *ptr, NSUInteger bytes);
extern "C" void NSCopyMemoryPages(const void *source, void *dest, NSUInteger bytes);
extern "C" NSUInteger NSRealMemoryAvailable(void) __attribute__((availability(macos,introduced=10.0,deprecated=10.8,message="Use NSProcessInfo instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=6.0,message="Use NSProcessInfo instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSProcessInfo instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSProcessInfo instead")));
#pragma clang assume_nonnull end

// @class NSInvocation;
#ifndef _REWRITER_typedef_NSInvocation
#define _REWRITER_typedef_NSInvocation
typedef struct objc_object NSInvocation;
typedef struct {} _objc_exc_NSInvocation;
#endif

#ifndef _REWRITER_typedef_NSMethodSignature
#define _REWRITER_typedef_NSMethodSignature
typedef struct objc_object NSMethodSignature;
typedef struct {} _objc_exc_NSMethodSignature;
#endif

#ifndef _REWRITER_typedef_NSCoder
#define _REWRITER_typedef_NSCoder
typedef struct objc_object NSCoder;
typedef struct {} _objc_exc_NSCoder;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSEnumerator
#define _REWRITER_typedef_NSEnumerator
typedef struct objc_object NSEnumerator;
typedef struct {} _objc_exc_NSEnumerator;
#endif

// @class Protocol;
#ifndef _REWRITER_typedef_Protocol
#define _REWRITER_typedef_Protocol
typedef struct objc_object Protocol;
typedef struct {} _objc_exc_Protocol;
#endif


#pragma clang assume_nonnull begin



// @protocol NSCopying

// - (id)copyWithZone:(nullable NSZone *)zone;

/* @end */


// @protocol NSMutableCopying

// - (id)mutableCopyWithZone:(nullable NSZone *)zone;

/* @end */


// @protocol NSCoding

// - (void)encodeWithCoder:(NSCoder *)coder;
// - (nullable instancetype)initWithCoder:(NSCoder *)coder;

/* @end */





// @protocol NSSecureCoding <NSCoding>
/* @required */


@property (class, readonly) BOOL supportsSecureCoding;
/* @end */




// @interface NSObject (NSCoderMethods)

// + (NSInteger)version;
// + (void)setVersion:(NSInteger)aVersion;
// @property (readonly) Class classForCoder;
// - (nullable id)replacementObjectForCoder:(NSCoder *)coder;
// - (nullable id)awakeAfterUsingCoder:(NSCoder *)coder __attribute__((ns_consumes_self)) __attribute__((ns_returns_retained));

/* @end */

// @protocol NSDiscardableContent
/* @required */
// - (BOOL)beginContentAccess;
// - (void)endContentAccess;
// - (void)discardContentIfPossible;
// - (BOOL)isContentDiscarded;
/* @end */


// @interface NSObject (NSDiscardableContentProxy)
// @property (readonly, retain) id autoContentAccessingProxy __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
/* @end */





extern "C" id NSAllocateObject(Class aClass, NSUInteger extraBytes, NSZone * _Nullable zone) ;

extern "C" void NSDeallocateObject(id object) ;

extern "C" id NSCopyObject(id object, NSUInteger extraBytes, NSZone * _Nullable zone) __attribute__((availability(macos,introduced=10.0,deprecated=10.8,message="Not supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=6.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported")));

extern "C" BOOL NSShouldRetainWithZone(id anObject, NSZone * _Nullable requestedZone) ;

extern "C" void NSIncrementExtraRefCount(id object) ;

extern "C" BOOL NSDecrementExtraRefCountWasZero(id object) ;

extern "C" NSUInteger NSExtraRefCount(id object) ;
static __inline__ __attribute__((always_inline)) __attribute__((cf_returns_retained)) CFTypeRef _Nullable CFBridgingRetain(id _Nullable X) {
    return X ? CFRetain((CFTypeRef)X) : __null;
}


static __inline__ __attribute__((always_inline)) id _Nullable CFBridgingRelease(CFTypeRef __attribute__((cf_consumed)) _Nullable X) __attribute__((ns_returns_retained)) {
    return ((id (*)(id, SEL))(void *)objc_msgSend)((id)CFMakeCollectable(X), sel_registerName("autorelease"));
}
#pragma clang assume_nonnull end






// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif


#pragma clang assume_nonnull begin
typedef struct {
    unsigned long state;
    id __attribute__((objc_ownership(none))) _Nullable * _Nullable itemsPtr;
    unsigned long * _Nullable mutationsPtr;
    unsigned long extra[5];
} NSFastEnumerationState;

// @protocol NSFastEnumeration

// - (NSUInteger)countByEnumeratingWithState:(NSFastEnumerationState *)state objects:(id __attribute__((objc_ownership(none))) _Nullable [_Nonnull])buffer count:(NSUInteger)len;

/* @end */



#ifndef _REWRITER_typedef_NSEnumerator
#define _REWRITER_typedef_NSEnumerator
typedef struct objc_object NSEnumerator;
typedef struct {} _objc_exc_NSEnumerator;
#endif

struct NSEnumerator_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// - (nullable ObjectType)nextObject;

/* @end */


// @interface NSEnumerator<ObjectType> (NSExtendedEnumerator)

// @property (readonly, copy) NSArray<ObjectType> *allObjects;

/* @end */

#pragma clang assume_nonnull end










// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif


#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSValue
#define _REWRITER_typedef_NSValue
typedef struct objc_object NSValue;
typedef struct {} _objc_exc_NSValue;
#endif

struct NSValue_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// - (void)getValue:(void *)value size:(NSUInteger)size __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));

// @property (readonly) const char *objCType __attribute__((objc_returns_inner_pointer));

// - (instancetype)initWithBytes:(const void *)value objCType:(const char *)type __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSValue (NSValueCreation)

// + (NSValue *)valueWithBytes:(const void *)value objCType:(const char *)type;
// + (NSValue *)value:(const void *)value withObjCType:(const char *)type;

/* @end */


// @interface NSValue (NSValueExtensionMethods)

// + (NSValue *)valueWithNonretainedObject:(nullable id)anObject;
// @property (nullable, readonly) id nonretainedObjectValue;

// + (NSValue *)valueWithPointer:(nullable const void *)pointer;
// @property (nullable, readonly) void *pointerValue;

// - (BOOL)isEqualToValue:(NSValue *)value;

/* @end */



#ifndef _REWRITER_typedef_NSNumber
#define _REWRITER_typedef_NSNumber
typedef struct objc_object NSNumber;
typedef struct {} _objc_exc_NSNumber;
#endif

struct NSNumber_IMPL {
	struct NSValue_IMPL NSValue_IVARS;
};


// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithChar:(char)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithUnsignedChar:(unsigned char)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithShort:(short)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithUnsignedShort:(unsigned short)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithInt:(int)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithUnsignedInt:(unsigned int)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithLong:(long)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithUnsignedLong:(unsigned long)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithLongLong:(long long)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithUnsignedLongLong:(unsigned long long)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithFloat:(float)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithDouble:(double)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithBool:(BOOL)value __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithInteger:(NSInteger)value __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));
// - (NSNumber *)initWithUnsignedInteger:(NSUInteger)value __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));

// @property (readonly) char charValue;
// @property (readonly) unsigned char unsignedCharValue;
// @property (readonly) short shortValue;
// @property (readonly) unsigned short unsignedShortValue;
// @property (readonly) int intValue;
// @property (readonly) unsigned int unsignedIntValue;
// @property (readonly) long longValue;
// @property (readonly) unsigned long unsignedLongValue;
// @property (readonly) long long longLongValue;
// @property (readonly) unsigned long long unsignedLongLongValue;
// @property (readonly) float floatValue;
// @property (readonly) double doubleValue;
// @property (readonly) BOOL boolValue;
// @property (readonly) NSInteger integerValue __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) NSUInteger unsignedIntegerValue __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSString *stringValue;

// - (NSComparisonResult)compare:(NSNumber *)otherNumber;

// - (BOOL)isEqualToNumber:(NSNumber *)number;

// - (NSString *)descriptionWithLocale:(nullable id)locale;

/* @end */


// @interface NSNumber (NSNumberCreation)

// + (NSNumber *)numberWithChar:(char)value;
// + (NSNumber *)numberWithUnsignedChar:(unsigned char)value;
// + (NSNumber *)numberWithShort:(short)value;
// + (NSNumber *)numberWithUnsignedShort:(unsigned short)value;
// + (NSNumber *)numberWithInt:(int)value;
// + (NSNumber *)numberWithUnsignedInt:(unsigned int)value;
// + (NSNumber *)numberWithLong:(long)value;
// + (NSNumber *)numberWithUnsignedLong:(unsigned long)value;
// + (NSNumber *)numberWithLongLong:(long long)value;
// + (NSNumber *)numberWithUnsignedLongLong:(unsigned long long)value;
// + (NSNumber *)numberWithFloat:(float)value;
// + (NSNumber *)numberWithDouble:(double)value;
// + (NSNumber *)numberWithBool:(BOOL)value;
// + (NSNumber *)numberWithInteger:(NSInteger)value __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSNumber *)numberWithUnsignedInteger:(NSUInteger)value __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSValue (NSDeprecated)


// - (void)getValue:(void *)value __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="getValue:size:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="getValue:size:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="getValue:size:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="getValue:size:")));
/* @end */

#pragma clang assume_nonnull end


// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin

typedef struct _NSRange {
    NSUInteger location;
    NSUInteger length;
} NSRange;

typedef NSRange *NSRangePointer;

static __inline__ __attribute__((always_inline)) NSRange NSMakeRange(NSUInteger loc, NSUInteger len) {
    NSRange r;
    r.location = loc;
    r.length = len;
    return r;
}

static __inline__ __attribute__((always_inline)) NSUInteger NSMaxRange(NSRange range) {
    return (range.location + range.length);
}

static __inline__ __attribute__((always_inline)) BOOL NSLocationInRange(NSUInteger loc, NSRange range) {
    return (!(loc < range.location) && (loc - range.location) < range.length) ? ((bool)1) : ((bool)0);
}

static __inline__ __attribute__((always_inline)) BOOL NSEqualRanges(NSRange range1, NSRange range2) {
    return (range1.location == range2.location && range1.length == range2.length);
}

extern "C" NSRange NSUnionRange(NSRange range1, NSRange range2);
extern "C" NSRange NSIntersectionRange(NSRange range1, NSRange range2);
extern "C" NSString *NSStringFromRange(NSRange range);
extern "C" NSRange NSRangeFromString(NSString *aString);

// @interface NSValue (NSValueRangeExtensions)

// + (NSValue *)valueWithRange:(NSRange)range;
// @property (readonly) NSRange rangeValue;

/* @end */

#pragma clang assume_nonnull end





// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif









#pragma clang assume_nonnull begin

typedef NSInteger NSCollectionChangeType; enum {
    NSCollectionChangeInsert,
    NSCollectionChangeRemove
} __attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

__attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))

#ifndef _REWRITER_typedef_NSOrderedCollectionChange
#define _REWRITER_typedef_NSOrderedCollectionChange
typedef struct objc_object NSOrderedCollectionChange;
typedef struct {} _objc_exc_NSOrderedCollectionChange;
#endif

struct NSOrderedCollectionChange_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};

#if 0
+ (NSOrderedCollectionChange<ObjectType> *)changeWithObject:(nullable ObjectType)anObject
                                                       type:(NSCollectionChangeType)type
                                                      index:(NSUInteger)index;
#endif


#if 0
+ (NSOrderedCollectionChange<ObjectType> *)changeWithObject:(nullable ObjectType)anObject
                                                       type:(NSCollectionChangeType)type
                                                      index:(NSUInteger)index
                                            associatedIndex:(NSUInteger)associatedIndex;
#endif



// @property (readonly, strong, nullable) ObjectType object;


// @property (readonly) NSCollectionChangeType changeType;



// @property (readonly) NSUInteger index;





// @property (readonly) NSUInteger associatedIndex;

// - (id)init __attribute__((availability(macos,unavailable))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

#if 0
- (instancetype)initWithObject:(nullable ObjectType)anObject
                          type:(NSCollectionChangeType)type
                         index:(NSUInteger)index;
#endif


#if 0
- (instancetype)initWithObject:(nullable ObjectType)anObject
                          type:(NSCollectionChangeType)type
                         index:(NSUInteger)index
               associatedIndex:(NSUInteger)associatedIndex __attribute__((objc_designated_initializer));
#endif

/* @end */

#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSIndexSet
#define _REWRITER_typedef_NSIndexSet
typedef struct objc_object NSIndexSet;
typedef struct {} _objc_exc_NSIndexSet;
#endif

struct NSIndexSet_IMPL {
	struct NSObject_IMPL NSObject_IVARS;

	struct  {
	NSUInteger _isEmpty : 1;
	NSUInteger _hasSingleRange : 1;
	NSUInteger _cacheValid : 1;
	NSUInteger _reservedArrayBinderController : 29;
	} _indexSetFlags;

	union  {

	struct  {
	NSRange _range;
	} _singleRange;

	struct  {
	void * _Nonnull _data;
	void * _Nonnull _reserved;
	} _multipleRanges;
	} _internal;
};


// + (instancetype)indexSet;
// + (instancetype)indexSetWithIndex:(NSUInteger)value;
// + (instancetype)indexSetWithIndexesInRange:(NSRange)range;

// - (instancetype)initWithIndexesInRange:(NSRange)range __attribute__((objc_designated_initializer));
// - (instancetype)initWithIndexSet:(NSIndexSet *)indexSet __attribute__((objc_designated_initializer));

// - (instancetype)initWithIndex:(NSUInteger)value;

// - (BOOL)isEqualToIndexSet:(NSIndexSet *)indexSet;

// @property (readonly) NSUInteger count;



// @property (readonly) NSUInteger firstIndex;
// @property (readonly) NSUInteger lastIndex;
// - (NSUInteger)indexGreaterThanIndex:(NSUInteger)value;
// - (NSUInteger)indexLessThanIndex:(NSUInteger)value;
// - (NSUInteger)indexGreaterThanOrEqualToIndex:(NSUInteger)value;
// - (NSUInteger)indexLessThanOrEqualToIndex:(NSUInteger)value;



// - (NSUInteger)getIndexes:(NSUInteger *)indexBuffer maxCount:(NSUInteger)bufferSize inIndexRange:(nullable NSRangePointer)range;

// - (NSUInteger)countOfIndexesInRange:(NSRange)range __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (BOOL)containsIndex:(NSUInteger)value;
// - (BOOL)containsIndexesInRange:(NSRange)range;
// - (BOOL)containsIndexes:(NSIndexSet *)indexSet;

// - (BOOL)intersectsIndexesInRange:(NSRange)range;

// - (void)enumerateIndexesUsingBlock:(void (__attribute__((noescape)) ^)(NSUInteger idx, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateIndexesWithOptions:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(NSUInteger idx, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateIndexesInRange:(NSRange)range options:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(NSUInteger idx, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSUInteger)indexPassingTest:(BOOL (__attribute__((noescape)) ^)(NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSUInteger)indexWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSUInteger)indexInRange:(NSRange)range options:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSIndexSet *)indexesPassingTest:(BOOL (__attribute__((noescape)) ^)(NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSIndexSet *)indexesWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSIndexSet *)indexesInRange:(NSRange)range options:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (void)enumerateRangesUsingBlock:(void (__attribute__((noescape)) ^)(NSRange range, BOOL *stop))block __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateRangesWithOptions:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(NSRange range, BOOL *stop))block __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateRangesInRange:(NSRange)range options:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(NSRange range, BOOL *stop))block __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */



#ifndef _REWRITER_typedef_NSMutableIndexSet
#define _REWRITER_typedef_NSMutableIndexSet
typedef struct objc_object NSMutableIndexSet;
typedef struct {} _objc_exc_NSMutableIndexSet;
#endif

struct NSMutableIndexSet_IMPL {
	struct NSIndexSet_IMPL NSIndexSet_IVARS;
	void *_reserved;
};


// - (void)addIndexes:(NSIndexSet *)indexSet;
// - (void)removeIndexes:(NSIndexSet *)indexSet;
// - (void)removeAllIndexes;
// - (void)addIndex:(NSUInteger)value;
// - (void)removeIndex:(NSUInteger)value;
// - (void)addIndexesInRange:(NSRange)range;
// - (void)removeIndexesInRange:(NSRange)range;



// - (void)shiftIndexesStartingAtIndex:(NSUInteger)index by:(NSInteger)delta;

/* @end */

#pragma clang assume_nonnull end


#pragma clang assume_nonnull begin


typedef NSUInteger NSOrderedCollectionDifferenceCalculationOptions; enum {

    NSOrderedCollectionDifferenceCalculationOmitInsertedObjects = (1 << 0UL),

    NSOrderedCollectionDifferenceCalculationOmitRemovedObjects = (1 << 1UL),


    NSOrderedCollectionDifferenceCalculationInferMoves = (1 << 2UL)
} __attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

__attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))

#ifndef _REWRITER_typedef_NSOrderedCollectionDifference
#define _REWRITER_typedef_NSOrderedCollectionDifference
typedef struct objc_object NSOrderedCollectionDifference;
typedef struct {} _objc_exc_NSOrderedCollectionDifference;
#endif

struct NSOrderedCollectionDifference_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};

// - (instancetype)initWithChanges:(NSArray<NSOrderedCollectionChange<ObjectType> *> *)changes;

#if 0
- (instancetype)initWithInsertIndexes:(NSIndexSet *)inserts
                      insertedObjects:(nullable NSArray<ObjectType> *)insertedObjects
                        removeIndexes:(NSIndexSet *)removes
                       removedObjects:(nullable NSArray<ObjectType> *)removedObjects
                    additionalChanges:(NSArray<NSOrderedCollectionChange<ObjectType> *> *)changes __attribute__((objc_designated_initializer));
#endif


#if 0
- (instancetype)initWithInsertIndexes:(NSIndexSet *)inserts
                      insertedObjects:(nullable NSArray<ObjectType> *)insertedObjects
                        removeIndexes:(NSIndexSet *)removes
                       removedObjects:(nullable NSArray<ObjectType> *)removedObjects;
#endif


// @property (strong, readonly) NSArray<NSOrderedCollectionChange<ObjectType> *> *insertions __attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// @property (strong, readonly) NSArray<NSOrderedCollectionChange<ObjectType> *> *removals __attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

// @property (assign, readonly) BOOL hasChanges;


// - (NSOrderedCollectionDifference<id> *)differenceByTransformingChangesWithBlock:(NSOrderedCollectionChange<id> *(__attribute__((noescape)) ^)(NSOrderedCollectionChange<ObjectType> *))block;







// - (instancetype)inverseDifference __attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

/* @end */

#pragma clang assume_nonnull end

// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSIndexSet
#define _REWRITER_typedef_NSIndexSet
typedef struct objc_object NSIndexSet;
typedef struct {} _objc_exc_NSIndexSet;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif




#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

struct NSArray_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly) NSUInteger count;
// - (ObjectType)objectAtIndex:(NSUInteger)index;
// - (instancetype)init __attribute__((objc_designated_initializer));
// - (instancetype)initWithObjects:(const ObjectType _Nonnull [_Nullable])objects count:(NSUInteger)cnt __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSArray<ObjectType> (NSExtendedArray)

// - (NSArray<ObjectType> *)arrayByAddingObject:(ObjectType)anObject;
// - (NSArray<ObjectType> *)arrayByAddingObjectsFromArray:(NSArray<ObjectType> *)otherArray;
// - (NSString *)componentsJoinedByString:(NSString *)separator;
// - (BOOL)containsObject:(ObjectType)anObject;
// @property (readonly, copy) NSString *description;
// - (NSString *)descriptionWithLocale:(nullable id)locale;
// - (NSString *)descriptionWithLocale:(nullable id)locale indent:(NSUInteger)level;
// - (nullable ObjectType)firstObjectCommonWithArray:(NSArray<ObjectType> *)otherArray;
// - (void)getObjects:(ObjectType _Nonnull __attribute__((objc_ownership(none))) [_Nonnull])objects range:(NSRange)range __attribute__((availability(swift, unavailable, message="Use 'subarrayWithRange()' instead")));
// - (NSUInteger)indexOfObject:(ObjectType)anObject;
// - (NSUInteger)indexOfObject:(ObjectType)anObject inRange:(NSRange)range;
// - (NSUInteger)indexOfObjectIdenticalTo:(ObjectType)anObject;
// - (NSUInteger)indexOfObjectIdenticalTo:(ObjectType)anObject inRange:(NSRange)range;
// - (BOOL)isEqualToArray:(NSArray<ObjectType> *)otherArray;
// @property (nullable, nonatomic, readonly) ObjectType firstObject __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, nonatomic, readonly) ObjectType lastObject;
// - (NSEnumerator<ObjectType> *)objectEnumerator;
// - (NSEnumerator<ObjectType> *)reverseObjectEnumerator;
// @property (readonly, copy) NSData *sortedArrayHint;
// - (NSArray<ObjectType> *)sortedArrayUsingFunction:(NSInteger (__attribute__((noescape)) *)(ObjectType, ObjectType, void * _Nullable))comparator context:(nullable void *)context;
// - (NSArray<ObjectType> *)sortedArrayUsingFunction:(NSInteger (__attribute__((noescape)) *)(ObjectType, ObjectType, void * _Nullable))comparator context:(nullable void *)context hint:(nullable NSData *)hint;
// - (NSArray<ObjectType> *)sortedArrayUsingSelector:(SEL)comparator;
// - (NSArray<ObjectType> *)subarrayWithRange:(NSRange)range;

// - (BOOL)writeToURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


// - (void)makeObjectsPerformSelector:(SEL)aSelector __attribute__((availability(swift, unavailable, message="Use enumerateObjectsUsingBlock: or a for loop instead")));
// - (void)makeObjectsPerformSelector:(SEL)aSelector withObject:(nullable id)argument __attribute__((availability(swift, unavailable, message="Use enumerateObjectsUsingBlock: or a for loop instead")));

// - (NSArray<ObjectType> *)objectsAtIndexes:(NSIndexSet *)indexes;

// - (ObjectType)objectAtIndexedSubscript:(NSUInteger)idx __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)enumerateObjectsUsingBlock:(void (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateObjectsWithOptions:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateObjectsAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSUInteger)indexOfObjectPassingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSUInteger)indexOfObjectWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSUInteger)indexOfObjectAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape))^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSIndexSet *)indexesOfObjectsPassingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSIndexSet *)indexesOfObjectsWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSIndexSet *)indexesOfObjectsAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSArray<ObjectType> *)sortedArrayUsingComparator:(NSComparator __attribute__((noescape)))cmptr __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSArray<ObjectType> *)sortedArrayWithOptions:(NSSortOptions)opts usingComparator:(NSComparator __attribute__((noescape)))cmptr __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSUInteger NSBinarySearchingOptions; enum {
 NSBinarySearchingFirstEqual = (1UL << 8),
 NSBinarySearchingLastEqual = (1UL << 9),
 NSBinarySearchingInsertionIndex = (1UL << 10),
};

// - (NSUInteger)indexOfObject:(ObjectType)obj inSortedRange:(NSRange)r options:(NSBinarySearchingOptions)opts usingComparator:(NSComparator __attribute__((noescape)))cmp __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSArray<ObjectType> (NSArrayCreation)

// + (instancetype)array;
// + (instancetype)arrayWithObject:(ObjectType)anObject;
// + (instancetype)arrayWithObjects:(const ObjectType _Nonnull [_Nonnull])objects count:(NSUInteger)cnt;
// + (instancetype)arrayWithObjects:(ObjectType)firstObj, ... __attribute__((sentinel(0,1)));
// + (instancetype)arrayWithArray:(NSArray<ObjectType> *)array;

// - (instancetype)initWithObjects:(ObjectType)firstObj, ... __attribute__((sentinel(0,1)));
// - (instancetype)initWithArray:(NSArray<ObjectType> *)array;
// - (instancetype)initWithArray:(NSArray<ObjectType> *)array copyItems:(BOOL)flag;


// - (nullable NSArray<ObjectType> *)initWithContentsOfURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));

// + (nullable NSArray<ObjectType> *)arrayWithContentsOfURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(swift, unavailable, message="Use initializer instead")));

/* @end */


__attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
__attribute__((availability(swift, unavailable, message="NSArray diffing methods are not available in Swift, use Collection.difference(from:) instead")))
// @interface NSArray<ObjectType> (NSArrayDiffing)

// - (NSOrderedCollectionDifference<ObjectType> *)differenceFromArray:(NSArray<ObjectType> *)other withOptions:(NSOrderedCollectionDifferenceCalculationOptions)options usingEquivalenceTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj1, ObjectType obj2))block;

// - (NSOrderedCollectionDifference<ObjectType> *)differenceFromArray:(NSArray<ObjectType> *)other withOptions:(NSOrderedCollectionDifferenceCalculationOptions)options;


// - (NSOrderedCollectionDifference<ObjectType> *)differenceFromArray:(NSArray<ObjectType> *)other;

// - (nullable NSArray<ObjectType> *)arrayByApplyingDifference:(NSOrderedCollectionDifference<ObjectType> *)difference;

/* @end */


// @interface NSArray<ObjectType> (NSDeprecated)




// - (void)getObjects:(ObjectType _Nonnull __attribute__((objc_ownership(none))) [_Nonnull])objects __attribute__((availability(swift, unavailable, message="Use 'as [AnyObject]' instead"))) __attribute__((availability(macos,introduced=10.0,deprecated=10.13,message="Use -getObjects:range: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=11.0,message="Use -getObjects:range: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=4.0,message="Use -getObjects:range: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=11.0,message="Use -getObjects:range: instead")));


// + (nullable NSArray<ObjectType> *)arrayWithContentsOfFile:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="arrayWithContentsOfURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="arrayWithContentsOfURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="arrayWithContentsOfURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="arrayWithContentsOfURL:error:")));
// + (nullable NSArray<ObjectType> *)arrayWithContentsOfURL:(NSURL *)url __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="arrayWithContentsOfURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="arrayWithContentsOfURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="arrayWithContentsOfURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="arrayWithContentsOfURL:error:")));
// - (nullable NSArray<ObjectType> *)initWithContentsOfFile:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="initWithContentsOfURL:error:")));
// - (nullable NSArray<ObjectType> *)initWithContentsOfURL:(NSURL *)url __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="initWithContentsOfURL:error:")));
// - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="writeToURL:error:")));
// - (BOOL)writeToURL:(NSURL *)url atomically:(BOOL)atomically __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="writeToURL:error:")));

/* @end */





#ifndef _REWRITER_typedef_NSMutableArray
#define _REWRITER_typedef_NSMutableArray
typedef struct objc_object NSMutableArray;
typedef struct {} _objc_exc_NSMutableArray;
#endif

struct NSMutableArray_IMPL {
	struct NSArray_IMPL NSArray_IVARS;
};


// - (void)addObject:(ObjectType)anObject;
// - (void)insertObject:(ObjectType)anObject atIndex:(NSUInteger)index;
// - (void)removeLastObject;
// - (void)removeObjectAtIndex:(NSUInteger)index;
// - (void)replaceObjectAtIndex:(NSUInteger)index withObject:(ObjectType)anObject;
// - (instancetype)init __attribute__((objc_designated_initializer));
// - (instancetype)initWithCapacity:(NSUInteger)numItems __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSMutableArray<ObjectType> (NSExtendedMutableArray)

// - (void)addObjectsFromArray:(NSArray<ObjectType> *)otherArray;
// - (void)exchangeObjectAtIndex:(NSUInteger)idx1 withObjectAtIndex:(NSUInteger)idx2;
// - (void)removeAllObjects;
// - (void)removeObject:(ObjectType)anObject inRange:(NSRange)range;
// - (void)removeObject:(ObjectType)anObject;
// - (void)removeObjectIdenticalTo:(ObjectType)anObject inRange:(NSRange)range;
// - (void)removeObjectIdenticalTo:(ObjectType)anObject;
// - (void)removeObjectsFromIndices:(NSUInteger *)indices numIndices:(NSUInteger)cnt __attribute__((availability(macos,introduced=10.0,deprecated=10.6,message="Not supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=4.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported")));
// - (void)removeObjectsInArray:(NSArray<ObjectType> *)otherArray;
// - (void)removeObjectsInRange:(NSRange)range;
// - (void)replaceObjectsInRange:(NSRange)range withObjectsFromArray:(NSArray<ObjectType> *)otherArray range:(NSRange)otherRange;
// - (void)replaceObjectsInRange:(NSRange)range withObjectsFromArray:(NSArray<ObjectType> *)otherArray;
// - (void)setArray:(NSArray<ObjectType> *)otherArray;
// - (void)sortUsingFunction:(NSInteger (__attribute__((noescape)) *)(ObjectType, ObjectType, void * _Nullable))compare context:(nullable void *)context;
// - (void)sortUsingSelector:(SEL)comparator;

// - (void)insertObjects:(NSArray<ObjectType> *)objects atIndexes:(NSIndexSet *)indexes;
// - (void)removeObjectsAtIndexes:(NSIndexSet *)indexes;
// - (void)replaceObjectsAtIndexes:(NSIndexSet *)indexes withObjects:(NSArray<ObjectType> *)objects;

// - (void)setObject:(ObjectType)obj atIndexedSubscript:(NSUInteger)idx __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)sortUsingComparator:(NSComparator __attribute__((noescape)))cmptr __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)sortWithOptions:(NSSortOptions)opts usingComparator:(NSComparator __attribute__((noescape)))cmptr __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSMutableArray<ObjectType> (NSMutableArrayCreation)

// + (instancetype)arrayWithCapacity:(NSUInteger)numItems;

// + (nullable NSMutableArray<ObjectType> *)arrayWithContentsOfFile:(NSString *)path;
// + (nullable NSMutableArray<ObjectType> *)arrayWithContentsOfURL:(NSURL *)url;
// - (nullable NSMutableArray<ObjectType> *)initWithContentsOfFile:(NSString *)path;
// - (nullable NSMutableArray<ObjectType> *)initWithContentsOfURL:(NSURL *)url;

/* @end */


__attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
__attribute__((availability(swift, unavailable, message="NSMutableArray diffing methods are not available in Swift")))
// @interface NSMutableArray<ObjectType> (NSMutableArrayDiffing)

// - (void)applyDifference:(NSOrderedCollectionDifference<ObjectType> *)difference;

/* @end */

#pragma clang assume_nonnull end






#pragma clang assume_nonnull begin



#ifndef _REWRITER_typedef_NSAutoreleasePool
#define _REWRITER_typedef_NSAutoreleasePool
typedef struct objc_object NSAutoreleasePool;
typedef struct {} _objc_exc_NSAutoreleasePool;
#endif

struct NSAutoreleasePool_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_token;
	void *_reserved3;
	void *_reserved2;
	void *_reserved;
};


// + (void)addObject:(id)anObject;

// - (void)addObject:(id)anObject;

// - (void)drain;

/* @end */

#pragma clang assume_nonnull end





typedef unsigned short unichar;





#pragma clang assume_nonnull begin

// @class NSItemProvider;
#ifndef _REWRITER_typedef_NSItemProvider
#define _REWRITER_typedef_NSItemProvider
typedef struct objc_object NSItemProvider;
typedef struct {} _objc_exc_NSItemProvider;
#endif

#ifndef _REWRITER_typedef_NSProgress
#define _REWRITER_typedef_NSProgress
typedef struct objc_object NSProgress;
typedef struct {} _objc_exc_NSProgress;
#endif



typedef NSInteger NSItemProviderRepresentationVisibility; enum {
    NSItemProviderRepresentationVisibilityAll = 0,
    NSItemProviderRepresentationVisibilityTeam
    __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(macos,unavailable))) = 1,
    NSItemProviderRepresentationVisibilityGroup
    __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 2 ,
    NSItemProviderRepresentationVisibilityOwnProcess = 3,
} __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));



typedef NSInteger NSItemProviderFileOptions; enum {
    NSItemProviderFileOptionOpenInPlace = 1,
} __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));



__attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)))
// @protocol NSItemProviderWriting <NSObject>

@property (class, nonatomic, readonly, copy) NSArray<NSString *> *writableTypeIdentifiersForItemProvider;

/* @optional */


// @property (nonatomic, readonly, copy) NSArray<NSString *> *writableTypeIdentifiersForItemProvider;

// + (NSItemProviderRepresentationVisibility)itemProviderVisibilityForRepresentationWithTypeIdentifier:(NSString *)typeIdentifier;


// - (NSItemProviderRepresentationVisibility)itemProviderVisibilityForRepresentationWithTypeIdentifier:(NSString *)typeIdentifier;

/* @required */

#if 0
- (nullable NSProgress *)loadDataWithTypeIdentifier:(NSString *)typeIdentifier
                   forItemProviderCompletionHandler:(void (^)(NSData * _Nullable data, NSError * _Nullable error))completionHandler;
#endif


/* @end */




__attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)))
// @protocol NSItemProviderReading <NSObject>

@property (class, nonatomic, readonly, copy) NSArray<NSString *> *readableTypeIdentifiersForItemProvider;

#if 0
+ (nullable instancetype)objectWithItemProviderData:(NSData *)data
                                     typeIdentifier:(NSString *)typeIdentifier
                                              error:(NSError **)outError;
#endif


/* @end */



typedef void (*NSItemProviderCompletionHandler)(_Nullable id /*<NSSecureCoding>*/ item, NSError * _Null_unspecified error);
typedef void (*NSItemProviderLoadHandler)(_Null_unspecified NSItemProviderCompletionHandler completionHandler, _Null_unspecified Class expectedValueClass, NSDictionary * _Null_unspecified options);



__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSItemProvider
#define _REWRITER_typedef_NSItemProvider
typedef struct objc_object NSItemProvider;
typedef struct {} _objc_exc_NSItemProvider;
#endif

struct NSItemProvider_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};








// - (instancetype)init __attribute__((objc_designated_initializer));




#if 0
- (void)registerDataRepresentationForTypeIdentifier:(NSString *)typeIdentifier
                                         visibility:(NSItemProviderRepresentationVisibility)visibility
                                        loadHandler:(NSProgress * _Nullable (^)(void (^completionHandler)(NSData * _Nullable data, NSError * _Nullable error)))loadHandler __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
#endif





#if 0
- (void)registerFileRepresentationForTypeIdentifier:(NSString *)typeIdentifier
                                        fileOptions:(NSItemProviderFileOptions)fileOptions
                                         visibility:(NSItemProviderRepresentationVisibility)visibility
                                        loadHandler:(NSProgress * _Nullable (^)(void (^completionHandler)(NSURL * _Nullable url, BOOL coordinated, NSError * _Nullable error)))loadHandler __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
#endif







// @property (copy, readonly, atomic) NSArray<NSString *> *registeredTypeIdentifiers;

// - (NSArray<NSString *> *)registeredTypeIdentifiersWithFileOptions:(NSItemProviderFileOptions)fileOptions __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


// - (BOOL)hasItemConformingToTypeIdentifier:(NSString *)typeIdentifier;

#if 0
- (BOOL)hasRepresentationConformingToTypeIdentifier:(NSString *)typeIdentifier
                                        fileOptions:(NSItemProviderFileOptions)fileOptions __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
#endif



#if 0
- (NSProgress *)loadDataRepresentationForTypeIdentifier:(NSString *)typeIdentifier
                                      completionHandler:(void(^)(NSData * _Nullable data, NSError * _Nullable error))completionHandler __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
#endif



#if 0
- (NSProgress *)loadFileRepresentationForTypeIdentifier:(NSString *)typeIdentifier
                                      completionHandler:(void(^)(NSURL * _Nullable url, NSError * _Nullable error))completionHandler __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
#endif




#if 0
- (NSProgress *)loadInPlaceFileRepresentationForTypeIdentifier:(NSString *)typeIdentifier
                                             completionHandler:(void (^)(NSURL * _Nullable url, BOOL isInPlace, NSError * _Nullable error))completionHandler __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
#endif






// @property (atomic, copy, nullable) NSString *suggestedName __attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));






// - (instancetype)initWithObject:(id<NSItemProviderWriting>)object __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


// - (void)registerObject:(id<NSItemProviderWriting>)object visibility:(NSItemProviderRepresentationVisibility)visibility __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


#if 0
- (void)registerObjectOfClass:(Class<NSItemProviderWriting>)aClass
                   visibility:(NSItemProviderRepresentationVisibility)visibility
                  loadHandler:(NSProgress * _Nullable (^)(void (^completionHandler)(id<NSItemProviderWriting> _Nullable object, NSError * _Nullable error)))loadHandler __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
#endif


// - (BOOL)canLoadObjectOfClass:(Class<NSItemProviderReading>)aClass __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


#if 0
- (NSProgress *)loadObjectOfClass:(Class<NSItemProviderReading>)aClass
                completionHandler:(void (^)(id<NSItemProviderReading> _Nullable object, NSError * _Nullable error))completionHandler __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
#endif

// - (instancetype)initWithItem:(nullable id<NSSecureCoding>)item typeIdentifier:(nullable NSString *)typeIdentifier __attribute__((objc_designated_initializer));


// - (nullable instancetype)initWithContentsOfURL:(null_unspecified NSURL *)fileURL;


// - (void)registerItemForTypeIdentifier:(NSString *)typeIdentifier loadHandler:(NSItemProviderLoadHandler)loadHandler;







// - (void)loadItemForTypeIdentifier:(NSString *)typeIdentifier options:(nullable NSDictionary *)options completionHandler:(nullable NSItemProviderCompletionHandler)completionHandler;


/* @end */




extern "C" NSString * const NSItemProviderPreferredImageSizeKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @interface NSItemProvider(NSPreviewSupport)


// @property (nullable, copy, atomic) NSItemProviderLoadHandler previewImageHandler __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// - (void)loadPreviewImageWithOptions:(null_unspecified NSDictionary *)options completionHandler:(null_unspecified NSItemProviderCompletionHandler)completionHandler __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */






extern "C" NSString * _Null_unspecified const NSExtensionJavaScriptPreprocessingResultsKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSString * _Null_unspecified const NSExtensionJavaScriptFinalizeArgumentKey __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));






extern "C" NSString * const NSItemProviderErrorDomain __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


typedef NSInteger NSItemProviderErrorCode; enum {
    NSItemProviderUnknownError = -1,
    NSItemProviderItemUnavailableError = -1000,
    NSItemProviderUnexpectedValueClassError = -1100,
    NSItemProviderUnavailableCoercionError __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = -1200
} __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
#pragma clang assume_nonnull end


// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSCharacterSet
#define _REWRITER_typedef_NSCharacterSet
typedef struct objc_object NSCharacterSet;
typedef struct {} _objc_exc_NSCharacterSet;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSLocale
#define _REWRITER_typedef_NSLocale
typedef struct objc_object NSLocale;
typedef struct {} _objc_exc_NSLocale;
#endif


#pragma clang assume_nonnull begin



typedef NSUInteger NSStringCompareOptions; enum {
    NSCaseInsensitiveSearch = 1,
    NSLiteralSearch = 2,
    NSBackwardsSearch = 4,
    NSAnchoredSearch = 8,
    NSNumericSearch = 64,
    NSDiacriticInsensitiveSearch __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 128,
    NSWidthInsensitiveSearch __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 256,
    NSForcedOrderingSearch __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 512,
    NSRegularExpressionSearch __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=3.2))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 1024
};





typedef NSUInteger NSStringEncoding;
enum {
    NSASCIIStringEncoding = 1,
    NSNEXTSTEPStringEncoding = 2,
    NSJapaneseEUCStringEncoding = 3,
    NSUTF8StringEncoding = 4,
    NSISOLatin1StringEncoding = 5,
    NSSymbolStringEncoding = 6,
    NSNonLossyASCIIStringEncoding = 7,
    NSShiftJISStringEncoding = 8,
    NSISOLatin2StringEncoding = 9,
    NSUnicodeStringEncoding = 10,
    NSWindowsCP1251StringEncoding = 11,
    NSWindowsCP1252StringEncoding = 12,
    NSWindowsCP1253StringEncoding = 13,
    NSWindowsCP1254StringEncoding = 14,
    NSWindowsCP1250StringEncoding = 15,
    NSISO2022JPStringEncoding = 21,
    NSMacOSRomanStringEncoding = 30,

    NSUTF16StringEncoding = NSUnicodeStringEncoding,

    NSUTF16BigEndianStringEncoding = 0x90000100,
    NSUTF16LittleEndianStringEncoding = 0x94000100,

    NSUTF32StringEncoding = 0x8c000100,
    NSUTF32BigEndianStringEncoding = 0x98000100,
    NSUTF32LittleEndianStringEncoding = 0x9c000100
};

typedef NSUInteger NSStringEncodingConversionOptions; enum {
    NSStringEncodingConversionAllowLossy = 1,
    NSStringEncodingConversionExternalRepresentation = 2
};



#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

struct NSString_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};






// @property (readonly) NSUInteger length;
// - (unichar)characterAtIndex:(NSUInteger)index;



// - (instancetype)init __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSString (NSStringExtensionMethods)
// - (NSString *)substringFromIndex:(NSUInteger)from;
// - (NSString *)substringToIndex:(NSUInteger)to;
// - (NSString *)substringWithRange:(NSRange)range;

// - (void)getCharacters:(unichar *)buffer range:(NSRange)range;






// - (NSComparisonResult)compare:(NSString *)string;
// - (NSComparisonResult)compare:(NSString *)string options:(NSStringCompareOptions)mask;
// - (NSComparisonResult)compare:(NSString *)string options:(NSStringCompareOptions)mask range:(NSRange)rangeOfReceiverToCompare;
// - (NSComparisonResult)compare:(NSString *)string options:(NSStringCompareOptions)mask range:(NSRange)rangeOfReceiverToCompare locale:(nullable id)locale;
// - (NSComparisonResult)caseInsensitiveCompare:(NSString *)string;
// - (NSComparisonResult)localizedCompare:(NSString *)string;
// - (NSComparisonResult)localizedCaseInsensitiveCompare:(NSString *)string;



// - (NSComparisonResult)localizedStandardCompare:(NSString *)string __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (BOOL)isEqualToString:(NSString *)aString;






// - (BOOL)hasPrefix:(NSString *)str;
// - (BOOL)hasSuffix:(NSString *)str;

// - (NSString *)commonPrefixWithString:(NSString *)str options:(NSStringCompareOptions)mask;



// - (BOOL)containsString:(NSString *)str __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)localizedCaseInsensitiveContainsString:(NSString *)str __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)localizedStandardContainsString:(NSString *)str __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSRange)localizedStandardRangeOfString:(NSString *)str __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// - (NSRange)rangeOfString:(NSString *)searchString;
// - (NSRange)rangeOfString:(NSString *)searchString options:(NSStringCompareOptions)mask;
// - (NSRange)rangeOfString:(NSString *)searchString options:(NSStringCompareOptions)mask range:(NSRange)rangeOfReceiverToSearch;
// - (NSRange)rangeOfString:(NSString *)searchString options:(NSStringCompareOptions)mask range:(NSRange)rangeOfReceiverToSearch locale:(nullable NSLocale *)locale __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (NSRange)rangeOfCharacterFromSet:(NSCharacterSet *)searchSet;
// - (NSRange)rangeOfCharacterFromSet:(NSCharacterSet *)searchSet options:(NSStringCompareOptions)mask;
// - (NSRange)rangeOfCharacterFromSet:(NSCharacterSet *)searchSet options:(NSStringCompareOptions)mask range:(NSRange)rangeOfReceiverToSearch;

// - (NSRange)rangeOfComposedCharacterSequenceAtIndex:(NSUInteger)index;
// - (NSRange)rangeOfComposedCharacterSequencesForRange:(NSRange)range __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSString *)stringByAppendingString:(NSString *)aString;
// - (NSString *)stringByAppendingFormat:(NSString *)format, ... __attribute__((format(__NSString__, 1, 2)));






// @property (readonly) double doubleValue;
// @property (readonly) float floatValue;
// @property (readonly) int intValue;
// @property (readonly) NSInteger integerValue __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) long long longLongValue __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) BOOL boolValue __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// @property (readonly, copy) NSString *uppercaseString;
// @property (readonly, copy) NSString *lowercaseString;
// @property (readonly, copy) NSString *capitalizedString;



// @property (readonly, copy) NSString *localizedUppercaseString __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSString *localizedLowercaseString __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSString *localizedCapitalizedString __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (NSString *)uppercaseStringWithLocale:(nullable NSLocale *)locale __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSString *)lowercaseStringWithLocale:(nullable NSLocale *)locale __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSString *)capitalizedStringWithLocale:(nullable NSLocale *)locale __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (void)getLineStart:(nullable NSUInteger *)startPtr end:(nullable NSUInteger *)lineEndPtr contentsEnd:(nullable NSUInteger *)contentsEndPtr forRange:(NSRange)range;
// - (NSRange)lineRangeForRange:(NSRange)range;

// - (void)getParagraphStart:(nullable NSUInteger *)startPtr end:(nullable NSUInteger *)parEndPtr contentsEnd:(nullable NSUInteger *)contentsEndPtr forRange:(NSRange)range;
// - (NSRange)paragraphRangeForRange:(NSRange)range;

typedef NSUInteger NSStringEnumerationOptions; enum {

    NSStringEnumerationByLines = 0,
    NSStringEnumerationByParagraphs = 1,
    NSStringEnumerationByComposedCharacterSequences = 2,
    NSStringEnumerationByWords = 3,
    NSStringEnumerationBySentences = 4,

    NSStringEnumerationReverse = 1UL << 8,
    NSStringEnumerationSubstringNotRequired = 1UL << 9,
    NSStringEnumerationLocalized = 1UL << 10
};



// - (void)enumerateSubstringsInRange:(NSRange)range options:(NSStringEnumerationOptions)opts usingBlock:(void (^)(NSString * _Nullable substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateLinesUsingBlock:(void (^)(NSString *line, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// @property (nullable, readonly) const char *UTF8String __attribute__((objc_returns_inner_pointer));

// @property (readonly) NSStringEncoding fastestEncoding;
// @property (readonly) NSStringEncoding smallestEncoding;

// - (nullable NSData *)dataUsingEncoding:(NSStringEncoding)encoding allowLossyConversion:(BOOL)lossy;
// - (nullable NSData *)dataUsingEncoding:(NSStringEncoding)encoding;

// - (BOOL)canBeConvertedToEncoding:(NSStringEncoding)encoding;



// - (nullable const char *)cStringUsingEncoding:(NSStringEncoding)encoding __attribute__((objc_returns_inner_pointer));
// - (BOOL)getCString:(char *)buffer maxLength:(NSUInteger)maxBufferCount encoding:(NSStringEncoding)encoding;
// - (BOOL)getBytes:(nullable void *)buffer maxLength:(NSUInteger)maxBufferCount usedLength:(nullable NSUInteger *)usedBufferCount encoding:(NSStringEncoding)encoding options:(NSStringEncodingConversionOptions)options range:(NSRange)range remainingRange:(nullable NSRangePointer)leftover;



// - (NSUInteger)maximumLengthOfBytesUsingEncoding:(NSStringEncoding)enc;
// - (NSUInteger)lengthOfBytesUsingEncoding:(NSStringEncoding)enc;

@property (class, readonly) const NSStringEncoding *availableStringEncodings;

// + (NSString *)localizedNameOfStringEncoding:(NSStringEncoding)encoding;



@property (class, readonly) NSStringEncoding defaultCStringEncoding;



// @property (readonly, copy) NSString *decomposedStringWithCanonicalMapping;
// @property (readonly, copy) NSString *precomposedStringWithCanonicalMapping;
// @property (readonly, copy) NSString *decomposedStringWithCompatibilityMapping;
// @property (readonly, copy) NSString *precomposedStringWithCompatibilityMapping;

// - (NSArray<NSString *> *)componentsSeparatedByString:(NSString *)separator;
// - (NSArray<NSString *> *)componentsSeparatedByCharactersInSet:(NSCharacterSet *)separator __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSString *)stringByTrimmingCharactersInSet:(NSCharacterSet *)set;
// - (NSString *)stringByPaddingToLength:(NSUInteger)newLength withString:(NSString *)padString startingAtIndex:(NSUInteger)padIndex;



// - (NSString *)stringByFoldingWithOptions:(NSStringCompareOptions)options locale:(nullable NSLocale *)locale __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement options:(NSStringCompareOptions)options range:(NSRange)searchRange __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (NSString *)stringByReplacingCharactersInRange:(NSRange)range withString:(NSString *)replacement __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSString *NSStringTransform __attribute__((swift_wrapper(struct)));



// - (nullable NSString *)stringByApplyingTransform:(NSStringTransform)transform reverse:(BOOL)reverse __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSStringTransform const NSStringTransformLatinToKatakana __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformLatinToHiragana __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformLatinToHangul __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformLatinToArabic __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformLatinToHebrew __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformLatinToThai __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformLatinToCyrillic __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformLatinToGreek __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformToLatin __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformMandarinToLatin __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformHiraganaToKatakana __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformFullwidthToHalfwidth __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformToXMLHex __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformToUnicodeName __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformStripCombiningMarks __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringTransform const NSStringTransformStripDiacritics __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (BOOL)writeToURL:(NSURL *)url atomically:(BOOL)useAuxiliaryFile encoding:(NSStringEncoding)enc error:(NSError **)error;
// - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile encoding:(NSStringEncoding)enc error:(NSError **)error;

// @property (readonly, copy) NSString *description;

// @property (readonly) NSUInteger hash;






// - (instancetype)initWithCharactersNoCopy:(unichar *)characters length:(NSUInteger)length freeWhenDone:(BOOL)freeBuffer;
// - (instancetype)initWithCharacters:(const unichar *)characters length:(NSUInteger)length;
// - (nullable instancetype)initWithUTF8String:(const char *)nullTerminatedCString;
// - (instancetype)initWithString:(NSString *)aString;
// - (instancetype)initWithFormat:(NSString *)format, ... __attribute__((format(__NSString__, 1, 2)));
// - (instancetype)initWithFormat:(NSString *)format arguments:(va_list)argList __attribute__((format(__NSString__, 1, 0)));
// - (instancetype)initWithFormat:(NSString *)format locale:(nullable id)locale, ... __attribute__((format(__NSString__, 1, 3)));
// - (instancetype)initWithFormat:(NSString *)format locale:(nullable id)locale arguments:(va_list)argList __attribute__((format(__NSString__, 1, 0)));
// - (nullable instancetype)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding;
// - (nullable instancetype)initWithBytes:(const void *)bytes length:(NSUInteger)len encoding:(NSStringEncoding)encoding;
// - (nullable instancetype)initWithBytesNoCopy:(void *)bytes length:(NSUInteger)len encoding:(NSStringEncoding)encoding freeWhenDone:(BOOL)freeBuffer;

// + (instancetype)string;
// + (instancetype)stringWithString:(NSString *)string;
// + (instancetype)stringWithCharacters:(const unichar *)characters length:(NSUInteger)length;
// + (nullable instancetype)stringWithUTF8String:(const char *)nullTerminatedCString;
// + (instancetype)stringWithFormat:(NSString *)format, ... __attribute__((format(__NSString__, 1, 2)));
// + (instancetype)localizedStringWithFormat:(NSString *)format, ... __attribute__((format(__NSString__, 1, 2)));

// - (nullable instancetype)initWithCString:(const char *)nullTerminatedCString encoding:(NSStringEncoding)encoding;
// + (nullable instancetype)stringWithCString:(const char *)cString encoding:(NSStringEncoding)enc;



// - (nullable instancetype)initWithContentsOfURL:(NSURL *)url encoding:(NSStringEncoding)enc error:(NSError **)error;
// - (nullable instancetype)initWithContentsOfFile:(NSString *)path encoding:(NSStringEncoding)enc error:(NSError **)error;
// + (nullable instancetype)stringWithContentsOfURL:(NSURL *)url encoding:(NSStringEncoding)enc error:(NSError **)error;
// + (nullable instancetype)stringWithContentsOfFile:(NSString *)path encoding:(NSStringEncoding)enc error:(NSError **)error;



// - (nullable instancetype)initWithContentsOfURL:(NSURL *)url usedEncoding:(nullable NSStringEncoding *)enc error:(NSError **)error;
// - (nullable instancetype)initWithContentsOfFile:(NSString *)path usedEncoding:(nullable NSStringEncoding *)enc error:(NSError **)error;
// + (nullable instancetype)stringWithContentsOfURL:(NSURL *)url usedEncoding:(nullable NSStringEncoding *)enc error:(NSError **)error;
// + (nullable instancetype)stringWithContentsOfFile:(NSString *)path usedEncoding:(nullable NSStringEncoding *)enc error:(NSError **)error;

/* @end */


typedef NSString * NSStringEncodingDetectionOptionsKey __attribute__((swift_wrapper(enum)));

// @interface NSString (NSStringEncodingDetection)
#if 0
+ (NSStringEncoding)stringEncodingForData:(NSData *)data
                          encodingOptions:(nullable NSDictionary<NSStringEncodingDetectionOptionsKey, id> *)opts
                          convertedString:(NSString * _Nullable * _Nullable)string
                      usedLossyConversion:(nullable BOOL *)usedLossyConversion __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
#endif




extern "C" NSStringEncodingDetectionOptionsKey const NSStringEncodingDetectionSuggestedEncodingsKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringEncodingDetectionOptionsKey const NSStringEncodingDetectionDisallowedEncodingsKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringEncodingDetectionOptionsKey const NSStringEncodingDetectionUseOnlySuggestedEncodingsKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringEncodingDetectionOptionsKey const NSStringEncodingDetectionAllowLossyKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringEncodingDetectionOptionsKey const NSStringEncodingDetectionFromWindowsKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringEncodingDetectionOptionsKey const NSStringEncodingDetectionLossySubstitutionKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStringEncodingDetectionOptionsKey const NSStringEncodingDetectionLikelyLanguageKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */



// @interface NSString (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting>
/* @end */




#ifndef _REWRITER_typedef_NSMutableString
#define _REWRITER_typedef_NSMutableString
typedef struct objc_object NSMutableString;
typedef struct {} _objc_exc_NSMutableString;
#endif

struct NSMutableString_IMPL {
	struct NSString_IMPL NSString_IVARS;
};






// - (void)replaceCharactersInRange:(NSRange)range withString:(NSString *)aString;

/* @end */


// @interface NSMutableString (NSMutableStringExtensionMethods)



// - (void)insertString:(NSString *)aString atIndex:(NSUInteger)loc;
// - (void)deleteCharactersInRange:(NSRange)range;
// - (void)appendString:(NSString *)aString;
// - (void)appendFormat:(NSString *)format, ... __attribute__((format(__NSString__, 1, 2)));
// - (void)setString:(NSString *)aString;



// - (NSUInteger)replaceOccurrencesOfString:(NSString *)target withString:(NSString *)replacement options:(NSStringCompareOptions)options range:(NSRange)searchRange;



// - (BOOL)applyTransform:(NSStringTransform)transform reverse:(BOOL)reverse range:(NSRange)range updatedRange:(nullable NSRangePointer)resultingRange __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (NSMutableString *)initWithCapacity:(NSUInteger)capacity;
// + (NSMutableString *)stringWithCapacity:(NSUInteger)capacity;

/* @end */




extern "C" NSExceptionName const NSCharacterConversionException;
extern "C" NSExceptionName const NSParseErrorException;




// @interface NSString (NSExtendedStringPropertyListParsing)



// - (id)propertyList;
// - (nullable NSDictionary *)propertyListFromStringsFileFormat;

/* @end */


// @interface NSString (NSStringDeprecated)



// - (nullable const char *)cString __attribute__((objc_returns_inner_pointer)) __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -cStringUsingEncoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -cStringUsingEncoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -cStringUsingEncoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -cStringUsingEncoding: instead")));
// - (nullable const char *)lossyCString __attribute__((objc_returns_inner_pointer)) __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -cStringUsingEncoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -cStringUsingEncoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -cStringUsingEncoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -cStringUsingEncoding: instead")));
// - (NSUInteger)cStringLength __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -lengthOfBytesUsingEncoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -lengthOfBytesUsingEncoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -lengthOfBytesUsingEncoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -lengthOfBytesUsingEncoding: instead")));
// - (void)getCString:(char *)bytes __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -getCString:maxLength:encoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -getCString:maxLength:encoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -getCString:maxLength:encoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -getCString:maxLength:encoding: instead")));
// - (void)getCString:(char *)bytes maxLength:(NSUInteger)maxLength __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -getCString:maxLength:encoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -getCString:maxLength:encoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -getCString:maxLength:encoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -getCString:maxLength:encoding: instead")));
// - (void)getCString:(char *)bytes maxLength:(NSUInteger)maxLength range:(NSRange)aRange remainingRange:(nullable NSRangePointer)leftoverRange __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -getCString:maxLength:encoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -getCString:maxLength:encoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -getCString:maxLength:encoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -getCString:maxLength:encoding: instead")));

// - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -writeToFile:atomically:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -writeToFile:atomically:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -writeToFile:atomically:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -writeToFile:atomically:error: instead")));
// - (BOOL)writeToURL:(NSURL *)url atomically:(BOOL)atomically __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -writeToURL:atomically:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -writeToURL:atomically:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -writeToURL:atomically:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -writeToURL:atomically:error: instead")));

// - (nullable id)initWithContentsOfFile:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -initWithContentsOfFile:encoding:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -initWithContentsOfFile:encoding:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -initWithContentsOfFile:encoding:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -initWithContentsOfFile:encoding:error: instead")));
// - (nullable id)initWithContentsOfURL:(NSURL *)url __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -initWithContentsOfURL:encoding:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -initWithContentsOfURL:encoding:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -initWithContentsOfURL:encoding:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -initWithContentsOfURL:encoding:error: instead")));
// + (nullable id)stringWithContentsOfFile:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use +stringWithContentsOfFile:encoding:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use +stringWithContentsOfFile:encoding:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use +stringWithContentsOfFile:encoding:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use +stringWithContentsOfFile:encoding:error: instead")));
// + (nullable id)stringWithContentsOfURL:(NSURL *)url __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use +stringWithContentsOfURL:encoding:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use +stringWithContentsOfURL:encoding:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use +stringWithContentsOfURL:encoding:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use +stringWithContentsOfURL:encoding:error: instead")));

// - (nullable id)initWithCStringNoCopy:(char *)bytes length:(NSUInteger)length freeWhenDone:(BOOL)freeBuffer __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -initWithCString:encoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -initWithCString:encoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -initWithCString:encoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -initWithCString:encoding: instead")));
// - (nullable id)initWithCString:(const char *)bytes length:(NSUInteger)length __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -initWithCString:encoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -initWithCString:encoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -initWithCString:encoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -initWithCString:encoding: instead")));
// - (nullable id)initWithCString:(const char *)bytes __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use -initWithCString:encoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -initWithCString:encoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -initWithCString:encoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -initWithCString:encoding: instead")));
// + (nullable id)stringWithCString:(const char *)bytes length:(NSUInteger)length __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use +stringWithCString:encoding:"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use +stringWithCString:encoding:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use +stringWithCString:encoding:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use +stringWithCString:encoding:")));
// + (nullable id)stringWithCString:(const char *)bytes __attribute__((availability(macos,introduced=10.0,deprecated=10.4,message="Use +stringWithCString:encoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use +stringWithCString:encoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use +stringWithCString:encoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use +stringWithCString:encoding: instead")));



// - (void)getCharacters:(unichar *)buffer;

/* @end */


enum {
    NSProprietaryStringEncoding = 65536
};
__attribute__((availability(swift, unavailable, message="Use String or NSString instead.")))

#ifndef _REWRITER_typedef_NSSimpleCString
#define _REWRITER_typedef_NSSimpleCString
typedef struct objc_object NSSimpleCString;
typedef struct {} _objc_exc_NSSimpleCString;
#endif

struct NSSimpleCString_IMPL {
	struct NSString_IMPL NSString_IVARS;
	char *bytes;
	int numBytes;
	int _unused;
};

/* @end */


__attribute__((availability(swift, unavailable, message="Use String or NSString instead.")))

#ifndef _REWRITER_typedef_NSConstantString
#define _REWRITER_typedef_NSConstantString
typedef struct objc_object NSConstantString;
typedef struct {} _objc_exc_NSConstantString;
#endif

struct NSConstantString_IMPL {
	struct NSSimpleCString_IMPL NSSimpleCString_IVARS;
};

/* @end */

#pragma clang assume_nonnull end








// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif




#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

struct NSDictionary_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly) NSUInteger count;
// - (nullable ObjectType)objectForKey:(KeyType)aKey;
// - (NSEnumerator<KeyType> *)keyEnumerator;
// - (instancetype)init __attribute__((objc_designated_initializer));
// - (instancetype)initWithObjects:(const ObjectType _Nonnull [_Nullable])objects forKeys:(const KeyType <NSCopying> _Nonnull [_Nullable])keys count:(NSUInteger)cnt __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSDictionary<KeyType, ObjectType> (NSExtendedDictionary)

// @property (readonly, copy) NSArray<KeyType> *allKeys;
// - (NSArray<KeyType> *)allKeysForObject:(ObjectType)anObject;
// @property (readonly, copy) NSArray<ObjectType> *allValues;
// @property (readonly, copy) NSString *description;
// @property (readonly, copy) NSString *descriptionInStringsFileFormat;
// - (NSString *)descriptionWithLocale:(nullable id)locale;
// - (NSString *)descriptionWithLocale:(nullable id)locale indent:(NSUInteger)level;
// - (BOOL)isEqualToDictionary:(NSDictionary<KeyType, ObjectType> *)otherDictionary;
// - (NSEnumerator<ObjectType> *)objectEnumerator;
// - (NSArray<ObjectType> *)objectsForKeys:(NSArray<KeyType> *)keys notFoundMarker:(ObjectType)marker;


// - (BOOL)writeToURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


// - (NSArray<KeyType> *)keysSortedByValueUsingSelector:(SEL)comparator;

// - (void)getObjects:(ObjectType _Nonnull __attribute__((objc_ownership(none))) [_Nullable])objects andKeys:(KeyType _Nonnull __attribute__((objc_ownership(none))) [_Nullable])keys count:(NSUInteger)count __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(swift, unavailable, message="Use 'allKeys' and/or 'allValues' instead")));

// - (nullable ObjectType)objectForKeyedSubscript:(KeyType)key __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)enumerateKeysAndObjectsUsingBlock:(void (__attribute__((noescape)) ^)(KeyType key, ObjectType obj, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateKeysAndObjectsWithOptions:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(KeyType key, ObjectType obj, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSArray<KeyType> *)keysSortedByValueUsingComparator:(NSComparator __attribute__((noescape)))cmptr __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSArray<KeyType> *)keysSortedByValueWithOptions:(NSSortOptions)opts usingComparator:(NSComparator __attribute__((noescape)))cmptr __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSSet<KeyType> *)keysOfEntriesPassingTest:(BOOL (__attribute__((noescape)) ^)(KeyType key, ObjectType obj, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSSet<KeyType> *)keysOfEntriesWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(KeyType key, ObjectType obj, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSDictionary<KeyType, ObjectType> (NSDeprecated)

// - (void)getObjects:(ObjectType _Nonnull __attribute__((objc_ownership(none))) [_Nullable])objects andKeys:(KeyType _Nonnull __attribute__((objc_ownership(none))) [_Nullable])keys __attribute__((availability(swift, unavailable, message="Use 'allKeys' and/or 'allValues' instead"))) __attribute__((availability(macos,introduced=10.0,deprecated=10.13,message="Use -getObjects:andKeys:count: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=11.0,message="Use -getObjects:andKeys:count: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=4.0,message="Use -getObjects:andKeys:count: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=11.0,message="Use -getObjects:andKeys:count: instead")));


// + (nullable NSDictionary<KeyType, ObjectType> *)dictionaryWithContentsOfFile:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="dictionaryWithContentsOfURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="dictionaryWithContentsOfURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="dictionaryWithContentsOfURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="dictionaryWithContentsOfURL:error:")));
// + (nullable NSDictionary<KeyType, ObjectType> *)dictionaryWithContentsOfURL:(NSURL *)url __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="dictionaryWithContentsOfURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="dictionaryWithContentsOfURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="dictionaryWithContentsOfURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="dictionaryWithContentsOfURL:error:")));
// - (nullable NSDictionary<KeyType, ObjectType> *)initWithContentsOfFile:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="initWithContentsOfURL:error:")));
// - (nullable NSDictionary<KeyType, ObjectType> *)initWithContentsOfURL:(NSURL *)url __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="initWithContentsOfURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="initWithContentsOfURL:error:")));

// - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="writeToURL:error:")));
// - (BOOL)writeToURL:(NSURL *)url atomically:(BOOL)atomically __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="writeToURL:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="writeToURL:error:")));
/* @end */


// @interface NSDictionary<KeyType, ObjectType> (NSDictionaryCreation)

// + (instancetype)dictionary;
// + (instancetype)dictionaryWithObject:(ObjectType)object forKey:(KeyType <NSCopying>)key;
// + (instancetype)dictionaryWithObjects:(const ObjectType _Nonnull [_Nullable])objects forKeys:(const KeyType <NSCopying> _Nonnull [_Nullable])keys count:(NSUInteger)cnt;

// + (instancetype)dictionaryWithObjectsAndKeys:(id)firstObject, ... __attribute__((sentinel(0,1))) __attribute__((availability(swift, unavailable, message="Use dictionary literals instead")));

// + (instancetype)dictionaryWithDictionary:(NSDictionary<KeyType, ObjectType> *)dict;
// + (instancetype)dictionaryWithObjects:(NSArray<ObjectType> *)objects forKeys:(NSArray<KeyType <NSCopying>> *)keys;

// - (instancetype)initWithObjectsAndKeys:(id)firstObject, ... __attribute__((sentinel(0,1)));
// - (instancetype)initWithDictionary:(NSDictionary<KeyType, ObjectType> *)otherDictionary;
// - (instancetype)initWithDictionary:(NSDictionary<KeyType, ObjectType> *)otherDictionary copyItems:(BOOL)flag;
// - (instancetype)initWithObjects:(NSArray<ObjectType> *)objects forKeys:(NSArray<KeyType <NSCopying>> *)keys;


// - (nullable NSDictionary<NSString *, ObjectType> *)initWithContentsOfURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


// + (nullable NSDictionary<NSString *, ObjectType> *)dictionaryWithContentsOfURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(swift, unavailable, message="Use initializer instead")));

/* @end */





#ifndef _REWRITER_typedef_NSMutableDictionary
#define _REWRITER_typedef_NSMutableDictionary
typedef struct objc_object NSMutableDictionary;
typedef struct {} _objc_exc_NSMutableDictionary;
#endif

struct NSMutableDictionary_IMPL {
	struct NSDictionary_IMPL NSDictionary_IVARS;
};


// - (void)removeObjectForKey:(KeyType)aKey;
// - (void)setObject:(ObjectType)anObject forKey:(KeyType <NSCopying>)aKey;
// - (instancetype)init __attribute__((objc_designated_initializer));
// - (instancetype)initWithCapacity:(NSUInteger)numItems __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSMutableDictionary<KeyType, ObjectType> (NSExtendedMutableDictionary)

// - (void)addEntriesFromDictionary:(NSDictionary<KeyType, ObjectType> *)otherDictionary;
// - (void)removeAllObjects;
// - (void)removeObjectsForKeys:(NSArray<KeyType> *)keyArray;
// - (void)setDictionary:(NSDictionary<KeyType, ObjectType> *)otherDictionary;
// - (void)setObject:(nullable ObjectType)obj forKeyedSubscript:(KeyType <NSCopying>)key __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSMutableDictionary<KeyType, ObjectType> (NSMutableDictionaryCreation)

// + (instancetype)dictionaryWithCapacity:(NSUInteger)numItems;

// + (nullable NSMutableDictionary<KeyType, ObjectType> *)dictionaryWithContentsOfFile:(NSString *)path;
// + (nullable NSMutableDictionary<KeyType, ObjectType> *)dictionaryWithContentsOfURL:(NSURL *)url;
// - (nullable NSMutableDictionary<KeyType, ObjectType> *)initWithContentsOfFile:(NSString *)path;
// - (nullable NSMutableDictionary<KeyType, ObjectType> *)initWithContentsOfURL:(NSURL *)url;

/* @end */


// @interface NSDictionary<KeyType, ObjectType> (NSSharedKeySetDictionary)
// + (id)sharedKeySetForKeys:(NSArray<KeyType <NSCopying>> *)keys __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSMutableDictionary<KeyType, ObjectType> (NSSharedKeySetDictionary)







// + (NSMutableDictionary<KeyType, ObjectType> *)dictionaryWithSharedKeySet:(id)keyset __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSDictionary<K, V> (NSGenericFastEnumeraiton) <NSFastEnumeration>
// - (NSUInteger)countByEnumeratingWithState:(NSFastEnumerationState *)state objects:(K __attribute__((objc_ownership(none))) _Nullable [_Nonnull])buffer count:(NSUInteger)len;
/* @end */

#pragma clang assume_nonnull end







// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif




#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif

struct NSSet_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly) NSUInteger count;
// - (nullable ObjectType)member:(ObjectType)object;
// - (NSEnumerator<ObjectType> *)objectEnumerator;
// - (instancetype)init __attribute__((objc_designated_initializer));
// - (instancetype)initWithObjects:(const ObjectType _Nonnull [_Nullable])objects count:(NSUInteger)cnt __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSSet<ObjectType> (NSExtendedSet)

// @property (readonly, copy) NSArray<ObjectType> *allObjects;
// - (nullable ObjectType)anyObject;
// - (BOOL)containsObject:(ObjectType)anObject;
// @property (readonly, copy) NSString *description;
// - (NSString *)descriptionWithLocale:(nullable id)locale;
// - (BOOL)intersectsSet:(NSSet<ObjectType> *)otherSet;
// - (BOOL)isEqualToSet:(NSSet<ObjectType> *)otherSet;
// - (BOOL)isSubsetOfSet:(NSSet<ObjectType> *)otherSet;

// - (void)makeObjectsPerformSelector:(SEL)aSelector __attribute__((availability(swift, unavailable, message="Use enumerateObjectsUsingBlock: or a for loop instead")));
// - (void)makeObjectsPerformSelector:(SEL)aSelector withObject:(nullable id)argument __attribute__((availability(swift, unavailable, message="Use enumerateObjectsUsingBlock: or a for loop instead")));

// - (NSSet<ObjectType> *)setByAddingObject:(ObjectType)anObject __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSSet<ObjectType> *)setByAddingObjectsFromSet:(NSSet<ObjectType> *)other __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSSet<ObjectType> *)setByAddingObjectsFromArray:(NSArray<ObjectType> *)other __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)enumerateObjectsUsingBlock:(void (__attribute__((noescape)) ^)(ObjectType obj, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateObjectsWithOptions:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(ObjectType obj, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSSet<ObjectType> *)objectsPassingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSSet<ObjectType> *)objectsWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, BOOL *stop))predicate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSSet<ObjectType> (NSSetCreation)

// + (instancetype)set;
// + (instancetype)setWithObject:(ObjectType)object;
// + (instancetype)setWithObjects:(const ObjectType _Nonnull [_Nonnull])objects count:(NSUInteger)cnt;
// + (instancetype)setWithObjects:(ObjectType)firstObj, ... __attribute__((sentinel(0,1)));
// + (instancetype)setWithSet:(NSSet<ObjectType> *)set;
// + (instancetype)setWithArray:(NSArray<ObjectType> *)array;

// - (instancetype)initWithObjects:(ObjectType)firstObj, ... __attribute__((sentinel(0,1)));
// - (instancetype)initWithSet:(NSSet<ObjectType> *)set;
// - (instancetype)initWithSet:(NSSet<ObjectType> *)set copyItems:(BOOL)flag;
// - (instancetype)initWithArray:(NSArray<ObjectType> *)array;

/* @end */





#ifndef _REWRITER_typedef_NSMutableSet
#define _REWRITER_typedef_NSMutableSet
typedef struct objc_object NSMutableSet;
typedef struct {} _objc_exc_NSMutableSet;
#endif

struct NSMutableSet_IMPL {
	struct NSSet_IMPL NSSet_IVARS;
};


// - (void)addObject:(ObjectType)object;
// - (void)removeObject:(ObjectType)object;
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));
// - (instancetype)init __attribute__((objc_designated_initializer));
// - (instancetype)initWithCapacity:(NSUInteger)numItems __attribute__((objc_designated_initializer));

/* @end */


// @interface NSMutableSet<ObjectType> (NSExtendedMutableSet)

// - (void)addObjectsFromArray:(NSArray<ObjectType> *)array;
// - (void)intersectSet:(NSSet<ObjectType> *)otherSet;
// - (void)minusSet:(NSSet<ObjectType> *)otherSet;
// - (void)removeAllObjects;
// - (void)unionSet:(NSSet<ObjectType> *)otherSet;

// - (void)setSet:(NSSet<ObjectType> *)otherSet;

/* @end */


// @interface NSMutableSet<ObjectType> (NSMutableSetCreation)

// + (instancetype)setWithCapacity:(NSUInteger)numItems;

/* @end */





#ifndef _REWRITER_typedef_NSCountedSet
#define _REWRITER_typedef_NSCountedSet
typedef struct objc_object NSCountedSet;
typedef struct {} _objc_exc_NSCountedSet;
#endif

struct NSCountedSet_IMPL {
	struct NSMutableSet_IMPL NSMutableSet_IVARS;
	id _table;
	void *_reserved;
};


// - (instancetype)initWithCapacity:(NSUInteger)numItems __attribute__((objc_designated_initializer));

// - (instancetype)initWithArray:(NSArray<ObjectType> *)array;
// - (instancetype)initWithSet:(NSSet<ObjectType> *)set;

// - (NSUInteger)countForObject:(ObjectType)object;

// - (NSEnumerator<ObjectType> *)objectEnumerator;
// - (void)addObject:(ObjectType)object;
// - (void)removeObject:(ObjectType)object;

/* @end */

#pragma clang assume_nonnull end
// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSMutableDictionary
#define _REWRITER_typedef_NSMutableDictionary
typedef struct objc_object NSMutableDictionary;
typedef struct {} _objc_exc_NSMutableDictionary;
#endif

#ifndef _REWRITER_typedef_NSMutableSet
#define _REWRITER_typedef_NSMutableSet
typedef struct objc_object NSMutableSet;
typedef struct {} _objc_exc_NSMutableSet;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

#ifndef _REWRITER_typedef_NSUUID
#define _REWRITER_typedef_NSUUID
typedef struct objc_object NSUUID;
typedef struct {} _objc_exc_NSUUID;
#endif

#ifndef _REWRITER_typedef_NSXPCConnection
#define _REWRITER_typedef_NSXPCConnection
typedef struct objc_object NSXPCConnection;
typedef struct {} _objc_exc_NSXPCConnection;
#endif

#ifndef _REWRITER_typedef_NSLock
#define _REWRITER_typedef_NSLock
typedef struct objc_object NSLock;
typedef struct {} _objc_exc_NSLock;
#endif


typedef NSString * NSProgressKind __attribute__((swift_wrapper(struct)));
typedef NSString * NSProgressUserInfoKey __attribute__((swift_wrapper(struct)));
typedef NSString * NSProgressFileOperationKind __attribute__((swift_wrapper(struct)));

#pragma clang assume_nonnull begin
__attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSProgress
#define _REWRITER_typedef_NSProgress
typedef struct objc_object NSProgress;
typedef struct {} _objc_exc_NSProgress;
#endif

struct NSProgress_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};




// + (nullable NSProgress *)currentProgress;





// + (NSProgress *)progressWithTotalUnitCount:(int64_t)unitCount;



// + (NSProgress *)discreteProgressWithTotalUnitCount:(int64_t)unitCount __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (NSProgress *)progressWithTotalUnitCount:(int64_t)unitCount parent:(NSProgress *)parent pendingUnitCount:(int64_t)portionOfParentTotalUnitCount __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (instancetype)initWithParent:(nullable NSProgress *)parentProgressOrNil userInfo:(nullable NSDictionary<NSProgressUserInfoKey, id> *)userInfoOrNil __attribute__((objc_designated_initializer));





// - (void)becomeCurrentWithPendingUnitCount:(int64_t)unitCount;



// - (void)performAsCurrentWithPendingUnitCount:(int64_t)unitCount usingBlock:(void (__attribute__((noescape)) ^)(void))work __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((swift_private));



// - (void)resignCurrent;



// - (void)addChild:(NSProgress *)child withPendingUnitCount:(int64_t)inUnitCount __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// @property int64_t totalUnitCount;
// @property int64_t completedUnitCount;
// @property (null_resettable, copy) NSString *localizedDescription;
// @property (null_resettable, copy) NSString *localizedAdditionalDescription;



// @property (getter=isCancellable) BOOL cancellable;
// @property (getter=isPausable) BOOL pausable;



// @property (readonly, getter=isCancelled) BOOL cancelled;
// @property (readonly, getter=isPaused) BOOL paused;



// @property (nullable, copy) void (^cancellationHandler)(void);



// @property (nullable, copy) void (^pausingHandler)(void);



// @property (nullable, copy) void (^resumingHandler)(void) __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)setUserInfoObject:(nullable id)objectOrNil forKey:(NSProgressUserInfoKey)key;





// @property (readonly, getter=isIndeterminate) BOOL indeterminate;



// @property (readonly) double fractionCompleted;



// @property (readonly, getter=isFinished) BOOL finished;




// - (void)cancel;



// - (void)pause;



// - (void)resume __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (readonly, copy) NSDictionary<NSProgressUserInfoKey, id> *userInfo;



// @property (nullable, copy) NSProgressKind kind;





// @property (nullable, copy) NSNumber *estimatedTimeRemaining __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((swift_private));





// @property (nullable, copy) NSNumber *throughput __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((swift_private));






// @property (nullable, copy) NSProgressFileOperationKind fileOperationKind __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));






// @property (nullable, copy) NSURL *fileURL __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));






// @property (nullable, copy) NSNumber *fileTotalCount __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((swift_private));






// @property (nullable, copy) NSNumber *fileCompletedCount __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((swift_private));
// - (void)publish __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



// - (void)unpublish __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



typedef void (*NSProgressUnpublishingHandler)(void);
typedef _Nullable NSProgressUnpublishingHandler (*NSProgressPublishingHandler)(NSProgress *progress);



// + (id)addSubscriberForFileURL:(NSURL *)url withPublishingHandler:(NSProgressPublishingHandler)publishingHandler __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



// + (void)removeSubscriber:(id)subscriber __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));





// @property (readonly, getter=isOld) BOOL old __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

/* @end */




// @protocol NSProgressReporting <NSObject>
// @property (readonly) NSProgress *progress;
/* @end */






extern "C" NSProgressUserInfoKey const NSProgressEstimatedTimeRemainingKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern "C" NSProgressUserInfoKey const NSProgressThroughputKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern "C" NSProgressKind const NSProgressKindFile __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern "C" NSProgressUserInfoKey const NSProgressFileOperationKindKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern "C" NSProgressFileOperationKind const NSProgressFileOperationKindDownloading __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSProgressFileOperationKind const NSProgressFileOperationKindDecompressingAfterDownloading __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSProgressFileOperationKind const NSProgressFileOperationKindReceiving __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSProgressFileOperationKind const NSProgressFileOperationKindCopying __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern "C" NSProgressUserInfoKey const NSProgressFileURLKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern "C" NSProgressUserInfoKey const NSProgressFileTotalCountKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSProgressUserInfoKey const NSProgressFileCompletedCountKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern "C" NSProgressUserInfoKey const NSProgressFileAnimationImageKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSProgressUserInfoKey const NSProgressFileAnimationImageOriginalRectKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



extern "C" NSProgressUserInfoKey const NSProgressFileIconKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
#pragma clang assume_nonnull end






typedef NSString *NSNotificationName __attribute__((swift_wrapper(struct)));

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSOperationQueue
#define _REWRITER_typedef_NSOperationQueue
typedef struct objc_object NSOperationQueue;
typedef struct {} _objc_exc_NSOperationQueue;
#endif


#pragma clang assume_nonnull begin




#ifndef _REWRITER_typedef_NSNotification
#define _REWRITER_typedef_NSNotification
typedef struct objc_object NSNotification;
typedef struct {} _objc_exc_NSNotification;
#endif

struct NSNotification_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly, copy) NSNotificationName name;
// @property (nullable, readonly, retain) id object;
// @property (nullable, readonly, copy) NSDictionary *userInfo;

// - (instancetype)initWithName:(NSNotificationName)name object:(nullable id)object userInfo:(nullable NSDictionary *)userInfo __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSNotification (NSNotificationCreation)

// + (instancetype)notificationWithName:(NSNotificationName)aName object:(nullable id)anObject;
// + (instancetype)notificationWithName:(NSNotificationName)aName object:(nullable id)anObject userInfo:(nullable NSDictionary *)aUserInfo;

// - (instancetype)init ;

/* @end */





#ifndef _REWRITER_typedef_NSNotificationCenter
#define _REWRITER_typedef_NSNotificationCenter
typedef struct objc_object NSNotificationCenter;
typedef struct {} _objc_exc_NSNotificationCenter;
#endif

struct NSNotificationCenter_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_impl;
	void *_callback;
	void *_pad[11];
};


@property (class, readonly, strong) NSNotificationCenter *defaultCenter;

// - (void)addObserver:(id)observer selector:(SEL)aSelector name:(nullable NSNotificationName)aName object:(nullable id)anObject;

// - (void)postNotification:(NSNotification *)notification;
// - (void)postNotificationName:(NSNotificationName)aName object:(nullable id)anObject;
// - (void)postNotificationName:(NSNotificationName)aName object:(nullable id)anObject userInfo:(nullable NSDictionary *)aUserInfo;

// - (void)removeObserver:(id)observer;
// - (void)removeObserver:(id)observer name:(nullable NSNotificationName)aName object:(nullable id)anObject;

// - (id <NSObject>)addObserverForName:(nullable NSNotificationName)name object:(nullable id)obj queue:(nullable NSOperationQueue *)queue usingBlock:(void (^)(NSNotification *note))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



/* @end */

#pragma clang assume_nonnull end

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSUUID
#define _REWRITER_typedef_NSUUID
typedef struct objc_object NSUUID;
typedef struct {} _objc_exc_NSUUID;
#endif

#ifndef _REWRITER_typedef_NSLock
#define _REWRITER_typedef_NSLock
typedef struct objc_object NSLock;
typedef struct {} _objc_exc_NSLock;
#endif

#ifndef _REWRITER_typedef_NSNumber
#define _REWRITER_typedef_NSNumber
typedef struct objc_object NSNumber;
typedef struct {} _objc_exc_NSNumber;
#endif


#pragma clang assume_nonnull begin




#ifndef _REWRITER_typedef_NSBundle
#define _REWRITER_typedef_NSBundle
typedef struct objc_object NSBundle;
typedef struct {} _objc_exc_NSBundle;
#endif

struct NSBundle_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSUInteger _flags;
	id _cfBundle;
	NSUInteger _reserved2;
	Class _principalClass;
	id _initialPath;
	id _resolvedPath;
	NSString *_firstClassName;
};



@property (class, readonly, strong) NSBundle *mainBundle;

// + (nullable instancetype)bundleWithPath:(NSString *)path;
// - (nullable instancetype)initWithPath:(NSString *)path __attribute__((objc_designated_initializer));

// + (nullable instancetype)bundleWithURL:(NSURL *)url __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable instancetype)initWithURL:(NSURL *)url __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (NSBundle *)bundleForClass:(Class)aClass;
// + (nullable NSBundle *)bundleWithIdentifier:(NSString *)identifier;

@property (class, readonly, copy) NSArray<NSBundle *> *allBundles;
@property (class, readonly, copy) NSArray<NSBundle *> *allFrameworks;


// - (BOOL)load;
// @property (readonly, getter=isLoaded) BOOL loaded;
// - (BOOL)unload;

// - (BOOL)preflightAndReturnError:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)loadAndReturnError:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// @property (readonly, copy) NSURL *bundleURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSURL *resourceURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSURL *executableURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSURL *)URLForAuxiliaryExecutable:(NSString *)executableName __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (nullable, readonly, copy) NSURL *privateFrameworksURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSURL *sharedFrameworksURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSURL *sharedSupportURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSURL *builtInPlugInsURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (nullable, readonly, copy) NSURL *appStoreReceiptURL __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSString *bundlePath;
// @property (nullable, readonly, copy) NSString *resourcePath;
// @property (nullable, readonly, copy) NSString *executablePath;
// - (nullable NSString *)pathForAuxiliaryExecutable:(NSString *)executableName;

// @property (nullable, readonly, copy) NSString *privateFrameworksPath;
// @property (nullable, readonly, copy) NSString *sharedFrameworksPath;
// @property (nullable, readonly, copy) NSString *sharedSupportPath;
// @property (nullable, readonly, copy) NSString *builtInPlugInsPath;



// + (nullable NSURL *)URLForResource:(nullable NSString *)name withExtension:(nullable NSString *)ext subdirectory:(nullable NSString *)subpath inBundleWithURL:(NSURL *)bundleURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (nullable NSArray<NSURL *> *)URLsForResourcesWithExtension:(nullable NSString *)ext subdirectory:(nullable NSString *)subpath inBundleWithURL:(NSURL *)bundleURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (nullable NSURL *)URLForResource:(nullable NSString *)name withExtension:(nullable NSString *)ext __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSURL *)URLForResource:(nullable NSString *)name withExtension:(nullable NSString *)ext subdirectory:(nullable NSString *)subpath __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSURL *)URLForResource:(nullable NSString *)name withExtension:(nullable NSString *)ext subdirectory:(nullable NSString *)subpath localization:(nullable NSString *)localizationName __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (nullable NSArray<NSURL *> *)URLsForResourcesWithExtension:(nullable NSString *)ext subdirectory:(nullable NSString *)subpath __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSArray<NSURL *> *)URLsForResourcesWithExtension:(nullable NSString *)ext subdirectory:(nullable NSString *)subpath localization:(nullable NSString *)localizationName __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (nullable NSString *)pathForResource:(nullable NSString *)name ofType:(nullable NSString *)ext inDirectory:(NSString *)bundlePath;
// + (NSArray<NSString *> *)pathsForResourcesOfType:(nullable NSString *)ext inDirectory:(NSString *)bundlePath;

// - (nullable NSString *)pathForResource:(nullable NSString *)name ofType:(nullable NSString *)ext;
// - (nullable NSString *)pathForResource:(nullable NSString *)name ofType:(nullable NSString *)ext inDirectory:(nullable NSString *)subpath;
// - (nullable NSString *)pathForResource:(nullable NSString *)name ofType:(nullable NSString *)ext inDirectory:(nullable NSString *)subpath forLocalization:(nullable NSString *)localizationName;

// - (NSArray<NSString *> *)pathsForResourcesOfType:(nullable NSString *)ext inDirectory:(nullable NSString *)subpath;
// - (NSArray<NSString *> *)pathsForResourcesOfType:(nullable NSString *)ext inDirectory:(nullable NSString *)subpath forLocalization:(nullable NSString *)localizationName;


// - (NSString *)localizedStringForKey:(NSString *)key value:(nullable NSString *)value table:(nullable NSString *)tableName __attribute__ ((format_arg(1)));


// @property (nullable, readonly, copy) NSString *bundleIdentifier;
// @property (nullable, readonly, copy) NSDictionary<NSString *, id> *infoDictionary;
// @property (nullable, readonly, copy) NSDictionary<NSString *, id> *localizedInfoDictionary;
// - (nullable id)objectForInfoDictionaryKey:(NSString *)key;
// - (nullable Class)classNamed:(NSString *)className;
// @property (nullable, readonly) Class principalClass;


// @property (readonly, copy) NSArray<NSString *> *preferredLocalizations;

// @property (readonly, copy) NSArray<NSString *> *localizations;
// @property (nullable, readonly, copy) NSString *developmentLocalization;

// + (NSArray<NSString *> *)preferredLocalizationsFromArray:(NSArray<NSString *> *)localizationsArray;
// + (NSArray<NSString *> *)preferredLocalizationsFromArray:(NSArray<NSString *> *)localizationsArray forPreferences:(nullable NSArray<NSString *> *)preferencesArray;


enum {
    NSBundleExecutableArchitectureI386 = 0x00000007,
    NSBundleExecutableArchitecturePPC = 0x00000012,
    NSBundleExecutableArchitectureX86_64 = 0x01000007,
    NSBundleExecutableArchitecturePPC64 = 0x01000012
};

// @property (nullable, readonly, copy) NSArray<NSNumber *> *executableArchitectures __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

// @interface NSString (NSBundleExtensionMethods)



// - (NSString *)variantFittingPresentationWidth:(NSInteger)width __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


extern "C" NSNotificationName const NSBundleDidLoadNotification;
extern "C" NSString * const NSLoadedClasses;
__attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)))

#ifndef _REWRITER_typedef_NSBundleResourceRequest
#define _REWRITER_typedef_NSBundleResourceRequest
typedef struct objc_object NSBundleResourceRequest;
typedef struct {} _objc_exc_NSBundleResourceRequest;
#endif

struct NSBundleResourceRequest_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// - (instancetype)init __attribute__((availability(macos,unavailable))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));




// - (instancetype)initWithTags:(NSSet<NSString *> *)tags;
// - (instancetype)initWithTags:(NSSet<NSString *> *)tags bundle:(NSBundle *)bundle __attribute__((objc_designated_initializer));






// @property double loadingPriority;




// @property (readonly, copy) NSSet<NSString *> *tags;




// @property (readonly, strong) NSBundle *bundle;
// - (void)beginAccessingResourcesWithCompletionHandler:(void (^)(NSError * _Nullable error))completionHandler;






// - (void)conditionallyBeginAccessingResourcesWithCompletionHandler:(void (^)(BOOL resourcesAvailable))completionHandler;




// - (void)endAccessingResources;




// @property (readonly, strong) NSProgress *progress;

/* @end */


// @interface NSBundle (NSBundleResourceRequestAdditions)







// - (void)setPreservationPriority:(double)priority forTags:(NSSet<NSString *> *)tags __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));
// - (double)preservationPriorityForTag:(NSString *)tag __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

/* @end */

extern "C" NSNotificationName const NSBundleResourceRequestLowDiskSpaceNotification __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));



extern "C" double const NSBundleResourceRequestLoadingPriorityUrgent __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));
#pragma clang assume_nonnull end







enum {
    NS_UnknownByteOrder = CFByteOrderUnknown,
    NS_LittleEndian = CFByteOrderLittleEndian,
    NS_BigEndian = CFByteOrderBigEndian
};

static __inline__ __attribute__((always_inline)) long NSHostByteOrder(void) {
    return CFByteOrderGetCurrent();
}

static __inline__ __attribute__((always_inline)) unsigned short NSSwapShort(unsigned short inv) {
    return CFSwapInt16(inv);
}

static __inline__ __attribute__((always_inline)) unsigned int NSSwapInt(unsigned int inv) {
    return CFSwapInt32(inv);
}

static __inline__ __attribute__((always_inline)) unsigned long NSSwapLong(unsigned long inv) {

    return CFSwapInt64(inv);



}

static __inline__ __attribute__((always_inline)) unsigned long long NSSwapLongLong(unsigned long long inv) {
    return CFSwapInt64(inv);
}

static __inline__ __attribute__((always_inline)) unsigned short NSSwapBigShortToHost(unsigned short x) {
    return CFSwapInt16BigToHost(x);
}

static __inline__ __attribute__((always_inline)) unsigned int NSSwapBigIntToHost(unsigned int x) {
    return CFSwapInt32BigToHost(x);
}

static __inline__ __attribute__((always_inline)) unsigned long NSSwapBigLongToHost(unsigned long x) {

    return CFSwapInt64BigToHost(x);



}

static __inline__ __attribute__((always_inline)) unsigned long long NSSwapBigLongLongToHost(unsigned long long x) {
    return CFSwapInt64BigToHost(x);
}

static __inline__ __attribute__((always_inline)) unsigned short NSSwapHostShortToBig(unsigned short x) {
    return CFSwapInt16HostToBig(x);
}

static __inline__ __attribute__((always_inline)) unsigned int NSSwapHostIntToBig(unsigned int x) {
    return CFSwapInt32HostToBig(x);
}

static __inline__ __attribute__((always_inline)) unsigned long NSSwapHostLongToBig(unsigned long x) {

    return CFSwapInt64HostToBig(x);



}

static __inline__ __attribute__((always_inline)) unsigned long long NSSwapHostLongLongToBig(unsigned long long x) {
    return CFSwapInt64HostToBig(x);
}

static __inline__ __attribute__((always_inline)) unsigned short NSSwapLittleShortToHost(unsigned short x) {
    return CFSwapInt16LittleToHost(x);
}

static __inline__ __attribute__((always_inline)) unsigned int NSSwapLittleIntToHost(unsigned int x) {
    return CFSwapInt32LittleToHost(x);
}

static __inline__ __attribute__((always_inline)) unsigned long NSSwapLittleLongToHost(unsigned long x) {

    return CFSwapInt64LittleToHost(x);



}

static __inline__ __attribute__((always_inline)) unsigned long long NSSwapLittleLongLongToHost(unsigned long long x) {
    return CFSwapInt64LittleToHost(x);
}

static __inline__ __attribute__((always_inline)) unsigned short NSSwapHostShortToLittle(unsigned short x) {
    return CFSwapInt16HostToLittle(x);
}

static __inline__ __attribute__((always_inline)) unsigned int NSSwapHostIntToLittle(unsigned int x) {
    return CFSwapInt32HostToLittle(x);
}

static __inline__ __attribute__((always_inline)) unsigned long NSSwapHostLongToLittle(unsigned long x) {

    return CFSwapInt64HostToLittle(x);



}

static __inline__ __attribute__((always_inline)) unsigned long long NSSwapHostLongLongToLittle(unsigned long long x) {
    return CFSwapInt64HostToLittle(x);
}


typedef struct {unsigned int v;} NSSwappedFloat;
typedef struct {unsigned long long v;} NSSwappedDouble;

static __inline__ __attribute__((always_inline)) NSSwappedFloat NSConvertHostFloatToSwapped(float x) {
    union fconv {
 float number;
 NSSwappedFloat sf;
    };
    return ((union fconv *)&x)->sf;
}

static __inline__ __attribute__((always_inline)) float NSConvertSwappedFloatToHost(NSSwappedFloat x) {
    union fconv {
 float number;
 NSSwappedFloat sf;
    };
    return ((union fconv *)&x)->number;
}

static __inline__ __attribute__((always_inline)) NSSwappedDouble NSConvertHostDoubleToSwapped(double x) {
    union dconv {
 double number;
 NSSwappedDouble sd;
    };
    return ((union dconv *)&x)->sd;
}

static __inline__ __attribute__((always_inline)) double NSConvertSwappedDoubleToHost(NSSwappedDouble x) {
    union dconv {
 double number;
 NSSwappedDouble sd;
    };
    return ((union dconv *)&x)->number;
}

static __inline__ __attribute__((always_inline)) NSSwappedFloat NSSwapFloat(NSSwappedFloat x) {
    x.v = NSSwapInt(x.v);
    return x;
}

static __inline__ __attribute__((always_inline)) NSSwappedDouble NSSwapDouble(NSSwappedDouble x) {
    x.v = NSSwapLongLong(x.v);
    return x;
}
static __inline__ __attribute__((always_inline)) double NSSwapBigDoubleToHost(NSSwappedDouble x) {
    return NSConvertSwappedDoubleToHost(NSSwapDouble(x));
}

static __inline__ __attribute__((always_inline)) float NSSwapBigFloatToHost(NSSwappedFloat x) {
    return NSConvertSwappedFloatToHost(NSSwapFloat(x));
}

static __inline__ __attribute__((always_inline)) NSSwappedDouble NSSwapHostDoubleToBig(double x) {
    return NSSwapDouble(NSConvertHostDoubleToSwapped(x));
}

static __inline__ __attribute__((always_inline)) NSSwappedFloat NSSwapHostFloatToBig(float x) {
    return NSSwapFloat(NSConvertHostFloatToSwapped(x));
}

static __inline__ __attribute__((always_inline)) double NSSwapLittleDoubleToHost(NSSwappedDouble x) {
    return NSConvertSwappedDoubleToHost(x);
}

static __inline__ __attribute__((always_inline)) float NSSwapLittleFloatToHost(NSSwappedFloat x) {
    return NSConvertSwappedFloatToHost(x);
}

static __inline__ __attribute__((always_inline)) NSSwappedDouble NSSwapHostDoubleToLittle(double x) {
    return NSConvertHostDoubleToSwapped(x);
}

static __inline__ __attribute__((always_inline)) NSSwappedFloat NSSwapHostFloatToLittle(float x) {
    return NSConvertHostFloatToSwapped(x);
}













// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin

extern "C" NSNotificationName const NSSystemClockDidChangeNotification __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef double NSTimeInterval;




#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

struct NSDate_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly) NSTimeInterval timeIntervalSinceReferenceDate;

// - (instancetype)init __attribute__((objc_designated_initializer));
// - (instancetype)initWithTimeIntervalSinceReferenceDate:(NSTimeInterval)ti __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSDate (NSExtendedDate)

// - (NSTimeInterval)timeIntervalSinceDate:(NSDate *)anotherDate;
// @property (readonly) NSTimeInterval timeIntervalSinceNow;
// @property (readonly) NSTimeInterval timeIntervalSince1970;

// - (id)addTimeInterval:(NSTimeInterval)seconds __attribute__((availability(macos,introduced=10.0,deprecated=10.6,message="Use dateByAddingTimeInterval instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=4.0,message="Use dateByAddingTimeInterval instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use dateByAddingTimeInterval instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use dateByAddingTimeInterval instead")));
// - (instancetype)dateByAddingTimeInterval:(NSTimeInterval)ti __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSDate *)earlierDate:(NSDate *)anotherDate;
// - (NSDate *)laterDate:(NSDate *)anotherDate;
// - (NSComparisonResult)compare:(NSDate *)other;
// - (BOOL)isEqualToDate:(NSDate *)otherDate;

// @property (readonly, copy) NSString *description;
// - (NSString *)descriptionWithLocale:(nullable id)locale;

@property (class, readonly) NSTimeInterval timeIntervalSinceReferenceDate;

/* @end */


// @interface NSDate (NSDateCreation)

// + (instancetype)date;
// + (instancetype)dateWithTimeIntervalSinceNow:(NSTimeInterval)secs;
// + (instancetype)dateWithTimeIntervalSinceReferenceDate:(NSTimeInterval)ti;
// + (instancetype)dateWithTimeIntervalSince1970:(NSTimeInterval)secs;
// + (instancetype)dateWithTimeInterval:(NSTimeInterval)secsToBeAdded sinceDate:(NSDate *)date;

@property (class, readonly, copy) NSDate *distantFuture;
@property (class, readonly, copy) NSDate *distantPast;

@property (class, readonly, copy) NSDate *now __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

// - (instancetype)initWithTimeIntervalSinceNow:(NSTimeInterval)secs;
// - (instancetype)initWithTimeIntervalSince1970:(NSTimeInterval)secs;
// - (instancetype)initWithTimeInterval:(NSTimeInterval)secsToBeAdded sinceDate:(NSDate *)date;

/* @end */

#pragma clang assume_nonnull end



// @class NSDateComponents;
#ifndef _REWRITER_typedef_NSDateComponents
#define _REWRITER_typedef_NSDateComponents
typedef struct objc_object NSDateComponents;
typedef struct {} _objc_exc_NSDateComponents;
#endif

#ifndef _REWRITER_typedef_NSLocale
#define _REWRITER_typedef_NSLocale
typedef struct objc_object NSLocale;
typedef struct {} _objc_exc_NSLocale;
#endif

#ifndef _REWRITER_typedef_NSTimeZone
#define _REWRITER_typedef_NSTimeZone
typedef struct objc_object NSTimeZone;
typedef struct {} _objc_exc_NSTimeZone;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif


#pragma clang assume_nonnull begin







typedef NSString * NSCalendarIdentifier __attribute__((swift_wrapper(struct)));

extern "C" NSCalendarIdentifier const NSCalendarIdentifierGregorian __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierBuddhist __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierChinese __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierCoptic __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierEthiopicAmeteMihret __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierEthiopicAmeteAlem __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierHebrew __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierISO8601 __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierIndian __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierIslamic __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierIslamicCivil __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierJapanese __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierPersian __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSCalendarIdentifier const NSCalendarIdentifierRepublicOfChina __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSCalendarIdentifier const NSCalendarIdentifierIslamicTabular __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSCalendarIdentifier const NSCalendarIdentifierIslamicUmmAlQura __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


typedef NSUInteger NSCalendarUnit; enum {
        NSCalendarUnitEra = kCFCalendarUnitEra,
        NSCalendarUnitYear = kCFCalendarUnitYear,
        NSCalendarUnitMonth = kCFCalendarUnitMonth,
        NSCalendarUnitDay = kCFCalendarUnitDay,
        NSCalendarUnitHour = kCFCalendarUnitHour,
        NSCalendarUnitMinute = kCFCalendarUnitMinute,
        NSCalendarUnitSecond = kCFCalendarUnitSecond,
        NSCalendarUnitWeekday = kCFCalendarUnitWeekday,
        NSCalendarUnitWeekdayOrdinal = kCFCalendarUnitWeekdayOrdinal,
        NSCalendarUnitQuarter __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = kCFCalendarUnitQuarter,
        NSCalendarUnitWeekOfMonth __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = kCFCalendarUnitWeekOfMonth,
        NSCalendarUnitWeekOfYear __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = kCFCalendarUnitWeekOfYear,
        NSCalendarUnitYearForWeekOfYear __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = kCFCalendarUnitYearForWeekOfYear,
        NSCalendarUnitNanosecond __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1 << 15),
        NSCalendarUnitCalendar __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1 << 20),
        NSCalendarUnitTimeZone __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1 << 21),

 NSEraCalendarUnit __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarUnitEra"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarUnitEra"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitEra"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitEra"))) = NSCalendarUnitEra,
 NSYearCalendarUnit __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarUnitYear"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarUnitYear"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitYear"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitYear"))) = NSCalendarUnitYear,
 NSMonthCalendarUnit __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarUnitMonth"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarUnitMonth"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitMonth"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitMonth"))) = NSCalendarUnitMonth,
 NSDayCalendarUnit __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarUnitDay"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarUnitDay"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitDay"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitDay"))) = NSCalendarUnitDay,
 NSHourCalendarUnit __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarUnitHour"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarUnitHour"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitHour"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitHour"))) = NSCalendarUnitHour,
 NSMinuteCalendarUnit __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarUnitMinute"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarUnitMinute"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitMinute"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitMinute"))) = NSCalendarUnitMinute,
 NSSecondCalendarUnit __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarUnitSecond"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarUnitSecond"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitSecond"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitSecond"))) = NSCalendarUnitSecond,
 NSWeekCalendarUnit __attribute__((availability(macos,introduced=10.4,deprecated=10.10,message="NSCalendarUnitWeekOfMonth or NSCalendarUnitWeekOfYear, depending on which you mean"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="NSCalendarUnitWeekOfMonth or NSCalendarUnitWeekOfYear, depending on which you mean"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="NSCalendarUnitWeekOfMonth or NSCalendarUnitWeekOfYear, depending on which you mean"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="NSCalendarUnitWeekOfMonth or NSCalendarUnitWeekOfYear, depending on which you mean"))) = kCFCalendarUnitWeek,
 NSWeekdayCalendarUnit __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarUnitWeekday"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarUnitWeekday"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitWeekday"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitWeekday"))) = NSCalendarUnitWeekday,
 NSWeekdayOrdinalCalendarUnit __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarUnitWeekdayOrdinal"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarUnitWeekdayOrdinal"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitWeekdayOrdinal"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitWeekdayOrdinal"))) = NSCalendarUnitWeekdayOrdinal,
 NSQuarterCalendarUnit __attribute__((availability(macos,introduced=10.6,deprecated=10.10,replacement="NSCalendarUnitQuarter"))) __attribute__((availability(ios,introduced=4.0,deprecated=8.0,replacement="NSCalendarUnitQuarter"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitQuarter"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitQuarter"))) = NSCalendarUnitQuarter,
 NSWeekOfMonthCalendarUnit __attribute__((availability(macos,introduced=10.7,deprecated=10.10,replacement="NSCalendarUnitWeekOfMonth"))) __attribute__((availability(ios,introduced=5.0,deprecated=8.0,replacement="NSCalendarUnitWeekOfMonth"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitWeekOfMonth"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitWeekOfMonth"))) = NSCalendarUnitWeekOfMonth,
 NSWeekOfYearCalendarUnit __attribute__((availability(macos,introduced=10.7,deprecated=10.10,replacement="NSCalendarUnitWeekOfYear"))) __attribute__((availability(ios,introduced=5.0,deprecated=8.0,replacement="NSCalendarUnitWeekOfYear"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitWeekOfYear"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitWeekOfYear"))) = NSCalendarUnitWeekOfYear,
 NSYearForWeekOfYearCalendarUnit __attribute__((availability(macos,introduced=10.7,deprecated=10.10,replacement="NSCalendarUnitYearForWeekOfYear"))) __attribute__((availability(ios,introduced=5.0,deprecated=8.0,replacement="NSCalendarUnitYearForWeekOfYear"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitYearForWeekOfYear"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitYearForWeekOfYear"))) = NSCalendarUnitYearForWeekOfYear,
 NSCalendarCalendarUnit __attribute__((availability(macos,introduced=10.7,deprecated=10.10,replacement="NSCalendarUnitCalendar"))) __attribute__((availability(ios,introduced=4.0,deprecated=8.0,replacement="NSCalendarUnitCalendar"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitCalendar"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitCalendar"))) = NSCalendarUnitCalendar,
 NSTimeZoneCalendarUnit __attribute__((availability(macos,introduced=10.7,deprecated=10.10,replacement="NSCalendarUnitTimeZone"))) __attribute__((availability(ios,introduced=4.0,deprecated=8.0,replacement="NSCalendarUnitTimeZone"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarUnitTimeZone"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarUnitTimeZone"))) = NSCalendarUnitTimeZone,
};

typedef NSUInteger NSCalendarOptions; enum {
 NSCalendarWrapComponents = (1UL << 0),

 NSCalendarMatchStrictly __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1ULL << 1),
 NSCalendarSearchBackwards __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1ULL << 2),

 NSCalendarMatchPreviousTimePreservingSmallerUnits __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1ULL << 8),
 NSCalendarMatchNextTimePreservingSmallerUnits __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1ULL << 9),
 NSCalendarMatchNextTime __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1ULL << 10),

 NSCalendarMatchFirst __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1ULL << 12),
 NSCalendarMatchLast __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1ULL << 13)
};

enum {
 NSWrapCalendarComponents __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarWrapComponents"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarWrapComponents"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarWrapComponents"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarWrapComponents"))) = NSCalendarWrapComponents,
};



#ifndef _REWRITER_typedef_NSCalendar
#define _REWRITER_typedef_NSCalendar
typedef struct objc_object NSCalendar;
typedef struct {} _objc_exc_NSCalendar;
#endif

struct NSCalendar_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


@property (class, readonly, copy) NSCalendar *currentCalendar;
@property (class, readonly, strong) NSCalendar *autoupdatingCurrentCalendar __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// + (nullable NSCalendar *)calendarWithIdentifier:(NSCalendarIdentifier)calendarIdentifierConstant __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (instancetype)init __attribute__((availability(macos,unavailable))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

// - (nullable id)initWithCalendarIdentifier:(NSCalendarIdentifier)ident __attribute__((objc_designated_initializer));

// @property (readonly, copy) NSCalendarIdentifier calendarIdentifier;
// @property (nullable, copy) NSLocale *locale;
// @property (copy) NSTimeZone *timeZone;
// @property NSUInteger firstWeekday;
// @property NSUInteger minimumDaysInFirstWeek;



// @property (readonly, copy) NSArray<NSString *> *eraSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *longEraSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSArray<NSString *> *monthSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *shortMonthSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *veryShortMonthSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *standaloneMonthSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *shortStandaloneMonthSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *veryShortStandaloneMonthSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSArray<NSString *> *weekdaySymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *shortWeekdaySymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *veryShortWeekdaySymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *standaloneWeekdaySymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *shortStandaloneWeekdaySymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *veryShortStandaloneWeekdaySymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSArray<NSString *> *quarterSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *shortQuarterSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *standaloneQuarterSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *shortStandaloneQuarterSymbols __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSString *AMSymbol __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSString *PMSymbol __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (NSRange)minimumRangeOfUnit:(NSCalendarUnit)unit;
// - (NSRange)maximumRangeOfUnit:(NSCalendarUnit)unit;

// - (NSRange)rangeOfUnit:(NSCalendarUnit)smaller inUnit:(NSCalendarUnit)larger forDate:(NSDate *)date;
// - (NSUInteger)ordinalityOfUnit:(NSCalendarUnit)smaller inUnit:(NSCalendarUnit)larger forDate:(NSDate *)date;

// - (BOOL)rangeOfUnit:(NSCalendarUnit)unit startDate:(NSDate * _Nullable * _Nullable)datep interval:(nullable NSTimeInterval *)tip forDate:(NSDate *)date __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (nullable NSDate *)dateFromComponents:(NSDateComponents *)comps;
// - (NSDateComponents *)components:(NSCalendarUnit)unitFlags fromDate:(NSDate *)date;

// - (nullable NSDate *)dateByAddingComponents:(NSDateComponents *)comps toDate:(NSDate *)date options:(NSCalendarOptions)opts;

// - (NSDateComponents *)components:(NSCalendarUnit)unitFlags fromDate:(NSDate *)startingDate toDate:(NSDate *)resultDate options:(NSCalendarOptions)opts;






// - (void)getEra:(out nullable NSInteger *)eraValuePointer year:(out nullable NSInteger *)yearValuePointer month:(out nullable NSInteger *)monthValuePointer day:(out nullable NSInteger *)dayValuePointer fromDate:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (void)getEra:(out nullable NSInteger *)eraValuePointer yearForWeekOfYear:(out nullable NSInteger *)yearValuePointer weekOfYear:(out nullable NSInteger *)weekValuePointer weekday:(out nullable NSInteger *)weekdayValuePointer fromDate:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (void)getHour:(out nullable NSInteger *)hourValuePointer minute:(out nullable NSInteger *)minuteValuePointer second:(out nullable NSInteger *)secondValuePointer nanosecond:(out nullable NSInteger *)nanosecondValuePointer fromDate:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (NSInteger)component:(NSCalendarUnit)unit fromDate:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (nullable NSDate *)dateWithEra:(NSInteger)eraValue year:(NSInteger)yearValue month:(NSInteger)monthValue day:(NSInteger)dayValue hour:(NSInteger)hourValue minute:(NSInteger)minuteValue second:(NSInteger)secondValue nanosecond:(NSInteger)nanosecondValue __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (nullable NSDate *)dateWithEra:(NSInteger)eraValue yearForWeekOfYear:(NSInteger)yearValue weekOfYear:(NSInteger)weekValue weekday:(NSInteger)weekdayValue hour:(NSInteger)hourValue minute:(NSInteger)minuteValue second:(NSInteger)secondValue nanosecond:(NSInteger)nanosecondValue __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// - (NSDate *)startOfDayForDate:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// - (NSDateComponents *)componentsInTimeZone:(NSTimeZone *)timezone fromDate:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (NSComparisonResult)compareDate:(NSDate *)date1 toDate:(NSDate *)date2 toUnitGranularity:(NSCalendarUnit)unit __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)isDate:(NSDate *)date1 equalToDate:(NSDate *)date2 toUnitGranularity:(NSCalendarUnit)unit __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)isDate:(NSDate *)date1 inSameDayAsDate:(NSDate *)date2 __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)isDateInToday:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)isDateInYesterday:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)isDateInTomorrow:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)isDateInWeekend:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// - (BOOL)rangeOfWeekendStartDate:(out NSDate * _Nullable * _Nullable)datep interval:(out nullable NSTimeInterval *)tip containingDate:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)nextWeekendStartDate:(out NSDate * _Nullable * _Nullable)datep interval:(out nullable NSTimeInterval *)tip options:(NSCalendarOptions)options afterDate:(NSDate *)date __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSDateComponents *)components:(NSCalendarUnit)unitFlags fromDateComponents:(NSDateComponents *)startingDateComp toDateComponents:(NSDateComponents *)resultDateComp options:(NSCalendarOptions)options __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (nullable NSDate *)dateByAddingUnit:(NSCalendarUnit)unit value:(NSInteger)value toDate:(NSDate *)date options:(NSCalendarOptions)options __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateDatesStartingAfterDate:(NSDate *)start matchingComponents:(NSDateComponents *)comps options:(NSCalendarOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(NSDate * _Nullable date, BOOL exactMatch, BOOL *stop))block __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (nullable NSDate *)nextDateAfterDate:(NSDate *)date matchingComponents:(NSDateComponents *)comps options:(NSCalendarOptions)options __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// - (nullable NSDate *)nextDateAfterDate:(NSDate *)date matchingUnit:(NSCalendarUnit)unit value:(NSInteger)value options:(NSCalendarOptions)options __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// - (nullable NSDate *)nextDateAfterDate:(NSDate *)date matchingHour:(NSInteger)hourValue minute:(NSInteger)minuteValue second:(NSInteger)secondValue options:(NSCalendarOptions)options __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSDate *)dateBySettingUnit:(NSCalendarUnit)unit value:(NSInteger)v ofDate:(NSDate *)date options:(NSCalendarOptions)opts __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// - (nullable NSDate *)dateBySettingHour:(NSInteger)h minute:(NSInteger)m second:(NSInteger)s ofDate:(NSDate *)date options:(NSCalendarOptions)opts __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (BOOL)date:(NSDate *)date matchesComponents:(NSDateComponents *)components __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

extern "C" NSNotificationName const NSCalendarDayChangedNotification __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
enum {
 NSDateComponentUndefined = 9223372036854775807L,

 NSUndefinedDateComponent __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSDateComponentUndefined"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSDateComponentUndefined"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSDateComponentUndefined"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSDateComponentUndefined"))) = NSDateComponentUndefined
};



#ifndef _REWRITER_typedef_NSDateComponents
#define _REWRITER_typedef_NSDateComponents
typedef struct objc_object NSDateComponents;
typedef struct {} _objc_exc_NSDateComponents;
#endif

struct NSDateComponents_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (nullable, copy) NSCalendar *calendar __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, copy) NSTimeZone *timeZone __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property NSInteger era;
// @property NSInteger year;
// @property NSInteger month;
// @property NSInteger day;
// @property NSInteger hour;
// @property NSInteger minute;
// @property NSInteger second;
// @property NSInteger nanosecond __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property NSInteger weekday;
// @property NSInteger weekdayOrdinal;
// @property NSInteger quarter __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property NSInteger weekOfMonth __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property NSInteger weekOfYear __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property NSInteger yearForWeekOfYear __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (getter=isLeapMonth) BOOL leapMonth __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSDate *date __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSInteger)week __attribute__((availability(macos,introduced=10.4,deprecated=10.9,message="Use -weekOfMonth or -weekOfYear, depending on which you mean"))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use -weekOfMonth or -weekOfYear, depending on which you mean"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -weekOfMonth or -weekOfYear, depending on which you mean"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -weekOfMonth or -weekOfYear, depending on which you mean")));
// - (void)setWeek:(NSInteger)v __attribute__((availability(macos,introduced=10.4,deprecated=10.9,message="Use -setWeekOfMonth: or -setWeekOfYear:, depending on which you mean"))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use -setWeekOfMonth: or -setWeekOfYear:, depending on which you mean"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -setWeekOfMonth: or -setWeekOfYear:, depending on which you mean"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -setWeekOfMonth: or -setWeekOfYear:, depending on which you mean")));





// - (void)setValue:(NSInteger)value forComponent:(NSCalendarUnit)unit __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (NSInteger)valueForComponent:(NSCalendarUnit)unit __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (getter=isValidDate, readonly) BOOL validDate __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)isValidDateInCalendar:(NSCalendar *)calendar __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


/* @end */

#pragma clang assume_nonnull end
// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif


#pragma clang assume_nonnull begin

enum {
    NSOpenStepUnicodeReservedBase = 0xF400
};


#ifndef _REWRITER_typedef_NSCharacterSet
#define _REWRITER_typedef_NSCharacterSet
typedef struct objc_object NSCharacterSet;
typedef struct {} _objc_exc_NSCharacterSet;
#endif

struct NSCharacterSet_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


@property (readonly, class, copy) NSCharacterSet *controlCharacterSet;
@property (readonly, class, copy) NSCharacterSet *whitespaceCharacterSet;
@property (readonly, class, copy) NSCharacterSet *whitespaceAndNewlineCharacterSet;
@property (readonly, class, copy) NSCharacterSet *decimalDigitCharacterSet;
@property (readonly, class, copy) NSCharacterSet *letterCharacterSet;
@property (readonly, class, copy) NSCharacterSet *lowercaseLetterCharacterSet;
@property (readonly, class, copy) NSCharacterSet *uppercaseLetterCharacterSet;
@property (readonly, class, copy) NSCharacterSet *nonBaseCharacterSet;
@property (readonly, class, copy) NSCharacterSet *alphanumericCharacterSet;
@property (readonly, class, copy) NSCharacterSet *decomposableCharacterSet;
@property (readonly, class, copy) NSCharacterSet *illegalCharacterSet;
@property (readonly, class, copy) NSCharacterSet *punctuationCharacterSet;
@property (readonly, class, copy) NSCharacterSet *capitalizedLetterCharacterSet;
@property (readonly, class, copy) NSCharacterSet *symbolCharacterSet;
@property (readonly, class, copy) NSCharacterSet *newlineCharacterSet __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (NSCharacterSet *)characterSetWithRange:(NSRange)aRange;
// + (NSCharacterSet *)characterSetWithCharactersInString:(NSString *)aString;
// + (NSCharacterSet *)characterSetWithBitmapRepresentation:(NSData *)data;
// + (nullable NSCharacterSet *)characterSetWithContentsOfFile:(NSString *)fName;

// - (instancetype) initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

// - (BOOL)characterIsMember:(unichar)aCharacter;
// @property (readonly, copy) NSData *bitmapRepresentation;
// @property (readonly, copy) NSCharacterSet *invertedSet;


// - (BOOL)longCharacterIsMember:(UTF32Char)theLongChar;

// - (BOOL)isSupersetOfSet:(NSCharacterSet *)theOtherSet;
// - (BOOL)hasMemberInPlane:(uint8_t)thePlane;
/* @end */



#ifndef _REWRITER_typedef_NSMutableCharacterSet
#define _REWRITER_typedef_NSMutableCharacterSet
typedef struct objc_object NSMutableCharacterSet;
typedef struct {} _objc_exc_NSMutableCharacterSet;
#endif

struct NSMutableCharacterSet_IMPL {
	struct NSCharacterSet_IMPL NSCharacterSet_IVARS;
};


// - (void)addCharactersInRange:(NSRange)aRange;
// - (void)removeCharactersInRange:(NSRange)aRange;
// - (void)addCharactersInString:(NSString *)aString;
// - (void)removeCharactersInString:(NSString *)aString;
// - (void)formUnionWithCharacterSet:(NSCharacterSet *)otherSet;
// - (void)formIntersectionWithCharacterSet:(NSCharacterSet *)otherSet;
// - (void)invert;

// + (NSMutableCharacterSet *)controlCharacterSet;
// + (NSMutableCharacterSet *)whitespaceCharacterSet;
// + (NSMutableCharacterSet *)whitespaceAndNewlineCharacterSet;
// + (NSMutableCharacterSet *)decimalDigitCharacterSet;
// + (NSMutableCharacterSet *)letterCharacterSet;
// + (NSMutableCharacterSet *)lowercaseLetterCharacterSet;
// + (NSMutableCharacterSet *)uppercaseLetterCharacterSet;
// + (NSMutableCharacterSet *)nonBaseCharacterSet;
// + (NSMutableCharacterSet *)alphanumericCharacterSet;
// + (NSMutableCharacterSet *)decomposableCharacterSet;
// + (NSMutableCharacterSet *)illegalCharacterSet;
// + (NSMutableCharacterSet *)punctuationCharacterSet;
// + (NSMutableCharacterSet *)capitalizedLetterCharacterSet;
// + (NSMutableCharacterSet *)symbolCharacterSet;
// + (NSMutableCharacterSet *)newlineCharacterSet __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (NSMutableCharacterSet *)characterSetWithRange:(NSRange)aRange;
// + (NSMutableCharacterSet *)characterSetWithCharactersInString:(NSString *)aString;
// + (NSMutableCharacterSet *)characterSetWithBitmapRepresentation:(NSData *)data;
// + (nullable NSMutableCharacterSet *)characterSetWithContentsOfFile:(NSString *)fName;

/* @end */

#pragma clang assume_nonnull end






// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif


#pragma clang assume_nonnull begin




typedef NSInteger NSDecodingFailurePolicy; enum {

    NSDecodingFailurePolicyRaiseException,


    NSDecodingFailurePolicySetErrorAndReturn,
} __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


#ifndef _REWRITER_typedef_NSCoder
#define _REWRITER_typedef_NSCoder
typedef struct objc_object NSCoder;
typedef struct {} _objc_exc_NSCoder;
#endif

struct NSCoder_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// - (void)encodeValueOfObjCType:(const char *)type at:(const void *)addr;
// - (void)encodeDataObject:(NSData *)data;
// - (nullable NSData *)decodeDataObject;
// - (void)decodeValueOfObjCType:(const char *)type at:(void *)data size:(NSUInteger)size __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// - (NSInteger)versionForClassName:(NSString *)className;

/* @end */


// @interface NSCoder (NSExtendedCoder)

// - (void)encodeObject:(nullable id)object;
// - (void)encodeRootObject:(id)rootObject;
// - (void)encodeBycopyObject:(nullable id)anObject;
// - (void)encodeByrefObject:(nullable id)anObject;
// - (void)encodeConditionalObject:(nullable id)object;
// - (void)encodeValuesOfObjCTypes:(const char *)types, ...;
// - (void)encodeArrayOfObjCType:(const char *)type count:(NSUInteger)count at:(const void *)array;
// - (void)encodeBytes:(nullable const void *)byteaddr length:(NSUInteger)length;

// - (nullable id)decodeObject;
// - (nullable id)decodeTopLevelObjectAndReturnError:(NSError **)error __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(swift, unavailable, message="Use 'decodeTopLevelObject() throws' instead")));
// - (void)decodeValuesOfObjCTypes:(const char *)types, ...;
// - (void)decodeArrayOfObjCType:(const char *)itemType count:(NSUInteger)count at:(void *)array;
// - (nullable void *)decodeBytesWithReturnedLength:(NSUInteger *)lengthp __attribute__((objc_returns_inner_pointer));






// - (void)setObjectZone:(nullable NSZone *)zone ;
// - (nullable NSZone *)objectZone ;

// @property (readonly) unsigned int systemVersion;

// @property (readonly) BOOL allowsKeyedCoding;

// - (void)encodeObject:(nullable id)object forKey:(NSString *)key;
// - (void)encodeConditionalObject:(nullable id)object forKey:(NSString *)key;
// - (void)encodeBool:(BOOL)value forKey:(NSString *)key;
// - (void)encodeInt:(int)value forKey:(NSString *)key;
// - (void)encodeInt32:(int32_t)value forKey:(NSString *)key;
// - (void)encodeInt64:(int64_t)value forKey:(NSString *)key;
// - (void)encodeFloat:(float)value forKey:(NSString *)key;
// - (void)encodeDouble:(double)value forKey:(NSString *)key;
// - (void)encodeBytes:(nullable const uint8_t *)bytes length:(NSUInteger)length forKey:(NSString *)key;

// - (BOOL)containsValueForKey:(NSString *)key;
// - (nullable id)decodeObjectForKey:(NSString *)key;
// - (nullable id)decodeTopLevelObjectForKey:(NSString *)key error:(NSError **)error __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(swift, unavailable, message="Use 'decodeObjectForKey(_:) throws' instead")));
// - (BOOL)decodeBoolForKey:(NSString *)key;
// - (int)decodeIntForKey:(NSString *)key;
// - (int32_t)decodeInt32ForKey:(NSString *)key;
// - (int64_t)decodeInt64ForKey:(NSString *)key;
// - (float)decodeFloatForKey:(NSString *)key;
// - (double)decodeDoubleForKey:(NSString *)key;
// - (nullable const uint8_t *)decodeBytesForKey:(NSString *)key returnedLength:(nullable NSUInteger *)lengthp __attribute__((objc_returns_inner_pointer));

// - (void)encodeInteger:(NSInteger)value forKey:(NSString *)key __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSInteger)decodeIntegerForKey:(NSString *)key __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// @property (readonly) BOOL requiresSecureCoding __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// - (nullable id)decodeObjectOfClass:(Class)aClass forKey:(NSString *)key __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable id)decodeTopLevelObjectOfClass:(Class)aClass forKey:(NSString *)key error:(NSError **)error __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(swift, unavailable, message="Use 'decodeTopLevelObjectOfClass(_:,forKey:) throws' instead")));


// - (nullable id)decodeObjectOfClasses:(nullable NSSet<Class> *)classes forKey:(NSString *)key __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((swift_private));
// - (nullable id)decodeTopLevelObjectOfClasses:(nullable NSSet<Class> *)classes forKey:(NSString *)key error:(NSError **)error __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(swift, unavailable, message="Use 'decodeObjectOfClasses(_:,forKey:) throws' instead")));


// - (nullable id)decodePropertyListForKey:(NSString *)key __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// @property (nullable, readonly, copy) NSSet<Class> *allowedClasses __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)failWithError:(NSError *)error __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// @property (readonly) NSDecodingFailurePolicy decodingFailurePolicy __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSError *error __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

// @interface NSCoder(NSDeprecated)


// - (void)decodeValueOfObjCType:(const char *)type at:(void *)data __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="decodeValueOfObjCType:at:size:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="decodeValueOfObjCType:at:size:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="decodeValueOfObjCType:at:size:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="decodeValueOfObjCType:at:size:")));

/* @end */

#pragma clang assume_nonnull end







// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif


#pragma clang assume_nonnull begin



typedef NSUInteger NSDataReadingOptions; enum {
    NSDataReadingMappedIfSafe = 1UL << 0,
    NSDataReadingUncached = 1UL << 1,
    NSDataReadingMappedAlways __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 1UL << 3,


    NSDataReadingMapped __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="NSDataReadingMappedIfSafe"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="NSDataReadingMappedIfSafe"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="NSDataReadingMappedIfSafe"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="NSDataReadingMappedIfSafe"))) = NSDataReadingMappedIfSafe,
    NSMappedRead __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="NSDataReadingMapped"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="NSDataReadingMapped"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="NSDataReadingMapped"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="NSDataReadingMapped"))) = NSDataReadingMapped,
    NSUncachedRead __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="NSDataReadingUncached"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="NSDataReadingUncached"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="NSDataReadingUncached"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="NSDataReadingUncached"))) = NSDataReadingUncached
};

typedef NSUInteger NSDataWritingOptions; enum {
    NSDataWritingAtomic = 1UL << 0,
    NSDataWritingWithoutOverwriting __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 1UL << 1,

    NSDataWritingFileProtectionNone __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable))) = 0x10000000,
    NSDataWritingFileProtectionComplete __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable))) = 0x20000000,
    NSDataWritingFileProtectionCompleteUnlessOpen __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable))) = 0x30000000,
    NSDataWritingFileProtectionCompleteUntilFirstUserAuthentication __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable))) = 0x40000000,
    NSDataWritingFileProtectionMask __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable))) = 0xf0000000,


    NSAtomicWrite __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="NSDataWritingAtomic"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="NSDataWritingAtomic"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="NSDataWritingAtomic"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="NSDataWritingAtomic"))) = NSDataWritingAtomic
};




typedef NSUInteger NSDataSearchOptions; enum {
    NSDataSearchBackwards = 1UL << 0,
    NSDataSearchAnchored = 1UL << 1
} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




typedef NSUInteger NSDataBase64EncodingOptions; enum {

    NSDataBase64Encoding64CharacterLineLength = 1UL << 0,
    NSDataBase64Encoding76CharacterLineLength = 1UL << 1,


    NSDataBase64EncodingEndLineWithCarriageReturn = 1UL << 4,
    NSDataBase64EncodingEndLineWithLineFeed = 1UL << 5,

} __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


typedef NSUInteger NSDataBase64DecodingOptions; enum {

    NSDataBase64DecodingIgnoreUnknownCharacters = 1UL << 0
} __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

struct NSData_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly) NSUInteger length;





// @property (readonly) const void *bytes __attribute__((objc_returns_inner_pointer));

/* @end */


// @interface NSData (NSExtendedData)

// @property (readonly, copy) NSString *description;
// - (void)getBytes:(void *)buffer length:(NSUInteger)length;
// - (void)getBytes:(void *)buffer range:(NSRange)range;
// - (BOOL)isEqualToData:(NSData *)other;
// - (NSData *)subdataWithRange:(NSRange)range;
// - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile;
// - (BOOL)writeToURL:(NSURL *)url atomically:(BOOL)atomically;
// - (BOOL)writeToFile:(NSString *)path options:(NSDataWritingOptions)writeOptionsMask error:(NSError **)errorPtr;
// - (BOOL)writeToURL:(NSURL *)url options:(NSDataWritingOptions)writeOptionsMask error:(NSError **)errorPtr;
// - (NSRange)rangeOfData:(NSData *)dataToFind options:(NSDataSearchOptions)mask range:(NSRange)searchRange __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (void) enumerateByteRangesUsingBlock:(void (__attribute__((noescape)) ^)(const void *bytes, NSRange byteRange, BOOL *stop))block __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSData (NSDataCreation)

// + (instancetype)data;
// + (instancetype)dataWithBytes:(nullable const void *)bytes length:(NSUInteger)length;
// + (instancetype)dataWithBytesNoCopy:(void *)bytes length:(NSUInteger)length;
// + (instancetype)dataWithBytesNoCopy:(void *)bytes length:(NSUInteger)length freeWhenDone:(BOOL)b;
// + (nullable instancetype)dataWithContentsOfFile:(NSString *)path options:(NSDataReadingOptions)readOptionsMask error:(NSError **)errorPtr;
// + (nullable instancetype)dataWithContentsOfURL:(NSURL *)url options:(NSDataReadingOptions)readOptionsMask error:(NSError **)errorPtr;
// + (nullable instancetype)dataWithContentsOfFile:(NSString *)path;
// + (nullable instancetype)dataWithContentsOfURL:(NSURL *)url;
// - (instancetype)initWithBytes:(nullable const void *)bytes length:(NSUInteger)length;
// - (instancetype)initWithBytesNoCopy:(void *)bytes length:(NSUInteger)length;
// - (instancetype)initWithBytesNoCopy:(void *)bytes length:(NSUInteger)length freeWhenDone:(BOOL)b;
// - (instancetype)initWithBytesNoCopy:(void *)bytes length:(NSUInteger)length deallocator:(nullable void (^)(void *bytes, NSUInteger length))deallocator __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable instancetype)initWithContentsOfFile:(NSString *)path options:(NSDataReadingOptions)readOptionsMask error:(NSError **)errorPtr;
// - (nullable instancetype)initWithContentsOfURL:(NSURL *)url options:(NSDataReadingOptions)readOptionsMask error:(NSError **)errorPtr;
// - (nullable instancetype)initWithContentsOfFile:(NSString *)path;
// - (nullable instancetype)initWithContentsOfURL:(NSURL *)url;
// - (instancetype)initWithData:(NSData *)data;
// + (instancetype)dataWithData:(NSData *)data;

/* @end */


// @interface NSData (NSDataBase64Encoding)



// - (nullable instancetype)initWithBase64EncodedString:(NSString *)base64String options:(NSDataBase64DecodingOptions)options __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (NSString *)base64EncodedStringWithOptions:(NSDataBase64EncodingOptions)options __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (nullable instancetype)initWithBase64EncodedData:(NSData *)base64Data options:(NSDataBase64DecodingOptions)options __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (NSData *)base64EncodedDataWithOptions:(NSDataBase64EncodingOptions)options __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */




typedef NSInteger NSDataCompressionAlgorithm; enum {


    NSDataCompressionAlgorithmLZFSE = 0,



    NSDataCompressionAlgorithmLZ4,



    NSDataCompressionAlgorithmLZMA,



    NSDataCompressionAlgorithmZlib,

} __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

// @interface NSData (NSDataCompression)



// - (nullable instancetype)decompressedDataUsingAlgorithm:(NSDataCompressionAlgorithm)algorithm error:(NSError **)error __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// - (nullable instancetype)compressedDataUsingAlgorithm:(NSDataCompressionAlgorithm)algorithm error:(NSError **)error __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

/* @end */



// @interface NSData (NSDeprecated)

// - (void)getBytes:(void *)buffer __attribute__((availability(macos,introduced=10.0,deprecated=10.10,message="This method is unsafe because it could potentially cause buffer overruns. Use -getBytes:length: instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="This method is unsafe because it could potentially cause buffer overruns. Use -getBytes:length: instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="This method is unsafe because it could potentially cause buffer overruns. Use -getBytes:length: instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="This method is unsafe because it could potentially cause buffer overruns. Use -getBytes:length: instead.")));
// + (nullable id)dataWithContentsOfMappedFile:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=10.10,message="Use +dataWithContentsOfURL:options:error: and NSDataReadingMappedIfSafe or NSDataReadingMappedAlways instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use +dataWithContentsOfURL:options:error: and NSDataReadingMappedIfSafe or NSDataReadingMappedAlways instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use +dataWithContentsOfURL:options:error: and NSDataReadingMappedIfSafe or NSDataReadingMappedAlways instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use +dataWithContentsOfURL:options:error: and NSDataReadingMappedIfSafe or NSDataReadingMappedAlways instead.")));
// - (nullable id)initWithContentsOfMappedFile:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=10.10,message="Use -initWithContentsOfURL:options:error: and NSDataReadingMappedIfSafe or NSDataReadingMappedAlways instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use -initWithContentsOfURL:options:error: and NSDataReadingMappedIfSafe or NSDataReadingMappedAlways instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -initWithContentsOfURL:options:error: and NSDataReadingMappedIfSafe or NSDataReadingMappedAlways instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -initWithContentsOfURL:options:error: and NSDataReadingMappedIfSafe or NSDataReadingMappedAlways instead.")));



// - (nullable id)initWithBase64Encoding:(NSString *)base64String __attribute__((availability(macos,introduced=10.6,deprecated=10.9,message="Use initWithBase64EncodedString instead"))) __attribute__((availability(ios,introduced=4.0,deprecated=7.0,message="Use initWithBase64EncodedString instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use initWithBase64EncodedString instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use initWithBase64EncodedString instead")));
// - (NSString *)base64Encoding __attribute__((availability(macos,introduced=10.6,deprecated=10.9,message="Use base64EncodedStringWithOptions instead"))) __attribute__((availability(ios,introduced=4.0,deprecated=7.0,message="Use base64EncodedStringWithOptions instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use base64EncodedStringWithOptions instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use base64EncodedStringWithOptions instead")));

/* @end */





#ifndef _REWRITER_typedef_NSMutableData
#define _REWRITER_typedef_NSMutableData
typedef struct objc_object NSMutableData;
typedef struct {} _objc_exc_NSMutableData;
#endif

struct NSMutableData_IMPL {
	struct NSData_IMPL NSData_IVARS;
};


// @property (readonly) void *mutableBytes __attribute__((objc_returns_inner_pointer));
// @property NSUInteger length;

/* @end */


// @interface NSMutableData (NSExtendedMutableData)

// - (void)appendBytes:(const void *)bytes length:(NSUInteger)length;
// - (void)appendData:(NSData *)other;
// - (void)increaseLengthBy:(NSUInteger)extraLength;
// - (void)replaceBytesInRange:(NSRange)range withBytes:(const void *)bytes;
// - (void)resetBytesInRange:(NSRange)range;
// - (void)setData:(NSData *)data;
// - (void)replaceBytesInRange:(NSRange)range withBytes:(nullable const void *)replacementBytes length:(NSUInteger)replacementLength;

/* @end */


// @interface NSMutableData (NSMutableDataCreation)

// + (nullable instancetype)dataWithCapacity:(NSUInteger)aNumItems;
// + (nullable instancetype)dataWithLength:(NSUInteger)length;
// - (nullable instancetype)initWithCapacity:(NSUInteger)capacity;
// - (nullable instancetype)initWithLength:(NSUInteger)length;

/* @end */


// @interface NSMutableData (NSMutableDataCompression)



// - (BOOL)decompressUsingAlgorithm:(NSDataCompressionAlgorithm)algorithm error:(NSError **)error __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// - (BOOL)compressUsingAlgorithm:(NSDataCompressionAlgorithm)algorithm error:(NSError **)error __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

/* @end */




__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSPurgeableData
#define _REWRITER_typedef_NSPurgeableData
typedef struct objc_object NSPurgeableData;
typedef struct {} _objc_exc_NSPurgeableData;
#endif

struct NSPurgeableData_IMPL {
	struct NSMutableData_IMPL NSMutableData_IVARS;
	NSUInteger _length;
	int32_t _accessCount;
	uint8_t _private[32];
	void *_reserved;
};


/* @end */

#pragma clang assume_nonnull end









#pragma clang assume_nonnull begin

__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSDateInterval
#define _REWRITER_typedef_NSDateInterval
typedef struct objc_object NSDateInterval;
typedef struct {} _objc_exc_NSDateInterval;
#endif

struct NSDateInterval_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};






// @property (readonly, copy) NSDate *startDate;
// @property (readonly, copy) NSDate *endDate;
// @property (readonly) NSTimeInterval duration;


// - (instancetype)init;

// - (instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));


// - (instancetype)initWithStartDate:(NSDate *)startDate duration:(NSTimeInterval)duration __attribute__((objc_designated_initializer));


// - (instancetype)initWithStartDate:(NSDate *)startDate endDate:(NSDate *)endDate;
// - (NSComparisonResult)compare:(NSDateInterval *)dateInterval;

// - (BOOL)isEqualToDateInterval:(NSDateInterval *)dateInterval;
// - (BOOL)intersectsDateInterval:(NSDateInterval *)dateInterval;




// - (nullable NSDateInterval *)intersectionWithDateInterval:(NSDateInterval *)dateInterval;

// - (BOOL)containsDate:(NSDate *)date;

/* @end */

#pragma clang assume_nonnull end


















#pragma clang assume_nonnull begin

typedef NSString * NSAttributedStringKey __attribute__((swift_wrapper(struct)));

__attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.2))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSAttributedString
#define _REWRITER_typedef_NSAttributedString
typedef struct objc_object NSAttributedString;
typedef struct {} _objc_exc_NSAttributedString;
#endif

struct NSAttributedString_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly, copy) NSString *string;
// - (NSDictionary<NSAttributedStringKey, id> *)attributesAtIndex:(NSUInteger)location effectiveRange:(nullable NSRangePointer)range;

/* @end */


// @interface NSAttributedString (NSExtendedAttributedString)

// @property (readonly) NSUInteger length;
// - (nullable id)attribute:(NSAttributedStringKey)attrName atIndex:(NSUInteger)location effectiveRange:(nullable NSRangePointer)range;
// - (NSAttributedString *)attributedSubstringFromRange:(NSRange)range;

// - (NSDictionary<NSAttributedStringKey, id> *)attributesAtIndex:(NSUInteger)location longestEffectiveRange:(nullable NSRangePointer)range inRange:(NSRange)rangeLimit;
// - (nullable id)attribute:(NSAttributedStringKey)attrName atIndex:(NSUInteger)location longestEffectiveRange:(nullable NSRangePointer)range inRange:(NSRange)rangeLimit;

// - (BOOL)isEqualToAttributedString:(NSAttributedString *)other;

// - (instancetype)initWithString:(NSString *)str;
// - (instancetype)initWithString:(NSString *)str attributes:(nullable NSDictionary<NSAttributedStringKey, id> *)attrs;
// - (instancetype)initWithAttributedString:(NSAttributedString *)attrStr;

typedef NSUInteger NSAttributedStringEnumerationOptions; enum {
  NSAttributedStringEnumerationReverse = (1UL << 1),
  NSAttributedStringEnumerationLongestEffectiveRangeNotRequired = (1UL << 20)
};

// - (void)enumerateAttributesInRange:(NSRange)enumerationRange options:(NSAttributedStringEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(NSDictionary<NSAttributedStringKey, id> *attrs, NSRange range, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateAttribute:(NSAttributedStringKey)attrName inRange:(NSRange)enumerationRange options:(NSAttributedStringEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(id _Nullable value, NSRange range, BOOL *stop))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


__attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.2))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSMutableAttributedString
#define _REWRITER_typedef_NSMutableAttributedString
typedef struct objc_object NSMutableAttributedString;
typedef struct {} _objc_exc_NSMutableAttributedString;
#endif

struct NSMutableAttributedString_IMPL {
	struct NSAttributedString_IMPL NSAttributedString_IVARS;
};


// - (void)replaceCharactersInRange:(NSRange)range withString:(NSString *)str;
// - (void)setAttributes:(nullable NSDictionary<NSAttributedStringKey, id> *)attrs range:(NSRange)range;

/* @end */


// @interface NSMutableAttributedString (NSExtendedMutableAttributedString)

// @property (readonly, retain) NSMutableString *mutableString;

// - (void)addAttribute:(NSAttributedStringKey)name value:(id)value range:(NSRange)range;
// - (void)addAttributes:(NSDictionary<NSAttributedStringKey, id> *)attrs range:(NSRange)range;
// - (void)removeAttribute:(NSAttributedStringKey)name range:(NSRange)range;

// - (void)replaceCharactersInRange:(NSRange)range withAttributedString:(NSAttributedString *)attrString;
// - (void)insertAttributedString:(NSAttributedString *)attrString atIndex:(NSUInteger)loc;
// - (void)appendAttributedString:(NSAttributedString *)attrString;
// - (void)deleteCharactersInRange:(NSRange)range;
// - (void)setAttributedString:(NSAttributedString *)attrString;

// - (void)beginEditing;
// - (void)endEditing;

/* @end */

#pragma clang assume_nonnull end

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @class NSAttributedString;
#ifndef _REWRITER_typedef_NSAttributedString
#define _REWRITER_typedef_NSAttributedString
typedef struct objc_object NSAttributedString;
typedef struct {} _objc_exc_NSAttributedString;
#endif

// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif


#pragma clang assume_nonnull begin

typedef NSInteger NSFormattingContext; enum {


    NSFormattingContextUnknown = 0,


    NSFormattingContextDynamic = 1,


    NSFormattingContextStandalone = 2,


    NSFormattingContextListItem = 3,


    NSFormattingContextBeginningOfSentence = 4,


    NSFormattingContextMiddleOfSentence = 5,

} __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






typedef NSInteger NSFormattingUnitStyle; enum {
    NSFormattingUnitStyleShort = 1,
    NSFormattingUnitStyleMedium,
    NSFormattingUnitStyleLong,
} __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


#ifndef _REWRITER_typedef_NSFormatter
#define _REWRITER_typedef_NSFormatter
typedef struct objc_object NSFormatter;
typedef struct {} _objc_exc_NSFormatter;
#endif

struct NSFormatter_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// - (nullable NSString *)stringForObjectValue:(nullable id)obj;

// - (nullable NSAttributedString *)attributedStringForObjectValue:(id)obj withDefaultAttributes:(nullable NSDictionary<NSAttributedStringKey, id> *)attrs;

// - (nullable NSString *)editingStringForObjectValue:(id)obj;

// - (BOOL)getObjectValue:(out id _Nullable * _Nullable)obj forString:(NSString *)string errorDescription:(out NSString * _Nullable * _Nullable)error;

// - (BOOL)isPartialStringValid:(NSString *)partialString newEditingString:(NSString * _Nullable * _Nullable)newString errorDescription:(NSString * _Nullable * _Nullable)error;


// - (BOOL)isPartialStringValid:(NSString * _Nonnull * _Nonnull)partialStringPtr proposedSelectedRange:(nullable NSRangePointer)proposedSelRangePtr originalString:(NSString *)origString originalSelectedRange:(NSRange)origSelRange errorDescription:(NSString * _Nullable * _Nullable)error;

/* @end */

#pragma clang assume_nonnull end


// @class NSLocale;
#ifndef _REWRITER_typedef_NSLocale
#define _REWRITER_typedef_NSLocale
typedef struct objc_object NSLocale;
typedef struct {} _objc_exc_NSLocale;
#endif

#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

#ifndef _REWRITER_typedef_NSCalendar
#define _REWRITER_typedef_NSCalendar
typedef struct objc_object NSCalendar;
typedef struct {} _objc_exc_NSCalendar;
#endif

#ifndef _REWRITER_typedef_NSTimeZone
#define _REWRITER_typedef_NSTimeZone
typedef struct objc_object NSTimeZone;
typedef struct {} _objc_exc_NSTimeZone;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSMutableDictionary
#define _REWRITER_typedef_NSMutableDictionary
typedef struct objc_object NSMutableDictionary;
typedef struct {} _objc_exc_NSMutableDictionary;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin









#ifndef _REWRITER_typedef_NSDateFormatter
#define _REWRITER_typedef_NSDateFormatter
typedef struct objc_object NSDateFormatter;
typedef struct {} _objc_exc_NSDateFormatter;
#endif

struct NSDateFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	NSMutableDictionary *_attributes;
	CFDateFormatterRef _formatter;
	NSUInteger _counter;
};


// @property NSFormattingContext formattingContext __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)getObjectValue:(out id _Nullable * _Nullable)obj forString:(NSString *)string range:(inout nullable NSRange *)rangep error:(out NSError **)error;




// - (NSString *)stringFromDate:(NSDate *)date;
// - (nullable NSDate *)dateFromString:(NSString *)string;

typedef NSUInteger NSDateFormatterStyle; enum {
    NSDateFormatterNoStyle = kCFDateFormatterNoStyle,
    NSDateFormatterShortStyle = kCFDateFormatterShortStyle,
    NSDateFormatterMediumStyle = kCFDateFormatterMediumStyle,
    NSDateFormatterLongStyle = kCFDateFormatterLongStyle,
    NSDateFormatterFullStyle = kCFDateFormatterFullStyle
};

typedef NSUInteger NSDateFormatterBehavior; enum {
    NSDateFormatterBehaviorDefault = 0,



    NSDateFormatterBehavior10_4 = 1040,
};


// + (NSString *)localizedStringFromDate:(NSDate *)date dateStyle:(NSDateFormatterStyle)dstyle timeStyle:(NSDateFormatterStyle)tstyle __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (nullable NSString *)dateFormatFromTemplate:(NSString *)tmplate options:(NSUInteger)opts locale:(nullable NSLocale *)locale __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



@property (class) NSDateFormatterBehavior defaultFormatterBehavior;
// - (void) setLocalizedDateFormatFromTemplate:(NSString *)dateFormatTemplate __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (null_resettable, copy) NSString *dateFormat;
// @property NSDateFormatterStyle dateStyle;
// @property NSDateFormatterStyle timeStyle;
// @property (null_resettable, copy) NSLocale *locale;
// @property BOOL generatesCalendarDates;
// @property NSDateFormatterBehavior formatterBehavior;
// @property (null_resettable, copy) NSTimeZone *timeZone;
// @property (null_resettable, copy) NSCalendar *calendar;
// @property (getter=isLenient) BOOL lenient;
// @property (nullable, copy) NSDate *twoDigitStartDate;
// @property (nullable, copy) NSDate *defaultDate;
// @property (null_resettable, copy) NSArray<NSString *> *eraSymbols;
// @property (null_resettable, copy) NSArray<NSString *> *monthSymbols;
// @property (null_resettable, copy) NSArray<NSString *> *shortMonthSymbols;
// @property (null_resettable, copy) NSArray<NSString *> *weekdaySymbols;
// @property (null_resettable, copy) NSArray<NSString *> *shortWeekdaySymbols;
// @property (null_resettable, copy) NSString *AMSymbol;
// @property (null_resettable, copy) NSString *PMSymbol;
// @property (null_resettable, copy) NSArray<NSString *> *longEraSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *veryShortMonthSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *standaloneMonthSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *shortStandaloneMonthSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *veryShortStandaloneMonthSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *veryShortWeekdaySymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *standaloneWeekdaySymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *shortStandaloneWeekdaySymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *veryShortStandaloneWeekdaySymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *quarterSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *shortQuarterSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *standaloneQuarterSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (null_resettable, copy) NSArray<NSString *> *shortStandaloneQuarterSymbols __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, copy) NSDate *gregorianStartDate __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property BOOL doesRelativeDateFormatting __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end







// @class NSLocale;
#ifndef _REWRITER_typedef_NSLocale
#define _REWRITER_typedef_NSLocale
typedef struct objc_object NSLocale;
typedef struct {} _objc_exc_NSLocale;
#endif

#ifndef _REWRITER_typedef_NSCalendar
#define _REWRITER_typedef_NSCalendar
typedef struct objc_object NSCalendar;
typedef struct {} _objc_exc_NSCalendar;
#endif

#ifndef _REWRITER_typedef_NSTimeZone
#define _REWRITER_typedef_NSTimeZone
typedef struct objc_object NSTimeZone;
typedef struct {} _objc_exc_NSTimeZone;
#endif

#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif


#pragma clang assume_nonnull begin

typedef NSUInteger NSDateIntervalFormatterStyle; enum {
    NSDateIntervalFormatterNoStyle = 0,
    NSDateIntervalFormatterShortStyle = 1,
    NSDateIntervalFormatterMediumStyle = 2,
    NSDateIntervalFormatterLongStyle = 3,
    NSDateIntervalFormatterFullStyle = 4
} __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSDateIntervalFormatter
#define _REWRITER_typedef_NSDateIntervalFormatter
typedef struct objc_object NSDateIntervalFormatter;
typedef struct {} _objc_exc_NSDateIntervalFormatter;
#endif

struct NSDateIntervalFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	NSLocale *_locale;
	NSCalendar *_calendar;
	NSTimeZone *_timeZone;
	NSString *_dateTemplate;
	NSString *_dateTemplateFromStyles;
	void *_formatter;
	NSDateIntervalFormatterStyle _dateStyle;
	NSDateIntervalFormatterStyle _timeStyle;
	BOOL _modified;
	BOOL _useTemplate;
	dispatch_semaphore_t _lock;
	void *_reserved[4];
};


// @property (null_resettable, copy) NSLocale *locale;
// @property (null_resettable, copy) NSCalendar *calendar;
// @property (null_resettable, copy) NSTimeZone *timeZone;
// @property (null_resettable, copy) NSString *dateTemplate;
// @property NSDateIntervalFormatterStyle dateStyle;
// @property NSDateIntervalFormatterStyle timeStyle;
// - (NSString *)stringFromDate:(NSDate *)fromDate toDate:(NSDate *)toDate;

// - (nullable NSString *)stringFromDateInterval:(NSDateInterval *)dateInterval __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

/* @end */

#pragma clang assume_nonnull end








#pragma clang assume_nonnull begin

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

#ifndef _REWRITER_typedef_NSTimeZone
#define _REWRITER_typedef_NSTimeZone
typedef struct objc_object NSTimeZone;
typedef struct {} _objc_exc_NSTimeZone;
#endif


typedef NSUInteger NSISO8601DateFormatOptions; enum {




    NSISO8601DateFormatWithYear __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithYear,
    NSISO8601DateFormatWithMonth __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithMonth,

    NSISO8601DateFormatWithWeekOfYear __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithWeekOfYear,






    NSISO8601DateFormatWithDay __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithDay,

    NSISO8601DateFormatWithTime __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithTime,
    NSISO8601DateFormatWithTimeZone __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithTimeZone,

    NSISO8601DateFormatWithSpaceBetweenDateAndTime __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithSpaceBetweenDateAndTime,
    NSISO8601DateFormatWithDashSeparatorInDate __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithDashSeparatorInDate,
    NSISO8601DateFormatWithColonSeparatorInTime __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithColonSeparatorInTime,
    NSISO8601DateFormatWithColonSeparatorInTimeZone __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithColonSeparatorInTimeZone,
    NSISO8601DateFormatWithFractionalSeconds __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) = kCFISO8601DateFormatWithFractionalSeconds,

    NSISO8601DateFormatWithFullDate __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithFullDate,
    NSISO8601DateFormatWithFullTime __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithFullTime,

    NSISO8601DateFormatWithInternetDateTime __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = kCFISO8601DateFormatWithInternetDateTime,
};

__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSISO8601DateFormatter
#define _REWRITER_typedef_NSISO8601DateFormatter
typedef struct objc_object NSISO8601DateFormatter;
typedef struct {} _objc_exc_NSISO8601DateFormatter;
#endif

struct NSISO8601DateFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	CFDateFormatterRef _formatter;
	NSTimeZone *_timeZone;
	NSISO8601DateFormatOptions _formatOptions;
};



// @property (null_resettable, copy) NSTimeZone *timeZone;

// @property NSISO8601DateFormatOptions formatOptions;




// - (instancetype)init __attribute__((objc_designated_initializer));

// - (NSString *)stringFromDate:(NSDate *)date;
// - (nullable NSDate *)dateFromString:(NSString *)string;

// + (NSString *)stringFromDate:(NSDate *)date timeZone:(NSTimeZone *)timeZone formatOptions:(NSISO8601DateFormatOptions)formatOptions;

/* @end */

#pragma clang assume_nonnull end






// @class NSNumberFormatter;
#ifndef _REWRITER_typedef_NSNumberFormatter
#define _REWRITER_typedef_NSNumberFormatter
typedef struct objc_object NSNumberFormatter;
typedef struct {} _objc_exc_NSNumberFormatter;
#endif


#pragma clang assume_nonnull begin

typedef NSInteger NSMassFormatterUnit; enum {
    NSMassFormatterUnitGram = 11,
    NSMassFormatterUnitKilogram = 14,
    NSMassFormatterUnitOunce = (6 << 8) + 1,
    NSMassFormatterUnitPound = (6 << 8) + 2,
    NSMassFormatterUnitStone = (6 << 8) + 3,
} __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSMassFormatter
#define _REWRITER_typedef_NSMassFormatter
typedef struct objc_object NSMassFormatter;
typedef struct {} _objc_exc_NSMassFormatter;
#endif

struct NSMassFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	void *_formatter;
	BOOL _isForPersonMassUse;
	void *_reserved[2];
};


// @property (null_resettable, copy) NSNumberFormatter *numberFormatter;
// @property NSFormattingUnitStyle unitStyle;
// @property (getter = isForPersonMassUse) BOOL forPersonMassUse;


// - (NSString *)stringFromValue:(double)value unit:(NSMassFormatterUnit)unit;


// - (NSString *)stringFromKilograms:(double)numberInKilograms;


// - (NSString *)unitStringFromValue:(double)value unit:(NSMassFormatterUnit)unit;


// - (NSString *)unitStringFromKilograms:(double)numberInKilograms usedUnit:(nullable NSMassFormatterUnit *)unitp;


// - (BOOL)getObjectValue:(out id _Nullable * _Nullable)obj forString:(NSString *)string errorDescription:(out NSString * _Nullable * _Nullable)error;
/* @end */

#pragma clang assume_nonnull end






#pragma clang assume_nonnull begin

typedef NSInteger NSLengthFormatterUnit; enum {
    NSLengthFormatterUnitMillimeter = 8,
    NSLengthFormatterUnitCentimeter = 9,
    NSLengthFormatterUnitMeter = 11,
    NSLengthFormatterUnitKilometer = 14,
    NSLengthFormatterUnitInch = (5 << 8) + 1,
    NSLengthFormatterUnitFoot = (5 << 8) + 2,
    NSLengthFormatterUnitYard = (5 << 8) + 3,
    NSLengthFormatterUnitMile = (5 << 8) + 4,
} __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSLengthFormatter
#define _REWRITER_typedef_NSLengthFormatter
typedef struct objc_object NSLengthFormatter;
typedef struct {} _objc_exc_NSLengthFormatter;
#endif

struct NSLengthFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	void *_formatter;
	BOOL _isForPersonHeight;
	void *_reserved[2];
};

// @property (null_resettable, copy) NSNumberFormatter *numberFormatter;
// @property NSFormattingUnitStyle unitStyle;

// @property (getter = isForPersonHeightUse) BOOL forPersonHeightUse;


// - (NSString *)stringFromValue:(double)value unit:(NSLengthFormatterUnit)unit;


// - (NSString *)stringFromMeters:(double)numberInMeters;


// - (NSString *)unitStringFromValue:(double)value unit:(NSLengthFormatterUnit)unit;


// - (NSString *)unitStringFromMeters:(double)numberInMeters usedUnit:(nullable NSLengthFormatterUnit *)unitp;


// - (BOOL)getObjectValue:(out id _Nullable * _Nullable)obj forString:(NSString *)string errorDescription:(out NSString * _Nullable * _Nullable)error;
/* @end */

#pragma clang assume_nonnull end






#pragma clang assume_nonnull begin

typedef NSInteger NSEnergyFormatterUnit; enum {
    NSEnergyFormatterUnitJoule = 11,
    NSEnergyFormatterUnitKilojoule = 14,
    NSEnergyFormatterUnitCalorie = (7 << 8) + 1,
    NSEnergyFormatterUnitKilocalorie = (7 << 8) + 2,
} __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSEnergyFormatter
#define _REWRITER_typedef_NSEnergyFormatter
typedef struct objc_object NSEnergyFormatter;
typedef struct {} _objc_exc_NSEnergyFormatter;
#endif

struct NSEnergyFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	void *_formatter;
	BOOL _isForFoodEnergyUse;
	void *_reserved[2];
};

// @property (null_resettable, copy) NSNumberFormatter *numberFormatter;
// @property NSFormattingUnitStyle unitStyle;
// @property (getter = isForFoodEnergyUse) BOOL forFoodEnergyUse;


// - (NSString *)stringFromValue:(double)value unit:(NSEnergyFormatterUnit)unit;


// - (NSString *)stringFromJoules:(double)numberInJoules;


// - (NSString *)unitStringFromValue:(double)value unit:(NSEnergyFormatterUnit)unit;


// - (NSString *)unitStringFromJoules:(double)numberInJoules usedUnit:(nullable NSEnergyFormatterUnit *)unitp;


// - (BOOL)getObjectValue:(out id _Nullable * _Nullable)obj forString:(NSString *)string errorDescription:(out NSString * _Nullable * _Nullable)error;
/* @end */

#pragma clang assume_nonnull end















#pragma clang assume_nonnull begin





__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitConverter
#define _REWRITER_typedef_NSUnitConverter
typedef struct objc_object NSUnitConverter;
typedef struct {} _objc_exc_NSUnitConverter;
#endif

struct NSUnitConverter_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};

// - (double)baseUnitValueFromValue:(double)value;






// - (double)valueFromBaseUnitValue:(double)baseUnitValue;

/* @end */



__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitConverterLinear
#define _REWRITER_typedef_NSUnitConverterLinear
typedef struct objc_object NSUnitConverterLinear;
typedef struct {} _objc_exc_NSUnitConverterLinear;
#endif

struct NSUnitConverterLinear_IMPL {
	struct NSUnitConverter_IMPL NSUnitConverter_IVARS;
	double _coefficient;
	double _constant;
};

// @property (readonly) double coefficient;
// @property (readonly) double constant;

// - (instancetype)initWithCoefficient:(double)coefficient;

// - (instancetype)initWithCoefficient:(double)coefficient constant:(double)constant __attribute__((objc_designated_initializer));

/* @end */







__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnit
#define _REWRITER_typedef_NSUnit
typedef struct objc_object NSUnit;
typedef struct {} _objc_exc_NSUnit;
#endif

struct NSUnit_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSString *_symbol;
};


// @property (readonly, copy) NSString *symbol;

// - (instancetype)init __attribute__((availability(macos,unavailable))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// + (instancetype)new __attribute__((availability(macos,unavailable))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

// - (instancetype)initWithSymbol:(NSString *)symbol __attribute__((objc_designated_initializer));

/* @end */





__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSDimension
#define _REWRITER_typedef_NSDimension
typedef struct objc_object NSDimension;
typedef struct {} _objc_exc_NSDimension;
#endif

struct NSDimension_IMPL {
	struct NSUnit_IMPL NSUnit_IVARS;
	NSUInteger _reserved;
	NSUnitConverter *_converter;
};


// @property (readonly, copy) NSUnitConverter *converter;

// - (instancetype)initWithSymbol:(NSString *)symbol converter:(NSUnitConverter *)converter __attribute__((objc_designated_initializer));






// + (instancetype)baseUnit;

/* @end */





__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitAcceleration
#define _REWRITER_typedef_NSUnitAcceleration
typedef struct objc_object NSUnitAcceleration;
typedef struct {} _objc_exc_NSUnitAcceleration;
#endif

struct NSUnitAcceleration_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitAcceleration *metersPerSecondSquared;
@property (class, readonly, copy) NSUnitAcceleration *gravity;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitAngle
#define _REWRITER_typedef_NSUnitAngle
typedef struct objc_object NSUnitAngle;
typedef struct {} _objc_exc_NSUnitAngle;
#endif

struct NSUnitAngle_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitAngle *degrees;
@property (class, readonly, copy) NSUnitAngle *arcMinutes;
@property (class, readonly, copy) NSUnitAngle *arcSeconds;
@property (class, readonly, copy) NSUnitAngle *radians;
@property (class, readonly, copy) NSUnitAngle *gradians;
@property (class, readonly, copy) NSUnitAngle *revolutions;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitArea
#define _REWRITER_typedef_NSUnitArea
typedef struct objc_object NSUnitArea;
typedef struct {} _objc_exc_NSUnitArea;
#endif

struct NSUnitArea_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitArea *squareMegameters;
@property (class, readonly, copy) NSUnitArea *squareKilometers;
@property (class, readonly, copy) NSUnitArea *squareMeters;
@property (class, readonly, copy) NSUnitArea *squareCentimeters;
@property (class, readonly, copy) NSUnitArea *squareMillimeters;
@property (class, readonly, copy) NSUnitArea *squareMicrometers;
@property (class, readonly, copy) NSUnitArea *squareNanometers;
@property (class, readonly, copy) NSUnitArea *squareInches;
@property (class, readonly, copy) NSUnitArea *squareFeet;
@property (class, readonly, copy) NSUnitArea *squareYards;
@property (class, readonly, copy) NSUnitArea *squareMiles;
@property (class, readonly, copy) NSUnitArea *acres;
@property (class, readonly, copy) NSUnitArea *ares;
@property (class, readonly, copy) NSUnitArea *hectares;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitConcentrationMass
#define _REWRITER_typedef_NSUnitConcentrationMass
typedef struct objc_object NSUnitConcentrationMass;
typedef struct {} _objc_exc_NSUnitConcentrationMass;
#endif

struct NSUnitConcentrationMass_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitConcentrationMass *gramsPerLiter;
@property (class, readonly, copy) NSUnitConcentrationMass *milligramsPerDeciliter;

// + (NSUnitConcentrationMass *)millimolesPerLiterWithGramsPerMole:(double)gramsPerMole;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitDispersion
#define _REWRITER_typedef_NSUnitDispersion
typedef struct objc_object NSUnitDispersion;
typedef struct {} _objc_exc_NSUnitDispersion;
#endif

struct NSUnitDispersion_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};




@property (class, readonly, copy) NSUnitDispersion *partsPerMillion;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitDuration
#define _REWRITER_typedef_NSUnitDuration
typedef struct objc_object NSUnitDuration;
typedef struct {} _objc_exc_NSUnitDuration;
#endif

struct NSUnitDuration_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitDuration *hours;
@property (class, readonly, copy) NSUnitDuration *minutes;
@property (class, readonly, copy) NSUnitDuration *seconds;
@property (class, readonly, copy) NSUnitDuration *milliseconds __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));
@property (class, readonly, copy) NSUnitDuration *microseconds __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));
@property (class, readonly, copy) NSUnitDuration *nanoseconds __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));
@property (class, readonly, copy) NSUnitDuration *picoseconds __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitElectricCharge
#define _REWRITER_typedef_NSUnitElectricCharge
typedef struct objc_object NSUnitElectricCharge;
typedef struct {} _objc_exc_NSUnitElectricCharge;
#endif

struct NSUnitElectricCharge_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitElectricCharge *coulombs;
@property (class, readonly, copy) NSUnitElectricCharge *megaampereHours;
@property (class, readonly, copy) NSUnitElectricCharge *kiloampereHours;
@property (class, readonly, copy) NSUnitElectricCharge *ampereHours;
@property (class, readonly, copy) NSUnitElectricCharge *milliampereHours;
@property (class, readonly, copy) NSUnitElectricCharge *microampereHours;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitElectricCurrent
#define _REWRITER_typedef_NSUnitElectricCurrent
typedef struct objc_object NSUnitElectricCurrent;
typedef struct {} _objc_exc_NSUnitElectricCurrent;
#endif

struct NSUnitElectricCurrent_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitElectricCurrent *megaamperes;
@property (class, readonly, copy) NSUnitElectricCurrent *kiloamperes;
@property (class, readonly, copy) NSUnitElectricCurrent *amperes;
@property (class, readonly, copy) NSUnitElectricCurrent *milliamperes;
@property (class, readonly, copy) NSUnitElectricCurrent *microamperes;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitElectricPotentialDifference
#define _REWRITER_typedef_NSUnitElectricPotentialDifference
typedef struct objc_object NSUnitElectricPotentialDifference;
typedef struct {} _objc_exc_NSUnitElectricPotentialDifference;
#endif

struct NSUnitElectricPotentialDifference_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitElectricPotentialDifference *megavolts;
@property (class, readonly, copy) NSUnitElectricPotentialDifference *kilovolts;
@property (class, readonly, copy) NSUnitElectricPotentialDifference *volts;
@property (class, readonly, copy) NSUnitElectricPotentialDifference *millivolts;
@property (class, readonly, copy) NSUnitElectricPotentialDifference *microvolts;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitElectricResistance
#define _REWRITER_typedef_NSUnitElectricResistance
typedef struct objc_object NSUnitElectricResistance;
typedef struct {} _objc_exc_NSUnitElectricResistance;
#endif

struct NSUnitElectricResistance_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitElectricResistance *megaohms;
@property (class, readonly, copy) NSUnitElectricResistance *kiloohms;
@property (class, readonly, copy) NSUnitElectricResistance *ohms;
@property (class, readonly, copy) NSUnitElectricResistance *milliohms;
@property (class, readonly, copy) NSUnitElectricResistance *microohms;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitEnergy
#define _REWRITER_typedef_NSUnitEnergy
typedef struct objc_object NSUnitEnergy;
typedef struct {} _objc_exc_NSUnitEnergy;
#endif

struct NSUnitEnergy_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitEnergy *kilojoules;
@property (class, readonly, copy) NSUnitEnergy *joules;
@property (class, readonly, copy) NSUnitEnergy *kilocalories;
@property (class, readonly, copy) NSUnitEnergy *calories;
@property (class, readonly, copy) NSUnitEnergy *kilowattHours;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitFrequency
#define _REWRITER_typedef_NSUnitFrequency
typedef struct objc_object NSUnitFrequency;
typedef struct {} _objc_exc_NSUnitFrequency;
#endif

struct NSUnitFrequency_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitFrequency *terahertz;
@property (class, readonly, copy) NSUnitFrequency *gigahertz;
@property (class, readonly, copy) NSUnitFrequency *megahertz;
@property (class, readonly, copy) NSUnitFrequency *kilohertz;
@property (class, readonly, copy) NSUnitFrequency *hertz;
@property (class, readonly, copy) NSUnitFrequency *millihertz;
@property (class, readonly, copy) NSUnitFrequency *microhertz;
@property (class, readonly, copy) NSUnitFrequency *nanohertz;


@property (class, readonly, copy) NSUnitFrequency *framesPerSecond __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitFuelEfficiency
#define _REWRITER_typedef_NSUnitFuelEfficiency
typedef struct objc_object NSUnitFuelEfficiency;
typedef struct {} _objc_exc_NSUnitFuelEfficiency;
#endif

struct NSUnitFuelEfficiency_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitFuelEfficiency *litersPer100Kilometers;
@property (class, readonly, copy) NSUnitFuelEfficiency *milesPerImperialGallon;
@property (class, readonly, copy) NSUnitFuelEfficiency *milesPerGallon;

/* @end */








__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)))
__attribute__((swift_name("UnitInformationStorage")))

#ifndef _REWRITER_typedef_NSUnitInformationStorage
#define _REWRITER_typedef_NSUnitInformationStorage
typedef struct objc_object NSUnitInformationStorage;
typedef struct {} _objc_exc_NSUnitInformationStorage;
#endif

struct NSUnitInformationStorage_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};



@property (readonly, class, copy) NSUnitInformationStorage *bytes;


@property (readonly, class, copy) NSUnitInformationStorage *bits;
@property (readonly, class, copy) NSUnitInformationStorage *nibbles;



@property (readonly, class, copy) NSUnitInformationStorage *yottabytes;
@property (readonly, class, copy) NSUnitInformationStorage *zettabytes;
@property (readonly, class, copy) NSUnitInformationStorage *exabytes;
@property (readonly, class, copy) NSUnitInformationStorage *petabytes;
@property (readonly, class, copy) NSUnitInformationStorage *terabytes;
@property (readonly, class, copy) NSUnitInformationStorage *gigabytes;
@property (readonly, class, copy) NSUnitInformationStorage *megabytes;
@property (readonly, class, copy) NSUnitInformationStorage *kilobytes;

@property (readonly, class, copy) NSUnitInformationStorage *yottabits;
@property (readonly, class, copy) NSUnitInformationStorage *zettabits;
@property (readonly, class, copy) NSUnitInformationStorage *exabits;
@property (readonly, class, copy) NSUnitInformationStorage *petabits;
@property (readonly, class, copy) NSUnitInformationStorage *terabits;
@property (readonly, class, copy) NSUnitInformationStorage *gigabits;
@property (readonly, class, copy) NSUnitInformationStorage *megabits;
@property (readonly, class, copy) NSUnitInformationStorage *kilobits;



@property (readonly, class, copy) NSUnitInformationStorage *yobibytes;
@property (readonly, class, copy) NSUnitInformationStorage *zebibytes;
@property (readonly, class, copy) NSUnitInformationStorage *exbibytes;
@property (readonly, class, copy) NSUnitInformationStorage *pebibytes;
@property (readonly, class, copy) NSUnitInformationStorage *tebibytes;
@property (readonly, class, copy) NSUnitInformationStorage *gibibytes;
@property (readonly, class, copy) NSUnitInformationStorage *mebibytes;
@property (readonly, class, copy) NSUnitInformationStorage *kibibytes;

@property (readonly, class, copy) NSUnitInformationStorage *yobibits;
@property (readonly, class, copy) NSUnitInformationStorage *zebibits;
@property (readonly, class, copy) NSUnitInformationStorage *exbibits;
@property (readonly, class, copy) NSUnitInformationStorage *pebibits;
@property (readonly, class, copy) NSUnitInformationStorage *tebibits;
@property (readonly, class, copy) NSUnitInformationStorage *gibibits;
@property (readonly, class, copy) NSUnitInformationStorage *mebibits;
@property (readonly, class, copy) NSUnitInformationStorage *kibibits;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitLength
#define _REWRITER_typedef_NSUnitLength
typedef struct objc_object NSUnitLength;
typedef struct {} _objc_exc_NSUnitLength;
#endif

struct NSUnitLength_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitLength *megameters;
@property (class, readonly, copy) NSUnitLength *kilometers;
@property (class, readonly, copy) NSUnitLength *hectometers;
@property (class, readonly, copy) NSUnitLength *decameters;
@property (class, readonly, copy) NSUnitLength *meters;
@property (class, readonly, copy) NSUnitLength *decimeters;
@property (class, readonly, copy) NSUnitLength *centimeters;
@property (class, readonly, copy) NSUnitLength *millimeters;
@property (class, readonly, copy) NSUnitLength *micrometers;
@property (class, readonly, copy) NSUnitLength *nanometers;
@property (class, readonly, copy) NSUnitLength *picometers;
@property (class, readonly, copy) NSUnitLength *inches;
@property (class, readonly, copy) NSUnitLength *feet;
@property (class, readonly, copy) NSUnitLength *yards;
@property (class, readonly, copy) NSUnitLength *miles;
@property (class, readonly, copy) NSUnitLength *scandinavianMiles;
@property (class, readonly, copy) NSUnitLength *lightyears;
@property (class, readonly, copy) NSUnitLength *nauticalMiles;
@property (class, readonly, copy) NSUnitLength *fathoms;
@property (class, readonly, copy) NSUnitLength *furlongs;
@property (class, readonly, copy) NSUnitLength *astronomicalUnits;
@property (class, readonly, copy) NSUnitLength *parsecs;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitIlluminance
#define _REWRITER_typedef_NSUnitIlluminance
typedef struct objc_object NSUnitIlluminance;
typedef struct {} _objc_exc_NSUnitIlluminance;
#endif

struct NSUnitIlluminance_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitIlluminance *lux;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitMass
#define _REWRITER_typedef_NSUnitMass
typedef struct objc_object NSUnitMass;
typedef struct {} _objc_exc_NSUnitMass;
#endif

struct NSUnitMass_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitMass *kilograms;
@property (class, readonly, copy) NSUnitMass *grams;
@property (class, readonly, copy) NSUnitMass *decigrams;
@property (class, readonly, copy) NSUnitMass *centigrams;
@property (class, readonly, copy) NSUnitMass *milligrams;
@property (class, readonly, copy) NSUnitMass *micrograms;
@property (class, readonly, copy) NSUnitMass *nanograms;
@property (class, readonly, copy) NSUnitMass *picograms;
@property (class, readonly, copy) NSUnitMass *ounces;
@property (class, readonly, copy) NSUnitMass *poundsMass;
@property (class, readonly, copy) NSUnitMass *stones;
@property (class, readonly, copy) NSUnitMass *metricTons;
@property (class, readonly, copy) NSUnitMass *shortTons;
@property (class, readonly, copy) NSUnitMass *carats;
@property (class, readonly, copy) NSUnitMass *ouncesTroy;
@property (class, readonly, copy) NSUnitMass *slugs;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitPower
#define _REWRITER_typedef_NSUnitPower
typedef struct objc_object NSUnitPower;
typedef struct {} _objc_exc_NSUnitPower;
#endif

struct NSUnitPower_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitPower *terawatts;
@property (class, readonly, copy) NSUnitPower *gigawatts;
@property (class, readonly, copy) NSUnitPower *megawatts;
@property (class, readonly, copy) NSUnitPower *kilowatts;
@property (class, readonly, copy) NSUnitPower *watts;
@property (class, readonly, copy) NSUnitPower *milliwatts;
@property (class, readonly, copy) NSUnitPower *microwatts;
@property (class, readonly, copy) NSUnitPower *nanowatts;
@property (class, readonly, copy) NSUnitPower *picowatts;
@property (class, readonly, copy) NSUnitPower *femtowatts;
@property (class, readonly, copy) NSUnitPower *horsepower;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitPressure
#define _REWRITER_typedef_NSUnitPressure
typedef struct objc_object NSUnitPressure;
typedef struct {} _objc_exc_NSUnitPressure;
#endif

struct NSUnitPressure_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitPressure *newtonsPerMetersSquared;
@property (class, readonly, copy) NSUnitPressure *gigapascals;
@property (class, readonly, copy) NSUnitPressure *megapascals;
@property (class, readonly, copy) NSUnitPressure *kilopascals;
@property (class, readonly, copy) NSUnitPressure *hectopascals;
@property (class, readonly, copy) NSUnitPressure *inchesOfMercury;
@property (class, readonly, copy) NSUnitPressure *bars;
@property (class, readonly, copy) NSUnitPressure *millibars;
@property (class, readonly, copy) NSUnitPressure *millimetersOfMercury;
@property (class, readonly, copy) NSUnitPressure *poundsForcePerSquareInch;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitSpeed
#define _REWRITER_typedef_NSUnitSpeed
typedef struct objc_object NSUnitSpeed;
typedef struct {} _objc_exc_NSUnitSpeed;
#endif

struct NSUnitSpeed_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitSpeed *metersPerSecond;
@property (class, readonly, copy) NSUnitSpeed *kilometersPerHour;
@property (class, readonly, copy) NSUnitSpeed *milesPerHour;
@property (class, readonly, copy) NSUnitSpeed *knots;

/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitTemperature
#define _REWRITER_typedef_NSUnitTemperature
typedef struct objc_object NSUnitTemperature;
typedef struct {} _objc_exc_NSUnitTemperature;
#endif

struct NSUnitTemperature_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};




@property (class, readonly, copy) NSUnitTemperature *kelvin;
@property (class, readonly, copy) NSUnitTemperature *celsius;
@property (class, readonly, copy) NSUnitTemperature *fahrenheit;


/* @end */


__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSUnitVolume
#define _REWRITER_typedef_NSUnitVolume
typedef struct objc_object NSUnitVolume;
typedef struct {} _objc_exc_NSUnitVolume;
#endif

struct NSUnitVolume_IMPL {
	struct NSDimension_IMPL NSDimension_IVARS;
};





@property (class, readonly, copy) NSUnitVolume *megaliters;
@property (class, readonly, copy) NSUnitVolume *kiloliters;
@property (class, readonly, copy) NSUnitVolume *liters;
@property (class, readonly, copy) NSUnitVolume *deciliters;
@property (class, readonly, copy) NSUnitVolume *centiliters;
@property (class, readonly, copy) NSUnitVolume *milliliters;
@property (class, readonly, copy) NSUnitVolume *cubicKilometers;
@property (class, readonly, copy) NSUnitVolume *cubicMeters;
@property (class, readonly, copy) NSUnitVolume *cubicDecimeters;
@property (class, readonly, copy) NSUnitVolume *cubicCentimeters;
@property (class, readonly, copy) NSUnitVolume *cubicMillimeters;
@property (class, readonly, copy) NSUnitVolume *cubicInches;
@property (class, readonly, copy) NSUnitVolume *cubicFeet;
@property (class, readonly, copy) NSUnitVolume *cubicYards;
@property (class, readonly, copy) NSUnitVolume *cubicMiles;
@property (class, readonly, copy) NSUnitVolume *acreFeet;
@property (class, readonly, copy) NSUnitVolume *bushels;
@property (class, readonly, copy) NSUnitVolume *teaspoons;
@property (class, readonly, copy) NSUnitVolume *tablespoons;
@property (class, readonly, copy) NSUnitVolume *fluidOunces;
@property (class, readonly, copy) NSUnitVolume *cups;
@property (class, readonly, copy) NSUnitVolume *pints;
@property (class, readonly, copy) NSUnitVolume *quarts;
@property (class, readonly, copy) NSUnitVolume *gallons;
@property (class, readonly, copy) NSUnitVolume *imperialTeaspoons;
@property (class, readonly, copy) NSUnitVolume *imperialTablespoons;
@property (class, readonly, copy) NSUnitVolume *imperialFluidOunces;
@property (class, readonly, copy) NSUnitVolume *imperialPints;
@property (class, readonly, copy) NSUnitVolume *imperialQuarts;
@property (class, readonly, copy) NSUnitVolume *imperialGallons;
@property (class, readonly, copy) NSUnitVolume *metricCups;

/* @end */

#pragma clang assume_nonnull end

#pragma clang assume_nonnull begin

__attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSMeasurement
#define _REWRITER_typedef_NSMeasurement
typedef struct objc_object NSMeasurement;
typedef struct {} _objc_exc_NSMeasurement;
#endif

struct NSMeasurement_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	UnitType _unit;
	double _doubleValue;
};


// @property (readonly, copy) UnitType unit;
// @property (readonly) double doubleValue;

// - (instancetype)init __attribute__((availability(macos,unavailable))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// - (instancetype)initWithDoubleValue:(double)doubleValue unit:(UnitType)unit __attribute__((objc_designated_initializer));





// - (BOOL)canBeConvertedToUnit:(NSUnit *)unit;






// - (NSMeasurement *)measurementByConvertingToUnit:(NSUnit *)unit;






// - (NSMeasurement<UnitType> *)measurementByAddingMeasurement:(NSMeasurement<UnitType> *)measurement;
// - (NSMeasurement<UnitType> *)measurementBySubtractingMeasurement:(NSMeasurement<UnitType> *)measurement;

/* @end */

#pragma clang assume_nonnull end















// @class NSLocale;
#ifndef _REWRITER_typedef_NSLocale
#define _REWRITER_typedef_NSLocale
typedef struct objc_object NSLocale;
typedef struct {} _objc_exc_NSLocale;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSMutableDictionary
#define _REWRITER_typedef_NSMutableDictionary
typedef struct objc_object NSMutableDictionary;
typedef struct {} _objc_exc_NSMutableDictionary;
#endif

#ifndef _REWRITER_typedef_NSRecursiveLock
#define _REWRITER_typedef_NSRecursiveLock
typedef struct objc_object NSRecursiveLock;
typedef struct {} _objc_exc_NSRecursiveLock;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSCache
#define _REWRITER_typedef_NSCache
typedef struct objc_object NSCache;
typedef struct {} _objc_exc_NSCache;
#endif


#pragma clang assume_nonnull begin

typedef NSUInteger NSNumberFormatterBehavior; enum {
    NSNumberFormatterBehaviorDefault = 0,



    NSNumberFormatterBehavior10_4 = 1040,
};


#ifndef _REWRITER_typedef_NSNumberFormatter
#define _REWRITER_typedef_NSNumberFormatter
typedef struct objc_object NSNumberFormatter;
typedef struct {} _objc_exc_NSNumberFormatter;
#endif

struct NSNumberFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	NSMutableDictionary *_attributes;
	CFNumberFormatterRef _formatter;
	NSUInteger _counter;
	NSNumberFormatterBehavior _behavior;
	NSRecursiveLock *_lock;
	unsigned long _stateBitMask;
	NSInteger _cacheGeneration;
	void *_reserved[8];
};


// @property NSFormattingContext formattingContext __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)getObjectValue:(out id _Nullable * _Nullable)obj forString:(NSString *)string range:(inout nullable NSRange *)rangep error:(out NSError **)error;




// - (nullable NSString *)stringFromNumber:(NSNumber *)number;
// - (nullable NSNumber *)numberFromString:(NSString *)string;

typedef NSUInteger NSNumberFormatterStyle; enum {
    NSNumberFormatterNoStyle = kCFNumberFormatterNoStyle,
    NSNumberFormatterDecimalStyle = kCFNumberFormatterDecimalStyle,
    NSNumberFormatterCurrencyStyle = kCFNumberFormatterCurrencyStyle,
    NSNumberFormatterPercentStyle = kCFNumberFormatterPercentStyle,
    NSNumberFormatterScientificStyle = kCFNumberFormatterScientificStyle,
    NSNumberFormatterSpellOutStyle = kCFNumberFormatterSpellOutStyle,
    NSNumberFormatterOrdinalStyle __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = kCFNumberFormatterOrdinalStyle,
    NSNumberFormatterCurrencyISOCodeStyle __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = kCFNumberFormatterCurrencyISOCodeStyle,
    NSNumberFormatterCurrencyPluralStyle __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = kCFNumberFormatterCurrencyPluralStyle,
    NSNumberFormatterCurrencyAccountingStyle __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = kCFNumberFormatterCurrencyAccountingStyle,
};

// + (NSString *)localizedStringFromNumber:(NSNumber *)num numberStyle:(NSNumberFormatterStyle)nstyle __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (NSNumberFormatterBehavior)defaultFormatterBehavior;
// + (void)setDefaultFormatterBehavior:(NSNumberFormatterBehavior)behavior;

// @property NSNumberFormatterStyle numberStyle;
// @property (null_resettable, copy) NSLocale *locale;
// @property BOOL generatesDecimalNumbers;
// @property NSNumberFormatterBehavior formatterBehavior;

// @property (null_resettable, copy) NSString *negativeFormat;
// @property (nullable, copy) NSDictionary<NSString *, id> *textAttributesForNegativeValues;
// @property (null_resettable, copy) NSString *positiveFormat;
// @property (nullable, copy) NSDictionary<NSString *, id> *textAttributesForPositiveValues;
// @property BOOL allowsFloats;
// @property (null_resettable, copy) NSString *decimalSeparator;
// @property BOOL alwaysShowsDecimalSeparator;
// @property (null_resettable, copy) NSString *currencyDecimalSeparator;
// @property BOOL usesGroupingSeparator;
// @property (null_resettable, copy) NSString *groupingSeparator;

// @property (nullable, copy) NSString *zeroSymbol;
// @property (nullable, copy) NSDictionary<NSString *, id> *textAttributesForZero;
// @property (copy) NSString *nilSymbol;
// @property (nullable, copy) NSDictionary<NSString *, id> *textAttributesForNil;
// @property (null_resettable, copy) NSString *notANumberSymbol;
// @property (nullable, copy) NSDictionary<NSString *, id> *textAttributesForNotANumber;
// @property (copy) NSString *positiveInfinitySymbol;
// @property (nullable, copy) NSDictionary<NSString *, id> *textAttributesForPositiveInfinity;
// @property (copy) NSString *negativeInfinitySymbol;
// @property (nullable, copy) NSDictionary<NSString *, id> *textAttributesForNegativeInfinity;

// @property (null_resettable, copy) NSString *positivePrefix;
// @property (null_resettable, copy) NSString *positiveSuffix;
// @property (null_resettable, copy) NSString *negativePrefix;
// @property (null_resettable, copy) NSString *negativeSuffix;
// @property (null_resettable, copy) NSString *currencyCode;
// @property (null_resettable, copy) NSString *currencySymbol;
// @property (null_resettable, copy) NSString *internationalCurrencySymbol;
// @property (null_resettable, copy) NSString *percentSymbol;
// @property (null_resettable, copy) NSString *perMillSymbol;
// @property (null_resettable, copy) NSString *minusSign;
// @property (null_resettable, copy) NSString *plusSign;
// @property (null_resettable, copy) NSString *exponentSymbol;

// @property NSUInteger groupingSize;
// @property NSUInteger secondaryGroupingSize;
// @property (nullable, copy) NSNumber *multiplier;
// @property NSUInteger formatWidth;
// @property (null_resettable, copy) NSString *paddingCharacter;


typedef NSUInteger NSNumberFormatterPadPosition; enum {
    NSNumberFormatterPadBeforePrefix = kCFNumberFormatterPadBeforePrefix,
    NSNumberFormatterPadAfterPrefix = kCFNumberFormatterPadAfterPrefix,
    NSNumberFormatterPadBeforeSuffix = kCFNumberFormatterPadBeforeSuffix,
    NSNumberFormatterPadAfterSuffix = kCFNumberFormatterPadAfterSuffix
};

typedef NSUInteger NSNumberFormatterRoundingMode; enum {
    NSNumberFormatterRoundCeiling = kCFNumberFormatterRoundCeiling,
    NSNumberFormatterRoundFloor = kCFNumberFormatterRoundFloor,
    NSNumberFormatterRoundDown = kCFNumberFormatterRoundDown,
    NSNumberFormatterRoundUp = kCFNumberFormatterRoundUp,
    NSNumberFormatterRoundHalfEven = kCFNumberFormatterRoundHalfEven,
    NSNumberFormatterRoundHalfDown = kCFNumberFormatterRoundHalfDown,
    NSNumberFormatterRoundHalfUp = kCFNumberFormatterRoundHalfUp
};

// @property NSNumberFormatterPadPosition paddingPosition;
// @property NSNumberFormatterRoundingMode roundingMode;
// @property (null_resettable, copy) NSNumber *roundingIncrement;
// @property NSUInteger minimumIntegerDigits;
// @property NSUInteger maximumIntegerDigits;
// @property NSUInteger minimumFractionDigits;
// @property NSUInteger maximumFractionDigits;
// @property (nullable, copy) NSNumber *minimum;
// @property (nullable, copy) NSNumber *maximum;
// @property (null_resettable, copy) NSString *currencyGroupingSeparator __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (getter=isLenient) BOOL lenient __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property BOOL usesSignificantDigits __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property NSUInteger minimumSignificantDigits __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property NSUInteger maximumSignificantDigits __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (getter=isPartialStringValidationEnabled) BOOL partialStringValidationEnabled __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @class NSDecimalNumberHandler;
#ifndef _REWRITER_typedef_NSDecimalNumberHandler
#define _REWRITER_typedef_NSDecimalNumberHandler
typedef struct objc_object NSDecimalNumberHandler;
typedef struct {} _objc_exc_NSDecimalNumberHandler;
#endif

#pragma clang assume_nonnull end









// @class NSCalendar;
#ifndef _REWRITER_typedef_NSCalendar
#define _REWRITER_typedef_NSCalendar
typedef struct objc_object NSCalendar;
typedef struct {} _objc_exc_NSCalendar;
#endif


typedef NSString * NSLocaleKey __attribute__((swift_wrapper(enum)));

// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif




#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSLocale
#define _REWRITER_typedef_NSLocale
typedef struct objc_object NSLocale;
typedef struct {} _objc_exc_NSLocale;
#endif

struct NSLocale_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// - (nullable id)objectForKey:(NSLocaleKey)key;

// - (nullable NSString *)displayNameForKey:(NSLocaleKey)key value:(id)value;

// - (instancetype)initWithLocaleIdentifier:(NSString *)string __attribute__((objc_designated_initializer));

// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSLocale (NSExtendedLocale)

// @property (readonly, copy) NSString *localeIdentifier;
// - (NSString *)localizedStringForLocaleIdentifier:(NSString *)localeIdentifier __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSString *languageCode __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
// - (nullable NSString *)localizedStringForLanguageCode:(NSString *)languageCode __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (nullable, readonly, copy) NSString *countryCode __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
// - (nullable NSString *)localizedStringForCountryCode:(NSString *)countryCode __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (nullable, readonly, copy) NSString *scriptCode __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
// - (nullable NSString *)localizedStringForScriptCode:(NSString *)scriptCode __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (nullable, readonly, copy) NSString *variantCode __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
// - (nullable NSString *)localizedStringForVariantCode:(NSString *)variantCode __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSCharacterSet *exemplarCharacterSet __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSString *calendarIdentifier __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
// - (nullable NSString *)localizedStringForCalendarIdentifier:(NSString *)calendarIdentifier __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (nullable, readonly, copy) NSString *collationIdentifier __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
// - (nullable NSString *)localizedStringForCollationIdentifier:(NSString *)collationIdentifier __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly) BOOL usesMetricSystem __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSString *decimalSeparator __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSString *groupingSeparator __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSString *currencySymbol __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (nullable, readonly, copy) NSString *currencyCode __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
// - (nullable NSString *)localizedStringForCurrencyCode:(NSString *)currencyCode __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSString *collatorIdentifier __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
// - (nullable NSString *)localizedStringForCollatorIdentifier:(NSString *)collatorIdentifier __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSString *quotationBeginDelimiter __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSString *quotationEndDelimiter __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSString *alternateQuotationBeginDelimiter __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, copy) NSString *alternateQuotationEndDelimiter __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

/* @end */


// @interface NSLocale (NSLocaleCreation)

@property (class, readonly, strong) NSLocale *autoupdatingCurrentLocale __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

@property (class, readonly, copy) NSLocale *currentLocale;
@property (class, readonly, copy) NSLocale *systemLocale;

// + (instancetype)localeWithLocaleIdentifier:(NSString *)ident __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (instancetype)init __attribute__((availability(macos,unavailable))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

/* @end */


// @interface NSLocale (NSLocaleGeneralInfo)

@property (class, readonly, copy) NSArray<NSString *> *availableLocaleIdentifiers;
@property (class, readonly, copy) NSArray<NSString *> *ISOLanguageCodes;
@property (class, readonly, copy) NSArray<NSString *> *ISOCountryCodes;
@property (class, readonly, copy) NSArray<NSString *> *ISOCurrencyCodes;
@property (class, readonly, copy) NSArray<NSString *> *commonISOCurrencyCodes __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

@property (class, readonly, copy) NSArray<NSString *> *preferredLanguages __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (NSDictionary<NSString *, NSString *> *)componentsFromLocaleIdentifier:(NSString *)string;
// + (NSString *)localeIdentifierFromComponents:(NSDictionary<NSString *, NSString *> *)dict;

// + (NSString *)canonicalLocaleIdentifierFromString:(NSString *)string;
// + (NSString *)canonicalLanguageIdentifierFromString:(NSString *)string;

// + (nullable NSString *)localeIdentifierFromWindowsLocaleCode:(uint32_t)lcid __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (uint32_t)windowsLocaleCodeFromLocaleIdentifier:(NSString *)localeIdentifier __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSUInteger NSLocaleLanguageDirection; enum {
    NSLocaleLanguageDirectionUnknown = kCFLocaleLanguageDirectionUnknown,
    NSLocaleLanguageDirectionLeftToRight = kCFLocaleLanguageDirectionLeftToRight,
    NSLocaleLanguageDirectionRightToLeft = kCFLocaleLanguageDirectionRightToLeft,
    NSLocaleLanguageDirectionTopToBottom = kCFLocaleLanguageDirectionTopToBottom,
    NSLocaleLanguageDirectionBottomToTop = kCFLocaleLanguageDirectionBottomToTop
};

// + (NSLocaleLanguageDirection)characterDirectionForLanguage:(NSString *)isoLangCode __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSLocaleLanguageDirection)lineDirectionForLanguage:(NSString *)isoLangCode __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */



extern "C" NSNotificationName const NSCurrentLocaleDidChangeNotification __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSLocaleKey const NSLocaleIdentifier;
extern "C" NSLocaleKey const NSLocaleLanguageCode;
extern "C" NSLocaleKey const NSLocaleCountryCode;
extern "C" NSLocaleKey const NSLocaleScriptCode;
extern "C" NSLocaleKey const NSLocaleVariantCode;
extern "C" NSLocaleKey const NSLocaleExemplarCharacterSet;
extern "C" NSLocaleKey const NSLocaleCalendar;
extern "C" NSLocaleKey const NSLocaleCollationIdentifier;
extern "C" NSLocaleKey const NSLocaleUsesMetricSystem;
extern "C" NSLocaleKey const NSLocaleMeasurementSystem;
extern "C" NSLocaleKey const NSLocaleDecimalSeparator;
extern "C" NSLocaleKey const NSLocaleGroupingSeparator;
extern "C" NSLocaleKey const NSLocaleCurrencySymbol;
extern "C" NSLocaleKey const NSLocaleCurrencyCode;
extern "C" NSLocaleKey const NSLocaleCollatorIdentifier __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLocaleKey const NSLocaleQuotationBeginDelimiterKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLocaleKey const NSLocaleQuotationEndDelimiterKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLocaleKey const NSLocaleAlternateQuotationBeginDelimiterKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLocaleKey const NSLocaleAlternateQuotationEndDelimiterKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSGregorianCalendar __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarIdentifierGregorian"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarIdentifierGregorian"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierGregorian"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierGregorian")));
extern "C" NSString * const NSBuddhistCalendar __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarIdentifierBuddhist"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarIdentifierBuddhist"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierBuddhist"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierBuddhist")));
extern "C" NSString * const NSChineseCalendar __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarIdentifierChinese"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarIdentifierChinese"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierChinese"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierChinese")));
extern "C" NSString * const NSHebrewCalendar __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarIdentifierHebrew"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarIdentifierHebrew"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierHebrew"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierHebrew")));
extern "C" NSString * const NSIslamicCalendar __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarIdentifierIslamic"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarIdentifierIslamic"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierIslamic"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierIslamic")));
extern "C" NSString * const NSIslamicCivilCalendar __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarIdentifierIslamicCivil"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarIdentifierIslamicCivil"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierIslamicCivil"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierIslamicCivil")));
extern "C" NSString * const NSJapaneseCalendar __attribute__((availability(macos,introduced=10.4,deprecated=10.10,replacement="NSCalendarIdentifierJapanese"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,replacement="NSCalendarIdentifierJapanese"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierJapanese"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierJapanese")));
extern "C" NSString * const NSRepublicOfChinaCalendar __attribute__((availability(macos,introduced=10.6,deprecated=10.10,replacement="NSCalendarIdentifierRepublicOfChina"))) __attribute__((availability(ios,introduced=4.0,deprecated=8.0,replacement="NSCalendarIdentifierRepublicOfChina"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierRepublicOfChina"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierRepublicOfChina")));
extern "C" NSString * const NSPersianCalendar __attribute__((availability(macos,introduced=10.6,deprecated=10.10,replacement="NSCalendarIdentifierPersian"))) __attribute__((availability(ios,introduced=4.0,deprecated=8.0,replacement="NSCalendarIdentifierPersian"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierPersian"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierPersian")));
extern "C" NSString * const NSIndianCalendar __attribute__((availability(macos,introduced=10.6,deprecated=10.10,replacement="NSCalendarIdentifierIndian"))) __attribute__((availability(ios,introduced=4.0,deprecated=8.0,replacement="NSCalendarIdentifierIndian"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierIndian"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierIndian")));
extern "C" NSString * const NSISO8601Calendar __attribute__((availability(macos,introduced=10.6,deprecated=10.10,replacement="NSCalendarIdentifierISO8601"))) __attribute__((availability(ios,introduced=4.0,deprecated=8.0,replacement="NSCalendarIdentifierISO8601"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="NSCalendarIdentifierISO8601"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="NSCalendarIdentifierISO8601")));
#pragma clang assume_nonnull end

#pragma clang assume_nonnull begin

typedef NSUInteger NSMeasurementFormatterUnitOptions; enum {
    NSMeasurementFormatterUnitOptionsProvidedUnit = (1UL << 0),
    NSMeasurementFormatterUnitOptionsNaturalScale = (1UL << 1),
    NSMeasurementFormatterUnitOptionsTemperatureWithoutUnit = (1UL << 2),
} __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSMeasurementFormatter
#define _REWRITER_typedef_NSMeasurementFormatter
typedef struct objc_object NSMeasurementFormatter;
typedef struct {} _objc_exc_NSMeasurementFormatter;
#endif

struct NSMeasurementFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	void *_formatter;
};

// @property NSMeasurementFormatterUnitOptions unitOptions;




// @property NSFormattingUnitStyle unitStyle;




// @property (null_resettable, copy) NSLocale *locale;




// @property (null_resettable, copy) NSNumberFormatter *numberFormatter;

// - (NSString *)stringFromMeasurement:(NSMeasurement *)measurement;





// - (NSString *)stringFromUnit:(NSUnit *)unit;

/* @end */

#pragma clang assume_nonnull end








#pragma clang assume_nonnull begin
__attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSPersonNameComponents
#define _REWRITER_typedef_NSPersonNameComponents
typedef struct objc_object NSPersonNameComponents;
typedef struct {} _objc_exc_NSPersonNameComponents;
#endif

struct NSPersonNameComponents_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _private;
};





// @property (copy, nullable) NSString *namePrefix;


// @property (copy, nullable) NSString *givenName;


// @property (copy, nullable) NSString *middleName;


// @property (copy, nullable) NSString *familyName;


// @property (copy, nullable) NSString *nameSuffix;


// @property (copy, nullable) NSString *nickname;




// @property (copy, nullable) NSPersonNameComponents *phoneticRepresentation;

/* @end */

#pragma clang assume_nonnull end







#pragma clang assume_nonnull begin

typedef NSInteger NSPersonNameComponentsFormatterStyle; enum {
    NSPersonNameComponentsFormatterStyleDefault = 0,



    NSPersonNameComponentsFormatterStyleShort,


    NSPersonNameComponentsFormatterStyleMedium,


    NSPersonNameComponentsFormatterStyleLong,


    NSPersonNameComponentsFormatterStyleAbbreviated
} __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSUInteger NSPersonNameComponentsFormatterOptions; enum {




    NSPersonNameComponentsFormatterPhonetic = (1UL << 1)
} __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


__attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSPersonNameComponentsFormatter
#define _REWRITER_typedef_NSPersonNameComponentsFormatter
typedef struct objc_object NSPersonNameComponentsFormatter;
typedef struct {} _objc_exc_NSPersonNameComponentsFormatter;
#endif

struct NSPersonNameComponentsFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	id _private;
};




// @property NSPersonNameComponentsFormatterStyle style;



// @property (getter=isPhonetic) BOOL phonetic;




#if 0
+ (NSString *)localizedStringFromPersonNameComponents:(NSPersonNameComponents *)components
                                                style:(NSPersonNameComponentsFormatterStyle)nameFormatStyle
                                              options:(NSPersonNameComponentsFormatterOptions)nameOptions;
#endif




// - (NSString *)stringFromPersonNameComponents:(NSPersonNameComponents *)components;




// - (NSAttributedString *)annotatedStringFromPersonNameComponents:(NSPersonNameComponents *)components;




// - (nullable NSPersonNameComponents *)personNameComponentsFromString:(nonnull NSString *)string __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// - (BOOL)getObjectValue:(out id _Nullable * _Nullable)obj forString:(NSString *)string errorDescription:(out NSString * _Nullable * _Nullable)error;

/* @end */



extern "C" NSString * const NSPersonNameComponentKey __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSString * const NSPersonNameComponentGivenName __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSPersonNameComponentFamilyName __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSPersonNameComponentMiddleName __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSPersonNameComponentPrefix __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSPersonNameComponentSuffix __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSPersonNameComponentNickname __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




extern "C" NSString * const NSPersonNameComponentDelimiter __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
#pragma clang assume_nonnull end







// @class NSCalendar;
#ifndef _REWRITER_typedef_NSCalendar
#define _REWRITER_typedef_NSCalendar
typedef struct objc_object NSCalendar;
typedef struct {} _objc_exc_NSCalendar;
#endif

#ifndef _REWRITER_typedef_NSLocale
#define _REWRITER_typedef_NSLocale
typedef struct objc_object NSLocale;
typedef struct {} _objc_exc_NSLocale;
#endif

#ifndef _REWRITER_typedef_NSDateComponents
#define _REWRITER_typedef_NSDateComponents
typedef struct objc_object NSDateComponents;
typedef struct {} _objc_exc_NSDateComponents;
#endif


#pragma clang assume_nonnull begin

typedef NSInteger NSRelativeDateTimeFormatterStyle; enum {
    NSRelativeDateTimeFormatterStyleNumeric = 0,
    NSRelativeDateTimeFormatterStyleNamed,
} __attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

typedef NSInteger NSRelativeDateTimeFormatterUnitsStyle; enum {
    NSRelativeDateTimeFormatterUnitsStyleFull = 0,
    NSRelativeDateTimeFormatterUnitsStyleSpellOut,
    NSRelativeDateTimeFormatterUnitsStyleShort,
    NSRelativeDateTimeFormatterUnitsStyleAbbreviated,
} __attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));



__attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))

#ifndef _REWRITER_typedef_NSRelativeDateTimeFormatter
#define _REWRITER_typedef_NSRelativeDateTimeFormatter
typedef struct objc_object NSRelativeDateTimeFormatter;
typedef struct {} _objc_exc_NSRelativeDateTimeFormatter;
#endif

struct NSRelativeDateTimeFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
};

// @property NSRelativeDateTimeFormatterStyle dateTimeStyle;



// @property NSRelativeDateTimeFormatterUnitsStyle unitsStyle;



// @property NSFormattingContext formattingContext;



// @property (null_resettable, copy) NSCalendar *calendar;



// @property (null_resettable, copy) NSLocale *locale;





// - (NSString *)localizedStringFromDateComponents:(NSDateComponents *)dateComponents;



// - (NSString *)localizedStringFromTimeInterval:(NSTimeInterval)timeInterval;



// - (NSString *)localizedStringForDate:(NSDate *)date relativeToDate:(NSDate *)referenceDate;



// - (nullable NSString *)stringForObjectValue:(nullable id)obj;

/* @end */

#pragma clang assume_nonnull end








#pragma clang assume_nonnull begin



__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))

#ifndef _REWRITER_typedef_NSListFormatter
#define _REWRITER_typedef_NSListFormatter
typedef struct objc_object NSListFormatter;
typedef struct {} _objc_exc_NSListFormatter;
#endif

struct NSListFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
};

// @property (null_resettable, copy) NSLocale *locale;



// @property (nullable, copy) NSFormatter *itemFormatter;



// + (NSString *)localizedStringByJoiningStrings:(NSArray<NSString *> *)strings;





// - (nullable NSString *)stringFromItems:(NSArray *)items;



// - (nullable NSString *)stringForObjectValue:(nullable id)obj;

/* @end */

#pragma clang assume_nonnull end







// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif


#pragma clang assume_nonnull begin
typedef NSUInteger NSRoundingMode; enum {
    NSRoundPlain,
    NSRoundDown,
    NSRoundUp,
    NSRoundBankers
};

typedef NSUInteger NSCalculationError; enum {
    NSCalculationNoError = 0,
    NSCalculationLossOfPrecision,
    NSCalculationUnderflow,
    NSCalculationOverflow,
    NSCalculationDivideByZero
};






typedef struct {
    signed int _exponent:8;
    unsigned int _length:4;
    unsigned int _isNegative:1;
    unsigned int _isCompact:1;
    unsigned int _reserved:18;
    unsigned short _mantissa[(8)];
} NSDecimal;

static __inline__ __attribute__((always_inline)) BOOL NSDecimalIsNotANumber(const NSDecimal *dcm)
  { return ((dcm->_length == 0) && dcm->_isNegative); }



extern "C" void NSDecimalCopy(NSDecimal *destination, const NSDecimal *source);

extern "C" void NSDecimalCompact(NSDecimal *number);

extern "C" NSComparisonResult NSDecimalCompare(const NSDecimal *leftOperand, const NSDecimal *rightOperand);


extern "C" void NSDecimalRound(NSDecimal *result, const NSDecimal *number, NSInteger scale, NSRoundingMode roundingMode);




extern "C" NSCalculationError NSDecimalNormalize(NSDecimal *number1, NSDecimal *number2, NSRoundingMode roundingMode);

extern "C" NSCalculationError NSDecimalAdd(NSDecimal *result, const NSDecimal *leftOperand, const NSDecimal *rightOperand, NSRoundingMode roundingMode);


extern "C" NSCalculationError NSDecimalSubtract(NSDecimal *result, const NSDecimal *leftOperand, const NSDecimal *rightOperand, NSRoundingMode roundingMode);


extern "C" NSCalculationError NSDecimalMultiply(NSDecimal *result, const NSDecimal *leftOperand, const NSDecimal *rightOperand, NSRoundingMode roundingMode);


extern "C" NSCalculationError NSDecimalDivide(NSDecimal *result, const NSDecimal *leftOperand, const NSDecimal *rightOperand, NSRoundingMode roundingMode);



extern "C" NSCalculationError NSDecimalPower(NSDecimal *result, const NSDecimal *number, NSUInteger power, NSRoundingMode roundingMode);

extern "C" NSCalculationError NSDecimalMultiplyByPowerOf10(NSDecimal *result, const NSDecimal *number, short power, NSRoundingMode roundingMode);

extern "C" NSString *NSDecimalString(const NSDecimal *dcm, id _Nullable locale);
#pragma clang assume_nonnull end











// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSCharacterSet
#define _REWRITER_typedef_NSCharacterSet
typedef struct objc_object NSCharacterSet;
typedef struct {} _objc_exc_NSCharacterSet;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif


#pragma clang assume_nonnull begin









#ifndef _REWRITER_typedef_NSScanner
#define _REWRITER_typedef_NSScanner
typedef struct objc_object NSScanner;
typedef struct {} _objc_exc_NSScanner;
#endif

struct NSScanner_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly, copy) NSString *string;
// @property NSUInteger scanLocation ;
// @property (nullable, copy) NSCharacterSet *charactersToBeSkipped;
// @property BOOL caseSensitive;
// @property (nullable, retain) id locale;

// - (instancetype)initWithString:(NSString *)string __attribute__((objc_designated_initializer));

/* @end */


// @interface NSScanner (NSExtendedScanner)


// - (BOOL)scanInt:(nullable int *)result ;

// - (BOOL)scanInteger:(nullable NSInteger *)result __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) ;

// - (BOOL)scanLongLong:(nullable long long *)result;

// - (BOOL)scanUnsignedLongLong:(nullable unsigned long long *)result __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) ;

// - (BOOL)scanFloat:(nullable float *)result ;

// - (BOOL)scanDouble:(nullable double *)result ;

#if 0
- (BOOL)scanHexInt:(nullable unsigned *)result
                                                                                                                                              ;
#endif


#if 0
- (BOOL)scanHexLongLong:(nullable unsigned long long *)result __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))
                                                                                                                                                   ;
#endif


#if 0
- (BOOL)scanHexFloat:(nullable float *)result __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))
                                                                                                                                                ;
#endif


#if 0
- (BOOL)scanHexDouble:(nullable double *)result __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))
                                                                                                                                                 ;
#endif


// - (BOOL)scanString:(NSString *)string intoString:(NSString * _Nullable * _Nullable)result ;

// - (BOOL)scanCharactersFromSet:(NSCharacterSet *)set intoString:(NSString * _Nullable * _Nullable)result ;

// - (BOOL)scanUpToString:(NSString *)string intoString:(NSString * _Nullable * _Nullable)result ;

// - (BOOL)scanUpToCharactersFromSet:(NSCharacterSet *)set intoString:(NSString * _Nullable * _Nullable)result ;

// @property (getter=isAtEnd, readonly) BOOL atEnd;

// + (instancetype)scannerWithString:(NSString *)string;
// + (id)localizedScannerWithString:(NSString *)string;

/* @end */

#pragma clang assume_nonnull end


// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSNumber
#define _REWRITER_typedef_NSNumber
typedef struct objc_object NSNumber;
typedef struct {} _objc_exc_NSNumber;
#endif


#pragma clang assume_nonnull begin



extern "C" NSExceptionName const NSGenericException;
extern "C" NSExceptionName const NSRangeException;
extern "C" NSExceptionName const NSInvalidArgumentException;
extern "C" NSExceptionName const NSInternalInconsistencyException;

extern "C" NSExceptionName const NSMallocException;

extern "C" NSExceptionName const NSObjectInaccessibleException;
extern "C" NSExceptionName const NSObjectNotAvailableException;
extern "C" NSExceptionName const NSDestinationInvalidException;

extern "C" NSExceptionName const NSPortTimeoutException;
extern "C" NSExceptionName const NSInvalidSendPortException;
extern "C" NSExceptionName const NSInvalidReceivePortException;
extern "C" NSExceptionName const NSPortSendException;
extern "C" NSExceptionName const NSPortReceiveException;

extern "C" NSExceptionName const NSOldStyleException;

extern "C" NSExceptionName const NSInconsistentArchiveException;




__attribute__((__objc_exception__))


#ifndef _REWRITER_typedef_NSException
#define _REWRITER_typedef_NSException
typedef struct objc_object NSException;
typedef struct {} _objc_exc_NSException;
#endif

struct NSException_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSString *name;
	NSString *reason;
	NSDictionary *userInfo;
	id reserved;
};


// + (NSException *)exceptionWithName:(NSExceptionName)name reason:(nullable NSString *)reason userInfo:(nullable NSDictionary *)userInfo;
// - (instancetype)initWithName:(NSExceptionName)aName reason:(nullable NSString *)aReason userInfo:(nullable NSDictionary *)aUserInfo __attribute__((objc_designated_initializer));

// @property (readonly, copy) NSExceptionName name;
// @property (nullable, readonly, copy) NSString *reason;
// @property (nullable, readonly, copy) NSDictionary *userInfo;

// @property (readonly, copy) NSArray<NSNumber *> *callStackReturnAddresses __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *callStackSymbols __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)raise;

/* @end */


// @interface NSException (NSExceptionRaisingConveniences)

// + (void)raise:(NSExceptionName)name format:(NSString *)format, ... __attribute__((format(__NSString__, 2, 3)));
// + (void)raise:(NSExceptionName)name format:(NSString *)format arguments:(va_list)argList __attribute__((format(__NSString__, 2, 0)));

/* @end */

typedef void NSUncaughtExceptionHandler(NSException *exception);

extern "C" NSUncaughtExceptionHandler * _Nullable NSGetUncaughtExceptionHandler(void);
extern "C" void NSSetUncaughtExceptionHandler(NSUncaughtExceptionHandler * _Nullable);
// @class NSAssertionHandler;
#ifndef _REWRITER_typedef_NSAssertionHandler
#define _REWRITER_typedef_NSAssertionHandler
typedef struct objc_object NSAssertionHandler;
typedef struct {} _objc_exc_NSAssertionHandler;
#endif

extern "C" NSString * const NSAssertionHandlerKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


#ifndef _REWRITER_typedef_NSAssertionHandler
#define _REWRITER_typedef_NSAssertionHandler
typedef struct objc_object NSAssertionHandler;
typedef struct {} _objc_exc_NSAssertionHandler;
#endif

struct NSAssertionHandler_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_reserved;
};


@property (class, readonly, strong) NSAssertionHandler *currentHandler;

// - (void)handleFailureInMethod:(SEL)selector object:(id)object file:(NSString *)fileName lineNumber:(NSInteger)line description:(nullable NSString *)format,... __attribute__((format(__NSString__, 5, 6)));

// - (void)handleFailureInFunction:(NSString *)functionName file:(NSString *)fileName lineNumber:(NSInteger)line description:(nullable NSString *)format,... __attribute__((format(__NSString__, 4, 5)));

/* @end */

#pragma clang assume_nonnull end

#pragma clang assume_nonnull begin



extern "C" NSExceptionName const NSDecimalNumberExactnessException;
extern "C" NSExceptionName const NSDecimalNumberOverflowException;
extern "C" NSExceptionName const NSDecimalNumberUnderflowException;
extern "C" NSExceptionName const NSDecimalNumberDivideByZeroException;



// @class NSDecimalNumber;
#ifndef _REWRITER_typedef_NSDecimalNumber
#define _REWRITER_typedef_NSDecimalNumber
typedef struct objc_object NSDecimalNumber;
typedef struct {} _objc_exc_NSDecimalNumber;
#endif


// @protocol NSDecimalNumberBehaviors

// - (NSRoundingMode)roundingMode;

// - (short)scale;


// - (nullable NSDecimalNumber *)exceptionDuringOperation:(SEL)operation error:(NSCalculationError)error leftOperand:(NSDecimalNumber *)leftOperand rightOperand:(nullable NSDecimalNumber *)rightOperand;


/* @end */





#ifndef _REWRITER_typedef_NSDecimalNumber
#define _REWRITER_typedef_NSDecimalNumber
typedef struct objc_object NSDecimalNumber;
typedef struct {} _objc_exc_NSDecimalNumber;
#endif

	struct NSDecimalNumber__T_1 {
	int _exponent : 8;
	unsigned int _length : 4;
	unsigned int _isNegative : 1;
	unsigned int _isCompact : 1;
	unsigned int _reserved : 1;
	unsigned int _hasExternalRefCount : 1;
	unsigned int _refs : 16;
	} ;
struct NSDecimalNumber_IMPL {
	struct NSNumber_IMPL NSNumber_IVARS;
	struct NSDecimalNumber__T_1 NSDecimalNumber__GRBF_1;
	unsigned short _mantissa[0];
};


// - (instancetype)initWithMantissa:(unsigned long long)mantissa exponent:(short)exponent isNegative:(BOOL)flag;
// - (instancetype)initWithDecimal:(NSDecimal)dcm __attribute__((objc_designated_initializer));
// - (instancetype)initWithString:(nullable NSString *)numberValue;
// - (instancetype)initWithString:(nullable NSString *)numberValue locale:(nullable id)locale;

// - (NSString *)descriptionWithLocale:(nullable id)locale;

// @property (readonly) NSDecimal decimalValue;

// + (NSDecimalNumber *)decimalNumberWithMantissa:(unsigned long long)mantissa exponent:(short)exponent isNegative:(BOOL)flag;
// + (NSDecimalNumber *)decimalNumberWithDecimal:(NSDecimal)dcm;
// + (NSDecimalNumber *)decimalNumberWithString:(nullable NSString *)numberValue;
// + (NSDecimalNumber *)decimalNumberWithString:(nullable NSString *)numberValue locale:(nullable id)locale;

@property (class, readonly, copy) NSDecimalNumber *zero;
@property (class, readonly, copy) NSDecimalNumber *one;
@property (class, readonly, copy) NSDecimalNumber *minimumDecimalNumber;
@property (class, readonly, copy) NSDecimalNumber *maximumDecimalNumber;
@property (class, readonly, copy) NSDecimalNumber *notANumber;

// - (NSDecimalNumber *)decimalNumberByAdding:(NSDecimalNumber *)decimalNumber;
// - (NSDecimalNumber *)decimalNumberByAdding:(NSDecimalNumber *)decimalNumber withBehavior:(nullable id <NSDecimalNumberBehaviors>)behavior;

// - (NSDecimalNumber *)decimalNumberBySubtracting:(NSDecimalNumber *)decimalNumber;
// - (NSDecimalNumber *)decimalNumberBySubtracting:(NSDecimalNumber *)decimalNumber withBehavior:(nullable id <NSDecimalNumberBehaviors>)behavior;

// - (NSDecimalNumber *)decimalNumberByMultiplyingBy:(NSDecimalNumber *)decimalNumber;
// - (NSDecimalNumber *)decimalNumberByMultiplyingBy:(NSDecimalNumber *)decimalNumber withBehavior:(nullable id <NSDecimalNumberBehaviors>)behavior;

// - (NSDecimalNumber *)decimalNumberByDividingBy:(NSDecimalNumber *)decimalNumber;
// - (NSDecimalNumber *)decimalNumberByDividingBy:(NSDecimalNumber *)decimalNumber withBehavior:(nullable id <NSDecimalNumberBehaviors>)behavior;

// - (NSDecimalNumber *)decimalNumberByRaisingToPower:(NSUInteger)power;
// - (NSDecimalNumber *)decimalNumberByRaisingToPower:(NSUInteger)power withBehavior:(nullable id <NSDecimalNumberBehaviors>)behavior;

// - (NSDecimalNumber *)decimalNumberByMultiplyingByPowerOf10:(short)power;
// - (NSDecimalNumber *)decimalNumberByMultiplyingByPowerOf10:(short)power withBehavior:(nullable id <NSDecimalNumberBehaviors>)behavior;


// - (NSDecimalNumber *)decimalNumberByRoundingAccordingToBehavior:(nullable id <NSDecimalNumberBehaviors>)behavior;


// - (NSComparisonResult)compare:(NSNumber *)decimalNumber;


@property (class, strong) id <NSDecimalNumberBehaviors> defaultBehavior;






// @property (readonly) const char *objCType __attribute__((objc_returns_inner_pointer));


// @property (readonly) double doubleValue;


/* @end */





#ifndef _REWRITER_typedef_NSDecimalNumberHandler
#define _REWRITER_typedef_NSDecimalNumberHandler
typedef struct objc_object NSDecimalNumberHandler;
typedef struct {} _objc_exc_NSDecimalNumberHandler;
#endif

	struct NSDecimalNumberHandler__T_1 {
	int _scale : 16;
	unsigned int _roundingMode : 3;
	unsigned int _raiseOnExactness : 1;
	unsigned int _raiseOnOverflow : 1;
	unsigned int _raiseOnUnderflow : 1;
	unsigned int _raiseOnDivideByZero : 1;
	unsigned int _unused : 9;
	} ;
struct NSDecimalNumberHandler_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	struct NSDecimalNumberHandler__T_1 NSDecimalNumberHandler__GRBF_1;
	void *_reserved2;
	void *_reserved;
};


@property (class, readonly, strong) NSDecimalNumberHandler *defaultDecimalNumberHandler;





// - (instancetype)initWithRoundingMode:(NSRoundingMode)roundingMode scale:(short)scale raiseOnExactness:(BOOL)exact raiseOnOverflow:(BOOL)overflow raiseOnUnderflow:(BOOL)underflow raiseOnDivideByZero:(BOOL)divideByZero __attribute__((objc_designated_initializer));

// + (instancetype)decimalNumberHandlerWithRoundingMode:(NSRoundingMode)roundingMode scale:(short)scale raiseOnExactness:(BOOL)exact raiseOnOverflow:(BOOL)overflow raiseOnUnderflow:(BOOL)underflow raiseOnDivideByZero:(BOOL)divideByZero;

/* @end */




// @interface NSNumber (NSDecimalNumberExtensions)

// @property (readonly) NSDecimal decimalValue;


/* @end */


// @interface NSScanner (NSDecimalNumberScanning)

#if 0
- (BOOL)scanDecimal:(nullable NSDecimal *)dcm



    ;
#endif


/* @end */

#pragma clang assume_nonnull end








// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


typedef NSString *NSErrorDomain;

#pragma clang assume_nonnull begin


extern "C" NSErrorDomain const NSCocoaErrorDomain;


extern "C" NSErrorDomain const NSPOSIXErrorDomain;
extern "C" NSErrorDomain const NSOSStatusErrorDomain;
extern "C" NSErrorDomain const NSMachErrorDomain;

typedef NSString *NSErrorUserInfoKey;


extern "C" NSErrorUserInfoKey const NSUnderlyingErrorKey;


extern "C" NSErrorUserInfoKey const NSLocalizedDescriptionKey;
extern "C" NSErrorUserInfoKey const NSLocalizedFailureReasonErrorKey;
extern "C" NSErrorUserInfoKey const NSLocalizedRecoverySuggestionErrorKey;
extern "C" NSErrorUserInfoKey const NSLocalizedRecoveryOptionsErrorKey;
extern "C" NSErrorUserInfoKey const NSRecoveryAttempterErrorKey;
extern "C" NSErrorUserInfoKey const NSHelpAnchorErrorKey;
extern "C" NSErrorUserInfoKey const NSDebugDescriptionErrorKey __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSErrorUserInfoKey const NSLocalizedFailureErrorKey __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


extern "C" NSErrorUserInfoKey const NSStringEncodingErrorKey ;
extern "C" NSErrorUserInfoKey const NSURLErrorKey;
extern "C" NSErrorUserInfoKey const NSFilePathErrorKey;


#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

struct NSError_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_reserved;
	NSInteger _code;
	NSString *_domain;
	NSDictionary *_userInfo;
};




// - (instancetype)initWithDomain:(NSErrorDomain)domain code:(NSInteger)code userInfo:(nullable NSDictionary<NSErrorUserInfoKey, id> *)dict __attribute__((objc_designated_initializer));
// + (instancetype)errorWithDomain:(NSErrorDomain)domain code:(NSInteger)code userInfo:(nullable NSDictionary<NSErrorUserInfoKey, id> *)dict;



// @property (readonly, copy) NSErrorDomain domain;
// @property (readonly) NSInteger code;



// @property (readonly, copy) NSDictionary<NSErrorUserInfoKey, id> *userInfo;
// @property (readonly, copy) NSString *localizedDescription;



// @property (nullable, readonly, copy) NSString *localizedFailureReason;



// @property (nullable, readonly, copy) NSString *localizedRecoverySuggestion;



// @property (nullable, readonly, copy) NSArray<NSString *> *localizedRecoveryOptions;



// @property (nullable, readonly, strong) id recoveryAttempter;



// @property (nullable, readonly, copy) NSString *helpAnchor;
// + (void)setUserInfoValueProviderForDomain:(NSErrorDomain)errorDomain provider:(id _Nullable (^ _Nullable)(NSError *err, NSErrorUserInfoKey userInfoKey))provider __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (id _Nullable (^ _Nullable)(NSError *err, NSErrorUserInfoKey userInfoKey))userInfoValueProviderForDomain:(NSErrorDomain)errorDomain __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */



// @interface NSObject(NSErrorRecoveryAttempting)







// - (void)attemptRecoveryFromError:(NSError *)error optionIndex:(NSUInteger)recoveryOptionIndex delegate:(nullable id)delegate didRecoverSelector:(nullable SEL)didRecoverSelector contextInfo:(nullable void *)contextInfo;



// - (BOOL)attemptRecoveryFromError:(NSError *)error optionIndex:(NSUInteger)recoveryOptionIndex;

/* @end */

#pragma clang assume_nonnull end









// @class NSTimer;
#ifndef _REWRITER_typedef_NSTimer
#define _REWRITER_typedef_NSTimer
typedef struct objc_object NSTimer;
typedef struct {} _objc_exc_NSTimer;
#endif

#ifndef _REWRITER_typedef_NSPort
#define _REWRITER_typedef_NSPort
typedef struct objc_object NSPort;
typedef struct {} _objc_exc_NSPort;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin

extern "C" NSRunLoopMode const NSDefaultRunLoopMode;
extern "C" NSRunLoopMode const NSRunLoopCommonModes __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


#ifndef _REWRITER_typedef_NSRunLoop
#define _REWRITER_typedef_NSRunLoop
typedef struct objc_object NSRunLoop;
typedef struct {} _objc_exc_NSRunLoop;
#endif

struct NSRunLoop_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _rl;
	id _dperf;
	id _perft;
	id _info;
	id _ports;
	void *_reserved[6];
};


@property (class, readonly, strong) NSRunLoop *currentRunLoop;
@property (class, readonly, strong) NSRunLoop *mainRunLoop __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (nullable, readonly, copy) NSRunLoopMode currentMode;

// - (CFRunLoopRef)getCFRunLoop __attribute__((cf_returns_not_retained));

// - (void)addTimer:(NSTimer *)timer forMode:(NSRunLoopMode)mode;

// - (void)addPort:(NSPort *)aPort forMode:(NSRunLoopMode)mode;
// - (void)removePort:(NSPort *)aPort forMode:(NSRunLoopMode)mode;

// - (nullable NSDate *)limitDateForMode:(NSRunLoopMode)mode;
// - (void)acceptInputForMode:(NSRunLoopMode)mode beforeDate:(NSDate *)limitDate;

/* @end */


// @interface NSRunLoop (NSRunLoopConveniences)

// - (void)run;
// - (void)runUntilDate:(NSDate *)limitDate;
// - (BOOL)runMode:(NSRunLoopMode)mode beforeDate:(NSDate *)limitDate;
// - (void)performInModes:(NSArray<NSRunLoopMode> *)modes block:(void (^)(void))block __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));



// - (void)performBlock:(void (^)(void))block __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

/* @end */




// @interface NSObject (NSDelayedPerforming)

// - (void)performSelector:(SEL)aSelector withObject:(nullable id)anArgument afterDelay:(NSTimeInterval)delay inModes:(NSArray<NSRunLoopMode> *)modes;
// - (void)performSelector:(SEL)aSelector withObject:(nullable id)anArgument afterDelay:(NSTimeInterval)delay;
// + (void)cancelPreviousPerformRequestsWithTarget:(id)aTarget selector:(SEL)aSelector object:(nullable id)anArgument;
// + (void)cancelPreviousPerformRequestsWithTarget:(id)aTarget;

/* @end */


// @interface NSRunLoop (NSOrderedPerform)

// - (void)performSelector:(SEL)aSelector target:(id)target argument:(nullable id)arg order:(NSUInteger)order modes:(NSArray<NSRunLoopMode> *)modes;
// - (void)cancelPerformSelector:(SEL)aSelector target:(id)target argument:(nullable id)arg;
// - (void)cancelPerformSelectorsWithTarget:(id)target;

/* @end */

#pragma clang assume_nonnull end

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif


#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSFileHandle
#define _REWRITER_typedef_NSFileHandle
typedef struct objc_object NSFileHandle;
typedef struct {} _objc_exc_NSFileHandle;
#endif

struct NSFileHandle_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly, copy) NSData *availableData;

// - (instancetype)initWithFileDescriptor:(int)fd closeOnDealloc:(BOOL)closeopt __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

#if 0
- (nullable NSData *)readDataToEndOfFileAndReturnError:(out NSError **)error
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((swift_private));
#endif


#if 0
- (nullable NSData *)readDataUpToLength:(NSUInteger)length error:(out NSError **)error
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((swift_private));
#endif


#if 0
- (BOOL)writeData:(NSData *)data error:(out NSError **)error
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((swift_private));
#endif


#if 0
- (BOOL)getOffset:(out unsigned long long *)offsetInFile error:(out NSError **)error
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((swift_private));
#endif


#if 0
- (BOOL)seekToEndReturningOffset:(out unsigned long long *_Nullable)offsetInFile error:(out NSError **)error
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((swift_private));
#endif


#if 0
- (BOOL)seekToOffset:(unsigned long long)offset error:(out NSError **)error
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
#endif


#if 0
- (BOOL)truncateAtOffset:(unsigned long long)offset error:(out NSError **)error
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
#endif


#if 0
- (BOOL)synchronizeAndReturnError:(out NSError **)error
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
#endif


#if 0
- (BOOL)closeAndReturnError:(out NSError **)error
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
#endif


/* @end */


// @interface NSFileHandle (NSFileHandleCreation)

@property (class, readonly, strong) NSFileHandle *fileHandleWithStandardInput;
@property (class, readonly, strong) NSFileHandle *fileHandleWithStandardOutput;
@property (class, readonly, strong) NSFileHandle *fileHandleWithStandardError;
@property (class, readonly, strong) NSFileHandle *fileHandleWithNullDevice;

// + (nullable instancetype)fileHandleForReadingAtPath:(NSString *)path;
// + (nullable instancetype)fileHandleForWritingAtPath:(NSString *)path;
// + (nullable instancetype)fileHandleForUpdatingAtPath:(NSString *)path;

// + (nullable instancetype)fileHandleForReadingFromURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (nullable instancetype)fileHandleForWritingToURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (nullable instancetype)fileHandleForUpdatingURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


extern "C" NSExceptionName const NSFileHandleOperationException;

extern "C" NSNotificationName const NSFileHandleReadCompletionNotification;
extern "C" NSNotificationName const NSFileHandleReadToEndOfFileCompletionNotification;
extern "C" NSNotificationName const NSFileHandleConnectionAcceptedNotification;
extern "C" NSNotificationName const NSFileHandleDataAvailableNotification;

extern "C" NSString * const NSFileHandleNotificationDataItem;
extern "C" NSString * const NSFileHandleNotificationFileHandleItem;
extern "C" NSString * const NSFileHandleNotificationMonitorModes __attribute__((availability(macos,introduced=10.0,deprecated=10.7,message="Not supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=5.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported")));

// @interface NSFileHandle (NSFileHandleAsynchronousAccess)

// - (void)readInBackgroundAndNotifyForModes:(nullable NSArray<NSRunLoopMode> *)modes;
// - (void)readInBackgroundAndNotify;

// - (void)readToEndOfFileInBackgroundAndNotifyForModes:(nullable NSArray<NSRunLoopMode> *)modes;
// - (void)readToEndOfFileInBackgroundAndNotify;

// - (void)acceptConnectionInBackgroundAndNotifyForModes:(nullable NSArray<NSRunLoopMode> *)modes;
// - (void)acceptConnectionInBackgroundAndNotify;

// - (void)waitForDataInBackgroundAndNotifyForModes:(nullable NSArray<NSRunLoopMode> *)modes;
// - (void)waitForDataInBackgroundAndNotify;


// @property (nullable, copy) void (^readabilityHandler)(NSFileHandle *) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, copy) void (^writeabilityHandler)(NSFileHandle *) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


/* @end */


// @interface NSFileHandle (NSFileHandlePlatformSpecific)

// - (instancetype)initWithFileDescriptor:(int)fd;

// @property (readonly) int fileDescriptor;

/* @end */


// @interface NSFileHandle ( )




#if 0
- (NSData *)readDataToEndOfFile
    __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="readDataToEndOfFileAndReturnError:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="readDataToEndOfFileAndReturnError:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="readDataToEndOfFileAndReturnError:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="readDataToEndOfFileAndReturnError:")));
#endif




#if 0
- (NSData *)readDataOfLength:(NSUInteger)length
    __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="readDataUpToLength:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="readDataUpToLength:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="readDataUpToLength:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="readDataUpToLength:error:")));
#endif





#if 0
- (void)writeData:(NSData *)data
    __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="writeData:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="writeData:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="writeData:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="writeData:error:")));
#endif





// @property (readonly) unsigned long long offsetInFile
    __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="getOffset:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="getOffset:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="getOffset:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="getOffset:error:")));



#if 0
- (unsigned long long)seekToEndOfFile
    __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="seekToEndReturningOffset:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="seekToEndReturningOffset:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="seekToEndReturningOffset:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="seekToEndReturningOffset:error:")));
#endif




#if 0
- (void)seekToFileOffset:(unsigned long long)offset
    __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="seekToOffset:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="seekToOffset:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="seekToOffset:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="seekToOffset:error:")));
#endif





#if 0
- (void)truncateFileAtOffset:(unsigned long long)offset
    __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="truncateAtOffset:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="truncateAtOffset:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="truncateAtOffset:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="truncateAtOffset:error:")));
#endif




#if 0
- (void)synchronizeFile
    __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="synchronizeAndReturnError:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="synchronizeAndReturnError:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="synchronizeAndReturnError:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="synchronizeAndReturnError:")));
#endif




#if 0
- (void)closeFile
    __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="closeAndReturnError:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="closeAndReturnError:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="closeAndReturnError:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="closeAndReturnError:")));
#endif





/* @end */



#ifndef _REWRITER_typedef_NSPipe
#define _REWRITER_typedef_NSPipe
typedef struct objc_object NSPipe;
typedef struct {} _objc_exc_NSPipe;
#endif

struct NSPipe_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly, retain) NSFileHandle *fileHandleForReading;
// @property (readonly, retain) NSFileHandle *fileHandleForWriting;

// + (NSPipe *)pipe;

/* @end */

#pragma clang assume_nonnull end














#pragma clang assume_nonnull begin

// @interface NSString (NSStringPathExtensions)

// + (NSString *)pathWithComponents:(NSArray<NSString *> *)components;
// @property (readonly, copy) NSArray<NSString *> *pathComponents;

// @property (getter=isAbsolutePath, readonly) BOOL absolutePath;

// @property (readonly, copy) NSString *lastPathComponent;
// @property (readonly, copy) NSString *stringByDeletingLastPathComponent;
// - (NSString *)stringByAppendingPathComponent:(NSString *)str;

// @property (readonly, copy) NSString *pathExtension;
// @property (readonly, copy) NSString *stringByDeletingPathExtension;
// - (nullable NSString *)stringByAppendingPathExtension:(NSString *)str;

// @property (readonly, copy) NSString *stringByAbbreviatingWithTildeInPath;
// @property (readonly, copy) NSString *stringByExpandingTildeInPath;

// @property (readonly, copy) NSString *stringByStandardizingPath;

// @property (readonly, copy) NSString *stringByResolvingSymlinksInPath;

// - (NSArray<NSString *> *)stringsByAppendingPaths:(NSArray<NSString *> *)paths;

// - (NSUInteger)completePathIntoString:(NSString * _Nullable * _Nullable)outputName caseSensitive:(BOOL)flag matchesIntoArray:(NSArray<NSString *> * _Nullable * _Nullable)outputArray filterTypes:(nullable NSArray<NSString *> *)filterTypes;

// @property (readonly) const char *fileSystemRepresentation __attribute__((objc_returns_inner_pointer));
// - (BOOL)getFileSystemRepresentation:(char *)cname maxLength:(NSUInteger)max;

/* @end */


// @interface NSArray<ObjectType> (NSArrayPathExtensions)

// - (NSArray<NSString *> *)pathsMatchingExtensions:(NSArray<NSString *> *)filterTypes;

/* @end */


extern "C" NSString *NSUserName(void);
extern "C" NSString *NSFullUserName(void);

extern "C" NSString *NSHomeDirectory(void);
extern "C" NSString * _Nullable NSHomeDirectoryForUser(NSString * _Nullable userName);

extern "C" NSString *NSTemporaryDirectory(void);

extern "C" NSString *NSOpenStepRootDirectory(void);

typedef NSUInteger NSSearchPathDirectory; enum {
    NSApplicationDirectory = 1,
    NSDemoApplicationDirectory,
    NSDeveloperApplicationDirectory,
    NSAdminApplicationDirectory,
    NSLibraryDirectory,
    NSDeveloperDirectory,
    NSUserDirectory,
    NSDocumentationDirectory,
    NSDocumentDirectory,
    NSCoreServiceDirectory,
    NSAutosavedInformationDirectory __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 11,
    NSDesktopDirectory = 12,
    NSCachesDirectory = 13,
    NSApplicationSupportDirectory = 14,
    NSDownloadsDirectory __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 15,
    NSInputMethodsDirectory __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 16,
    NSMoviesDirectory __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 17,
    NSMusicDirectory __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 18,
    NSPicturesDirectory __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 19,
    NSPrinterDescriptionDirectory __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 20,
    NSSharedPublicDirectory __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 21,
    NSPreferencePanesDirectory __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 22,
    NSApplicationScriptsDirectory __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 23,
    NSItemReplacementDirectory __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 99,
    NSAllApplicationsDirectory = 100,
    NSAllLibrariesDirectory = 101,
    NSTrashDirectory __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 102

};

typedef NSUInteger NSSearchPathDomainMask; enum {
    NSUserDomainMask = 1,
    NSLocalDomainMask = 2,
    NSNetworkDomainMask = 4,
    NSSystemDomainMask = 8,
    NSAllDomainsMask = 0x0ffff
};

extern "C" NSArray<NSString *> *NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory directory, NSSearchPathDomainMask domainMask, BOOL expandTilde);
#pragma clang assume_nonnull end


// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSNumber
#define _REWRITER_typedef_NSNumber
typedef struct objc_object NSNumber;
typedef struct {} _objc_exc_NSNumber;
#endif

#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif


typedef NSString * NSURLResourceKey __attribute__((swift_wrapper(struct)));

#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

struct NSURL_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSString *_urlString;
	NSURL *_baseURL;
	void *_clients;
	void *_reserved;
};




// - (nullable instancetype)initWithScheme:(NSString *)scheme host:(nullable NSString *)host path:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=10.11,message="Use NSURLComponents instead, which lets you create a valid URL with any valid combination of URL components and subcomponents (not just scheme, host and path), and lets you set components and subcomponents with either percent-encoded or un-percent-encoded strings."))) __attribute__((availability(ios,introduced=2.0,deprecated=9.0,message="Use NSURLComponents instead, which lets you create a valid URL with any valid combination of URL components and subcomponents (not just scheme, host and path), and lets you set components and subcomponents with either percent-encoded or un-percent-encoded strings."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSURLComponents instead, which lets you create a valid URL with any valid combination of URL components and subcomponents (not just scheme, host and path), and lets you set components and subcomponents with either percent-encoded or un-percent-encoded strings."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSURLComponents instead, which lets you create a valid URL with any valid combination of URL components and subcomponents (not just scheme, host and path), and lets you set components and subcomponents with either percent-encoded or un-percent-encoded strings.")));



// - (instancetype)initFileURLWithPath:(NSString *)path isDirectory:(BOOL)isDir relativeToURL:(nullable NSURL *)baseURL __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));


// - (instancetype)initFileURLWithPath:(NSString *)path relativeToURL:(nullable NSURL *)baseURL __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));

// - (instancetype)initFileURLWithPath:(NSString *)path isDirectory:(BOOL)isDir __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));
// - (instancetype)initFileURLWithPath:(NSString *)path __attribute__((objc_designated_initializer));



// + (NSURL *)fileURLWithPath:(NSString *)path isDirectory:(BOOL) isDir relativeToURL:(nullable NSURL *)baseURL __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// + (NSURL *)fileURLWithPath:(NSString *)path relativeToURL:(nullable NSURL *)baseURL __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (NSURL *)fileURLWithPath:(NSString *)path isDirectory:(BOOL)isDir __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSURL *)fileURLWithPath:(NSString *)path;



// - (instancetype)initFileURLWithFileSystemRepresentation:(const char *)path isDirectory:(BOOL)isDir relativeToURL:(nullable NSURL *)baseURL __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));



// + (NSURL *)fileURLWithFileSystemRepresentation:(const char *)path isDirectory:(BOOL) isDir relativeToURL:(nullable NSURL *)baseURL __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (nullable instancetype)initWithString:(NSString *)URLString;
// - (nullable instancetype)initWithString:(NSString *)URLString relativeToURL:(nullable NSURL *)baseURL __attribute__((objc_designated_initializer));
// + (nullable instancetype)URLWithString:(NSString *)URLString;
// + (nullable instancetype)URLWithString:(NSString *)URLString relativeToURL:(nullable NSURL *)baseURL;




// - (instancetype)initWithDataRepresentation:(NSData *)data relativeToURL:(nullable NSURL *)baseURL __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));


// + (NSURL *)URLWithDataRepresentation:(NSData *)data relativeToURL:(nullable NSURL *)baseURL __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (instancetype)initAbsoluteURLWithDataRepresentation:(NSData *)data relativeToURL:(nullable NSURL *)baseURL __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));


// + (NSURL *)absoluteURLWithDataRepresentation:(NSData *)data relativeToURL:(nullable NSURL *)baseURL __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (readonly, copy) NSData *dataRepresentation __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (nullable, readonly, copy) NSString *absoluteString;
// @property (readonly, copy) NSString *relativeString;
// @property (nullable, readonly, copy) NSURL *baseURL;
// @property (nullable, readonly, copy) NSURL *absoluteURL;



// @property (nullable, readonly, copy) NSString *scheme;
// @property (nullable, readonly, copy) NSString *resourceSpecifier;



// @property (nullable, readonly, copy) NSString *host;
// @property (nullable, readonly, copy) NSNumber *port;
// @property (nullable, readonly, copy) NSString *user;
// @property (nullable, readonly, copy) NSString *password;
// @property (nullable, readonly, copy) NSString *path;
// @property (nullable, readonly, copy) NSString *fragment;
// @property (nullable, readonly, copy) NSString *parameterString __attribute__((availability(macosx,introduced=10.2,deprecated=10.15,message="The parameterString method is deprecated. Post deprecation for applications linked with or after the macOS 10.15, and for all iOS, watchOS, and tvOS applications, parameterString will always return nil, and the path method will return the complete path including the semicolon separator and params component if the URL string contains them."))) __attribute__((availability(ios,introduced=2.0,deprecated=13.0,message="The parameterString method is deprecated. Post deprecation for applications linked with or after the macOS 10.15, and for all iOS, watchOS, and tvOS applications, parameterString will always return nil, and the path method will return the complete path including the semicolon separator and params component if the URL string contains them."))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="The parameterString method is deprecated. Post deprecation for applications linked with or after the macOS 10.15, and for all iOS, watchOS, and tvOS applications, parameterString will always return nil, and the path method will return the complete path including the semicolon separator and params component if the URL string contains them."))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="The parameterString method is deprecated. Post deprecation for applications linked with or after the macOS 10.15, and for all iOS, watchOS, and tvOS applications, parameterString will always return nil, and the path method will return the complete path including the semicolon separator and params component if the URL string contains them.")));
// @property (nullable, readonly, copy) NSString *query;
// @property (nullable, readonly, copy) NSString *relativePath;



// @property (readonly) BOOL hasDirectoryPath __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)getFileSystemRepresentation:(char *)buffer maxLength:(NSUInteger)maxBufferLength __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (readonly) const char *fileSystemRepresentation __attribute__((objc_returns_inner_pointer)) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, getter=isFileURL) BOOL fileURL;


extern "C" NSString *NSURLFileScheme;


// @property (nullable, readonly, copy) NSURL *standardizedURL;




// - (BOOL)checkResourceIsReachableAndReturnError:(NSError **)error __attribute__((swift_error(none))) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// - (BOOL)isFileReferenceURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (nullable NSURL *)fileReferenceURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (nullable, readonly, copy) NSURL *filePathURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)getResourceValue:(out id _Nullable * _Nonnull)value forKey:(NSURLResourceKey)key error:(out NSError ** _Nullable)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (nullable NSDictionary<NSURLResourceKey, id> *)resourceValuesForKeys:(NSArray<NSURLResourceKey> *)keys error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)setResourceValue:(nullable id)value forKey:(NSURLResourceKey)key error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)setResourceValues:(NSDictionary<NSURLResourceKey, id> *)keyedValues error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSURLResourceKey const NSURLKeysOfUnsetValuesKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)removeCachedResourceValueForKey:(NSURLResourceKey)key __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)removeAllCachedResourceValues __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)setTemporaryResourceValue:(nullable id)value forKey:(NSURLResourceKey)key __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLNameKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLLocalizedNameKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsRegularFileKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsDirectoryKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsSymbolicLinkKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsVolumeKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsPackageKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsApplicationKey __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLApplicationIsScriptableKey __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSURLResourceKey const NSURLIsSystemImmutableKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsUserImmutableKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsHiddenKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLHasHiddenExtensionKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLCreationDateKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLContentAccessDateKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLContentModificationDateKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLAttributeModificationDateKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLLinkCountKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLParentDirectoryURLKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeURLKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLTypeIdentifierKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLLocalizedTypeDescriptionKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLLabelNumberKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLLabelColorKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLLocalizedLabelKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLEffectiveIconKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLCustomIconKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLFileResourceIdentifierKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeIdentifierKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLPreferredIOBlockSizeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsReadableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsWritableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsExecutableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLFileSecurityKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsExcludedFromBackupKey __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=5.1))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLTagNamesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSURLResourceKey const NSURLPathKey __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLCanonicalPathKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
extern "C" NSURLResourceKey const NSURLIsMountTriggerKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLGenerationIdentifierKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLDocumentIdentifierKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLAddedToDirectoryDateKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLQuarantinePropertiesKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSURLResourceKey const NSURLFileResourceTypeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSString * NSURLFileResourceType __attribute__((swift_wrapper(enum)));



extern "C" NSURLFileResourceType const NSURLFileResourceTypeNamedPipe __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLFileResourceType const NSURLFileResourceTypeCharacterSpecial __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLFileResourceType const NSURLFileResourceTypeDirectory __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLFileResourceType const NSURLFileResourceTypeBlockSpecial __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLFileResourceType const NSURLFileResourceTypeRegular __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLFileResourceType const NSURLFileResourceTypeSymbolicLink __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLFileResourceType const NSURLFileResourceTypeSocket __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLFileResourceType const NSURLFileResourceTypeUnknown __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSURLResourceKey const NSURLThumbnailDictionaryKey __attribute__((availability(macos,introduced=10.10,deprecated=100000,message="Use the QuickLookThumbnailing framework and extension point instead"))) __attribute__((availability(ios,introduced=8.0,deprecated=100000,message="Use the QuickLookThumbnailing framework and extension point instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,message="Use the QuickLookThumbnailing framework and extension point instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,message="Use the QuickLookThumbnailing framework and extension point instead")));
extern "C" NSURLResourceKey const NSURLThumbnailKey __attribute__((availability(macos,introduced=10.10,deprecated=100000,message="Use the QuickLookThumbnailing framework and extension point instead"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

typedef NSString *NSURLThumbnailDictionaryItem __attribute__((swift_wrapper(struct)));


extern "C" NSURLThumbnailDictionaryItem const NSThumbnail1024x1024SizeKey __attribute__((availability(macos,introduced=10.10,deprecated=100000,message="Use the QuickLookThumbnailing framework and extension point instead"))) __attribute__((availability(ios,introduced=8.0,deprecated=100000,message="Use the QuickLookThumbnailing framework and extension point instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,message="Use the QuickLookThumbnailing framework and extension point instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,message="Use the QuickLookThumbnailing framework and extension point instead")));



extern "C" NSURLResourceKey const NSURLFileSizeKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLFileAllocatedSizeKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLTotalFileSizeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLTotalFileAllocatedSizeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLIsAliasFileKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLFileProtectionKey __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

typedef NSString * NSURLFileProtectionType __attribute__((swift_wrapper(enum)));


extern "C" NSURLFileProtectionType const NSURLFileProtectionNone __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));
extern "C" NSURLFileProtectionType const NSURLFileProtectionComplete __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));
extern "C" NSURLFileProtectionType const NSURLFileProtectionCompleteUnlessOpen __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));
extern "C" NSURLFileProtectionType const NSURLFileProtectionCompleteUntilFirstUserAuthentication __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));





extern "C" NSURLResourceKey const NSURLVolumeLocalizedFormatDescriptionKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeTotalCapacityKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeAvailableCapacityKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeResourceCountKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsPersistentIDsKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsSymbolicLinksKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsHardLinksKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsJournalingKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeIsJournalingKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsSparseFilesKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsZeroRunsKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsCaseSensitiveNamesKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsCasePreservedNamesKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsRootDirectoryDatesKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsVolumeSizesKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsRenamingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsAdvisoryFileLockingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsExtendedSecurityKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeIsBrowsableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeMaximumFileSizeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeIsEjectableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeIsRemovableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeIsInternalKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeIsAutomountedKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeIsLocalKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeIsReadOnlyKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeCreationDateKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeURLForRemountingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeUUIDStringKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeNameKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeLocalizedNameKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLVolumeIsEncryptedKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
extern "C" NSURLResourceKey const NSURLVolumeIsRootFileSystemKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsCompressionKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsFileCloningKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsSwapRenamingKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsExclusiveRenamingKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsImmutableFilesKey __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
extern "C" NSURLResourceKey const NSURLVolumeSupportsAccessPermissionsKey __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));







extern "C" NSURLResourceKey const NSURLVolumeAvailableCapacityForImportantUsageKey __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));





extern "C" NSURLResourceKey const NSURLVolumeAvailableCapacityForOpportunisticUsageKey __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));




extern "C" NSURLResourceKey const NSURLIsUbiquitousItemKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLUbiquitousItemHasUnresolvedConflictsKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLUbiquitousItemIsDownloadedKey __attribute__((availability(macos,introduced=10.7,deprecated=10.9,message="Use NSURLUbiquitousItemDownloadingStatusKey instead"))) __attribute__((availability(ios,introduced=5.0,deprecated=7.0,message="Use NSURLUbiquitousItemDownloadingStatusKey instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSURLUbiquitousItemDownloadingStatusKey instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSURLUbiquitousItemDownloadingStatusKey instead")));
extern "C" NSURLResourceKey const NSURLUbiquitousItemIsDownloadingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLUbiquitousItemIsUploadedKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLUbiquitousItemIsUploadingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLUbiquitousItemPercentDownloadedKey __attribute__((availability(macos,introduced=10.7,deprecated=10.8,message="Use NSMetadataUbiquitousItemPercentDownloadedKey instead"))) __attribute__((availability(ios,introduced=5.0,deprecated=6.0,message="Use NSMetadataUbiquitousItemPercentDownloadedKey instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSMetadataUbiquitousItemPercentDownloadedKey instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSMetadataUbiquitousItemPercentDownloadedKey instead")));
extern "C" NSURLResourceKey const NSURLUbiquitousItemPercentUploadedKey __attribute__((availability(macos,introduced=10.7,deprecated=10.8,message="Use NSMetadataUbiquitousItemPercentUploadedKey instead"))) __attribute__((availability(ios,introduced=5.0,deprecated=6.0,message="Use NSMetadataUbiquitousItemPercentUploadedKey instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSMetadataUbiquitousItemPercentUploadedKey instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSMetadataUbiquitousItemPercentUploadedKey instead")));
extern "C" NSURLResourceKey const NSURLUbiquitousItemDownloadingStatusKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLUbiquitousItemDownloadingErrorKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLUbiquitousItemUploadingErrorKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLUbiquitousItemDownloadRequestedKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLResourceKey const NSURLUbiquitousItemContainerDisplayNameKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSURLResourceKey const NSURLUbiquitousItemIsSharedKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSURLResourceKey const NSURLUbiquitousSharedItemCurrentUserRoleKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSURLResourceKey const NSURLUbiquitousSharedItemCurrentUserPermissionsKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSURLResourceKey const NSURLUbiquitousSharedItemOwnerNameComponentsKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSURLResourceKey const NSURLUbiquitousSharedItemMostRecentEditorNameComponentsKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

typedef NSString * NSURLUbiquitousItemDownloadingStatus __attribute__((swift_wrapper(enum)));


extern "C" NSURLUbiquitousItemDownloadingStatus const NSURLUbiquitousItemDownloadingStatusNotDownloaded __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLUbiquitousItemDownloadingStatus const NSURLUbiquitousItemDownloadingStatusDownloaded __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSURLUbiquitousItemDownloadingStatus const NSURLUbiquitousItemDownloadingStatusCurrent __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSString * NSURLUbiquitousSharedItemRole __attribute__((swift_wrapper(enum)));



extern "C" NSURLUbiquitousSharedItemRole const NSURLUbiquitousSharedItemRoleOwner __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSURLUbiquitousSharedItemRole const NSURLUbiquitousSharedItemRoleParticipant __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

typedef NSString * NSURLUbiquitousSharedItemPermissions __attribute__((swift_wrapper(enum)));



extern "C" NSURLUbiquitousSharedItemPermissions const NSURLUbiquitousSharedItemPermissionsReadOnly __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSURLUbiquitousSharedItemPermissions const NSURLUbiquitousSharedItemPermissionsReadWrite __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));




typedef NSUInteger NSURLBookmarkCreationOptions; enum {
    NSURLBookmarkCreationPreferFileIDResolution __attribute__((availability(macos,introduced=10.6,deprecated=10.9,message="Not supported"))) __attribute__((availability(ios,introduced=4.0,deprecated=7.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported"))) = ( 1UL << 8 ),
    NSURLBookmarkCreationMinimalBookmark = ( 1UL << 9 ),
    NSURLBookmarkCreationSuitableForBookmarkFile = ( 1UL << 10 ),
    NSURLBookmarkCreationWithSecurityScope __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(macCatalyst,introduced=13.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = ( 1 << 11 ),
    NSURLBookmarkCreationSecurityScopeAllowOnlyReadAccess __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(macCatalyst,introduced=13.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = ( 1 << 12 ),
} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSUInteger NSURLBookmarkResolutionOptions; enum {
    NSURLBookmarkResolutionWithoutUI = ( 1UL << 8 ),
    NSURLBookmarkResolutionWithoutMounting = ( 1UL << 9 ),
    NSURLBookmarkResolutionWithSecurityScope __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(macCatalyst,introduced=13.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = ( 1 << 10 )
} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSUInteger NSURLBookmarkFileCreationOptions;



// - (nullable NSData *)bookmarkDataWithOptions:(NSURLBookmarkCreationOptions)options includingResourceValuesForKeys:(nullable NSArray<NSURLResourceKey> *)keys relativeToURL:(nullable NSURL *)relativeURL error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (nullable instancetype)initByResolvingBookmarkData:(NSData *)bookmarkData options:(NSURLBookmarkResolutionOptions)options relativeToURL:(nullable NSURL *)relativeURL bookmarkDataIsStale:(BOOL * _Nullable)isStale error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// + (nullable instancetype)URLByResolvingBookmarkData:(NSData *)bookmarkData options:(NSURLBookmarkResolutionOptions)options relativeToURL:(nullable NSURL *)relativeURL bookmarkDataIsStale:(BOOL * _Nullable)isStale error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (nullable NSDictionary<NSURLResourceKey, id> *)resourceValuesForKeys:(NSArray<NSURLResourceKey> *)keys fromBookmarkData:(NSData *)bookmarkData __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (BOOL)writeBookmarkData:(NSData *)bookmarkData toURL:(NSURL *)bookmarkFileURL options:(NSURLBookmarkFileCreationOptions)options error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (nullable NSData *)bookmarkDataWithContentsOfURL:(NSURL *)bookmarkFileURL error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (nullable instancetype)URLByResolvingAliasFileAtURL:(NSURL *)url options:(NSURLBookmarkResolutionOptions)options error:(NSError **)error __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)startAccessingSecurityScopedResource __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)stopAccessingSecurityScopedResource __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */



// @interface NSURL (NSPromisedItems)
// - (BOOL)getPromisedItemResourceValue:(id _Nullable * _Nonnull)value forKey:(NSURLResourceKey)key error:(NSError **)error __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSDictionary<NSURLResourceKey, id> *)promisedItemResourceValuesForKeys:(NSArray<NSURLResourceKey> *)keys error:(NSError **)error __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)checkPromisedItemIsReachableAndReturnError:(NSError **)error __attribute__((swift_error(none))) __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */



// @interface NSURL (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting>
/* @end */



__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))


#ifndef _REWRITER_typedef_NSURLQueryItem
#define _REWRITER_typedef_NSURLQueryItem
typedef struct objc_object NSURLQueryItem;
typedef struct {} _objc_exc_NSURLQueryItem;
#endif

struct NSURLQueryItem_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSString *_name;
	NSString *_value;
};

// - (instancetype)initWithName:(NSString *)name value:(nullable NSString *)value __attribute__((objc_designated_initializer));
// + (instancetype)queryItemWithName:(NSString *)name value:(nullable NSString *)value;
// @property (readonly) NSString *name;
// @property (nullable, readonly) NSString *value;
/* @end */



__attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSURLComponents
#define _REWRITER_typedef_NSURLComponents
typedef struct objc_object NSURLComponents;
typedef struct {} _objc_exc_NSURLComponents;
#endif

struct NSURLComponents_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};



// - (instancetype)init;


// - (nullable instancetype)initWithURL:(NSURL *)url resolvingAgainstBaseURL:(BOOL)resolve;


// + (nullable instancetype)componentsWithURL:(NSURL *)url resolvingAgainstBaseURL:(BOOL)resolve;


// - (nullable instancetype)initWithString:(NSString *)URLString;


// + (nullable instancetype)componentsWithString:(NSString *)URLString;


// @property (nullable, readonly, copy) NSURL *URL;


// - (nullable NSURL *)URLRelativeToURL:(nullable NSURL *)baseURL;


// @property (nullable, readonly, copy) NSString *string __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// @property (nullable, copy) NSString *scheme;
// @property (nullable, copy) NSString *user;
// @property (nullable, copy) NSString *password;
// @property (nullable, copy) NSString *host;
// @property (nullable, copy) NSNumber *port;
// @property (nullable, copy) NSString *path;
// @property (nullable, copy) NSString *query;
// @property (nullable, copy) NSString *fragment;


// @property (nullable, copy) NSString *percentEncodedUser;
// @property (nullable, copy) NSString *percentEncodedPassword;
// @property (nullable, copy) NSString *percentEncodedHost;
// @property (nullable, copy) NSString *percentEncodedPath;
// @property (nullable, copy) NSString *percentEncodedQuery;
// @property (nullable, copy) NSString *percentEncodedFragment;



// @property (readonly) NSRange rangeOfScheme __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) NSRange rangeOfUser __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) NSRange rangeOfPassword __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) NSRange rangeOfHost __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) NSRange rangeOfPort __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) NSRange rangeOfPath __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) NSRange rangeOfQuery __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) NSRange rangeOfFragment __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, copy) NSArray<NSURLQueryItem *> *queryItems __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// @property (nullable, copy) NSArray<NSURLQueryItem *> *percentEncodedQueryItems __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));

/* @end */



// @interface NSCharacterSet (NSURLUtilities)



@property (class, readonly, copy) NSCharacterSet *URLUserAllowedCharacterSet __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


@property (class, readonly, copy) NSCharacterSet *URLPasswordAllowedCharacterSet __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


@property (class, readonly, copy) NSCharacterSet *URLHostAllowedCharacterSet __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


@property (class, readonly, copy) NSCharacterSet *URLPathAllowedCharacterSet __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


@property (class, readonly, copy) NSCharacterSet *URLQueryAllowedCharacterSet __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


@property (class, readonly, copy) NSCharacterSet *URLFragmentAllowedCharacterSet __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */



// @interface NSString (NSURLUtilities)


// - (nullable NSString *)stringByAddingPercentEncodingWithAllowedCharacters:(NSCharacterSet *)allowedCharacters __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// @property (nullable, readonly, copy) NSString *stringByRemovingPercentEncoding __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// - (nullable NSString *)stringByAddingPercentEscapesUsingEncoding:(NSStringEncoding)enc __attribute__((availability(macos,introduced=10.0,deprecated=10.11,message="Use -stringByAddingPercentEncodingWithAllowedCharacters: instead, which always uses the recommended UTF-8 encoding, and which encodes for a specific URL component or subcomponent since each URL component or subcomponent has different rules for what characters are valid."))) __attribute__((availability(ios,introduced=2.0,deprecated=9.0,message="Use -stringByAddingPercentEncodingWithAllowedCharacters: instead, which always uses the recommended UTF-8 encoding, and which encodes for a specific URL component or subcomponent since each URL component or subcomponent has different rules for what characters are valid."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -stringByAddingPercentEncodingWithAllowedCharacters: instead, which always uses the recommended UTF-8 encoding, and which encodes for a specific URL component or subcomponent since each URL component or subcomponent has different rules for what characters are valid."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -stringByAddingPercentEncodingWithAllowedCharacters: instead, which always uses the recommended UTF-8 encoding, and which encodes for a specific URL component or subcomponent since each URL component or subcomponent has different rules for what characters are valid.")));
// - (nullable NSString *)stringByReplacingPercentEscapesUsingEncoding:(NSStringEncoding)enc __attribute__((availability(macos,introduced=10.0,deprecated=10.11,message="Use -stringByRemovingPercentEncoding instead, which always uses the recommended UTF-8 encoding."))) __attribute__((availability(ios,introduced=2.0,deprecated=9.0,message="Use -stringByRemovingPercentEncoding instead, which always uses the recommended UTF-8 encoding."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -stringByRemovingPercentEncoding instead, which always uses the recommended UTF-8 encoding."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -stringByRemovingPercentEncoding instead, which always uses the recommended UTF-8 encoding.")));

/* @end */



// @interface NSURL (NSURLPathUtilities)



// + (nullable NSURL *)fileURLWithPathComponents:(NSArray<NSString *> *)components __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSArray<NSString *> *pathComponents __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSString *lastPathComponent __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSString *pathExtension __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (nullable NSURL *)URLByAppendingPathComponent:(NSString *)pathComponent __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSURL *)URLByAppendingPathComponent:(NSString *)pathComponent isDirectory:(BOOL)isDirectory __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSURL *URLByDeletingLastPathComponent __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSURL *)URLByAppendingPathExtension:(NSString *)pathExtension __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSURL *URLByDeletingPathExtension __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (nullable, readonly, copy) NSURL *URLByStandardizingPath __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSURL *URLByResolvingSymlinksInPath __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */






__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSFileSecurity
#define _REWRITER_typedef_NSFileSecurity
typedef struct objc_object NSFileSecurity;
typedef struct {} _objc_exc_NSFileSecurity;
#endif

struct NSFileSecurity_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};

// - (nullable instancetype) initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));
/* @end */

#pragma clang assume_nonnull end



// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

#ifndef _REWRITER_typedef_NSDirectoryEnumerator
#define _REWRITER_typedef_NSDirectoryEnumerator
typedef struct objc_object NSDirectoryEnumerator;
typedef struct {} _objc_exc_NSDirectoryEnumerator;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSNumber
#define _REWRITER_typedef_NSNumber
typedef struct objc_object NSNumber;
typedef struct {} _objc_exc_NSNumber;
#endif

#ifndef _REWRITER_typedef_NSFileProviderService
#define _REWRITER_typedef_NSFileProviderService
typedef struct objc_object NSFileProviderService;
typedef struct {} _objc_exc_NSFileProviderService;
#endif

#ifndef _REWRITER_typedef_NSXPCConnection
#define _REWRITER_typedef_NSXPCConnection
typedef struct objc_object NSXPCConnection;
typedef struct {} _objc_exc_NSXPCConnection;
#endif

#ifndef _REWRITER_typedef_NSLock
#define _REWRITER_typedef_NSLock
typedef struct objc_object NSLock;
typedef struct {} _objc_exc_NSLock;
#endif

// @protocol NSFileManagerDelegate;

typedef NSString * NSFileAttributeKey __attribute__((swift_wrapper(struct)));
typedef NSString * NSFileAttributeType __attribute__((swift_wrapper(enum)));
typedef NSString * NSFileProtectionType __attribute__((swift_wrapper(enum)));

typedef NSString * NSFileProviderServiceName __attribute__((swift_wrapper(struct)));

#pragma clang assume_nonnull begin





typedef NSUInteger NSVolumeEnumerationOptions; enum {


    NSVolumeEnumerationSkipHiddenVolumes = 1UL << 1,



    NSVolumeEnumerationProduceFileReferenceURLs = 1UL << 2
} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSUInteger NSDirectoryEnumerationOptions; enum {


    NSDirectoryEnumerationSkipsSubdirectoryDescendants = 1UL << 0,



    NSDirectoryEnumerationSkipsPackageDescendants = 1UL << 1,



    NSDirectoryEnumerationSkipsHiddenFiles = 1UL << 2,



    NSDirectoryEnumerationIncludesDirectoriesPostOrder __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) = 1UL << 3,



    NSDirectoryEnumerationProducesRelativePathURLs __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) = 1UL << 4,
} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSUInteger NSFileManagerItemReplacementOptions; enum {


    NSFileManagerItemReplacementUsingNewMetadataOnly = 1UL << 0,



     NSFileManagerItemReplacementWithoutDeletingBackupItem = 1UL << 1
} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSInteger NSURLRelationship; enum {
    NSURLRelationshipContains,
    NSURLRelationshipSame,
    NSURLRelationshipOther
} __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


typedef NSUInteger NSFileManagerUnmountOptions; enum {


    NSFileManagerUnmountAllPartitionsAndEjectDisk = 1UL << 0,



    NSFileManagerUnmountWithoutUI = 1UL << 1,
} __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));


extern "C" NSString *const NSFileManagerUnmountDissentingProcessIdentifierErrorKey __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



extern NSNotificationName const NSUbiquityIdentityDidChangeNotification __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


#ifndef _REWRITER_typedef_NSFileManager
#define _REWRITER_typedef_NSFileManager
typedef struct objc_object NSFileManager;
typedef struct {} _objc_exc_NSFileManager;
#endif

struct NSFileManager_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};




@property (class, readonly, strong) NSFileManager *defaultManager;



// - (nullable NSArray<NSURL *> *)mountedVolumeURLsIncludingResourceValuesForKeys:(nullable NSArray<NSURLResourceKey> *)propertyKeys options:(NSVolumeEnumerationOptions)options __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)unmountVolumeAtURL:(NSURL *)url options:(NSFileManagerUnmountOptions)mask completionHandler:(void (^)(NSError * _Nullable errorOrNil))completionHandler __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));







// - (nullable NSArray<NSURL *> *)contentsOfDirectoryAtURL:(NSURL *)url includingPropertiesForKeys:(nullable NSArray<NSURLResourceKey> *)keys options:(NSDirectoryEnumerationOptions)mask error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (NSArray<NSURL *> *)URLsForDirectory:(NSSearchPathDirectory)directory inDomains:(NSSearchPathDomainMask)domainMask __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (nullable NSURL *)URLForDirectory:(NSSearchPathDirectory)directory inDomain:(NSSearchPathDomainMask)domain appropriateForURL:(nullable NSURL *)url create:(BOOL)shouldCreate error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)getRelationship:(NSURLRelationship *)outRelationship ofDirectoryAtURL:(NSURL *)directoryURL toItemAtURL:(NSURL *)otherURL error:(NSError **)error __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)getRelationship:(NSURLRelationship *)outRelationship ofDirectory:(NSSearchPathDirectory)directory inDomain:(NSSearchPathDomainMask)domainMask toItemAtURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)createDirectoryAtURL:(NSURL *)url withIntermediateDirectories:(BOOL)createIntermediates attributes:(nullable NSDictionary<NSFileAttributeKey, id> *)attributes error:(NSError **)error __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)createSymbolicLinkAtURL:(NSURL *)url withDestinationURL:(NSURL *)destURL error:(NSError **)error __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (nullable, assign) id <NSFileManagerDelegate> delegate __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)setAttributes:(NSDictionary<NSFileAttributeKey, id> *)attributes ofItemAtPath:(NSString *)path error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)createDirectoryAtPath:(NSString *)path withIntermediateDirectories:(BOOL)createIntermediates attributes:(nullable NSDictionary<NSFileAttributeKey, id> *)attributes error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (nullable NSArray<NSString *> *)contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (nullable NSArray<NSString *> *)subpathsOfDirectoryAtPath:(NSString *)path error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (nullable NSDictionary<NSFileAttributeKey, id> *)attributesOfItemAtPath:(NSString *)path error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (nullable NSDictionary<NSFileAttributeKey, id> *)attributesOfFileSystemForPath:(NSString *)path error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)createSymbolicLinkAtPath:(NSString *)path withDestinationPath:(NSString *)destPath error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (nullable NSString *)destinationOfSymbolicLinkAtPath:(NSString *)path error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)copyItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)moveItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)linkItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)removeItemAtPath:(NSString *)path error:(NSError **)error __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)copyItemAtURL:(NSURL *)srcURL toURL:(NSURL *)dstURL error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)moveItemAtURL:(NSURL *)srcURL toURL:(NSURL *)dstURL error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)linkItemAtURL:(NSURL *)srcURL toURL:(NSURL *)dstURL error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (BOOL)removeItemAtURL:(NSURL *)URL error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)trashItemAtURL:(NSURL *)url resultingItemURL:(NSURL * _Nullable * _Nullable)outResultingURL error:(NSError **)error __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



// - (nullable NSDictionary *)fileAttributesAtPath:(NSString *)path traverseLink:(BOOL)yorn __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Use -attributesOfItemAtPath:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -attributesOfItemAtPath:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -attributesOfItemAtPath:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -attributesOfItemAtPath:error: instead")));
// - (BOOL)changeFileAttributes:(NSDictionary *)attributes atPath:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Use -setAttributes:ofItemAtPath:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -setAttributes:ofItemAtPath:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -setAttributes:ofItemAtPath:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -setAttributes:ofItemAtPath:error: instead")));
// - (nullable NSArray *)directoryContentsAtPath:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Use -contentsOfDirectoryAtPath:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -contentsOfDirectoryAtPath:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -contentsOfDirectoryAtPath:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -contentsOfDirectoryAtPath:error: instead")));
// - (nullable NSDictionary *)fileSystemAttributesAtPath:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Use -attributesOfFileSystemForPath:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -attributesOfFileSystemForPath:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -attributesOfFileSystemForPath:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -attributesOfFileSystemForPath:error: instead")));
// - (nullable NSString *)pathContentOfSymbolicLinkAtPath:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Use -destinationOfSymbolicLinkAtPath:error:"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -destinationOfSymbolicLinkAtPath:error:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -destinationOfSymbolicLinkAtPath:error:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -destinationOfSymbolicLinkAtPath:error:")));
// - (BOOL)createSymbolicLinkAtPath:(NSString *)path pathContent:(NSString *)otherpath __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Use -createSymbolicLinkAtPath:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -createSymbolicLinkAtPath:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -createSymbolicLinkAtPath:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -createSymbolicLinkAtPath:error: instead")));
// - (BOOL)createDirectoryAtPath:(NSString *)path attributes:(NSDictionary *)attributes __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Use -createDirectoryAtPath:withIntermediateDirectories:attributes:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Use -createDirectoryAtPath:withIntermediateDirectories:attributes:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -createDirectoryAtPath:withIntermediateDirectories:attributes:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -createDirectoryAtPath:withIntermediateDirectories:attributes:error: instead")));
// @property (readonly, copy) NSString *currentDirectoryPath;
// - (BOOL)changeCurrentDirectoryPath:(NSString *)path;



// - (BOOL)fileExistsAtPath:(NSString *)path;
// - (BOOL)fileExistsAtPath:(NSString *)path isDirectory:(nullable BOOL *)isDirectory;
// - (BOOL)isReadableFileAtPath:(NSString *)path;
// - (BOOL)isWritableFileAtPath:(NSString *)path;
// - (BOOL)isExecutableFileAtPath:(NSString *)path;
// - (BOOL)isDeletableFileAtPath:(NSString *)path;



// - (BOOL)contentsEqualAtPath:(NSString *)path1 andPath:(NSString *)path2;



// - (NSString *)displayNameAtPath:(NSString *)path;



// - (nullable NSArray<NSString *> *)componentsToDisplayForPath:(NSString *)path;



// - (nullable NSDirectoryEnumerator<NSString *> *)enumeratorAtPath:(NSString *)path;





// - (nullable NSDirectoryEnumerator<NSURL *> *)enumeratorAtURL:(NSURL *)url includingPropertiesForKeys:(nullable NSArray<NSURLResourceKey> *)keys options:(NSDirectoryEnumerationOptions)mask errorHandler:(nullable BOOL (^)(NSURL *url, NSError *error))handler __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (nullable NSArray<NSString *> *)subpathsAtPath:(NSString *)path;



// - (nullable NSData *)contentsAtPath:(NSString *)path;
// - (BOOL)createFileAtPath:(NSString *)path contents:(nullable NSData *)data attributes:(nullable NSDictionary<NSFileAttributeKey, id> *)attr;



// - (const char *)fileSystemRepresentationWithPath:(NSString *)path __attribute__((objc_returns_inner_pointer));



// - (NSString *)stringWithFileSystemRepresentation:(const char *)str length:(NSUInteger)len;
// - (BOOL)replaceItemAtURL:(NSURL *)originalItemURL withItemAtURL:(NSURL *)newItemURL backupItemName:(nullable NSString *)backupItemName options:(NSFileManagerItemReplacementOptions)options resultingItemURL:(NSURL * _Nullable * _Nullable)resultingURL error:(NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (BOOL)setUbiquitous:(BOOL)flag itemAtURL:(NSURL *)url destinationURL:(NSURL *)destinationURL error:(NSError **)error __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)isUbiquitousItemAtURL:(NSURL *)url __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)startDownloadingUbiquitousItemAtURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)evictUbiquitousItemAtURL:(NSURL *)url error:(NSError **)error __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (nullable NSURL *)URLForUbiquityContainerIdentifier:(nullable NSString *)containerIdentifier __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (nullable NSURL *)URLForPublishingUbiquitousItemAtURL:(NSURL *)url expirationDate:(NSDate * _Nullable * _Nullable)outDate error:(NSError **)error __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// @property (nullable, readonly, copy) id<NSObject,NSCopying,NSCoding> ubiquityIdentityToken __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)getFileProviderServicesForItemAtURL:(NSURL *)url completionHandler:(void (^)(NSDictionary <NSFileProviderServiceName, NSFileProviderService *> * _Nullable services, NSError * _Nullable error))completionHandler __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



// - (nullable NSURL *)containerURLForSecurityApplicationGroupIdentifier:(NSString *)groupIdentifier __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


/* @end */


// @interface NSFileManager (NSUserInformation)

// @property (readonly, copy) NSURL *homeDirectoryForCurrentUser __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// @property (readonly, copy) NSURL *temporaryDirectory __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// - (nullable NSURL *)homeDirectoryForUser:(NSString *)userName __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

/* @end */




// @interface NSObject (NSCopyLinkMoveHandler)
// - (BOOL)fileManager:(NSFileManager *)fm shouldProceedAfterError:(NSDictionary *)errorInfo __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message=" Handler API no longer supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message=" Handler API no longer supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message=" Handler API no longer supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message=" Handler API no longer supported")));
// - (void)fileManager:(NSFileManager *)fm willProcessPath:(NSString *)path __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Handler API no longer supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Handler API no longer supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Handler API no longer supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Handler API no longer supported")));
/* @end */



// @protocol NSFileManagerDelegate <NSObject>
/* @optional */





// - (BOOL)fileManager:(NSFileManager *)fileManager shouldCopyItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath;
// - (BOOL)fileManager:(NSFileManager *)fileManager shouldCopyItemAtURL:(NSURL *)srcURL toURL:(NSURL *)dstURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)fileManager:(NSFileManager *)fileManager shouldProceedAfterError:(NSError *)error copyingItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath;
// - (BOOL)fileManager:(NSFileManager *)fileManager shouldProceedAfterError:(NSError *)error copyingItemAtURL:(NSURL *)srcURL toURL:(NSURL *)dstURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)fileManager:(NSFileManager *)fileManager shouldMoveItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath;
// - (BOOL)fileManager:(NSFileManager *)fileManager shouldMoveItemAtURL:(NSURL *)srcURL toURL:(NSURL *)dstURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)fileManager:(NSFileManager *)fileManager shouldProceedAfterError:(NSError *)error movingItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath;
// - (BOOL)fileManager:(NSFileManager *)fileManager shouldProceedAfterError:(NSError *)error movingItemAtURL:(NSURL *)srcURL toURL:(NSURL *)dstURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)fileManager:(NSFileManager *)fileManager shouldLinkItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath;
// - (BOOL)fileManager:(NSFileManager *)fileManager shouldLinkItemAtURL:(NSURL *)srcURL toURL:(NSURL *)dstURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)fileManager:(NSFileManager *)fileManager shouldProceedAfterError:(NSError *)error linkingItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath;
// - (BOOL)fileManager:(NSFileManager *)fileManager shouldProceedAfterError:(NSError *)error linkingItemAtURL:(NSURL *)srcURL toURL:(NSURL *)dstURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)fileManager:(NSFileManager *)fileManager shouldRemoveItemAtPath:(NSString *)path;
// - (BOOL)fileManager:(NSFileManager *)fileManager shouldRemoveItemAtURL:(NSURL *)URL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)fileManager:(NSFileManager *)fileManager shouldProceedAfterError:(NSError *)error removingItemAtPath:(NSString *)path;
// - (BOOL)fileManager:(NSFileManager *)fileManager shouldProceedAfterError:(NSError *)error removingItemAtURL:(NSURL *)URL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */




#ifndef _REWRITER_typedef_NSDirectoryEnumerator
#define _REWRITER_typedef_NSDirectoryEnumerator
typedef struct objc_object NSDirectoryEnumerator;
typedef struct {} _objc_exc_NSDirectoryEnumerator;
#endif

struct NSDirectoryEnumerator_IMPL {
	struct NSEnumerator_IMPL NSEnumerator_IVARS;
};




// @property (nullable, readonly, copy) NSDictionary<NSFileAttributeKey, id> *fileAttributes;
// @property (nullable, readonly, copy) NSDictionary<NSFileAttributeKey, id> *directoryAttributes;



// @property (readonly) BOOL isEnumeratingDirectoryPostOrder __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

// - (void)skipDescendents;



// @property (readonly) NSUInteger level __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)skipDescendants __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */





__attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)))

#ifndef _REWRITER_typedef_NSFileProviderService
#define _REWRITER_typedef_NSFileProviderService
typedef struct objc_object NSFileProviderService;
typedef struct {} _objc_exc_NSFileProviderService;
#endif

struct NSFileProviderService_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSFileProviderServiceName _name;
	id _endpointCreatingProxy;
	dispatch_group_t _requestFinishedGroup;
};

// - (void)getFileProviderConnectionWithCompletionHandler:(void (^)(NSXPCConnection * _Nullable connection, NSError * _Nullable error))completionHandler;
// @property (readonly, copy) NSFileProviderServiceName name;
/* @end */


extern "C" NSFileAttributeKey const NSFileType;
extern "C" NSFileAttributeType const NSFileTypeDirectory;
extern "C" NSFileAttributeType const NSFileTypeRegular;
extern "C" NSFileAttributeType const NSFileTypeSymbolicLink;
extern "C" NSFileAttributeType const NSFileTypeSocket;
extern "C" NSFileAttributeType const NSFileTypeCharacterSpecial;
extern "C" NSFileAttributeType const NSFileTypeBlockSpecial;
extern "C" NSFileAttributeType const NSFileTypeUnknown;
extern "C" NSFileAttributeKey const NSFileSize;
extern "C" NSFileAttributeKey const NSFileModificationDate;
extern "C" NSFileAttributeKey const NSFileReferenceCount;
extern "C" NSFileAttributeKey const NSFileDeviceIdentifier;
extern "C" NSFileAttributeKey const NSFileOwnerAccountName;
extern "C" NSFileAttributeKey const NSFileGroupOwnerAccountName;
extern "C" NSFileAttributeKey const NSFilePosixPermissions;
extern "C" NSFileAttributeKey const NSFileSystemNumber;
extern "C" NSFileAttributeKey const NSFileSystemFileNumber;
extern "C" NSFileAttributeKey const NSFileExtensionHidden;
extern "C" NSFileAttributeKey const NSFileHFSCreatorCode;
extern "C" NSFileAttributeKey const NSFileHFSTypeCode;
extern "C" NSFileAttributeKey const NSFileImmutable;
extern "C" NSFileAttributeKey const NSFileAppendOnly;
extern "C" NSFileAttributeKey const NSFileCreationDate;
extern "C" NSFileAttributeKey const NSFileOwnerAccountID;
extern "C" NSFileAttributeKey const NSFileGroupOwnerAccountID;
extern "C" NSFileAttributeKey const NSFileBusy;
extern "C" NSFileAttributeKey const NSFileProtectionKey __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));
extern "C" NSFileProtectionType const NSFileProtectionNone __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));
extern "C" NSFileProtectionType const NSFileProtectionComplete __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));
extern "C" NSFileProtectionType const NSFileProtectionCompleteUnlessOpen __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));
extern "C" NSFileProtectionType const NSFileProtectionCompleteUntilFirstUserAuthentication __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

extern "C" NSFileAttributeKey const NSFileSystemSize;
extern "C" NSFileAttributeKey const NSFileSystemFreeSize;
extern "C" NSFileAttributeKey const NSFileSystemNodes;
extern "C" NSFileAttributeKey const NSFileSystemFreeNodes;

// @interface NSDictionary<KeyType, ObjectType> (NSFileAttributes)

// - (unsigned long long)fileSize;
// - (nullable NSDate *)fileModificationDate;
// - (nullable NSString *)fileType;
// - (NSUInteger)filePosixPermissions;
// - (nullable NSString *)fileOwnerAccountName;
// - (nullable NSString *)fileGroupOwnerAccountName;
// - (NSInteger)fileSystemNumber;
// - (NSUInteger)fileSystemFileNumber;
// - (BOOL)fileExtensionHidden;
// - (OSType)fileHFSCreatorCode;
// - (OSType)fileHFSTypeCode;
// - (BOOL)fileIsImmutable;
// - (BOOL)fileIsAppendOnly;
// - (nullable NSDate *)fileCreationDate;
// - (nullable NSNumber *)fileOwnerAccountID;
// - (nullable NSNumber *)fileGroupOwnerAccountID;
/* @end */

#pragma clang assume_nonnull end





#pragma clang assume_nonnull begin
typedef NSUInteger NSPointerFunctionsOptions; enum {



    NSPointerFunctionsStrongMemory __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (0UL << 0),
    NSPointerFunctionsZeroingWeakMemory __attribute__((availability(macos,introduced=10.5,deprecated=10.8,message="GC no longer supported"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = (1UL << 0),
    NSPointerFunctionsOpaqueMemory __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (2UL << 0),
    NSPointerFunctionsMallocMemory __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (3UL << 0),
    NSPointerFunctionsMachVirtualMemory __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (4UL << 0),
    NSPointerFunctionsWeakMemory __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (5UL << 0),



    NSPointerFunctionsObjectPersonality __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (0UL << 8),
    NSPointerFunctionsOpaquePersonality __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1UL << 8),
    NSPointerFunctionsObjectPointerPersonality __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (2UL << 8),
    NSPointerFunctionsCStringPersonality __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (3UL << 8),
    NSPointerFunctionsStructPersonality __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (4UL << 8),
    NSPointerFunctionsIntegerPersonality __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (5UL << 8),

    NSPointerFunctionsCopyIn __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = (1UL << 16),
};

__attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSPointerFunctions
#define _REWRITER_typedef_NSPointerFunctions
typedef struct objc_object NSPointerFunctions;
typedef struct {} _objc_exc_NSPointerFunctions;
#endif

struct NSPointerFunctions_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// - (instancetype)initWithOptions:(NSPointerFunctionsOptions)options __attribute__((objc_designated_initializer));
// + (NSPointerFunctions *)pointerFunctionsWithOptions:(NSPointerFunctionsOptions)options;


// @property (nullable) NSUInteger (*hashFunction)(const void *item, NSUInteger (* _Nullable size)(const void *item));
// @property (nullable) BOOL (*isEqualFunction)(const void *item1, const void*item2, NSUInteger (* _Nullable size)(const void *item));
// @property (nullable) NSUInteger (*sizeFunction)(const void *item);
// @property (nullable) NSString * _Nullable (*descriptionFunction)(const void *item);


// @property (nullable) void (*relinquishFunction)(const void *item, NSUInteger (* _Nullable size)(const void *item));
// @property (nullable) void * _Nonnull (*acquireFunction)(const void *src, NSUInteger (* _Nullable size)(const void *item), BOOL shouldCopy);


// @property BOOL usesStrongWriteBarrier
    __attribute__((availability(macosx,introduced=10.5,deprecated=10.12,message="Garbage collection no longer supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=10.0,message="Garbage collection no longer supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=3.0,message="Garbage collection no longer supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=10.0,message="Garbage collection no longer supported")));

// @property BOOL usesWeakReadAndWriteBarriers
    __attribute__((availability(macosx,introduced=10.5,deprecated=10.12,message="Garbage collection no longer supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=10.0,message="Garbage collection no longer supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=3.0,message="Garbage collection no longer supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=10.0,message="Garbage collection no longer supported")));
/* @end */

#pragma clang assume_nonnull end






// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif

#ifndef _REWRITER_typedef_NSHashTable
#define _REWRITER_typedef_NSHashTable
typedef struct objc_object NSHashTable;
typedef struct {} _objc_exc_NSHashTable;
#endif


#pragma clang assume_nonnull begin





static const NSPointerFunctionsOptions NSHashTableStrongMemory __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = NSPointerFunctionsStrongMemory;
static const NSPointerFunctionsOptions NSHashTableZeroingWeakMemory __attribute__((availability(macos,introduced=10.5,deprecated=10.8,message="GC no longer supported"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = NSPointerFunctionsZeroingWeakMemory;
static const NSPointerFunctionsOptions NSHashTableCopyIn __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = NSPointerFunctionsCopyIn;
static const NSPointerFunctionsOptions NSHashTableObjectPointerPersonality __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = NSPointerFunctionsObjectPointerPersonality;
static const NSPointerFunctionsOptions NSHashTableWeakMemory __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = NSPointerFunctionsWeakMemory;

typedef NSUInteger NSHashTableOptions;

__attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSHashTable
#define _REWRITER_typedef_NSHashTable
typedef struct objc_object NSHashTable;
typedef struct {} _objc_exc_NSHashTable;
#endif

struct NSHashTable_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// - (instancetype)initWithOptions:(NSPointerFunctionsOptions)options capacity:(NSUInteger)initialCapacity __attribute__((objc_designated_initializer));
// - (instancetype)initWithPointerFunctions:(NSPointerFunctions *)functions capacity:(NSUInteger)initialCapacity __attribute__((objc_designated_initializer));



// + (NSHashTable<ObjectType> *)hashTableWithOptions:(NSPointerFunctionsOptions)options;

// + (id)hashTableWithWeakObjects __attribute__((availability(macos,introduced=10.5,deprecated=10.8,message="GC no longer supported"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

// + (NSHashTable<ObjectType> *)weakObjectsHashTable __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (readonly, copy) NSPointerFunctions *pointerFunctions;

// @property (readonly) NSUInteger count;
// - (nullable ObjectType)member:(nullable ObjectType)object;
// - (NSEnumerator<ObjectType> *)objectEnumerator;

// - (void)addObject:(nullable ObjectType)object;
// - (void)removeObject:(nullable ObjectType)object;

// - (void)removeAllObjects;

// @property (readonly, copy) NSArray<ObjectType> *allObjects;

// @property (nullable, nonatomic, readonly) ObjectType anyObject;
// - (BOOL)containsObject:(nullable ObjectType)anObject;

// - (BOOL)intersectsHashTable:(NSHashTable<ObjectType> *)other;
// - (BOOL)isEqualToHashTable:(NSHashTable<ObjectType> *)other;
// - (BOOL)isSubsetOfHashTable:(NSHashTable<ObjectType> *)other;

// - (void)intersectHashTable:(NSHashTable<ObjectType> *)other;
// - (void)unionHashTable:(NSHashTable<ObjectType> *)other;
// - (void)minusHashTable:(NSHashTable<ObjectType> *)other;

// @property (readonly, copy) NSSet<ObjectType> *setRepresentation;

/* @end */




typedef struct {NSUInteger _pi; NSUInteger _si; void * _Nullable _bs;} NSHashEnumerator;

extern "C" void NSFreeHashTable(NSHashTable *table);
extern "C" void NSResetHashTable(NSHashTable *table);
extern "C" BOOL NSCompareHashTables(NSHashTable *table1, NSHashTable *table2);
extern "C" NSHashTable *NSCopyHashTableWithZone(NSHashTable *table, NSZone * _Nullable zone);
extern "C" void *NSHashGet(NSHashTable *table, const void * _Nullable pointer);
extern "C" void NSHashInsert(NSHashTable *table, const void * _Nullable pointer);
extern "C" void NSHashInsertKnownAbsent(NSHashTable *table, const void * _Nullable pointer);
extern "C" void * _Nullable NSHashInsertIfAbsent(NSHashTable *table, const void * _Nullable pointer);
extern "C" void NSHashRemove(NSHashTable *table, const void * _Nullable pointer);
extern "C" NSHashEnumerator NSEnumerateHashTable(NSHashTable *table);
extern "C" void * _Nullable NSNextHashEnumeratorItem(NSHashEnumerator *enumerator);
extern "C" void NSEndHashTableEnumeration(NSHashEnumerator *enumerator);
extern "C" NSUInteger NSCountHashTable(NSHashTable *table);
extern "C" NSString *NSStringFromHashTable(NSHashTable *table);
extern "C" NSArray *NSAllHashTableObjects(NSHashTable *table);




typedef struct {
    NSUInteger (* _Nullable hash)(NSHashTable *table, const void *);
    BOOL (* _Nullable isEqual)(NSHashTable *table, const void *, const void *);
    void (* _Nullable retain)(NSHashTable *table, const void *);
    void (* _Nullable release)(NSHashTable *table, void *);
    NSString * _Nullable (* _Nullable describe)(NSHashTable *table, const void *);
} NSHashTableCallBacks;

extern "C" NSHashTable *NSCreateHashTableWithZone(NSHashTableCallBacks callBacks, NSUInteger capacity, NSZone * _Nullable zone);
extern "C" NSHashTable *NSCreateHashTable(NSHashTableCallBacks callBacks, NSUInteger capacity);


extern "C" const NSHashTableCallBacks NSIntegerHashCallBacks __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" const NSHashTableCallBacks NSNonOwnedPointerHashCallBacks;
extern "C" const NSHashTableCallBacks NSNonRetainedObjectHashCallBacks;
extern "C" const NSHashTableCallBacks NSObjectHashCallBacks;
extern "C" const NSHashTableCallBacks NSOwnedObjectIdentityHashCallBacks;
extern "C" const NSHashTableCallBacks NSOwnedPointerHashCallBacks;
extern "C" const NSHashTableCallBacks NSPointerToStructHashCallBacks;
extern "C" const NSHashTableCallBacks NSIntHashCallBacks __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Not supported"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
#pragma clang assume_nonnull end
// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

// @class NSDate;
#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

// @class NSNumber;
#ifndef _REWRITER_typedef_NSNumber
#define _REWRITER_typedef_NSNumber
typedef struct objc_object NSNumber;
typedef struct {} _objc_exc_NSNumber;
#endif

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @class NSURL;
#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif


typedef NSString * NSHTTPCookiePropertyKey __attribute__((swift_wrapper(struct)));
typedef NSString * NSHTTPCookieStringPolicy __attribute__((swift_wrapper(enum)));

#pragma clang assume_nonnull begin





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieName;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieValue;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieOriginURL;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieVersion;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieDomain;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookiePath;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieSecure;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieExpires;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieComment;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieCommentURL;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieDiscard;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieMaximumAge;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookiePort;





extern "C" NSHTTPCookiePropertyKey const NSHTTPCookieSameSitePolicy __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));





extern "C" NSHTTPCookieStringPolicy const NSHTTPCookieSameSiteLax __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));





extern "C" NSHTTPCookieStringPolicy const NSHTTPCookieSameSiteStrict __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

// @class NSHTTPCookieInternal;
#ifndef _REWRITER_typedef_NSHTTPCookieInternal
#define _REWRITER_typedef_NSHTTPCookieInternal
typedef struct objc_object NSHTTPCookieInternal;
typedef struct {} _objc_exc_NSHTTPCookieInternal;
#endif


#ifndef _REWRITER_typedef_NSHTTPCookie
#define _REWRITER_typedef_NSHTTPCookie
typedef struct objc_object NSHTTPCookie;
typedef struct {} _objc_exc_NSHTTPCookie;
#endif

struct NSHTTPCookie_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSHTTPCookieInternal *_cookiePrivate;
};

// - (nullable instancetype)initWithProperties:(NSDictionary<NSHTTPCookiePropertyKey, id> *)properties;
// + (nullable NSHTTPCookie *)cookieWithProperties:(NSDictionary<NSHTTPCookiePropertyKey, id> *)properties;
// + (NSDictionary<NSString *, NSString *> *)requestHeaderFieldsWithCookies:(NSArray<NSHTTPCookie *> *)cookies;
// + (NSArray<NSHTTPCookie *> *)cookiesWithResponseHeaderFields:(NSDictionary<NSString *, NSString *> *)headerFields forURL:(NSURL *)URL;
// @property (nullable, readonly, copy) NSDictionary<NSHTTPCookiePropertyKey, id> *properties;







// @property (readonly) NSUInteger version;





// @property (readonly, copy) NSString *name;





// @property (readonly, copy) NSString *value;
// @property (nullable, readonly, copy) NSDate *expiresDate;







// @property (readonly, getter=isSessionOnly) BOOL sessionOnly;
// @property (readonly, copy) NSString *domain;
// @property (readonly, copy) NSString *path;
// @property (readonly, getter=isSecure) BOOL secure;
// @property (readonly, getter=isHTTPOnly) BOOL HTTPOnly;
// @property (nullable, readonly, copy) NSString *comment;
// @property (nullable, readonly, copy) NSURL *commentURL;
// @property (nullable, readonly, copy) NSArray<NSNumber *> *portList;
// @property (nullable, readonly, copy) NSHTTPCookieStringPolicy sameSitePolicy __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

/* @end */

#pragma clang assume_nonnull end
// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

// @class NSHTTPCookie;
#ifndef _REWRITER_typedef_NSHTTPCookie
#define _REWRITER_typedef_NSHTTPCookie
typedef struct objc_object NSHTTPCookie;
typedef struct {} _objc_exc_NSHTTPCookie;
#endif

// @class NSURL;
#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

// @class NSDate;
#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

// @class NSURLSessionTask;
#ifndef _REWRITER_typedef_NSURLSessionTask
#define _REWRITER_typedef_NSURLSessionTask
typedef struct objc_object NSURLSessionTask;
typedef struct {} _objc_exc_NSURLSessionTask;
#endif

// @class NSSortDescriptor;
#ifndef _REWRITER_typedef_NSSortDescriptor
#define _REWRITER_typedef_NSSortDescriptor
typedef struct objc_object NSSortDescriptor;
typedef struct {} _objc_exc_NSSortDescriptor;
#endif


#pragma clang assume_nonnull begin
typedef NSUInteger NSHTTPCookieAcceptPolicy; enum {
    NSHTTPCookieAcceptPolicyAlways,
    NSHTTPCookieAcceptPolicyNever,
    NSHTTPCookieAcceptPolicyOnlyFromMainDocumentDomain
};


// @class NSHTTPCookieStorageInternal;
#ifndef _REWRITER_typedef_NSHTTPCookieStorageInternal
#define _REWRITER_typedef_NSHTTPCookieStorageInternal
typedef struct objc_object NSHTTPCookieStorageInternal;
typedef struct {} _objc_exc_NSHTTPCookieStorageInternal;
#endif


#ifndef _REWRITER_typedef_NSHTTPCookieStorage
#define _REWRITER_typedef_NSHTTPCookieStorage
typedef struct objc_object NSHTTPCookieStorage;
typedef struct {} _objc_exc_NSHTTPCookieStorage;
#endif

struct NSHTTPCookieStorage_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSHTTPCookieStorageInternal *_internal;
};

@property(class, readonly, strong) NSHTTPCookieStorage *sharedHTTPCookieStorage;
// + (NSHTTPCookieStorage *)sharedCookieStorageForGroupContainerIdentifier:(NSString *)identifier __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// @property (nullable , readonly, copy) NSArray<NSHTTPCookie *> *cookies;







// - (void)setCookie:(NSHTTPCookie *)cookie;





// - (void)deleteCookie:(NSHTTPCookie *)cookie;





// - (void)removeCookiesSinceDate:(NSDate *)date __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSArray<NSHTTPCookie *> *)cookiesForURL:(NSURL *)URL;
// - (void)setCookies:(NSArray<NSHTTPCookie *> *)cookies forURL:(nullable NSURL *)URL mainDocumentURL:(nullable NSURL *)mainDocumentURL;





// @property NSHTTPCookieAcceptPolicy cookieAcceptPolicy;







// - (NSArray<NSHTTPCookie *> *)sortedCookiesUsingDescriptors:(NSArray<NSSortDescriptor *> *) sortOrder __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSHTTPCookieStorage (NSURLSessionTaskAdditions)
// - (void)storeCookies:(NSArray<NSHTTPCookie *> *)cookies forTask:(NSURLSessionTask *)task __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)getCookiesForTask:(NSURLSessionTask *)task completionHandler:(void (^) (NSArray<NSHTTPCookie *> * _Nullable cookies))completionHandler __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
/* @end */








extern "C" NSNotificationName const NSHTTPCookieManagerAcceptPolicyChangedNotification;





extern "C" NSNotificationName const NSHTTPCookieManagerCookiesChangedNotification;
#pragma clang assume_nonnull end







#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSIndexPath
#define _REWRITER_typedef_NSIndexPath
typedef struct objc_object NSIndexPath;
typedef struct {} _objc_exc_NSIndexPath;
#endif

struct NSIndexPath_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSUInteger *_indexes;
	NSUInteger _length;
	void *_reserved;
};


// + (instancetype)indexPathWithIndex:(NSUInteger)index;
// + (instancetype)indexPathWithIndexes:(const NSUInteger [_Nullable])indexes length:(NSUInteger)length;

// - (instancetype)initWithIndexes:(const NSUInteger [_Nullable])indexes length:(NSUInteger)length __attribute__((objc_designated_initializer));

// - (instancetype)initWithIndex:(NSUInteger)index;


// - (NSIndexPath *)indexPathByAddingIndex:(NSUInteger)index;
// - (NSIndexPath *)indexPathByRemovingLastIndex;

// - (NSUInteger)indexAtPosition:(NSUInteger)position;
// @property (readonly) NSUInteger length;
// - (void)getIndexes:(NSUInteger *)indexes range:(NSRange)positionRange __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// - (NSComparisonResult)compare:(NSIndexPath *)otherObject;

/* @end */


// @interface NSIndexPath (NSDeprecated)

// - (void)getIndexes:(NSUInteger *)indexes __attribute__((availability(macos,introduced=10.0,deprecated=100000,replacement="getIndexes:range:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="getIndexes:range:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="getIndexes:range:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="getIndexes:range:")));
/* @end */

#pragma clang assume_nonnull end








// @class NSMethodSignature;
#ifndef _REWRITER_typedef_NSMethodSignature
#define _REWRITER_typedef_NSMethodSignature
typedef struct objc_object NSMethodSignature;
typedef struct {} _objc_exc_NSMethodSignature;
#endif


#pragma clang assume_nonnull begin

__attribute__((availability(swift, unavailable, message="NSInvocation and related APIs not available")))

#ifndef _REWRITER_typedef_NSInvocation
#define _REWRITER_typedef_NSInvocation
typedef struct objc_object NSInvocation;
typedef struct {} _objc_exc_NSInvocation;
#endif

struct NSInvocation_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// + (NSInvocation *)invocationWithMethodSignature:(NSMethodSignature *)sig;

// @property (readonly, retain) NSMethodSignature *methodSignature;

// - (void)retainArguments;
// @property (readonly) BOOL argumentsRetained;

// @property (nullable, assign) id target;
// @property SEL selector;

// - (void)getReturnValue:(void *)retLoc;
// - (void)setReturnValue:(void *)retLoc;

// - (void)getArgument:(void *)argumentLocation atIndex:(NSInteger)idx;
// - (void)setArgument:(void *)argumentLocation atIndex:(NSInteger)idx;

// - (void)invoke;
// - (void)invokeWithTarget:(id)target;

/* @end */

#pragma clang assume_nonnull end







// @class NSError;
#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSOutputStream
#define _REWRITER_typedef_NSOutputStream
typedef struct objc_object NSOutputStream;
typedef struct {} _objc_exc_NSOutputStream;
#endif

#ifndef _REWRITER_typedef_NSInputStream
#define _REWRITER_typedef_NSInputStream
typedef struct objc_object NSInputStream;
typedef struct {} _objc_exc_NSInputStream;
#endif

#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif


#pragma clang assume_nonnull begin

typedef NSUInteger NSJSONReadingOptions; enum {
    NSJSONReadingMutableContainers = (1UL << 0),
    NSJSONReadingMutableLeaves = (1UL << 1),
    NSJSONReadingFragmentsAllowed = (1UL << 2),
    NSJSONReadingAllowFragments __attribute__((availability(macos,introduced=10.7,deprecated=100000,replacement="NSJSONReadingFragmentsAllowed"))) __attribute__((availability(ios,introduced=5.0,deprecated=100000,replacement="NSJSONReadingFragmentsAllowed"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="NSJSONReadingFragmentsAllowed"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="NSJSONReadingFragmentsAllowed"))) = NSJSONReadingFragmentsAllowed,
} __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSUInteger NSJSONWritingOptions; enum {
    NSJSONWritingPrettyPrinted = (1UL << 0),



    NSJSONWritingSortedKeys __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) = (1UL << 1),
    NSJSONWritingFragmentsAllowed = (1UL << 2),
    NSJSONWritingWithoutEscapingSlashes __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) = (1UL << 3),
} __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSJSONSerialization
#define _REWRITER_typedef_NSJSONSerialization
typedef struct objc_object NSJSONSerialization;
typedef struct {} _objc_exc_NSJSONSerialization;
#endif

struct NSJSONSerialization_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *reserved[6];
};

// + (BOOL)isValidJSONObject:(id)obj;



// + (nullable NSData *)dataWithJSONObject:(id)obj options:(NSJSONWritingOptions)opt error:(NSError **)error;




// + (nullable id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error;



// + (NSInteger)writeJSONObject:(id)obj toStream:(NSOutputStream *)stream options:(NSJSONWritingOptions)opt error:(NSError **)error;



// + (nullable id)JSONObjectWithStream:(NSInputStream *)stream options:(NSJSONReadingOptions)opt error:(NSError **)error;

/* @end */

#pragma clang assume_nonnull end







// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSIndexSet
#define _REWRITER_typedef_NSIndexSet
typedef struct objc_object NSIndexSet;
typedef struct {} _objc_exc_NSIndexSet;
#endif

#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif




#pragma clang assume_nonnull begin

__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSOrderedSet
#define _REWRITER_typedef_NSOrderedSet
typedef struct objc_object NSOrderedSet;
typedef struct {} _objc_exc_NSOrderedSet;
#endif

struct NSOrderedSet_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly) NSUInteger count;
// - (ObjectType)objectAtIndex:(NSUInteger)idx;
// - (NSUInteger)indexOfObject:(ObjectType)object;
// - (instancetype)init __attribute__((objc_designated_initializer));
// - (instancetype)initWithObjects:(const ObjectType _Nonnull [_Nullable])objects count:(NSUInteger)cnt __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSOrderedSet<ObjectType> (NSExtendedOrderedSet)

// - (void)getObjects:(ObjectType _Nonnull __attribute__((objc_ownership(none))) [_Nullable])objects range:(NSRange)range __attribute__((availability(swift, unavailable, message="Use 'array' instead")));
// - (NSArray<ObjectType> *)objectsAtIndexes:(NSIndexSet *)indexes;
// @property (nullable, nonatomic, readonly) ObjectType firstObject;
// @property (nullable, nonatomic, readonly) ObjectType lastObject;

// - (BOOL)isEqualToOrderedSet:(NSOrderedSet<ObjectType> *)other;

// - (BOOL)containsObject:(ObjectType)object;
// - (BOOL)intersectsOrderedSet:(NSOrderedSet<ObjectType> *)other;
// - (BOOL)intersectsSet:(NSSet<ObjectType> *)set;

// - (BOOL)isSubsetOfOrderedSet:(NSOrderedSet<ObjectType> *)other;
// - (BOOL)isSubsetOfSet:(NSSet<ObjectType> *)set;

// - (ObjectType)objectAtIndexedSubscript:(NSUInteger)idx __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSEnumerator<ObjectType> *)objectEnumerator;
// - (NSEnumerator<ObjectType> *)reverseObjectEnumerator;

// @property (readonly, copy) NSOrderedSet<ObjectType> *reversedOrderedSet;







// @property (readonly, strong) NSArray<ObjectType> *array;
// @property (readonly, strong) NSSet<ObjectType> *set;

// - (void)enumerateObjectsUsingBlock:(void (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))block;
// - (void)enumerateObjectsWithOptions:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))block;
// - (void)enumerateObjectsAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))block;

// - (NSUInteger)indexOfObjectPassingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate;
// - (NSUInteger)indexOfObjectWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate;
// - (NSUInteger)indexOfObjectAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate;

// - (NSIndexSet *)indexesOfObjectsPassingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate;
// - (NSIndexSet *)indexesOfObjectsWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate;
// - (NSIndexSet *)indexesOfObjectsAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts passingTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj, NSUInteger idx, BOOL *stop))predicate;

// - (NSUInteger)indexOfObject:(ObjectType)object inSortedRange:(NSRange)range options:(NSBinarySearchingOptions)opts usingComparator:(NSComparator __attribute__((noescape)))cmp;

// - (NSArray<ObjectType> *)sortedArrayUsingComparator:(NSComparator __attribute__((noescape)))cmptr;
// - (NSArray<ObjectType> *)sortedArrayWithOptions:(NSSortOptions)opts usingComparator:(NSComparator __attribute__((noescape)))cmptr;

// @property (readonly, copy) NSString *description;
// - (NSString *)descriptionWithLocale:(nullable id)locale;
// - (NSString *)descriptionWithLocale:(nullable id)locale indent:(NSUInteger)level;

/* @end */


// @interface NSOrderedSet<ObjectType> (NSOrderedSetCreation)

// + (instancetype)orderedSet;
// + (instancetype)orderedSetWithObject:(ObjectType)object;
// + (instancetype)orderedSetWithObjects:(const ObjectType _Nonnull [_Nonnull])objects count:(NSUInteger)cnt;
// + (instancetype)orderedSetWithObjects:(ObjectType)firstObj, ... __attribute__((sentinel(0,1)));
// + (instancetype)orderedSetWithOrderedSet:(NSOrderedSet<ObjectType> *)set;
// + (instancetype)orderedSetWithOrderedSet:(NSOrderedSet<ObjectType> *)set range:(NSRange)range copyItems:(BOOL)flag;
// + (instancetype)orderedSetWithArray:(NSArray<ObjectType> *)array;
// + (instancetype)orderedSetWithArray:(NSArray<ObjectType> *)array range:(NSRange)range copyItems:(BOOL)flag;
// + (instancetype)orderedSetWithSet:(NSSet<ObjectType> *)set;
// + (instancetype)orderedSetWithSet:(NSSet<ObjectType> *)set copyItems:(BOOL)flag;

// - (instancetype)initWithObject:(ObjectType)object;
// - (instancetype)initWithObjects:(ObjectType)firstObj, ... __attribute__((sentinel(0,1)));
// - (instancetype)initWithOrderedSet:(NSOrderedSet<ObjectType> *)set;
// - (instancetype)initWithOrderedSet:(NSOrderedSet<ObjectType> *)set copyItems:(BOOL)flag;
// - (instancetype)initWithOrderedSet:(NSOrderedSet<ObjectType> *)set range:(NSRange)range copyItems:(BOOL)flag;
// - (instancetype)initWithArray:(NSArray<ObjectType> *)array;
// - (instancetype)initWithArray:(NSArray<ObjectType> *)set copyItems:(BOOL)flag;
// - (instancetype)initWithArray:(NSArray<ObjectType> *)set range:(NSRange)range copyItems:(BOOL)flag;
// - (instancetype)initWithSet:(NSSet<ObjectType> *)set;
// - (instancetype)initWithSet:(NSSet<ObjectType> *)set copyItems:(BOOL)flag;

/* @end */


__attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
__attribute__((availability(swift, unavailable, message="NSOrderedSet diffing methods are not available in Swift, use Collection.difference(from:) instead")))
// @interface NSOrderedSet<ObjectType> (NSOrderedSetDiffing)

// - (NSOrderedCollectionDifference<ObjectType> *)differenceFromOrderedSet:(NSOrderedSet<ObjectType> *)other withOptions:(NSOrderedCollectionDifferenceCalculationOptions)options usingEquivalenceTest:(BOOL (__attribute__((noescape)) ^)(ObjectType obj1, ObjectType obj2))block;

// - (NSOrderedCollectionDifference<ObjectType> *)differenceFromOrderedSet:(NSOrderedSet<ObjectType> *)other withOptions:(NSOrderedCollectionDifferenceCalculationOptions)options;


// - (NSOrderedCollectionDifference<ObjectType> *)differenceFromOrderedSet:(NSOrderedSet<ObjectType> *)other;

// - (nullable NSOrderedSet<ObjectType> *)orderedSetByApplyingDifference:(NSOrderedCollectionDifference<ObjectType> *)difference;

/* @end */




__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSMutableOrderedSet
#define _REWRITER_typedef_NSMutableOrderedSet
typedef struct objc_object NSMutableOrderedSet;
typedef struct {} _objc_exc_NSMutableOrderedSet;
#endif

struct NSMutableOrderedSet_IMPL {
	struct NSOrderedSet_IMPL NSOrderedSet_IVARS;
};


// - (void)insertObject:(ObjectType)object atIndex:(NSUInteger)idx;
// - (void)removeObjectAtIndex:(NSUInteger)idx;
// - (void)replaceObjectAtIndex:(NSUInteger)idx withObject:(ObjectType)object;
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));
// - (instancetype)init __attribute__((objc_designated_initializer));
// - (instancetype)initWithCapacity:(NSUInteger)numItems __attribute__((objc_designated_initializer));

/* @end */


// @interface NSMutableOrderedSet<ObjectType> (NSExtendedMutableOrderedSet)

// - (void)addObject:(ObjectType)object;
// - (void)addObjects:(const ObjectType _Nonnull [_Nullable])objects count:(NSUInteger)count;
// - (void)addObjectsFromArray:(NSArray<ObjectType> *)array;

// - (void)exchangeObjectAtIndex:(NSUInteger)idx1 withObjectAtIndex:(NSUInteger)idx2;
// - (void)moveObjectsAtIndexes:(NSIndexSet *)indexes toIndex:(NSUInteger)idx;

// - (void)insertObjects:(NSArray<ObjectType> *)objects atIndexes:(NSIndexSet *)indexes;

// - (void)setObject:(ObjectType)obj atIndex:(NSUInteger)idx;
// - (void)setObject:(ObjectType)obj atIndexedSubscript:(NSUInteger)idx __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)replaceObjectsInRange:(NSRange)range withObjects:(const ObjectType _Nonnull [_Nullable])objects count:(NSUInteger)count;
// - (void)replaceObjectsAtIndexes:(NSIndexSet *)indexes withObjects:(NSArray<ObjectType> *)objects;

// - (void)removeObjectsInRange:(NSRange)range;
// - (void)removeObjectsAtIndexes:(NSIndexSet *)indexes;
// - (void)removeAllObjects;

// - (void)removeObject:(ObjectType)object;
// - (void)removeObjectsInArray:(NSArray<ObjectType> *)array;

// - (void)intersectOrderedSet:(NSOrderedSet<ObjectType> *)other;
// - (void)minusOrderedSet:(NSOrderedSet<ObjectType> *)other;
// - (void)unionOrderedSet:(NSOrderedSet<ObjectType> *)other;

// - (void)intersectSet:(NSSet<ObjectType> *)other;
// - (void)minusSet:(NSSet<ObjectType> *)other;
// - (void)unionSet:(NSSet<ObjectType> *)other;


// - (void)sortUsingComparator:(NSComparator __attribute__((noescape)))cmptr;
// - (void)sortWithOptions:(NSSortOptions)opts usingComparator:(NSComparator __attribute__((noescape)))cmptr;
// - (void)sortRange:(NSRange)range options:(NSSortOptions)opts usingComparator:(NSComparator __attribute__((noescape)))cmptr;


/* @end */


// @interface NSMutableOrderedSet<ObjectType> (NSMutableOrderedSetCreation)

// + (instancetype)orderedSetWithCapacity:(NSUInteger)numItems;

/* @end */


__attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
__attribute__((availability(swift, unavailable, message="NSMutableOrderedSet diffing methods are not available in Swift")))
// @interface NSMutableOrderedSet<ObjectType> (NSMutableOrderedSetDiffing)

// - (void)applyDifference:(NSOrderedCollectionDifference<ObjectType> *)difference;

/* @end */

#pragma clang assume_nonnull end



// @class NSError;
#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin







extern "C" NSExceptionName const NSUndefinedKeyException;

typedef NSString * NSKeyValueOperator __attribute__((swift_wrapper(enum)));



extern "C" NSKeyValueOperator const NSAverageKeyValueOperator;
extern "C" NSKeyValueOperator const NSCountKeyValueOperator;
extern "C" NSKeyValueOperator const NSDistinctUnionOfArraysKeyValueOperator;
extern "C" NSKeyValueOperator const NSDistinctUnionOfObjectsKeyValueOperator;
extern "C" NSKeyValueOperator const NSDistinctUnionOfSetsKeyValueOperator;
extern "C" NSKeyValueOperator const NSMaximumKeyValueOperator;
extern "C" NSKeyValueOperator const NSMinimumKeyValueOperator;
extern "C" NSKeyValueOperator const NSSumKeyValueOperator;
extern "C" NSKeyValueOperator const NSUnionOfArraysKeyValueOperator;
extern "C" NSKeyValueOperator const NSUnionOfObjectsKeyValueOperator;
extern "C" NSKeyValueOperator const NSUnionOfSetsKeyValueOperator;

// @interface NSObject(NSKeyValueCoding)



@property (class, readonly) BOOL accessInstanceVariablesDirectly;
// - (nullable id)valueForKey:(NSString *)key;
// - (void)setValue:(nullable id)value forKey:(NSString *)key;





// - (BOOL)validateValue:(inout id _Nullable * _Nonnull)ioValue forKey:(NSString *)inKey error:(out NSError **)outError;
// - (NSMutableArray *)mutableArrayValueForKey:(NSString *)key;
// - (NSMutableOrderedSet *)mutableOrderedSetValueForKey:(NSString *)key __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSMutableSet *)mutableSetValueForKey:(NSString *)key;



// - (nullable id)valueForKeyPath:(NSString *)keyPath;
// - (void)setValue:(nullable id)value forKeyPath:(NSString *)keyPath;
// - (BOOL)validateValue:(inout id _Nullable * _Nonnull)ioValue forKeyPath:(NSString *)inKeyPath error:(out NSError **)outError;
// - (NSMutableArray *)mutableArrayValueForKeyPath:(NSString *)keyPath;
// - (NSMutableOrderedSet *)mutableOrderedSetValueForKeyPath:(NSString *)keyPath __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSMutableSet *)mutableSetValueForKeyPath:(NSString *)keyPath;



// - (nullable id)valueForUndefinedKey:(NSString *)key;



// - (void)setValue:(nullable id)value forUndefinedKey:(NSString *)key;



// - (void)setNilValueForKey:(NSString *)key;



// - (NSDictionary<NSString *, id> *)dictionaryWithValuesForKeys:(NSArray<NSString *> *)keys;



// - (void)setValuesForKeysWithDictionary:(NSDictionary<NSString *, id> *)keyedValues;

/* @end */


// @interface NSArray<ObjectType>(NSKeyValueCoding)



// - (id)valueForKey:(NSString *)key;



// - (void)setValue:(nullable id)value forKey:(NSString *)key;

/* @end */


// @interface NSDictionary<KeyType, ObjectType>(NSKeyValueCoding)



// - (nullable ObjectType)valueForKey:(NSString *)key;

/* @end */


// @interface NSMutableDictionary<KeyType, ObjectType>(NSKeyValueCoding)



// - (void)setValue:(nullable ObjectType)value forKey:(NSString *)key;

/* @end */


// @interface NSOrderedSet<ObjectType>(NSKeyValueCoding)



// - (id)valueForKey:(NSString *)key __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)setValue:(nullable id)value forKey:(NSString *)key __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSSet<ObjectType>(NSKeyValueCoding)



// - (id)valueForKey:(NSString *)key;



// - (void)setValue:(nullable id)value forKey:(NSString *)key;

/* @end */

#pragma clang assume_nonnull end
// @class NSIndexSet;
#ifndef _REWRITER_typedef_NSIndexSet
#define _REWRITER_typedef_NSIndexSet
typedef struct objc_object NSIndexSet;
typedef struct {} _objc_exc_NSIndexSet;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin



typedef NSUInteger NSKeyValueObservingOptions; enum {



    NSKeyValueObservingOptionNew = 0x01,
    NSKeyValueObservingOptionOld = 0x02,



    NSKeyValueObservingOptionInitial __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 0x04,





    NSKeyValueObservingOptionPrior __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 0x08

};



typedef NSUInteger NSKeyValueChange; enum {
    NSKeyValueChangeSetting = 1,
    NSKeyValueChangeInsertion = 2,
    NSKeyValueChangeRemoval = 3,
    NSKeyValueChangeReplacement = 4,
};



typedef NSUInteger NSKeyValueSetMutationKind; enum {
    NSKeyValueUnionSetMutation = 1,
    NSKeyValueMinusSetMutation = 2,
    NSKeyValueIntersectSetMutation = 3,
    NSKeyValueSetSetMutation = 4
};

typedef NSString * NSKeyValueChangeKey __attribute__((swift_wrapper(enum)));


extern "C" NSKeyValueChangeKey const NSKeyValueChangeKindKey;
extern "C" NSKeyValueChangeKey const NSKeyValueChangeNewKey;
extern "C" NSKeyValueChangeKey const NSKeyValueChangeOldKey;
extern "C" NSKeyValueChangeKey const NSKeyValueChangeIndexesKey;
extern "C" NSKeyValueChangeKey const NSKeyValueChangeNotificationIsPriorKey __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @interface NSObject(NSKeyValueObserving)
// - (void)observeValueForKeyPath:(nullable NSString *)keyPath ofObject:(nullable id)object change:(nullable NSDictionary<NSKeyValueChangeKey, id> *)change context:(nullable void *)context;

/* @end */


// @interface NSObject(NSKeyValueObserverRegistration)



// - (void)addObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options context:(nullable void *)context;
// - (void)removeObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath context:(nullable void *)context __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)removeObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath;

/* @end */


// @interface NSArray<ObjectType>(NSKeyValueObserverRegistration)



// - (void)addObserver:(NSObject *)observer toObjectsAtIndexes:(NSIndexSet *)indexes forKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options context:(nullable void *)context;
// - (void)removeObserver:(NSObject *)observer fromObjectsAtIndexes:(NSIndexSet *)indexes forKeyPath:(NSString *)keyPath context:(nullable void *)context __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)removeObserver:(NSObject *)observer fromObjectsAtIndexes:(NSIndexSet *)indexes forKeyPath:(NSString *)keyPath;



// - (void)addObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options context:(nullable void *)context;
// - (void)removeObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath context:(nullable void *)context __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)removeObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath;

/* @end */


// @interface NSOrderedSet<ObjectType>(NSKeyValueObserverRegistration)



// - (void)addObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options context:(nullable void *)context;
// - (void)removeObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath context:(nullable void *)context __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)removeObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath;

/* @end */


// @interface NSSet<ObjectType>(NSKeyValueObserverRegistration)



// - (void)addObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options context:(nullable void *)context;
// - (void)removeObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath context:(nullable void *)context __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)removeObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath;

/* @end */


// @interface NSObject(NSKeyValueObserverNotification)







// - (void)willChangeValueForKey:(NSString *)key;
// - (void)didChangeValueForKey:(NSString *)key;







// - (void)willChange:(NSKeyValueChange)changeKind valuesAtIndexes:(NSIndexSet *)indexes forKey:(NSString *)key;
// - (void)didChange:(NSKeyValueChange)changeKind valuesAtIndexes:(NSIndexSet *)indexes forKey:(NSString *)key;
// - (void)willChangeValueForKey:(NSString *)key withSetMutation:(NSKeyValueSetMutationKind)mutationKind usingObjects:(NSSet *)objects;
// - (void)didChangeValueForKey:(NSString *)key withSetMutation:(NSKeyValueSetMutationKind)mutationKind usingObjects:(NSSet *)objects;

/* @end */


// @interface NSObject(NSKeyValueObservingCustomization)
// + (NSSet<NSString *> *)keyPathsForValuesAffectingValueForKey:(NSString *)key __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (BOOL)automaticallyNotifiesObserversForKey:(NSString *)key;



// @property (nullable) void *observationInfo __attribute__((objc_returns_inner_pointer));

/* @end */

#pragma clang assume_nonnull end












// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSInputStream
#define _REWRITER_typedef_NSInputStream
typedef struct objc_object NSInputStream;
typedef struct {} _objc_exc_NSInputStream;
#endif

#ifndef _REWRITER_typedef_NSOutputStream
#define _REWRITER_typedef_NSOutputStream
typedef struct objc_object NSOutputStream;
typedef struct {} _objc_exc_NSOutputStream;
#endif


#pragma clang assume_nonnull begin

typedef NSUInteger NSPropertyListMutabilityOptions; enum {
    NSPropertyListImmutable = kCFPropertyListImmutable,
    NSPropertyListMutableContainers = kCFPropertyListMutableContainers,
    NSPropertyListMutableContainersAndLeaves = kCFPropertyListMutableContainersAndLeaves
};

typedef NSUInteger NSPropertyListFormat; enum {
    NSPropertyListOpenStepFormat = kCFPropertyListOpenStepFormat,
    NSPropertyListXMLFormat_v1_0 = kCFPropertyListXMLFormat_v1_0,
    NSPropertyListBinaryFormat_v1_0 = kCFPropertyListBinaryFormat_v1_0
};

typedef NSPropertyListMutabilityOptions NSPropertyListReadOptions;
typedef NSUInteger NSPropertyListWriteOptions;


#ifndef _REWRITER_typedef_NSPropertyListSerialization
#define _REWRITER_typedef_NSPropertyListSerialization
typedef struct objc_object NSPropertyListSerialization;
typedef struct {} _objc_exc_NSPropertyListSerialization;
#endif

struct NSPropertyListSerialization_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *reserved[6];
};




// + (BOOL)propertyList:(id)plist isValidForFormat:(NSPropertyListFormat)format;



// + (nullable NSData *)dataWithPropertyList:(id)plist format:(NSPropertyListFormat)format options:(NSPropertyListWriteOptions)opt error:(out NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (NSInteger)writePropertyList:(id)plist toStream:(NSOutputStream *)stream format:(NSPropertyListFormat)format options:(NSPropertyListWriteOptions)opt error:(out NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (nullable id)propertyListWithData:(NSData *)data options:(NSPropertyListReadOptions)opt format:(nullable NSPropertyListFormat *)format error:(out NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (nullable id)propertyListWithStream:(NSInputStream *)stream options:(NSPropertyListReadOptions)opt format:(nullable NSPropertyListFormat *)format error:(out NSError **)error __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// + (nullable NSData *)dataFromPropertyList:(id)plist format:(NSPropertyListFormat)format errorDescription:(out __attribute__((objc_ownership(strong))) NSString * _Nullable * _Nullable)errorString __attribute__((availability(macos,introduced=10.0,deprecated=10.10,message="Use dataWithPropertyList:format:options:error: instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use dataWithPropertyList:format:options:error: instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use dataWithPropertyList:format:options:error: instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use dataWithPropertyList:format:options:error: instead.")));



// + (nullable id)propertyListFromData:(NSData *)data mutabilityOption:(NSPropertyListMutabilityOptions)opt format:(nullable NSPropertyListFormat *)format errorDescription:(out __attribute__((objc_ownership(strong))) NSString * _Nullable * _Nullable)errorString __attribute__((availability(macos,introduced=10.0,deprecated=10.10,message="Use propertyListWithData:options:format:error: instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use propertyListWithData:options:format:error: instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use propertyListWithData:options:format:error: instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use propertyListWithData:options:format:error: instead.")));

/* @end */

#pragma clang assume_nonnull end






// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSMutableData
#define _REWRITER_typedef_NSMutableData
typedef struct objc_object NSMutableData;
typedef struct {} _objc_exc_NSMutableData;
#endif

#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @protocol NSKeyedArchiverDelegate, NSKeyedUnarchiverDelegate;

#pragma clang assume_nonnull begin

extern "C" NSExceptionName const NSInvalidArchiveOperationException;
extern "C" NSExceptionName const NSInvalidUnarchiveOperationException;

extern "C" NSString * const NSKeyedArchiveRootObjectKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


#ifndef _REWRITER_typedef_NSKeyedArchiver
#define _REWRITER_typedef_NSKeyedArchiver
typedef struct objc_object NSKeyedArchiver;
typedef struct {} _objc_exc_NSKeyedArchiver;
#endif

struct NSKeyedArchiver_IMPL {
	struct NSCoder_IMPL NSCoder_IVARS;
	void *_stream;
	NSUInteger _flags;
	id _delegate;
	id _containers;
	id _objects;
	id _objRefMap;
	id _replacementMap;
	id _classNameMap;
	id _conditionals;
	id _classes;
	NSUInteger _genericKey;
	void *_cache;
	NSUInteger _cacheSize;
	NSUInteger _estimatedCount;
	void *_reserved2;
	id _visited;
	void *_reserved0;
};

// - (instancetype)initRequiringSecureCoding:(BOOL)requiresSecureCoding __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// + (nullable NSData *)archivedDataWithRootObject:(id)object requiringSecureCoding:(BOOL)requiresSecureCoding error:(NSError **)error __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


// - (instancetype)init __attribute__((availability(macosx,introduced=10.12,deprecated=10.14,message="Use -initRequiringSecureCoding: instead"))) __attribute__((availability(ios,introduced=10.0,deprecated=12.0,message="Use -initRequiringSecureCoding: instead"))) __attribute__((availability(watchos,introduced=3.0,deprecated=5.0,message="Use -initRequiringSecureCoding: instead"))) __attribute__((availability(tvos,introduced=10.0,deprecated=12.0,message="Use -initRequiringSecureCoding: instead")));
// - (instancetype)initForWritingWithMutableData:(NSMutableData *)data __attribute__((availability(macosx,introduced=10.2,deprecated=10.14,message="Use -initRequiringSecureCoding: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=12.0,message="Use -initRequiringSecureCoding: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=5.0,message="Use -initRequiringSecureCoding: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,message="Use -initRequiringSecureCoding: instead")));

// + (NSData *)archivedDataWithRootObject:(id)rootObject __attribute__((availability(macosx,introduced=10.2,deprecated=10.14,message="Use +archivedDataWithRootObject:requiringSecureCoding:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=12.0,message="Use +archivedDataWithRootObject:requiringSecureCoding:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=5.0,message="Use +archivedDataWithRootObject:requiringSecureCoding:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,message="Use +archivedDataWithRootObject:requiringSecureCoding:error: instead")));
// + (BOOL)archiveRootObject:(id)rootObject toFile:(NSString *)path __attribute__((availability(macosx,introduced=10.2,deprecated=10.14,message="Use +archivedDataWithRootObject:requiringSecureCoding:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=12.0,message="Use +archivedDataWithRootObject:requiringSecureCoding:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=5.0,message="Use +archivedDataWithRootObject:requiringSecureCoding:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,message="Use +archivedDataWithRootObject:requiringSecureCoding:error: instead")));

// @property (nullable, assign) id <NSKeyedArchiverDelegate> delegate;

// @property NSPropertyListFormat outputFormat;


// @property (readonly, strong) NSData *encodedData __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// - (void)finishEncoding;

// + (void)setClassName:(nullable NSString *)codedName forClass:(Class)cls;
// - (void)setClassName:(nullable NSString *)codedName forClass:(Class)cls;



// + (nullable NSString *)classNameForClass:(Class)cls;
// - (nullable NSString *)classNameForClass:(Class)cls;

// - (void)encodeObject:(nullable id)object forKey:(NSString *)key;
// - (void)encodeConditionalObject:(nullable id)object forKey:(NSString *)key;
// - (void)encodeBool:(BOOL)value forKey:(NSString *)key;
// - (void)encodeInt:(int)value forKey:(NSString *)key;
// - (void)encodeInt32:(int32_t)value forKey:(NSString *)key;
// - (void)encodeInt64:(int64_t)value forKey:(NSString *)key;
// - (void)encodeFloat:(float)value forKey:(NSString *)key;
// - (void)encodeDouble:(double)value forKey:(NSString *)key;
// - (void)encodeBytes:(nullable const uint8_t *)bytes length:(NSUInteger)length forKey:(NSString *)key;


// @property (readwrite) BOOL requiresSecureCoding __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */



#ifndef _REWRITER_typedef_NSKeyedUnarchiver
#define _REWRITER_typedef_NSKeyedUnarchiver
typedef struct objc_object NSKeyedUnarchiver;
typedef struct {} _objc_exc_NSKeyedUnarchiver;
#endif

struct NSKeyedUnarchiver_IMPL {
	struct NSCoder_IMPL NSCoder_IVARS;
	id _delegate;
	uint32_t _flags;
	id _objRefMap;
	id _replacementMap;
	id _nameClassMap;
	id _tmpRefObjMap;
	id _refObjMap;
	int32_t _genericKey;
	id _data;
	void *_offsetData;
	id _containers;
	id _objects;
	const uint8_t *_bytes;
	uint64_t _len;
	id _helper;
	void *_reserved0;
};

// - (nullable instancetype)initForReadingFromData:(NSData *)data error:(NSError **)error __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// + (nullable id)unarchivedObjectOfClass:(Class)cls fromData:(NSData *)data error:(NSError **)error __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((swift_private));
// + (nullable id)unarchivedObjectOfClasses:(NSSet<Class> *)classes fromData:(NSData *)data error:(NSError **)error __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((swift_private));

// - (instancetype)init __attribute__((availability(macosx,introduced=10.2,deprecated=10.14,message="Use -initForReadingFromData:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=12.0,message="Use -initForReadingFromData:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=5.0,message="Use -initForReadingFromData:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,message="Use -initForReadingFromData:error: instead")));
// - (instancetype)initForReadingWithData:(NSData *)data __attribute__((availability(macosx,introduced=10.2,deprecated=10.14,message="Use -initForReadingFromData:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=12.0,message="Use -initForReadingFromData:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=5.0,message="Use -initForReadingFromData:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,message="Use -initForReadingFromData:error: instead")));

// + (nullable id)unarchiveObjectWithData:(NSData *)data __attribute__((availability(macosx,introduced=10.2,deprecated=10.14,message="Use +unarchivedObjectOfClass:fromData:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=12.0,message="Use +unarchivedObjectOfClass:fromData:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=5.0,message="Use +unarchivedObjectOfClass:fromData:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,message="Use +unarchivedObjectOfClass:fromData:error: instead")));
// + (nullable id)unarchiveTopLevelObjectWithData:(NSData *)data error:(NSError **)error __attribute__((availability(macosx,introduced=10.11,deprecated=10.14,message="Use +unarchivedObjectOfClass:fromData:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=12.0,message="Use +unarchivedObjectOfClass:fromData:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=5.0,message="Use +unarchivedObjectOfClass:fromData:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,message="Use +unarchivedObjectOfClass:fromData:error: instead"))) __attribute__((availability(swift, unavailable, message="Use 'unarchiveTopLevelObjectWithData(_:) throws' instead")));
// + (nullable id)unarchiveObjectWithFile:(NSString *)path __attribute__((availability(macosx,introduced=10.2,deprecated=10.14,message="Use +unarchivedObjectOfClass:fromData:error: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=12.0,message="Use +unarchivedObjectOfClass:fromData:error: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=5.0,message="Use +unarchivedObjectOfClass:fromData:error: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,message="Use +unarchivedObjectOfClass:fromData:error: instead")));

// @property (nullable, assign) id <NSKeyedUnarchiverDelegate> delegate;

// - (void)finishDecoding;

// + (void)setClass:(nullable Class)cls forClassName:(NSString *)codedName;
// - (void)setClass:(nullable Class)cls forClassName:(NSString *)codedName;



// + (nullable Class)classForClassName:(NSString *)codedName;
// - (nullable Class)classForClassName:(NSString *)codedName;

// - (BOOL)containsValueForKey:(NSString *)key;

// - (nullable id)decodeObjectForKey:(NSString *)key;
// - (BOOL)decodeBoolForKey:(NSString *)key;
// - (int)decodeIntForKey:(NSString *)key;
// - (int32_t)decodeInt32ForKey:(NSString *)key;
// - (int64_t)decodeInt64ForKey:(NSString *)key;
// - (float)decodeFloatForKey:(NSString *)key;
// - (double)decodeDoubleForKey:(NSString *)key;
// - (nullable const uint8_t *)decodeBytesForKey:(NSString *)key returnedLength:(nullable NSUInteger *)lengthp __attribute__((objc_returns_inner_pointer));


// @property (readwrite) BOOL requiresSecureCoding __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readwrite) NSDecodingFailurePolicy decodingFailurePolicy __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @protocol NSKeyedArchiverDelegate <NSObject>
/* @optional */


// - (nullable id)archiver:(NSKeyedArchiver *)archiver willEncodeObject:(id)object;
// - (void)archiver:(NSKeyedArchiver *)archiver didEncodeObject:(nullable id)object;






// - (void)archiver:(NSKeyedArchiver *)archiver willReplaceObject:(nullable id)object withObject:(nullable id)newObject;





// - (void)archiverWillFinish:(NSKeyedArchiver *)archiver;


// - (void)archiverDidFinish:(NSKeyedArchiver *)archiver;


/* @end */


// @protocol NSKeyedUnarchiverDelegate <NSObject>
/* @optional */


// - (nullable Class)unarchiver:(NSKeyedUnarchiver *)unarchiver cannotDecodeObjectOfClassName:(NSString *)name originalClasses:(NSArray<NSString *> *)classNames;
// - (nullable id)unarchiver:(NSKeyedUnarchiver *)unarchiver didDecodeObject:(nullable id) __attribute__((ns_consumed)) object __attribute__((ns_returns_retained));







// - (void)unarchiver:(NSKeyedUnarchiver *)unarchiver willReplaceObject:(id)object withObject:(id)newObject;





// - (void)unarchiverWillFinish:(NSKeyedUnarchiver *)unarchiver;


// - (void)unarchiverDidFinish:(NSKeyedUnarchiver *)unarchiver;


/* @end */


// @interface NSObject (NSKeyedArchiverObjectSubstitution)

// @property (nullable, readonly) Class classForKeyedArchiver;
// - (nullable id)replacementObjectForKeyedArchiver:(NSKeyedArchiver *)archiver;
// + (NSArray<NSString *> *)classFallbacksForKeyedArchiver;


/* @end */


// @interface NSObject (NSKeyedUnarchiverObjectSubstitution)

// + (Class)classForKeyedUnarchiver;





/* @end */

#pragma clang assume_nonnull end







// @class NSDate;
#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif


#pragma clang assume_nonnull begin

// @protocol NSLocking

// - (void)lock;
// - (void)unlock;

/* @end */



#ifndef _REWRITER_typedef_NSLock
#define _REWRITER_typedef_NSLock
typedef struct objc_object NSLock;
typedef struct {} _objc_exc_NSLock;
#endif

struct NSLock_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_priv;
};


// - (BOOL)tryLock;
// - (BOOL)lockBeforeDate:(NSDate *)limit;

// @property (nullable, copy) NSString *name __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */



#ifndef _REWRITER_typedef_NSConditionLock
#define _REWRITER_typedef_NSConditionLock
typedef struct objc_object NSConditionLock;
typedef struct {} _objc_exc_NSConditionLock;
#endif

struct NSConditionLock_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_priv;
};


// - (instancetype)initWithCondition:(NSInteger)condition __attribute__((objc_designated_initializer));

// @property (readonly) NSInteger condition;
// - (void)lockWhenCondition:(NSInteger)condition;
// - (BOOL)tryLock;
// - (BOOL)tryLockWhenCondition:(NSInteger)condition;
// - (void)unlockWithCondition:(NSInteger)condition;
// - (BOOL)lockBeforeDate:(NSDate *)limit;
// - (BOOL)lockWhenCondition:(NSInteger)condition beforeDate:(NSDate *)limit;

// @property (nullable, copy) NSString *name __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */



#ifndef _REWRITER_typedef_NSRecursiveLock
#define _REWRITER_typedef_NSRecursiveLock
typedef struct objc_object NSRecursiveLock;
typedef struct {} _objc_exc_NSRecursiveLock;
#endif

struct NSRecursiveLock_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_priv;
};


// - (BOOL)tryLock;
// - (BOOL)lockBeforeDate:(NSDate *)limit;

// @property (nullable, copy) NSString *name __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */




__attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSCondition
#define _REWRITER_typedef_NSCondition
typedef struct objc_object NSCondition;
typedef struct {} _objc_exc_NSCondition;
#endif

struct NSCondition_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_priv;
};


// - (void)wait;
// - (BOOL)waitUntilDate:(NSDate *)limit;
// - (void)signal;
// - (void)broadcast;

// @property (nullable, copy) NSString *name __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end
// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSMapTable
#define _REWRITER_typedef_NSMapTable
typedef struct objc_object NSMapTable;
typedef struct {} _objc_exc_NSMapTable;
#endif


#pragma clang assume_nonnull begin







static const NSPointerFunctionsOptions NSMapTableStrongMemory __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = NSPointerFunctionsStrongMemory;
static const NSPointerFunctionsOptions NSMapTableZeroingWeakMemory __attribute__((availability(macos,introduced=10.5,deprecated=10.8,message="GC no longer supported"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = NSPointerFunctionsZeroingWeakMemory;
static const NSPointerFunctionsOptions NSMapTableCopyIn __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = NSPointerFunctionsCopyIn;
static const NSPointerFunctionsOptions NSMapTableObjectPointerPersonality __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = NSPointerFunctionsObjectPointerPersonality;
static const NSPointerFunctionsOptions NSMapTableWeakMemory __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = NSPointerFunctionsWeakMemory;

typedef NSUInteger NSMapTableOptions;

__attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSMapTable
#define _REWRITER_typedef_NSMapTable
typedef struct objc_object NSMapTable;
typedef struct {} _objc_exc_NSMapTable;
#endif

struct NSMapTable_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// - (instancetype)initWithKeyOptions:(NSPointerFunctionsOptions)keyOptions valueOptions:(NSPointerFunctionsOptions)valueOptions capacity:(NSUInteger)initialCapacity __attribute__((objc_designated_initializer));
// - (instancetype)initWithKeyPointerFunctions:(NSPointerFunctions *)keyFunctions valuePointerFunctions:(NSPointerFunctions *)valueFunctions capacity:(NSUInteger)initialCapacity __attribute__((objc_designated_initializer));

// + (NSMapTable<KeyType, ObjectType> *)mapTableWithKeyOptions:(NSPointerFunctionsOptions)keyOptions valueOptions:(NSPointerFunctionsOptions)valueOptions;

// + (id)mapTableWithStrongToStrongObjects __attribute__((availability(macos,introduced=10.5,deprecated=10.8,message="GC no longer supported"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// + (id)mapTableWithWeakToStrongObjects __attribute__((availability(macos,introduced=10.5,deprecated=10.8,message="GC no longer supported"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// + (id)mapTableWithStrongToWeakObjects __attribute__((availability(macos,introduced=10.5,deprecated=10.8,message="GC no longer supported"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// + (id)mapTableWithWeakToWeakObjects __attribute__((availability(macos,introduced=10.5,deprecated=10.8,message="GC no longer supported"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));


// + (NSMapTable<KeyType, ObjectType> *)strongToStrongObjectsMapTable __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSMapTable<KeyType, ObjectType> *)weakToStrongObjectsMapTable __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSMapTable<KeyType, ObjectType> *)strongToWeakObjectsMapTable __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSMapTable<KeyType, ObjectType> *)weakToWeakObjectsMapTable __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// @property (readonly, copy) NSPointerFunctions *keyPointerFunctions;
// @property (readonly, copy) NSPointerFunctions *valuePointerFunctions;

// - (nullable ObjectType)objectForKey:(nullable KeyType)aKey;

// - (void)removeObjectForKey:(nullable KeyType)aKey;
// - (void)setObject:(nullable ObjectType)anObject forKey:(nullable KeyType)aKey;

// @property (readonly) NSUInteger count;

// - (NSEnumerator<KeyType> *)keyEnumerator;
// - (nullable NSEnumerator<ObjectType> *)objectEnumerator;

// - (void)removeAllObjects;

// - (NSDictionary<KeyType, ObjectType> *)dictionaryRepresentation;
/* @end */





typedef struct {NSUInteger _pi; NSUInteger _si; void * _Nullable _bs;} NSMapEnumerator;



extern "C" void NSFreeMapTable(NSMapTable *table);
extern "C" void NSResetMapTable(NSMapTable *table);
extern "C" BOOL NSCompareMapTables(NSMapTable *table1, NSMapTable *table2);
extern "C" NSMapTable *NSCopyMapTableWithZone(NSMapTable *table, NSZone * _Nullable zone);
extern "C" BOOL NSMapMember(NSMapTable *table, const void *key, void * _Nullable * _Nullable originalKey, void * _Nullable * _Nullable value);
extern "C" void * _Nullable NSMapGet(NSMapTable *table, const void * _Nullable key);
extern "C" void NSMapInsert(NSMapTable *table, const void * _Nullable key, const void * _Nullable value);
extern "C" void NSMapInsertKnownAbsent(NSMapTable *table, const void * _Nullable key, const void * _Nullable value);
extern "C" void * _Nullable NSMapInsertIfAbsent(NSMapTable *table, const void * _Nullable key, const void * _Nullable value);
extern "C" void NSMapRemove(NSMapTable *table, const void * _Nullable key);
extern "C" NSMapEnumerator NSEnumerateMapTable(NSMapTable *table);
extern "C" BOOL NSNextMapEnumeratorPair(NSMapEnumerator *enumerator, void * _Nullable * _Nullable key, void * _Nullable * _Nullable value);
extern "C" void NSEndMapTableEnumeration(NSMapEnumerator *enumerator);
extern "C" NSUInteger NSCountMapTable(NSMapTable *table);
extern "C" NSString *NSStringFromMapTable(NSMapTable *table);
extern "C" NSArray *NSAllMapTableKeys(NSMapTable *table);
extern "C" NSArray *NSAllMapTableValues(NSMapTable *table);




typedef struct {
    NSUInteger (* _Nullable hash)(NSMapTable *table, const void *);
    BOOL (* _Nullable isEqual)(NSMapTable *table, const void *, const void *);
    void (* _Nullable retain)(NSMapTable *table, const void *);
    void (* _Nullable release)(NSMapTable *table, void *);
    NSString * _Nullable (* _Nullable describe)(NSMapTable *table, const void *);
    const void * _Nullable notAKeyMarker;
} NSMapTableKeyCallBacks;





typedef struct {
    void (* _Nullable retain)(NSMapTable *table, const void *);
    void (* _Nullable release)(NSMapTable *table, void *);
    NSString * _Nullable(* _Nullable describe)(NSMapTable *table, const void *);
} NSMapTableValueCallBacks;

extern "C" NSMapTable *NSCreateMapTableWithZone(NSMapTableKeyCallBacks keyCallBacks, NSMapTableValueCallBacks valueCallBacks, NSUInteger capacity, NSZone * _Nullable zone);
extern "C" NSMapTable *NSCreateMapTable(NSMapTableKeyCallBacks keyCallBacks, NSMapTableValueCallBacks valueCallBacks, NSUInteger capacity);




extern "C" const NSMapTableKeyCallBacks NSIntegerMapKeyCallBacks __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" const NSMapTableKeyCallBacks NSNonOwnedPointerMapKeyCallBacks;
extern "C" const NSMapTableKeyCallBacks NSNonOwnedPointerOrNullMapKeyCallBacks;
extern "C" const NSMapTableKeyCallBacks NSNonRetainedObjectMapKeyCallBacks;
extern "C" const NSMapTableKeyCallBacks NSObjectMapKeyCallBacks;
extern "C" const NSMapTableKeyCallBacks NSOwnedPointerMapKeyCallBacks;
extern "C" const NSMapTableKeyCallBacks NSIntMapKeyCallBacks __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Not supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported")));



extern "C" const NSMapTableValueCallBacks NSIntegerMapValueCallBacks __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" const NSMapTableValueCallBacks NSNonOwnedPointerMapValueCallBacks;
extern "C" const NSMapTableValueCallBacks NSObjectMapValueCallBacks;
extern "C" const NSMapTableValueCallBacks NSNonRetainedObjectMapValueCallBacks;
extern "C" const NSMapTableValueCallBacks NSOwnedPointerMapValueCallBacks;
extern "C" const NSMapTableValueCallBacks NSIntMapValueCallBacks __attribute__((availability(macos,introduced=10.0,deprecated=10.5,message="Not supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported")));
#pragma clang assume_nonnull end






#pragma clang assume_nonnull begin

__attribute__((availability(swift, unavailable, message="NSInvocation and related APIs not available")))

#ifndef _REWRITER_typedef_NSMethodSignature
#define _REWRITER_typedef_NSMethodSignature
typedef struct objc_object NSMethodSignature;
typedef struct {} _objc_exc_NSMethodSignature;
#endif

struct NSMethodSignature_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// + (nullable NSMethodSignature *)signatureWithObjCTypes:(const char *)types;

// @property (readonly) NSUInteger numberOfArguments;
// - (const char *)getArgumentTypeAtIndex:(NSUInteger)idx __attribute__((objc_returns_inner_pointer));

// @property (readonly) NSUInteger frameLength;

// - (BOOL)isOneway;

// @property (readonly) const char *methodReturnType __attribute__((objc_returns_inner_pointer));
// @property (readonly) NSUInteger methodReturnLength;

/* @end */

#pragma clang assume_nonnull end








// @class NSNotification;
#ifndef _REWRITER_typedef_NSNotification
#define _REWRITER_typedef_NSNotification
typedef struct objc_object NSNotification;
typedef struct {} _objc_exc_NSNotification;
#endif

#ifndef _REWRITER_typedef_NSNotificationCenter
#define _REWRITER_typedef_NSNotificationCenter
typedef struct objc_object NSNotificationCenter;
typedef struct {} _objc_exc_NSNotificationCenter;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin

typedef NSUInteger NSPostingStyle; enum {
    NSPostWhenIdle = 1,
    NSPostASAP = 2,
    NSPostNow = 3
};

typedef NSUInteger NSNotificationCoalescing; enum {
    NSNotificationNoCoalescing = 0,
    NSNotificationCoalescingOnName = 1,
    NSNotificationCoalescingOnSender = 2
};


#ifndef _REWRITER_typedef_NSNotificationQueue
#define _REWRITER_typedef_NSNotificationQueue
typedef struct objc_object NSNotificationQueue;
typedef struct {} _objc_exc_NSNotificationQueue;
#endif

struct NSNotificationQueue_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _notificationCenter;
	id _asapQueue;
	id _asapObs;
	id _idleQueue;
	id _idleObs;
};

@property (class, readonly, strong) NSNotificationQueue *defaultQueue;

// - (instancetype)initWithNotificationCenter:(NSNotificationCenter *)notificationCenter __attribute__((objc_designated_initializer));

// - (void)enqueueNotification:(NSNotification *)notification postingStyle:(NSPostingStyle)postingStyle;
// - (void)enqueueNotification:(NSNotification *)notification postingStyle:(NSPostingStyle)postingStyle coalesceMask:(NSNotificationCoalescing)coalesceMask forModes:(nullable NSArray<NSRunLoopMode> *)modes;

// - (void)dequeueNotificationsMatching:(NSNotification *)notification coalesceMask:(NSUInteger)coalesceMask;

/* @end */

#pragma clang assume_nonnull end






#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSNull
#define _REWRITER_typedef_NSNull
typedef struct objc_object NSNull;
typedef struct {} _objc_exc_NSNull;
#endif

struct NSNull_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// + (NSNull *)null;

/* @end */

#pragma clang assume_nonnull end


// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif


#pragma clang assume_nonnull begin








__attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSOperation
#define _REWRITER_typedef_NSOperation
typedef struct objc_object NSOperation;
typedef struct {} _objc_exc_NSOperation;
#endif

struct NSOperation_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};

// - (void)start;
// - (void)main;

// @property (readonly, getter=isCancelled) BOOL cancelled;
// - (void)cancel;

// @property (readonly, getter=isExecuting) BOOL executing;
// @property (readonly, getter=isFinished) BOOL finished;
// @property (readonly, getter=isConcurrent) BOOL concurrent;
// @property (readonly, getter=isAsynchronous) BOOL asynchronous __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, getter=isReady) BOOL ready;

// - (void)addDependency:(NSOperation *)op;
// - (void)removeDependency:(NSOperation *)op;

// @property (readonly, copy) NSArray<NSOperation *> *dependencies;

typedef NSInteger NSOperationQueuePriority; enum {
 NSOperationQueuePriorityVeryLow = -8L,
 NSOperationQueuePriorityLow = -4L,
 NSOperationQueuePriorityNormal = 0,
 NSOperationQueuePriorityHigh = 4,
 NSOperationQueuePriorityVeryHigh = 8
};

// @property NSOperationQueuePriority queuePriority;

// @property (nullable, copy) void (^completionBlock)(void) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)waitUntilFinished __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property double threadPriority __attribute__((availability(macos,introduced=10.6,deprecated=10.10,message="Not supported"))) __attribute__((availability(ios,introduced=4.0,deprecated=8.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported")));

// @property NSQualityOfService qualityOfService __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (nullable, copy) NSString *name __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */




__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSBlockOperation
#define _REWRITER_typedef_NSBlockOperation
typedef struct objc_object NSBlockOperation;
typedef struct {} _objc_exc_NSBlockOperation;
#endif

struct NSBlockOperation_IMPL {
	struct NSOperation_IMPL NSOperation_IVARS;
};

// + (instancetype)blockOperationWithBlock:(void (^)(void))block;

// - (void)addExecutionBlock:(void (^)(void))block;
// @property (readonly, copy) NSArray<void (^)(void)> *executionBlocks;

/* @end */



__attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))
__attribute__((availability(swift, unavailable, message="NSInvocation and related APIs not available")))

#ifndef _REWRITER_typedef_NSInvocationOperation
#define _REWRITER_typedef_NSInvocationOperation
typedef struct objc_object NSInvocationOperation;
typedef struct {} _objc_exc_NSInvocationOperation;
#endif

struct NSInvocationOperation_IMPL {
	struct NSOperation_IMPL NSOperation_IVARS;
};

// - (nullable instancetype)initWithTarget:(id)target selector:(SEL)sel object:(nullable id)arg;
// - (instancetype)initWithInvocation:(NSInvocation *)inv __attribute__((objc_designated_initializer));

// @property (readonly, retain) NSInvocation *invocation;

// @property (nullable, readonly, retain) id result;

/* @end */


extern "C" NSExceptionName const NSInvocationOperationVoidResultException __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSExceptionName const NSInvocationOperationCancelledException __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

static const NSInteger NSOperationQueueDefaultMaxConcurrentOperationCount = -1;

__attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSOperationQueue
#define _REWRITER_typedef_NSOperationQueue
typedef struct objc_object NSOperationQueue;
typedef struct {} _objc_exc_NSOperationQueue;
#endif

struct NSOperationQueue_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};

// @property (readonly, strong) NSProgress *progress __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));

// - (void)addOperation:(NSOperation *)op;
// - (void)addOperations:(NSArray<NSOperation *> *)ops waitUntilFinished:(BOOL)wait __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)addOperationWithBlock:(void (^)(void))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (void)addBarrierBlock:(void (^)(void))barrier __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));

// @property NSInteger maxConcurrentOperationCount;

// @property (getter=isSuspended) BOOL suspended;

// @property (nullable, copy) NSString *name __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property NSQualityOfService qualityOfService __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (nullable, assign ) dispatch_queue_t underlyingQueue __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)cancelAllOperations;

// - (void)waitUntilAllOperationsAreFinished;

@property (class, readonly, strong, nullable) NSOperationQueue *currentQueue __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
@property (class, readonly, strong) NSOperationQueue *mainQueue __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSOperationQueue (NSDeprecated)



// @property (readonly, copy) NSArray<__kindof NSOperation *> *operations __attribute__((availability(macos,introduced=10.5,deprecated=100000,message="access to operations is inherently a race condition, it should not be used. For barrier style behaviors please use addBarrierBlock: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,message="access to operations is inherently a race condition, it should not be used. For barrier style behaviors please use addBarrierBlock: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,message="access to operations is inherently a race condition, it should not be used. For barrier style behaviors please use addBarrierBlock: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,message="access to operations is inherently a race condition, it should not be used. For barrier style behaviors please use addBarrierBlock: instead")));

// @property (readonly) NSUInteger operationCount __attribute__((availability(macos,introduced=10.6,deprecated=100000,replacement="progress.completedUnitCount"))) __attribute__((availability(ios,introduced=4.0,deprecated=100000,replacement="progress.completedUnitCount"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="progress.completedUnitCount"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="progress.completedUnitCount")));

/* @end */

#pragma clang assume_nonnull end







// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif


#pragma clang assume_nonnull begin



__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSOrthography
#define _REWRITER_typedef_NSOrthography
typedef struct objc_object NSOrthography;
typedef struct {} _objc_exc_NSOrthography;
#endif

struct NSOrthography_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};



// @property (readonly, copy) NSString *dominantScript;
// @property (readonly, copy) NSDictionary<NSString *, NSArray<NSString *> *> *languageMap;
// - (instancetype)initWithDominantScript:(NSString *)script languageMap:(NSDictionary<NSString *, NSArray<NSString *> *> *)map __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

/* @end */


// @interface NSOrthography (NSOrthographyExtended)


// - (nullable NSArray<NSString *> *)languagesForScript:(NSString *)script __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSString *)dominantLanguageForScript:(NSString *)script __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// @property (readonly, copy) NSString *dominantLanguage __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *allScripts __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSArray<NSString *> *allLanguages __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (instancetype)defaultOrthographyForLanguage:(NSString *)language __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));

/* @end */


// @interface NSOrthography (NSOrthographyCreation)

// + (instancetype)orthographyWithDominantScript:(NSString *)script languageMap:(NSDictionary<NSString *, NSArray<NSString *> *> *)map __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end

#pragma clang assume_nonnull begin
__attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSPointerArray
#define _REWRITER_typedef_NSPointerArray
typedef struct objc_object NSPointerArray;
typedef struct {} _objc_exc_NSPointerArray;
#endif

struct NSPointerArray_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// - (instancetype)initWithOptions:(NSPointerFunctionsOptions)options __attribute__((objc_designated_initializer));
// - (instancetype)initWithPointerFunctions:(NSPointerFunctions *)functions __attribute__((objc_designated_initializer));

// + (NSPointerArray *)pointerArrayWithOptions:(NSPointerFunctionsOptions)options;
// + (NSPointerArray *)pointerArrayWithPointerFunctions:(NSPointerFunctions *)functions;


// @property (readonly, copy) NSPointerFunctions *pointerFunctions;

// - (nullable void *)pointerAtIndex:(NSUInteger)index;


// - (void)addPointer:(nullable void *)pointer;
// - (void)removePointerAtIndex:(NSUInteger)index;
// - (void)insertPointer:(nullable void *)item atIndex:(NSUInteger)index;

// - (void)replacePointerAtIndex:(NSUInteger)index withPointer:(nullable void *)item;

// - (void)compact;



// @property NSUInteger count;

/* @end */



// @interface NSPointerArray (NSPointerArrayConveniences)







// + (NSPointerArray *)strongObjectsPointerArray __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSPointerArray *)weakObjectsPointerArray __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSArray *allObjects;

/* @end */

#pragma clang assume_nonnull end









typedef int NSSocketNativeHandle;

// @class NSRunLoop;
#ifndef _REWRITER_typedef_NSRunLoop
#define _REWRITER_typedef_NSRunLoop
typedef struct objc_object NSRunLoop;
typedef struct {} _objc_exc_NSRunLoop;
#endif

#ifndef _REWRITER_typedef_NSMutableArray
#define _REWRITER_typedef_NSMutableArray
typedef struct objc_object NSMutableArray;
typedef struct {} _objc_exc_NSMutableArray;
#endif

#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

// @class NSConnection;
#ifndef _REWRITER_typedef_NSConnection
#define _REWRITER_typedef_NSConnection
typedef struct objc_object NSConnection;
typedef struct {} _objc_exc_NSConnection;
#endif

#ifndef _REWRITER_typedef_NSPortMessage
#define _REWRITER_typedef_NSPortMessage
typedef struct objc_object NSPortMessage;
typedef struct {} _objc_exc_NSPortMessage;
#endif

// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

// @protocol NSPortDelegate, NSMachPortDelegate;

#pragma clang assume_nonnull begin

extern "C" NSNotificationName const NSPortDidBecomeInvalidNotification;


#ifndef _REWRITER_typedef_NSPort
#define _REWRITER_typedef_NSPort
typedef struct objc_object NSPort;
typedef struct {} _objc_exc_NSPort;
#endif

struct NSPort_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};








// + (NSPort *)port;

// - (void)invalidate;
// @property (readonly, getter=isValid) BOOL valid;

// - (void)setDelegate:(nullable id <NSPortDelegate>)anObject;
// - (nullable id <NSPortDelegate>)delegate;





// - (void)scheduleInRunLoop:(NSRunLoop *)runLoop forMode:(NSRunLoopMode)mode;
// - (void)removeFromRunLoop:(NSRunLoop *)runLoop forMode:(NSRunLoopMode)mode;



// @property (readonly) NSUInteger reservedSpaceLength;
// - (BOOL)sendBeforeDate:(NSDate *)limitDate components:(nullable NSMutableArray *)components from:(nullable NSPort *) receivePort reserved:(NSUInteger)headerSpaceReserved;
// - (BOOL)sendBeforeDate:(NSDate *)limitDate msgid:(NSUInteger)msgID components:(nullable NSMutableArray *)components from:(nullable NSPort *)receivePort reserved:(NSUInteger)headerSpaceReserved;
/* @end */


// @protocol NSPortDelegate <NSObject>
/* @optional */

// - (void)handlePortMessage:(NSPortMessage *)message;



/* @end */




__attribute__((objc_arc_weak_reference_unavailable))

#ifndef _REWRITER_typedef_NSMachPort
#define _REWRITER_typedef_NSMachPort
typedef struct objc_object NSMachPort;
typedef struct {} _objc_exc_NSMachPort;
#endif

struct NSMachPort_IMPL {
	struct NSPort_IMPL NSPort_IVARS;
	id _delegate;
	NSUInteger _flags;
	uint32_t _machPort;
	NSUInteger _reserved;
};


// + (NSPort *)portWithMachPort:(uint32_t)machPort;
// - (instancetype)initWithMachPort:(uint32_t)machPort __attribute__((objc_designated_initializer));

// - (void)setDelegate:(nullable id <NSMachPortDelegate>)anObject;
// - (nullable id <NSMachPortDelegate>)delegate;

typedef NSUInteger NSMachPortOptions; enum {
    NSMachPortDeallocateNone = 0,
    NSMachPortDeallocateSendRight = (1UL << 0),
    NSMachPortDeallocateReceiveRight = (1UL << 1)
} __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (NSPort *)portWithMachPort:(uint32_t)machPort options:(NSMachPortOptions)f __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (instancetype)initWithMachPort:(uint32_t)machPort options:(NSMachPortOptions)f __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));

// @property (readonly) uint32_t machPort;

// - (void)scheduleInRunLoop:(NSRunLoop *)runLoop forMode:(NSRunLoopMode)mode;
// - (void)removeFromRunLoop:(NSRunLoop *)runLoop forMode:(NSRunLoopMode)mode;




/* @end */


// @protocol NSMachPortDelegate <NSPortDelegate>
/* @optional */



// - (void)handleMachMessage:(void *)msg;

/* @end */






__attribute__((objc_arc_weak_reference_unavailable))

#ifndef _REWRITER_typedef_NSMessagePort
#define _REWRITER_typedef_NSMessagePort
typedef struct objc_object NSMessagePort;
typedef struct {} _objc_exc_NSMessagePort;
#endif

struct NSMessagePort_IMPL {
	struct NSPort_IMPL NSPort_IVARS;
	void *_port;
	id _delegate;
};


/* @end */

#pragma clang assume_nonnull end








#pragma clang assume_nonnull begin

enum {
    NSWindowsNTOperatingSystem = 1,
    NSWindows95OperatingSystem,
    NSSolarisOperatingSystem,
    NSHPUXOperatingSystem,
    NSMACHOperatingSystem,
    NSSunOSOperatingSystem,
    NSOSF1OperatingSystem
} __attribute__((availability(macos,introduced=10.0,deprecated=10.10,message="Not supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported")));

typedef struct {
    NSInteger majorVersion;
    NSInteger minorVersion;
    NSInteger patchVersion;
} NSOperatingSystemVersion;

// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif



#ifndef _REWRITER_typedef_NSProcessInfo
#define _REWRITER_typedef_NSProcessInfo
typedef struct objc_object NSProcessInfo;
typedef struct {} _objc_exc_NSProcessInfo;
#endif

struct NSProcessInfo_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSDictionary *environment;
	NSArray *arguments;
	NSString *hostName;
	NSString *name;
	NSInteger automaticTerminationOptOutCounter;
};


@property (class, readonly, strong) NSProcessInfo *processInfo;

// @property (readonly, copy) NSDictionary<NSString *, NSString *> *environment;
// @property (readonly, copy) NSArray<NSString *> *arguments;
// @property (readonly, copy) NSString *hostName;
// @property (copy) NSString *processName;
// @property (readonly) int processIdentifier;

// @property (readonly, copy) NSString *globallyUniqueString;

// - (NSUInteger)operatingSystem __attribute__((availability(macos,introduced=10.0,deprecated=10.10,message="-operatingSystem always returns NSMACHOperatingSystem, use -operatingSystemVersion or -isOperatingSystemAtLeastVersion: instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="-operatingSystem always returns NSMACHOperatingSystem, use -operatingSystemVersion or -isOperatingSystemAtLeastVersion: instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="-operatingSystem always returns NSMACHOperatingSystem, use -operatingSystemVersion or -isOperatingSystemAtLeastVersion: instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="-operatingSystem always returns NSMACHOperatingSystem, use -operatingSystemVersion or -isOperatingSystemAtLeastVersion: instead")));
// - (NSString *)operatingSystemName __attribute__((availability(macos,introduced=10.0,deprecated=10.10,message="-operatingSystemName always returns NSMACHOperatingSystem, use -operatingSystemVersionString instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="-operatingSystemName always returns NSMACHOperatingSystem, use -operatingSystemVersionString instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="-operatingSystemName always returns NSMACHOperatingSystem, use -operatingSystemVersionString instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="-operatingSystemName always returns NSMACHOperatingSystem, use -operatingSystemVersionString instead")));


// @property (readonly, copy) NSString *operatingSystemVersionString;

// @property (readonly) NSOperatingSystemVersion operatingSystemVersion __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly) NSUInteger processorCount __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) NSUInteger activeProcessorCount __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) unsigned long long physicalMemory __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (BOOL) isOperatingSystemAtLeastVersion:(NSOperatingSystemVersion)version __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) NSTimeInterval systemUptime __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (void)disableSuddenTermination __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// - (void)enableSuddenTermination __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));







// - (void)disableAutomaticTermination:(NSString *)reason __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// - (void)enableAutomaticTermination:(NSString *)reason __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));






// @property BOOL automaticTerminationSupportEnabled __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

/* @end */

typedef uint64_t NSActivityOptions; enum {
    NSActivityIdleDisplaySleepDisabled = (1ULL << 40),


    NSActivityIdleSystemSleepDisabled = (1ULL << 20),


    NSActivitySuddenTerminationDisabled = (1ULL << 14),


    NSActivityAutomaticTerminationDisabled = (1ULL << 15),





    NSActivityUserInitiated = (0x00FFFFFFULL | NSActivityIdleSystemSleepDisabled),
    NSActivityUserInitiatedAllowingIdleSystemSleep = (NSActivityUserInitiated & ~NSActivityIdleSystemSleepDisabled),


    NSActivityBackground = 0x000000FFULL,


    NSActivityLatencyCritical = 0xFF00000000ULL,
} __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @interface NSProcessInfo (NSProcessInfoActivity)



// - (id <NSObject>)beginActivityWithOptions:(NSActivityOptions)options reason:(NSString *)reason __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (void)endActivity:(id <NSObject>)activity __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (void)performActivityWithOptions:(NSActivityOptions)options reason:(NSString *)reason usingBlock:(void (^)(void))block __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (void)performExpiringActivityWithReason:(NSString *)reason usingBlock:(void(^)(BOOL expired))block __attribute__((availability(ios,introduced=8.2))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

/* @end */


// @interface NSProcessInfo (NSUserInformation)

// @property (readonly, copy) NSString *userName __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// @property (readonly, copy) NSString *fullUserName __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

/* @end */



typedef NSInteger NSProcessInfoThermalState; enum {

    NSProcessInfoThermalStateNominal,


    NSProcessInfoThermalStateFair,


    NSProcessInfoThermalStateSerious,


    NSProcessInfoThermalStateCritical
} __attribute__((availability(macosx,introduced=10.10.3))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));

// @interface NSProcessInfo (NSProcessInfoThermalState)


// @property (readonly) NSProcessInfoThermalState thermalState __attribute__((availability(macosx,introduced=10.10.3))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));

/* @end */


// @interface NSProcessInfo (NSProcessInfoPowerState)


// @property (readonly, getter=isLowPowerModeEnabled) BOOL lowPowerModeEnabled __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

/* @end */

extern "C" NSNotificationName const NSProcessInfoThermalStateDidChangeNotification __attribute__((availability(macosx,introduced=10.10.3))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
extern "C" NSNotificationName const NSProcessInfoPowerStateDidChangeNotification __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

// @interface NSProcessInfo (NSProcessInfoPlatform)

// @property (readonly, getter=isMacCatalystApp) BOOL macCatalystApp __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

/* @end */

#pragma clang assume_nonnull end







// @class NSMethodSignature;
#ifndef _REWRITER_typedef_NSMethodSignature
#define _REWRITER_typedef_NSMethodSignature
typedef struct objc_object NSMethodSignature;
typedef struct {} _objc_exc_NSMethodSignature;
#endif

#ifndef _REWRITER_typedef_NSInvocation
#define _REWRITER_typedef_NSInvocation
typedef struct objc_object NSInvocation;
typedef struct {} _objc_exc_NSInvocation;
#endif


#pragma clang assume_nonnull begin

__attribute__((objc_root_class))

#ifndef _REWRITER_typedef_NSProxy
#define _REWRITER_typedef_NSProxy
typedef struct objc_object NSProxy;
typedef struct {} _objc_exc_NSProxy;
#endif

struct NSProxy_IMPL {
	Class isa;
};


// + (id)alloc;
// + (id)allocWithZone:(nullable NSZone *)zone ;
// + (Class)class;

// - (void)forwardInvocation:(NSInvocation *)invocation;
// - (nullable NSMethodSignature *)methodSignatureForSelector:(SEL)sel __attribute__((availability(swift, unavailable, message="NSInvocation and related APIs not available")));
// - (void)dealloc;
// - (void)finalize;
// @property (readonly, copy) NSString *description;
// @property (readonly, copy) NSString *debugDescription;
// + (BOOL)respondsToSelector:(SEL)aSelector;

// - (BOOL)allowsWeakReference __attribute__((availability(macos,unavailable))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// - (BOOL)retainWeakReference __attribute__((availability(macos,unavailable))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



/* @end */

#pragma clang assume_nonnull end















// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

#ifndef _REWRITER_typedef_NSTimeZone
#define _REWRITER_typedef_NSTimeZone
typedef struct objc_object NSTimeZone;
typedef struct {} _objc_exc_NSTimeZone;
#endif

#ifndef _REWRITER_typedef_NSOrthography
#define _REWRITER_typedef_NSOrthography
typedef struct objc_object NSOrthography;
typedef struct {} _objc_exc_NSOrthography;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

#ifndef _REWRITER_typedef_NSRegularExpression
#define _REWRITER_typedef_NSRegularExpression
typedef struct objc_object NSRegularExpression;
typedef struct {} _objc_exc_NSRegularExpression;
#endif


#pragma clang assume_nonnull begin



typedef uint64_t NSTextCheckingType; enum {
    NSTextCheckingTypeOrthography = 1ULL << 0,
    NSTextCheckingTypeSpelling = 1ULL << 1,
    NSTextCheckingTypeGrammar = 1ULL << 2,
    NSTextCheckingTypeDate = 1ULL << 3,
    NSTextCheckingTypeAddress = 1ULL << 4,
    NSTextCheckingTypeLink = 1ULL << 5,
    NSTextCheckingTypeQuote = 1ULL << 6,
    NSTextCheckingTypeDash = 1ULL << 7,
    NSTextCheckingTypeReplacement = 1ULL << 8,
    NSTextCheckingTypeCorrection = 1ULL << 9,
    NSTextCheckingTypeRegularExpression __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 1ULL << 10,
    NSTextCheckingTypePhoneNumber __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 1ULL << 11,
    NSTextCheckingTypeTransitInformation __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 1ULL << 12
};

typedef uint64_t NSTextCheckingTypes;
enum {
    NSTextCheckingAllSystemTypes = 0xffffffffULL,
    NSTextCheckingAllCustomTypes = 0xffffffffULL << 32,
    NSTextCheckingAllTypes = (NSTextCheckingAllSystemTypes | NSTextCheckingAllCustomTypes)
};

typedef NSString *NSTextCheckingKey __attribute__((swift_wrapper(struct)));

__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSTextCheckingResult
#define _REWRITER_typedef_NSTextCheckingResult
typedef struct objc_object NSTextCheckingResult;
typedef struct {} _objc_exc_NSTextCheckingResult;
#endif

struct NSTextCheckingResult_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};



// @property (readonly) NSTextCheckingType resultType;
// @property (readonly) NSRange range;

/* @end */


// @interface NSTextCheckingResult (NSTextCheckingResultOptional)


// @property (nullable, readonly, copy) NSOrthography *orthography;
// @property (nullable, readonly, copy) NSArray<NSDictionary<NSString *, id> *> *grammarDetails;
// @property (nullable, readonly, copy) NSDate *date;
// @property (nullable, readonly, copy) NSTimeZone *timeZone;
// @property (readonly) NSTimeInterval duration;
// @property (nullable, readonly, copy) NSDictionary<NSTextCheckingKey, NSString *> *components __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSURL *URL;
// @property (nullable, readonly, copy) NSString *replacementString;
// @property (nullable, readonly, copy) NSArray<NSString *> *alternativeStrings __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSRegularExpression *regularExpression __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSString *phoneNumber __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (readonly) NSUInteger numberOfRanges __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSRange)rangeAtIndex:(NSUInteger)idx __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSRange)rangeWithName:(NSString *)name __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// - (NSTextCheckingResult *)resultByAdjustingRangesWithOffset:(NSInteger)offset __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (nullable, readonly, copy) NSDictionary<NSTextCheckingKey, NSString *> *addressComponents;

/* @end */




extern "C" NSTextCheckingKey const NSTextCheckingNameKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSTextCheckingKey const NSTextCheckingJobTitleKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSTextCheckingKey const NSTextCheckingOrganizationKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSTextCheckingKey const NSTextCheckingStreetKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSTextCheckingKey const NSTextCheckingCityKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSTextCheckingKey const NSTextCheckingStateKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSTextCheckingKey const NSTextCheckingZIPKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSTextCheckingKey const NSTextCheckingCountryKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSTextCheckingKey const NSTextCheckingPhoneKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSTextCheckingKey const NSTextCheckingAirlineKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSTextCheckingKey const NSTextCheckingFlightKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// @interface NSTextCheckingResult (NSTextCheckingResultCreation)


// + (NSTextCheckingResult *)orthographyCheckingResultWithRange:(NSRange)range orthography:(NSOrthography *)orthography;
// + (NSTextCheckingResult *)spellCheckingResultWithRange:(NSRange)range;
// + (NSTextCheckingResult *)grammarCheckingResultWithRange:(NSRange)range details:(NSArray<NSDictionary<NSString *, id> *> *)details;
// + (NSTextCheckingResult *)dateCheckingResultWithRange:(NSRange)range date:(NSDate *)date;
// + (NSTextCheckingResult *)dateCheckingResultWithRange:(NSRange)range date:(NSDate *)date timeZone:(NSTimeZone *)timeZone duration:(NSTimeInterval)duration;
// + (NSTextCheckingResult *)addressCheckingResultWithRange:(NSRange)range components:(NSDictionary<NSTextCheckingKey, NSString *> *)components;
// + (NSTextCheckingResult *)linkCheckingResultWithRange:(NSRange)range URL:(NSURL *)url;
// + (NSTextCheckingResult *)quoteCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacementString;
// + (NSTextCheckingResult *)dashCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacementString;
// + (NSTextCheckingResult *)replacementCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacementString;
// + (NSTextCheckingResult *)correctionCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacementString;
// + (NSTextCheckingResult *)correctionCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacementString alternativeStrings:(NSArray<NSString *> *)alternativeStrings __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSTextCheckingResult *)regularExpressionCheckingResultWithRanges:(NSRangePointer)ranges count:(NSUInteger)count regularExpression:(NSRegularExpression *)regularExpression __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSTextCheckingResult *)phoneNumberCheckingResultWithRange:(NSRange)range phoneNumber:(NSString *)phoneNumber __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSTextCheckingResult *)transitInformationCheckingResultWithRange:(NSRange)range components:(NSDictionary<NSTextCheckingKey, NSString *> *)components __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end

// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif


#pragma clang assume_nonnull begin




typedef NSUInteger NSRegularExpressionOptions; enum {
   NSRegularExpressionCaseInsensitive = 1 << 0,
   NSRegularExpressionAllowCommentsAndWhitespace = 1 << 1,
   NSRegularExpressionIgnoreMetacharacters = 1 << 2,
   NSRegularExpressionDotMatchesLineSeparators = 1 << 3,
   NSRegularExpressionAnchorsMatchLines = 1 << 4,
   NSRegularExpressionUseUnixLineSeparators = 1 << 5,
   NSRegularExpressionUseUnicodeWordBoundaries = 1 << 6
};

__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSRegularExpression
#define _REWRITER_typedef_NSRegularExpression
typedef struct objc_object NSRegularExpression;
typedef struct {} _objc_exc_NSRegularExpression;
#endif

struct NSRegularExpression_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSString *_pattern;
	NSUInteger _options;
	void *_internal;
	id _reserved1;
	int32_t _checkout;
	int32_t _reserved2;
};




// + (nullable NSRegularExpression *)regularExpressionWithPattern:(NSString *)pattern options:(NSRegularExpressionOptions)options error:(NSError **)error;
// - (nullable instancetype)initWithPattern:(NSString *)pattern options:(NSRegularExpressionOptions)options error:(NSError **)error __attribute__((objc_designated_initializer));

// @property (readonly, copy) NSString *pattern;
// @property (readonly) NSRegularExpressionOptions options;
// @property (readonly) NSUInteger numberOfCaptureGroups;



// + (NSString *)escapedPatternForString:(NSString *)string;

/* @end */



typedef NSUInteger NSMatchingOptions; enum {
   NSMatchingReportProgress = 1 << 0,
   NSMatchingReportCompletion = 1 << 1,
   NSMatchingAnchored = 1 << 2,
   NSMatchingWithTransparentBounds = 1 << 3,
   NSMatchingWithoutAnchoringBounds = 1 << 4
};

typedef NSUInteger NSMatchingFlags; enum {
   NSMatchingProgress = 1 << 0,
   NSMatchingCompleted = 1 << 1,
   NSMatchingHitEnd = 1 << 2,
   NSMatchingRequiredEnd = 1 << 3,
   NSMatchingInternalError = 1 << 4
};

// @interface NSRegularExpression (NSMatching)




// - (void)enumerateMatchesInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)range usingBlock:(void (__attribute__((noescape)) ^)(NSTextCheckingResult * _Nullable result, NSMatchingFlags flags, BOOL *stop))block;

// - (NSArray<NSTextCheckingResult *> *)matchesInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)range;
// - (NSUInteger)numberOfMatchesInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)range;
// - (nullable NSTextCheckingResult *)firstMatchInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)range;
// - (NSRange)rangeOfFirstMatchInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)range;
/* @end */



// @interface NSRegularExpression (NSReplacement)



// - (NSString *)stringByReplacingMatchesInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)range withTemplate:(NSString *)templ;
// - (NSUInteger)replaceMatchesInString:(NSMutableString *)string options:(NSMatchingOptions)options range:(NSRange)range withTemplate:(NSString *)templ;



// - (NSString *)replacementStringForResult:(NSTextCheckingResult *)result inString:(NSString *)string offset:(NSInteger)offset template:(NSString *)templ;



// + (NSString *)escapedTemplateForString:(NSString *)string;

/* @end */


__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSDataDetector
#define _REWRITER_typedef_NSDataDetector
typedef struct objc_object NSDataDetector;
typedef struct {} _objc_exc_NSDataDetector;
#endif

struct NSDataDetector_IMPL {
	struct NSRegularExpression_IMPL NSRegularExpression_IVARS;
	NSTextCheckingTypes _types;
};




// + (nullable NSDataDetector *)dataDetectorWithTypes:(NSTextCheckingTypes)checkingTypes error:(NSError **)error;
// - (nullable instancetype)initWithTypes:(NSTextCheckingTypes)checkingTypes error:(NSError **)error __attribute__((objc_designated_initializer));

// @property (readonly) NSTextCheckingTypes checkingTypes;

/* @end */

#pragma clang assume_nonnull end



#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSSortDescriptor
#define _REWRITER_typedef_NSSortDescriptor
typedef struct objc_object NSSortDescriptor;
typedef struct {} _objc_exc_NSSortDescriptor;
#endif

struct NSSortDescriptor_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSUInteger _sortDescriptorFlags;
	NSString *_key;
	SEL _selector;
	id _selectorOrBlock;
};


// + (instancetype)sortDescriptorWithKey:(nullable NSString *)key ascending:(BOOL)ascending __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (instancetype)sortDescriptorWithKey:(nullable NSString *)key ascending:(BOOL)ascending selector:(nullable SEL)selector __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// - (instancetype)initWithKey:(nullable NSString *)key ascending:(BOOL)ascending;
// - (instancetype)initWithKey:(nullable NSString *)key ascending:(BOOL)ascending selector:(nullable SEL)selector;
// - (nullable instancetype)initWithCoder:(NSCoder *)coder;

// @property (nullable, readonly, copy) NSString *key;
// @property (readonly) BOOL ascending;
// @property (nullable, readonly) SEL selector;

// - (void)allowEvaluation __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (instancetype)sortDescriptorWithKey:(nullable NSString *)key ascending:(BOOL)ascending comparator:(NSComparator)cmptr __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (instancetype)initWithKey:(nullable NSString *)key ascending:(BOOL)ascending comparator:(NSComparator)cmptr __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly) NSComparator comparator __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (NSComparisonResult)compareObject:(id)object1 toObject:(id)object2;
// @property (readonly, retain) id reversedSortDescriptor;

/* @end */


// @interface NSSet<ObjectType> (NSSortDescriptorSorting)

// - (NSArray<ObjectType> *)sortedArrayUsingDescriptors:(NSArray<NSSortDescriptor *> *)sortDescriptors __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSArray<ObjectType> (NSSortDescriptorSorting)

// - (NSArray<ObjectType> *)sortedArrayUsingDescriptors:(NSArray<NSSortDescriptor *> *)sortDescriptors;

/* @end */


// @interface NSMutableArray<ObjectType> (NSSortDescriptorSorting)

// - (void)sortUsingDescriptors:(NSArray<NSSortDescriptor *> *)sortDescriptors;

/* @end */


// @interface NSOrderedSet<ObjectType> (NSKeyValueSorting)


// - (NSArray<ObjectType> *)sortedArrayUsingDescriptors:(NSArray<NSSortDescriptor *> *)sortDescriptors __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSMutableOrderedSet<ObjectType> (NSKeyValueSorting)


// - (void)sortUsingDescriptors:(NSArray<NSSortDescriptor *> *)sortDescriptors __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end







// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSHost
#define _REWRITER_typedef_NSHost
typedef struct objc_object NSHost;
typedef struct {} _objc_exc_NSHost;
#endif

#ifndef _REWRITER_typedef_NSInputStream
#define _REWRITER_typedef_NSInputStream
typedef struct objc_object NSInputStream;
typedef struct {} _objc_exc_NSInputStream;
#endif

#ifndef _REWRITER_typedef_NSOutputStream
#define _REWRITER_typedef_NSOutputStream
typedef struct objc_object NSOutputStream;
typedef struct {} _objc_exc_NSOutputStream;
#endif

#ifndef _REWRITER_typedef_NSRunLoop
#define _REWRITER_typedef_NSRunLoop
typedef struct objc_object NSRunLoop;
typedef struct {} _objc_exc_NSRunLoop;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

// @protocol NSStreamDelegate;

typedef NSString * NSStreamPropertyKey __attribute__((swift_wrapper(struct)));

#pragma clang assume_nonnull begin

typedef NSUInteger NSStreamStatus; enum {
    NSStreamStatusNotOpen = 0,
    NSStreamStatusOpening = 1,
    NSStreamStatusOpen = 2,
    NSStreamStatusReading = 3,
    NSStreamStatusWriting = 4,
    NSStreamStatusAtEnd = 5,
    NSStreamStatusClosed = 6,
    NSStreamStatusError = 7
};

typedef NSUInteger NSStreamEvent; enum {
    NSStreamEventNone = 0,
    NSStreamEventOpenCompleted = 1UL << 0,
    NSStreamEventHasBytesAvailable = 1UL << 1,
    NSStreamEventHasSpaceAvailable = 1UL << 2,
    NSStreamEventErrorOccurred = 1UL << 3,
    NSStreamEventEndEncountered = 1UL << 4
};




#ifndef _REWRITER_typedef_NSStream
#define _REWRITER_typedef_NSStream
typedef struct objc_object NSStream;
typedef struct {} _objc_exc_NSStream;
#endif

struct NSStream_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};

// - (void)open;
// - (void)close;

// @property (nullable, assign) id <NSStreamDelegate> delegate;


// - (nullable id)propertyForKey:(NSStreamPropertyKey)key;
// - (BOOL)setProperty:(nullable id)property forKey:(NSStreamPropertyKey)key;

// - (void)scheduleInRunLoop:(NSRunLoop *)aRunLoop forMode:(NSRunLoopMode)mode;
// - (void)removeFromRunLoop:(NSRunLoop *)aRunLoop forMode:(NSRunLoopMode)mode;

// @property (readonly) NSStreamStatus streamStatus;
// @property (nullable, readonly, copy) NSError *streamError;
/* @end */





#ifndef _REWRITER_typedef_NSInputStream
#define _REWRITER_typedef_NSInputStream
typedef struct objc_object NSInputStream;
typedef struct {} _objc_exc_NSInputStream;
#endif

struct NSInputStream_IMPL {
	struct NSStream_IMPL NSStream_IVARS;
};

// - (NSInteger)read:(uint8_t *)buffer maxLength:(NSUInteger)len;


// - (BOOL)getBuffer:(uint8_t * _Nullable * _Nonnull)buffer length:(NSUInteger *)len;


// @property (readonly) BOOL hasBytesAvailable;


// - (instancetype)initWithData:(NSData *)data __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithURL:(NSURL *)url __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));

/* @end */





#ifndef _REWRITER_typedef_NSOutputStream
#define _REWRITER_typedef_NSOutputStream
typedef struct objc_object NSOutputStream;
typedef struct {} _objc_exc_NSOutputStream;
#endif

struct NSOutputStream_IMPL {
	struct NSStream_IMPL NSStream_IVARS;
};

// - (NSInteger)write:(const uint8_t *)buffer maxLength:(NSUInteger)len;


// @property (readonly) BOOL hasSpaceAvailable;


// - (instancetype)initToMemory __attribute__((objc_designated_initializer));
// - (instancetype)initToBuffer:(uint8_t *)buffer capacity:(NSUInteger)capacity __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithURL:(NSURL *)url append:(BOOL)shouldAppend __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));

/* @end */



// @interface NSStream (NSSocketStreamCreationExtensions)

// + (void)getStreamsToHostWithName:(NSString *)hostname port:(NSInteger)port inputStream:(NSInputStream * _Nullable * _Nullable)inputStream outputStream:(NSOutputStream * _Nullable * _Nullable)outputStream __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,unavailable)));





/* @end */


// @interface NSStream (NSStreamBoundPairCreationExtensions)
// + (void)getBoundStreamsWithBufferSize:(NSUInteger)bufferSize inputStream:(NSInputStream * _Nullable * _Nullable)inputStream outputStream:(NSOutputStream * _Nullable * _Nullable)outputStream __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
/* @end */



// @interface NSInputStream (NSInputStreamExtensions)
// - (nullable instancetype)initWithFileAtPath:(NSString *)path;

// + (nullable instancetype)inputStreamWithData:(NSData *)data;
// + (nullable instancetype)inputStreamWithFileAtPath:(NSString *)path;
// + (nullable instancetype)inputStreamWithURL:(NSURL *)url __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
/* @end */



// @interface NSOutputStream (NSOutputStreamExtensions)
// - (nullable instancetype)initToFileAtPath:(NSString *)path append:(BOOL)shouldAppend;

// + (instancetype)outputStreamToMemory;
// + (instancetype)outputStreamToBuffer:(uint8_t *)buffer capacity:(NSUInteger)capacity;
// + (instancetype)outputStreamToFileAtPath:(NSString *)path append:(BOOL)shouldAppend;
// + (nullable instancetype)outputStreamWithURL:(NSURL *)url append:(BOOL)shouldAppend __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
/* @end */


// @protocol NSStreamDelegate <NSObject>
/* @optional */
// - (void)stream:(NSStream *)aStream handleEvent:(NSStreamEvent)eventCode;
/* @end */




extern "C" NSStreamPropertyKey const NSStreamSocketSecurityLevelKey __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSString * NSStreamSocketSecurityLevel __attribute__((swift_wrapper(enum)));

extern "C" NSStreamSocketSecurityLevel const NSStreamSocketSecurityLevelNone __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStreamSocketSecurityLevel const NSStreamSocketSecurityLevelSSLv2 __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStreamSocketSecurityLevel const NSStreamSocketSecurityLevelSSLv3 __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStreamSocketSecurityLevel const NSStreamSocketSecurityLevelTLSv1 __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStreamSocketSecurityLevel const NSStreamSocketSecurityLevelNegotiatedSSL __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSStreamPropertyKey const NSStreamSOCKSProxyConfigurationKey __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSString * NSStreamSOCKSProxyConfiguration __attribute__((swift_wrapper(enum)));

extern "C" NSStreamSOCKSProxyConfiguration const NSStreamSOCKSProxyHostKey __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSStreamSOCKSProxyConfiguration const NSStreamSOCKSProxyPortKey __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSStreamSOCKSProxyConfiguration const NSStreamSOCKSProxyVersionKey __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSStreamSOCKSProxyConfiguration const NSStreamSOCKSProxyUserKey __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSStreamSOCKSProxyConfiguration const NSStreamSOCKSProxyPasswordKey __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


typedef NSString * NSStreamSOCKSProxyVersion __attribute__((swift_wrapper(enum)));

extern "C" NSStreamSOCKSProxyVersion const NSStreamSOCKSProxyVersion4 __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSStreamSOCKSProxyVersion const NSStreamSOCKSProxyVersion5 __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSStreamPropertyKey const NSStreamDataWrittenToMemoryStreamKey __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSStreamPropertyKey const NSStreamFileCurrentOffsetKey __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern "C" NSErrorDomain const NSStreamSocketSSLErrorDomain __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSErrorDomain const NSStreamSOCKSErrorDomain __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






extern "C" NSStreamPropertyKey const NSStreamNetworkServiceType __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSString * NSStreamNetworkServiceTypeValue __attribute__((swift_wrapper(enum)));


extern "C" NSStreamNetworkServiceTypeValue const NSStreamNetworkServiceTypeVoIP __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStreamNetworkServiceTypeValue const NSStreamNetworkServiceTypeVideo __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStreamNetworkServiceTypeValue const NSStreamNetworkServiceTypeBackground __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStreamNetworkServiceTypeValue const NSStreamNetworkServiceTypeVoice __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSStreamNetworkServiceTypeValue const NSStreamNetworkServiceTypeCallSignaling __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
#pragma clang assume_nonnull end










// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSMutableDictionary
#define _REWRITER_typedef_NSMutableDictionary
typedef struct objc_object NSMutableDictionary;
typedef struct {} _objc_exc_NSMutableDictionary;
#endif

#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

#ifndef _REWRITER_typedef_NSNumber
#define _REWRITER_typedef_NSNumber
typedef struct objc_object NSNumber;
typedef struct {} _objc_exc_NSNumber;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSThread
#define _REWRITER_typedef_NSThread
typedef struct objc_object NSThread;
typedef struct {} _objc_exc_NSThread;
#endif

struct NSThread_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _private;
	uint8_t _bytes[44];
};


@property (class, readonly, strong) NSThread *currentThread;

// + (void)detachNewThreadWithBlock:(void (^)(void))block __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));
// + (void)detachNewThreadSelector:(SEL)selector toTarget:(id)target withObject:(nullable id)argument;

// + (BOOL)isMultiThreaded;

// @property (readonly, retain) NSMutableDictionary *threadDictionary;

// + (void)sleepUntilDate:(NSDate *)date;
// + (void)sleepForTimeInterval:(NSTimeInterval)ti;

// + (void)exit;

// + (double)threadPriority;
// + (BOOL)setThreadPriority:(double)p;

// @property double threadPriority __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property NSQualityOfService qualityOfService __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

@property (class, readonly, copy) NSArray<NSNumber *> *callStackReturnAddresses __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
@property (class, readonly, copy) NSArray<NSString *> *callStackSymbols __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (nullable, copy) NSString *name __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property NSUInteger stackSize __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly) BOOL isMainThread __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
@property (class, readonly) BOOL isMainThread __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
@property (class, readonly, strong) NSThread *mainThread __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (instancetype)init __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));
// - (instancetype)initWithTarget:(id)target selector:(SEL)selector object:(nullable id)argument __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (instancetype)initWithBlock:(void (^)(void))block __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (readonly, getter=isExecuting) BOOL executing __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, getter=isFinished) BOOL finished __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, getter=isCancelled) BOOL cancelled __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)cancel __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)start __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)main __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


extern "C" NSNotificationName const NSWillBecomeMultiThreadedNotification;
extern "C" NSNotificationName const NSDidBecomeSingleThreadedNotification;
extern "C" NSNotificationName const NSThreadWillExitNotification;

// @interface NSObject (NSThreadPerformAdditions)

// - (void)performSelectorOnMainThread:(SEL)aSelector withObject:(nullable id)arg waitUntilDone:(BOOL)wait modes:(nullable NSArray<NSString *> *)array;
// - (void)performSelectorOnMainThread:(SEL)aSelector withObject:(nullable id)arg waitUntilDone:(BOOL)wait;


// - (void)performSelector:(SEL)aSelector onThread:(NSThread *)thr withObject:(nullable id)arg waitUntilDone:(BOOL)wait modes:(nullable NSArray<NSString *> *)array __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)performSelector:(SEL)aSelector onThread:(NSThread *)thr withObject:(nullable id)arg waitUntilDone:(BOOL)wait __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)performSelectorInBackground:(SEL)aSelector withObject:(nullable id)arg __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end








// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSLocale
#define _REWRITER_typedef_NSLocale
typedef struct objc_object NSLocale;
typedef struct {} _objc_exc_NSLocale;
#endif


#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSTimeZone
#define _REWRITER_typedef_NSTimeZone
typedef struct objc_object NSTimeZone;
typedef struct {} _objc_exc_NSTimeZone;
#endif

struct NSTimeZone_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly, copy) NSString *name;
// @property (readonly, copy) NSData *data;

// - (NSInteger)secondsFromGMTForDate:(NSDate *)aDate;
// - (nullable NSString *)abbreviationForDate:(NSDate *)aDate;
// - (BOOL)isDaylightSavingTimeForDate:(NSDate *)aDate;
// - (NSTimeInterval)daylightSavingTimeOffsetForDate:(NSDate *)aDate __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSDate *)nextDaylightSavingTimeTransitionAfterDate:(NSDate *)aDate __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSTimeZone (NSExtendedTimeZone)

@property (class, readonly, copy) NSTimeZone *systemTimeZone;
// + (void)resetSystemTimeZone;

@property (class, copy) NSTimeZone *defaultTimeZone;

@property (class, readonly, copy) NSTimeZone *localTimeZone;

@property (class, readonly, copy) NSArray<NSString *> *knownTimeZoneNames;

@property (class, copy) NSDictionary<NSString *, NSString *> *abbreviationDictionary __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (NSDictionary<NSString *, NSString *> *)abbreviationDictionary;

@property (class, readonly, copy) NSString *timeZoneDataVersion __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly) NSInteger secondsFromGMT;
// @property (nullable, readonly, copy) NSString *abbreviation;
// @property (readonly, getter=isDaylightSavingTime) BOOL daylightSavingTime;
// @property (readonly) NSTimeInterval daylightSavingTimeOffset __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSDate *nextDaylightSavingTimeTransition __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSString *description;

// - (BOOL)isEqualToTimeZone:(NSTimeZone *)aTimeZone;

typedef NSInteger NSTimeZoneNameStyle; enum {
 NSTimeZoneNameStyleStandard,
 NSTimeZoneNameStyleShortStandard,
 NSTimeZoneNameStyleDaylightSaving,
 NSTimeZoneNameStyleShortDaylightSaving,
 NSTimeZoneNameStyleGeneric,
 NSTimeZoneNameStyleShortGeneric
};

// - (nullable NSString *)localizedName:(NSTimeZoneNameStyle)style locale:(nullable NSLocale *)locale __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSTimeZone (NSTimeZoneCreation)




// + (nullable instancetype)timeZoneWithName:(NSString *)tzName;
// + (nullable instancetype)timeZoneWithName:(NSString *)tzName data:(nullable NSData *)aData;

// - (nullable instancetype)initWithName:(NSString *)tzName;
// - (nullable instancetype)initWithName:(NSString *)tzName data:(nullable NSData *)aData;




// + (instancetype)timeZoneForSecondsFromGMT:(NSInteger)seconds;

// + (nullable instancetype)timeZoneWithAbbreviation:(NSString *)abbreviation;

/* @end */


extern "C" NSNotificationName const NSSystemTimeZoneDidChangeNotification __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
#pragma clang assume_nonnull end







#pragma clang assume_nonnull begin


#ifndef _REWRITER_typedef_NSTimer
#define _REWRITER_typedef_NSTimer
typedef struct objc_object NSTimer;
typedef struct {} _objc_exc_NSTimer;
#endif

struct NSTimer_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// + (NSTimer *)timerWithTimeInterval:(NSTimeInterval)ti invocation:(NSInvocation *)invocation repeats:(BOOL)yesOrNo;
// + (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti invocation:(NSInvocation *)invocation repeats:(BOOL)yesOrNo;

// + (NSTimer *)timerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(nullable id)userInfo repeats:(BOOL)yesOrNo;
// + (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(nullable id)userInfo repeats:(BOOL)yesOrNo;






// + (NSTimer *)timerWithTimeInterval:(NSTimeInterval)interval repeats:(BOOL)repeats block:(void (^)(NSTimer *timer))block __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));





// + (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)interval repeats:(BOOL)repeats block:(void (^)(NSTimer *timer))block __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));






// - (instancetype)initWithFireDate:(NSDate *)date interval:(NSTimeInterval)interval repeats:(BOOL)repeats block:(void (^)(NSTimer *timer))block __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// - (instancetype)initWithFireDate:(NSDate *)date interval:(NSTimeInterval)ti target:(id)t selector:(SEL)s userInfo:(nullable id)ui repeats:(BOOL)rep __attribute__((objc_designated_initializer));

// - (void)fire;

// @property (copy) NSDate *fireDate;
// @property (readonly) NSTimeInterval timeInterval;



// @property NSTimeInterval tolerance __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)invalidate;
// @property (readonly, getter=isValid) BOOL valid;

// @property (nullable, readonly, retain) id userInfo;

/* @end */

#pragma clang assume_nonnull end


// @class NSURLAuthenticationChallenge;
#ifndef _REWRITER_typedef_NSURLAuthenticationChallenge
#define _REWRITER_typedef_NSURLAuthenticationChallenge
typedef struct objc_object NSURLAuthenticationChallenge;
typedef struct {} _objc_exc_NSURLAuthenticationChallenge;
#endif

// @class NSURLCredential;
#ifndef _REWRITER_typedef_NSURLCredential
#define _REWRITER_typedef_NSURLCredential
typedef struct objc_object NSURLCredential;
typedef struct {} _objc_exc_NSURLCredential;
#endif

// @class NSURLProtectionSpace;
#ifndef _REWRITER_typedef_NSURLProtectionSpace
#define _REWRITER_typedef_NSURLProtectionSpace
typedef struct objc_object NSURLProtectionSpace;
typedef struct {} _objc_exc_NSURLProtectionSpace;
#endif

// @class NSURLResponse;
#ifndef _REWRITER_typedef_NSURLResponse
#define _REWRITER_typedef_NSURLResponse
typedef struct objc_object NSURLResponse;
typedef struct {} _objc_exc_NSURLResponse;
#endif

// @class NSError;
#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif


#pragma clang assume_nonnull begin
// @protocol NSURLAuthenticationChallengeSender <NSObject>




// - (void)useCredential:(NSURLCredential *)credential forAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge;




// - (void)continueWithoutCredentialForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge;




// - (void)cancelAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge;

/* @optional */



// - (void)performDefaultHandlingForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge;




// - (void)rejectProtectionSpaceAndContinueWithChallenge:(NSURLAuthenticationChallenge *)challenge;

/* @end */


// @class NSURLAuthenticationChallengeInternal;
#ifndef _REWRITER_typedef_NSURLAuthenticationChallengeInternal
#define _REWRITER_typedef_NSURLAuthenticationChallengeInternal
typedef struct objc_object NSURLAuthenticationChallengeInternal;
typedef struct {} _objc_exc_NSURLAuthenticationChallengeInternal;
#endif


#ifndef _REWRITER_typedef_NSURLAuthenticationChallenge
#define _REWRITER_typedef_NSURLAuthenticationChallenge
typedef struct objc_object NSURLAuthenticationChallenge;
typedef struct {} _objc_exc_NSURLAuthenticationChallenge;
#endif

struct NSURLAuthenticationChallenge_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURLAuthenticationChallengeInternal *_internal;
};

// - (instancetype)initWithProtectionSpace:(NSURLProtectionSpace *)space proposedCredential:(nullable NSURLCredential *)credential previousFailureCount:(NSInteger)previousFailureCount failureResponse:(nullable NSURLResponse *)response error:(nullable NSError *)error sender:(id<NSURLAuthenticationChallengeSender>)sender;
// - (instancetype)initWithAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge sender:(id<NSURLAuthenticationChallengeSender>)sender;





// @property (readonly, copy) NSURLProtectionSpace *protectionSpace;
// @property (nullable, readonly, copy) NSURLCredential *proposedCredential;





// @property (readonly) NSInteger previousFailureCount;
// @property (nullable, readonly, copy) NSURLResponse *failureResponse;
// @property (nullable, readonly, copy) NSError *error;






// @property (nullable, readonly, retain) id<NSURLAuthenticationChallengeSender> sender;

/* @end */

#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin
typedef NSUInteger NSURLCacheStoragePolicy; enum
{
    NSURLCacheStorageAllowed,
    NSURLCacheStorageAllowedInMemoryOnly,
    NSURLCacheStorageNotAllowed,
};


// @class NSCachedURLResponseInternal;
#ifndef _REWRITER_typedef_NSCachedURLResponseInternal
#define _REWRITER_typedef_NSCachedURLResponseInternal
typedef struct objc_object NSCachedURLResponseInternal;
typedef struct {} _objc_exc_NSCachedURLResponseInternal;
#endif

// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

// @class NSURLRequest;
#ifndef _REWRITER_typedef_NSURLRequest
#define _REWRITER_typedef_NSURLRequest
typedef struct objc_object NSURLRequest;
typedef struct {} _objc_exc_NSURLRequest;
#endif

// @class NSURLResponse;
#ifndef _REWRITER_typedef_NSURLResponse
#define _REWRITER_typedef_NSURLResponse
typedef struct objc_object NSURLResponse;
typedef struct {} _objc_exc_NSURLResponse;
#endif

// @class NSDate;
#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

// @class NSURLSessionDataTask;
#ifndef _REWRITER_typedef_NSURLSessionDataTask
#define _REWRITER_typedef_NSURLSessionDataTask
typedef struct objc_object NSURLSessionDataTask;
typedef struct {} _objc_exc_NSURLSessionDataTask;
#endif


#ifndef _REWRITER_typedef_NSCachedURLResponse
#define _REWRITER_typedef_NSCachedURLResponse
typedef struct objc_object NSCachedURLResponse;
typedef struct {} _objc_exc_NSCachedURLResponse;
#endif

struct NSCachedURLResponse_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSCachedURLResponseInternal *_internal;
};

// - (instancetype)initWithResponse:(NSURLResponse *)response data:(NSData *)data;
// - (instancetype)initWithResponse:(NSURLResponse *)response data:(NSData *)data userInfo:(nullable NSDictionary *)userInfo storagePolicy:(NSURLCacheStoragePolicy)storagePolicy;





// @property (readonly, copy) NSURLResponse *response;





// @property (readonly, copy) NSData *data;





// @property (nullable, readonly, copy) NSDictionary *userInfo;





// @property (readonly) NSURLCacheStoragePolicy storagePolicy;

/* @end */



// @class NSURLRequest;
#ifndef _REWRITER_typedef_NSURLRequest
#define _REWRITER_typedef_NSURLRequest
typedef struct objc_object NSURLRequest;
typedef struct {} _objc_exc_NSURLRequest;
#endif

// @class NSURLCacheInternal;
#ifndef _REWRITER_typedef_NSURLCacheInternal
#define _REWRITER_typedef_NSURLCacheInternal
typedef struct objc_object NSURLCacheInternal;
typedef struct {} _objc_exc_NSURLCacheInternal;
#endif



#ifndef _REWRITER_typedef_NSURLCache
#define _REWRITER_typedef_NSURLCache
typedef struct objc_object NSURLCache;
typedef struct {} _objc_exc_NSURLCache;
#endif

struct NSURLCache_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURLCacheInternal *_internal;
};

@property (class, strong) NSURLCache *sharedURLCache;
// - (instancetype)initWithMemoryCapacity:(NSUInteger)memoryCapacity diskCapacity:(NSUInteger)diskCapacity diskPath:(nullable NSString *)path __attribute__((availability(macos,introduced=10.2,deprecated=100000,replacement="initWithMemoryCapacity:diskCapacity:directoryURL:"))) __attribute__((availability(ios,introduced=2.0,deprecated=100000,replacement="initWithMemoryCapacity:diskCapacity:directoryURL:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="initWithMemoryCapacity:diskCapacity:directoryURL:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="initWithMemoryCapacity:diskCapacity:directoryURL:"))) __attribute__((availability(macCatalyst,unavailable)));
// - (instancetype)initWithMemoryCapacity:(NSUInteger)memoryCapacity diskCapacity:(NSUInteger)diskCapacity directoryURL:(nullable NSURL *)directoryURL __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// - (nullable NSCachedURLResponse *)cachedResponseForRequest:(NSURLRequest *)request;
// - (void)storeCachedResponse:(NSCachedURLResponse *)cachedResponse forRequest:(NSURLRequest *)request;
// - (void)removeCachedResponseForRequest:(NSURLRequest *)request;






// - (void)removeAllCachedResponses;





// - (void)removeCachedResponsesSinceDate:(NSDate *)date __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// @property NSUInteger memoryCapacity;





// @property NSUInteger diskCapacity;
// @property (readonly) NSUInteger currentMemoryUsage;
// @property (readonly) NSUInteger currentDiskUsage;

/* @end */


// @interface NSURLCache (NSURLSessionTaskAdditions)
// - (void)storeCachedResponse:(NSCachedURLResponse *)cachedResponse forDataTask:(NSURLSessionDataTask *)dataTask __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)getCachedResponseForDataTask:(NSURLSessionDataTask *)dataTask completionHandler:(void (^) (NSCachedURLResponse * _Nullable cachedResponse))completionHandler __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)removeCachedResponseForDataTask:(NSURLSessionDataTask *)dataTask __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
/* @end */

#pragma clang assume_nonnull end
// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

// @class NSURL;
#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

// @class NSCachedURLResponse;
#ifndef _REWRITER_typedef_NSCachedURLResponse
#define _REWRITER_typedef_NSCachedURLResponse
typedef struct objc_object NSCachedURLResponse;
typedef struct {} _objc_exc_NSCachedURLResponse;
#endif

// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

// @class NSError;
#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

// @class NSURLAuthenticationChallenge;
#ifndef _REWRITER_typedef_NSURLAuthenticationChallenge
#define _REWRITER_typedef_NSURLAuthenticationChallenge
typedef struct objc_object NSURLAuthenticationChallenge;
typedef struct {} _objc_exc_NSURLAuthenticationChallenge;
#endif

// @class NSURLConnectionInternal;
#ifndef _REWRITER_typedef_NSURLConnectionInternal
#define _REWRITER_typedef_NSURLConnectionInternal
typedef struct objc_object NSURLConnectionInternal;
typedef struct {} _objc_exc_NSURLConnectionInternal;
#endif

// @class NSURLRequest;
#ifndef _REWRITER_typedef_NSURLRequest
#define _REWRITER_typedef_NSURLRequest
typedef struct objc_object NSURLRequest;
typedef struct {} _objc_exc_NSURLRequest;
#endif

// @class NSURLResponse;
#ifndef _REWRITER_typedef_NSURLResponse
#define _REWRITER_typedef_NSURLResponse
typedef struct objc_object NSURLResponse;
typedef struct {} _objc_exc_NSURLResponse;
#endif

// @class NSRunLoop;
#ifndef _REWRITER_typedef_NSRunLoop
#define _REWRITER_typedef_NSRunLoop
typedef struct objc_object NSRunLoop;
typedef struct {} _objc_exc_NSRunLoop;
#endif

// @class NSInputStream;
#ifndef _REWRITER_typedef_NSInputStream
#define _REWRITER_typedef_NSInputStream
typedef struct objc_object NSInputStream;
typedef struct {} _objc_exc_NSInputStream;
#endif

// @class NSURLProtectionSpace;
#ifndef _REWRITER_typedef_NSURLProtectionSpace
#define _REWRITER_typedef_NSURLProtectionSpace
typedef struct objc_object NSURLProtectionSpace;
typedef struct {} _objc_exc_NSURLProtectionSpace;
#endif

// @class NSOperationQueue;
#ifndef _REWRITER_typedef_NSOperationQueue
#define _REWRITER_typedef_NSOperationQueue
typedef struct objc_object NSOperationQueue;
typedef struct {} _objc_exc_NSOperationQueue;
#endif


// @protocol NSURLConnectionDelegate;

#pragma clang assume_nonnull begin

#ifndef _REWRITER_typedef_NSURLConnection
#define _REWRITER_typedef_NSURLConnection
typedef struct objc_object NSURLConnection;
typedef struct {} _objc_exc_NSURLConnection;
#endif

struct NSURLConnection_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURLConnectionInternal *_internal;
};



// - (nullable instancetype)initWithRequest:(NSURLRequest *)request delegate:(nullable id)delegate startImmediately:(BOOL)startImmediately __attribute__((availability(macos,introduced=10.5,deprecated=10.11,message="Use NSURLSession (see NSURLSession.h)"))) __attribute__((availability(ios,introduced=2.0,deprecated=9.0,message="Use NSURLSession (see NSURLSession.h)"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSURLSession (see NSURLSession.h)"))) __attribute__((availability(watchos,unavailable)));

// - (nullable instancetype)initWithRequest:(NSURLRequest *)request delegate:(nullable id)delegate __attribute__((availability(macos,introduced=10.3,deprecated=10.11,message="Use NSURLSession (see NSURLSession.h)"))) __attribute__((availability(ios,introduced=2.0,deprecated=9.0,message="Use NSURLSession (see NSURLSession.h)"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSURLSession (see NSURLSession.h)"))) __attribute__((availability(watchos,unavailable)));
// + (nullable NSURLConnection*)connectionWithRequest:(NSURLRequest *)request delegate:(nullable id)delegate __attribute__((availability(macos,introduced=10.3,deprecated=10.11,message="Use NSURLSession (see NSURLSession.h)"))) __attribute__((availability(ios,introduced=2.0,deprecated=9.0,message="Use NSURLSession (see NSURLSession.h)"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSURLSession (see NSURLSession.h)"))) __attribute__((availability(watchos,unavailable)));

// @property (readonly, copy) NSURLRequest *originalRequest __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSURLRequest *currentRequest __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)start __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)cancel;

// - (void)scheduleInRunLoop:(NSRunLoop *)aRunLoop forMode:(NSRunLoopMode)mode __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)unscheduleFromRunLoop:(NSRunLoop *)aRunLoop forMode:(NSRunLoopMode)mode __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)setDelegateQueue:(nullable NSOperationQueue*) queue __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (BOOL)canHandleRequest:(NSURLRequest *)request;

/* @end */

// @protocol NSURLConnectionDelegate <NSObject>
/* @optional */
// - (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error;
// - (BOOL)connectionShouldUseCredentialStorage:(NSURLConnection *)connection;
// - (void)connection:(NSURLConnection *)connection willSendRequestForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge;
// - (BOOL)connection:(NSURLConnection *)connection canAuthenticateAgainstProtectionSpace:(NSURLProtectionSpace *)protectionSpace __attribute__((availability(macos,introduced=10.6,deprecated=10.10,message="Use -connection:willSendRequestForAuthenticationChallenge: instead."))) __attribute__((availability(ios,introduced=3.0,deprecated=8.0,message="Use -connection:willSendRequestForAuthenticationChallenge: instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -connection:willSendRequestForAuthenticationChallenge: instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -connection:willSendRequestForAuthenticationChallenge: instead.")));
// - (void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge __attribute__((availability(macos,introduced=10.2,deprecated=10.10,message="Use -connection:willSendRequestForAuthenticationChallenge: instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use -connection:willSendRequestForAuthenticationChallenge: instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -connection:willSendRequestForAuthenticationChallenge: instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -connection:willSendRequestForAuthenticationChallenge: instead.")));
// - (void)connection:(NSURLConnection *)connection didCancelAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge __attribute__((availability(macos,introduced=10.2,deprecated=10.10,message="Use -connection:willSendRequestForAuthenticationChallenge: instead."))) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message="Use -connection:willSendRequestForAuthenticationChallenge: instead."))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -connection:willSendRequestForAuthenticationChallenge: instead."))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -connection:willSendRequestForAuthenticationChallenge: instead.")));
/* @end */

// @protocol NSURLConnectionDataDelegate <NSURLConnectionDelegate>
/* @optional */
// - (nullable NSURLRequest *)connection:(NSURLConnection *)connection willSendRequest:(NSURLRequest *)request redirectResponse:(nullable NSURLResponse *)response;
// - (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response;

// - (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data;

// - (nullable NSInputStream *)connection:(NSURLConnection *)connection needNewBodyStream:(NSURLRequest *)request;
#if 0
- (void)connection:(NSURLConnection *)connection didSendBodyData:(NSInteger)bytesWritten
                                                 totalBytesWritten:(NSInteger)totalBytesWritten
                                         totalBytesExpectedToWrite:(NSInteger)totalBytesExpectedToWrite;
#endif


// - (nullable NSCachedURLResponse *)connection:(NSURLConnection *)connection willCacheResponse:(NSCachedURLResponse *)cachedResponse;

// - (void)connectionDidFinishLoading:(NSURLConnection *)connection;
/* @end */

// @protocol NSURLConnectionDownloadDelegate <NSURLConnectionDelegate>
/* @optional */
// - (void)connection:(NSURLConnection *)connection didWriteData:(long long)bytesWritten totalBytesWritten:(long long)totalBytesWritten expectedTotalBytes:(long long) expectedTotalBytes;
// - (void)connectionDidResumeDownloading:(NSURLConnection *)connection totalBytesWritten:(long long)totalBytesWritten expectedTotalBytes:(long long) expectedTotalBytes;

/* @required */
// - (void)connectionDidFinishDownloading:(NSURLConnection *)connection destinationURL:(NSURL *) destinationURL;
/* @end */

// @interface NSURLConnection (NSURLConnectionSynchronousLoading)
// + (nullable NSData *)sendSynchronousRequest:(NSURLRequest *)request returningResponse:(NSURLResponse * _Nullable * _Nullable)response error:(NSError **)error __attribute__((availability(macos,introduced=10.3,deprecated=10.11,message="Use [NSURLSession dataTaskWithRequest:completionHandler:] (see NSURLSession.h"))) __attribute__((availability(ios,introduced=2.0,deprecated=9.0,message="Use [NSURLSession dataTaskWithRequest:completionHandler:] (see NSURLSession.h"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use [NSURLSession dataTaskWithRequest:completionHandler:] (see NSURLSession.h"))) __attribute__((availability(watchos,unavailable)));

/* @end */

// @interface NSURLConnection (NSURLConnectionQueuedLoading)
#if 0
+ (void)sendAsynchronousRequest:(NSURLRequest*) request
                          queue:(NSOperationQueue*) queue
              completionHandler:(void (^)(NSURLResponse* _Nullable response, NSData* _Nullable data, NSError* _Nullable connectionError)) handler __attribute__((availability(macos,introduced=10.7,deprecated=10.11,message="Use [NSURLSession dataTaskWithRequest:completionHandler:] (see NSURLSession.h"))) __attribute__((availability(ios,introduced=5.0,deprecated=9.0,message="Use [NSURLSession dataTaskWithRequest:completionHandler:] (see NSURLSession.h"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use [NSURLSession dataTaskWithRequest:completionHandler:] (see NSURLSession.h"))) __attribute__((availability(watchos,unavailable)));
#endif


/* @end */

#pragma clang assume_nonnull end








extern "C" {

#pragma clang assume_nonnull begin
typedef struct __attribute__((objc_bridge(id))) __SecCertificate *SecCertificateRef;
typedef struct __attribute__((objc_bridge(id))) __SecIdentity *SecIdentityRef;
typedef struct __attribute__((objc_bridge(id))) __SecKey *SecKeyRef;
typedef struct __attribute__((objc_bridge(id))) __SecPolicy *SecPolicyRef;






typedef struct __attribute__((objc_bridge(id))) __SecAccessControl *SecAccessControlRef;





typedef struct __attribute__((objc_bridge(id))) __SecKeychain *SecKeychainRef
    __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(watchos,unavailable)));





typedef struct __attribute__((objc_bridge(id))) __SecKeychainItem *SecKeychainItemRef __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));





typedef struct __attribute__((objc_bridge(id))) __SecKeychainSearch *SecKeychainSearchRef __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));





typedef OSType SecKeychainAttrType __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));
struct __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable))) SecKeychainAttribute
{
    SecKeychainAttrType tag;
    UInt32 length;
    void * _Nullable data;
};
typedef struct SecKeychainAttribute SecKeychainAttribute __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));





typedef SecKeychainAttribute *SecKeychainAttributePtr __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));







struct __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable))) SecKeychainAttributeList
{
    UInt32 count;
    SecKeychainAttribute * _Nullable attr;
};
typedef struct SecKeychainAttributeList SecKeychainAttributeList __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));





typedef UInt32 SecKeychainStatus __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));





typedef struct __attribute__((objc_bridge(id))) __SecTrustedApplication *SecTrustedApplicationRef __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));





typedef struct __attribute__((objc_bridge(id))) __SecAccess *SecAccessRef __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));
typedef struct __attribute__((objc_bridge(id))) __SecACL *SecACLRef __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));





typedef struct __attribute__((objc_bridge(id))) __SecPassword *SecPasswordRef __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));
struct __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable))) SecKeychainAttributeInfo
{
    UInt32 count;
    UInt32 *tag;
    UInt32 * _Nullable format;
};
typedef struct SecKeychainAttributeInfo SecKeychainAttributeInfo __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));
_Nullable
CFStringRef SecCopyErrorMessageString(OSStatus status, void * _Nullable reserved)
    __attribute__((availability(ios,introduced=11.3)));
enum
{
    errSecSuccess = 0,
    errSecUnimplemented = -4,
    errSecDiskFull = -34,
    errSecDskFull __attribute__((deprecated("use errSecDiskFull"))) = errSecDiskFull,
    errSecIO = -36,
    errSecOpWr = -49,
    errSecParam = -50,
    errSecWrPerm = -61,
    errSecAllocate = -108,
    errSecUserCanceled = -128,
    errSecBadReq = -909,

    errSecInternalComponent = -2070,
    errSecCoreFoundationUnknown = -4960,

    errSecMissingEntitlement = -34018,

    errSecNotAvailable = -25291,
    errSecReadOnly = -25292,
    errSecAuthFailed = -25293,
    errSecNoSuchKeychain = -25294,
    errSecInvalidKeychain = -25295,
    errSecDuplicateKeychain = -25296,
    errSecDuplicateCallback = -25297,
    errSecInvalidCallback = -25298,
    errSecDuplicateItem = -25299,
    errSecItemNotFound = -25300,
    errSecBufferTooSmall = -25301,
    errSecDataTooLarge = -25302,
    errSecNoSuchAttr = -25303,
    errSecInvalidItemRef = -25304,
    errSecInvalidSearchRef = -25305,
    errSecNoSuchClass = -25306,
    errSecNoDefaultKeychain = -25307,
    errSecInteractionNotAllowed = -25308,
    errSecReadOnlyAttr = -25309,
    errSecWrongSecVersion = -25310,
    errSecKeySizeNotAllowed = -25311,
    errSecNoStorageModule = -25312,
    errSecNoCertificateModule = -25313,
    errSecNoPolicyModule = -25314,
    errSecInteractionRequired = -25315,
    errSecDataNotAvailable = -25316,
    errSecDataNotModifiable = -25317,
    errSecCreateChainFailed = -25318,
    errSecInvalidPrefsDomain = -25319,
    errSecInDarkWake = -25320,

    errSecACLNotSimple = -25240,
    errSecPolicyNotFound = -25241,
    errSecInvalidTrustSetting = -25242,
    errSecNoAccessForItem = -25243,
    errSecInvalidOwnerEdit = -25244,
    errSecTrustNotAvailable = -25245,
    errSecUnsupportedFormat = -25256,
    errSecUnknownFormat = -25257,
    errSecKeyIsSensitive = -25258,
    errSecMultiplePrivKeys = -25259,
    errSecPassphraseRequired = -25260,
    errSecInvalidPasswordRef = -25261,
    errSecInvalidTrustSettings = -25262,
    errSecNoTrustSettings = -25263,
    errSecPkcs12VerifyFailure = -25264,
    errSecNotSigner = -26267,

    errSecDecode = -26275,

    errSecServiceNotAvailable = -67585,
    errSecInsufficientClientID = -67586,
    errSecDeviceReset = -67587,
    errSecDeviceFailed = -67588,
    errSecAppleAddAppACLSubject = -67589,
    errSecApplePublicKeyIncomplete = -67590,
    errSecAppleSignatureMismatch = -67591,
    errSecAppleInvalidKeyStartDate = -67592,
    errSecAppleInvalidKeyEndDate = -67593,
    errSecConversionError = -67594,
    errSecAppleSSLv2Rollback = -67595,
    errSecQuotaExceeded = -67596,
    errSecFileTooBig = -67597,
    errSecInvalidDatabaseBlob = -67598,
    errSecInvalidKeyBlob = -67599,
    errSecIncompatibleDatabaseBlob = -67600,
    errSecIncompatibleKeyBlob = -67601,
    errSecHostNameMismatch = -67602,
    errSecUnknownCriticalExtensionFlag = -67603,
    errSecNoBasicConstraints = -67604,
    errSecNoBasicConstraintsCA = -67605,
    errSecInvalidAuthorityKeyID = -67606,
    errSecInvalidSubjectKeyID = -67607,
    errSecInvalidKeyUsageForPolicy = -67608,
    errSecInvalidExtendedKeyUsage = -67609,
    errSecInvalidIDLinkage = -67610,
    errSecPathLengthConstraintExceeded = -67611,
    errSecInvalidRoot = -67612,
    errSecCRLExpired = -67613,
    errSecCRLNotValidYet = -67614,
    errSecCRLNotFound = -67615,
    errSecCRLServerDown = -67616,
    errSecCRLBadURI = -67617,
    errSecUnknownCertExtension = -67618,
    errSecUnknownCRLExtension = -67619,
    errSecCRLNotTrusted = -67620,
    errSecCRLPolicyFailed = -67621,
    errSecIDPFailure = -67622,
    errSecSMIMEEmailAddressesNotFound = -67623,
    errSecSMIMEBadExtendedKeyUsage = -67624,
    errSecSMIMEBadKeyUsage = -67625,
    errSecSMIMEKeyUsageNotCritical = -67626,
    errSecSMIMENoEmailAddress = -67627,
    errSecSMIMESubjAltNameNotCritical = -67628,
    errSecSSLBadExtendedKeyUsage = -67629,
    errSecOCSPBadResponse = -67630,
    errSecOCSPBadRequest = -67631,
    errSecOCSPUnavailable = -67632,
    errSecOCSPStatusUnrecognized = -67633,
    errSecEndOfData = -67634,
    errSecIncompleteCertRevocationCheck = -67635,
    errSecNetworkFailure = -67636,
    errSecOCSPNotTrustedToAnchor = -67637,
    errSecRecordModified = -67638,
    errSecOCSPSignatureError = -67639,
    errSecOCSPNoSigner = -67640,
    errSecOCSPResponderMalformedReq = -67641,
    errSecOCSPResponderInternalError = -67642,
    errSecOCSPResponderTryLater = -67643,
    errSecOCSPResponderSignatureRequired = -67644,
    errSecOCSPResponderUnauthorized = -67645,
    errSecOCSPResponseNonceMismatch = -67646,
    errSecCodeSigningBadCertChainLength = -67647,
    errSecCodeSigningNoBasicConstraints = -67648,
    errSecCodeSigningBadPathLengthConstraint = -67649,
    errSecCodeSigningNoExtendedKeyUsage = -67650,
    errSecCodeSigningDevelopment = -67651,
    errSecResourceSignBadCertChainLength = -67652,
    errSecResourceSignBadExtKeyUsage = -67653,
    errSecTrustSettingDeny = -67654,
    errSecInvalidSubjectName = -67655,
    errSecUnknownQualifiedCertStatement = -67656,
    errSecMobileMeRequestQueued = -67657,
    errSecMobileMeRequestRedirected = -67658,
    errSecMobileMeServerError = -67659,
    errSecMobileMeServerNotAvailable = -67660,
    errSecMobileMeServerAlreadyExists = -67661,
    errSecMobileMeServerServiceErr = -67662,
    errSecMobileMeRequestAlreadyPending = -67663,
    errSecMobileMeNoRequestPending = -67664,
    errSecMobileMeCSRVerifyFailure = -67665,
    errSecMobileMeFailedConsistencyCheck = -67666,
    errSecNotInitialized = -67667,
    errSecInvalidHandleUsage = -67668,
    errSecPVCReferentNotFound = -67669,
    errSecFunctionIntegrityFail = -67670,
    errSecInternalError = -67671,
    errSecMemoryError = -67672,
    errSecInvalidData = -67673,
    errSecMDSError = -67674,
    errSecInvalidPointer = -67675,
    errSecSelfCheckFailed = -67676,
    errSecFunctionFailed = -67677,
    errSecModuleManifestVerifyFailed = -67678,
    errSecInvalidGUID = -67679,
    errSecInvalidHandle = -67680,
    errSecInvalidDBList = -67681,
    errSecInvalidPassthroughID = -67682,
    errSecInvalidNetworkAddress = -67683,
    errSecCRLAlreadySigned = -67684,
    errSecInvalidNumberOfFields = -67685,
    errSecVerificationFailure = -67686,
    errSecUnknownTag = -67687,
    errSecInvalidSignature = -67688,
    errSecInvalidName = -67689,
    errSecInvalidCertificateRef = -67690,
    errSecInvalidCertificateGroup = -67691,
    errSecTagNotFound = -67692,
    errSecInvalidQuery = -67693,
    errSecInvalidValue = -67694,
    errSecCallbackFailed = -67695,
    errSecACLDeleteFailed = -67696,
    errSecACLReplaceFailed = -67697,
    errSecACLAddFailed = -67698,
    errSecACLChangeFailed = -67699,
    errSecInvalidAccessCredentials = -67700,
    errSecInvalidRecord = -67701,
    errSecInvalidACL = -67702,
    errSecInvalidSampleValue = -67703,
    errSecIncompatibleVersion = -67704,
    errSecPrivilegeNotGranted = -67705,
    errSecInvalidScope = -67706,
    errSecPVCAlreadyConfigured = -67707,
    errSecInvalidPVC = -67708,
    errSecEMMLoadFailed = -67709,
    errSecEMMUnloadFailed = -67710,
    errSecAddinLoadFailed = -67711,
    errSecInvalidKeyRef = -67712,
    errSecInvalidKeyHierarchy = -67713,
    errSecAddinUnloadFailed = -67714,
    errSecLibraryReferenceNotFound = -67715,
    errSecInvalidAddinFunctionTable = -67716,
    errSecInvalidServiceMask = -67717,
    errSecModuleNotLoaded = -67718,
    errSecInvalidSubServiceID = -67719,
    errSecAttributeNotInContext = -67720,
    errSecModuleManagerInitializeFailed = -67721,
    errSecModuleManagerNotFound = -67722,
    errSecEventNotificationCallbackNotFound = -67723,
    errSecInputLengthError = -67724,
    errSecOutputLengthError = -67725,
    errSecPrivilegeNotSupported = -67726,
    errSecDeviceError = -67727,
    errSecAttachHandleBusy = -67728,
    errSecNotLoggedIn = -67729,
    errSecAlgorithmMismatch = -67730,
    errSecKeyUsageIncorrect = -67731,
    errSecKeyBlobTypeIncorrect = -67732,
    errSecKeyHeaderInconsistent = -67733,
    errSecUnsupportedKeyFormat = -67734,
    errSecUnsupportedKeySize = -67735,
    errSecInvalidKeyUsageMask = -67736,
    errSecUnsupportedKeyUsageMask = -67737,
    errSecInvalidKeyAttributeMask = -67738,
    errSecUnsupportedKeyAttributeMask = -67739,
    errSecInvalidKeyLabel = -67740,
    errSecUnsupportedKeyLabel = -67741,
    errSecInvalidKeyFormat = -67742,
    errSecUnsupportedVectorOfBuffers = -67743,
    errSecInvalidInputVector = -67744,
    errSecInvalidOutputVector = -67745,
    errSecInvalidContext = -67746,
    errSecInvalidAlgorithm = -67747,
    errSecInvalidAttributeKey = -67748,
    errSecMissingAttributeKey = -67749,
    errSecInvalidAttributeInitVector = -67750,
    errSecMissingAttributeInitVector = -67751,
    errSecInvalidAttributeSalt = -67752,
    errSecMissingAttributeSalt = -67753,
    errSecInvalidAttributePadding = -67754,
    errSecMissingAttributePadding = -67755,
    errSecInvalidAttributeRandom = -67756,
    errSecMissingAttributeRandom = -67757,
    errSecInvalidAttributeSeed = -67758,
    errSecMissingAttributeSeed = -67759,
    errSecInvalidAttributePassphrase = -67760,
    errSecMissingAttributePassphrase = -67761,
    errSecInvalidAttributeKeyLength = -67762,
    errSecMissingAttributeKeyLength = -67763,
    errSecInvalidAttributeBlockSize = -67764,
    errSecMissingAttributeBlockSize = -67765,
    errSecInvalidAttributeOutputSize = -67766,
    errSecMissingAttributeOutputSize = -67767,
    errSecInvalidAttributeRounds = -67768,
    errSecMissingAttributeRounds = -67769,
    errSecInvalidAlgorithmParms = -67770,
    errSecMissingAlgorithmParms = -67771,
    errSecInvalidAttributeLabel = -67772,
    errSecMissingAttributeLabel = -67773,
    errSecInvalidAttributeKeyType = -67774,
    errSecMissingAttributeKeyType = -67775,
    errSecInvalidAttributeMode = -67776,
    errSecMissingAttributeMode = -67777,
    errSecInvalidAttributeEffectiveBits = -67778,
    errSecMissingAttributeEffectiveBits = -67779,
    errSecInvalidAttributeStartDate = -67780,
    errSecMissingAttributeStartDate = -67781,
    errSecInvalidAttributeEndDate = -67782,
    errSecMissingAttributeEndDate = -67783,
    errSecInvalidAttributeVersion = -67784,
    errSecMissingAttributeVersion = -67785,
    errSecInvalidAttributePrime = -67786,
    errSecMissingAttributePrime = -67787,
    errSecInvalidAttributeBase = -67788,
    errSecMissingAttributeBase = -67789,
    errSecInvalidAttributeSubprime = -67790,
    errSecMissingAttributeSubprime = -67791,
    errSecInvalidAttributeIterationCount = -67792,
    errSecMissingAttributeIterationCount = -67793,
    errSecInvalidAttributeDLDBHandle = -67794,
    errSecMissingAttributeDLDBHandle = -67795,
    errSecInvalidAttributeAccessCredentials = -67796,
    errSecMissingAttributeAccessCredentials = -67797,
    errSecInvalidAttributePublicKeyFormat = -67798,
    errSecMissingAttributePublicKeyFormat = -67799,
    errSecInvalidAttributePrivateKeyFormat = -67800,
    errSecMissingAttributePrivateKeyFormat = -67801,
    errSecInvalidAttributeSymmetricKeyFormat = -67802,
    errSecMissingAttributeSymmetricKeyFormat = -67803,
    errSecInvalidAttributeWrappedKeyFormat = -67804,
    errSecMissingAttributeWrappedKeyFormat = -67805,
    errSecStagedOperationInProgress = -67806,
    errSecStagedOperationNotStarted = -67807,
    errSecVerifyFailed = -67808,
    errSecQuerySizeUnknown = -67809,
    errSecBlockSizeMismatch = -67810,
    errSecPublicKeyInconsistent = -67811,
    errSecDeviceVerifyFailed = -67812,
    errSecInvalidLoginName = -67813,
    errSecAlreadyLoggedIn = -67814,
    errSecInvalidDigestAlgorithm = -67815,
    errSecInvalidCRLGroup = -67816,
    errSecCertificateCannotOperate = -67817,
    errSecCertificateExpired = -67818,
    errSecCertificateNotValidYet = -67819,
    errSecCertificateRevoked = -67820,
    errSecCertificateSuspended = -67821,
    errSecInsufficientCredentials = -67822,
    errSecInvalidAction = -67823,
    errSecInvalidAuthority = -67824,
    errSecVerifyActionFailed = -67825,
    errSecInvalidCertAuthority = -67826,
    errSecInvaldCRLAuthority = -67827,
    errSecInvalidCRLEncoding = -67828,
    errSecInvalidCRLType = -67829,
    errSecInvalidCRL = -67830,
    errSecInvalidFormType = -67831,
    errSecInvalidID = -67832,
    errSecInvalidIdentifier = -67833,
    errSecInvalidIndex = -67834,
    errSecInvalidPolicyIdentifiers = -67835,
    errSecInvalidTimeString = -67836,
    errSecInvalidReason = -67837,
    errSecInvalidRequestInputs = -67838,
    errSecInvalidResponseVector = -67839,
    errSecInvalidStopOnPolicy = -67840,
    errSecInvalidTuple = -67841,
    errSecMultipleValuesUnsupported = -67842,
    errSecNotTrusted = -67843,
    errSecNoDefaultAuthority = -67844,
    errSecRejectedForm = -67845,
    errSecRequestLost = -67846,
    errSecRequestRejected = -67847,
    errSecUnsupportedAddressType = -67848,
    errSecUnsupportedService = -67849,
    errSecInvalidTupleGroup = -67850,
    errSecInvalidBaseACLs = -67851,
    errSecInvalidTupleCredendtials = -67852,
    errSecInvalidEncoding = -67853,
    errSecInvalidValidityPeriod = -67854,
    errSecInvalidRequestor = -67855,
    errSecRequestDescriptor = -67856,
    errSecInvalidBundleInfo = -67857,
    errSecInvalidCRLIndex = -67858,
    errSecNoFieldValues = -67859,
    errSecUnsupportedFieldFormat = -67860,
    errSecUnsupportedIndexInfo = -67861,
    errSecUnsupportedLocality = -67862,
    errSecUnsupportedNumAttributes = -67863,
    errSecUnsupportedNumIndexes = -67864,
    errSecUnsupportedNumRecordTypes = -67865,
    errSecFieldSpecifiedMultiple = -67866,
    errSecIncompatibleFieldFormat = -67867,
    errSecInvalidParsingModule = -67868,
    errSecDatabaseLocked = -67869,
    errSecDatastoreIsOpen = -67870,
    errSecMissingValue = -67871,
    errSecUnsupportedQueryLimits = -67872,
    errSecUnsupportedNumSelectionPreds = -67873,
    errSecUnsupportedOperator = -67874,
    errSecInvalidDBLocation = -67875,
    errSecInvalidAccessRequest = -67876,
    errSecInvalidIndexInfo = -67877,
    errSecInvalidNewOwner = -67878,
    errSecInvalidModifyMode = -67879,
    errSecMissingRequiredExtension = -67880,
    errSecExtendedKeyUsageNotCritical = -67881,
    errSecTimestampMissing = -67882,
    errSecTimestampInvalid = -67883,
    errSecTimestampNotTrusted = -67884,
    errSecTimestampServiceNotAvailable = -67885,
    errSecTimestampBadAlg = -67886,
    errSecTimestampBadRequest = -67887,
    errSecTimestampBadDataFormat = -67888,
    errSecTimestampTimeNotAvailable = -67889,
    errSecTimestampUnacceptedPolicy = -67890,
    errSecTimestampUnacceptedExtension = -67891,
    errSecTimestampAddInfoNotAvailable = -67892,
    errSecTimestampSystemFailure = -67893,
    errSecSigningTimeMissing = -67894,
    errSecTimestampRejection = -67895,
    errSecTimestampWaiting = -67896,
    errSecTimestampRevocationWarning = -67897,
    errSecTimestampRevocationNotification = -67898,
    errSecCertificatePolicyNotAllowed = -67899,
    errSecCertificateNameNotAllowed = -67900,
    errSecCertificateValidityPeriodTooLong = -67901,
};
enum {
    errSSLProtocol = -9800,
    errSSLNegotiation = -9801,
    errSSLFatalAlert = -9802,
    errSSLWouldBlock = -9803,
    errSSLSessionNotFound = -9804,
    errSSLClosedGraceful = -9805,
    errSSLClosedAbort = -9806,
    errSSLXCertChainInvalid = -9807,
    errSSLBadCert = -9808,
    errSSLCrypto = -9809,
    errSSLInternal = -9810,
    errSSLModuleAttach = -9811,
    errSSLUnknownRootCert = -9812,
    errSSLNoRootCert = -9813,
    errSSLCertExpired = -9814,
    errSSLCertNotYetValid = -9815,
    errSSLClosedNoNotify = -9816,
    errSSLBufferOverflow = -9817,
    errSSLBadCipherSuite = -9818,


    errSSLPeerUnexpectedMsg = -9819,
    errSSLPeerBadRecordMac = -9820,
    errSSLPeerDecryptionFail = -9821,
    errSSLPeerRecordOverflow = -9822,
    errSSLPeerDecompressFail = -9823,
    errSSLPeerHandshakeFail = -9824,
    errSSLPeerBadCert = -9825,
    errSSLPeerUnsupportedCert = -9826,
    errSSLPeerCertRevoked = -9827,
    errSSLPeerCertExpired = -9828,
    errSSLPeerCertUnknown = -9829,
    errSSLIllegalParam = -9830,
    errSSLPeerUnknownCA = -9831,
    errSSLPeerAccessDenied = -9832,
    errSSLPeerDecodeError = -9833,
    errSSLPeerDecryptError = -9834,
    errSSLPeerExportRestriction = -9835,
    errSSLPeerProtocolVersion = -9836,
    errSSLPeerInsufficientSecurity = -9837,
    errSSLPeerInternalError = -9838,
    errSSLPeerUserCancelled = -9839,
    errSSLPeerNoRenegotiation = -9840,


    errSSLPeerAuthCompleted = -9841,
    errSSLClientCertRequested = -9842,


    errSSLHostNameMismatch = -9843,
    errSSLConnectionRefused = -9844,
    errSSLDecryptionFail = -9845,
    errSSLBadRecordMac = -9846,
    errSSLRecordOverflow = -9847,
    errSSLBadConfiguration = -9848,
    errSSLUnexpectedRecord = -9849,
    errSSLWeakPeerEphemeralDHKey = -9850,


    errSSLClientHelloReceived = -9851,


    errSSLTransportReset = -9852,
    errSSLNetworkTimeout = -9853,


    errSSLConfigurationFailed = -9854,


    errSSLUnsupportedExtension = -9855,
    errSSLUnexpectedMessage = -9856,
    errSSLDecompressFail = -9857,
    errSSLHandshakeFail = -9858,
    errSSLDecodeError = -9859,
    errSSLInappropriateFallback = -9860,
    errSSLMissingExtension = -9861,
    errSSLBadCertificateStatusResponse = -9862,
    errSSLCertificateRequired = -9863,
    errSSLUnknownPSKIdentity = -9864,
    errSSLUnrecognizedName = -9865,


    errSSLATSViolation = -9880,
    errSSLATSMinimumVersionViolation = -9881,
    errSSLATSCiphersuiteViolation = -9882,
    errSSLATSMinimumKeySizeViolation = -9883,
    errSSLATSLeafCertificateHashAlgorithmViolation = -9884,
    errSSLATSCertificateHashAlgorithmViolation = -9885,
    errSSLATSCertificateTrustViolation = -9886,
};
#pragma clang assume_nonnull end



}
extern "C" {

#pragma clang assume_nonnull begin







CFTypeID SecCertificateGetTypeID(void)
    __attribute__((availability(ios,introduced=2.0)));
_Nullable
SecCertificateRef SecCertificateCreateWithData(CFAllocatorRef _Nullable allocator, CFDataRef data)
    __attribute__((availability(ios,introduced=2.0)));
CFDataRef SecCertificateCopyData(SecCertificateRef certificate)
    __attribute__((availability(ios,introduced=2.0)));
_Nullable
CFStringRef SecCertificateCopySubjectSummary(SecCertificateRef certificate)
    __attribute__((availability(ios,introduced=2.0)));
OSStatus SecCertificateCopyCommonName(SecCertificateRef certificate, CFStringRef * _Nonnull __attribute__((cf_returns_retained)) commonName)
    __attribute__((availability(ios,introduced=10.3)));
OSStatus SecCertificateCopyEmailAddresses(SecCertificateRef certificate, CFArrayRef * _Nonnull __attribute__((cf_returns_retained)) emailAddresses)
    __attribute__((availability(ios,introduced=10.3)));







_Nullable
CFDataRef SecCertificateCopyNormalizedIssuerSequence(SecCertificateRef certificate)
    __attribute__((availability(ios,introduced=10.3)));







_Nullable
CFDataRef SecCertificateCopyNormalizedSubjectSequence(SecCertificateRef certificate)
    __attribute__((availability(ios,introduced=10.3)));
_Nullable __attribute__((cf_returns_retained))
SecKeyRef SecCertificateCopyKey(SecCertificateRef certificate)
    __attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)));
_Nullable
SecKeyRef SecCertificateCopyPublicKey(SecCertificateRef certificate)
    __attribute__((availability(ios,introduced=10.3,deprecated=12.0,replacement="SecCertificateCopyKey"))) __attribute__((availability(macos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));
_Nullable
CFDataRef SecCertificateCopySerialNumberData(SecCertificateRef certificate, CFErrorRef *error)
    __attribute__((availability(ios,introduced=11.0)));
_Nullable
CFDataRef SecCertificateCopySerialNumber(SecCertificateRef certificate)
    __attribute__((availability(ios,introduced=10.3,deprecated=11.0,replacement="SecCertificateCopySerialNumberData"))) __attribute__((availability(macos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));
#pragma clang assume_nonnull end
}
extern "C" {

#pragma clang assume_nonnull begin







CFTypeID SecIdentityGetTypeID(void)
     __attribute__((availability(ios,introduced=2.0)));
OSStatus SecIdentityCopyCertificate(
            SecIdentityRef identityRef,
            SecCertificateRef * _Nonnull __attribute__((cf_returns_retained)) certificateRef)
     __attribute__((availability(ios,introduced=2.0)));
OSStatus SecIdentityCopyPrivateKey(
            SecIdentityRef identityRef,
            SecKeyRef * _Nonnull __attribute__((cf_returns_retained)) privateKeyRef)
     __attribute__((availability(ios,introduced=2.0)));
#pragma clang assume_nonnull end
}
extern "C" {

#pragma clang assume_nonnull begin







CFTypeID SecAccessControlGetTypeID(void)
__attribute__((availability(ios,introduced=8.0)));
typedef CFOptionFlags SecAccessControlCreateFlags; enum {
    kSecAccessControlUserPresence = 1u << 0,
    kSecAccessControlBiometryAny __attribute__((availability(macos,introduced=10.13.4))) __attribute__((availability(ios,introduced=11.3))) = 1u << 1,
    kSecAccessControlTouchIDAny __attribute__((availability(macos,introduced=10.12.1,deprecated=10.13.4,replacement="kSecAccessControlBiometryAny"))) __attribute__((availability(ios,introduced=9.0,deprecated=11.3,replacement="kSecAccessControlBiometryAny"))) = 1u << 1,
    kSecAccessControlBiometryCurrentSet __attribute__((availability(macos,introduced=10.13.4))) __attribute__((availability(ios,introduced=11.3))) = 1u << 3,
    kSecAccessControlTouchIDCurrentSet __attribute__((availability(macos,introduced=10.12.1,deprecated=10.13.4,replacement="kSecAccessControlBiometryCurrentSet"))) __attribute__((availability(ios,introduced=9.0,deprecated=11.3,replacement="kSecAccessControlBiometryCurrentSet"))) = 1u << 3,
    kSecAccessControlDevicePasscode __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) = 1u << 4,
    kSecAccessControlWatch __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=NA))) __attribute__((availability(macCatalyst,introduced=13.0))) = 1u << 5,
    kSecAccessControlOr __attribute__((availability(macos,introduced=10.12.1))) __attribute__((availability(ios,introduced=9.0))) = 1u << 14,
    kSecAccessControlAnd __attribute__((availability(macos,introduced=10.12.1))) __attribute__((availability(ios,introduced=9.0))) = 1u << 15,
    kSecAccessControlPrivateKeyUsage __attribute__((availability(macos,introduced=10.12.1))) __attribute__((availability(ios,introduced=9.0))) = 1u << 30,
    kSecAccessControlApplicationPassword __attribute__((availability(macos,introduced=10.12.1))) __attribute__((availability(ios,introduced=9.0))) = 1u << 31,
} __attribute__((availability(ios,introduced=8.0)));
_Nullable
SecAccessControlRef SecAccessControlCreateWithFlags(CFAllocatorRef _Nullable allocator, CFTypeRef protection,
                                                    SecAccessControlCreateFlags flags, CFErrorRef *error)
__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)));
#pragma clang assume_nonnull end



}
extern "C" {

#pragma clang assume_nonnull begin
extern const CFStringRef kSecClass
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecClassInternetPassword
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecClassGenericPassword
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecClassCertificate
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecClassKey
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecClassIdentity
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAccessible
    __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=4.0)));
extern const CFStringRef kSecAttrAccess
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrAccessControl
    __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)));
extern const CFStringRef kSecAttrAccessGroup
    __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=3.0)));
extern const CFStringRef kSecAttrSynchronizable
    __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecAttrSynchronizableAny
    __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecAttrCreationDate
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrModificationDate
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrDescription
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrComment
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrCreator
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrType
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrLabel
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrIsInvisible
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrIsNegative
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAccount
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrService
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrGeneric
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrSecurityDomain
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrServer
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocol
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAuthenticationType
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrPort
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrPath
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrSubject
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrIssuer
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrSerialNumber
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrSubjectKeyID
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrPublicKeyHash
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrCertificateType
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrCertificateEncoding
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrKeyClass
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrApplicationLabel
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrIsPermanent
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrIsSensitive
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrIsExtractable
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrApplicationTag
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrKeyType
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrPRF
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrSalt
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrRounds
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrKeySizeInBits
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrEffectiveKeySize
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrCanEncrypt
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrCanDecrypt
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrCanDerive
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrCanSign
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrCanVerify
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrCanWrap
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrCanUnwrap
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrSyncViewHint
    __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecAttrTokenID
    __attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecAttrPersistantReference
    __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const CFStringRef kSecAttrPersistentReference
    __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const CFStringRef kSecAttrAccessibleWhenUnlocked
    __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=4.0)));
extern const CFStringRef kSecAttrAccessibleAfterFirstUnlock
    __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=4.0)));
extern const CFStringRef kSecAttrAccessibleAlways
    __attribute__((availability(macos,introduced=10.9,deprecated=10.14,message="Use an accessibility level that provides some user protection, such as kSecAttrAccessibleAfterFirstUnlock"))) __attribute__((availability(ios,introduced=4.0,deprecated=12.0,message="Use an accessibility level that provides some user protection, such as kSecAttrAccessibleAfterFirstUnlock")));
extern const CFStringRef kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly
    __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)));
extern const CFStringRef kSecAttrAccessibleWhenUnlockedThisDeviceOnly
    __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=4.0)));
extern const CFStringRef kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly
    __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=4.0)));
extern const CFStringRef kSecAttrAccessibleAlwaysThisDeviceOnly
    __attribute__((availability(macos,introduced=10.9,deprecated=10.14,message="Use an accessibility level that provides some user protection, such as kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly"))) __attribute__((availability(ios,introduced=4.0,deprecated=12.0,message="Use an accessibility level that provides some user protection, such as kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly")));
extern const CFStringRef kSecAttrProtocolFTP
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolFTPAccount
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolHTTP
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolIRC
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolNNTP
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolPOP3
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolSMTP
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolSOCKS
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolIMAP
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolLDAP
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolAppleTalk
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolAFP
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolTelnet
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolSSH
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolFTPS
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolHTTPS
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolHTTPProxy
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolHTTPSProxy
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolFTPProxy
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolSMB
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolRTSP
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolRTSPProxy
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolDAAP
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolEPPC
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolIPP
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolNNTPS
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolLDAPS
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolTelnetS
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolIMAPS
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolIRCS
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrProtocolPOP3S
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAuthenticationTypeNTLM
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAuthenticationTypeMSN
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAuthenticationTypeDPA
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAuthenticationTypeRPA
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAuthenticationTypeHTTPBasic
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAuthenticationTypeHTTPDigest
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAuthenticationTypeHTMLForm
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrAuthenticationTypeDefault
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrKeyClassPublic
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrKeyClassPrivate
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrKeyClassSymmetric
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrKeyTypeRSA
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecAttrKeyTypeDSA
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrKeyTypeAES
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrKeyTypeDES
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrKeyType3DES
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrKeyTypeRC4
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrKeyTypeRC2
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrKeyTypeCAST
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrKeyTypeECDSA
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrKeyTypeEC
    __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=4.0)));
extern const CFStringRef kSecAttrKeyTypeECSECPrimeRandom
    __attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0)));
extern const CFStringRef kSecAttrPRFHmacAlgSHA1
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrPRFHmacAlgSHA224
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrPRFHmacAlgSHA256
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrPRFHmacAlgSHA384
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecAttrPRFHmacAlgSHA512
      __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecMatchPolicy
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchItemList
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchSearchList
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchIssuers
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchEmailAddressIfPresent
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchSubjectContains
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchSubjectStartsWith
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecMatchSubjectEndsWith
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecMatchSubjectWholeString
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecMatchCaseInsensitive
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchDiacriticInsensitive
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecMatchWidthInsensitive
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecMatchTrustedOnly
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchValidOnDate
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchLimit
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchLimitOne
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecMatchLimitAll
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecReturnData
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecReturnAttributes
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecReturnRef
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecReturnPersistentRef
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecValueData
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecValueRef
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecValuePersistentRef
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecUseItemList
    __attribute__((availability(macos,introduced=10.6)))
    __attribute__((availability(ios,introduced=2.0,deprecated=12.0,message="Not implemented on this platform"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,message="Not implemented on this platform"))) __attribute__((availability(watchos,introduced=1.0,deprecated=5.0,message="Not implemented on this platform")))
    __attribute__((availability(macCatalyst,unavailable)));
extern const CFStringRef kSecUseKeychain
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecUseOperationPrompt
    __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0)));
extern const CFStringRef kSecUseNoAuthenticationUI
    __attribute__((availability(macos,introduced=10.10,deprecated=10.11,message="Use kSecUseAuthenticationUI instead."))) __attribute__((availability(ios,introduced=8.0,deprecated=9.0,message="Use kSecUseAuthenticationUI instead.")));
extern const CFStringRef kSecUseAuthenticationUI
    __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecUseAuthenticationContext
    __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecUseDataProtectionKeychain
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0)));
extern const CFStringRef kSecUseAuthenticationUIAllow
    __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecUseAuthenticationUIFail
    __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecUseAuthenticationUISkip
    __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecAttrTokenIDSecureEnclave
    __attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecAttrAccessGroupToken
    __attribute__((availability(macos,introduced=10.12))) __attribute__((availability(ios,introduced=10.0)));
OSStatus SecItemCopyMatching(CFDictionaryRef query, CFTypeRef * _Nullable __attribute__((cf_returns_retained)) result)
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
OSStatus SecItemAdd(CFDictionaryRef attributes, CFTypeRef * _Nullable __attribute__((cf_returns_retained)) result)
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
OSStatus SecItemUpdate(CFDictionaryRef query, CFDictionaryRef attributesToUpdate)
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
OSStatus SecItemDelete(CFDictionaryRef query)
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
#pragma clang assume_nonnull end



}
extern "C" {

#pragma clang assume_nonnull begin
typedef uint32_t SecPadding; enum
{
    kSecPaddingNone = 0,
    kSecPaddingPKCS1 = 1,
    kSecPaddingOAEP = 2,




    kSecPaddingSigRaw = 0x4000,




    kSecPaddingPKCS1MD2 = 0x8000,




    kSecPaddingPKCS1MD5 = 0x8001,




    kSecPaddingPKCS1SHA1 = 0x8002,




    kSecPaddingPKCS1SHA224 = 0x8003,




    kSecPaddingPKCS1SHA256 = 0x8004,




    kSecPaddingPKCS1SHA384 = 0x8005,




    kSecPaddingPKCS1SHA512 = 0x8006,
};
extern const CFStringRef kSecPrivateKeyAttrs
    __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecPublicKeyAttrs
    __attribute__((availability(ios,introduced=2.0)));






CFTypeID SecKeyGetTypeID(void)
 __attribute__((availability(ios,introduced=2.0)));
OSStatus SecKeyGeneratePair(CFDictionaryRef parameters,
    SecKeyRef * _Nullable __attribute__((cf_returns_retained)) publicKey, SecKeyRef * _Nullable __attribute__((cf_returns_retained)) privateKey)
    __attribute__((availability(ios,introduced=2.0)));
OSStatus SecKeyRawSign(
                       SecKeyRef key,
                       SecPadding padding,
                       const uint8_t *dataToSign,
                       size_t dataToSignLen,
                       uint8_t *sig,
                       size_t *sigLen)
__attribute__((availability(ios,introduced=2.0)));
OSStatus SecKeyRawVerify(
                         SecKeyRef key,
                         SecPadding padding,
                         const uint8_t *signedData,
                         size_t signedDataLen,
                         const uint8_t *sig,
                         size_t sigLen)
__attribute__((availability(ios,introduced=2.0)));
OSStatus SecKeyEncrypt(
                       SecKeyRef key,
                       SecPadding padding,
                       const uint8_t *plainText,
                       size_t plainTextLen,
                       uint8_t *cipherText,
                       size_t *cipherTextLen)
__attribute__((availability(ios,introduced=2.0)));
OSStatus SecKeyDecrypt(
                       SecKeyRef key,
                       SecPadding padding,


                       const uint8_t *cipherText,
                       size_t cipherTextLen,
                       uint8_t *plainText,
                       size_t *plainTextLen)
__attribute__((availability(ios,introduced=2.0)));
SecKeyRef _Nullable SecKeyCreateRandomKey(CFDictionaryRef parameters, CFErrorRef *error)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
SecKeyRef _Nullable SecKeyCreateWithData(CFDataRef keyData, CFDictionaryRef attributes, CFErrorRef *error)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
size_t SecKeyGetBlockSize(SecKeyRef key)
    __attribute__((availability(ios,introduced=2.0)));
CFDataRef _Nullable SecKeyCopyExternalRepresentation(SecKeyRef key, CFErrorRef *error)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
CFDictionaryRef _Nullable SecKeyCopyAttributes(SecKeyRef key)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
SecKeyRef _Nullable SecKeyCopyPublicKey(SecKeyRef key)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
typedef CFStringRef SecKeyAlgorithm __attribute__((swift_wrapper(enum)))
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureRaw
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15Raw
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA1
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA224
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA256
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA384
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA512
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePKCS1v15SHA1
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePKCS1v15SHA224
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePKCS1v15SHA256
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePKCS1v15SHA384
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePKCS1v15SHA512
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPSSSHA1
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPSSSHA224
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPSSSHA256
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPSSSHA384
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPSSSHA512
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePSSSHA1
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePSSSHA224
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePSSSHA256
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePSSSHA384
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePSSSHA512
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureRFC4754
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA1
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA224
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA256
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA384
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA512
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureMessageX962SHA1
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureMessageX962SHA224
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureMessageX962SHA256
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureMessageX962SHA384
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureMessageX962SHA512
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionRaw
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionPKCS1
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA1
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA224
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA256
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA384
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA512
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA1AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA224AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA256AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA384AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA512AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardX963SHA1AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardX963SHA224AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardX963SHA256AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardX963SHA384AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardX963SHA512AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorX963SHA1AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorX963SHA224AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorX963SHA256AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorX963SHA384AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorX963SHA512AESGCM
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardVariableIVX963SHA224AESGCM
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardVariableIVX963SHA256AESGCM
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardVariableIVX963SHA384AESGCM
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardVariableIVX963SHA512AESGCM
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorVariableIVX963SHA224AESGCM
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorVariableIVX963SHA256AESGCM
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorVariableIVX963SHA384AESGCM
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorVariableIVX963SHA512AESGCM
__attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandard
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandardX963SHA1
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandardX963SHA224
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandardX963SHA256
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandardX963SHA384
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandardX963SHA512
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));

extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactor
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactorX963SHA1
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactorX963SHA224
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactorX963SHA256
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactorX963SHA384
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactorX963SHA512
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
CFDataRef _Nullable SecKeyCreateSignature(SecKeyRef key, SecKeyAlgorithm algorithm, CFDataRef dataToSign, CFErrorRef *error)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
Boolean SecKeyVerifySignature(SecKeyRef key, SecKeyAlgorithm algorithm, CFDataRef signedData, CFDataRef signature, CFErrorRef *error)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
CFDataRef _Nullable SecKeyCreateEncryptedData(SecKeyRef key, SecKeyAlgorithm algorithm, CFDataRef plaintext,
                                               CFErrorRef *error)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
CFDataRef _Nullable SecKeyCreateDecryptedData(SecKeyRef key, SecKeyAlgorithm algorithm, CFDataRef ciphertext,
                                               CFErrorRef *error)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));







typedef CFStringRef SecKeyKeyExchangeParameter __attribute__((swift_wrapper(enum)))
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyKeyExchangeParameter kSecKeyKeyExchangeParameterRequestedSize
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern const SecKeyKeyExchangeParameter kSecKeyKeyExchangeParameterSharedInfo
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
CFDataRef _Nullable SecKeyCopyKeyExchangeResult(SecKeyRef privateKey, SecKeyAlgorithm algorithm, SecKeyRef publicKey, CFDictionaryRef parameters, CFErrorRef *error)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
typedef CFIndex SecKeyOperationType; enum {
    kSecKeyOperationTypeSign = 0,
    kSecKeyOperationTypeVerify = 1,
    kSecKeyOperationTypeEncrypt = 2,
    kSecKeyOperationTypeDecrypt = 3,
    kSecKeyOperationTypeKeyExchange = 4,
} __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
Boolean SecKeyIsAlgorithmSupported(SecKeyRef key, SecKeyOperationType operation, SecKeyAlgorithm algorithm)
__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
#pragma clang assume_nonnull end



}
extern "C" {

#pragma clang assume_nonnull begin
extern const CFStringRef kSecPolicyAppleX509Basic
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyAppleSSL
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyAppleSMIME
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyAppleEAP
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyAppleIPsec
    __attribute__((availability(ios,introduced=7.0)));




extern const CFStringRef kSecPolicyApplePKINITClient
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));
extern const CFStringRef kSecPolicyApplePKINITServer
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(macCatalyst,unavailable)));
extern const CFStringRef kSecPolicyAppleCodeSigning
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyMacAppStoreReceipt
    __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecPolicyAppleIDValidation
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyAppleTimeStamping
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyAppleRevocation
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyApplePassbookSigning
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyApplePayIssuerEncryption
    __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecPolicyOid
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyName
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyClient
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyRevocationFlags
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPolicyTeamIdentifier
    __attribute__((availability(ios,introduced=7.0)));







CFTypeID SecPolicyGetTypeID(void)
    __attribute__((availability(ios,introduced=2.0)));
_Nullable
CFDictionaryRef SecPolicyCopyProperties(SecPolicyRef policyRef)
    __attribute__((availability(ios,introduced=7.0)));







SecPolicyRef SecPolicyCreateBasicX509(void)
    __attribute__((availability(ios,introduced=2.0)));
SecPolicyRef SecPolicyCreateSSL(Boolean server, CFStringRef _Nullable hostname)
    __attribute__((availability(ios,introduced=2.0)));
enum {
    kSecRevocationOCSPMethod = (1 << 0),
    kSecRevocationCRLMethod = (1 << 1),
    kSecRevocationPreferCRL = (1 << 2),
    kSecRevocationRequirePositiveResponse = (1 << 3),
    kSecRevocationNetworkAccessDisabled = (1 << 4),
    kSecRevocationUseAnyAvailableMethod = (kSecRevocationOCSPMethod |
                                           kSecRevocationCRLMethod)
};
_Nullable
SecPolicyRef SecPolicyCreateRevocation(CFOptionFlags revocationFlags)
    __attribute__((availability(ios,introduced=7.0)));
_Nullable
SecPolicyRef SecPolicyCreateWithProperties(CFTypeRef policyIdentifier,
                                           CFDictionaryRef _Nullable properties)
    __attribute__((availability(ios,introduced=7.0)));
#pragma clang assume_nonnull end
}
extern "C" {

#pragma clang assume_nonnull begin






typedef const struct __SecRandom * SecRandomRef;



extern const SecRandomRef kSecRandomDefault
    __attribute__((availability(ios,introduced=2.0)));
int SecRandomCopyBytes(SecRandomRef _Nullable rnd, size_t count, void *bytes)
    __attribute__ ((warn_unused_result))
    __attribute__((availability(ios,introduced=2.0)));
#pragma clang assume_nonnull end



}
extern "C" {

#pragma clang assume_nonnull begin
extern const CFStringRef kSecImportExportPassphrase
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecImportExportKeychain
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecImportExportAccess
    __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kSecImportItemLabel
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecImportItemKeyID
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecImportItemTrust
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecImportItemCertChain
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
extern const CFStringRef kSecImportItemIdentity
    __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
OSStatus SecPKCS12Import(CFDataRef pkcs12_data, CFDictionaryRef options, CFArrayRef * _Nonnull __attribute__((cf_returns_retained)) items)
     __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=2.0)));
#pragma clang assume_nonnull end



}
extern "C" {

#pragma clang assume_nonnull begin
typedef uint32_t SecTrustResultType; enum {
    kSecTrustResultInvalid __attribute__((availability(ios,introduced=2_0))) = 0,
    kSecTrustResultProceed __attribute__((availability(ios,introduced=2_0))) = 1,
    kSecTrustResultConfirm __attribute__((availability(ios,introduced=2_0,deprecated=7_0,message="" ))) = 2,
    kSecTrustResultDeny __attribute__((availability(ios,introduced=2_0))) = 3,
    kSecTrustResultUnspecified __attribute__((availability(ios,introduced=2_0))) = 4,
    kSecTrustResultRecoverableTrustFailure __attribute__((availability(ios,introduced=2_0))) = 5,
    kSecTrustResultFatalTrustFailure __attribute__((availability(ios,introduced=2_0))) = 6,
    kSecTrustResultOtherError __attribute__((availability(ios,introduced=2_0))) = 7
};





typedef struct __attribute__((objc_bridge(id))) __SecTrust *SecTrustRef;
extern const CFStringRef kSecPropertyTypeTitle
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecPropertyTypeError
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecTrustEvaluationDate
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecTrustExtendedValidation
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecTrustOrganizationName
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecTrustResultValue
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecTrustRevocationChecked
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecTrustRevocationValidUntilDate
    __attribute__((availability(ios,introduced=7.0)));
extern const CFStringRef kSecTrustCertificateTransparency
    __attribute__((availability(ios,introduced=9.0)));
extern const CFStringRef kSecTrustCertificateTransparencyWhiteList
    __attribute__((availability(ios,introduced=10.0,deprecated=11.0)));
typedef void (*SecTrustCallback)(SecTrustRef trustRef, SecTrustResultType trustResult);
CFTypeID SecTrustGetTypeID(void)
    __attribute__((availability(ios,introduced=2.0)));
OSStatus SecTrustCreateWithCertificates(CFTypeRef certificates,
    CFTypeRef _Nullable policies, SecTrustRef * _Nonnull __attribute__((cf_returns_retained)) trust)
    __attribute__((availability(ios,introduced=2.0)));
OSStatus SecTrustSetPolicies(SecTrustRef trust, CFTypeRef policies)
    __attribute__((availability(ios,introduced=6.0)));
OSStatus SecTrustCopyPolicies(SecTrustRef trust, CFArrayRef * _Nonnull __attribute__((cf_returns_retained)) policies)
    __attribute__((availability(ios,introduced=7.0)));
OSStatus SecTrustSetNetworkFetchAllowed(SecTrustRef trust,
    Boolean allowFetch)
    __attribute__((availability(ios,introduced=7.0)));
OSStatus SecTrustGetNetworkFetchAllowed(SecTrustRef trust,
    Boolean *allowFetch)
    __attribute__((availability(ios,introduced=7.0)));
OSStatus SecTrustSetAnchorCertificates(SecTrustRef trust,
    CFArrayRef _Nullable anchorCertificates)
    __attribute__((availability(ios,introduced=2.0)));
OSStatus SecTrustSetAnchorCertificatesOnly(SecTrustRef trust,
    Boolean anchorCertificatesOnly)
    __attribute__((availability(ios,introduced=2.0)));
OSStatus SecTrustCopyCustomAnchorCertificates(SecTrustRef trust,
    CFArrayRef * _Nonnull __attribute__((cf_returns_retained)) anchors)
    __attribute__((availability(ios,introduced=7.0)));
OSStatus SecTrustSetVerifyDate(SecTrustRef trust, CFDateRef verifyDate)
    __attribute__((availability(ios,introduced=2.0)));
CFAbsoluteTime SecTrustGetVerifyTime(SecTrustRef trust)
    __attribute__((availability(ios,introduced=2.0)));
OSStatus SecTrustEvaluate(SecTrustRef trust, SecTrustResultType *result)
    __attribute__((availability(macos,introduced=10.3,deprecated=10.15,replacement="SecTrustEvaluateWithError"))) __attribute__((availability(ios,introduced=2.0,deprecated=13.0,replacement="SecTrustEvaluateWithError"))) __attribute__((availability(watchos,introduced=1.0,deprecated=6.0,replacement="SecTrustEvaluateWithError"))) __attribute__((availability(tvos,introduced=2.0,deprecated=13.0,replacement="SecTrustEvaluateWithError")));
OSStatus SecTrustEvaluateAsync(SecTrustRef trust,
    dispatch_queue_t _Nullable queue, SecTrustCallback result)
    __attribute__((availability(macos,introduced=10.7,deprecated=10.15,replacement="SecTrustEvaluateAsyncWithError"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,replacement="SecTrustEvaluateAsyncWithError"))) __attribute__((availability(watchos,introduced=1.0,deprecated=6.0,replacement="SecTrustEvaluateAsyncWithError"))) __attribute__((availability(tvos,introduced=7.0,deprecated=13.0,replacement="SecTrustEvaluateAsyncWithError")));
__attribute__((warn_unused_result)) bool
SecTrustEvaluateWithError(SecTrustRef trust, CFErrorRef _Nullable * _Nullable __attribute__((cf_returns_retained)) error)
    __attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0)));
typedef void (*SecTrustWithErrorCallback)(SecTrustRef trustRef, bool result, CFErrorRef _Nullable error);
OSStatus SecTrustEvaluateAsyncWithError(SecTrustRef trust, dispatch_queue_t queue, SecTrustWithErrorCallback result)
    __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));
OSStatus SecTrustGetTrustResult(SecTrustRef trust,
    SecTrustResultType *result)
    __attribute__((availability(ios,introduced=7.0)));
_Nullable
SecKeyRef SecTrustCopyPublicKey(SecTrustRef trust)
    __attribute__((availability(ios,introduced=2.0)));
CFIndex SecTrustGetCertificateCount(SecTrustRef trust)
    __attribute__((availability(ios,introduced=2.0)));
_Nullable
SecCertificateRef SecTrustGetCertificateAtIndex(SecTrustRef trust, CFIndex ix)
    __attribute__((availability(ios,introduced=2.0)));
CFDataRef SecTrustCopyExceptions(SecTrustRef trust)
    __attribute__((availability(ios,introduced=4.0)));
bool SecTrustSetExceptions(SecTrustRef trust, CFDataRef _Nullable exceptions)
    __attribute__((availability(ios,introduced=4.0)));
_Nullable
CFArrayRef SecTrustCopyProperties(SecTrustRef trust)
    __attribute__((availability(ios,introduced=2.0)));
_Nullable
CFDictionaryRef SecTrustCopyResult(SecTrustRef trust)
    __attribute__((availability(ios,introduced=7.0)));
OSStatus SecTrustSetOCSPResponse(SecTrustRef trust, CFTypeRef _Nullable responseData)
    __attribute__((availability(ios,introduced=7.0)));
OSStatus SecTrustSetSignedCertificateTimestamps(SecTrustRef trust, CFArrayRef _Nullable sctArray)
    __attribute__((availability(macos,introduced=10.14.2))) __attribute__((availability(ios,introduced=12.1.1))) __attribute__((availability(tvos,introduced=12.1.1))) __attribute__((availability(watchos,introduced=5.1.1)));
#pragma clang assume_nonnull end
}
extern "C" {

#pragma clang assume_nonnull begin
extern const CFStringRef kSecSharedPassword __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(macos,unavailable))) __attribute__((availability(macCatalyst,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(watchos,unavailable)));
void SecAddSharedWebCredential(CFStringRef fqdn, CFStringRef account, CFStringRef _Nullable password,
    void (^completionHandler)(CFErrorRef _Nullable error)) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(macos,unavailable))) __attribute__((availability(macCatalyst,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(watchos,unavailable)));
void SecRequestSharedWebCredential(CFStringRef _Nullable fqdn, CFStringRef _Nullable account,
    void (^completionHandler)(CFArrayRef _Nullable credentials, CFErrorRef _Nullable error)) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(macos,unavailable))) __attribute__((availability(macCatalyst,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(watchos,unavailable)));






_Nullable
CFStringRef SecCreateSharedWebCredentialPassword(void) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(macos,unavailable))) __attribute__((availability(macCatalyst,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(watchos,unavailable)));
#pragma clang assume_nonnull end






}
extern "C" {
__attribute__((visibility("default"))) void *sec_retain(void *obj);
__attribute__((visibility("default"))) void sec_release(void *obj);
}
// @protocol OS_sec_object <NSObject> /* @end */
 typedef NSObject/*<OS_sec_object>*/ * __attribute__((objc_independent_class)) sec_object_t;
typedef uint16_t SSLCipherSuite;





enum
{ SSL_NULL_WITH_NULL_NULL = 0x0000,
    SSL_RSA_WITH_NULL_MD5 = 0x0001,
    SSL_RSA_WITH_NULL_SHA = 0x0002,
    SSL_RSA_EXPORT_WITH_RC4_40_MD5 = 0x0003,
    SSL_RSA_WITH_RC4_128_MD5 = 0x0004,
    SSL_RSA_WITH_RC4_128_SHA = 0x0005,
    SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5 = 0x0006,
    SSL_RSA_WITH_IDEA_CBC_SHA = 0x0007,
    SSL_RSA_EXPORT_WITH_DES40_CBC_SHA = 0x0008,
    SSL_RSA_WITH_DES_CBC_SHA = 0x0009,
    SSL_RSA_WITH_3DES_EDE_CBC_SHA = 0x000A,
    SSL_DH_DSS_EXPORT_WITH_DES40_CBC_SHA = 0x000B,
    SSL_DH_DSS_WITH_DES_CBC_SHA = 0x000C,
    SSL_DH_DSS_WITH_3DES_EDE_CBC_SHA = 0x000D,
    SSL_DH_RSA_EXPORT_WITH_DES40_CBC_SHA = 0x000E,
    SSL_DH_RSA_WITH_DES_CBC_SHA = 0x000F,
    SSL_DH_RSA_WITH_3DES_EDE_CBC_SHA = 0x0010,
    SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA = 0x0011,
    SSL_DHE_DSS_WITH_DES_CBC_SHA = 0x0012,
    SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA = 0x0013,
    SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA = 0x0014,
    SSL_DHE_RSA_WITH_DES_CBC_SHA = 0x0015,
    SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA = 0x0016,
    SSL_DH_anon_EXPORT_WITH_RC4_40_MD5 = 0x0017,
    SSL_DH_anon_WITH_RC4_128_MD5 = 0x0018,
    SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA = 0x0019,
    SSL_DH_anon_WITH_DES_CBC_SHA = 0x001A,
    SSL_DH_anon_WITH_3DES_EDE_CBC_SHA = 0x001B,
    SSL_FORTEZZA_DMS_WITH_NULL_SHA = 0x001C,
    SSL_FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA = 0x001D,


 TLS_RSA_WITH_AES_128_CBC_SHA = 0x002F,
 TLS_DH_DSS_WITH_AES_128_CBC_SHA = 0x0030,
 TLS_DH_RSA_WITH_AES_128_CBC_SHA = 0x0031,
 TLS_DHE_DSS_WITH_AES_128_CBC_SHA = 0x0032,
 TLS_DHE_RSA_WITH_AES_128_CBC_SHA = 0x0033,
 TLS_DH_anon_WITH_AES_128_CBC_SHA = 0x0034,
 TLS_RSA_WITH_AES_256_CBC_SHA = 0x0035,
 TLS_DH_DSS_WITH_AES_256_CBC_SHA = 0x0036,
 TLS_DH_RSA_WITH_AES_256_CBC_SHA = 0x0037,
 TLS_DHE_DSS_WITH_AES_256_CBC_SHA = 0x0038,
 TLS_DHE_RSA_WITH_AES_256_CBC_SHA = 0x0039,
 TLS_DH_anon_WITH_AES_256_CBC_SHA = 0x003A,


 TLS_ECDH_ECDSA_WITH_NULL_SHA = 0xC001,
 TLS_ECDH_ECDSA_WITH_RC4_128_SHA = 0xC002,
 TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA = 0xC003,
 TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA = 0xC004,
 TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA = 0xC005,
 TLS_ECDHE_ECDSA_WITH_NULL_SHA = 0xC006,
 TLS_ECDHE_ECDSA_WITH_RC4_128_SHA = 0xC007,
 TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA = 0xC008,
 TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA = 0xC009,
 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA = 0xC00A,
 TLS_ECDH_RSA_WITH_NULL_SHA = 0xC00B,
 TLS_ECDH_RSA_WITH_RC4_128_SHA = 0xC00C,
 TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA = 0xC00D,
 TLS_ECDH_RSA_WITH_AES_128_CBC_SHA = 0xC00E,
 TLS_ECDH_RSA_WITH_AES_256_CBC_SHA = 0xC00F,
 TLS_ECDHE_RSA_WITH_NULL_SHA = 0xC010,
 TLS_ECDHE_RSA_WITH_RC4_128_SHA = 0xC011,
 TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA = 0xC012,
 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA = 0xC013,
 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA = 0xC014,
 TLS_ECDH_anon_WITH_NULL_SHA = 0xC015,
 TLS_ECDH_anon_WITH_RC4_128_SHA = 0xC016,
 TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA = 0xC017,
 TLS_ECDH_anon_WITH_AES_128_CBC_SHA = 0xC018,
 TLS_ECDH_anon_WITH_AES_256_CBC_SHA = 0xC019,


    TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA = 0xC035,
    TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA = 0xC036,


    TLS_PSK_WITH_CHACHA20_POLY1305_SHA256 = 0xCCAB,




    TLS_NULL_WITH_NULL_NULL = 0x0000,


    TLS_RSA_WITH_NULL_MD5 = 0x0001,
    TLS_RSA_WITH_NULL_SHA = 0x0002,
    TLS_RSA_WITH_RC4_128_MD5 = 0x0004,
    TLS_RSA_WITH_RC4_128_SHA = 0x0005,
    TLS_RSA_WITH_3DES_EDE_CBC_SHA = 0x000A,
    TLS_RSA_WITH_NULL_SHA256 = 0x003B,
    TLS_RSA_WITH_AES_128_CBC_SHA256 = 0x003C,
    TLS_RSA_WITH_AES_256_CBC_SHA256 = 0x003D,


    TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA = 0x000D,
    TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA = 0x0010,
    TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA = 0x0013,
    TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA = 0x0016,
    TLS_DH_DSS_WITH_AES_128_CBC_SHA256 = 0x003E,
    TLS_DH_RSA_WITH_AES_128_CBC_SHA256 = 0x003F,
    TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 = 0x0040,
    TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 = 0x0067,
    TLS_DH_DSS_WITH_AES_256_CBC_SHA256 = 0x0068,
    TLS_DH_RSA_WITH_AES_256_CBC_SHA256 = 0x0069,
    TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 = 0x006A,
    TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 = 0x006B,


    TLS_DH_anon_WITH_RC4_128_MD5 = 0x0018,
    TLS_DH_anon_WITH_3DES_EDE_CBC_SHA = 0x001B,
    TLS_DH_anon_WITH_AES_128_CBC_SHA256 = 0x006C,
    TLS_DH_anon_WITH_AES_256_CBC_SHA256 = 0x006D,


    TLS_PSK_WITH_RC4_128_SHA = 0x008A,
    TLS_PSK_WITH_3DES_EDE_CBC_SHA = 0x008B,
    TLS_PSK_WITH_AES_128_CBC_SHA = 0x008C,
    TLS_PSK_WITH_AES_256_CBC_SHA = 0x008D,
    TLS_DHE_PSK_WITH_RC4_128_SHA = 0x008E,
    TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA = 0x008F,
    TLS_DHE_PSK_WITH_AES_128_CBC_SHA = 0x0090,
    TLS_DHE_PSK_WITH_AES_256_CBC_SHA = 0x0091,
    TLS_RSA_PSK_WITH_RC4_128_SHA = 0x0092,
    TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA = 0x0093,
    TLS_RSA_PSK_WITH_AES_128_CBC_SHA = 0x0094,
    TLS_RSA_PSK_WITH_AES_256_CBC_SHA = 0x0095,


    TLS_PSK_WITH_NULL_SHA = 0x002C,
    TLS_DHE_PSK_WITH_NULL_SHA = 0x002D,
    TLS_RSA_PSK_WITH_NULL_SHA = 0x002E,


    TLS_RSA_WITH_AES_128_GCM_SHA256 = 0x009C,
    TLS_RSA_WITH_AES_256_GCM_SHA384 = 0x009D,
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 = 0x009E,
    TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 = 0x009F,
    TLS_DH_RSA_WITH_AES_128_GCM_SHA256 = 0x00A0,
    TLS_DH_RSA_WITH_AES_256_GCM_SHA384 = 0x00A1,
    TLS_DHE_DSS_WITH_AES_128_GCM_SHA256 = 0x00A2,
    TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 = 0x00A3,
    TLS_DH_DSS_WITH_AES_128_GCM_SHA256 = 0x00A4,
    TLS_DH_DSS_WITH_AES_256_GCM_SHA384 = 0x00A5,
    TLS_DH_anon_WITH_AES_128_GCM_SHA256 = 0x00A6,
    TLS_DH_anon_WITH_AES_256_GCM_SHA384 = 0x00A7,


    TLS_PSK_WITH_AES_128_GCM_SHA256 = 0x00A8,
    TLS_PSK_WITH_AES_256_GCM_SHA384 = 0x00A9,
    TLS_DHE_PSK_WITH_AES_128_GCM_SHA256 = 0x00AA,
    TLS_DHE_PSK_WITH_AES_256_GCM_SHA384 = 0x00AB,
    TLS_RSA_PSK_WITH_AES_128_GCM_SHA256 = 0x00AC,
    TLS_RSA_PSK_WITH_AES_256_GCM_SHA384 = 0x00AD,

    TLS_PSK_WITH_AES_128_CBC_SHA256 = 0x00AE,
    TLS_PSK_WITH_AES_256_CBC_SHA384 = 0x00AF,
    TLS_PSK_WITH_NULL_SHA256 = 0x00B0,
    TLS_PSK_WITH_NULL_SHA384 = 0x00B1,

    TLS_DHE_PSK_WITH_AES_128_CBC_SHA256 = 0x00B2,
    TLS_DHE_PSK_WITH_AES_256_CBC_SHA384 = 0x00B3,
    TLS_DHE_PSK_WITH_NULL_SHA256 = 0x00B4,
    TLS_DHE_PSK_WITH_NULL_SHA384 = 0x00B5,

    TLS_RSA_PSK_WITH_AES_128_CBC_SHA256 = 0x00B6,
    TLS_RSA_PSK_WITH_AES_256_CBC_SHA384 = 0x00B7,
    TLS_RSA_PSK_WITH_NULL_SHA256 = 0x00B8,
    TLS_RSA_PSK_WITH_NULL_SHA384 = 0x00B9,




    TLS_AES_128_GCM_SHA256 = 0x1301,
    TLS_AES_256_GCM_SHA384 = 0x1302,
    TLS_CHACHA20_POLY1305_SHA256 = 0x1303,
    TLS_AES_128_CCM_SHA256 = 0x1304,
    TLS_AES_128_CCM_8_SHA256 = 0x1305,



    TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 = 0xC023,
    TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 = 0xC024,
    TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 = 0xC025,
    TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 = 0xC026,
    TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 = 0xC027,
    TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 = 0xC028,
    TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 = 0xC029,
    TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 = 0xC02A,



    TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 = 0xC02B,
    TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 = 0xC02C,
    TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 = 0xC02D,
    TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 = 0xC02E,
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 = 0xC02F,
    TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 = 0xC030,
    TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256 = 0xC031,
    TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384 = 0xC032,



    TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 = 0xCCA8,
    TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 = 0xCCA9,


    TLS_EMPTY_RENEGOTIATION_INFO_SCSV = 0x00FF,



    SSL_RSA_WITH_RC2_CBC_MD5 = 0xFF80,
    SSL_RSA_WITH_IDEA_CBC_MD5 = 0xFF81,
    SSL_RSA_WITH_DES_CBC_MD5 = 0xFF82,
    SSL_RSA_WITH_3DES_EDE_CBC_MD5 = 0xFF83,
    SSL_NO_SUCH_CIPHERSUITE = 0xFFFF
};





typedef int SSLCiphersuiteGroup; enum {
    kSSLCiphersuiteGroupDefault,
    kSSLCiphersuiteGroupCompatibility,
    kSSLCiphersuiteGroupLegacy,
    kSSLCiphersuiteGroupATS,
    kSSLCiphersuiteGroupATSCompatibility,
};
// @protocol OS_sec_trust <NSObject> /* @end */
 typedef NSObject/*<OS_sec_trust>*/ * __attribute__((objc_independent_class)) sec_trust_t;
// @protocol OS_sec_identity <NSObject> /* @end */
 typedef NSObject/*<OS_sec_identity>*/ * __attribute__((objc_independent_class)) sec_identity_t;
// @protocol OS_sec_certificate <NSObject> /* @end */
 typedef NSObject/*<OS_sec_certificate>*/ * __attribute__((objc_independent_class)) sec_certificate_t;
typedef uint16_t tls_protocol_version_t; enum {
    tls_protocol_version_TLSv10 __attribute__((swift_name("TLSv10"))) = 0x0301,
    tls_protocol_version_TLSv11 __attribute__((swift_name("TLSv11"))) = 0x0302,
    tls_protocol_version_TLSv12 __attribute__((swift_name("TLSv12"))) = 0x0303,
    tls_protocol_version_TLSv13 __attribute__((swift_name("TLSv13"))) = 0x0304,
    tls_protocol_version_DTLSv10 __attribute__((swift_name("DTLSv10"))) = 0xfeff,
    tls_protocol_version_DTLSv12 __attribute__((swift_name("DTLSv12"))) = 0xfefd,
};
typedef uint16_t tls_ciphersuite_t; enum {
    tls_ciphersuite_RSA_WITH_3DES_EDE_CBC_SHA __attribute__((swift_name("RSA_WITH_3DES_EDE_CBC_SHA"))) = 0x000A,
    tls_ciphersuite_RSA_WITH_AES_128_CBC_SHA __attribute__((swift_name("RSA_WITH_AES_128_CBC_SHA"))) = 0x002F,
    tls_ciphersuite_RSA_WITH_AES_256_CBC_SHA __attribute__((swift_name("RSA_WITH_AES_256_CBC_SHA"))) = 0x0035,
    tls_ciphersuite_RSA_WITH_AES_128_GCM_SHA256 __attribute__((swift_name("RSA_WITH_AES_128_GCM_SHA256"))) = 0x009C,
    tls_ciphersuite_RSA_WITH_AES_256_GCM_SHA384 __attribute__((swift_name("RSA_WITH_AES_256_GCM_SHA384"))) = 0x009D,
    tls_ciphersuite_RSA_WITH_AES_128_CBC_SHA256 __attribute__((swift_name("RSA_WITH_AES_128_CBC_SHA256"))) = 0x003C,
    tls_ciphersuite_RSA_WITH_AES_256_CBC_SHA256 __attribute__((swift_name("RSA_WITH_AES_256_CBC_SHA256"))) = 0x003D,
    tls_ciphersuite_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA __attribute__((swift_name("ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA"))) = 0xC008,
    tls_ciphersuite_ECDHE_ECDSA_WITH_AES_128_CBC_SHA __attribute__((swift_name("ECDHE_ECDSA_WITH_AES_128_CBC_SHA"))) = 0xC009,
    tls_ciphersuite_ECDHE_ECDSA_WITH_AES_256_CBC_SHA __attribute__((swift_name("ECDHE_ECDSA_WITH_AES_256_CBC_SHA"))) = 0xC00A,
    tls_ciphersuite_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA __attribute__((swift_name("ECDHE_RSA_WITH_3DES_EDE_CBC_SHA"))) = 0xC012,
    tls_ciphersuite_ECDHE_RSA_WITH_AES_128_CBC_SHA __attribute__((swift_name("ECDHE_RSA_WITH_AES_128_CBC_SHA"))) = 0xC013,
    tls_ciphersuite_ECDHE_RSA_WITH_AES_256_CBC_SHA __attribute__((swift_name("ECDHE_RSA_WITH_AES_256_CBC_SHA"))) = 0xC014,
    tls_ciphersuite_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 __attribute__((swift_name("ECDHE_ECDSA_WITH_AES_128_CBC_SHA256"))) = 0xC023,
    tls_ciphersuite_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 __attribute__((swift_name("ECDHE_ECDSA_WITH_AES_256_CBC_SHA384"))) = 0xC024,
    tls_ciphersuite_ECDHE_RSA_WITH_AES_128_CBC_SHA256 __attribute__((swift_name("ECDHE_RSA_WITH_AES_128_CBC_SHA256"))) = 0xC027,
    tls_ciphersuite_ECDHE_RSA_WITH_AES_256_CBC_SHA384 __attribute__((swift_name("ECDHE_RSA_WITH_AES_256_CBC_SHA384"))) = 0xC028,
    tls_ciphersuite_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 __attribute__((swift_name("ECDHE_ECDSA_WITH_AES_128_GCM_SHA256"))) = 0xC02B,
    tls_ciphersuite_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 __attribute__((swift_name("ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"))) = 0xC02C,
    tls_ciphersuite_ECDHE_RSA_WITH_AES_128_GCM_SHA256 __attribute__((swift_name("ECDHE_RSA_WITH_AES_128_GCM_SHA256"))) = 0xC02F,
    tls_ciphersuite_ECDHE_RSA_WITH_AES_256_GCM_SHA384 __attribute__((swift_name("ECDHE_RSA_WITH_AES_256_GCM_SHA384"))) = 0xC030,
    tls_ciphersuite_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 __attribute__((swift_name("ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256"))) = 0xCCA8,
    tls_ciphersuite_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 __attribute__((swift_name("ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256"))) = 0xCCA9,
    tls_ciphersuite_AES_128_GCM_SHA256 __attribute__((swift_name("AES_128_GCM_SHA256"))) = 0x1301,
    tls_ciphersuite_AES_256_GCM_SHA384 __attribute__((swift_name("AES_256_GCM_SHA384"))) = 0x1302,
    tls_ciphersuite_CHACHA20_POLY1305_SHA256 __attribute__((swift_name("CHACHA20_POLY1305_SHA256"))) = 0x1303,
};
typedef uint16_t tls_ciphersuite_group_t; enum {
    tls_ciphersuite_group_default,
    tls_ciphersuite_group_compatibility,
    tls_ciphersuite_group_legacy,
    tls_ciphersuite_group_ats,
    tls_ciphersuite_group_ats_compatibility,
};







typedef int SSLProtocol; enum {
    kSSLProtocolUnknown __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 0,
    kTLSProtocol1 __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 4,
    kTLSProtocol11 __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 7,
    kTLSProtocol12 __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 8,
    kDTLSProtocol1 __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 9,
    kTLSProtocol13 __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 10,
    kDTLSProtocol12 __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 11,
    kTLSProtocolMaxSupported __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 999,
    kSSLProtocol2 __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 1,
    kSSLProtocol3 __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 2,
    kSSLProtocol3Only __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 3,
    kTLSProtocol1Only __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 5,
    kSSLProtocolAll __attribute__((availability(ios,introduced=5_0,deprecated=13_0,message="" ))) = 6,
};

extern "C" {

#pragma clang assume_nonnull begin
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
__attribute__((__ns_returns_retained__)) _Nullable sec_trust_t
sec_trust_create(SecTrustRef trust);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
SecTrustRef
sec_trust_copy_ref(sec_trust_t trust);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
__attribute__((__ns_returns_retained__)) _Nullable sec_identity_t
sec_identity_create(SecIdentityRef identity);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
__attribute__((__ns_returns_retained__)) _Nullable sec_identity_t
sec_identity_create_with_certificates(SecIdentityRef identity, CFArrayRef certificates);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
bool
sec_identity_access_certificates(sec_identity_t identity,
                                 void (^handler)(sec_certificate_t certificate));
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
_Nullable SecIdentityRef
sec_identity_copy_ref(sec_identity_t identity);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
_Nullable CFArrayRef
sec_identity_copy_certificates_ref(sec_identity_t identity);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
__attribute__((__ns_returns_retained__)) _Nullable sec_certificate_t
sec_certificate_create(SecCertificateRef certificate);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
SecCertificateRef
sec_certificate_copy_ref(sec_certificate_t certificate);
#pragma clang assume_nonnull end


}
// @protocol OS_sec_protocol_metadata <NSObject> /* @end */
 typedef NSObject/*<OS_sec_protocol_metadata>*/ * __attribute__((objc_independent_class)) sec_protocol_metadata_t;


extern "C" {

#pragma clang assume_nonnull begin
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
const char * _Nullable
sec_protocol_metadata_get_negotiated_protocol(sec_protocol_metadata_t metadata);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
__attribute__((__ns_returns_retained__)) _Nullable dispatch_data_t
sec_protocol_metadata_copy_peer_public_key(sec_protocol_metadata_t metadata);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
tls_protocol_version_t
sec_protocol_metadata_get_negotiated_tls_protocol_version(sec_protocol_metadata_t metadata);
__attribute__((availability(macos,introduced=10.14,deprecated=10.15,replacement="sec_protocol_metadata_get_negotiated_tls_protocol_version"))) __attribute__((availability(ios,introduced=12.0,deprecated=13.0,replacement="sec_protocol_metadata_get_negotiated_tls_protocol_version"))) __attribute__((availability(watchos,introduced=5.0,deprecated=6.0,replacement="sec_protocol_metadata_get_negotiated_tls_protocol_version"))) __attribute__((availability(tvos,introduced=12.0,deprecated=13.0,replacement="sec_protocol_metadata_get_negotiated_tls_protocol_version")))

SSLProtocol
sec_protocol_metadata_get_negotiated_protocol_version(sec_protocol_metadata_t metadata);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
tls_ciphersuite_t
sec_protocol_metadata_get_negotiated_tls_ciphersuite(sec_protocol_metadata_t metadata);
__attribute__((availability(macos,introduced=10.14,deprecated=10.15,replacement="sec_protocol_metadata_get_negotiated_tls_ciphersuite"))) __attribute__((availability(ios,introduced=12.0,deprecated=13.0,replacement="sec_protocol_metadata_get_negotiated_tls_ciphersuite"))) __attribute__((availability(watchos,introduced=5.0,deprecated=6.0,replacement="sec_protocol_metadata_get_negotiated_tls_ciphersuite"))) __attribute__((availability(tvos,introduced=12.0,deprecated=13.0,replacement="sec_protocol_metadata_get_negotiated_tls_ciphersuite")))

__attribute__((availability(macCatalyst,unavailable)))
SSLCipherSuite
sec_protocol_metadata_get_negotiated_ciphersuite(sec_protocol_metadata_t metadata);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
bool
sec_protocol_metadata_get_early_data_accepted(sec_protocol_metadata_t metadata);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
bool
sec_protocol_metadata_access_peer_certificate_chain(sec_protocol_metadata_t metadata,
                                                    void (^handler)(sec_certificate_t certificate));
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
bool
sec_protocol_metadata_access_ocsp_response(sec_protocol_metadata_t metadata,
                                           void (^handler)(dispatch_data_t ocsp_data));
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
bool
sec_protocol_metadata_access_supported_signature_algorithms(sec_protocol_metadata_t metadata,
                                                            void (^handler)(uint16_t signature_algorithm));
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
bool
sec_protocol_metadata_access_distinguished_names(sec_protocol_metadata_t metadata,
                                                 void (^handler)(dispatch_data_t distinguished_name));
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
bool
sec_protocol_metadata_access_pre_shared_keys(sec_protocol_metadata_t metadata, void (^handler)(dispatch_data_t psk, dispatch_data_t psk_identity));
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
const char * _Nullable
sec_protocol_metadata_get_server_name(sec_protocol_metadata_t metadata);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
bool
sec_protocol_metadata_peers_are_equal(sec_protocol_metadata_t metadataA, sec_protocol_metadata_t metadataB);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
bool
sec_protocol_metadata_challenge_parameters_are_equal(sec_protocol_metadata_t metadataA, sec_protocol_metadata_t metadataB);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
__attribute__((__ns_returns_retained__)) _Nullable dispatch_data_t
sec_protocol_metadata_create_secret(sec_protocol_metadata_t metadata, size_t label_len,
                                    const char *label, size_t exporter_length);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
__attribute__((__ns_returns_retained__)) _Nullable dispatch_data_t
sec_protocol_metadata_create_secret_with_context(sec_protocol_metadata_t metadata, size_t label_len,
                                                 const char *label, size_t context_len,
                                                 const uint8_t *context, size_t exporter_length);
#pragma clang assume_nonnull end


}
// @protocol OS_sec_protocol_options <NSObject> /* @end */
 typedef NSObject/*<OS_sec_protocol_options>*/ * __attribute__((objc_independent_class)) sec_protocol_options_t;


extern "C" {

#pragma clang assume_nonnull begin
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
bool
sec_protocol_options_are_equal(sec_protocol_options_t optionsA, sec_protocol_options_t optionsB);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_local_identity(sec_protocol_options_t options, sec_identity_t identity);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
void
sec_protocol_options_append_tls_ciphersuite(sec_protocol_options_t options, tls_ciphersuite_t ciphersuite);
__attribute__((availability(macos,introduced=10.14,deprecated=10.15,message="Use sec_protocol_options_append_tls_ciphersuite"))) __attribute__((availability(ios,introduced=12.0,deprecated=13.0,message="Use sec_protocol_options_append_tls_ciphersuite"))) __attribute__((availability(watchos,introduced=5.0,deprecated=6.0,message="Use sec_protocol_options_append_tls_ciphersuite"))) __attribute__((availability(tvos,introduced=12.0,deprecated=13.0,message="Use sec_protocol_options_append_tls_ciphersuite")))
__attribute__((availability(macCatalyst,unavailable)))
void
sec_protocol_options_add_tls_ciphersuite(sec_protocol_options_t options, SSLCipherSuite ciphersuite);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
void
sec_protocol_options_append_tls_ciphersuite_group(sec_protocol_options_t options, tls_ciphersuite_group_t group);
__attribute__((availability(macos,introduced=10.14,deprecated=10.15,message="Use sec_protocol_options_append_tls_ciphersuite_group"))) __attribute__((availability(ios,introduced=12.0,deprecated=13.0,message="Use sec_protocol_options_append_tls_ciphersuite_group"))) __attribute__((availability(watchos,introduced=5.0,deprecated=6.0,message="Use sec_protocol_options_append_tls_ciphersuite_group"))) __attribute__((availability(tvos,introduced=12.0,deprecated=13.0,message="Use sec_protocol_options_append_tls_ciphersuite_group")))
__attribute__((availability(macCatalyst,unavailable)))
void
sec_protocol_options_add_tls_ciphersuite_group(sec_protocol_options_t options, SSLCiphersuiteGroup group);
__attribute__((availability(macos,introduced=10.14,deprecated=10.15,replacement="sec_protocol_options_set_min_tls_protocol_version"))) __attribute__((availability(ios,introduced=12.0,deprecated=13.0,replacement="sec_protocol_options_set_min_tls_protocol_version"))) __attribute__((availability(watchos,introduced=5.0,deprecated=6.0,replacement="sec_protocol_options_set_min_tls_protocol_version"))) __attribute__((availability(tvos,introduced=12.0,deprecated=13.0,replacement="sec_protocol_options_set_min_tls_protocol_version")))

__attribute__((availability(macCatalyst,unavailable)))
void
sec_protocol_options_set_tls_min_version(sec_protocol_options_t options, SSLProtocol version);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
void
sec_protocol_options_set_min_tls_protocol_version(sec_protocol_options_t options, tls_protocol_version_t version);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
tls_protocol_version_t
sec_protocol_options_get_default_min_tls_protocol_version(void);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
tls_protocol_version_t
sec_protocol_options_get_default_min_dtls_protocol_version(void);
__attribute__((availability(macos,introduced=10.14,deprecated=10.15,replacement="sec_protocol_options_set_max_tls_protocol_version"))) __attribute__((availability(ios,introduced=12.0,deprecated=13.0,replacement="sec_protocol_options_set_max_tls_protocol_version"))) __attribute__((availability(watchos,introduced=5.0,deprecated=6.0,replacement="sec_protocol_options_set_max_tls_protocol_version"))) __attribute__((availability(tvos,introduced=12.0,deprecated=13.0,replacement="sec_protocol_options_set_max_tls_protocol_version")))

__attribute__((availability(macCatalyst,unavailable)))
void
sec_protocol_options_set_tls_max_version(sec_protocol_options_t options, SSLProtocol version);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
void
sec_protocol_options_set_max_tls_protocol_version(sec_protocol_options_t options, tls_protocol_version_t version);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
tls_protocol_version_t
sec_protocol_options_get_default_max_tls_protocol_version(void);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
tls_protocol_version_t
sec_protocol_options_get_default_max_dtls_protocol_version(void);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_add_tls_application_protocol(sec_protocol_options_t options, const char *application_protocol);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_tls_server_name(sec_protocol_options_t options, const char *server_name);
__attribute__((availability(macos,introduced=10.14,deprecated=10.15,message="DHE ciphersuites are no longer supported"))) __attribute__((availability(ios,introduced=12.0,deprecated=13.0,message="DHE ciphersuites are no longer supported"))) __attribute__((availability(watchos,introduced=5.0,deprecated=6.0,message="DHE ciphersuites are no longer supported"))) __attribute__((availability(tvos,introduced=12.0,deprecated=13.0,message="DHE ciphersuites are no longer supported")))
void
sec_protocol_options_set_tls_diffie_hellman_parameters(sec_protocol_options_t options, dispatch_data_t params);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_add_pre_shared_key(sec_protocol_options_t options, dispatch_data_t psk, dispatch_data_t psk_identity);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
void
sec_protocol_options_set_tls_pre_shared_key_identity_hint(sec_protocol_options_t options, dispatch_data_t psk_identity_hint);
typedef void (*sec_protocol_pre_shared_key_selection_complete_t)(dispatch_data_t _Nullable psk_identity);
typedef void (*sec_protocol_pre_shared_key_selection_t)(sec_protocol_metadata_t metadata, dispatch_data_t _Nullable psk_identity_hint, sec_protocol_pre_shared_key_selection_complete_t complete);
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
void
sec_protocol_options_set_pre_shared_key_selection_block(sec_protocol_options_t options, sec_protocol_pre_shared_key_selection_t psk_selection_block, dispatch_queue_t psk_selection_queue);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_tls_tickets_enabled(sec_protocol_options_t options, bool tickets_enabled);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_tls_is_fallback_attempt(sec_protocol_options_t options, bool is_fallback_attempt);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_tls_resumption_enabled(sec_protocol_options_t options, bool resumption_enabled);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_tls_false_start_enabled(sec_protocol_options_t options, bool false_start_enabled);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_tls_ocsp_enabled(sec_protocol_options_t options, bool ocsp_enabled);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_tls_sct_enabled(sec_protocol_options_t options, bool sct_enabled);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_tls_renegotiation_enabled(sec_protocol_options_t options, bool renegotiation_enabled);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_peer_authentication_required(sec_protocol_options_t options, bool peer_authentication_required);
typedef void (*sec_protocol_key_update_complete_t)(void);
typedef void (*sec_protocol_key_update_t)(sec_protocol_metadata_t metadata, sec_protocol_key_update_complete_t complete);
typedef void (*sec_protocol_challenge_complete_t)(sec_identity_t _Nullable identity);
typedef void (*sec_protocol_challenge_t)(sec_protocol_metadata_t metadata, sec_protocol_challenge_complete_t complete);
typedef void (*sec_protocol_verify_complete_t)(bool result);
typedef void (*sec_protocol_verify_t)(sec_protocol_metadata_t metadata, sec_trust_t trust_ref, sec_protocol_verify_complete_t complete);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_key_update_block(sec_protocol_options_t options, sec_protocol_key_update_t key_update_block, dispatch_queue_t key_update_queue);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_challenge_block(sec_protocol_options_t options, sec_protocol_challenge_t challenge_block, dispatch_queue_t challenge_queue);
__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))
void
sec_protocol_options_set_verify_block(sec_protocol_options_t options, sec_protocol_verify_t verify_block, dispatch_queue_t verify_block_queue);
#pragma clang assume_nonnull end




}

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif


#pragma clang assume_nonnull begin
typedef NSUInteger NSURLCredentialPersistence; enum {
    NSURLCredentialPersistenceNone,
    NSURLCredentialPersistenceForSession,
    NSURLCredentialPersistencePermanent,
    NSURLCredentialPersistenceSynchronizable __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))
};

// @class NSURLCredentialInternal;
#ifndef _REWRITER_typedef_NSURLCredentialInternal
#define _REWRITER_typedef_NSURLCredentialInternal
typedef struct objc_object NSURLCredentialInternal;
typedef struct {} _objc_exc_NSURLCredentialInternal;
#endif








#ifndef _REWRITER_typedef_NSURLCredential
#define _REWRITER_typedef_NSURLCredential
typedef struct objc_object NSURLCredential;
typedef struct {} _objc_exc_NSURLCredential;
#endif

struct NSURLCredential_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURLCredentialInternal *_internal;
};






// @property (readonly) NSURLCredentialPersistence persistence;

/* @end */





// @interface NSURLCredential(NSInternetPassword)
// - (instancetype)initWithUser:(NSString *)user password:(NSString *)password persistence:(NSURLCredentialPersistence)persistence;
// + (NSURLCredential *)credentialWithUser:(NSString *)user password:(NSString *)password persistence:(NSURLCredentialPersistence)persistence;





// @property (nullable, readonly, copy) NSString *user;
// @property (nullable, readonly, copy) NSString *password;
// @property (readonly) BOOL hasPassword;

/* @end */





// @interface NSURLCredential(NSClientCertificate)
// - (instancetype)initWithIdentity:(SecIdentityRef)identity certificates:(nullable NSArray *)certArray persistence:(NSURLCredentialPersistence)persistence __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSURLCredential *)credentialWithIdentity:(SecIdentityRef)identity certificates:(nullable NSArray *)certArray persistence:(NSURLCredentialPersistence)persistence __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// @property (nullable, readonly) SecIdentityRef identity;





// @property (readonly, copy) NSArray *certificates __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSURLCredential(NSServerTrust)






// - (instancetype)initWithTrust:(SecTrustRef)trust __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// + (NSURLCredential *)credentialForTrust:(SecTrustRef)trust __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end








// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif


#pragma clang assume_nonnull begin





extern "C" NSString * const NSURLProtectionSpaceHTTP __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern "C" NSString * const NSURLProtectionSpaceHTTPS __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern "C" NSString * const NSURLProtectionSpaceFTP __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern "C" NSString * const NSURLProtectionSpaceHTTPProxy;





extern "C" NSString * const NSURLProtectionSpaceHTTPSProxy;





extern "C" NSString * const NSURLProtectionSpaceFTPProxy;





extern "C" NSString * const NSURLProtectionSpaceSOCKSProxy;





extern "C" NSString * const NSURLAuthenticationMethodDefault;






extern "C" NSString * const NSURLAuthenticationMethodHTTPBasic;





extern "C" NSString * const NSURLAuthenticationMethodHTTPDigest;





extern "C" NSString * const NSURLAuthenticationMethodHTMLForm;





extern "C" NSString * const NSURLAuthenticationMethodNTLM __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern "C" NSString * const NSURLAuthenticationMethodNegotiate __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern "C" NSString * const NSURLAuthenticationMethodClientCertificate __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern "C" NSString * const NSURLAuthenticationMethodServerTrust __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @class NSURLProtectionSpaceInternal;
#ifndef _REWRITER_typedef_NSURLProtectionSpaceInternal
#define _REWRITER_typedef_NSURLProtectionSpaceInternal
typedef struct objc_object NSURLProtectionSpaceInternal;
typedef struct {} _objc_exc_NSURLProtectionSpaceInternal;
#endif








#ifndef _REWRITER_typedef_NSURLProtectionSpace
#define _REWRITER_typedef_NSURLProtectionSpace
typedef struct objc_object NSURLProtectionSpace;
typedef struct {} _objc_exc_NSURLProtectionSpace;
#endif

struct NSURLProtectionSpace_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURLProtectionSpaceInternal *_internal;
};

// - (instancetype)initWithHost:(NSString *)host port:(NSInteger)port protocol:(nullable NSString *)protocol realm:(nullable NSString *)realm authenticationMethod:(nullable NSString *)authenticationMethod;
// - (instancetype)initWithProxyHost:(NSString *)host port:(NSInteger)port type:(nullable NSString *)type realm:(nullable NSString *)realm authenticationMethod:(nullable NSString *)authenticationMethod;
// @property (nullable, readonly, copy) NSString *realm;





// @property (readonly) BOOL receivesCredentialSecurely;





// @property (readonly) BOOL isProxy;





// @property (readonly, copy) NSString *host;





// @property (readonly) NSInteger port;





// @property (nullable, readonly, copy) NSString *proxyType;





// @property (nullable, readonly, copy) NSString *protocol;





// @property (readonly, copy) NSString *authenticationMethod;

/* @end */





// @interface NSURLProtectionSpace(NSClientCertificateSpace)





// @property (nullable, readonly, copy) NSArray<NSData *> *distinguishedNames __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */





// @interface NSURLProtectionSpace(NSServerTrustValidationSpace)





// @property (nullable, readonly) SecTrustRef serverTrust __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end


// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @class NSURLCredential;
#ifndef _REWRITER_typedef_NSURLCredential
#define _REWRITER_typedef_NSURLCredential
typedef struct objc_object NSURLCredential;
typedef struct {} _objc_exc_NSURLCredential;
#endif

// @class NSURLSessionTask;
#ifndef _REWRITER_typedef_NSURLSessionTask
#define _REWRITER_typedef_NSURLSessionTask
typedef struct objc_object NSURLSessionTask;
typedef struct {} _objc_exc_NSURLSessionTask;
#endif


// @class NSURLCredentialStorageInternal;
#ifndef _REWRITER_typedef_NSURLCredentialStorageInternal
#define _REWRITER_typedef_NSURLCredentialStorageInternal
typedef struct objc_object NSURLCredentialStorageInternal;
typedef struct {} _objc_exc_NSURLCredentialStorageInternal;
#endif


#pragma clang assume_nonnull begin







#ifndef _REWRITER_typedef_NSURLCredentialStorage
#define _REWRITER_typedef_NSURLCredentialStorage
typedef struct objc_object NSURLCredentialStorage;
typedef struct {} _objc_exc_NSURLCredentialStorage;
#endif

struct NSURLCredentialStorage_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURLCredentialStorageInternal *_internal;
};







@property (class, readonly, strong) NSURLCredentialStorage *sharedCredentialStorage;







// - (nullable NSDictionary<NSString *, NSURLCredential *> *)credentialsForProtectionSpace:(NSURLProtectionSpace *)space;







// @property (readonly, copy) NSDictionary<NSURLProtectionSpace *, NSDictionary<NSString *, NSURLCredential *> *> *allCredentials;
// - (void)setCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)space;
// - (void)removeCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)space;
// - (void)removeCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)space options:(nullable NSDictionary<NSString *, id> *)options __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (nullable NSURLCredential *)defaultCredentialForProtectionSpace:(NSURLProtectionSpace *)space;
// - (void)setDefaultCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)space;

/* @end */


// @interface NSURLCredentialStorage (NSURLSessionTaskAdditions)
// - (void)getCredentialsForProtectionSpace:(NSURLProtectionSpace *)protectionSpace task:(NSURLSessionTask *)task completionHandler:(void (^) (NSDictionary<NSString *, NSURLCredential *> * _Nullable credentials))completionHandler __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)setCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)protectionSpace task:(NSURLSessionTask *)task __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)removeCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)protectionSpace options:(nullable NSDictionary<NSString *, id> *)options task:(NSURLSessionTask *)task __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)getDefaultCredentialForProtectionSpace:(NSURLProtectionSpace *)space task:(NSURLSessionTask *)task completionHandler:(void (^) (NSURLCredential * _Nullable credential))completionHandler __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)setDefaultCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)protectionSpace task:(NSURLSessionTask *)task __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
/* @end */







extern "C" NSNotificationName const NSURLCredentialStorageChangedNotification;







extern "C" NSString *const NSURLCredentialStorageRemoveSynchronizableCredentials __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
#pragma clang assume_nonnull end



extern "C" {
#pragma clang assume_nonnull begin
extern const CFStringRef kCFErrorDomainCFNetwork __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFErrorDomainWinSock __attribute__((availability(ios,introduced=2_0)));
typedef int CFNetworkErrors; enum {

  kCFHostErrorHostNotFound = 1,
  kCFHostErrorUnknown = 2,

  kCFSOCKSErrorUnknownClientVersion = 100,
  kCFSOCKSErrorUnsupportedServerVersion = 101,

  kCFSOCKS4ErrorRequestFailed = 110,
  kCFSOCKS4ErrorIdentdFailed = 111,
  kCFSOCKS4ErrorIdConflict = 112,
  kCFSOCKS4ErrorUnknownStatusCode = 113,

  kCFSOCKS5ErrorBadState = 120,
  kCFSOCKS5ErrorBadResponseAddr = 121,
  kCFSOCKS5ErrorBadCredentials = 122,
  kCFSOCKS5ErrorUnsupportedNegotiationMethod = 123,
  kCFSOCKS5ErrorNoAcceptableMethod = 124,

  kCFFTPErrorUnexpectedStatusCode = 200,

  kCFErrorHTTPAuthenticationTypeUnsupported = 300,
  kCFErrorHTTPBadCredentials = 301,
  kCFErrorHTTPConnectionLost = 302,
  kCFErrorHTTPParseFailure = 303,
  kCFErrorHTTPRedirectionLoopDetected = 304,
  kCFErrorHTTPBadURL = 305,
  kCFErrorHTTPProxyConnectionFailure = 306,
  kCFErrorHTTPBadProxyCredentials = 307,
  kCFErrorPACFileError = 308,
  kCFErrorPACFileAuth = 309,
  kCFErrorHTTPSProxyConnectionFailure = 310,
  kCFStreamErrorHTTPSProxyFailureUnexpectedResponseToCONNECTMethod = 311,


  kCFURLErrorBackgroundSessionInUseByAnotherProcess = -996,
  kCFURLErrorBackgroundSessionWasDisconnected = -997,
  kCFURLErrorUnknown = -998,
  kCFURLErrorCancelled = -999,
  kCFURLErrorBadURL = -1000,
  kCFURLErrorTimedOut = -1001,
  kCFURLErrorUnsupportedURL = -1002,
  kCFURLErrorCannotFindHost = -1003,
  kCFURLErrorCannotConnectToHost = -1004,
  kCFURLErrorNetworkConnectionLost = -1005,
  kCFURLErrorDNSLookupFailed = -1006,
  kCFURLErrorHTTPTooManyRedirects = -1007,
  kCFURLErrorResourceUnavailable = -1008,
  kCFURLErrorNotConnectedToInternet = -1009,
  kCFURLErrorRedirectToNonExistentLocation = -1010,
  kCFURLErrorBadServerResponse = -1011,
  kCFURLErrorUserCancelledAuthentication = -1012,
  kCFURLErrorUserAuthenticationRequired = -1013,
  kCFURLErrorZeroByteResource = -1014,
  kCFURLErrorCannotDecodeRawData = -1015,
  kCFURLErrorCannotDecodeContentData = -1016,
  kCFURLErrorCannotParseResponse = -1017,
  kCFURLErrorInternationalRoamingOff = -1018,
  kCFURLErrorCallIsActive = -1019,
  kCFURLErrorDataNotAllowed = -1020,
  kCFURLErrorRequestBodyStreamExhausted = -1021,
  kCFURLErrorAppTransportSecurityRequiresSecureConnection = -1022,
  kCFURLErrorFileDoesNotExist = -1100,
  kCFURLErrorFileIsDirectory = -1101,
  kCFURLErrorNoPermissionsToReadFile = -1102,
  kCFURLErrorDataLengthExceedsMaximum = -1103,
  kCFURLErrorFileOutsideSafeArea = -1104,

  kCFURLErrorSecureConnectionFailed = -1200,
  kCFURLErrorServerCertificateHasBadDate = -1201,
  kCFURLErrorServerCertificateUntrusted = -1202,
  kCFURLErrorServerCertificateHasUnknownRoot = -1203,
  kCFURLErrorServerCertificateNotYetValid = -1204,
  kCFURLErrorClientCertificateRejected = -1205,
  kCFURLErrorClientCertificateRequired = -1206,
  kCFURLErrorCannotLoadFromNetwork = -2000,

  kCFURLErrorCannotCreateFile = -3000,
  kCFURLErrorCannotOpenFile = -3001,
  kCFURLErrorCannotCloseFile = -3002,
  kCFURLErrorCannotWriteToFile = -3003,
  kCFURLErrorCannotRemoveFile = -3004,
  kCFURLErrorCannotMoveFile = -3005,
  kCFURLErrorDownloadDecodingFailedMidStream = -3006,
  kCFURLErrorDownloadDecodingFailedToComplete = -3007,


  kCFHTTPCookieCannotParseCookieFile = -4000,


  kCFNetServiceErrorUnknown = -72000L,
  kCFNetServiceErrorCollision = -72001L,
  kCFNetServiceErrorNotFound = -72002L,
  kCFNetServiceErrorInProgress = -72003L,
  kCFNetServiceErrorBadArgument = -72004L,
  kCFNetServiceErrorCancel = -72005L,
  kCFNetServiceErrorInvalid = -72006L,
  kCFNetServiceErrorTimeout = -72007L,
  kCFNetServiceErrorDNSServiceFailure = -73000L
};
extern const CFStringRef kCFURLErrorFailingURLErrorKey __attribute__((availability(ios,introduced=2_2)));
extern const CFStringRef kCFURLErrorFailingURLStringErrorKey __attribute__((availability(ios,introduced=2_2)));
extern const CFStringRef kCFGetAddrInfoFailureKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFSOCKSStatusCodeKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFSOCKSVersionKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFSOCKSNegotiationMethodKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFDNSServiceFailureKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFFTPStatusCodeKey __attribute__((availability(ios,introduced=2_0)));
#pragma clang assume_nonnull end


}



extern "C" {
#pragma clang assume_nonnull begin

#pragma pack(push, 2)








typedef struct __CFHost* CFHostRef;
extern const SInt32 kCFStreamErrorDomainNetDB __attribute__((availability(ios,introduced=2_0)));
extern const SInt32 kCFStreamErrorDomainSystemConfiguration __attribute__((availability(ios,introduced=2_0)));
typedef int CFHostInfoType; enum {





  kCFHostAddresses = 0,




  kCFHostNames = 1,





  kCFHostReachability = 2
};
struct CFHostClientContext {






  CFIndex version;





  void * _Nullable info;
  CFAllocatorRetainCallBack _Nullable retain;





  CFAllocatorReleaseCallBack _Nullable release;







  CFAllocatorCopyDescriptionCallBack _Nullable copyDescription;
};
typedef struct CFHostClientContext CFHostClientContext;
typedef void ( * CFHostClientCallBack)(CFHostRef theHost, CFHostInfoType typeInfo, const CFStreamError * _Nullable error, void * _Nullable info);
extern CFTypeID
CFHostGetTypeID(void) __attribute__((availability(ios,introduced=2_0)));
extern CFHostRef
CFHostCreateWithName(CFAllocatorRef _Nullable allocator, CFStringRef hostname) __attribute__((availability(ios,introduced=2_0)));
extern CFHostRef
CFHostCreateWithAddress(CFAllocatorRef _Nullable allocator, CFDataRef addr) __attribute__((availability(ios,introduced=2_0)));
extern CFHostRef
CFHostCreateCopy(CFAllocatorRef _Nullable alloc, CFHostRef host) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHostStartInfoResolution(CFHostRef theHost, CFHostInfoType info, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFArrayRef
CFHostGetAddressing(CFHostRef theHost, Boolean * _Nullable hasBeenResolved) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFArrayRef
CFHostGetNames(CFHostRef theHost, Boolean * _Nullable hasBeenResolved) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFDataRef
CFHostGetReachability(CFHostRef theHost, Boolean * _Nullable hasBeenResolved) __attribute__((availability(ios,introduced=2_0)));
extern void
CFHostCancelInfoResolution(CFHostRef theHost, CFHostInfoType info) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHostSetClient(CFHostRef theHost, CFHostClientCallBack _Nullable clientCB, CFHostClientContext * _Nullable clientContext) __attribute__((availability(ios,introduced=2_0)));
extern void
CFHostScheduleWithRunLoop(CFHostRef theHost, CFRunLoopRef runLoop, CFStringRef runLoopMode) __attribute__((availability(ios,introduced=2_0)));
extern void
CFHostUnscheduleFromRunLoop(CFHostRef theHost, CFRunLoopRef runLoop, CFStringRef runLoopMode) __attribute__((availability(ios,introduced=2_0)));



#pragma pack(pop)
#pragma clang assume_nonnull end

}



extern "C" {
#pragma clang assume_nonnull begin

#pragma pack(push, 2)
typedef struct __CFNetService* CFNetServiceRef;
typedef struct __CFNetServiceMonitor* CFNetServiceMonitorRef;
typedef struct __CFNetServiceBrowser* CFNetServiceBrowserRef;
extern const SInt32 kCFStreamErrorDomainMach __attribute__((availability(ios,introduced=2_0)));
extern const SInt32 kCFStreamErrorDomainNetServices __attribute__((availability(ios,introduced=2_0)));
typedef int CFNetServicesError; enum {




  kCFNetServicesErrorUnknown = -72000L,






  kCFNetServicesErrorCollision = -72001L,




  kCFNetServicesErrorNotFound = -72002L,





  kCFNetServicesErrorInProgress = -72003L,




  kCFNetServicesErrorBadArgument = -72004L,




  kCFNetServicesErrorCancel = -72005L,





  kCFNetServicesErrorInvalid = -72006L,





  kCFNetServicesErrorTimeout = -72007L
};
typedef int CFNetServiceMonitorType; enum {




  kCFNetServiceMonitorTXT = 1
};
typedef CFOptionFlags CFNetServiceRegisterFlags; enum {




  kCFNetServiceFlagNoAutoRename = 1
};
typedef CFOptionFlags CFNetServiceBrowserFlags; enum {




  kCFNetServiceFlagMoreComing = 1,




  kCFNetServiceFlagIsDomain = 2,




  kCFNetServiceFlagIsDefault = 4,




  kCFNetServiceFlagIsRegistrationDomain __attribute__((availability(ios,introduced=2_0,deprecated=2_0,message="" ))) = 4,




  kCFNetServiceFlagRemove = 8
};
struct CFNetServiceClientContext {






  CFIndex version;





  void * _Nullable info;
  CFAllocatorRetainCallBack _Nullable retain;





  CFAllocatorReleaseCallBack _Nullable release;







  CFAllocatorCopyDescriptionCallBack _Nullable copyDescription;
};
typedef struct CFNetServiceClientContext CFNetServiceClientContext;
typedef void ( * CFNetServiceClientCallBack)(CFNetServiceRef theService, CFStreamError * _Nullable error, void * _Nullable info);
typedef void ( * CFNetServiceMonitorClientCallBack)(CFNetServiceMonitorRef theMonitor, CFNetServiceRef _Nullable theService, CFNetServiceMonitorType typeInfo, CFDataRef _Nullable rdata, CFStreamError * _Nullable error, void * _Nullable info);
typedef void ( * CFNetServiceBrowserClientCallBack)(CFNetServiceBrowserRef browser, CFOptionFlags flags, CFTypeRef _Nullable domainOrService, CFStreamError * _Nullable error, void * _Nullable info);
extern CFTypeID
CFNetServiceGetTypeID(void) __attribute__((availability(ios,introduced=2_0)));
extern CFTypeID
CFNetServiceMonitorGetTypeID(void) __attribute__((availability(ios,introduced=2_0)));
extern CFTypeID
CFNetServiceBrowserGetTypeID(void) __attribute__((availability(ios,introduced=2_0)));
extern CFNetServiceRef
CFNetServiceCreate(CFAllocatorRef _Nullable alloc, CFStringRef domain, CFStringRef serviceType, CFStringRef name, SInt32 port) __attribute__((availability(ios,introduced=2_0)));
extern CFNetServiceRef
CFNetServiceCreateCopy(CFAllocatorRef _Nullable alloc, CFNetServiceRef service) __attribute__((availability(ios,introduced=2_0)));
extern CFStringRef
CFNetServiceGetDomain(CFNetServiceRef theService) __attribute__((availability(ios,introduced=2_0)));
extern CFStringRef
CFNetServiceGetType(CFNetServiceRef theService) __attribute__((availability(ios,introduced=2_0)));
extern CFStringRef
CFNetServiceGetName(CFNetServiceRef theService) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFNetServiceRegisterWithOptions(CFNetServiceRef theService, CFOptionFlags options, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFNetServiceResolveWithTimeout(CFNetServiceRef theService, CFTimeInterval timeout, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceCancel(CFNetServiceRef theService) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFStringRef
CFNetServiceGetTargetHost(CFNetServiceRef theService) __attribute__((availability(ios,introduced=2_0)));
extern SInt32
CFNetServiceGetPortNumber(CFNetServiceRef theService) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFArrayRef
CFNetServiceGetAddressing(CFNetServiceRef theService) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFDataRef
CFNetServiceGetTXTData(CFNetServiceRef theService) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFNetServiceSetTXTData(CFNetServiceRef theService, CFDataRef txtRecord) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFDictionaryRef
CFNetServiceCreateDictionaryWithTXTData(CFAllocatorRef _Nullable alloc, CFDataRef txtRecord) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFDataRef
CFNetServiceCreateTXTDataWithDictionary(CFAllocatorRef _Nullable alloc, CFDictionaryRef keyValuePairs) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFNetServiceSetClient(CFNetServiceRef theService, CFNetServiceClientCallBack _Nullable clientCB, CFNetServiceClientContext * _Nullable clientContext) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceScheduleWithRunLoop(CFNetServiceRef theService, CFRunLoopRef runLoop, CFStringRef runLoopMode) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceUnscheduleFromRunLoop(CFNetServiceRef theService, CFRunLoopRef runLoop, CFStringRef runLoopMode) __attribute__((availability(ios,introduced=2_0)));
extern CFNetServiceMonitorRef
CFNetServiceMonitorCreate(
  CFAllocatorRef _Nullable alloc,
  CFNetServiceRef theService,
  CFNetServiceMonitorClientCallBack clientCB,
  CFNetServiceClientContext * clientContext) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceMonitorInvalidate(CFNetServiceMonitorRef monitor) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFNetServiceMonitorStart(CFNetServiceMonitorRef monitor, CFNetServiceMonitorType recordType, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceMonitorStop(CFNetServiceMonitorRef monitor, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceMonitorScheduleWithRunLoop(CFNetServiceMonitorRef monitor, CFRunLoopRef runLoop, CFStringRef runLoopMode) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceMonitorUnscheduleFromRunLoop(CFNetServiceMonitorRef monitor, CFRunLoopRef runLoop, CFStringRef runLoopMode) __attribute__((availability(ios,introduced=2_0)));
extern CFNetServiceBrowserRef
CFNetServiceBrowserCreate(CFAllocatorRef _Nullable alloc, CFNetServiceBrowserClientCallBack clientCB, CFNetServiceClientContext *clientContext) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceBrowserInvalidate(CFNetServiceBrowserRef browser) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFNetServiceBrowserSearchForDomains(CFNetServiceBrowserRef browser, Boolean registrationDomains, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFNetServiceBrowserSearchForServices(CFNetServiceBrowserRef browser, CFStringRef domain, CFStringRef serviceType, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceBrowserStopSearch(CFNetServiceBrowserRef browser, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceBrowserScheduleWithRunLoop(CFNetServiceBrowserRef browser, CFRunLoopRef runLoop, CFStringRef runLoopMode) __attribute__((availability(ios,introduced=2_0)));
extern void
CFNetServiceBrowserUnscheduleFromRunLoop(CFNetServiceBrowserRef browser, CFRunLoopRef runLoop, CFStringRef runLoopMode) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFNetServiceRegister(CFNetServiceRef theService, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=NA,deprecated=NA,message="" )));
extern Boolean
CFNetServiceResolve(CFNetServiceRef theService, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=NA,deprecated=NA,message="" )));





#pragma pack(pop)
#pragma clang assume_nonnull end

}








extern "C" {
#pragma clang assume_nonnull begin
extern const CFStringRef kCFStreamPropertySSLContext __attribute__((availability(ios,introduced=5_0)));
extern const CFStringRef kCFStreamPropertySSLPeerTrust __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamSSLValidatesCertificateChain __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamPropertySSLSettings __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamSSLLevel __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamSSLPeerName __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamSSLCertificates __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamSSLIsServer __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamNetworkServiceType __attribute__((availability(ios,introduced=4_0)));


extern const CFStringRef kCFStreamNetworkServiceTypeVideo __attribute__((availability(ios,introduced=5_0)));
extern const CFStringRef kCFStreamNetworkServiceTypeVoice __attribute__((availability(ios,introduced=5_0)));
extern const CFStringRef kCFStreamNetworkServiceTypeBackground __attribute__((availability(ios,introduced=5_0)));
extern const CFStringRef kCFStreamNetworkServiceTypeResponsiveData __attribute__((availability(ios,introduced=6.0)));
extern const CFStringRef kCFStreamNetworkServiceTypeCallSignaling __attribute__((availability(ios,introduced=10_0)));
extern const CFStringRef kCFStreamNetworkServiceTypeAVStreaming __attribute__((availability(ios,introduced=6.0)));
extern const CFStringRef kCFStreamNetworkServiceTypeResponsiveAV __attribute__((availability(ios,introduced=6.0)));


extern const CFStringRef kCFStreamNetworkServiceTypeVoIP __attribute__((availability(ios,introduced=4_0,deprecated=9_0,message="" "use PushKit for VoIP control purposes")));
extern const CFStringRef kCFStreamPropertyNoCellular __attribute__((availability(ios,introduced=5_0)));
extern const CFStringRef kCFStreamPropertyConnectionIsCellular __attribute__((availability(ios,introduced=6_0)));
extern const CFStringRef kCFStreamPropertyAllowExpensiveNetworkAccess __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
extern const CFStringRef kCFStreamPropertyConnectionIsExpensive __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
extern const CFStringRef kCFStreamPropertyAllowConstrainedNetworkAccess __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
extern const CFIndex kCFStreamErrorDomainWinSock __attribute__((availability(ios,introduced=2_0)));

static __inline__ __attribute__((always_inline))
SInt32 CFSocketStreamSOCKSGetErrorSubdomain(const CFStreamError* error) {
 return ((error->error >> 16) & 0x0000FFFF);
}

static __inline__ __attribute__((always_inline))
SInt32 CFSocketStreamSOCKSGetError(const CFStreamError* error) {
 return (error->error & 0x0000FFFF);
}

enum {
  kCFStreamErrorSOCKSSubDomainNone = 0,
  kCFStreamErrorSOCKSSubDomainVersionCode = 1,
  kCFStreamErrorSOCKS4SubDomainResponse = 2,
  kCFStreamErrorSOCKS5SubDomainUserPass = 3,
  kCFStreamErrorSOCKS5SubDomainMethod = 4,
  kCFStreamErrorSOCKS5SubDomainResponse = 5
};



enum {
  kCFStreamErrorSOCKS5BadResponseAddr = 1,
  kCFStreamErrorSOCKS5BadState = 2,
  kCFStreamErrorSOCKSUnknownClientVersion = 3
};


enum {
  kCFStreamErrorSOCKS4RequestFailed = 91,
  kCFStreamErrorSOCKS4IdentdFailed = 92,
  kCFStreamErrorSOCKS4IdConflict = 93
};


enum {
  kSOCKS5NoAcceptableMethod = 0xFF
};
extern const CFStringRef kCFStreamPropertyProxyLocalBypass __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamPropertySocketRemoteHost __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamPropertySocketRemoteNetService __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamPropertySocketExtendedBackgroundIdleMode __attribute__((availability(ios,introduced=9_0)));
extern void
CFStreamCreatePairWithSocketToCFHost(
  CFAllocatorRef _Nullable alloc,
  CFHostRef host,
  SInt32 port,
  CFReadStreamRef _Nullable * _Nullable readStream,
  CFWriteStreamRef _Nullable * _Nullable writeStream) __attribute__((availability(ios,introduced=2_0)));
extern void
CFStreamCreatePairWithSocketToNetService(
  CFAllocatorRef _Nullable alloc,
  CFNetServiceRef service,
  CFReadStreamRef _Nullable * _Nullable readStream,
  CFWriteStreamRef _Nullable * _Nullable writeStream) __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamPropertySSLPeerCertificates __attribute__((availability(ios,introduced=2_0,deprecated=4_0,message="" )));
extern const CFStringRef kCFStreamSSLAllowsExpiredCertificates __attribute__((availability(ios,introduced=2_0,deprecated=4_0,message="" )));
extern const CFStringRef kCFStreamSSLAllowsExpiredRoots __attribute__((availability(ios,introduced=2_0,deprecated=4_0,message="" )));
extern const CFStringRef kCFStreamSSLAllowsAnyRoot __attribute__((availability(ios,introduced=2_0,deprecated=4_0,message="" )));
#pragma clang assume_nonnull end






}



extern "C" {
#pragma clang assume_nonnull begin








extern const SInt32 kCFStreamErrorDomainFTP __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFStreamPropertyFTPUserName __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFStreamPropertyFTPPassword __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFStreamPropertyFTPUsePassiveMode __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFStreamPropertyFTPResourceSize __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFStreamPropertyFTPFetchResourceInfo __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFStreamPropertyFTPFileTransferOffset __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFStreamPropertyFTPAttemptPersistentConnection __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFStreamPropertyFTPProxy __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFStreamPropertyFTPProxyHost __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFStreamPropertyFTPProxyPort __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));





extern const CFStringRef kCFStreamPropertyFTPProxyUser __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));





extern const CFStringRef kCFStreamPropertyFTPProxyPassword __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFFTPResourceMode __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFFTPResourceName __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFFTPResourceOwner __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFFTPResourceGroup __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFFTPResourceLink __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFFTPResourceSize __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFFTPResourceType __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern const CFStringRef kCFFTPResourceModDate __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern CFReadStreamRef
CFReadStreamCreateWithFTPURL(CFAllocatorRef _Nullable alloc, CFURLRef ftpURL) __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern CFIndex
CFFTPCreateParsedResourceListing(CFAllocatorRef _Nullable alloc, const UInt8 *buffer, CFIndex bufferLength, CFDictionaryRef _Nullable * _Nullable parsed) __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
extern CFWriteStreamRef
CFWriteStreamCreateWithFTPURL(CFAllocatorRef _Nullable alloc, CFURLRef ftpURL) __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSessionAPI for ftp requests")));
#pragma clang assume_nonnull end


}







extern "C" {
#pragma clang assume_nonnull begin








extern const CFStringRef kCFHTTPVersion1_0 __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFHTTPVersion1_1 __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFHTTPVersion2_0 __attribute__((availability(ios,introduced=8_0)));
extern const CFStringRef kCFHTTPAuthenticationSchemeBasic __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFHTTPAuthenticationSchemeDigest __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFHTTPAuthenticationSchemeNTLM __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFHTTPAuthenticationSchemeKerberos __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFHTTPAuthenticationSchemeNegotiate __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFHTTPAuthenticationSchemeNegotiate2 __attribute__((availability(ios,introduced=3_0)));
extern const CFStringRef kCFHTTPAuthenticationSchemeXMobileMeAuthToken __attribute__((availability(ios,introduced=4_3)));
typedef struct __CFHTTPMessage* CFHTTPMessageRef;
extern CFTypeID
CFHTTPMessageGetTypeID(void) __attribute__((availability(ios,introduced=2_0)));
extern CFHTTPMessageRef
CFHTTPMessageCreateRequest(CFAllocatorRef _Nullable alloc, CFStringRef requestMethod, CFURLRef url, CFStringRef httpVersion) __attribute__((availability(ios,introduced=2_0)));
extern CFHTTPMessageRef
CFHTTPMessageCreateResponse(
  CFAllocatorRef _Nullable alloc,
  CFIndex statusCode,
  CFStringRef _Nullable statusDescription,
  CFStringRef httpVersion) __attribute__((availability(ios,introduced=2_0)));
extern CFHTTPMessageRef
CFHTTPMessageCreateEmpty(CFAllocatorRef _Nullable alloc, Boolean isRequest) __attribute__((availability(ios,introduced=2_0)));
extern CFHTTPMessageRef
CFHTTPMessageCreateCopy(CFAllocatorRef _Nullable alloc, CFHTTPMessageRef message) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPMessageIsRequest(CFHTTPMessageRef message) __attribute__((availability(ios,introduced=2_0)));
extern CFStringRef
CFHTTPMessageCopyVersion(CFHTTPMessageRef message) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFDataRef
CFHTTPMessageCopyBody(CFHTTPMessageRef message) __attribute__((availability(ios,introduced=2_0)));
extern void
CFHTTPMessageSetBody(CFHTTPMessageRef message, CFDataRef bodyData) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFStringRef
CFHTTPMessageCopyHeaderFieldValue(CFHTTPMessageRef message, CFStringRef headerField) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFDictionaryRef
CFHTTPMessageCopyAllHeaderFields(CFHTTPMessageRef message) __attribute__((availability(ios,introduced=2_0)));
extern void
CFHTTPMessageSetHeaderFieldValue(CFHTTPMessageRef message, CFStringRef headerField, CFStringRef _Nullable value) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPMessageAppendBytes(CFHTTPMessageRef message, const UInt8 *newBytes, CFIndex numBytes) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPMessageIsHeaderComplete(CFHTTPMessageRef message) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFDataRef
CFHTTPMessageCopySerializedMessage(CFHTTPMessageRef message) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFURLRef
CFHTTPMessageCopyRequestURL(CFHTTPMessageRef request) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFStringRef
CFHTTPMessageCopyRequestMethod(CFHTTPMessageRef request) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPMessageAddAuthentication(
  CFHTTPMessageRef request,
  CFHTTPMessageRef _Nullable authenticationFailureResponse,
  CFStringRef username,
  CFStringRef password,
  CFStringRef _Nullable authenticationScheme,
  Boolean forProxy) __attribute__((availability(ios,introduced=2_0)));
extern CFIndex
CFHTTPMessageGetResponseStatusCode(CFHTTPMessageRef response) __attribute__((availability(ios,introduced=2_0)));
extern _Nullable CFStringRef
CFHTTPMessageCopyResponseStatusLine(CFHTTPMessageRef response) __attribute__((availability(ios,introduced=2_0)));
#pragma clang assume_nonnull end



}



extern "C" {
#pragma clang assume_nonnull begin
extern const SInt32 kCFStreamErrorDomainHTTP __attribute__((availability(ios,introduced=2_0)));







typedef int CFStreamErrorHTTP; enum {




  kCFStreamErrorHTTPParseFailure = -1,




  kCFStreamErrorHTTPRedirectionLoop = -2,




  kCFStreamErrorHTTPBadURL = -3
};
extern const CFStringRef kCFStreamPropertyHTTPResponseHeader __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern const CFStringRef kCFStreamPropertyHTTPFinalURL __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern const CFStringRef kCFStreamPropertyHTTPFinalRequest __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern const CFStringRef kCFStreamPropertyHTTPProxy __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern const CFStringRef kCFStreamPropertyHTTPProxyHost __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern const CFStringRef kCFStreamPropertyHTTPProxyPort __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern const CFStringRef kCFStreamPropertyHTTPSProxyHost __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern const CFStringRef kCFStreamPropertyHTTPSProxyPort __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern const CFStringRef kCFStreamPropertyHTTPShouldAutoredirect __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern const CFStringRef kCFStreamPropertyHTTPAttemptPersistentConnection __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern const CFStringRef kCFStreamPropertyHTTPRequestBytesWrittenCount __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern CFReadStreamRef
CFReadStreamCreateForHTTPRequest(CFAllocatorRef _Nullable alloc, CFHTTPMessageRef request) __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
extern CFReadStreamRef
CFReadStreamCreateForStreamedHTTPRequest(CFAllocatorRef _Nullable alloc, CFHTTPMessageRef requestHeaders, CFReadStreamRef requestBody) __attribute__((availability(ios,introduced=2_0,deprecated=9_0,message="" "Use NSURLSession API for http requests")));
#pragma clang assume_nonnull end





}



extern "C" {
#pragma clang assume_nonnull begin








typedef struct _CFHTTPAuthentication* CFHTTPAuthenticationRef;
typedef int CFStreamErrorHTTPAuthentication; enum {





  kCFStreamErrorHTTPAuthenticationTypeUnsupported = -1000,





  kCFStreamErrorHTTPAuthenticationBadUserName = -1001,





  kCFStreamErrorHTTPAuthenticationBadPassword = -1002
};
extern const CFStringRef kCFHTTPAuthenticationUsername __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFHTTPAuthenticationPassword __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFHTTPAuthenticationAccountDomain __attribute__((availability(ios,introduced=2_0)));
extern CFTypeID
CFHTTPAuthenticationGetTypeID(void) __attribute__((availability(ios,introduced=2_0)));
extern CFHTTPAuthenticationRef
CFHTTPAuthenticationCreateFromResponse(CFAllocatorRef _Nullable alloc, CFHTTPMessageRef response) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPAuthenticationIsValid(CFHTTPAuthenticationRef auth, CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPAuthenticationAppliesToRequest(CFHTTPAuthenticationRef auth, CFHTTPMessageRef request) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPAuthenticationRequiresOrderedRequests(CFHTTPAuthenticationRef auth) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPMessageApplyCredentials(
  CFHTTPMessageRef request,
  CFHTTPAuthenticationRef auth,
  CFStringRef _Nullable username,
  CFStringRef _Nullable password,
  CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPMessageApplyCredentialDictionary(
  CFHTTPMessageRef request,
  CFHTTPAuthenticationRef auth,
  CFDictionaryRef dict,
  CFStreamError * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern CFStringRef
CFHTTPAuthenticationCopyRealm(CFHTTPAuthenticationRef auth) __attribute__((availability(ios,introduced=2_0)));
extern CFArrayRef
CFHTTPAuthenticationCopyDomains(CFHTTPAuthenticationRef auth) __attribute__((availability(ios,introduced=2_0)));
extern CFStringRef
CFHTTPAuthenticationCopyMethod(CFHTTPAuthenticationRef auth) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPAuthenticationRequiresUserNameAndPassword(CFHTTPAuthenticationRef auth) __attribute__((availability(ios,introduced=2_0)));
extern Boolean
CFHTTPAuthenticationRequiresAccountDomain(CFHTTPAuthenticationRef auth) __attribute__((availability(ios,introduced=2_0)));
#pragma clang assume_nonnull end



}



extern "C" {
#pragma clang assume_nonnull begin








typedef struct __CFNetDiagnostic* CFNetDiagnosticRef;







typedef int CFNetDiagnosticStatusValues; enum {




  kCFNetDiagnosticNoErr = 0,




  kCFNetDiagnosticErr = -66560L,




  kCFNetDiagnosticConnectionUp = -66559L,
  kCFNetDiagnosticConnectionIndeterminate = -66558L,




  kCFNetDiagnosticConnectionDown = -66557L

} __attribute__((availability(ios,introduced=2_0,deprecated=11_0,message="" )));
typedef CFIndex CFNetDiagnosticStatus __attribute__((availability(ios,introduced=2_0,deprecated=11_0,message="" )));
extern CFNetDiagnosticRef
CFNetDiagnosticCreateWithStreams(CFAllocatorRef _Nullable alloc, CFReadStreamRef _Nullable readStream, CFWriteStreamRef _Nullable writeStream) __attribute__((availability(ios,introduced=2_0,deprecated=11_0,message="" )));
extern CFNetDiagnosticRef
CFNetDiagnosticCreateWithURL(CFAllocatorRef alloc, CFURLRef url) __attribute__((availability(ios,introduced=2_0,deprecated=11_0,message="" )));
extern void
CFNetDiagnosticSetName(CFNetDiagnosticRef details, CFStringRef name) __attribute__((availability(ios,introduced=2_0,deprecated=11_0,message="" )));
extern CFNetDiagnosticStatus
CFNetDiagnosticDiagnoseProblemInteractively(CFNetDiagnosticRef details) __attribute__((availability(ios,introduced=2_0,deprecated=11_0,message="" )));
extern CFNetDiagnosticStatus
CFNetDiagnosticCopyNetworkStatusPassively(CFNetDiagnosticRef details, CFStringRef _Nullable * _Nullable description) __attribute__((availability(ios,introduced=2_0,deprecated=11_0,message="" )));
#pragma clang assume_nonnull end



}







extern "C" {
#pragma clang assume_nonnull begin
extern _Nullable CFDictionaryRef
CFNetworkCopySystemProxySettings(void) __attribute__((availability(ios,introduced=2_0)));
extern CFArrayRef
CFNetworkCopyProxiesForURL(CFURLRef url, CFDictionaryRef proxySettings) __attribute__((availability(ios,introduced=2_0)));
typedef void ( * CFProxyAutoConfigurationResultCallback)(void *client, CFArrayRef proxyList, CFErrorRef _Nullable error);
extern _Nullable CFArrayRef
CFNetworkCopyProxiesForAutoConfigurationScript(CFStringRef proxyAutoConfigurationScript, CFURLRef targetURL, CFErrorRef * _Nullable error) __attribute__((availability(ios,introduced=2_0)));
extern CFRunLoopSourceRef
CFNetworkExecuteProxyAutoConfigurationScript(
  CFStringRef proxyAutoConfigurationScript,
  CFURLRef targetURL,
  CFProxyAutoConfigurationResultCallback cb,
  CFStreamClientContext * clientContext) __attribute__((availability(ios,introduced=2_0)));
extern CFRunLoopSourceRef
CFNetworkExecuteProxyAutoConfigurationURL(
  CFURLRef proxyAutoConfigURL,
  CFURLRef targetURL,
  CFProxyAutoConfigurationResultCallback cb,
  CFStreamClientContext * clientContext) __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFProxyTypeKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFProxyHostNameKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFProxyPortNumberKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFProxyAutoConfigurationURLKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFProxyAutoConfigurationJavaScriptKey __attribute__((availability(ios,introduced=3_0)));
extern const CFStringRef kCFProxyUsernameKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFProxyPasswordKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFProxyTypeNone __attribute__((availability(ios,introduced=2_0)));





extern const CFStringRef kCFProxyTypeHTTP __attribute__((availability(ios,introduced=2_0)));





extern const CFStringRef kCFProxyTypeHTTPS __attribute__((availability(ios,introduced=2_0)));





extern const CFStringRef kCFProxyTypeSOCKS __attribute__((availability(ios,introduced=2_0)));





extern const CFStringRef kCFProxyTypeFTP __attribute__((availability(ios,introduced=2_0)));





extern const CFStringRef kCFProxyTypeAutoConfigurationURL __attribute__((availability(ios,introduced=2_0)));





extern const CFStringRef kCFProxyTypeAutoConfigurationJavaScript __attribute__((availability(ios,introduced=3_0)));





extern const CFStringRef kCFProxyAutoConfigurationHTTPResponseKey __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFNetworkProxiesExceptionsList __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesExcludeSimpleHostnames __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesFTPEnable __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesFTPPassive __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesFTPPort __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesFTPProxy __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesGopherEnable __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesGopherPort __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesGopherProxy __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesHTTPEnable __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFNetworkProxiesHTTPPort __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFNetworkProxiesHTTPProxy __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFNetworkProxiesHTTPSEnable __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesHTTPSPort __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesHTTPSProxy __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesRTSPEnable __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesRTSPPort __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesRTSPProxy __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesSOCKSEnable __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesSOCKSPort __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesSOCKSProxy __attribute__((availability(ios,introduced=NA)));
extern const CFStringRef kCFNetworkProxiesProxyAutoConfigEnable __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFNetworkProxiesProxyAutoConfigURLString __attribute__((availability(ios,introduced=2_0)));
extern const CFStringRef kCFNetworkProxiesProxyAutoConfigJavaScript __attribute__((availability(ios,introduced=3_0)));
extern const CFStringRef kCFNetworkProxiesProxyAutoDiscoveryEnable __attribute__((availability(ios,introduced=NA)));
#pragma clang assume_nonnull end


}








// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin





extern "C" NSErrorDomain const NSURLErrorDomain;





extern "C" NSString * const NSURLErrorFailingURLErrorKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






extern "C" NSString * const NSURLErrorFailingURLStringErrorKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






extern "C" NSString * const NSErrorFailingURLStringKey __attribute__((availability(macos,introduced=10.0,deprecated=10.6,message="Use NSURLErrorFailingURLStringErrorKey instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=4.0,message="Use NSURLErrorFailingURLStringErrorKey instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSURLErrorFailingURLStringErrorKey instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSURLErrorFailingURLStringErrorKey instead")));





extern "C" NSString * const NSURLErrorFailingURLPeerTrustErrorKey __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






extern "C" NSString * const NSURLErrorBackgroundTaskCancelledReasonKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






enum
{
    NSURLErrorCancelledReasonUserForceQuitApplication = 0,
    NSURLErrorCancelledReasonBackgroundUpdatesDisabled = 1,
    NSURLErrorCancelledReasonInsufficientSystemResources __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 2,

} __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





extern "C" NSErrorUserInfoKey const NSURLErrorNetworkUnavailableReasonKey __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));







typedef NSInteger NSURLErrorNetworkUnavailableReason; enum
{
    NSURLErrorNetworkUnavailableReasonCellular = 0,
    NSURLErrorNetworkUnavailableReasonExpensive = 1,
    NSURLErrorNetworkUnavailableReasonConstrained = 2,
} __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));





enum
{
    NSURLErrorUnknown = -1,
    NSURLErrorCancelled = -999,
    NSURLErrorBadURL = -1000,
    NSURLErrorTimedOut = -1001,
    NSURLErrorUnsupportedURL = -1002,
    NSURLErrorCannotFindHost = -1003,
    NSURLErrorCannotConnectToHost = -1004,
    NSURLErrorNetworkConnectionLost = -1005,
    NSURLErrorDNSLookupFailed = -1006,
    NSURLErrorHTTPTooManyRedirects = -1007,
    NSURLErrorResourceUnavailable = -1008,
    NSURLErrorNotConnectedToInternet = -1009,
    NSURLErrorRedirectToNonExistentLocation = -1010,
    NSURLErrorBadServerResponse = -1011,
    NSURLErrorUserCancelledAuthentication = -1012,
    NSURLErrorUserAuthenticationRequired = -1013,
    NSURLErrorZeroByteResource = -1014,
    NSURLErrorCannotDecodeRawData = -1015,
    NSURLErrorCannotDecodeContentData = -1016,
    NSURLErrorCannotParseResponse = -1017,
    NSURLErrorAppTransportSecurityRequiresSecureConnection __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = -1022,
    NSURLErrorFileDoesNotExist = -1100,
    NSURLErrorFileIsDirectory = -1101,
    NSURLErrorNoPermissionsToReadFile = -1102,
    NSURLErrorDataLengthExceedsMaximum __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = -1103,
    NSURLErrorFileOutsideSafeArea __attribute__((availability(macos,introduced=10.12.4))) __attribute__((availability(ios,introduced=10.3))) __attribute__((availability(watchos,introduced=3.2))) __attribute__((availability(tvos,introduced=10.2))) = -1104,


    NSURLErrorSecureConnectionFailed = -1200,
    NSURLErrorServerCertificateHasBadDate = -1201,
    NSURLErrorServerCertificateUntrusted = -1202,
    NSURLErrorServerCertificateHasUnknownRoot = -1203,
    NSURLErrorServerCertificateNotYetValid = -1204,
    NSURLErrorClientCertificateRejected = -1205,
    NSURLErrorClientCertificateRequired = -1206,
    NSURLErrorCannotLoadFromNetwork = -2000,


    NSURLErrorCannotCreateFile = -3000,
    NSURLErrorCannotOpenFile = -3001,
    NSURLErrorCannotCloseFile = -3002,
    NSURLErrorCannotWriteToFile = -3003,
    NSURLErrorCannotRemoveFile = -3004,
    NSURLErrorCannotMoveFile = -3005,
    NSURLErrorDownloadDecodingFailedMidStream = -3006,
    NSURLErrorDownloadDecodingFailedToComplete =-3007,

    NSURLErrorInternationalRoamingOff __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = -1018,
    NSURLErrorCallIsActive __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = -1019,
    NSURLErrorDataNotAllowed __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = -1020,
    NSURLErrorRequestBodyStreamExhausted __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = -1021,

    NSURLErrorBackgroundSessionRequiresSharedContainer __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = -995,
    NSURLErrorBackgroundSessionInUseByAnotherProcess __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = -996,
    NSURLErrorBackgroundSessionWasDisconnected __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))= -997,
};
#pragma clang assume_nonnull end

// @class NSCachedURLResponse;
#ifndef _REWRITER_typedef_NSCachedURLResponse
#define _REWRITER_typedef_NSCachedURLResponse
typedef struct objc_object NSCachedURLResponse;
typedef struct {} _objc_exc_NSCachedURLResponse;
#endif

// @class NSError;
#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

// @class NSMutableURLRequest;
#ifndef _REWRITER_typedef_NSMutableURLRequest
#define _REWRITER_typedef_NSMutableURLRequest
typedef struct objc_object NSMutableURLRequest;
typedef struct {} _objc_exc_NSMutableURLRequest;
#endif

// @class NSURLAuthenticationChallenge;
#ifndef _REWRITER_typedef_NSURLAuthenticationChallenge
#define _REWRITER_typedef_NSURLAuthenticationChallenge
typedef struct objc_object NSURLAuthenticationChallenge;
typedef struct {} _objc_exc_NSURLAuthenticationChallenge;
#endif

// @class NSURLConnection;
#ifndef _REWRITER_typedef_NSURLConnection
#define _REWRITER_typedef_NSURLConnection
typedef struct objc_object NSURLConnection;
typedef struct {} _objc_exc_NSURLConnection;
#endif

// @class NSURLProtocol;
#ifndef _REWRITER_typedef_NSURLProtocol
#define _REWRITER_typedef_NSURLProtocol
typedef struct objc_object NSURLProtocol;
typedef struct {} _objc_exc_NSURLProtocol;
#endif

// @class NSURLProtocolInternal;
#ifndef _REWRITER_typedef_NSURLProtocolInternal
#define _REWRITER_typedef_NSURLProtocolInternal
typedef struct objc_object NSURLProtocolInternal;
typedef struct {} _objc_exc_NSURLProtocolInternal;
#endif

// @class NSURLRequest;
#ifndef _REWRITER_typedef_NSURLRequest
#define _REWRITER_typedef_NSURLRequest
typedef struct objc_object NSURLRequest;
typedef struct {} _objc_exc_NSURLRequest;
#endif

// @class NSURLResponse;
#ifndef _REWRITER_typedef_NSURLResponse
#define _REWRITER_typedef_NSURLResponse
typedef struct objc_object NSURLResponse;
typedef struct {} _objc_exc_NSURLResponse;
#endif

// @class NSURLSessionTask;
#ifndef _REWRITER_typedef_NSURLSessionTask
#define _REWRITER_typedef_NSURLSessionTask
typedef struct objc_object NSURLSessionTask;
typedef struct {} _objc_exc_NSURLSessionTask;
#endif


#pragma clang assume_nonnull begin
// @protocol NSURLProtocolClient <NSObject>
// - (void)URLProtocol:(NSURLProtocol *)protocol wasRedirectedToRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse;
// - (void)URLProtocol:(NSURLProtocol *)protocol cachedResponseIsValid:(NSCachedURLResponse *)cachedResponse;
// - (void)URLProtocol:(NSURLProtocol *)protocol didReceiveResponse:(NSURLResponse *)response cacheStoragePolicy:(NSURLCacheStoragePolicy)policy;
// - (void)URLProtocol:(NSURLProtocol *)protocol didLoadData:(NSData *)data;







// - (void)URLProtocolDidFinishLoading:(NSURLProtocol *)protocol;
// - (void)URLProtocol:(NSURLProtocol *)protocol didFailWithError:(NSError *)error;
// - (void)URLProtocol:(NSURLProtocol *)protocol didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge;







// - (void)URLProtocol:(NSURLProtocol *)protocol didCancelAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge;

/* @end */


#ifndef _REWRITER_typedef_NSURLProtocol
#define _REWRITER_typedef_NSURLProtocol
typedef struct objc_object NSURLProtocol;
typedef struct {} _objc_exc_NSURLProtocol;
#endif

struct NSURLProtocol_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURLProtocolInternal *_internal;
};

// - (instancetype)initWithRequest:(NSURLRequest *)request cachedResponse:(nullable NSCachedURLResponse *)cachedResponse client:(nullable id <NSURLProtocolClient>)client __attribute__((objc_designated_initializer));





// @property (nullable, readonly, retain) id <NSURLProtocolClient> client;





// @property (readonly, copy) NSURLRequest *request;





// @property (nullable, readonly, copy) NSCachedURLResponse *cachedResponse;
// + (BOOL)canInitWithRequest:(NSURLRequest *)request;
// + (NSURLRequest *)canonicalRequestForRequest:(NSURLRequest *)request;
// + (BOOL)requestIsCacheEquivalent:(NSURLRequest *)a toRequest:(NSURLRequest *)b;







// - (void)startLoading;
// - (void)stopLoading;
// + (nullable id)propertyForKey:(NSString *)key inRequest:(NSURLRequest *)request;
// + (void)setProperty:(id)value forKey:(NSString *)key inRequest:(NSMutableURLRequest *)request;
// + (void)removePropertyForKey:(NSString *)key inRequest:(NSMutableURLRequest *)request;
// + (BOOL)registerClass:(Class)protocolClass;
// + (void)unregisterClass:(Class)protocolClass;

/* @end */



// @interface NSURLProtocol (NSURLSessionTaskAdditions)
// + (BOOL)canInitWithTask:(NSURLSessionTask *)task __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (instancetype)initWithTask:(NSURLSessionTask *)task cachedResponse:(nullable NSCachedURLResponse *)cachedResponse client:(nullable id <NSURLProtocolClient>)client __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, readonly, copy) NSURLSessionTask *task __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
/* @end */

#pragma clang assume_nonnull end
// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

// @class NSInputStream;
#ifndef _REWRITER_typedef_NSInputStream
#define _REWRITER_typedef_NSInputStream
typedef struct objc_object NSInputStream;
typedef struct {} _objc_exc_NSInputStream;
#endif

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @class NSURL;
#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

// @class NSURLRequestInternal;
#ifndef _REWRITER_typedef_NSURLRequestInternal
#define _REWRITER_typedef_NSURLRequestInternal
typedef struct objc_object NSURLRequestInternal;
typedef struct {} _objc_exc_NSURLRequestInternal;
#endif


#pragma clang assume_nonnull begin
typedef NSUInteger NSURLRequestCachePolicy; enum
{
    NSURLRequestUseProtocolCachePolicy = 0,

    NSURLRequestReloadIgnoringLocalCacheData = 1,
    NSURLRequestReloadIgnoringLocalAndRemoteCacheData = 4,
    NSURLRequestReloadIgnoringCacheData = NSURLRequestReloadIgnoringLocalCacheData,

    NSURLRequestReturnCacheDataElseLoad = 2,
    NSURLRequestReturnCacheDataDontLoad = 3,

    NSURLRequestReloadRevalidatingCacheData = 5,
};
typedef NSUInteger NSURLRequestNetworkServiceType; enum
{
    NSURLNetworkServiceTypeDefault = 0,
    NSURLNetworkServiceTypeVoIP __attribute__((availability(macos,introduced=10.7,deprecated=10.15,message="Use PushKit for VoIP control purposes"))) __attribute__((availability(ios,introduced=4.0,deprecated=13.0,message="Use PushKit for VoIP control purposes"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Use PushKit for VoIP control purposes"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Use PushKit for VoIP control purposes"))) = 1,
    NSURLNetworkServiceTypeVideo = 2,
    NSURLNetworkServiceTypeBackground = 3,
    NSURLNetworkServiceTypeVoice = 4,
    NSURLNetworkServiceTypeResponsiveData = 6,
    NSURLNetworkServiceTypeAVStreaming __attribute__((availability(macosx,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 8 ,
    NSURLNetworkServiceTypeResponsiveAV __attribute__((availability(macosx,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 9,
    NSURLNetworkServiceTypeCallSignaling __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0))) = 11,
};

#ifndef _REWRITER_typedef_NSURLRequest
#define _REWRITER_typedef_NSURLRequest
typedef struct objc_object NSURLRequest;
typedef struct {} _objc_exc_NSURLRequest;
#endif

struct NSURLRequest_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURLRequestInternal *_internal;
};

// + (instancetype)requestWithURL:(NSURL *)URL;






@property (class, readonly) BOOL supportsSecureCoding;
// + (instancetype)requestWithURL:(NSURL *)URL cachePolicy:(NSURLRequestCachePolicy)cachePolicy timeoutInterval:(NSTimeInterval)timeoutInterval;
// - (instancetype)initWithURL:(NSURL *)URL;
// - (instancetype)initWithURL:(NSURL *)URL cachePolicy:(NSURLRequestCachePolicy)cachePolicy timeoutInterval:(NSTimeInterval)timeoutInterval __attribute__((objc_designated_initializer));





// @property (nullable, readonly, copy) NSURL *URL;





// @property (readonly) NSURLRequestCachePolicy cachePolicy;
// @property (readonly) NSTimeInterval timeoutInterval;
// @property (nullable, readonly, copy) NSURL *mainDocumentURL;







// @property (readonly) NSURLRequestNetworkServiceType networkServiceType __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// @property (readonly) BOOL allowsCellularAccess __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// @property (readonly) BOOL allowsExpensiveNetworkAccess __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));







// @property (readonly) BOOL allowsConstrainedNetworkAccess __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

/* @end */


#ifndef _REWRITER_typedef_NSMutableURLRequest
#define _REWRITER_typedef_NSMutableURLRequest
typedef struct objc_object NSMutableURLRequest;
typedef struct {} _objc_exc_NSMutableURLRequest;
#endif

struct NSMutableURLRequest_IMPL {
	struct NSURLRequest_IMPL NSURLRequest_IVARS;
};





// @property (nullable, copy) NSURL *URL;




// @property NSURLRequestCachePolicy cachePolicy;
// @property NSTimeInterval timeoutInterval;
// @property (nullable, copy) NSURL *mainDocumentURL;






// @property NSURLRequestNetworkServiceType networkServiceType __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// @property BOOL allowsCellularAccess __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// @property BOOL allowsExpensiveNetworkAccess __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));







// @property BOOL allowsConstrainedNetworkAccess __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

/* @end */

// @interface NSURLRequest (NSHTTPURLRequest)





// @property (nullable, readonly, copy) NSString *HTTPMethod;







// @property (nullable, readonly, copy) NSDictionary<NSString *, NSString *> *allHTTPHeaderFields;
// - (nullable NSString *)valueForHTTPHeaderField:(NSString *)field;







// @property (nullable, readonly, copy) NSData *HTTPBody;
// @property (nullable, readonly, retain) NSInputStream *HTTPBodyStream;
// @property (readonly) BOOL HTTPShouldHandleCookies;
// @property (readonly) BOOL HTTPShouldUsePipelining __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

// @interface NSMutableURLRequest (NSMutableHTTPURLRequest)




// @property (copy) NSString *HTTPMethod;
// @property (nullable, copy) NSDictionary<NSString *, NSString *> *allHTTPHeaderFields;
// - (void)setValue:(nullable NSString *)value forHTTPHeaderField:(NSString *)field;
// - (void)addValue:(NSString *)value forHTTPHeaderField:(NSString *)field;






// @property (nullable, copy) NSData *HTTPBody;
// @property (nullable, retain) NSInputStream *HTTPBodyStream;
// @property BOOL HTTPShouldHandleCookies;
// @property BOOL HTTPShouldUsePipelining __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end
// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @class NSURL;
#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

// @class NSURLRequest;
#ifndef _REWRITER_typedef_NSURLRequest
#define _REWRITER_typedef_NSURLRequest
typedef struct objc_object NSURLRequest;
typedef struct {} _objc_exc_NSURLRequest;
#endif

// @class NSURLResponseInternal;
#ifndef _REWRITER_typedef_NSURLResponseInternal
#define _REWRITER_typedef_NSURLResponseInternal
typedef struct objc_object NSURLResponseInternal;
typedef struct {} _objc_exc_NSURLResponseInternal;
#endif


#pragma clang assume_nonnull begin

#ifndef _REWRITER_typedef_NSURLResponse
#define _REWRITER_typedef_NSURLResponse
typedef struct objc_object NSURLResponse;
typedef struct {} _objc_exc_NSURLResponse;
#endif

struct NSURLResponse_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURLResponseInternal *_internal;
};

// - (instancetype)initWithURL:(NSURL *)URL MIMEType:(nullable NSString *)MIMEType expectedContentLength:(NSInteger)length textEncodingName:(nullable NSString *)name __attribute__((objc_designated_initializer));





// @property (nullable, readonly, copy) NSURL *URL;
// @property (nullable, readonly, copy) NSString *MIMEType;
// @property (readonly) long long expectedContentLength;
// @property (nullable, readonly, copy) NSString *textEncodingName;
// @property (nullable, readonly, copy) NSString *suggestedFilename;

/* @end */




// @class NSHTTPURLResponseInternal;
#ifndef _REWRITER_typedef_NSHTTPURLResponseInternal
#define _REWRITER_typedef_NSHTTPURLResponseInternal
typedef struct objc_object NSHTTPURLResponseInternal;
typedef struct {} _objc_exc_NSHTTPURLResponseInternal;
#endif


#ifndef _REWRITER_typedef_NSHTTPURLResponse
#define _REWRITER_typedef_NSHTTPURLResponse
typedef struct objc_object NSHTTPURLResponse;
typedef struct {} _objc_exc_NSHTTPURLResponse;
#endif

struct NSHTTPURLResponse_IMPL {
	struct NSURLResponse_IMPL NSURLResponse_IVARS;
	NSHTTPURLResponseInternal *_httpInternal;
};

// - (nullable instancetype)initWithURL:(NSURL *)url statusCode:(NSInteger)statusCode HTTPVersion:(nullable NSString *)HTTPVersion headerFields:(nullable NSDictionary<NSString *, NSString *> *)headerFields __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// @property (readonly) NSInteger statusCode;
// @property (readonly, copy) NSDictionary *allHeaderFields;
// - (nullable NSString *)valueForHTTPHeaderField:(NSString *)field __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// + (NSString *)localizedStringForStatusCode:(NSInteger)statusCode;

/* @end */

#pragma clang assume_nonnull end







// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSMutableDictionary
#define _REWRITER_typedef_NSMutableDictionary
typedef struct objc_object NSMutableDictionary;
typedef struct {} _objc_exc_NSMutableDictionary;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif


#pragma clang assume_nonnull begin


extern "C" NSString * const NSGlobalDomain;

extern "C" NSString * const NSArgumentDomain;

extern "C" NSString * const NSRegistrationDomain;

#ifndef _REWRITER_typedef_NSUserDefaults
#define _REWRITER_typedef_NSUserDefaults
typedef struct objc_object NSUserDefaults;
typedef struct {} _objc_exc_NSUserDefaults;
#endif

struct NSUserDefaults_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _kvo_;
	CFStringRef _identifier_;
	CFStringRef _container_;
	void *_reserved[2];
};





@property (class, readonly, strong) NSUserDefaults *standardUserDefaults;


// + (void)resetStandardUserDefaults;


// - (instancetype)init;


// - (nullable instancetype)initWithSuiteName:(nullable NSString *)suitename __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((objc_designated_initializer));


// - (nullable id)initWithUser:(NSString *)username __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Use -init instead"))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Use -init instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use -init instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use -init instead")));




// - (nullable id)objectForKey:(NSString *)defaultName;




// - (void)setObject:(nullable id)value forKey:(NSString *)defaultName;


// - (void)removeObjectForKey:(NSString *)defaultName;


// - (nullable NSString *)stringForKey:(NSString *)defaultName;


// - (nullable NSArray *)arrayForKey:(NSString *)defaultName;

// - (nullable NSDictionary<NSString *, id> *)dictionaryForKey:(NSString *)defaultName;

// - (nullable NSData *)dataForKey:(NSString *)defaultName;

// - (nullable NSArray<NSString *> *)stringArrayForKey:(NSString *)defaultName;



// - (NSInteger)integerForKey:(NSString *)defaultName;

// - (float)floatForKey:(NSString *)defaultName;

// - (double)doubleForKey:(NSString *)defaultName;




// - (BOOL)boolForKey:(NSString *)defaultName;



// - (nullable NSURL *)URLForKey:(NSString *)defaultName __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// - (void)setInteger:(NSInteger)value forKey:(NSString *)defaultName;

// - (void)setFloat:(float)value forKey:(NSString *)defaultName;

// - (void)setDouble:(double)value forKey:(NSString *)defaultName;

// - (void)setBool:(BOOL)value forKey:(NSString *)defaultName;

// - (void)setURL:(nullable NSURL *)url forKey:(NSString *)defaultName __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// - (void)registerDefaults:(NSDictionary<NSString *, id> *)registrationDictionary;




// - (void)addSuiteNamed:(NSString *)suiteName;



// - (void)removeSuiteNamed:(NSString *)suiteName;




// - (NSDictionary<NSString *, id> *)dictionaryRepresentation;




// @property (readonly, copy) NSArray<NSString *> *volatileDomainNames;
// - (NSDictionary<NSString *, id> *)volatileDomainForName:(NSString *)domainName;
// - (void)setVolatileDomain:(NSDictionary<NSString *, id> *)domain forName:(NSString *)domainName;
// - (void)removeVolatileDomainForName:(NSString *)domainName;


// - (NSArray *)persistentDomainNames __attribute__((availability(macos,introduced=10.0,deprecated=10.9,message="Not recommended"))) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message="Not recommended"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not recommended"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not recommended")));


// - (nullable NSDictionary<NSString *, id> *)persistentDomainForName:(NSString *)domainName;

// - (void)setPersistentDomain:(NSDictionary<NSString *, id> *)domain forName:(NSString *)domainName;

// - (void)removePersistentDomainForName:(NSString *)domainName;
// - (BOOL)synchronize;


// - (BOOL)objectIsForcedForKey:(NSString *)key;


// - (BOOL)objectIsForcedForKey:(NSString *)key inDomain:(NSString *)domain;

/* @end */





extern "C" NSNotificationName const NSUserDefaultsSizeLimitExceededNotification __attribute__((availability(ios,introduced=9.3))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));






extern "C" NSNotificationName const NSUbiquitousUserDefaultsNoCloudAccountNotification __attribute__((availability(ios,introduced=9.3))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));




extern "C" NSNotificationName const NSUbiquitousUserDefaultsDidChangeAccountsNotification __attribute__((availability(ios,introduced=9.3))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));




extern "C" NSNotificationName const NSUbiquitousUserDefaultsCompletedInitialSyncNotification __attribute__((availability(ios,introduced=9.3))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));




extern "C" NSNotificationName const NSUserDefaultsDidChangeNotification;
#pragma clang assume_nonnull end







// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin

typedef NSString *NSValueTransformerName __attribute__((swift_wrapper(struct)));

extern "C" NSValueTransformerName const NSNegateBooleanTransformerName __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSValueTransformerName const NSIsNilTransformerName __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSValueTransformerName const NSIsNotNilTransformerName __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSValueTransformerName const NSUnarchiveFromDataTransformerName __attribute__((availability(macos,introduced=10.3,deprecated=10.14,replacement="NSSecureUnarchiveFromDataTransformerName"))) __attribute__((availability(ios,introduced=3.0,deprecated=12.0,replacement="NSSecureUnarchiveFromDataTransformerName"))) __attribute__((availability(watchos,introduced=2.0,deprecated=5.0,replacement="NSSecureUnarchiveFromDataTransformerName"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,replacement="NSSecureUnarchiveFromDataTransformerName")));
extern "C" NSValueTransformerName const NSKeyedUnarchiveFromDataTransformerName __attribute__((availability(macos,introduced=10.3,deprecated=10.14,replacement="NSSecureUnarchiveFromDataTransformerName"))) __attribute__((availability(ios,introduced=3.0,deprecated=12.0,replacement="NSSecureUnarchiveFromDataTransformerName"))) __attribute__((availability(watchos,introduced=2.0,deprecated=5.0,replacement="NSSecureUnarchiveFromDataTransformerName"))) __attribute__((availability(tvos,introduced=9.0,deprecated=12.0,replacement="NSSecureUnarchiveFromDataTransformerName")));
extern "C" NSValueTransformerName const NSSecureUnarchiveFromDataTransformerName __attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)));

__attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSValueTransformer
#define _REWRITER_typedef_NSValueTransformer
typedef struct objc_object NSValueTransformer;
typedef struct {} _objc_exc_NSValueTransformer;
#endif

struct NSValueTransformer_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};




// + (void)setValueTransformer:(nullable NSValueTransformer *)transformer forName:(NSValueTransformerName)name;
// + (nullable NSValueTransformer *)valueTransformerForName:(NSValueTransformerName)name;
// + (NSArray<NSValueTransformerName> *)valueTransformerNames;


// + (Class)transformedValueClass;
// + (BOOL)allowsReverseTransformation;

// - (nullable id)transformedValue:(nullable id)value;
// - (nullable id)reverseTransformedValue:(nullable id)value;

/* @end */



__attribute__((availability(macos,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,introduced=12.0)))

#ifndef _REWRITER_typedef_NSSecureUnarchiveFromDataTransformer
#define _REWRITER_typedef_NSSecureUnarchiveFromDataTransformer
typedef struct objc_object NSSecureUnarchiveFromDataTransformer;
typedef struct {} _objc_exc_NSSecureUnarchiveFromDataTransformer;
#endif

struct NSSecureUnarchiveFromDataTransformer_IMPL {
	struct NSValueTransformer_IMPL NSValueTransformer_IVARS;
};







@property (class, readonly, copy) NSArray<Class> *allowedTopLevelClasses;

/* @end */

#pragma clang assume_nonnull end







// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

#ifndef _REWRITER_typedef_NSInputStream
#define _REWRITER_typedef_NSInputStream
typedef struct objc_object NSInputStream;
typedef struct {} _objc_exc_NSInputStream;
#endif

#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif

// @protocol NSXMLParserDelegate;

#pragma clang assume_nonnull begin

__attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))
typedef NSUInteger NSXMLParserExternalEntityResolvingPolicy; enum {
    NSXMLParserResolveExternalEntitiesNever = 0,
    NSXMLParserResolveExternalEntitiesNoNetwork,
    NSXMLParserResolveExternalEntitiesSameOriginOnly,
    NSXMLParserResolveExternalEntitiesAlways
};


#ifndef _REWRITER_typedef_NSXMLParser
#define _REWRITER_typedef_NSXMLParser
typedef struct objc_object NSXMLParser;
typedef struct {} _objc_exc_NSXMLParser;
#endif

struct NSXMLParser_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _reserved0;
	id _delegate;
	id _reserved1;
	id _reserved2;
	id _reserved3;
};

// - (nullable instancetype)initWithContentsOfURL:(NSURL *)url;
// - (instancetype)initWithData:(NSData *)data __attribute__((objc_designated_initializer));
// - (instancetype)initWithStream:(NSInputStream *)stream __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// @property (nullable, assign) id <NSXMLParserDelegate> delegate;

// @property BOOL shouldProcessNamespaces;
// @property BOOL shouldReportNamespacePrefixes;


// @property NSXMLParserExternalEntityResolvingPolicy externalEntityResolvingPolicy __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (nullable, copy) NSSet<NSURL *> *allowedExternalEntityURLs __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (BOOL)parse;
// - (void)abortParsing;

// @property (nullable, readonly, copy) NSError *parserError;



// @property BOOL shouldResolveExternalEntities;

/* @end */



// @interface NSXMLParser (NSXMLParserLocatorAdditions)
// @property (nullable, readonly, copy) NSString *publicID;
// @property (nullable, readonly, copy) NSString *systemID;
// @property (readonly) NSInteger lineNumber;
// @property (readonly) NSInteger columnNumber;

/* @end */

// @protocol NSXMLParserDelegate <NSObject>
/* @optional */


// - (void)parserDidStartDocument:(NSXMLParser *)parser;

// - (void)parserDidEndDocument:(NSXMLParser *)parser;



// - (void)parser:(NSXMLParser *)parser foundNotationDeclarationWithName:(NSString *)name publicID:(nullable NSString *)publicID systemID:(nullable NSString *)systemID;

// - (void)parser:(NSXMLParser *)parser foundUnparsedEntityDeclarationWithName:(NSString *)name publicID:(nullable NSString *)publicID systemID:(nullable NSString *)systemID notationName:(nullable NSString *)notationName;

// - (void)parser:(NSXMLParser *)parser foundAttributeDeclarationWithName:(NSString *)attributeName forElement:(NSString *)elementName type:(nullable NSString *)type defaultValue:(nullable NSString *)defaultValue;

// - (void)parser:(NSXMLParser *)parser foundElementDeclarationWithName:(NSString *)elementName model:(NSString *)model;

// - (void)parser:(NSXMLParser *)parser foundInternalEntityDeclarationWithName:(NSString *)name value:(nullable NSString *)value;

// - (void)parser:(NSXMLParser *)parser foundExternalEntityDeclarationWithName:(NSString *)name publicID:(nullable NSString *)publicID systemID:(nullable NSString *)systemID;

// - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(nullable NSString *)namespaceURI qualifiedName:(nullable NSString *)qName attributes:(NSDictionary<NSString *, NSString *> *)attributeDict;







// - (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(nullable NSString *)namespaceURI qualifiedName:(nullable NSString *)qName;


// - (void)parser:(NSXMLParser *)parser didStartMappingPrefix:(NSString *)prefix toURI:(NSString *)namespaceURI;




// - (void)parser:(NSXMLParser *)parser didEndMappingPrefix:(NSString *)prefix;


// - (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string;


// - (void)parser:(NSXMLParser *)parser foundIgnorableWhitespace:(NSString *)whitespaceString;


// - (void)parser:(NSXMLParser *)parser foundProcessingInstructionWithTarget:(NSString *)target data:(nullable NSString *)data;


// - (void)parser:(NSXMLParser *)parser foundComment:(NSString *)comment;


// - (void)parser:(NSXMLParser *)parser foundCDATA:(NSData *)CDATABlock;


// - (nullable NSData *)parser:(NSXMLParser *)parser resolveExternalEntityName:(NSString *)name systemID:(nullable NSString *)systemID;


// - (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError;


// - (void)parser:(NSXMLParser *)parser validationErrorOccurred:(NSError *)validationError;

/* @end */


extern "C" NSErrorDomain const NSXMLParserErrorDomain __attribute__((availability(macos,introduced=10.3))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


typedef NSInteger NSXMLParserError; enum {
    NSXMLParserInternalError = 1,
    NSXMLParserOutOfMemoryError = 2,
    NSXMLParserDocumentStartError = 3,
    NSXMLParserEmptyDocumentError = 4,
    NSXMLParserPrematureDocumentEndError = 5,
    NSXMLParserInvalidHexCharacterRefError = 6,
    NSXMLParserInvalidDecimalCharacterRefError = 7,
    NSXMLParserInvalidCharacterRefError = 8,
    NSXMLParserInvalidCharacterError = 9,
    NSXMLParserCharacterRefAtEOFError = 10,
    NSXMLParserCharacterRefInPrologError = 11,
    NSXMLParserCharacterRefInEpilogError = 12,
    NSXMLParserCharacterRefInDTDError = 13,
    NSXMLParserEntityRefAtEOFError = 14,
    NSXMLParserEntityRefInPrologError = 15,
    NSXMLParserEntityRefInEpilogError = 16,
    NSXMLParserEntityRefInDTDError = 17,
    NSXMLParserParsedEntityRefAtEOFError = 18,
    NSXMLParserParsedEntityRefInPrologError = 19,
    NSXMLParserParsedEntityRefInEpilogError = 20,
    NSXMLParserParsedEntityRefInInternalSubsetError = 21,
    NSXMLParserEntityReferenceWithoutNameError = 22,
    NSXMLParserEntityReferenceMissingSemiError = 23,
    NSXMLParserParsedEntityRefNoNameError = 24,
    NSXMLParserParsedEntityRefMissingSemiError = 25,
    NSXMLParserUndeclaredEntityError = 26,
    NSXMLParserUnparsedEntityError = 28,
    NSXMLParserEntityIsExternalError = 29,
    NSXMLParserEntityIsParameterError = 30,
    NSXMLParserUnknownEncodingError = 31,
    NSXMLParserEncodingNotSupportedError = 32,
    NSXMLParserStringNotStartedError = 33,
    NSXMLParserStringNotClosedError = 34,
    NSXMLParserNamespaceDeclarationError = 35,
    NSXMLParserEntityNotStartedError = 36,
    NSXMLParserEntityNotFinishedError = 37,
    NSXMLParserLessThanSymbolInAttributeError = 38,
    NSXMLParserAttributeNotStartedError = 39,
    NSXMLParserAttributeNotFinishedError = 40,
    NSXMLParserAttributeHasNoValueError = 41,
    NSXMLParserAttributeRedefinedError = 42,
    NSXMLParserLiteralNotStartedError = 43,
    NSXMLParserLiteralNotFinishedError = 44,
    NSXMLParserCommentNotFinishedError = 45,
    NSXMLParserProcessingInstructionNotStartedError = 46,
    NSXMLParserProcessingInstructionNotFinishedError = 47,
    NSXMLParserNotationNotStartedError = 48,
    NSXMLParserNotationNotFinishedError = 49,
    NSXMLParserAttributeListNotStartedError = 50,
    NSXMLParserAttributeListNotFinishedError = 51,
    NSXMLParserMixedContentDeclNotStartedError = 52,
    NSXMLParserMixedContentDeclNotFinishedError = 53,
    NSXMLParserElementContentDeclNotStartedError = 54,
    NSXMLParserElementContentDeclNotFinishedError = 55,
    NSXMLParserXMLDeclNotStartedError = 56,
    NSXMLParserXMLDeclNotFinishedError = 57,
    NSXMLParserConditionalSectionNotStartedError = 58,
    NSXMLParserConditionalSectionNotFinishedError = 59,
    NSXMLParserExternalSubsetNotFinishedError = 60,
    NSXMLParserDOCTYPEDeclNotFinishedError = 61,
    NSXMLParserMisplacedCDATAEndStringError = 62,
    NSXMLParserCDATANotFinishedError = 63,
    NSXMLParserMisplacedXMLDeclarationError = 64,
    NSXMLParserSpaceRequiredError = 65,
    NSXMLParserSeparatorRequiredError = 66,
    NSXMLParserNMTOKENRequiredError = 67,
    NSXMLParserNAMERequiredError = 68,
    NSXMLParserPCDATARequiredError = 69,
    NSXMLParserURIRequiredError = 70,
    NSXMLParserPublicIdentifierRequiredError = 71,
    NSXMLParserLTRequiredError = 72,
    NSXMLParserGTRequiredError = 73,
    NSXMLParserLTSlashRequiredError = 74,
    NSXMLParserEqualExpectedError = 75,
    NSXMLParserTagNameMismatchError = 76,
    NSXMLParserUnfinishedTagError = 77,
    NSXMLParserStandaloneValueError = 78,
    NSXMLParserInvalidEncodingNameError = 79,
    NSXMLParserCommentContainsDoubleHyphenError = 80,
    NSXMLParserInvalidEncodingError = 81,
    NSXMLParserExternalStandaloneEntityError = 82,
    NSXMLParserInvalidConditionalSectionError = 83,
    NSXMLParserEntityValueRequiredError = 84,
    NSXMLParserNotWellBalancedError = 85,
    NSXMLParserExtraContentError = 86,
    NSXMLParserInvalidCharacterInEntityError = 87,
    NSXMLParserParsedEntityRefInInternalError = 88,
    NSXMLParserEntityRefLoopError = 89,
    NSXMLParserEntityBoundaryError = 90,
    NSXMLParserInvalidURIError = 91,
    NSXMLParserURIFragmentError = 92,
    NSXMLParserNoDTDError = 94,
    NSXMLParserDelegateAbortedParseError = 512
};
#pragma clang assume_nonnull end





extern "C" {

typedef uid_t au_id_t;
typedef pid_t au_asid_t;
typedef u_int16_t au_event_t;
typedef u_int16_t au_emod_t;
typedef u_int32_t au_class_t;
typedef u_int64_t au_asflgs_t __attribute__ ((aligned(8)));
typedef unsigned char au_ctlmode_t;

struct au_tid {
 dev_t port;
 u_int32_t machine;
};
typedef struct au_tid au_tid_t;

struct au_tid_addr {
 dev_t at_port;
 u_int32_t at_type;
 u_int32_t at_addr[4];
};
typedef struct au_tid_addr au_tid_addr_t;

struct au_mask {
 unsigned int am_success;
 unsigned int am_failure;
};
typedef struct au_mask au_mask_t;

struct auditinfo {
 au_id_t ai_auid;
 au_mask_t ai_mask;
 au_tid_t ai_termid;
 au_asid_t ai_asid;
};
typedef struct auditinfo auditinfo_t;

struct auditinfo_addr {
 au_id_t ai_auid;
 au_mask_t ai_mask;
 au_tid_addr_t ai_termid;
 au_asid_t ai_asid;
 au_asflgs_t ai_flags;
};
typedef struct auditinfo_addr auditinfo_addr_t;

struct auditpinfo {
 pid_t ap_pid;
 au_id_t ap_auid;
 au_mask_t ap_mask;
 au_tid_t ap_termid;
 au_asid_t ap_asid;
};
typedef struct auditpinfo auditpinfo_t;

struct auditpinfo_addr {
 pid_t ap_pid;
 au_id_t ap_auid;
 au_mask_t ap_mask;
 au_tid_addr_t ap_termid;
 au_asid_t ap_asid;
 au_asflgs_t ap_flags;
};
typedef struct auditpinfo_addr auditpinfo_addr_t;

struct au_session {
 auditinfo_addr_t *as_aia_p;
 au_mask_t as_mask;
};
typedef struct au_session au_session_t;

struct au_expire_after {
 time_t age;
 size_t size;
 unsigned char op_type;
};
typedef struct au_expire_after au_expire_after_t;




typedef struct au_token token_t;
struct au_qctrl {
 int aq_hiwater;


 int aq_lowater;


 int aq_bufsz;
 int aq_delay;
 int aq_minfree;
};
typedef struct au_qctrl au_qctrl_t;




struct audit_stat {
 unsigned int as_version;
 unsigned int as_numevent;
 int as_generated;
 int as_nonattrib;
 int as_kernel;
 int as_audit;
 int as_auditctl;
 int as_enqueue;
 int as_written;
 int as_wblocked;
 int as_rblocked;
 int as_dropped;
 int as_totalsize;
 unsigned int as_memused;
};
typedef struct audit_stat au_stat_t;




struct audit_fstat {
 u_int64_t af_filesz;
 u_int64_t af_currsz;
};
typedef struct audit_fstat au_fstat_t;




struct au_evclass_map {
 au_event_t ec_number;
 au_class_t ec_class;
};
typedef struct au_evclass_map au_evclass_map_t;





int audit(const void *, int);
int auditon(int, void *, int);
int auditctl(const char *);
int getauid(au_id_t *);
int setauid(const au_id_t *);
int getaudit_addr(struct auditinfo_addr *, int);
int setaudit_addr(const struct auditinfo_addr *, int);
int getaudit(struct auditinfo *)
__attribute__((availability(ios,introduced=2.0,deprecated=6.0)));

int setaudit(const struct auditinfo *)
__attribute__((availability(ios,introduced=2.0,deprecated=6.0)));
mach_port_name_t audit_session_self(void);
au_asid_t audit_session_join(mach_port_name_t port);
int audit_session_port(au_asid_t asid, mach_port_name_t *portname);




}
// @class NSMutableDictionary;
#ifndef _REWRITER_typedef_NSMutableDictionary
#define _REWRITER_typedef_NSMutableDictionary
typedef struct objc_object NSMutableDictionary;
typedef struct {} _objc_exc_NSMutableDictionary;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSOperationQueue
#define _REWRITER_typedef_NSOperationQueue
typedef struct objc_object NSOperationQueue;
typedef struct {} _objc_exc_NSOperationQueue;
#endif

#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif

#ifndef _REWRITER_typedef_NSLock
#define _REWRITER_typedef_NSLock
typedef struct objc_object NSLock;
typedef struct {} _objc_exc_NSLock;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

// @class NSXPCConnection;
#ifndef _REWRITER_typedef_NSXPCConnection
#define _REWRITER_typedef_NSXPCConnection
typedef struct objc_object NSXPCConnection;
typedef struct {} _objc_exc_NSXPCConnection;
#endif

#ifndef _REWRITER_typedef_NSXPCListener
#define _REWRITER_typedef_NSXPCListener
typedef struct objc_object NSXPCListener;
typedef struct {} _objc_exc_NSXPCListener;
#endif

#ifndef _REWRITER_typedef_NSXPCInterface
#define _REWRITER_typedef_NSXPCInterface
typedef struct objc_object NSXPCInterface;
typedef struct {} _objc_exc_NSXPCInterface;
#endif

#ifndef _REWRITER_typedef_NSXPCListenerEndpoint
#define _REWRITER_typedef_NSXPCListenerEndpoint
typedef struct objc_object NSXPCListenerEndpoint;
typedef struct {} _objc_exc_NSXPCListenerEndpoint;
#endif

// @protocol NSXPCListenerDelegate;

#pragma clang assume_nonnull begin


// @protocol NSXPCProxyCreating


// - (id)remoteObjectProxy;


// - (id)remoteObjectProxyWithErrorHandler:(void (^)(NSError *error))handler;

/* @optional */


// - (id)synchronousRemoteObjectProxyWithErrorHandler:(void (^)(NSError *error))handler __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */





typedef NSUInteger NSXPCConnectionOptions; enum {

    NSXPCConnectionPrivileged = (1 << 12UL)
} __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


__attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSXPCConnection
#define _REWRITER_typedef_NSXPCConnection
typedef struct objc_object NSXPCConnection;
typedef struct {} _objc_exc_NSXPCConnection;
#endif

struct NSXPCConnection_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_xconnection;
	id _repliesExpected;
	dispatch_queue_t _userQueue;
	uint32_t _state;
	uint32_t _state2;
	void (*_interruptionHandler)();
	void (*_invalidationHandler)();
	id _exportInfo;
	id _repliesRequested;
	id _importInfo;
	id _otherInfo;
	id _reserved1;
	NSXPCInterface *_remoteObjectInterface;
	NSString *_serviceName;
	NSXPCListenerEndpoint *_endpoint;
	id _eCache;
	id _dCache;
};



// - (instancetype)initWithServiceName:(NSString *)serviceName __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
// @property (nullable, readonly, copy) NSString *serviceName;


// - (instancetype)initWithMachServiceName:(NSString *)name options:(NSXPCConnectionOptions)options __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));


// - (instancetype)initWithListenerEndpoint:(NSXPCListenerEndpoint *)endpoint;
// @property (readonly, retain) NSXPCListenerEndpoint *endpoint;


// @property (nullable, retain) NSXPCInterface *exportedInterface;


// @property (nullable, retain) id exportedObject;


// @property (nullable, retain) NSXPCInterface *remoteObjectInterface;


// @property (readonly, retain) id remoteObjectProxy;

// - (id)remoteObjectProxyWithErrorHandler:(void (^)(NSError *error))handler;


// - (id)synchronousRemoteObjectProxyWithErrorHandler:(void (^)(NSError *error))handler __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (nullable, copy) void (^interruptionHandler)(void);




// @property (nullable, copy) void (^invalidationHandler)(void);


// - (void)resume;


// - (void)suspend;


// - (void)invalidate;


// @property (readonly) au_asid_t auditSessionIdentifier;
// @property (readonly) pid_t processIdentifier;
// @property (readonly) uid_t effectiveUserIdentifier;
// @property (readonly) gid_t effectiveGroupIdentifier;


// + (nullable NSXPCConnection *)currentConnection __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// - (void)scheduleSendBarrierBlock:(void (^)(void))block __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));

/* @end */




__attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSXPCListener
#define _REWRITER_typedef_NSXPCListener
typedef struct objc_object NSXPCListener;
typedef struct {} _objc_exc_NSXPCListener;
#endif

struct NSXPCListener_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_xconnection;
	dispatch_queue_t _userQueue;
	void *reserved0;
	id _delegate;
	NSString *_serviceName;
	uint64_t _state;
	id _reserved1;
	id _reserved2;
};



// + (NSXPCListener *)serviceListener;


// + (NSXPCListener *)anonymousListener;


// - (instancetype)initWithMachServiceName:(NSString *)name __attribute__((objc_designated_initializer)) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));


// @property (nullable, weak) id <NSXPCListenerDelegate> delegate;


// @property (readonly, retain) NSXPCListenerEndpoint *endpoint;


// - (void)resume;


// - (void)suspend;


// - (void)invalidate;

/* @end */


// @protocol NSXPCListenerDelegate <NSObject>
/* @optional */

// - (BOOL)listener:(NSXPCListener *)listener shouldAcceptNewConnection:(NSXPCConnection *)newConnection;

/* @end */





__attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSXPCInterface
#define _REWRITER_typedef_NSXPCInterface
typedef struct objc_object NSXPCInterface;
typedef struct {} _objc_exc_NSXPCInterface;
#endif

struct NSXPCInterface_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	Protocol *_protocol;
	void *_reserved2;
	id _reserved1;
};



// + (NSXPCInterface *)interfaceWithProtocol:(Protocol *)protocol;


// @property (assign) Protocol *protocol;



// - (void)setClasses:(NSSet<Class> *)classes forSelector:(SEL)sel argumentIndex:(NSUInteger)arg ofReply:(BOOL)ofReply;
// - (NSSet<Class> *)classesForSelector:(SEL)sel argumentIndex:(NSUInteger)arg ofReply:(BOOL)ofReply;


// - (void)setInterface:(NSXPCInterface *)ifc forSelector:(SEL)sel argumentIndex:(NSUInteger)arg ofReply:(BOOL)ofReply;
// - (nullable NSXPCInterface *)interfaceForSelector:(SEL)sel argumentIndex:(NSUInteger)arg ofReply:(BOOL)ofReply;






/* @end */





__attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSXPCListenerEndpoint
#define _REWRITER_typedef_NSXPCListenerEndpoint
typedef struct objc_object NSXPCListenerEndpoint;
typedef struct {} _objc_exc_NSXPCListenerEndpoint;
#endif

struct NSXPCListenerEndpoint_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	void *_internal;
};

/* @end */





__attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSXPCCoder
#define _REWRITER_typedef_NSXPCCoder
typedef struct objc_object NSXPCCoder;
typedef struct {} _objc_exc_NSXPCCoder;
#endif

struct NSXPCCoder_IMPL {
	struct NSCoder_IMPL NSCoder_IVARS;
	id _userInfo;
	id _reserved1;
};

// @property (nullable, retain) id <NSObject> userInfo;


// @property (nullable, readonly, strong) NSXPCConnection *connection __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

/* @end */

#pragma clang assume_nonnull end


enum {

    NSFileNoSuchFileError = 4,
    NSFileLockingError = 255,
    NSFileReadUnknownError = 256,
    NSFileReadNoPermissionError = 257,
    NSFileReadInvalidFileNameError = 258,
    NSFileReadCorruptFileError = 259,
    NSFileReadNoSuchFileError = 260,
    NSFileReadInapplicableStringEncodingError = 261,
    NSFileReadUnsupportedSchemeError = 262,
    NSFileReadTooLargeError __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 263,
    NSFileReadUnknownStringEncodingError __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 264,
    NSFileWriteUnknownError = 512,
    NSFileWriteNoPermissionError = 513,
    NSFileWriteInvalidFileNameError = 514,
    NSFileWriteFileExistsError __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 516,
    NSFileWriteInapplicableStringEncodingError = 517,
    NSFileWriteUnsupportedSchemeError = 518,
    NSFileWriteOutOfSpaceError = 640,
    NSFileWriteVolumeReadOnlyError __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 642,


    NSFileManagerUnmountUnknownError __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 768,
    NSFileManagerUnmountBusyError __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 769,


    NSKeyValueValidationError = 1024,
    NSFormattingError = 2048,
    NSUserCancelledError = 3072,
    NSFeatureUnsupportedError __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3328,


    NSExecutableNotLoadableError __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3584,
    NSExecutableArchitectureMismatchError __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3585,
    NSExecutableRuntimeMismatchError __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3586,
    NSExecutableLoadError __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3587,
    NSExecutableLinkError __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3588,


    NSFileErrorMinimum = 0,
    NSFileErrorMaximum = 1023,

    NSValidationErrorMinimum = 1024,
    NSValidationErrorMaximum = 2047,

    NSExecutableErrorMinimum __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3584,
    NSExecutableErrorMaximum __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3839,

    NSFormattingErrorMinimum = 2048,
    NSFormattingErrorMaximum = 2559,

    NSPropertyListReadCorruptError __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3840,
    NSPropertyListReadUnknownVersionError __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3841,
    NSPropertyListReadStreamError __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3842,
    NSPropertyListWriteStreamError __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3851,
    NSPropertyListWriteInvalidError __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3852,

    NSPropertyListErrorMinimum __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3840,
    NSPropertyListErrorMaximum __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4095,

    NSXPCConnectionInterrupted __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4097,
    NSXPCConnectionInvalid __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4099,
    NSXPCConnectionReplyInvalid __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4101,

    NSXPCConnectionErrorMinimum __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4096,
    NSXPCConnectionErrorMaximum __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4224,

    NSUbiquitousFileUnavailableError __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4353,
    NSUbiquitousFileNotUploadedDueToQuotaError __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4354,
    NSUbiquitousFileUbiquityServerNotAvailable __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4355,

    NSUbiquitousFileErrorMinimum __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4352,
    NSUbiquitousFileErrorMaximum __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4607,

    NSUserActivityHandoffFailedError __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4608,
    NSUserActivityConnectionUnavailableError __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4609,
    NSUserActivityRemoteApplicationTimedOutError __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4610,
    NSUserActivityHandoffUserInfoTooLargeError __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4611,

    NSUserActivityErrorMinimum __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4608,
    NSUserActivityErrorMaximum __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4863,

    NSCoderReadCorruptError __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4864,
    NSCoderValueNotFoundError __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4865,
    NSCoderInvalidValueError __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0))) = 4866,
    NSCoderErrorMinimum __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4864,
    NSCoderErrorMaximum __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4991,

    NSBundleErrorMinimum __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 4992,
    NSBundleErrorMaximum __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 5119,

    NSBundleOnDemandResourceOutOfSpaceError __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable))) = 4992,
    NSBundleOnDemandResourceExceededMaximumSizeError __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable))) = 4993,
    NSBundleOnDemandResourceInvalidTagError __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable))) = 4994,

    NSCloudSharingNetworkFailureError __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 5120,
    NSCloudSharingQuotaExceededError __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 5121,
    NSCloudSharingTooManyParticipantsError __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 5122,
    NSCloudSharingConflictError __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 5123,
    NSCloudSharingNoPermissionError __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 5124,
    NSCloudSharingOtherError __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 5375,

    NSCloudSharingErrorMinimum __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 5120,
    NSCloudSharingErrorMaximum __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) = 5375,

    NSCompressionFailedError __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) = 5376,
    NSDecompressionFailedError __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) = 5377,

    NSCompressionErrorMinimum __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) = 5376,
    NSCompressionErrorMaximum __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0))) = 5503,

};











#pragma clang assume_nonnull begin

typedef NSUInteger NSByteCountFormatterUnits; enum {

    NSByteCountFormatterUseDefault = 0,

    NSByteCountFormatterUseBytes = 1UL << 0,
    NSByteCountFormatterUseKB = 1UL << 1,
    NSByteCountFormatterUseMB = 1UL << 2,
    NSByteCountFormatterUseGB = 1UL << 3,
    NSByteCountFormatterUseTB = 1UL << 4,
    NSByteCountFormatterUsePB = 1UL << 5,
    NSByteCountFormatterUseEB = 1UL << 6,
    NSByteCountFormatterUseZB = 1UL << 7,
    NSByteCountFormatterUseYBOrHigher = 0x0FFUL << 8,

    NSByteCountFormatterUseAll = 0x0FFFFUL
};

typedef NSInteger NSByteCountFormatterCountStyle; enum {

    NSByteCountFormatterCountStyleFile = 0,

    NSByteCountFormatterCountStyleMemory = 1,

    NSByteCountFormatterCountStyleDecimal = 2,
    NSByteCountFormatterCountStyleBinary = 3
};


__attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSByteCountFormatter
#define _REWRITER_typedef_NSByteCountFormatter
typedef struct objc_object NSByteCountFormatter;
typedef struct {} _objc_exc_NSByteCountFormatter;
#endif

struct NSByteCountFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	unsigned int _allowedUnits;
	char _countStyle;
	BOOL _allowsNonnumericFormatting;
	BOOL _includesUnit;
	BOOL _includesCount;
	BOOL _includesActualByteCount;
	BOOL _adaptive;
	BOOL _zeroPadsFractionDigits;
	int _formattingContext;
	int _reserved[5];
};




// + (NSString *)stringFromByteCount:(long long)byteCount countStyle:(NSByteCountFormatterCountStyle)countStyle;



// - (NSString *)stringFromByteCount:(long long)byteCount;





// + (NSString *)stringFromMeasurement:(NSMeasurement<NSUnitInformationStorage *> *)measurement countStyle:(NSByteCountFormatterCountStyle)countStyle __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));






// - (NSString *)stringFromMeasurement:(NSMeasurement<NSUnitInformationStorage *> *)measurement __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));






// - (nullable NSString *)stringForObjectValue:(nullable id)obj;



// @property NSByteCountFormatterUnits allowedUnits;



// @property NSByteCountFormatterCountStyle countStyle;



// @property BOOL allowsNonnumericFormatting;



// @property BOOL includesUnit;
// @property BOOL includesCount;



// @property BOOL includesActualByteCount;



// @property (getter=isAdaptive) BOOL adaptive;



// @property BOOL zeroPadsFractionDigits;



// @property NSFormattingContext formattingContext __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end






// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @protocol NSCacheDelegate;

#pragma clang assume_nonnull begin

__attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSCache
#define _REWRITER_typedef_NSCache
typedef struct objc_object NSCache;
typedef struct {} _objc_exc_NSCache;
#endif

struct NSCache_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _delegate;
	void *_private[5];
	void *_reserved;
};


// @property (copy) NSString *name;

// @property (nullable, assign) id<NSCacheDelegate> delegate;

// - (nullable ObjectType)objectForKey:(KeyType)key;
// - (void)setObject:(ObjectType)obj forKey:(KeyType)key;
// - (void)setObject:(ObjectType)obj forKey:(KeyType)key cost:(NSUInteger)g;
// - (void)removeObjectForKey:(KeyType)key;

// - (void)removeAllObjects;

// @property NSUInteger totalCostLimit;
// @property NSUInteger countLimit;
// @property BOOL evictsObjectsWithDiscardedContent;

/* @end */


// @protocol NSCacheDelegate <NSObject>
/* @optional */
// - (void)cache:(NSCache *)cache willEvictObject:(id)obj;
/* @end */

#pragma clang assume_nonnull end




// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin



__attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSPredicate
#define _REWRITER_typedef_NSPredicate
typedef struct objc_object NSPredicate;
typedef struct {} _objc_exc_NSPredicate;
#endif

	struct _predicateFlags {
	unsigned int _evaluationBlocked : 1;
	unsigned int _reservedPredicateFlags : 31;
	} ;
struct NSPredicate_IMPL {
	struct NSObject_IMPL NSObject_IVARS;

	struct _predicateFlags _predicateFlags;
	uint32_t reserved;
};



// + (NSPredicate *)predicateWithFormat:(NSString *)predicateFormat argumentArray:(nullable NSArray *)arguments;
// + (NSPredicate *)predicateWithFormat:(NSString *)predicateFormat, ...;
// + (NSPredicate *)predicateWithFormat:(NSString *)predicateFormat arguments:(va_list)argList;

// + (nullable NSPredicate *)predicateFromMetadataQueryString:(NSString *)queryString __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

// + (NSPredicate *)predicateWithValue:(BOOL)value;

// + (NSPredicate*)predicateWithBlock:(BOOL (^)(id _Nullable evaluatedObject, NSDictionary<NSString *, id> * _Nullable bindings))block __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSString *predicateFormat;

// - (instancetype)predicateWithSubstitutionVariables:(NSDictionary<NSString *, id> *)variables;

// - (BOOL)evaluateWithObject:(nullable id)object;

// - (BOOL)evaluateWithObject:(nullable id)object substitutionVariables:(nullable NSDictionary<NSString *, id> *)bindings __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (void)allowEvaluation __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSArray<ObjectType> (NSPredicateSupport)
// - (NSArray<ObjectType> *)filteredArrayUsingPredicate:(NSPredicate *)predicate;
/* @end */


// @interface NSMutableArray<ObjectType> (NSPredicateSupport)
// - (void)filterUsingPredicate:(NSPredicate *)predicate;
/* @end */



// @interface NSSet<ObjectType> (NSPredicateSupport)
// - (NSSet<ObjectType> *)filteredSetUsingPredicate:(NSPredicate *)predicate __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
/* @end */


// @interface NSMutableSet<ObjectType> (NSPredicateSupport)
// - (void)filterUsingPredicate:(NSPredicate *)predicate __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
/* @end */


// @interface NSOrderedSet<ObjectType> (NSPredicateSupport)

// - (NSOrderedSet<ObjectType> *)filteredOrderedSetUsingPredicate:(NSPredicate *)p __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSMutableOrderedSet<ObjectType> (NSPredicateSupport)

// - (void)filterUsingPredicate:(NSPredicate *)p __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end

#pragma clang assume_nonnull begin


typedef NSUInteger NSComparisonPredicateOptions; enum {
    NSCaseInsensitivePredicateOption = 0x01,
    NSDiacriticInsensitivePredicateOption = 0x02,
    NSNormalizedPredicateOption __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 0x04,
};


typedef NSUInteger NSComparisonPredicateModifier; enum {
    NSDirectPredicateModifier = 0,
    NSAllPredicateModifier,
    NSAnyPredicateModifier
};



typedef NSUInteger NSPredicateOperatorType; enum {
    NSLessThanPredicateOperatorType = 0,
    NSLessThanOrEqualToPredicateOperatorType,
    NSGreaterThanPredicateOperatorType,
    NSGreaterThanOrEqualToPredicateOperatorType,
    NSEqualToPredicateOperatorType,
    NSNotEqualToPredicateOperatorType,
    NSMatchesPredicateOperatorType,
    NSLikePredicateOperatorType,
    NSBeginsWithPredicateOperatorType,
    NSEndsWithPredicateOperatorType,
    NSInPredicateOperatorType,
    NSCustomSelectorPredicateOperatorType,
    NSContainsPredicateOperatorType __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 99,
    NSBetweenPredicateOperatorType __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))
};

// @class NSPredicateOperator;
#ifndef _REWRITER_typedef_NSPredicateOperator
#define _REWRITER_typedef_NSPredicateOperator
typedef struct objc_object NSPredicateOperator;
typedef struct {} _objc_exc_NSPredicateOperator;
#endif

// @class NSExpression;
#ifndef _REWRITER_typedef_NSExpression
#define _REWRITER_typedef_NSExpression
typedef struct objc_object NSExpression;
typedef struct {} _objc_exc_NSExpression;
#endif




__attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSComparisonPredicate
#define _REWRITER_typedef_NSComparisonPredicate
typedef struct objc_object NSComparisonPredicate;
typedef struct {} _objc_exc_NSComparisonPredicate;
#endif

struct NSComparisonPredicate_IMPL {
	struct NSPredicate_IMPL NSPredicate_IVARS;
	void *_reserved2;
	NSPredicateOperator *_predicateOperator;
	NSExpression *_lhs;
	NSExpression *_rhs;
};


// + (NSComparisonPredicate *)predicateWithLeftExpression:(NSExpression *)lhs rightExpression:(NSExpression *)rhs modifier:(NSComparisonPredicateModifier)modifier type:(NSPredicateOperatorType)type options:(NSComparisonPredicateOptions)options;
// + (NSComparisonPredicate *)predicateWithLeftExpression:(NSExpression *)lhs rightExpression:(NSExpression *)rhs customSelector:(SEL)selector;

// - (instancetype)initWithLeftExpression:(NSExpression *)lhs rightExpression:(NSExpression *)rhs modifier:(NSComparisonPredicateModifier)modifier type:(NSPredicateOperatorType)type options:(NSComparisonPredicateOptions)options __attribute__((objc_designated_initializer));
// - (instancetype)initWithLeftExpression:(NSExpression *)lhs rightExpression:(NSExpression *)rhs customSelector:(SEL)selector __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

// @property (readonly) NSPredicateOperatorType predicateOperatorType;
// @property (readonly) NSComparisonPredicateModifier comparisonPredicateModifier;
// @property (readonly, retain) NSExpression *leftExpression;
// @property (readonly, retain) NSExpression *rightExpression;
// @property (nullable, readonly) SEL customSelector;
// @property (readonly) NSComparisonPredicateOptions options;

/* @end */

#pragma clang assume_nonnull end






// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif


#pragma clang assume_nonnull begin



typedef NSUInteger NSCompoundPredicateType; enum {
    NSNotPredicateType = 0,
    NSAndPredicateType,
    NSOrPredicateType,
};

__attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSCompoundPredicate
#define _REWRITER_typedef_NSCompoundPredicate
typedef struct objc_object NSCompoundPredicate;
typedef struct {} _objc_exc_NSCompoundPredicate;
#endif

struct NSCompoundPredicate_IMPL {
	struct NSPredicate_IMPL NSPredicate_IVARS;
	void *_reserved2;
	NSUInteger _type;
	NSArray *_subpredicates;
};


// - (instancetype)initWithType:(NSCompoundPredicateType)type subpredicates:(NSArray<NSPredicate *> *)subpredicates __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));

// @property (readonly) NSCompoundPredicateType compoundPredicateType;
// @property (readonly, copy) NSArray *subpredicates;


// + (NSCompoundPredicate *)andPredicateWithSubpredicates:(NSArray<NSPredicate *> *)subpredicates __attribute__((swift_name("init(andPredicateWithSubpredicates:)")));
// + (NSCompoundPredicate *)orPredicateWithSubpredicates:(NSArray<NSPredicate *> *)subpredicates __attribute__((swift_name("init(orPredicateWithSubpredicates:)")));
// + (NSCompoundPredicate *)notPredicateWithSubpredicate:(NSPredicate *)predicate __attribute__((swift_name("init(notPredicateWithSubpredicate:)")));

/* @end */

#pragma clang assume_nonnull end








#pragma clang assume_nonnull begin

__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))
typedef NSInteger NSDateComponentsFormatterUnitsStyle; enum {
    NSDateComponentsFormatterUnitsStylePositional = 0,
    NSDateComponentsFormatterUnitsStyleAbbreviated,
    NSDateComponentsFormatterUnitsStyleShort,
    NSDateComponentsFormatterUnitsStyleFull,
    NSDateComponentsFormatterUnitsStyleSpellOut,
    NSDateComponentsFormatterUnitsStyleBrief __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))
};

__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))
typedef NSUInteger NSDateComponentsFormatterZeroFormattingBehavior; enum {
    NSDateComponentsFormatterZeroFormattingBehaviorNone = (0),
    NSDateComponentsFormatterZeroFormattingBehaviorDefault = (1 << 0),

    NSDateComponentsFormatterZeroFormattingBehaviorDropLeading = (1 << 1),
    NSDateComponentsFormatterZeroFormattingBehaviorDropMiddle = (1 << 2),
    NSDateComponentsFormatterZeroFormattingBehaviorDropTrailing = (1 << 3),
    NSDateComponentsFormatterZeroFormattingBehaviorDropAll = (NSDateComponentsFormatterZeroFormattingBehaviorDropLeading | NSDateComponentsFormatterZeroFormattingBehaviorDropMiddle | NSDateComponentsFormatterZeroFormattingBehaviorDropTrailing),

    NSDateComponentsFormatterZeroFormattingBehaviorPad = (1 << 16),
};



__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSDateComponentsFormatter
#define _REWRITER_typedef_NSDateComponentsFormatter
typedef struct objc_object NSDateComponentsFormatter;
typedef struct {} _objc_exc_NSDateComponentsFormatter;
#endif

struct NSDateComponentsFormatter_IMPL {
	struct NSFormatter_IMPL NSFormatter_IVARS;
	pthread_mutex_t _lock;
	void *_fmt;
	void *_unused;
	NSString *_fmtLocaleIdent;
	NSCalendar *_calendar;
	NSDate *_referenceDate;
	NSNumberFormatter *_unitFormatter;
	NSCalendarUnit _allowedUnits;
	NSFormattingContext _formattingContext;
	NSDateComponentsFormatterUnitsStyle _unitsStyle;
	NSDateComponentsFormatterZeroFormattingBehavior _zeroFormattingBehavior;
	NSInteger _maximumUnitCount;
	BOOL _allowsFractionalUnits;
	BOOL _collapsesLargestUnit;
	BOOL _includesApproximationPhrase;
	BOOL _includesTimeRemainingPhrase;
	void *_reserved;
};




// - (nullable NSString *)stringForObjectValue:(nullable id)obj;



// - (nullable NSString *)stringFromDateComponents:(NSDateComponents *)components;







// - (nullable NSString *)stringFromDate:(NSDate *)startDate toDate:(NSDate *)endDate;



// - (nullable NSString *)stringFromTimeInterval:(NSTimeInterval)ti;


// + (nullable NSString *)localizedStringFromDateComponents:(NSDateComponents *)components unitsStyle:(NSDateComponentsFormatterUnitsStyle) unitsStyle;



// @property NSDateComponentsFormatterUnitsStyle unitsStyle;
// @property NSCalendarUnit allowedUnits;





// @property NSDateComponentsFormatterZeroFormattingBehavior zeroFormattingBehavior;



// @property (nullable, copy) NSCalendar *calendar;



// @property (nullable, copy) NSDate *referenceDate __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));



// @property BOOL allowsFractionalUnits;
// @property NSInteger maximumUnitCount;



// @property BOOL collapsesLargestUnit;



// @property BOOL includesApproximationPhrase;



// @property BOOL includesTimeRemainingPhrase;




// @property NSFormattingContext formattingContext;



// - (BOOL)getObjectValue:(out id _Nullable * _Nullable)obj forString:(NSString *)string errorDescription:(out NSString * _Nullable * _Nullable)error;

/* @end */

#pragma clang assume_nonnull end






// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

// @class NSMutableDictionary;
#ifndef _REWRITER_typedef_NSMutableDictionary
#define _REWRITER_typedef_NSMutableDictionary
typedef struct objc_object NSMutableDictionary;
typedef struct {} _objc_exc_NSMutableDictionary;
#endif

// @class NSPredicate;
#ifndef _REWRITER_typedef_NSPredicate
#define _REWRITER_typedef_NSPredicate
typedef struct objc_object NSPredicate;
typedef struct {} _objc_exc_NSPredicate;
#endif


#pragma clang assume_nonnull begin



typedef NSUInteger NSExpressionType; enum {
    NSConstantValueExpressionType = 0,
    NSEvaluatedObjectExpressionType,
    NSVariableExpressionType,
    NSKeyPathExpressionType,
    NSFunctionExpressionType,
    NSUnionSetExpressionType __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))),
    NSIntersectSetExpressionType __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))),
    NSMinusSetExpressionType __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))),
    NSSubqueryExpressionType __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 13,
    NSAggregateExpressionType __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 14,
    NSAnyKeyExpressionType __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 15,
    NSBlockExpressionType = 19,
    NSConditionalExpressionType __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 20

};

__attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSExpression
#define _REWRITER_typedef_NSExpression
typedef struct objc_object NSExpression;
typedef struct {} _objc_exc_NSExpression;
#endif

	struct _expressionFlags {
	unsigned int _evaluationBlocked : 1;
	unsigned int _reservedExpressionFlags : 31;
	} ;
struct NSExpression_IMPL {
	struct NSObject_IMPL NSObject_IVARS;

	struct _expressionFlags _expressionFlags;
	uint32_t reserved;
	NSExpressionType _expressionType;
};


// + (NSExpression *)expressionWithFormat:(NSString *)expressionFormat argumentArray:(NSArray *)arguments __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSExpression *)expressionWithFormat:(NSString *)expressionFormat, ... __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSExpression *)expressionWithFormat:(NSString *)expressionFormat arguments:(va_list)argList __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// + (NSExpression *)expressionForConstantValue:(nullable id)obj;
// + (NSExpression *)expressionForEvaluatedObject;
// + (NSExpression *)expressionForVariable:(NSString *)string;
// + (NSExpression *)expressionForKeyPath:(NSString *)keyPath;
// + (NSExpression *)expressionForFunction:(NSString *)name arguments:(NSArray *)parameters;
// + (NSExpression *)expressionForAggregate:(NSArray<NSExpression *> *)subexpressions __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSExpression *)expressionForUnionSet:(NSExpression *)left with:(NSExpression *)right __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSExpression *)expressionForIntersectSet:(NSExpression *)left with:(NSExpression *)right __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSExpression *)expressionForMinusSet:(NSExpression *)left with:(NSExpression *)right __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSExpression *)expressionForSubquery:(NSExpression *)expression usingIteratorVariable:(NSString *)variable predicate:(NSPredicate *)predicate __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSExpression *)expressionForFunction:(NSExpression *)target selectorName:(NSString *)name arguments:(nullable NSArray *)parameters __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSExpression *)expressionForAnyKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSExpression *)expressionForBlock:(id (^)(id _Nullable evaluatedObject, NSArray<NSExpression *> *expressions, NSMutableDictionary * _Nullable context))block arguments:(nullable NSArray<NSExpression *> *)arguments __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// + (NSExpression *)expressionForConditional:(NSPredicate *)predicate trueExpression:(NSExpression *)trueExpression falseExpression:(NSExpression *)falseExpression __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// - (instancetype)initWithExpressionType:(NSExpressionType)type __attribute__((objc_designated_initializer));
// - (nullable instancetype)initWithCoder:(NSCoder *)coder __attribute__((objc_designated_initializer));


// @property (readonly) NSExpressionType expressionType;
// @property (nullable, readonly, retain) id constantValue;
// @property (readonly, copy) NSString *keyPath;
// @property (readonly, copy) NSString *function;
// @property (readonly, copy) NSString *variable;
// @property (readonly, copy) NSExpression *operand;
// @property (nullable, readonly, copy) NSArray<NSExpression *> *arguments;

// @property (readonly, retain) id collection __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSPredicate *predicate __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSExpression *leftExpression __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSExpression *rightExpression __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// @property (readonly, copy) NSExpression *trueExpression __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly, copy) NSExpression *falseExpression __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) id (^expressionBlock)(id _Nullable, NSArray<NSExpression *> *, NSMutableDictionary * _Nullable) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// - (nullable id)expressionValueWithObject:(nullable id)object context:(nullable NSMutableDictionary *)context;

// - (void)allowEvaluation __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin

__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSExtensionContext
#define _REWRITER_typedef_NSExtensionContext
typedef struct objc_object NSExtensionContext;
typedef struct {} _objc_exc_NSExtensionContext;
#endif

struct NSExtensionContext_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};



// @property(readonly, copy, nonatomic) NSArray *inputItems;


// - (void)completeRequestReturningItems:(nullable NSArray *)items completionHandler:(void(^ _Nullable)(BOOL expired))completionHandler;


// - (void)cancelRequestWithError:(NSError *)error;


// - (void)openURL:(NSURL *)URL completionHandler:(void (^ _Nullable)(BOOL success))completionHandler;

/* @end */



extern "C" NSString * _Null_unspecified const NSExtensionItemsAndErrorsKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSString * _Null_unspecified const NSExtensionHostWillEnterForegroundNotification __attribute__((availability(ios,introduced=8.2))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));


extern "C" NSString * _Null_unspecified const NSExtensionHostDidEnterBackgroundNotification __attribute__((availability(ios,introduced=8.2))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));


extern "C" NSString * _Null_unspecified const NSExtensionHostWillResignActiveNotification __attribute__((availability(ios,introduced=8.2))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));


extern "C" NSString * _Null_unspecified const NSExtensionHostDidBecomeActiveNotification __attribute__((availability(ios,introduced=8.2))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));
#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin

__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSExtensionItem
#define _REWRITER_typedef_NSExtensionItem
typedef struct objc_object NSExtensionItem;
typedef struct {} _objc_exc_NSExtensionItem;
#endif

struct NSExtensionItem_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};



// @property(nullable, copy, nonatomic) NSAttributedString *attributedTitle;


// @property(nullable, copy, nonatomic) NSAttributedString *attributedContentText;


// @property(nullable, copy, nonatomic) NSArray<NSItemProvider *> *attachments;


// @property(nullable, copy, nonatomic) NSDictionary *userInfo;

/* @end */



extern "C" NSString * _Null_unspecified const NSExtensionItemAttributedTitleKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * _Null_unspecified const NSExtensionItemAttributedContentTextKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * _Null_unspecified const NSExtensionItemAttachmentsKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
#pragma clang assume_nonnull end







#pragma clang assume_nonnull begin

// @class NSExtensionContext;
#ifndef _REWRITER_typedef_NSExtensionContext
#define _REWRITER_typedef_NSExtensionContext
typedef struct objc_object NSExtensionContext;
typedef struct {} _objc_exc_NSExtensionContext;
#endif



// @protocol NSExtensionRequestHandling <NSObject>

/* @required */


// - (void)beginRequestWithExtensionContext:(NSExtensionContext *)context;

/* @end */

#pragma clang assume_nonnull end
// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSMutableDictionary
#define _REWRITER_typedef_NSMutableDictionary
typedef struct objc_object NSMutableDictionary;
typedef struct {} _objc_exc_NSMutableDictionary;
#endif

#ifndef _REWRITER_typedef_NSOperationQueue
#define _REWRITER_typedef_NSOperationQueue
typedef struct objc_object NSOperationQueue;
typedef struct {} _objc_exc_NSOperationQueue;
#endif

#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif


// @protocol NSFilePresenter;

#pragma clang assume_nonnull begin

typedef NSUInteger NSFileCoordinatorReadingOptions; enum {



    NSFileCoordinatorReadingWithoutChanges = 1 << 0,



    NSFileCoordinatorReadingResolvesSymbolicLink = 1 << 1,



    NSFileCoordinatorReadingImmediatelyAvailableMetadataOnly __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 1 << 2,





    NSFileCoordinatorReadingForUploading __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 1 << 3,

};

typedef NSUInteger NSFileCoordinatorWritingOptions; enum {
    NSFileCoordinatorWritingForDeleting = 1 << 0,





    NSFileCoordinatorWritingForMoving = 1 << 1,



    NSFileCoordinatorWritingForMerging = 1 << 2,







    NSFileCoordinatorWritingForReplacing = 1 << 3,



    NSFileCoordinatorWritingContentIndependentMetadataOnly __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 1 << 4

};


__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSFileAccessIntent
#define _REWRITER_typedef_NSFileAccessIntent
typedef struct objc_object NSFileAccessIntent;
typedef struct {} _objc_exc_NSFileAccessIntent;
#endif

struct NSFileAccessIntent_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURL *_url;
	BOOL _isRead;
	NSInteger _options;
};

// + (instancetype)readingIntentWithURL:(NSURL *)url options:(NSFileCoordinatorReadingOptions)options;
// + (instancetype)writingIntentWithURL:(NSURL *)url options:(NSFileCoordinatorWritingOptions)options;
// @property (readonly, copy) NSURL *URL;
/* @end */



__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSFileCoordinator
#define _REWRITER_typedef_NSFileCoordinator
typedef struct objc_object NSFileCoordinator;
typedef struct {} _objc_exc_NSFileCoordinator;
#endif

struct NSFileCoordinator_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _accessArbiter;
	id _fileReactor;
	id _purposeID;
	NSURL *_recentFilePresenterURL;
	id _accessClaimIDOrIDs;
	BOOL _isCancelled;
	NSMutableDictionary *_movedItems;
};








// + (void)addFilePresenter:(id<NSFilePresenter>)filePresenter;
// + (void)removeFilePresenter:(id<NSFilePresenter>)filePresenter;
@property (class, readonly, copy) NSArray<id<NSFilePresenter>> *filePresenters;
// - (instancetype)initWithFilePresenter:(nullable id<NSFilePresenter>)filePresenterOrNil __attribute__((objc_designated_initializer));
// @property (copy) NSString *purposeIdentifier __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)coordinateAccessWithIntents:(NSArray<NSFileAccessIntent *> *)intents queue:(NSOperationQueue *)queue byAccessor:(void (^)(NSError * _Nullable error))accessor __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)coordinateReadingItemAtURL:(NSURL *)url options:(NSFileCoordinatorReadingOptions)options error:(NSError **)outError byAccessor:(void (__attribute__((noescape)) ^)(NSURL *newURL))reader;
// - (void)coordinateWritingItemAtURL:(NSURL *)url options:(NSFileCoordinatorWritingOptions)options error:(NSError **)outError byAccessor:(void (__attribute__((noescape)) ^)(NSURL *newURL))writer;
// - (void)coordinateReadingItemAtURL:(NSURL *)readingURL options:(NSFileCoordinatorReadingOptions)readingOptions writingItemAtURL:(NSURL *)writingURL options:(NSFileCoordinatorWritingOptions)writingOptions error:(NSError **)outError byAccessor:(void (__attribute__((noescape)) ^)(NSURL *newReadingURL, NSURL *newWritingURL))readerWriter;
// - (void)coordinateWritingItemAtURL:(NSURL *)url1 options:(NSFileCoordinatorWritingOptions)options1 writingItemAtURL:(NSURL *)url2 options:(NSFileCoordinatorWritingOptions)options2 error:(NSError **)outError byAccessor:(void (__attribute__((noescape)) ^)(NSURL *newURL1, NSURL *newURL2))writer;
// - (void)prepareForReadingItemsAtURLs:(NSArray<NSURL *> *)readingURLs options:(NSFileCoordinatorReadingOptions)readingOptions writingItemsAtURLs:(NSArray<NSURL *> *)writingURLs options:(NSFileCoordinatorWritingOptions)writingOptions error:(NSError **)outError byAccessor:(void (__attribute__((noescape)) ^)(void (^completionHandler)(void)))batchAccessor;
// - (void)itemAtURL:(NSURL *)oldURL willMoveToURL:(NSURL *)newURL __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)itemAtURL:(NSURL *)oldURL didMoveToURL:(NSURL *)newURL;







// - (void)itemAtURL:(NSURL *)url didChangeUbiquityAttributes:(NSSet <NSURLResourceKey> *)attributes __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));







// - (void)cancel;

/* @end */

#pragma clang assume_nonnull end
// @class NSError;
#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSFileVersion
#define _REWRITER_typedef_NSFileVersion
typedef struct objc_object NSFileVersion;
typedef struct {} _objc_exc_NSFileVersion;
#endif

#ifndef _REWRITER_typedef_NSOperationQueue
#define _REWRITER_typedef_NSOperationQueue
typedef struct objc_object NSOperationQueue;
typedef struct {} _objc_exc_NSOperationQueue;
#endif

#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif


#pragma clang assume_nonnull begin







// @protocol NSFilePresenter<NSObject>

/* @required */





// @property (nullable, readonly, copy) NSURL *presentedItemURL;





// @property (readonly, retain) NSOperationQueue *presentedItemOperationQueue;

/* @optional */



// @property (nullable, readonly, copy) NSURL *primaryPresentedItemURL __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));





// - (void)relinquishPresentedItemToReader:(void (^)(void (^ _Nullable reacquirer)(void)))reader;





// - (void)relinquishPresentedItemToWriter:(void (^)(void (^ _Nullable reacquirer)(void)))writer;







// - (void)savePresentedItemChangesWithCompletionHandler:(void (^)(NSError * _Nullable errorOrNil))completionHandler;







// - (void)accommodatePresentedItemDeletionWithCompletionHandler:(void (^)(NSError * _Nullable errorOrNil))completionHandler;
// - (void)presentedItemDidMoveToURL:(NSURL *)newURL;
// - (void)presentedItemDidChange;





// - (void)presentedItemDidChangeUbiquityAttributes:(NSSet<NSURLResourceKey> *)attributes __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));







// @property (readonly, strong) NSSet<NSURLResourceKey> *observedPresentedItemUbiquityAttributes __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));





// - (void)presentedItemDidGainVersion:(NSFileVersion *)version;
// - (void)presentedItemDidLoseVersion:(NSFileVersion *)version;
// - (void)presentedItemDidResolveConflictVersion:(NSFileVersion *)version;
// - (void)accommodatePresentedSubitemDeletionAtURL:(NSURL *)url completionHandler:(void (^)(NSError * _Nullable errorOrNil))completionHandler;





// - (void)presentedSubitemDidAppearAtURL:(NSURL *)url;





// - (void)presentedSubitemAtURL:(NSURL *)oldURL didMoveToURL:(NSURL *)newURL;





// - (void)presentedSubitemDidChangeAtURL:(NSURL *)url;



// - (void)presentedSubitemAtURL:(NSURL *)url didGainVersion:(NSFileVersion *)version;
// - (void)presentedSubitemAtURL:(NSURL *)url didLoseVersion:(NSFileVersion *)version;
// - (void)presentedSubitemAtURL:(NSURL *)url didResolveConflictVersion:(NSFileVersion *)version;

/* @end */

#pragma clang assume_nonnull end








// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDate
#define _REWRITER_typedef_NSDate
typedef struct objc_object NSDate;
typedef struct {} _objc_exc_NSDate;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

#ifndef _REWRITER_typedef_NSPersonNameComponents
#define _REWRITER_typedef_NSPersonNameComponents
typedef struct objc_object NSPersonNameComponents;
typedef struct {} _objc_exc_NSPersonNameComponents;
#endif


#pragma clang assume_nonnull begin

typedef NSUInteger NSFileVersionAddingOptions; enum {



    NSFileVersionAddingByMoving = 1 << 0

};

typedef NSUInteger NSFileVersionReplacingOptions; enum {



    NSFileVersionReplacingByMoving = 1 << 0

};



__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSFileVersion
#define _REWRITER_typedef_NSFileVersion
typedef struct objc_object NSFileVersion;
typedef struct {} _objc_exc_NSFileVersion;
#endif

struct NSFileVersion_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSURL *_fileURL;
	id _addition;
	id _deadVersionIdentifier;
	id _nonLocalVersion;
	NSURL *_contentsURL;
	BOOL _isBackup;
	NSString *_localizedName;
	NSString *_localizedComputerName;
	NSDate *_modificationDate;
	BOOL _isResolved;
	BOOL _contentsURLIsAccessed;
	id _reserved;
	NSString *_name;
};




// + (nullable NSFileVersion *)currentVersionOfItemAtURL:(NSURL *)url;



// + (nullable NSArray<NSFileVersion *> *)otherVersionsOfItemAtURL:(NSURL *)url;



// + (nullable NSArray<NSFileVersion *> *)unresolvedConflictVersionsOfItemAtURL:(NSURL *)url;







// + (void)getNonlocalVersionsOfItemAtURL:(NSURL *)url completionHandler:(void (^)(NSArray<NSFileVersion *> * _Nullable nonlocalFileVersions, NSError * _Nullable error))completionHandler __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (nullable NSFileVersion *)versionOfItemAtURL:(NSURL *)url forPersistentIdentifier:(id)persistentIdentifier;







// + (nullable NSFileVersion *)addVersionOfItemAtURL:(NSURL *)url withContentsOfURL:(NSURL *)contentsURL options:(NSFileVersionAddingOptions)options error:(NSError **)outError __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



// + (NSURL *)temporaryDirectoryURLForNewVersionOfItemAtURL:(NSURL *)url __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



// @property (readonly, copy) NSURL *URL;



// @property (nullable, readonly, copy) NSString *localizedName;



// @property (nullable, readonly, copy) NSString *localizedNameOfSavingComputer;



// @property (nullable, readonly, copy) NSPersonNameComponents *originatorNameComponents __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



// @property (nullable, readonly, copy) NSDate *modificationDate;



// @property (readonly, retain) id<NSCoding> persistentIdentifier;



// @property (readonly, getter=isConflict) BOOL conflict;







// @property (getter=isResolved) BOOL resolved;
// @property (getter=isDiscardable) BOOL discardable __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



// @property (readonly) BOOL hasLocalContents __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (readonly) BOOL hasThumbnail __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (nullable NSURL *)replaceItemAtURL:(NSURL *)url options:(NSFileVersionReplacingOptions)options error:(NSError **)error;







// - (BOOL)removeAndReturnError:(NSError **)outError;





// + (BOOL)removeOtherVersionsOfItemAtURL:(NSURL *)url error:(NSError **)outError;

/* @end */

#pragma clang assume_nonnull end







// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif


#pragma clang assume_nonnull begin

typedef NSUInteger NSFileWrapperReadingOptions; enum {



    NSFileWrapperReadingImmediate = 1 << 0,



    NSFileWrapperReadingWithoutMapping = 1 << 1

} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSUInteger NSFileWrapperWritingOptions; enum {



    NSFileWrapperWritingAtomic = 1 << 0,



    NSFileWrapperWritingWithNameUpdating = 1 << 1

} __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

__attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSFileWrapper
#define _REWRITER_typedef_NSFileWrapper
typedef struct objc_object NSFileWrapper;
typedef struct {} _objc_exc_NSFileWrapper;
#endif

struct NSFileWrapper_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSDictionary *_fileAttributes;
	NSString *_preferredFileName;
	NSString *_fileName;
	id _contents;
	id _icon;
	id _moreVars;
};






// - (nullable instancetype)initWithURL:(NSURL *)url options:(NSFileWrapperReadingOptions)options error:(NSError **)outError __attribute__((objc_designated_initializer)) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (instancetype)initDirectoryWithFileWrappers:(NSDictionary<NSString *, NSFileWrapper *> *)childrenByPreferredName __attribute__((objc_designated_initializer));



// - (instancetype)initRegularFileWithContents:(NSData *)contents __attribute__((objc_designated_initializer));



// - (instancetype)initSymbolicLinkWithDestinationURL:(NSURL *)url __attribute__((objc_designated_initializer)) __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (nullable instancetype)initWithSerializedRepresentation:(NSData *)serializeRepresentation __attribute__((objc_designated_initializer));

// - (nullable instancetype)initWithCoder:(NSCoder *)inCoder __attribute__((objc_designated_initializer));





// @property (readonly, getter=isDirectory) BOOL directory;
// @property (readonly, getter=isRegularFile) BOOL regularFile;
// @property (readonly, getter=isSymbolicLink) BOOL symbolicLink;





// @property (nullable, copy) NSString *preferredFilename;



// @property (nullable, copy) NSString *filename;



// @property (copy) NSDictionary<NSString *, id> *fileAttributes;
// - (BOOL)matchesContentsOfURL:(NSURL *)url __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (BOOL)readFromURL:(NSURL *)url options:(NSFileWrapperReadingOptions)options error:(NSError **)outError __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (BOOL)writeToURL:(NSURL *)url options:(NSFileWrapperWritingOptions)options originalContentsURL:(nullable NSURL *)originalContentsURL error:(NSError **)outError __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// @property (nullable, readonly, copy) NSData *serializedRepresentation;







// - (NSString *)addFileWrapper:(NSFileWrapper *)child;



// - (NSString *)addRegularFileWithContents:(NSData *)data preferredFilename:(NSString *)fileName;



// - (void)removeFileWrapper:(NSFileWrapper *)child;



// @property (nullable, readonly, copy) NSDictionary<NSString *, NSFileWrapper *> *fileWrappers;



// - (nullable NSString *)keyForFileWrapper:(NSFileWrapper *)child;







// @property (nullable, readonly, copy) NSData *regularFileContents;







// @property (nullable, readonly, copy) NSURL *symbolicLinkDestinationURL __attribute__((availability(macos,introduced=10.6))) __attribute__((availability(ios,introduced=4.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end








// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSOrthography
#define _REWRITER_typedef_NSOrthography
typedef struct objc_object NSOrthography;
typedef struct {} _objc_exc_NSOrthography;
#endif

#ifndef _REWRITER_typedef_NSValue
#define _REWRITER_typedef_NSValue
typedef struct objc_object NSValue;
typedef struct {} _objc_exc_NSValue;
#endif


#pragma clang assume_nonnull begin





typedef NSString *NSLinguisticTagScheme __attribute__((swift_wrapper(struct)));

extern "C" NSLinguisticTagScheme const NSLinguisticTagSchemeTokenType __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTagScheme const NSLinguisticTagSchemeLexicalClass __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTagScheme const NSLinguisticTagSchemeNameType __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTagScheme const NSLinguisticTagSchemeNameTypeOrLexicalClass __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTagScheme const NSLinguisticTagSchemeLemma __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTagScheme const NSLinguisticTagSchemeLanguage __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTagScheme const NSLinguisticTagSchemeScript __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

typedef NSString *NSLinguisticTag __attribute__((swift_wrapper(struct)));


extern "C" NSLinguisticTag const NSLinguisticTagWord __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagPunctuation __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagWhitespace __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagOther __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSLinguisticTag const NSLinguisticTagNoun __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagVerb __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagAdjective __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagAdverb __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagPronoun __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagDeterminer __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagParticle __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagPreposition __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagNumber __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagConjunction __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagInterjection __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagClassifier __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagIdiom __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagOtherWord __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagSentenceTerminator __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagOpenQuote __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagCloseQuote __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagOpenParenthesis __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagCloseParenthesis __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagWordJoiner __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagDash __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagOtherPunctuation __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagParagraphBreak __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagOtherWhitespace __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSLinguisticTag const NSLinguisticTagPersonalName __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagPlaceName __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSLinguisticTag const NSLinguisticTagOrganizationName __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






typedef NSInteger NSLinguisticTaggerUnit; enum {
    NSLinguisticTaggerUnitWord,
    NSLinguisticTaggerUnitSentence,
    NSLinguisticTaggerUnitParagraph,
    NSLinguisticTaggerUnitDocument
};


typedef NSUInteger NSLinguisticTaggerOptions; enum {
    NSLinguisticTaggerOmitWords = 1 << 0,
    NSLinguisticTaggerOmitPunctuation = 1 << 1,
    NSLinguisticTaggerOmitWhitespace = 1 << 2,
    NSLinguisticTaggerOmitOther = 1 << 3,
    NSLinguisticTaggerJoinNames = 1 << 4
};


__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSLinguisticTagger
#define _REWRITER_typedef_NSLinguisticTagger
typedef struct objc_object NSLinguisticTagger;
typedef struct {} _objc_exc_NSLinguisticTagger;
#endif

struct NSLinguisticTagger_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSArray *_schemes;
	NSUInteger _options;
	NSString *_string;
	id _orthographyArray;
	id _tokenArray;
	void *_reserved;
};




// - (instancetype)initWithTagSchemes:(NSArray<NSLinguisticTagScheme> *)tagSchemes options:(NSUInteger)opts __attribute__((objc_designated_initializer)) __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSArray<NSLinguisticTagScheme> *tagSchemes __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, retain) NSString *string __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// + (NSArray<NSLinguisticTagScheme> *)availableTagSchemesForUnit:(NSLinguisticTaggerUnit)unit language:(NSString *)language __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));



// + (NSArray<NSLinguisticTagScheme> *)availableTagSchemesForLanguage:(NSString *)language __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)setOrthography:(nullable NSOrthography *)orthography range:(NSRange)range __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSOrthography *)orthographyAtIndex:(NSUInteger)charIndex effectiveRange:(nullable NSRangePointer)effectiveRange __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)stringEditedInRange:(NSRange)newRange changeInLength:(NSInteger)delta __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (NSRange)tokenRangeAtIndex:(NSUInteger)charIndex unit:(NSLinguisticTaggerUnit)unit __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));



// - (NSRange)sentenceRangeForRange:(NSRange)range __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)enumerateTagsInRange:(NSRange)range unit:(NSLinguisticTaggerUnit)unit scheme:(NSLinguisticTagScheme)scheme options:(NSLinguisticTaggerOptions)options usingBlock:(void (__attribute__((noescape)) ^)(NSLinguisticTag _Nullable tag, NSRange tokenRange, BOOL *stop))block __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// - (nullable NSLinguisticTag)tagAtIndex:(NSUInteger)charIndex unit:(NSLinguisticTaggerUnit)unit scheme:(NSLinguisticTagScheme)scheme tokenRange:(nullable NSRangePointer)tokenRange __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// - (NSArray<NSLinguisticTag> *)tagsInRange:(NSRange)range unit:(NSLinguisticTaggerUnit)unit scheme:(NSLinguisticTagScheme)scheme options:(NSLinguisticTaggerOptions)options tokenRanges:(NSArray<NSValue *> * _Nullable * _Nullable)tokenRanges __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));



// - (void)enumerateTagsInRange:(NSRange)range scheme:(NSLinguisticTagScheme)tagScheme options:(NSLinguisticTaggerOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(NSLinguisticTag _Nullable tag, NSRange tokenRange, NSRange sentenceRange, BOOL *stop))block __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (nullable NSLinguisticTag)tagAtIndex:(NSUInteger)charIndex scheme:(NSLinguisticTagScheme)scheme tokenRange:(nullable NSRangePointer)tokenRange sentenceRange:(nullable NSRangePointer)sentenceRange __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (NSArray<NSString *> *)tagsInRange:(NSRange)range scheme:(NSString *)tagScheme options:(NSLinguisticTaggerOptions)opts tokenRanges:(NSArray<NSValue *> * _Nullable * _Nullable)tokenRanges __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (nullable, readonly, copy) NSString *dominantLanguage __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));



// + (nullable NSString *)dominantLanguageForString:(NSString *)string __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// + (nullable NSLinguisticTag)tagForString:(NSString *)string atIndex:(NSUInteger)charIndex unit:(NSLinguisticTaggerUnit)unit scheme:(NSLinguisticTagScheme)scheme orthography:(nullable NSOrthography *)orthography tokenRange:(nullable NSRangePointer)tokenRange __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// + (NSArray<NSLinguisticTag> *)tagsForString:(NSString *)string range:(NSRange)range unit:(NSLinguisticTaggerUnit)unit scheme:(NSLinguisticTagScheme)scheme options:(NSLinguisticTaggerOptions)options orthography:(nullable NSOrthography *)orthography tokenRanges:(NSArray<NSValue *> * _Nullable * _Nullable)tokenRanges __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// + (void)enumerateTagsForString:(NSString *)string range:(NSRange)range unit:(NSLinguisticTaggerUnit)unit scheme:(NSLinguisticTagScheme)scheme options:(NSLinguisticTaggerOptions)options orthography:(nullable NSOrthography *)orthography usingBlock:(void (__attribute__((noescape)) ^)(NSLinguisticTag _Nullable tag, NSRange tokenRange, BOOL *stop))block __attribute__((availability(macosx,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));



// - (nullable NSArray<NSString *> *)possibleTagsAtIndex:(NSUInteger)charIndex scheme:(NSString *)tagScheme tokenRange:(nullable NSRangePointer)tokenRange sentenceRange:(nullable NSRangePointer)sentenceRange scores:(NSArray<NSValue *> * _Nullable * _Nullable)scores __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */


// @interface NSString (NSLinguisticAnalysis)



// - (NSArray<NSLinguisticTag> *)linguisticTagsInRange:(NSRange)range scheme:(NSLinguisticTagScheme)scheme options:(NSLinguisticTaggerOptions)options orthography:(nullable NSOrthography *)orthography tokenRanges:(NSArray<NSValue *> * _Nullable * _Nullable)tokenRanges __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateLinguisticTagsInRange:(NSRange)range scheme:(NSLinguisticTagScheme)scheme options:(NSLinguisticTaggerOptions)options orthography:(nullable NSOrthography *)orthography usingBlock:(void (__attribute__((noescape)) ^)(NSLinguisticTag _Nullable tag, NSRange tokenRange, NSRange sentenceRange, BOOL *stop))block __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */

#pragma clang assume_nonnull end










// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin



extern "C" NSString * const NSMetadataItemFSNameKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataItemDisplayNameKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataItemURLKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataItemPathKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataItemFSSizeKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataItemFSCreationDateKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataItemFSContentChangeDateKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataItemContentTypeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataItemContentTypeTreeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSString * const NSMetadataItemIsUbiquitousKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSString * const NSMetadataUbiquitousItemHasUnresolvedConflictsKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemIsDownloadedKey __attribute__((availability(macos,introduced=10.7,deprecated=10.9,message="Use NSMetadataUbiquitousItemDownloadingStatusKey instead"))) __attribute__((availability(ios,introduced=5.0,deprecated=7.0,message="Use NSMetadataUbiquitousItemDownloadingStatusKey instead"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Use NSMetadataUbiquitousItemDownloadingStatusKey instead"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Use NSMetadataUbiquitousItemDownloadingStatusKey instead")));
extern "C" NSString * const NSMetadataUbiquitousItemDownloadingStatusKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemDownloadingStatusNotDownloaded __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemDownloadingStatusDownloaded __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemDownloadingStatusCurrent __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemIsDownloadingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemIsUploadedKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemIsUploadingKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemPercentDownloadedKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemPercentUploadedKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemDownloadingErrorKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemUploadingErrorKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemDownloadRequestedKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemIsExternalDocumentKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemContainerDisplayNameKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataUbiquitousItemURLInLocalContainerKey __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSString * const NSMetadataUbiquitousItemIsSharedKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataUbiquitousSharedItemCurrentUserRoleKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataUbiquitousSharedItemCurrentUserPermissionsKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataUbiquitousSharedItemOwnerNameComponentsKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataUbiquitousSharedItemMostRecentEditorNameComponentsKey __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



extern "C" NSString * const NSMetadataUbiquitousSharedItemRoleOwner __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataUbiquitousSharedItemRoleParticipant __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));



extern "C" NSString * const NSMetadataUbiquitousSharedItemPermissionsReadOnly __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataUbiquitousSharedItemPermissionsReadWrite __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));




extern "C" NSString * const NSMetadataItemAttributeChangeDateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemKeywordsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemTitleKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAuthorsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemEditorsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemParticipantsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemProjectsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemDownloadedDateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemWhereFromsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemCommentKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemCopyrightKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemLastUsedDateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemContentCreationDateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemContentModificationDateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemDateAddedKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemDurationSecondsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemContactKeywordsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemVersionKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemPixelHeightKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemPixelWidthKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemPixelCountKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemColorSpaceKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemBitsPerSampleKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemFlashOnOffKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemFocalLengthKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAcquisitionMakeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAcquisitionModelKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemISOSpeedKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemOrientationKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemLayerNamesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemWhiteBalanceKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemApertureKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemProfileNameKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemResolutionWidthDPIKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemResolutionHeightDPIKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemExposureModeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemExposureTimeSecondsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemEXIFVersionKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemCameraOwnerKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemFocalLength35mmKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemLensModelKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemEXIFGPSVersionKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAltitudeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemLatitudeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemLongitudeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemSpeedKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemTimestampKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSTrackKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemImageDirectionKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemNamedLocationKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemGPSStatusKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSMeasureModeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSDOPKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSMapDatumKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSDestLatitudeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSDestLongitudeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSDestBearingKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSDestDistanceKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSProcessingMethodKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSAreaInformationKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSDateStampKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGPSDifferentalKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemCodecsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemMediaTypesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemStreamableKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemTotalBitRateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemVideoBitRateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAudioBitRateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemDeliveryTypeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemAlbumKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemHasAlphaChannelKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemRedEyeOnOffKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemMeteringModeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemMaxApertureKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemFNumberKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemExposureProgramKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemExposureTimeStringKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemHeadlineKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemInstructionsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemCityKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemStateOrProvinceKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemCountryKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemTextContentKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemAudioSampleRateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAudioChannelCountKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemTempoKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemKeySignatureKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemTimeSignatureKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAudioEncodingApplicationKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemComposerKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemLyricistKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAudioTrackNumberKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemRecordingDateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemMusicalGenreKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemIsGeneralMIDISequenceKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemRecordingYearKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemOrganizationsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemLanguagesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemRightsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemPublishersKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemContributorsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemCoverageKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemSubjectKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemThemeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemDescriptionKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemIdentifierKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAudiencesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemNumberOfPagesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemPageWidthKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemPageHeightKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemSecurityMethodKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemCreatorKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemEncodingApplicationsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemDueDateKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemStarRatingKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemPhoneNumbersKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemEmailAddressesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemInstantMessageAddressesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemKindKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemRecipientsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemFinderCommentKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemFontsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemAppleLoopsRootKeyKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAppleLoopsKeyFilterTypeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAppleLoopsLoopModeKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAppleLoopDescriptorsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemMusicalInstrumentCategoryKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemMusicalInstrumentNameKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemCFBundleIdentifierKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemInformationKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemDirectorKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemProducerKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemGenreKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemPerformersKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemOriginalFormatKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemOriginalSourceKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAuthorEmailAddressesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemRecipientEmailAddressesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemAuthorAddressesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemRecipientAddressesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemIsLikelyJunkKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemExecutableArchitecturesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemExecutablePlatformKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataItemApplicationCategoriesKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataItemIsApplicationManagedKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
#pragma clang assume_nonnull end





// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSPredicate
#define _REWRITER_typedef_NSPredicate
typedef struct objc_object NSPredicate;
typedef struct {} _objc_exc_NSPredicate;
#endif

#ifndef _REWRITER_typedef_NSOperationQueue
#define _REWRITER_typedef_NSOperationQueue
typedef struct objc_object NSOperationQueue;
typedef struct {} _objc_exc_NSOperationQueue;
#endif

#ifndef _REWRITER_typedef_NSSortDescriptor
#define _REWRITER_typedef_NSSortDescriptor
typedef struct objc_object NSSortDescriptor;
typedef struct {} _objc_exc_NSSortDescriptor;
#endif

// @class NSMetadataItem;
#ifndef _REWRITER_typedef_NSMetadataItem
#define _REWRITER_typedef_NSMetadataItem
typedef struct objc_object NSMetadataItem;
typedef struct {} _objc_exc_NSMetadataItem;
#endif

#ifndef _REWRITER_typedef_NSMetadataQueryAttributeValueTuple
#define _REWRITER_typedef_NSMetadataQueryAttributeValueTuple
typedef struct objc_object NSMetadataQueryAttributeValueTuple;
typedef struct {} _objc_exc_NSMetadataQueryAttributeValueTuple;
#endif

#ifndef _REWRITER_typedef_NSMetadataQueryResultGroup
#define _REWRITER_typedef_NSMetadataQueryResultGroup
typedef struct objc_object NSMetadataQueryResultGroup;
typedef struct {} _objc_exc_NSMetadataQueryResultGroup;
#endif

// @protocol NSMetadataQueryDelegate;

#pragma clang assume_nonnull begin

__attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSMetadataQuery
#define _REWRITER_typedef_NSMetadataQuery
typedef struct objc_object NSMetadataQuery;
typedef struct {} _objc_exc_NSMetadataQuery;
#endif

struct NSMetadataQuery_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSUInteger _flags;
	NSTimeInterval _interval;
	id _private[11];
	void *_reserved;
};


// @property (nullable, assign) id<NSMetadataQueryDelegate> delegate;
// @property (nullable, copy) NSPredicate *predicate;
// @property (copy) NSArray<NSSortDescriptor *> *sortDescriptors;
// @property (copy) NSArray<NSString *> *valueListAttributes;
// @property (nullable, copy) NSArray<NSString *> *groupingAttributes;
// @property NSTimeInterval notificationBatchingInterval;

// @property (copy) NSArray *searchScopes;





// @property (nullable, copy) NSArray *searchItems __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (nullable, retain) NSOperationQueue *operationQueue __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// - (BOOL)startQuery;
// - (void)stopQuery;

// @property (readonly, getter=isStarted) BOOL started;
// @property (readonly, getter=isGathering) BOOL gathering;
// @property (readonly, getter=isStopped) BOOL stopped;

// - (void)disableUpdates;
// - (void)enableUpdates;



// @property (readonly) NSUInteger resultCount;
// - (id)resultAtIndex:(NSUInteger)idx;

// - (void)enumerateResultsUsingBlock:(void (__attribute__((noescape)) ^)(id result, NSUInteger idx, BOOL *stop))block __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// - (void)enumerateResultsWithOptions:(NSEnumerationOptions)opts usingBlock:(void (__attribute__((noescape)) ^)(id result, NSUInteger idx, BOOL *stop))block __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly, copy) NSArray *results;

// - (NSUInteger)indexOfResult:(id)result;

// @property (readonly, copy) NSDictionary<NSString *, NSArray<NSMetadataQueryAttributeValueTuple *> *> *valueLists;

// @property (readonly, copy) NSArray<NSMetadataQueryResultGroup *> *groupedResults;

// - (nullable id)valueOfAttribute:(NSString *)attrName forResultAtIndex:(NSUInteger)idx;

/* @end */


// @protocol NSMetadataQueryDelegate <NSObject>
/* @optional */

// - (id)metadataQuery:(NSMetadataQuery *)query replacementObjectForResultObject:(NSMetadataItem *)result;
// - (id)metadataQuery:(NSMetadataQuery *)query replacementValueForAttribute:(NSString *)attrName value:(id)attrValue;

/* @end */



extern "C" NSNotificationName const NSMetadataQueryDidStartGatheringNotification __attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSNotificationName const NSMetadataQueryGatheringProgressNotification __attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSNotificationName const NSMetadataQueryDidFinishGatheringNotification __attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSNotificationName const NSMetadataQueryDidUpdateNotification __attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSString * const NSMetadataQueryUpdateAddedItemsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataQueryUpdateChangedItemsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataQueryUpdateRemovedItemsKey __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSString * const NSMetadataQueryResultContentRelevanceAttribute __attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSString * const NSMetadataQueryUserHomeScope __attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataQueryLocalComputerScope __attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataQueryNetworkScope __attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

extern "C" NSString * const NSMetadataQueryIndexedLocalComputerScope __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));
extern "C" NSString * const NSMetadataQueryIndexedNetworkScope __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));


extern "C" NSString * const NSMetadataQueryUbiquitousDocumentsScope __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataQueryUbiquitousDataScope __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSMetadataQueryAccessibleUbiquitousExternalDocumentsScope __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


__attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSMetadataItem
#define _REWRITER_typedef_NSMetadataItem
typedef struct objc_object NSMetadataItem;
typedef struct {} _objc_exc_NSMetadataItem;
#endif

struct NSMetadataItem_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _item;
	void *_reserved;
};


// - (nullable instancetype)initWithURL:(NSURL *)url __attribute__((objc_designated_initializer)) __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));

// - (nullable id)valueForAttribute:(NSString *)key;
// - (nullable NSDictionary<NSString *, id> *)valuesForAttributes:(NSArray<NSString *> *)keys;

// @property (readonly, copy) NSArray<NSString *> *attributes;

/* @end */


__attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSMetadataQueryAttributeValueTuple
#define _REWRITER_typedef_NSMetadataQueryAttributeValueTuple
typedef struct objc_object NSMetadataQueryAttributeValueTuple;
typedef struct {} _objc_exc_NSMetadataQueryAttributeValueTuple;
#endif

struct NSMetadataQueryAttributeValueTuple_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _attr;
	id _value;
	NSUInteger _count;
	void *_reserved;
};


// @property (readonly, copy) NSString *attribute;
// @property (nullable, readonly, retain) id value;
// @property (readonly) NSUInteger count;

/* @end */


__attribute__((availability(macos,introduced=10.4))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSMetadataQueryResultGroup
#define _REWRITER_typedef_NSMetadataQueryResultGroup
typedef struct objc_object NSMetadataQueryResultGroup;
typedef struct {} _objc_exc_NSMetadataQueryResultGroup;
#endif

struct NSMetadataQueryResultGroup_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _private[9];
	NSUInteger _private2[1];
	void *_reserved;
};


// @property (readonly, copy) NSString *attribute;
// @property (readonly, retain) id value;

// @property (nullable, readonly, copy) NSArray<NSMetadataQueryResultGroup *> *subgroups;

// @property (readonly) NSUInteger resultCount;
// - (id)resultAtIndex:(NSUInteger)idx;

// @property (readonly, copy) NSArray *results;

/* @end */

#pragma clang assume_nonnull end

// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSInputStream
#define _REWRITER_typedef_NSInputStream
typedef struct objc_object NSInputStream;
typedef struct {} _objc_exc_NSInputStream;
#endif

#ifndef _REWRITER_typedef_NSNumber
#define _REWRITER_typedef_NSNumber
typedef struct objc_object NSNumber;
typedef struct {} _objc_exc_NSNumber;
#endif

#ifndef _REWRITER_typedef_NSOutputStream
#define _REWRITER_typedef_NSOutputStream
typedef struct objc_object NSOutputStream;
typedef struct {} _objc_exc_NSOutputStream;
#endif

#ifndef _REWRITER_typedef_NSRunLoop
#define _REWRITER_typedef_NSRunLoop
typedef struct objc_object NSRunLoop;
typedef struct {} _objc_exc_NSRunLoop;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @protocol NSNetServiceDelegate, NSNetServiceBrowserDelegate;

#pragma clang assume_nonnull begin



extern "C" NSString * const NSNetServicesErrorCode;
extern "C" NSErrorDomain const NSNetServicesErrorDomain;

typedef NSInteger NSNetServicesError; enum {



    NSNetServicesUnknownError = -72000L,



    NSNetServicesCollisionError = -72001L,



    NSNetServicesNotFoundError = -72002L,



    NSNetServicesActivityInProgress = -72003L,



    NSNetServicesBadArgumentError = -72004L,



    NSNetServicesCancelledError = -72005L,



    NSNetServicesInvalidError = -72006L,



    NSNetServicesTimeoutError = -72007L,

};


typedef NSUInteger NSNetServiceOptions; enum {




    NSNetServiceNoAutoRename = 1UL << 0,
    NSNetServiceListenForConnections __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 1UL << 1
};





__attribute__((availability(watchos,unavailable)))

#ifndef _REWRITER_typedef_NSNetService
#define _REWRITER_typedef_NSNetService
typedef struct objc_object NSNetService;
typedef struct {} _objc_exc_NSNetService;
#endif

struct NSNetService_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _netService;
	id _delegate;
	id _reserved;
};




// - (instancetype)initWithDomain:(NSString *)domain type:(NSString *)type name:(NSString *)name port:(int)port __attribute__((objc_designated_initializer));





// - (instancetype)initWithDomain:(NSString *)domain type:(NSString *)type name:(NSString *)name;



// - (void)scheduleInRunLoop:(NSRunLoop *)aRunLoop forMode:(NSRunLoopMode)mode;
// - (void)removeFromRunLoop:(NSRunLoop *)aRunLoop forMode:(NSRunLoopMode)mode;



// @property (nullable, assign) id <NSNetServiceDelegate> delegate;



// @property BOOL includesPeerToPeer __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// @property (readonly, copy) NSString *name;



// @property (readonly, copy) NSString *type;



// @property (readonly, copy) NSString *domain;



// @property (nullable, readonly, copy) NSString *hostName;



// @property (nullable, readonly, copy) NSArray<NSData *> *addresses;



// @property (readonly) NSInteger port __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// - (void)publish;





// - (void)publishWithOptions:(NSNetServiceOptions)options __attribute__((availability(macos,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (void)resolve __attribute__((availability(macos,introduced=10.2,deprecated=10.4,message="Not supported"))) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,message="Not supported")));



// - (void)stop;



// + (NSDictionary<NSString *, NSData *> *)dictionaryFromTXTRecordData:(NSData *)txtData;



// + (NSData *)dataFromTXTRecordDictionary:(NSDictionary<NSString *, NSData *> *)txtDictionary;



// - (void)resolveWithTimeout:(NSTimeInterval)timeout;



// - (BOOL)getInputStream:(out __attribute__((objc_ownership(strong))) NSInputStream * _Nullable * _Nullable)inputStream outputStream:(out __attribute__((objc_ownership(strong))) NSOutputStream * _Nullable * _Nullable)outputStream;



// - (BOOL)setTXTRecordData:(nullable NSData *)recordData;



// - (nullable NSData *)TXTRecordData;



// - (void)startMonitoring;



// - (void)stopMonitoring;


/* @end */




__attribute__((availability(watchos,unavailable)))

#ifndef _REWRITER_typedef_NSNetServiceBrowser
#define _REWRITER_typedef_NSNetServiceBrowser
typedef struct objc_object NSNetServiceBrowser;
typedef struct {} _objc_exc_NSNetServiceBrowser;
#endif

struct NSNetServiceBrowser_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _netServiceBrowser;
	id _delegate;
	void *_reserved;
};


// - (instancetype)init;



// @property (nullable, assign) id <NSNetServiceBrowserDelegate> delegate;



// @property BOOL includesPeerToPeer __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



// - (void)scheduleInRunLoop:(NSRunLoop *)aRunLoop forMode:(NSRunLoopMode)mode;
// - (void)removeFromRunLoop:(NSRunLoop *)aRunLoop forMode:(NSRunLoopMode)mode;



// - (void)searchForBrowsableDomains;



// - (void)searchForRegistrationDomains;



// - (void)searchForServicesOfType:(NSString *)type inDomain:(NSString *)domainString;



// - (void)stop;

/* @end */




__attribute__((availability(watchos,unavailable)))
// @protocol NSNetServiceDelegate <NSObject>
/* @optional */



// - (void)netServiceWillPublish:(NSNetService *)sender;



// - (void)netServiceDidPublish:(NSNetService *)sender;



// - (void)netService:(NSNetService *)sender didNotPublish:(NSDictionary<NSString *, NSNumber *> *)errorDict;



// - (void)netServiceWillResolve:(NSNetService *)sender;



// - (void)netServiceDidResolveAddress:(NSNetService *)sender;



// - (void)netService:(NSNetService *)sender didNotResolve:(NSDictionary<NSString *, NSNumber *> *)errorDict;



// - (void)netServiceDidStop:(NSNetService *)sender;



// - (void)netService:(NSNetService *)sender didUpdateTXTRecordData:(NSData *)data;
// - (void)netService:(NSNetService *)sender didAcceptConnectionWithInputStream:(NSInputStream *)inputStream outputStream:(NSOutputStream *)outputStream __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

/* @end */




__attribute__((availability(watchos,unavailable)))
// @protocol NSNetServiceBrowserDelegate <NSObject>
/* @optional */



// - (void)netServiceBrowserWillSearch:(NSNetServiceBrowser *)browser;



// - (void)netServiceBrowserDidStopSearch:(NSNetServiceBrowser *)browser;



// - (void)netServiceBrowser:(NSNetServiceBrowser *)browser didNotSearch:(NSDictionary<NSString *, NSNumber *> *)errorDict;



// - (void)netServiceBrowser:(NSNetServiceBrowser *)browser didFindDomain:(NSString *)domainString moreComing:(BOOL)moreComing;



// - (void)netServiceBrowser:(NSNetServiceBrowser *)browser didFindService:(NSNetService *)service moreComing:(BOOL)moreComing;



// - (void)netServiceBrowser:(NSNetServiceBrowser *)browser didRemoveDomain:(NSString *)domainString moreComing:(BOOL)moreComing;



// - (void)netServiceBrowser:(NSNetServiceBrowser *)browser didRemoveService:(NSNetService *)service moreComing:(BOOL)moreComing;

/* @end */

#pragma clang assume_nonnull end









// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin

__attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,unavailable)))

#ifndef _REWRITER_typedef_NSUbiquitousKeyValueStore
#define _REWRITER_typedef_NSUbiquitousKeyValueStore
typedef struct objc_object NSUbiquitousKeyValueStore;
typedef struct {} _objc_exc_NSUbiquitousKeyValueStore;
#endif

struct NSUbiquitousKeyValueStore_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _private1;
	id _private2;
	id _private3;
	void *_private4;
	void *_reserved[3];
	int _daemonWakeToken;
};


@property (class, readonly, strong) NSUbiquitousKeyValueStore *defaultStore;

// - (nullable id)objectForKey:(NSString *)aKey;
// - (void)setObject:(nullable id)anObject forKey:(NSString *)aKey;
// - (void)removeObjectForKey:(NSString *)aKey;

// - (nullable NSString *)stringForKey:(NSString *)aKey;
// - (nullable NSArray *)arrayForKey:(NSString *)aKey;
// - (nullable NSDictionary<NSString *, id> *)dictionaryForKey:(NSString *)aKey;
// - (nullable NSData *)dataForKey:(NSString *)aKey;
// - (long long)longLongForKey:(NSString *)aKey;
// - (double)doubleForKey:(NSString *)aKey;
// - (BOOL)boolForKey:(NSString *)aKey;

// - (void)setString:(nullable NSString *)aString forKey:(NSString *)aKey;
// - (void)setData:(nullable NSData *)aData forKey:(NSString *)aKey;
// - (void)setArray:(nullable NSArray *)anArray forKey:(NSString *)aKey;
// - (void)setDictionary:(nullable NSDictionary<NSString *, id> *)aDictionary forKey:(NSString *)aKey;
// - (void)setLongLong:(long long)value forKey:(NSString *)aKey;
// - (void)setDouble:(double)value forKey:(NSString *)aKey;
// - (void)setBool:(BOOL)value forKey:(NSString *)aKey;

// @property (readonly, copy) NSDictionary<NSString *, id> *dictionaryRepresentation;

// - (BOOL)synchronize;

/* @end */


extern "C" NSNotificationName const NSUbiquitousKeyValueStoreDidChangeExternallyNotification __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSUbiquitousKeyValueStoreChangeReasonKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSString * const NSUbiquitousKeyValueStoreChangedKeysKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

enum {
    NSUbiquitousKeyValueStoreServerChange __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))),
    NSUbiquitousKeyValueStoreInitialSyncChange __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))),
    NSUbiquitousKeyValueStoreQuotaViolationChange __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))),
    NSUbiquitousKeyValueStoreAccountChange __attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))
};
#pragma clang assume_nonnull end
// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif


#pragma clang assume_nonnull begin


static const NSUInteger NSUndoCloseGroupingRunLoopOrdering = 350000;

__attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSUndoManager
#define _REWRITER_typedef_NSUndoManager
typedef struct objc_object NSUndoManager;
typedef struct {} _objc_exc_NSUndoManager;
#endif

struct NSUndoManager_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	id _undoStack;
	id _redoStack;
	NSArray *_runLoopModes;
	uint64_t _NSUndoManagerPrivate1;
	id _target;
	id _proxy;
	void *_NSUndoManagerPrivate2;
	void *_NSUndoManagerPrivate3;
};




// - (void)beginUndoGrouping;
// - (void)endUndoGrouping;


// @property (readonly) NSInteger groupingLevel;




// - (void)disableUndoRegistration;
// - (void)enableUndoRegistration;
// @property (readonly, getter=isUndoRegistrationEnabled) BOOL undoRegistrationEnabled;



// @property BOOL groupsByEvent;






// @property NSUInteger levelsOfUndo;






// @property (copy) NSArray<NSRunLoopMode> *runLoopModes;



// - (void)undo;



// - (void)redo;


// - (void)undoNestedGroup;



// @property (readonly) BOOL canUndo;
// @property (readonly) BOOL canRedo;


// @property (readonly, getter=isUndoing) BOOL undoing;
// @property (readonly, getter=isRedoing) BOOL redoing;





// - (void)removeAllActions;

// - (void)removeAllActionsWithTarget:(id)target;



// - (void)registerUndoWithTarget:(id)target selector:(SEL)selector object:(nullable id)anObject;



// - (id)prepareWithInvocationTarget:(id)target;
// - (void)registerUndoWithTarget:(id)target handler:(void (^)(id target))undoHandler __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((swift_private));

// - (void)setActionIsDiscardable:(BOOL)discardable __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));



extern "C" NSString * const NSUndoManagerGroupIsDiscardableKey __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @property (readonly) BOOL undoActionIsDiscardable __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (readonly) BOOL redoActionIsDiscardable __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// @property (readonly, copy) NSString *undoActionName;
// @property (readonly, copy) NSString *redoActionName;



// - (void)setActionName:(NSString *)actionName;





// @property (readonly, copy) NSString *undoMenuItemTitle;
// @property (readonly, copy) NSString *redoMenuItemTitle;






// - (NSString *)undoMenuTitleForUndoActionName:(NSString *)actionName;
// - (NSString *)redoMenuTitleForUndoActionName:(NSString *)actionName;




/* @end */


extern "C" NSNotificationName const NSUndoManagerCheckpointNotification __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




extern "C" NSNotificationName const NSUndoManagerWillUndoChangeNotification __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSNotificationName const NSUndoManagerWillRedoChangeNotification __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSNotificationName const NSUndoManagerDidUndoChangeNotification __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSNotificationName const NSUndoManagerDidRedoChangeNotification __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

extern "C" NSNotificationName const NSUndoManagerDidOpenUndoGroupNotification __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" NSNotificationName const NSUndoManagerWillCloseUndoGroupNotification __attribute__((availability(macos,introduced=10.0))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


extern "C" NSNotificationName const NSUndoManagerDidCloseUndoGroupNotification __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
#pragma clang assume_nonnull end
extern "C" {


#pragma clang assume_nonnull begin
struct SSLContext;
typedef struct __attribute__((objc_bridge(id))) SSLContext *SSLContextRef;


typedef const void *SSLConnectionRef;


typedef int SSLSessionOption; enum {







 kSSLSessionOptionBreakOnServerAuth __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))) = 0,




 kSSLSessionOptionBreakOnCertRequested __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))) = 1,






    kSSLSessionOptionBreakOnClientAuth __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))) = 2,





    kSSLSessionOptionFalseStart __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))) = 3,





    kSSLSessionOptionSendOneByteRecord __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))) = 4,




    kSSLSessionOptionAllowServerIdentityChange __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))) = 5,




    kSSLSessionOptionFallback __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))) = 6,



    kSSLSessionOptionBreakOnClientHello __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))) = 7,



    kSSLSessionOptionAllowRenegotiation __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))) = 8,



    kSSLSessionOptionEnableSessionTickets __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))) = 9,
};


typedef int SSLSessionState; enum {
 kSSLIdle __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))),
 kSSLHandshake __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))),
 kSSLConnected __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))),
 kSSLClosed __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))),
 kSSLAborted __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" )))
};





typedef int SSLClientCertificateState; enum {

 kSSLClientCertNone __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))),

 kSSLClientCertRequested __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))),






 kSSLClientCertSent __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))),




 kSSLClientCertRejected __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" )))
};
typedef OSStatus
(*SSLReadFunc) (SSLConnectionRef connection,
        void *data,


        size_t *dataLength);
typedef OSStatus
(*SSLWriteFunc) (SSLConnectionRef connection,
        const void *data,
        size_t *dataLength);
typedef int SSLProtocolSide; enum
{
    kSSLServerSide __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))),
    kSSLClientSide __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" )))
};

typedef int SSLConnectionType; enum
{
    kSSLStreamType __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" ))),
    kSSLDatagramType __attribute__((availability(ios,introduced=2_0,deprecated=13_0,message="" )))
};






extern const CFStringRef kSSLSessionConfig_default
__attribute__((availability(macos,introduced=10.2,deprecated=10.13,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=11.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_ATSv1
__attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_ATSv1_noPFS
__attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_standard
__attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_RC4_fallback
__attribute__((availability(macos,introduced=10.2,deprecated=10.13,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=11.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_TLSv1_fallback
__attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_TLSv1_RC4_fallback
__attribute__((availability(macos,introduced=10.2,deprecated=10.13,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=11.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_legacy
__attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_legacy_DHE
__attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_anonymous
__attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_3DES_fallback
__attribute__((availability(macos,introduced=10.2,deprecated=10.13,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=11.0,message="No longer supported. Use Network.framework.")));


extern const CFStringRef kSSLSessionConfig_TLSv1_3DES_fallback
__attribute__((availability(macos,introduced=10.2,deprecated=10.13,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=11.0,message="No longer supported. Use Network.framework.")));
CFTypeID
SSLContextGetTypeID(void)
    __attribute__((availability(macos,introduced=10.8,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
_Nullable
SSLContextRef
SSLCreateContext(CFAllocatorRef _Nullable alloc, SSLProtocolSide protocolSide, SSLConnectionType connectionType)
 __attribute__((availability(macos,introduced=10.8,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetSessionState (SSLContextRef context,
        SSLSessionState *state)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetSessionOption (SSLContextRef context,
        SSLSessionOption option,
        Boolean value)
    __attribute__((availability(macos,introduced=10.6,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetSessionOption (SSLContextRef context,
        SSLSessionOption option,
        Boolean *value)
    __attribute__((availability(macos,introduced=10.6,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetIOFuncs (SSLContextRef context,
        SSLReadFunc readFunc,
        SSLWriteFunc writeFunc)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetSessionConfig(SSLContextRef context,
                    CFStringRef config)
    __attribute__((availability(macos,introduced=10.12,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=10.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetProtocolVersionMin (SSLContextRef context,
                           SSLProtocol minVersion)
    __attribute__((availability(macos,introduced=10.8,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetProtocolVersionMin (SSLContextRef context,
                           SSLProtocol *minVersion)
    __attribute__((availability(macos,introduced=10.8,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetProtocolVersionMax (SSLContextRef context,
                           SSLProtocol maxVersion)
    __attribute__((availability(macos,introduced=10.8,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetProtocolVersionMax (SSLContextRef context,
                           SSLProtocol *maxVersion)
    __attribute__((availability(macos,introduced=10.8,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetCertificate (SSLContextRef context,
        CFArrayRef _Nullable certRefs)
    __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetConnection (SSLContextRef context,
        SSLConnectionRef _Nullable connection)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetConnection (SSLContextRef context,
        SSLConnectionRef * _Nonnull __attribute__((cf_returns_not_retained)) connection)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetPeerDomainName (SSLContextRef context,
        const char * _Nullable peerName,
        size_t peerNameLen)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetPeerDomainNameLength (SSLContextRef context,
        size_t *peerNameLen)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetPeerDomainName (SSLContextRef context,
        char *peerName,
        size_t *peerNameLen)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLCopyRequestedPeerNameLength (SSLContextRef ctx,
                                 size_t *peerNameLen)
    __attribute__((availability(macos,introduced=10.11,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=9.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLCopyRequestedPeerName (SSLContextRef context,
                             char *peerName,
                             size_t *peerNameLen)
    __attribute__((availability(macos,introduced=10.11,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=9.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetDatagramHelloCookie (SSLContextRef dtlsContext,
                             const void * _Nullable cookie,
                             size_t cookieLen)
    __attribute__((availability(macos,introduced=10.8,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetMaxDatagramRecordSize (SSLContextRef dtlsContext,
                             size_t maxSize)
 __attribute__((availability(macos,introduced=10.8,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetMaxDatagramRecordSize (SSLContextRef dtlsContext,
                             size_t *maxSize)
 __attribute__((availability(macos,introduced=10.8,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetNegotiatedProtocolVersion (SSLContextRef context,
          SSLProtocol *protocol)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetNumberSupportedCiphers (SSLContextRef context,
         size_t *numCiphers)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetSupportedCiphers (SSLContextRef context,
         SSLCipherSuite *ciphers,
         size_t *numCiphers)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetNumberEnabledCiphers (SSLContextRef context,
                                size_t *numCiphers)
__attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetEnabledCiphers (SSLContextRef context,
        const SSLCipherSuite *ciphers,
        size_t numCiphers)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetEnabledCiphers (SSLContextRef context,
        SSLCipherSuite *ciphers,
        size_t *numCiphers)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetSessionTicketsEnabled (SSLContextRef context,
                                 Boolean enabled)
    __attribute__((availability(macos,introduced=10.13,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=11.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLCopyPeerTrust (SSLContextRef context,
        SecTrustRef * _Nonnull __attribute__((cf_returns_retained)) trust)
    __attribute__((availability(macos,introduced=10.6,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetPeerID (SSLContextRef context,
        const void * _Nullable peerID,
        size_t peerIDLen)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetPeerID (SSLContextRef context,
        const void * _Nullable * _Nonnull peerID,
        size_t *peerIDLen)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetNegotiatedCipher (SSLContextRef context,
        SSLCipherSuite *cipherSuite)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetALPNProtocols (SSLContextRef context,
                             CFArrayRef protocols)
    __attribute__((availability(macos,introduced=10.13,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=11.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLCopyALPNProtocols (SSLContextRef context,
                             CFArrayRef _Nullable * _Nonnull protocols)
    __attribute__((availability(macos,introduced=10.13,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=11.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetOCSPResponse (SSLContextRef context,
                             CFDataRef _Nonnull response)
    __attribute__((availability(macos,introduced=10.13,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=11.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetEncryptionCertificate (SSLContextRef context,
        CFArrayRef certRefs)
    __attribute__((availability(macos,introduced=10.2,deprecated=10.11,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=9.0,message="No longer supported. Use Network.framework.")));






typedef int SSLAuthenticate; enum {
 kNeverAuthenticate,
 kAlwaysAuthenticate,
 kTryAuthenticate
};
OSStatus
SSLSetClientSideAuthenticate (SSLContextRef context,
         SSLAuthenticate auth)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLAddDistinguishedName (SSLContextRef context,
        const void * _Nullable derDN,
        size_t derDNLen)
    __attribute__((availability(macos,introduced=10.4,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLCopyDistinguishedNames (SSLContextRef context,
        CFArrayRef * _Nonnull __attribute__((cf_returns_retained)) names)
    __attribute__((availability(macos,introduced=10.5,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetClientCertificateState (SSLContextRef context,
         SSLClientCertificateState *clientState)
    __attribute__((availability(macos,introduced=10.3,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLHandshake (SSLContextRef context)
    __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLReHandshake (SSLContextRef context)
    __attribute__((availability(macos,introduced=10.12,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=10.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLWrite (SSLContextRef context,
        const void * _Nullable data,
        size_t dataLength,
        size_t *processed)
    __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLRead (SSLContextRef context,
        void * data,
        size_t dataLength,
        size_t *processed)
    __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetBufferedReadSize (SSLContextRef context,
        size_t *bufferSize)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLGetDatagramWriteSize (SSLContextRef dtlsContext,
        size_t *bufSize)
    __attribute__((availability(macos,introduced=10.8,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));







OSStatus
SSLClose (SSLContextRef context)
 __attribute__((availability(macos,introduced=10.2,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=5.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
OSStatus
SSLSetError (SSLContextRef context,
                             OSStatus status)
    __attribute__((availability(macos,introduced=10.13,deprecated=10.15,message="No longer supported. Use Network.framework."))) __attribute__((availability(ios,introduced=11.0,deprecated=13.0,message="No longer supported. Use Network.framework.")));
#pragma clang assume_nonnull end






}

// @class NSString;
#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

// @class NSURL;
#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

// @class NSError;
#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

// @class NSDictionary;
#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

// @class NSInputStream;
#ifndef _REWRITER_typedef_NSInputStream
#define _REWRITER_typedef_NSInputStream
typedef struct objc_object NSInputStream;
typedef struct {} _objc_exc_NSInputStream;
#endif

// @class NSOutputStream;
#ifndef _REWRITER_typedef_NSOutputStream
#define _REWRITER_typedef_NSOutputStream
typedef struct objc_object NSOutputStream;
typedef struct {} _objc_exc_NSOutputStream;
#endif

// @class NSData;
#ifndef _REWRITER_typedef_NSData
#define _REWRITER_typedef_NSData
typedef struct objc_object NSData;
typedef struct {} _objc_exc_NSData;
#endif

// @class NSOperationQueue;
#ifndef _REWRITER_typedef_NSOperationQueue
#define _REWRITER_typedef_NSOperationQueue
typedef struct objc_object NSOperationQueue;
typedef struct {} _objc_exc_NSOperationQueue;
#endif


// @class NSURLCache;
#ifndef _REWRITER_typedef_NSURLCache
#define _REWRITER_typedef_NSURLCache
typedef struct objc_object NSURLCache;
typedef struct {} _objc_exc_NSURLCache;
#endif

// @class NSURLResponse;
#ifndef _REWRITER_typedef_NSURLResponse
#define _REWRITER_typedef_NSURLResponse
typedef struct objc_object NSURLResponse;
typedef struct {} _objc_exc_NSURLResponse;
#endif

// @class NSHTTPURLResponse;
#ifndef _REWRITER_typedef_NSHTTPURLResponse
#define _REWRITER_typedef_NSHTTPURLResponse
typedef struct objc_object NSHTTPURLResponse;
typedef struct {} _objc_exc_NSHTTPURLResponse;
#endif

// @class NSHTTPCookie;
#ifndef _REWRITER_typedef_NSHTTPCookie
#define _REWRITER_typedef_NSHTTPCookie
typedef struct objc_object NSHTTPCookie;
typedef struct {} _objc_exc_NSHTTPCookie;
#endif

// @class NSCachedURLResponse;
#ifndef _REWRITER_typedef_NSCachedURLResponse
#define _REWRITER_typedef_NSCachedURLResponse
typedef struct objc_object NSCachedURLResponse;
typedef struct {} _objc_exc_NSCachedURLResponse;
#endif

// @class NSURLAuthenticationChallenge;
#ifndef _REWRITER_typedef_NSURLAuthenticationChallenge
#define _REWRITER_typedef_NSURLAuthenticationChallenge
typedef struct objc_object NSURLAuthenticationChallenge;
typedef struct {} _objc_exc_NSURLAuthenticationChallenge;
#endif

// @class NSURLProtectionSpace;
#ifndef _REWRITER_typedef_NSURLProtectionSpace
#define _REWRITER_typedef_NSURLProtectionSpace
typedef struct objc_object NSURLProtectionSpace;
typedef struct {} _objc_exc_NSURLProtectionSpace;
#endif

// @class NSURLCredential;
#ifndef _REWRITER_typedef_NSURLCredential
#define _REWRITER_typedef_NSURLCredential
typedef struct objc_object NSURLCredential;
typedef struct {} _objc_exc_NSURLCredential;
#endif

// @class NSURLCredentialStorage;
#ifndef _REWRITER_typedef_NSURLCredentialStorage
#define _REWRITER_typedef_NSURLCredentialStorage
typedef struct objc_object NSURLCredentialStorage;
typedef struct {} _objc_exc_NSURLCredentialStorage;
#endif

// @class NSURLSessionDataTask;
#ifndef _REWRITER_typedef_NSURLSessionDataTask
#define _REWRITER_typedef_NSURLSessionDataTask
typedef struct objc_object NSURLSessionDataTask;
typedef struct {} _objc_exc_NSURLSessionDataTask;
#endif

// @class NSURLSessionUploadTask;
#ifndef _REWRITER_typedef_NSURLSessionUploadTask
#define _REWRITER_typedef_NSURLSessionUploadTask
typedef struct objc_object NSURLSessionUploadTask;
typedef struct {} _objc_exc_NSURLSessionUploadTask;
#endif

// @class NSURLSessionDownloadTask;
#ifndef _REWRITER_typedef_NSURLSessionDownloadTask
#define _REWRITER_typedef_NSURLSessionDownloadTask
typedef struct objc_object NSURLSessionDownloadTask;
typedef struct {} _objc_exc_NSURLSessionDownloadTask;
#endif

// @class NSNetService;
#ifndef _REWRITER_typedef_NSNetService
#define _REWRITER_typedef_NSNetService
typedef struct objc_object NSNetService;
typedef struct {} _objc_exc_NSNetService;
#endif

// @class NSURLSession;
#ifndef _REWRITER_typedef_NSURLSession
#define _REWRITER_typedef_NSURLSession
typedef struct objc_object NSURLSession;
typedef struct {} _objc_exc_NSURLSession;
#endif

// @class NSURLSessionDataTask;
#ifndef _REWRITER_typedef_NSURLSessionDataTask
#define _REWRITER_typedef_NSURLSessionDataTask
typedef struct objc_object NSURLSessionDataTask;
typedef struct {} _objc_exc_NSURLSessionDataTask;
#endif

// @class NSURLSessionUploadTask;
#ifndef _REWRITER_typedef_NSURLSessionUploadTask
#define _REWRITER_typedef_NSURLSessionUploadTask
typedef struct objc_object NSURLSessionUploadTask;
typedef struct {} _objc_exc_NSURLSessionUploadTask;
#endif

// @class NSURLSessionDownloadTask;
#ifndef _REWRITER_typedef_NSURLSessionDownloadTask
#define _REWRITER_typedef_NSURLSessionDownloadTask
typedef struct objc_object NSURLSessionDownloadTask;
typedef struct {} _objc_exc_NSURLSessionDownloadTask;
#endif

// @class NSURLSessionStreamTask;
#ifndef _REWRITER_typedef_NSURLSessionStreamTask
#define _REWRITER_typedef_NSURLSessionStreamTask
typedef struct objc_object NSURLSessionStreamTask;
typedef struct {} _objc_exc_NSURLSessionStreamTask;
#endif

// @class NSURLSessionWebSocketTask;
#ifndef _REWRITER_typedef_NSURLSessionWebSocketTask
#define _REWRITER_typedef_NSURLSessionWebSocketTask
typedef struct objc_object NSURLSessionWebSocketTask;
typedef struct {} _objc_exc_NSURLSessionWebSocketTask;
#endif


// @class NSURLSessionConfiguration;
#ifndef _REWRITER_typedef_NSURLSessionConfiguration
#define _REWRITER_typedef_NSURLSessionConfiguration
typedef struct objc_object NSURLSessionConfiguration;
typedef struct {} _objc_exc_NSURLSessionConfiguration;
#endif

// @protocol NSURLSessionDelegate;

// @class NSURLSessionTaskMetrics;
#ifndef _REWRITER_typedef_NSURLSessionTaskMetrics
#define _REWRITER_typedef_NSURLSessionTaskMetrics
typedef struct objc_object NSURLSessionTaskMetrics;
typedef struct {} _objc_exc_NSURLSessionTaskMetrics;
#endif

// @class NSDateInterval;
#ifndef _REWRITER_typedef_NSDateInterval
#define _REWRITER_typedef_NSDateInterval
typedef struct objc_object NSDateInterval;
typedef struct {} _objc_exc_NSDateInterval;
#endif


#pragma clang assume_nonnull begin



extern "C" const int64_t NSURLSessionTransferSizeUnknown __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

__attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSURLSession
#define _REWRITER_typedef_NSURLSession
typedef struct objc_object NSURLSession;
typedef struct {} _objc_exc_NSURLSession;
#endif

struct NSURLSession_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};






@property (class, readonly, strong) NSURLSession *sharedSession;
// + (NSURLSession *)sessionWithConfiguration:(NSURLSessionConfiguration *)configuration;
// + (NSURLSession *)sessionWithConfiguration:(NSURLSessionConfiguration *)configuration delegate:(nullable id <NSURLSessionDelegate>)delegate delegateQueue:(nullable NSOperationQueue *)queue;

// @property (readonly, retain) NSOperationQueue *delegateQueue;
// @property (nullable, readonly, retain) id <NSURLSessionDelegate> delegate;
// @property (readonly, copy) NSURLSessionConfiguration *configuration;





// @property (nullable, copy) NSString *sessionDescription;
// - (void)finishTasksAndInvalidate;






// - (void)invalidateAndCancel;

// - (void)resetWithCompletionHandler:(void (^)(void))completionHandler;
// - (void)flushWithCompletionHandler:(void (^)(void))completionHandler;

// - (void)getTasksWithCompletionHandler:(void (^)(NSArray<NSURLSessionDataTask *> *dataTasks, NSArray<NSURLSessionUploadTask *> *uploadTasks, NSArray<NSURLSessionDownloadTask *> *downloadTasks))completionHandler;

// - (void)getAllTasksWithCompletionHandler:(void (^)(NSArray<__kindof NSURLSessionTask *> *tasks))completionHandler __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







// - (NSURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request;


// - (NSURLSessionDataTask *)dataTaskWithURL:(NSURL *)url;


// - (NSURLSessionUploadTask *)uploadTaskWithRequest:(NSURLRequest *)request fromFile:(NSURL *)fileURL;


// - (NSURLSessionUploadTask *)uploadTaskWithRequest:(NSURLRequest *)request fromData:(NSData *)bodyData;


// - (NSURLSessionUploadTask *)uploadTaskWithStreamedRequest:(NSURLRequest *)request;


// - (NSURLSessionDownloadTask *)downloadTaskWithRequest:(NSURLRequest *)request;


// - (NSURLSessionDownloadTask *)downloadTaskWithURL:(NSURL *)url;


// - (NSURLSessionDownloadTask *)downloadTaskWithResumeData:(NSData *)resumeData;



// - (NSURLSessionStreamTask *)streamTaskWithHostName:(NSString *)hostname port:(NSInteger)port __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));




// - (NSURLSessionStreamTask *)streamTaskWithNetService:(NSNetService *)service __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,unavailable)));



// - (NSURLSessionWebSocketTask *)webSocketTaskWithURL:(NSURL *)url __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));





// - (NSURLSessionWebSocketTask *)webSocketTaskWithURL:(NSURL *)url protocols:(NSArray<NSString *>*)protocols __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));





// - (NSURLSessionWebSocketTask *)webSocketTaskWithRequest:(NSURLRequest *)request __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));


// - (instancetype)init __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use +[NSURLSession sessionWithConfiguration:] or other class methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use +[NSURLSession sessionWithConfiguration:] or other class methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use +[NSURLSession sessionWithConfiguration:] or other class methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use +[NSURLSession sessionWithConfiguration:] or other class methods to create instances")));
// + (instancetype)new __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use +[NSURLSession sessionWithConfiguration:] or other class methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use +[NSURLSession sessionWithConfiguration:] or other class methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use +[NSURLSession sessionWithConfiguration:] or other class methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use +[NSURLSession sessionWithConfiguration:] or other class methods to create instances")));

/* @end */

// @interface NSURLSession (NSURLSessionAsynchronousConvenience)
// - (NSURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request completionHandler:(void (^)(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error))completionHandler;
// - (NSURLSessionDataTask *)dataTaskWithURL:(NSURL *)url completionHandler:(void (^)(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error))completionHandler;




// - (NSURLSessionUploadTask *)uploadTaskWithRequest:(NSURLRequest *)request fromFile:(NSURL *)fileURL completionHandler:(void (^)(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error))completionHandler;
// - (NSURLSessionUploadTask *)uploadTaskWithRequest:(NSURLRequest *)request fromData:(nullable NSData *)bodyData completionHandler:(void (^)(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error))completionHandler;







// - (NSURLSessionDownloadTask *)downloadTaskWithRequest:(NSURLRequest *)request completionHandler:(void (^)(NSURL * _Nullable location, NSURLResponse * _Nullable response, NSError * _Nullable error))completionHandler;
// - (NSURLSessionDownloadTask *)downloadTaskWithURL:(NSURL *)url completionHandler:(void (^)(NSURL * _Nullable location, NSURLResponse * _Nullable response, NSError * _Nullable error))completionHandler;
// - (NSURLSessionDownloadTask *)downloadTaskWithResumeData:(NSData *)resumeData completionHandler:(void (^)(NSURL * _Nullable location, NSURLResponse * _Nullable response, NSError * _Nullable error))completionHandler;

/* @end */


typedef NSInteger NSURLSessionTaskState; enum {
    NSURLSessionTaskStateRunning = 0,
    NSURLSessionTaskStateSuspended = 1,
    NSURLSessionTaskStateCanceling = 2,
    NSURLSessionTaskStateCompleted = 3,
} __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





__attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSURLSessionTask
#define _REWRITER_typedef_NSURLSessionTask
typedef struct objc_object NSURLSessionTask;
typedef struct {} _objc_exc_NSURLSessionTask;
#endif

struct NSURLSessionTask_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


// @property (readonly) NSUInteger taskIdentifier;
// @property (nullable, readonly, copy) NSURLRequest *originalRequest;
// @property (nullable, readonly, copy) NSURLRequest *currentRequest;
// @property (nullable, readonly, copy) NSURLResponse *response;





// @property (readonly, strong) NSProgress *progress __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// @property (nullable, copy) NSDate *earliestBeginDate __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));






// @property int64_t countOfBytesClientExpectsToSend __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// @property int64_t countOfBytesClientExpectsToReceive __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
// @property (readonly) int64_t countOfBytesReceived;


// @property (readonly) int64_t countOfBytesSent;


// @property (readonly) int64_t countOfBytesExpectedToSend;


// @property (readonly) int64_t countOfBytesExpectedToReceive;





// @property (nullable, copy) NSString *taskDescription;







// - (void)cancel;




// @property (readonly) NSURLSessionTaskState state;





// @property (nullable, readonly, copy) NSError *error;
// - (void)suspend;
// - (void)resume;
// @property float priority __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// - (instancetype)init __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Not supported"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Not supported")));
// + (instancetype)new __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Not supported"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Not supported"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Not supported"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Not supported")));

/* @end */


extern "C" const float NSURLSessionTaskPriorityDefault __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" const float NSURLSessionTaskPriorityLow __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
extern "C" const float NSURLSessionTaskPriorityHigh __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));







#ifndef _REWRITER_typedef_NSURLSessionDataTask
#define _REWRITER_typedef_NSURLSessionDataTask
typedef struct objc_object NSURLSessionDataTask;
typedef struct {} _objc_exc_NSURLSessionDataTask;
#endif

struct NSURLSessionDataTask_IMPL {
	struct NSURLSessionTask_IMPL NSURLSessionTask_IVARS;
};


// - (instancetype)init __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use -[NSURLSession dataTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use -[NSURLSession dataTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use -[NSURLSession dataTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use -[NSURLSession dataTaskWithRequest:] or other NSURLSession methods to create instances")));
// + (instancetype)new __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use -[NSURLSession dataTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use -[NSURLSession dataTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use -[NSURLSession dataTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use -[NSURLSession dataTaskWithRequest:] or other NSURLSession methods to create instances")));

/* @end */









#ifndef _REWRITER_typedef_NSURLSessionUploadTask
#define _REWRITER_typedef_NSURLSessionUploadTask
typedef struct objc_object NSURLSessionUploadTask;
typedef struct {} _objc_exc_NSURLSessionUploadTask;
#endif

struct NSURLSessionUploadTask_IMPL {
	struct NSURLSessionDataTask_IMPL NSURLSessionDataTask_IVARS;
};


// - (instancetype)init __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use -[NSURLSession uploadTaskWithStreamedRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use -[NSURLSession uploadTaskWithStreamedRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use -[NSURLSession uploadTaskWithStreamedRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use -[NSURLSession uploadTaskWithStreamedRequest:] or other NSURLSession methods to create instances")));
// + (instancetype)new __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use -[NSURLSession uploadTaskWithStreamedRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use -[NSURLSession uploadTaskWithStreamedRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use -[NSURLSession uploadTaskWithStreamedRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use -[NSURLSession uploadTaskWithStreamedRequest:] or other NSURLSession methods to create instances")));

/* @end */







#ifndef _REWRITER_typedef_NSURLSessionDownloadTask
#define _REWRITER_typedef_NSURLSessionDownloadTask
typedef struct objc_object NSURLSessionDownloadTask;
typedef struct {} _objc_exc_NSURLSessionDownloadTask;
#endif

struct NSURLSessionDownloadTask_IMPL {
	struct NSURLSessionTask_IMPL NSURLSessionTask_IVARS;
};

// - (void)cancelByProducingResumeData:(void (^)(NSData * _Nullable resumeData))completionHandler;


// - (instancetype)init __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use -[NSURLSession downloadTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use -[NSURLSession downloadTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use -[NSURLSession downloadTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use -[NSURLSession downloadTaskWithRequest:] or other NSURLSession methods to create instances")));
// + (instancetype)new __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use -[NSURLSession downloadTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use -[NSURLSession downloadTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use -[NSURLSession downloadTaskWithRequest:] or other NSURLSession methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use -[NSURLSession downloadTaskWithRequest:] or other NSURLSession methods to create instances")));

/* @end */

__attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSURLSessionStreamTask
#define _REWRITER_typedef_NSURLSessionStreamTask
typedef struct objc_object NSURLSessionStreamTask;
typedef struct {} _objc_exc_NSURLSessionStreamTask;
#endif

struct NSURLSessionStreamTask_IMPL {
	struct NSURLSessionTask_IMPL NSURLSessionTask_IVARS;
};







// - (void)readDataOfMinLength:(NSUInteger)minBytes maxLength:(NSUInteger)maxBytes timeout:(NSTimeInterval)timeout completionHandler:(void (^) (NSData * _Nullable data, BOOL atEOF, NSError * _Nullable error))completionHandler;






// - (void)writeData:(NSData *)data timeout:(NSTimeInterval)timeout completionHandler:(void (^) (NSError * _Nullable error))completionHandler;







// - (void)captureStreams;







// - (void)closeWrite;





// - (void)closeRead;






// - (void)startSecureConnection;







// - (void)stopSecureConnection __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="TLS cannot be disabled once it is enabled"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="TLS cannot be disabled once it is enabled"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="TLS cannot be disabled once it is enabled"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="TLS cannot be disabled once it is enabled")));


// - (instancetype)init __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use -[NSURLSession streamTaskWithHostName:port:] or other NSURLSession methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use -[NSURLSession streamTaskWithHostName:port:] or other NSURLSession methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use -[NSURLSession streamTaskWithHostName:port:] or other NSURLSession methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use -[NSURLSession streamTaskWithHostName:port:] or other NSURLSession methods to create instances")));
// + (instancetype)new __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use -[NSURLSession streamTaskWithHostName:port:] or other NSURLSession methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use -[NSURLSession streamTaskWithHostName:port:] or other NSURLSession methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use -[NSURLSession streamTaskWithHostName:port:] or other NSURLSession methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use -[NSURLSession streamTaskWithHostName:port:] or other NSURLSession methods to create instances")));

/* @end */


typedef NSInteger NSURLSessionWebSocketMessageType; enum {
    NSURLSessionWebSocketMessageTypeData = 0,
    NSURLSessionWebSocketMessageTypeString = 1,
} __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));





__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))

#ifndef _REWRITER_typedef_NSURLSessionWebSocketMessage
#define _REWRITER_typedef_NSURLSessionWebSocketMessage
typedef struct objc_object NSURLSessionWebSocketMessage;
typedef struct {} _objc_exc_NSURLSessionWebSocketMessage;
#endif

struct NSURLSessionWebSocketMessage_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};




// - (instancetype)initWithData:(NSData *)data __attribute__((objc_designated_initializer));



// - (instancetype)initWithString:(NSString *)string __attribute__((objc_designated_initializer));

// @property (readonly) NSURLSessionWebSocketMessageType type;
// @property (nullable, readonly, copy) NSData *data;
// @property (nullable, readonly, copy) NSString *string;


// - (instancetype)init __attribute__((unavailable));
// + (instancetype)new __attribute__((unavailable));

/* @end */




typedef NSInteger NSURLSessionWebSocketCloseCode; enum
{
    NSURLSessionWebSocketCloseCodeInvalid = 0,
    NSURLSessionWebSocketCloseCodeNormalClosure = 1000,
    NSURLSessionWebSocketCloseCodeGoingAway = 1001,
    NSURLSessionWebSocketCloseCodeProtocolError = 1002,
    NSURLSessionWebSocketCloseCodeUnsupportedData = 1003,
    NSURLSessionWebSocketCloseCodeNoStatusReceived = 1005,
    NSURLSessionWebSocketCloseCodeAbnormalClosure = 1006,
    NSURLSessionWebSocketCloseCodeInvalidFramePayloadData = 1007,
    NSURLSessionWebSocketCloseCodePolicyViolation = 1008,
    NSURLSessionWebSocketCloseCodeMessageTooBig = 1009,
    NSURLSessionWebSocketCloseCodeMandatoryExtensionMissing = 1010,
    NSURLSessionWebSocketCloseCodeInternalServerError = 1011,
    NSURLSessionWebSocketCloseCodeTLSHandshakeFailure = 1015,
} __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))

#ifndef _REWRITER_typedef_NSURLSessionWebSocketTask
#define _REWRITER_typedef_NSURLSessionWebSocketTask
typedef struct objc_object NSURLSessionWebSocketTask;
typedef struct {} _objc_exc_NSURLSessionWebSocketTask;
#endif

struct NSURLSessionWebSocketTask_IMPL {
	struct NSURLSessionTask_IMPL NSURLSessionTask_IVARS;
};







// - (void)sendMessage:(NSURLSessionWebSocketMessage *)message completionHandler:(void (^)(NSError * _Nullable error))completionHandler;





// - (void)receiveMessageWithCompletionHandler:(void (^)(NSURLSessionWebSocketMessage* _Nullable message, NSError * _Nullable error))completionHandler;






// - (void)sendPingWithPongReceiveHandler:(void (^)(NSError* _Nullable error))pongReceiveHandler;




// - (void)cancelWithCloseCode:(NSURLSessionWebSocketCloseCode)closeCode reason:(NSData * _Nullable)reason;

// @property NSInteger maximumMessageSize;
// @property (readonly) NSURLSessionWebSocketCloseCode closeCode;
// @property (nullable, readonly, copy) NSData *closeReason;


// - (instancetype)init __attribute__((unavailable));
// + (instancetype)new __attribute__((unavailable));

/* @end */

typedef NSInteger NSURLSessionMultipathServiceType; enum
{
    NSURLSessionMultipathServiceTypeNone = 0,
    NSURLSessionMultipathServiceTypeHandover = 1,
    NSURLSessionMultipathServiceTypeInteractive = 2,
    NSURLSessionMultipathServiceTypeAggregate = 3
} __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(macos,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((swift_name("URLSessionConfiguration.MultipathServiceType")));
__attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSURLSessionConfiguration
#define _REWRITER_typedef_NSURLSessionConfiguration
typedef struct objc_object NSURLSessionConfiguration;
typedef struct {} _objc_exc_NSURLSessionConfiguration;
#endif

struct NSURLSessionConfiguration_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};


@property (class, readonly, strong) NSURLSessionConfiguration *defaultSessionConfiguration;
@property (class, readonly, strong) NSURLSessionConfiguration *ephemeralSessionConfiguration;

// + (NSURLSessionConfiguration *)backgroundSessionConfigurationWithIdentifier:(NSString *)identifier __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


// @property (nullable, readonly, copy) NSString *identifier;


// @property NSURLRequestCachePolicy requestCachePolicy;


// @property NSTimeInterval timeoutIntervalForRequest;


// @property NSTimeInterval timeoutIntervalForResource;


// @property NSURLRequestNetworkServiceType networkServiceType;


// @property BOOL allowsCellularAccess;


// @property BOOL allowsExpensiveNetworkAccess __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));


// @property BOOL allowsConstrainedNetworkAccess __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// @property BOOL waitsForConnectivity __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


// @property (getter=isDiscretionary) BOOL discretionary __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));





// @property (nullable, copy) NSString *sharedContainerIdentifier __attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));






// @property BOOL sessionSendsLaunchEvents __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));


// @property (nullable, copy) NSDictionary *connectionProxyDictionary;


// @property SSLProtocol TLSMinimumSupportedProtocol __attribute__((availability(macos,introduced=10.9,deprecated=100000,replacement="TLSMinimumSupportedProtocolVersion"))) __attribute__((availability(ios,introduced=7.0,deprecated=100000,replacement="TLSMinimumSupportedProtocolVersion"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="TLSMinimumSupportedProtocolVersion"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="TLSMinimumSupportedProtocolVersion")));


// @property SSLProtocol TLSMaximumSupportedProtocol __attribute__((availability(macos,introduced=10.9,deprecated=100000,replacement="TLSMaximumSupportedProtocolVersion"))) __attribute__((availability(ios,introduced=7.0,deprecated=100000,replacement="TLSMaximumSupportedProtocolVersion"))) __attribute__((availability(watchos,introduced=2.0,deprecated=100000,replacement="TLSMaximumSupportedProtocolVersion"))) __attribute__((availability(tvos,introduced=9.0,deprecated=100000,replacement="TLSMaximumSupportedProtocolVersion")));


// @property tls_protocol_version_t TLSMinimumSupportedProtocolVersion __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));


// @property tls_protocol_version_t TLSMaximumSupportedProtocolVersion __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));


// @property BOOL HTTPShouldUsePipelining;


// @property BOOL HTTPShouldSetCookies;


// @property NSHTTPCookieAcceptPolicy HTTPCookieAcceptPolicy;



// @property (nullable, copy) NSDictionary *HTTPAdditionalHeaders;


// @property NSInteger HTTPMaximumConnectionsPerHost;


// @property (nullable, retain) NSHTTPCookieStorage *HTTPCookieStorage;


// @property (nullable, retain) NSURLCredentialStorage *URLCredentialStorage;


// @property (nullable, retain) NSURLCache *URLCache;




// @property BOOL shouldUseExtendedBackgroundIdleMode __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @property (nullable, copy) NSArray<Class> *protocolClasses;


// @property NSURLSessionMultipathServiceType multipathServiceType __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(macos,unavailable))) __attribute__((availability(watchos,unavailable))) __attribute__((availability(tvos,unavailable)));


// - (instancetype)init __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use NSURLSessionConfiguration.defaultSessionConfiguration or other class methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use NSURLSessionConfiguration.defaultSessionConfiguration or other class methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use NSURLSessionConfiguration.defaultSessionConfiguration or other class methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use NSURLSessionConfiguration.defaultSessionConfiguration or other class methods to create instances")));
// + (instancetype)new __attribute__((availability(macos,introduced=10.9,deprecated=10.15,message="Please use NSURLSessionConfiguration.defaultSessionConfiguration or other class methods to create instances"))) __attribute__((availability(ios,introduced=7.0,deprecated=13.0,message="Please use NSURLSessionConfiguration.defaultSessionConfiguration or other class methods to create instances"))) __attribute__((availability(watchos,introduced=2.0,deprecated=6.0,message="Please use NSURLSessionConfiguration.defaultSessionConfiguration or other class methods to create instances"))) __attribute__((availability(tvos,introduced=9.0,deprecated=13.0,message="Please use NSURLSessionConfiguration.defaultSessionConfiguration or other class methods to create instances")));

/* @end */





typedef NSInteger NSURLSessionDelayedRequestDisposition; enum {
    NSURLSessionDelayedRequestContinueLoading = 0,
    NSURLSessionDelayedRequestUseNewRequest = 1,
    NSURLSessionDelayedRequestCancel = 2,
} __attribute__((swift_name("URLSession.DelayedRequestDisposition"))) __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));

typedef NSInteger NSURLSessionAuthChallengeDisposition; enum {
    NSURLSessionAuthChallengeUseCredential = 0,
    NSURLSessionAuthChallengePerformDefaultHandling = 1,
    NSURLSessionAuthChallengeCancelAuthenticationChallenge = 2,
    NSURLSessionAuthChallengeRejectProtectionSpace = 3,
} __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));


typedef NSInteger NSURLSessionResponseDisposition; enum {
    NSURLSessionResponseCancel = 0,
    NSURLSessionResponseAllow = 1,
    NSURLSessionResponseBecomeDownload = 2,
    NSURLSessionResponseBecomeStream __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) = 3,
} __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));
// @protocol NSURLSessionDelegate <NSObject>
/* @optional */





// - (void)URLSession:(NSURLSession *)session didBecomeInvalidWithError:(nullable NSError *)error;
#if 0
- (void)URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge
                                             completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition disposition, NSURLCredential * _Nullable credential))completionHandler;
#endif

// - (void)URLSessionDidFinishEventsForBackgroundURLSession:(NSURLSession *)session __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(macos,unavailable)));

/* @end */





// @protocol NSURLSessionTaskDelegate <NSURLSessionDelegate>
/* @optional */
#if 0
- (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task
                        willBeginDelayedRequest:(NSURLRequest *)request
                              completionHandler:(void (^)(NSURLSessionDelayedRequestDisposition disposition, NSURLRequest * _Nullable newRequest))completionHandler
    __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
#endif

#if 0
- (void)URLSession:(NSURLSession *)session taskIsWaitingForConnectivity:(NSURLSessionTask *)task
    __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));
#endif

#if 0
- (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task
                     willPerformHTTPRedirection:(NSHTTPURLResponse *)response
                                     newRequest:(NSURLRequest *)request
                              completionHandler:(void (^)(NSURLRequest * _Nullable))completionHandler;
#endif







#if 0
- (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task
                            didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge
                              completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition disposition, NSURLCredential * _Nullable credential))completionHandler;
#endif






#if 0
- (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task
                              needNewBodyStream:(void (^)(NSInputStream * _Nullable bodyStream))completionHandler;
#endif





#if 0
- (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task
                                didSendBodyData:(int64_t)bytesSent
                                 totalBytesSent:(int64_t)totalBytesSent
                       totalBytesExpectedToSend:(int64_t)totalBytesExpectedToSend;
#endif





// - (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didFinishCollectingMetrics:(NSURLSessionTaskMetrics *)metrics __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));




#if 0
- (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task
                           didCompleteWithError:(nullable NSError *)error;
#endif


/* @end */






// @protocol NSURLSessionDataDelegate <NSURLSessionTaskDelegate>
/* @optional */
#if 0
- (void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask
                                 didReceiveResponse:(NSURLResponse *)response
                                  completionHandler:(void (^)(NSURLSessionResponseDisposition disposition))completionHandler;
#endif





#if 0
- (void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask
                              didBecomeDownloadTask:(NSURLSessionDownloadTask *)downloadTask;
#endif

#if 0
- (void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask
                                didBecomeStreamTask:(NSURLSessionStreamTask *)streamTask;
#endif







#if 0
- (void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask
                                     didReceiveData:(NSData *)data;
#endif








#if 0
- (void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask
                                  willCacheResponse:(NSCachedURLResponse *)proposedResponse
                                  completionHandler:(void (^)(NSCachedURLResponse * _Nullable cachedResponse))completionHandler;
#endif


/* @end */






// @protocol NSURLSessionDownloadDelegate <NSURLSessionTaskDelegate>






#if 0
- (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask
                              didFinishDownloadingToURL:(NSURL *)location;
#endif


/* @optional */

#if 0
- (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask
                                           didWriteData:(int64_t)bytesWritten
                                      totalBytesWritten:(int64_t)totalBytesWritten
                              totalBytesExpectedToWrite:(int64_t)totalBytesExpectedToWrite;
#endif







#if 0
- (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask
                                      didResumeAtOffset:(int64_t)fileOffset
                                     expectedTotalBytes:(int64_t)expectedTotalBytes;
#endif


/* @end */


// @protocol NSURLSessionStreamDelegate <NSURLSessionTaskDelegate>
/* @optional */







// - (void)URLSession:(NSURLSession *)session readClosedForStreamTask:(NSURLSessionStreamTask *)streamTask;





// - (void)URLSession:(NSURLSession *)session writeClosedForStreamTask:(NSURLSessionStreamTask *)streamTask;
// - (void)URLSession:(NSURLSession *)session betterRouteDiscoveredForStreamTask:(NSURLSessionStreamTask *)streamTask;







#if 0
- (void)URLSession:(NSURLSession *)session streamTask:(NSURLSessionStreamTask *)streamTask
                                 didBecomeInputStream:(NSInputStream *)inputStream
                                         outputStream:(NSOutputStream *)outputStream;
#endif


/* @end */


__attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)))
// @protocol NSURLSessionWebSocketDelegate <NSURLSessionTaskDelegate>
/* @optional */




// - (void)URLSession:(NSURLSession *)session webSocketTask:(NSURLSessionWebSocketTask *)webSocketTask didOpenWithProtocol:(NSString * _Nullable) protocol;





// - (void)URLSession:(NSURLSession *)session webSocketTask:(NSURLSessionWebSocketTask *)webSocketTask didCloseWithCode:(NSURLSessionWebSocketCloseCode)closeCode reason:(NSData * _Nullable)reason;

/* @end */



extern "C" NSString * const NSURLSessionDownloadTaskResumeData __attribute__((availability(macos,introduced=10.9))) __attribute__((availability(ios,introduced=7.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)));

// @interface NSURLSessionConfiguration (NSURLSessionDeprecated)
// + (NSURLSessionConfiguration *)backgroundSessionConfiguration:(NSString *)identifier __attribute__((availability(macos,introduced=10.9,deprecated=10.10,replacement="-backgroundSessionConfigurationWithIdentifier:"))) __attribute__((availability(ios,introduced=7.0,deprecated=8.0,replacement="-backgroundSessionConfigurationWithIdentifier:"))) __attribute__((availability(watchos,introduced=2.0,deprecated=2.0,replacement="-backgroundSessionConfigurationWithIdentifier:"))) __attribute__((availability(tvos,introduced=9.0,deprecated=9.0,replacement="-backgroundSessionConfigurationWithIdentifier:")));
/* @end */





typedef NSInteger NSURLSessionTaskMetricsResourceFetchType; enum {
    NSURLSessionTaskMetricsResourceFetchTypeUnknown,
    NSURLSessionTaskMetricsResourceFetchTypeNetworkLoad,
    NSURLSessionTaskMetricsResourceFetchTypeServerPush,
    NSURLSessionTaskMetricsResourceFetchTypeLocalCache,
} __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));




__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSURLSessionTaskTransactionMetrics
#define _REWRITER_typedef_NSURLSessionTaskTransactionMetrics
typedef struct objc_object NSURLSessionTaskTransactionMetrics;
typedef struct {} _objc_exc_NSURLSessionTaskTransactionMetrics;
#endif

struct NSURLSessionTaskTransactionMetrics_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};





// @property (copy, readonly) NSURLRequest *request;




// @property (nullable, copy, readonly) NSURLResponse *response;
// @property (nullable, copy, readonly) NSDate *fetchStartDate;




// @property (nullable, copy, readonly) NSDate *domainLookupStartDate;




// @property (nullable, copy, readonly) NSDate *domainLookupEndDate;






// @property (nullable, copy, readonly) NSDate *connectStartDate;
// @property (nullable, copy, readonly) NSDate *secureConnectionStartDate;






// @property (nullable, copy, readonly) NSDate *secureConnectionEndDate;




// @property (nullable, copy, readonly) NSDate *connectEndDate;






// @property (nullable, copy, readonly) NSDate *requestStartDate;






// @property (nullable, copy, readonly) NSDate *requestEndDate;






// @property (nullable, copy, readonly) NSDate *responseStartDate;




// @property (nullable, copy, readonly) NSDate *responseEndDate;
// @property (nullable, copy, readonly) NSString *networkProtocolName;




// @property (assign, readonly, getter=isProxyConnection) BOOL proxyConnection;




// @property (assign, readonly, getter=isReusedConnection) BOOL reusedConnection;




// @property (assign, readonly) NSURLSessionTaskMetricsResourceFetchType resourceFetchType;




// @property (readonly) int64_t countOfRequestHeaderBytesSent __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));





// @property (readonly) int64_t countOfRequestBodyBytesSent __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));




// @property (readonly) int64_t countOfRequestBodyBytesBeforeEncoding __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));




// @property (readonly) int64_t countOfResponseHeaderBytesReceived __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));





// @property (readonly) int64_t countOfResponseBodyBytesReceived __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));




// @property (readonly) int64_t countOfResponseBodyBytesAfterDecoding __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// @property (nullable, copy, readonly) NSString *localAddress __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// @property (nullable, copy, readonly) NSNumber *localPort __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// @property (nullable, copy, readonly) NSString *remoteAddress __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// @property (nullable, copy, readonly) NSNumber *remotePort __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// @property (nullable, copy, readonly) NSNumber *negotiatedTLSProtocolVersion __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));
// @property (nullable, copy, readonly) NSNumber *negotiatedTLSCipherSuite __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));




// @property (readonly, getter=isCellular) BOOL cellular __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));




// @property (readonly, getter=isExpensive) BOOL expensive __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));




// @property (readonly, getter=isConstrained) BOOL constrained __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));




// @property (readonly, getter=isMultipath) BOOL multipath __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));


// - (instancetype)init __attribute__((availability(macos,introduced=10.12,deprecated=10.15,message="Not supported"))) __attribute__((availability(ios,introduced=10.0,deprecated=13.0,message="Not supported"))) __attribute__((availability(watchos,introduced=3.0,deprecated=6.0,message="Not supported"))) __attribute__((availability(tvos,introduced=10.0,deprecated=13.0,message="Not supported")));
// + (instancetype)new __attribute__((availability(macos,introduced=10.12,deprecated=10.15,message="Not supported"))) __attribute__((availability(ios,introduced=10.0,deprecated=13.0,message="Not supported"))) __attribute__((availability(watchos,introduced=3.0,deprecated=6.0,message="Not supported"))) __attribute__((availability(tvos,introduced=10.0,deprecated=13.0,message="Not supported")));

/* @end */



__attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)))

#ifndef _REWRITER_typedef_NSURLSessionTaskMetrics
#define _REWRITER_typedef_NSURLSessionTaskMetrics
typedef struct objc_object NSURLSessionTaskMetrics;
typedef struct {} _objc_exc_NSURLSessionTaskMetrics;
#endif

struct NSURLSessionTaskMetrics_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};





// @property (copy, readonly) NSArray<NSURLSessionTaskTransactionMetrics *> *transactionMetrics;






// @property (copy, readonly) NSDateInterval *taskInterval;




// @property (assign, readonly) NSUInteger redirectCount;


// - (instancetype)init __attribute__((availability(macos,introduced=10.12,deprecated=10.15,message="Not supported"))) __attribute__((availability(ios,introduced=10.0,deprecated=13.0,message="Not supported"))) __attribute__((availability(watchos,introduced=3.0,deprecated=6.0,message="Not supported"))) __attribute__((availability(tvos,introduced=10.0,deprecated=13.0,message="Not supported")));
// + (instancetype)new __attribute__((availability(macos,introduced=10.12,deprecated=10.15,message="Not supported"))) __attribute__((availability(ios,introduced=10.0,deprecated=13.0,message="Not supported"))) __attribute__((availability(watchos,introduced=3.0,deprecated=6.0,message="Not supported"))) __attribute__((availability(tvos,introduced=10.0,deprecated=13.0,message="Not supported")));

/* @end */

#pragma clang assume_nonnull end
#pragma clang assume_nonnull begin

// @class NSArray;
#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSArray
#define _REWRITER_typedef_NSArray
typedef struct objc_object NSArray;
typedef struct {} _objc_exc_NSArray;
#endif

#ifndef _REWRITER_typedef_NSDictionary
#define _REWRITER_typedef_NSDictionary
typedef struct objc_object NSDictionary;
typedef struct {} _objc_exc_NSDictionary;
#endif

#ifndef _REWRITER_typedef_NSSet
#define _REWRITER_typedef_NSSet
typedef struct objc_object NSSet;
typedef struct {} _objc_exc_NSSet;
#endif

#ifndef _REWRITER_typedef_NSString
#define _REWRITER_typedef_NSString
typedef struct objc_object NSString;
typedef struct {} _objc_exc_NSString;
#endif

#ifndef _REWRITER_typedef_NSURL
#define _REWRITER_typedef_NSURL
typedef struct objc_object NSURL;
typedef struct {} _objc_exc_NSURL;
#endif

#ifndef _REWRITER_typedef_NSInputStream
#define _REWRITER_typedef_NSInputStream
typedef struct objc_object NSInputStream;
typedef struct {} _objc_exc_NSInputStream;
#endif

#ifndef _REWRITER_typedef_NSOutputStream
#define _REWRITER_typedef_NSOutputStream
typedef struct objc_object NSOutputStream;
typedef struct {} _objc_exc_NSOutputStream;
#endif

#ifndef _REWRITER_typedef_NSError
#define _REWRITER_typedef_NSError
typedef struct objc_object NSError;
typedef struct {} _objc_exc_NSError;
#endif

// @protocol NSUserActivityDelegate;

typedef NSString* NSUserActivityPersistentIdentifier __attribute__((swift_bridged_typedef));



__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSUserActivity
#define _REWRITER_typedef_NSUserActivity
typedef struct objc_object NSUserActivity;
typedef struct {} _objc_exc_NSUserActivity;
#endif

struct NSUserActivity_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};




// - (instancetype)initWithActivityType:(NSString *)activityType __attribute__((objc_designated_initializer));



// - (instancetype)init __attribute__((availability(macosx,introduced=10.10,deprecated=10.12,message="Use initWithActivityType: with a specific activity type string"))) __attribute__((availability(ios,introduced=8.0,deprecated=10.0,message="Use initWithActivityType: with a specific activity type string"))) __attribute__((availability(watchos,introduced=2.0,deprecated=3.0,message="Use initWithActivityType: with a specific activity type string"))) __attribute__((availability(tvos,introduced=9.0,deprecated=10.0,message="Use initWithActivityType: with a specific activity type string")));



// @property (readonly, copy) NSString *activityType;



// @property (nullable, copy) NSString *title;



// @property (nullable, copy) NSDictionary *userInfo;



// - (void)addUserInfoEntriesFromDictionary:(NSDictionary *)otherDictionary;


// @property (nullable, copy) NSSet<NSString *> *requiredUserInfoKeys __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));



// @property (assign) BOOL needsSave;



// @property (nullable, copy) NSURL *webpageURL;



// @property (nullable, copy) NSURL *referrerURL __attribute__((availability(macos,introduced=10.13))) __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(watchos,introduced=4.0))) __attribute__((availability(tvos,introduced=11.0)));


// @property (nullable, copy) NSDate *expirationDate __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));


// @property (copy) NSSet<NSString *> *keywords __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));



// @property BOOL supportsContinuationStreams;



// @property (nullable, weak) id<NSUserActivityDelegate> delegate;




// @property (nullable, copy) NSString* targetContentIdentifier __attribute__((availability(macos,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0))) __attribute__((availability(tvos,introduced=13.0)));



// - (void)becomeCurrent;


// - (void)resignCurrent __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));



// - (void)invalidate;



// - (void)getContinuationStreamsWithCompletionHandler:(void (^)(NSInputStream * _Nullable inputStream, NSOutputStream * _Nullable outputStream, NSError * _Nullable error))completionHandler;


// @property (getter=isEligibleForHandoff) BOOL eligibleForHandoff __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));


// @property (getter=isEligibleForSearch) BOOL eligibleForSearch __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));


// @property (getter=isEligibleForPublicIndexing) BOOL eligibleForPublicIndexing __attribute__((availability(macos,introduced=10.11))) __attribute__((availability(ios,introduced=9.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=10.0)));

// @property (getter=isEligibleForPrediction) BOOL eligibleForPrediction __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(macos,unavailable))) __attribute__((availability(tvos,unavailable)));

// @property (copy, nullable) NSUserActivityPersistentIdentifier persistentIdentifier __attribute__((availability(macos,introduced=15.0))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,unavailable)));

// +(void) deleteSavedUserActivitiesWithPersistentIdentifiers:(NSArray<NSUserActivityPersistentIdentifier>*) persistentIdentifiers completionHandler:(void(^)(void))handler __attribute__((availability(macos,introduced=15.0))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,unavailable)));
// +(void) deleteAllSavedUserActivitiesWithCompletionHandler:(void(^)(void))handler __attribute__((availability(macos,introduced=15.0))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0))) __attribute__((availability(tvos,unavailable)));

/* @end */




extern "C" NSString * const NSUserActivityTypeBrowsingWeb;



__attribute__((availability(macos,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(watchos,introduced=3.0))) __attribute__((availability(tvos,introduced=9.0)))
// @protocol NSUserActivityDelegate <NSObject>
/* @optional */



// - (void)userActivityWillSave:(NSUserActivity *)userActivity;



// - (void)userActivityWasContinued:(NSUserActivity *)userActivity;



// - (void)userActivity:(NSUserActivity *)userActivity didReceiveInputStream:(NSInputStream *) inputStream outputStream:(NSOutputStream *)outputStream;

/* @end */

#pragma clang assume_nonnull end






typedef __darwin_uuid_string_t uuid_string_t;





static const uuid_t UUID_NULL __attribute__ ((unused)) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};


extern "C" {


void uuid_clear(uuid_t uu);

int uuid_compare(const uuid_t uu1, const uuid_t uu2);

void uuid_copy(uuid_t dst, const uuid_t src);

void uuid_generate(uuid_t out);
void uuid_generate_random(uuid_t out);
void uuid_generate_time(uuid_t out);

void uuid_generate_early_random(uuid_t out);

int uuid_is_null(const uuid_t uu);

int uuid_parse(const uuid_string_t in, uuid_t uu);

void uuid_unparse(const uuid_t uu, uuid_string_t out);
void uuid_unparse_lower(const uuid_t uu, uuid_string_t out);
void uuid_unparse_upper(const uuid_t uu, uuid_string_t out);


}



#pragma clang assume_nonnull begin

__attribute__((availability(macos,introduced=10.8))) __attribute__((availability(ios,introduced=6.0))) __attribute__((availability(watchos,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0)))

#ifndef _REWRITER_typedef_NSUUID
#define _REWRITER_typedef_NSUUID
typedef struct objc_object NSUUID;
typedef struct {} _objc_exc_NSUUID;
#endif

struct NSUUID_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
};



// + (instancetype)UUID;


// - (instancetype)init __attribute__((objc_designated_initializer));


// - (nullable instancetype)initWithUUIDString:(NSString *)string;


// - (instancetype)initWithUUIDBytes:(const uuid_t _Nullable)bytes;


// - (void)getUUIDBytes:(uuid_t _Nonnull)uuid;


// @property (readonly, copy) NSString *UUIDString;

/* @end */

#pragma clang assume_nonnull end
typedef struct objc_method *Method;


typedef struct objc_ivar *Ivar;


typedef struct objc_category *Category;


typedef struct objc_property *objc_property_t;

struct objc_class {
    Class _Nonnull isa __attribute__((deprecated));
} __attribute__((unavailable));





// @class Protocol;
#ifndef _REWRITER_typedef_Protocol
#define _REWRITER_typedef_Protocol
typedef struct objc_object Protocol;
typedef struct {} _objc_exc_Protocol;
#endif






struct objc_method_description {
    SEL _Nullable name;
    char * _Nullable types;
};


typedef struct {
    const char * _Nonnull name;
    const char * _Nonnull value;
} objc_property_attribute_t;
extern "C" __attribute__((visibility("default"))) id _Nullable object_copy(id _Nullable obj, size_t size)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)))
                        ;
extern "C" __attribute__((visibility("default"))) id _Nullable
object_dispose(id _Nullable obj)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)))
                        ;
extern "C" __attribute__((visibility("default"))) Class _Nullable
object_getClass(id _Nullable obj)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Class _Nullable
object_setClass(id _Nullable obj, Class _Nonnull cls)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
object_isClass(id _Nullable obj)
    __attribute__((availability(macosx,introduced=10.10))) __attribute__((availability(ios,introduced=8.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) id _Nullable
object_getIvar(id _Nullable obj, Ivar _Nonnull ivar)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
object_setIvar(id _Nullable obj, Ivar _Nonnull ivar, id _Nullable value)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
object_setIvarWithStrongDefault(id _Nullable obj, Ivar _Nonnull ivar,
                                id _Nullable value)
    __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern "C" __attribute__((visibility("default"))) Ivar _Nullable
object_setInstanceVariable(id _Nullable obj, const char * _Nonnull name,
                           void * _Nullable value)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)))
                        ;
extern "C" __attribute__((visibility("default"))) Ivar _Nullable
object_setInstanceVariableWithStrongDefault(id _Nullable obj,
                                            const char * _Nonnull name,
                                            void * _Nullable value)
    __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)))
                        ;
extern "C" __attribute__((visibility("default"))) Ivar _Nullable
object_getInstanceVariable(id _Nullable obj, const char * _Nonnull name,
                           void * _Nullable * _Nullable outValue)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)))
                        ;
extern "C" __attribute__((visibility("default"))) Class _Nullable
objc_getClass(const char * _Nonnull name)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Class _Nullable
objc_getMetaClass(const char * _Nonnull name)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Class _Nullable
objc_lookUpClass(const char * _Nonnull name)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Class _Nonnull
objc_getRequiredClass(const char * _Nonnull name)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) int
objc_getClassList(Class _Nonnull * _Nullable buffer, int bufferCount)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Class _Nonnull * _Nullable
objc_copyClassList(unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=3.1))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nonnull
class_getName(Class _Nullable cls)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
class_isMetaClass(Class _Nullable cls)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Class _Nullable
class_getSuperclass(Class _Nullable cls)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Class _Nonnull
class_setSuperclass(Class _Nonnull cls, Class _Nonnull newSuper)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(macosx,deprecated=10.5,message="not recommended")))
    __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(ios,deprecated=2.0,message="not recommended")))
    __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(tvos,deprecated=9.0,message="not recommended")))
    __attribute__((availability(watchos,introduced=1.0))) __attribute__((availability(watchos,deprecated=1.0,message="not recommended")))

;
extern "C" __attribute__((visibility("default"))) int
class_getVersion(Class _Nullable cls)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
class_setVersion(Class _Nullable cls, int version)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) size_t
class_getInstanceSize(Class _Nullable cls)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Ivar _Nullable
class_getInstanceVariable(Class _Nullable cls, const char * _Nonnull name)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Ivar _Nullable
class_getClassVariable(Class _Nullable cls, const char * _Nonnull name)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Ivar _Nonnull * _Nullable
class_copyIvarList(Class _Nullable cls, unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Method _Nullable
class_getInstanceMethod(Class _Nullable cls, SEL _Nonnull name)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Method _Nullable
class_getClassMethod(Class _Nullable cls, SEL _Nonnull name)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) IMP _Nullable
class_getMethodImplementation(Class _Nullable cls, SEL _Nonnull name)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) IMP _Nullable
class_getMethodImplementation_stret(Class _Nullable cls, SEL _Nonnull name)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)))
    __attribute__((unavailable("not available in arm64")));
extern "C" __attribute__((visibility("default"))) BOOL
class_respondsToSelector(Class _Nullable cls, SEL _Nonnull sel)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Method _Nonnull * _Nullable
class_copyMethodList(Class _Nullable cls, unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
class_conformsToProtocol(Class _Nullable cls, Protocol * _Nullable protocol)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Protocol * __attribute__((objc_ownership(none))) _Nonnull * _Nullable
class_copyProtocolList(Class _Nullable cls, unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) objc_property_t _Nullable
class_getProperty(Class _Nullable cls, const char * _Nonnull name)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) objc_property_t _Nonnull * _Nullable
class_copyPropertyList(Class _Nullable cls, unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const uint8_t * _Nullable
class_getIvarLayout(Class _Nullable cls)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const uint8_t * _Nullable
class_getWeakIvarLayout(Class _Nullable cls)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
class_addMethod(Class _Nullable cls, SEL _Nonnull name, IMP _Nonnull imp,
                const char * _Nullable types)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) IMP _Nullable
class_replaceMethod(Class _Nullable cls, SEL _Nonnull name, IMP _Nonnull imp,
                    const char * _Nullable types)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
class_addIvar(Class _Nullable cls, const char * _Nonnull name, size_t size,
              uint8_t alignment, const char * _Nullable types)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
class_addProtocol(Class _Nullable cls, Protocol * _Nonnull protocol)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
class_addProperty(Class _Nullable cls, const char * _Nonnull name,
                  const objc_property_attribute_t * _Nullable attributes,
                  unsigned int attributeCount)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
class_replaceProperty(Class _Nullable cls, const char * _Nonnull name,
                      const objc_property_attribute_t * _Nullable attributes,
                      unsigned int attributeCount)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));







extern "C" __attribute__((visibility("default"))) void
class_setIvarLayout(Class _Nullable cls, const uint8_t * _Nullable layout)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));







extern "C" __attribute__((visibility("default"))) void
class_setWeakIvarLayout(Class _Nullable cls, const uint8_t * _Nullable layout)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Class _Nonnull
objc_getFutureClass(const char * _Nonnull name)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)))
                        ;
extern "C" __attribute__((visibility("default"))) id _Nullable
class_createInstance(Class _Nullable cls, size_t extraBytes)
    __attribute__((ns_returns_retained))
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) id _Nullable
objc_constructInstance(Class _Nullable cls, void * _Nullable bytes)
    __attribute__((availability(macosx,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)))
                        ;
extern "C" __attribute__((visibility("default"))) void * _Nullable objc_destructInstance(id _Nullable obj)
    __attribute__((availability(macosx,introduced=10.6))) __attribute__((availability(ios,introduced=3.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)))
                        ;
extern "C" __attribute__((visibility("default"))) Class _Nullable
objc_allocateClassPair(Class _Nullable superclass, const char * _Nonnull name,
                       size_t extraBytes)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));






extern "C" __attribute__((visibility("default"))) void
objc_registerClassPair(Class _Nonnull cls)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));






extern "C" __attribute__((visibility("default"))) Class _Nonnull
objc_duplicateClass(Class _Nonnull original, const char * _Nonnull name,
                    size_t extraBytes)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
objc_disposeClassPair(Class _Nonnull cls)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) SEL _Nonnull
method_getName(Method _Nonnull m)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) IMP _Nonnull
method_getImplementation(Method _Nonnull m)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nullable
method_getTypeEncoding(Method _Nonnull m)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) unsigned int
method_getNumberOfArguments(Method _Nonnull m)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) char * _Nonnull
method_copyReturnType(Method _Nonnull m)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) char * _Nullable
method_copyArgumentType(Method _Nonnull m, unsigned int index)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
method_getReturnType(Method _Nonnull m, char * _Nonnull dst, size_t dst_len)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
method_getArgumentType(Method _Nonnull m, unsigned int index,
                       char * _Nullable dst, size_t dst_len)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));

extern "C" __attribute__((visibility("default"))) struct objc_method_description * _Nonnull
method_getDescription(Method _Nonnull m)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) IMP _Nonnull
method_setImplementation(Method _Nonnull m, IMP _Nonnull imp)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
method_exchangeImplementations(Method _Nonnull m1, Method _Nonnull m2)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nullable
ivar_getName(Ivar _Nonnull v)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nullable
ivar_getTypeEncoding(Ivar _Nonnull v)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) ptrdiff_t
ivar_getOffset(Ivar _Nonnull v)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nonnull
property_getName(objc_property_t _Nonnull property)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nullable
property_getAttributes(objc_property_t _Nonnull property)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) objc_property_attribute_t * _Nullable
property_copyAttributeList(objc_property_t _Nonnull property,
                           unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) char * _Nullable
property_copyAttributeValue(objc_property_t _Nonnull property,
                            const char * _Nonnull attributeName)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Protocol * _Nullable
objc_getProtocol(const char * _Nonnull name)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Protocol * __attribute__((objc_ownership(none))) _Nonnull * _Nullable
objc_copyProtocolList(unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
protocol_conformsToProtocol(Protocol * _Nullable proto,
                            Protocol * _Nullable other)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
protocol_isEqual(Protocol * _Nullable proto, Protocol * _Nullable other)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nonnull
protocol_getName(Protocol * _Nonnull proto)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) struct objc_method_description
protocol_getMethodDescription(Protocol * _Nonnull proto, SEL _Nonnull aSel,
                              BOOL isRequiredMethod, BOOL isInstanceMethod)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) struct objc_method_description * _Nullable
protocol_copyMethodDescriptionList(Protocol * _Nonnull proto,
                                   BOOL isRequiredMethod,
                                   BOOL isInstanceMethod,
                                   unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) objc_property_t _Nullable
protocol_getProperty(Protocol * _Nonnull proto,
                     const char * _Nonnull name,
                     BOOL isRequiredProperty, BOOL isInstanceProperty)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) objc_property_t _Nonnull * _Nullable
protocol_copyPropertyList(Protocol * _Nonnull proto,
                          unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) objc_property_t _Nonnull * _Nullable
protocol_copyPropertyList2(Protocol * _Nonnull proto,
                           unsigned int * _Nullable outCount,
                           BOOL isRequiredProperty, BOOL isInstanceProperty)
    __attribute__((availability(macosx,introduced=10.12))) __attribute__((availability(ios,introduced=10.0))) __attribute__((availability(tvos,introduced=10.0))) __attribute__((availability(watchos,introduced=3.0)));
extern "C" __attribute__((visibility("default"))) Protocol * __attribute__((objc_ownership(none))) _Nonnull * _Nullable
protocol_copyProtocolList(Protocol * _Nonnull proto,
                          unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) Protocol * _Nullable
objc_allocateProtocol(const char * _Nonnull name)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));







extern "C" __attribute__((visibility("default"))) void
objc_registerProtocol(Protocol * _Nonnull proto)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
protocol_addMethodDescription(Protocol * _Nonnull proto, SEL _Nonnull name,
                              const char * _Nullable types,
                              BOOL isRequiredMethod, BOOL isInstanceMethod)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
protocol_addProtocol(Protocol * _Nonnull proto, Protocol * _Nonnull addition)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
protocol_addProperty(Protocol * _Nonnull proto, const char * _Nonnull name,
                     const objc_property_attribute_t * _Nullable attributes,
                     unsigned int attributeCount,
                     BOOL isRequiredProperty, BOOL isInstanceProperty)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nonnull * _Nonnull
objc_copyImageNames(unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nullable
class_getImageName(Class _Nullable cls)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nonnull * _Nullable
objc_copyClassNamesForImage(const char * _Nonnull image,
                            unsigned int * _Nullable outCount)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) const char * _Nonnull
sel_getName(SEL _Nonnull sel)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) SEL _Nonnull
sel_registerName(const char * _Nonnull str)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
sel_isEqual(SEL _Nonnull lhs, SEL _Nonnull rhs)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
objc_enumerationMutation(id _Nonnull obj)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));






extern "C" __attribute__((visibility("default"))) void
objc_setEnumerationMutationHandler(void (*_Nullable handler)(id _Nonnull ))
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
objc_setForwardHandler(void * _Nonnull fwd, void * _Nonnull fwd_stret)
    __attribute__((availability(macosx,introduced=10.5))) __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) IMP _Nonnull
imp_implementationWithBlock(id _Nonnull block)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) id _Nullable
imp_getBlock(IMP _Nonnull anImp)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) BOOL
imp_removeBlock(IMP _Nonnull anImp)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=4.3))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) id _Nullable
objc_loadWeak(id _Nullable * _Nonnull location)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) id _Nullable
objc_storeWeak(id _Nullable * _Nonnull location, id _Nullable obj)
    __attribute__((availability(macosx,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
typedef uintptr_t objc_AssociationPolicy; enum {
    OBJC_ASSOCIATION_ASSIGN = 0,
    OBJC_ASSOCIATION_RETAIN_NONATOMIC = 1,

    OBJC_ASSOCIATION_COPY_NONATOMIC = 3,

    OBJC_ASSOCIATION_RETAIN = 01401,

    OBJC_ASSOCIATION_COPY = 01403

};
extern "C" __attribute__((visibility("default"))) void
objc_setAssociatedObject(id _Nonnull object, const void * _Nonnull key,
                         id _Nullable value, objc_AssociationPolicy policy)
    __attribute__((availability(macosx,introduced=10.6))) __attribute__((availability(ios,introduced=3.1))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) id _Nullable
objc_getAssociatedObject(id _Nonnull object, const void * _Nonnull key)
    __attribute__((availability(macosx,introduced=10.6))) __attribute__((availability(ios,introduced=3.1))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
extern "C" __attribute__((visibility("default"))) void
objc_removeAssociatedObjects(id _Nonnull object)
    __attribute__((availability(macosx,introduced=10.6))) __attribute__((availability(ios,introduced=3.1))) __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(watchos,introduced=1.0)));
typedef BOOL (*objc_hook_getImageName)(Class _Nonnull cls, const char * _Nullable * _Nonnull outImageName);
extern "C" __attribute__((visibility("default"))) void objc_setHook_getImageName(objc_hook_getImageName _Nonnull newValue,
                                           objc_hook_getImageName _Nullable * _Nonnull outOldValue)
    __attribute__((availability(macosx,introduced=10.14))) __attribute__((availability(ios,introduced=12.0))) __attribute__((availability(tvos,introduced=12.0))) __attribute__((availability(watchos,introduced=5.0)));
typedef BOOL (*objc_hook_getClass)(const char * _Nonnull name, Class _Nullable * _Nonnull outClass);
extern "C" __attribute__((visibility("default"))) void objc_setHook_getClass(objc_hook_getClass _Nonnull newValue,
                                       objc_hook_getClass _Nullable * _Nonnull outOldValue)
    __attribute__((availability(macosx,introduced=10.14.4))) __attribute__((availability(ios,introduced=12.2))) __attribute__((availability(tvos,introduced=12.2))) __attribute__((availability(watchos,introduced=5.2)));
typedef void (*objc_hook_setAssociatedObject)(id _Nonnull object, const void * _Nonnull key,
                                              id _Nullable value, objc_AssociationPolicy policy);
extern "C" __attribute__((visibility("default"))) void objc_setHook_setAssociatedObject(objc_hook_setAssociatedObject _Nonnull newValue,
                                       objc_hook_setAssociatedObject _Nullable * _Nonnull outOldValue)
    __attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));







struct mach_header;
typedef void (*objc_func_loadImage)(const struct mach_header * _Nonnull header);
extern "C" __attribute__((visibility("default"))) void objc_addLoadImageFunc(objc_func_loadImage _Nonnull func)
    __attribute__((availability(macosx,introduced=10.15))) __attribute__((availability(ios,introduced=13.0))) __attribute__((availability(tvos,introduced=13.0))) __attribute__((availability(watchos,introduced=6.0)));





typedef Class _Nullable
(*_objc_swiftMetadataInitializer)(Class _Nonnull cls, void * _Nullable arg);
extern "C" __attribute__((visibility("default"))) Class _Nullable
_objc_realizeClassFromSwift(Class _Nullable cls, void * _Nullable previously)
    __attribute__((availability(macosx,introduced=10.14.4))) __attribute__((availability(ios,introduced=12.2))) __attribute__((availability(tvos,introduced=12.2))) __attribute__((availability(watchos,introduced=5.2)));
struct objc_method_list;






extern "C" __attribute__((visibility("default"))) IMP _Nullable
class_lookupMethod(Class _Nullable cls, SEL _Nonnull sel)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(macosx,deprecated=10.5,message="use class_getMethodImplementation instead")))
    __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(ios,deprecated=2.0,message="use class_getMethodImplementation instead")))
    __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(tvos,deprecated=9.0,message="use class_getMethodImplementation instead")))
    __attribute__((availability(watchos,introduced=1.0))) __attribute__((availability(watchos,deprecated=1.0,message="use class_getMethodImplementation instead")))

;
extern "C" __attribute__((visibility("default"))) BOOL
class_respondsToMethod(Class _Nullable cls, SEL _Nonnull sel)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(macosx,deprecated=10.5,message="use class_respondsToSelector instead")))
    __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(ios,deprecated=2.0,message="use class_respondsToSelector instead")))
    __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(tvos,deprecated=9.0,message="use class_respondsToSelector instead")))
    __attribute__((availability(watchos,introduced=1.0))) __attribute__((availability(watchos,deprecated=1.0,message="use class_respondsToSelector instead")))

;

extern "C" __attribute__((visibility("default"))) void
_objc_flush_caches(Class _Nullable cls)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(macosx,deprecated=10.5,message="not recommended")))
    __attribute__((availability(ios,introduced=2.0))) __attribute__((availability(ios,deprecated=2.0,message="not recommended")))
    __attribute__((availability(tvos,introduced=9.0))) __attribute__((availability(tvos,deprecated=9.0,message="not recommended")))
    __attribute__((availability(watchos,introduced=1.0))) __attribute__((availability(watchos,deprecated=1.0,message="not recommended")))

;

extern "C" __attribute__((visibility("default"))) id _Nullable
object_copyFromZone(id _Nullable anObject, size_t nBytes, void * _Nullable z)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(macosx,deprecated=10.5,message="use object_copy instead"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(watchos,unavailable)));

extern "C" __attribute__((visibility("default"))) id _Nullable
object_realloc(id _Nullable anObject, size_t nBytes)
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) id _Nullable
object_reallocFromZone(id _Nullable anObject, size_t nBytes, void * _Nullable z)
    __attribute__((unavailable));


extern "C" __attribute__((visibility("default"))) void * _Nonnull
objc_getClasses(void)
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) void
objc_addClass(Class _Nonnull myClass)
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) void
objc_setClassHandler(int (* _Nullable )(const char * _Nonnull))
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) void
objc_setMultithreaded(BOOL flag)
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) id _Nullable
class_createInstanceFromZone(Class _Nullable, size_t idxIvars,
                             void * _Nullable z)
    __attribute__((availability(macosx,introduced=10.0))) __attribute__((availability(macosx,deprecated=10.5,message="use class_createInstance instead"))) __attribute__((availability(ios,unavailable))) __attribute__((availability(tvos,unavailable))) __attribute__((availability(watchos,unavailable)));

extern "C" __attribute__((visibility("default"))) void
class_addMethods(Class _Nullable, struct objc_method_list * _Nonnull)
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) void
class_removeMethods(Class _Nullable, struct objc_method_list * _Nonnull)
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) void
_objc_resolve_categories_for_class(Class _Nonnull cls)
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) Class _Nonnull
class_poseAs(Class _Nonnull imposter, Class _Nonnull original)
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) unsigned int
method_getSizeOfArguments(Method _Nonnull m)
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) unsigned
method_getArgumentInfo(struct objc_method * _Nonnull m, int arg,
                       const char * _Nullable * _Nonnull type,
                       int * _Nonnull offset)
    __attribute__((unavailable))
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) Class _Nullable
objc_getOrigClass(const char * _Nonnull name)
    __attribute__((unavailable));


extern "C" __attribute__((visibility("default"))) struct objc_method_list * _Nullable
class_nextMethodList(Class _Nullable, void * _Nullable * _Nullable)
    __attribute__((unavailable));







extern "C" __attribute__((visibility("default"))) id _Nullable
(* _Nonnull _alloc)(Class _Nullable, size_t)
    __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) id _Nullable
(* _Nonnull _copy)(id _Nullable, size_t)
     __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) id _Nullable
(* _Nonnull _realloc)(id _Nullable, size_t)
     __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) id _Nullable
(* _Nonnull _dealloc)(id _Nullable)
     __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) id _Nullable
(* _Nonnull _zoneAlloc)(Class _Nullable, size_t, void * _Nullable)
     __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) id _Nullable
(* _Nonnull _zoneRealloc)(id _Nullable, size_t, void * _Nullable)
     __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) id _Nullable
(* _Nonnull _zoneCopy)(id _Nullable, size_t, void * _Nullable)
     __attribute__((unavailable));

extern "C" __attribute__((visibility("default"))) void
(* _Nonnull _error)(id _Nullable, const char * _Nonnull, va_list)
     __attribute__((unavailable));
struct NSObjct_IMPL {
    Class isa;
};

struct Person_IMPL {
    struct NSObjct_IMPL NSObjct_IVARS;
    NSString *name;
    int age;
};

struct Student_IMPL {
    struct Person_IMPL NSObjct_IVARS;
    NSString *name;
    int age;
    int number;
};


#ifndef _REWRITER_typedef_Person
#define _REWRITER_typedef_Person
typedef struct objc_object Person;
typedef struct {} _objc_exc_Person;
#endif

struct Person_IMPL {
	struct NSObject_IMPL NSObject_IVARS;
	NSString *name;
	int age;
};

/* @end */


// @implementation Person

// @end


#ifndef _REWRITER_typedef_Student
#define _REWRITER_typedef_Student
typedef struct objc_object Student;
typedef struct {} _objc_exc_Student;
#endif

struct Student_IMPL {
	struct Person_IMPL Person_IVARS;
	int number;
};

// - (void)study;
/* @end */


// @implementation Student

static void _I_Student_study(Student * self, SEL _cmd) {

}

// @end

int main(int argc, const char * argv[]) {
    /* @autoreleasepool */ { __AtAutoreleasePool __autoreleasepool; 




        Student *stu = ((Student *(*)(id, SEL))(void *)objc_msgSend)((id)((Student *(*)(id, SEL))(void *)objc_msgSend)((id)objc_getClass("Student"), sel_registerName("alloc")), sel_registerName("init"));

        Class objClass1 = ((Class (*)(id, SEL))(void *)objc_msgSend)((id)stu, sel_registerName("class"));
        Class objClass2 = ((Class (*)(id, SEL))(void *)objc_msgSend)((id)objc_getClass("Student"), sel_registerName("class"));
        Class objClass3 = object_getClass(stu);

        ((void (*)(id, SEL))(void *)objc_msgSend)((id)stu, sel_registerName("study"));
        Class objectMetaClass = object_getClass(((Class (*)(id, SEL))(void *)objc_msgSend)((id)objc_getClass("Student"), sel_registerName("class")));


        Class objectMetaClass2 = ((Class (*)(id, SEL))(void *)objc_msgSend)((id)objClass2, sel_registerName("class"));


        class_isMetaClass(objectMetaClass2);
    }
    return 0;
}

struct _prop_t {
	const char *name;
	const char *attributes;
};

struct _protocol_t;

struct _objc_method {
	struct objc_selector * _cmd;
	const char *method_type;
	void  *_imp;
};

struct _protocol_t {
	void * isa;  // NULL
	const char *protocol_name;
	const struct _protocol_list_t * protocol_list; // super protocols
	const struct method_list_t *instance_methods;
	const struct method_list_t *class_methods;
	const struct method_list_t *optionalInstanceMethods;
	const struct method_list_t *optionalClassMethods;
	const struct _prop_list_t * properties;
	const unsigned int size;  // sizeof(struct _protocol_t)
	const unsigned int flags;  // = 0
	const char ** extendedMethodTypes;
};

struct _ivar_t {
	unsigned long int *offset;  // pointer to ivar offset location
	const char *name;
	const char *type;
	unsigned int alignment;
	unsigned int  size;
};

struct _class_ro_t {
	unsigned int flags;
	unsigned int instanceStart;
	unsigned int instanceSize;
	const unsigned char *ivarLayout;
	const char *name;
	const struct _method_list_t *baseMethods;
	const struct _objc_protocol_list *baseProtocols;
	const struct _ivar_list_t *ivars;
	const unsigned char *weakIvarLayout;
	const struct _prop_list_t *properties;
};

struct _class_t {
	struct _class_t *isa;
	struct _class_t *superclass;
	void *cache;
	void *vtable;
	struct _class_ro_t *ro;
};

struct _category_t {
	const char *name;
	struct _class_t *cls;
	const struct _method_list_t *instance_methods;
	const struct _method_list_t *class_methods;
	const struct _protocol_list_t *protocols;
	const struct _prop_list_t *properties;
};
extern "C" __declspec(dllimport) struct objc_cache _objc_empty_cache;
#pragma warning(disable:4273)

extern "C" unsigned long int OBJC_IVAR_$_Person$name __attribute__ ((used, section ("__DATA,__objc_ivar"))) = __OFFSETOFIVAR__(struct Person, name);
extern "C" unsigned long int OBJC_IVAR_$_Person$age __attribute__ ((used, section ("__DATA,__objc_ivar"))) = __OFFSETOFIVAR__(struct Person, age);

static struct /*_ivar_list_t*/ {
	unsigned int entsize;  // sizeof(struct _prop_t)
	unsigned int count;
	struct _ivar_t ivar_list[2];
} _OBJC_$_INSTANCE_VARIABLES_Person __attribute__ ((used, section ("__DATA,__objc_const"))) = {
	sizeof(_ivar_t),
	2,
	{{(unsigned long int *)&OBJC_IVAR_$_Person$name, "name", "@\"NSString\"", 3, 8},
	 {(unsigned long int *)&OBJC_IVAR_$_Person$age, "age", "i", 2, 4}}
};

static struct _class_ro_t _OBJC_METACLASS_RO_$_Person __attribute__ ((used, section ("__DATA,__objc_const"))) = {
	1, sizeof(struct _class_t), sizeof(struct _class_t), 
	0, 
	"Person",
	0, 
	0, 
	0, 
	0, 
	0, 
};

static struct _class_ro_t _OBJC_CLASS_RO_$_Person __attribute__ ((used, section ("__DATA,__objc_const"))) = {
	0, __OFFSETOFIVAR__(struct Person, name), sizeof(struct Person_IMPL), 
	0, 
	"Person",
	0, 
	0, 
	(const struct _ivar_list_t *)&_OBJC_$_INSTANCE_VARIABLES_Person,
	0, 
	0, 
};

extern "C" __declspec(dllimport) struct _class_t OBJC_METACLASS_$_NSObject;

extern "C" __declspec(dllexport) struct _class_t OBJC_METACLASS_$_Person __attribute__ ((used, section ("__DATA,__objc_data"))) = {
	0, // &OBJC_METACLASS_$_NSObject,
	0, // &OBJC_METACLASS_$_NSObject,
	0, // (void *)&_objc_empty_cache,
	0, // unused, was (void *)&_objc_empty_vtable,
	&_OBJC_METACLASS_RO_$_Person,
};

extern "C" __declspec(dllimport) struct _class_t OBJC_CLASS_$_NSObject;

extern "C" __declspec(dllexport) struct _class_t OBJC_CLASS_$_Person __attribute__ ((used, section ("__DATA,__objc_data"))) = {
	0, // &OBJC_METACLASS_$_Person,
	0, // &OBJC_CLASS_$_NSObject,
	0, // (void *)&_objc_empty_cache,
	0, // unused, was (void *)&_objc_empty_vtable,
	&_OBJC_CLASS_RO_$_Person,
};
static void OBJC_CLASS_SETUP_$_Person(void ) {
	OBJC_METACLASS_$_Person.isa = &OBJC_METACLASS_$_NSObject;
	OBJC_METACLASS_$_Person.superclass = &OBJC_METACLASS_$_NSObject;
	OBJC_METACLASS_$_Person.cache = &_objc_empty_cache;
	OBJC_CLASS_$_Person.isa = &OBJC_METACLASS_$_Person;
	OBJC_CLASS_$_Person.superclass = &OBJC_CLASS_$_NSObject;
	OBJC_CLASS_$_Person.cache = &_objc_empty_cache;
}

extern "C" unsigned long int OBJC_IVAR_$_Student$number __attribute__ ((used, section ("__DATA,__objc_ivar"))) = __OFFSETOFIVAR__(struct Student, number);

static struct /*_ivar_list_t*/ {
	unsigned int entsize;  // sizeof(struct _prop_t)
	unsigned int count;
	struct _ivar_t ivar_list[1];
} _OBJC_$_INSTANCE_VARIABLES_Student __attribute__ ((used, section ("__DATA,__objc_const"))) = {
	sizeof(_ivar_t),
	1,
	{{(unsigned long int *)&OBJC_IVAR_$_Student$number, "number", "i", 2, 4}}
};

static struct /*_method_list_t*/ {
	unsigned int entsize;  // sizeof(struct _objc_method)
	unsigned int method_count;
	struct _objc_method method_list[1];
} _OBJC_$_INSTANCE_METHODS_Student __attribute__ ((used, section ("__DATA,__objc_const"))) = {
	sizeof(_objc_method),
	1,
	{{(struct objc_selector *)"study", "v16@0:8", (void *)_I_Student_study}}
};

static struct _class_ro_t _OBJC_METACLASS_RO_$_Student __attribute__ ((used, section ("__DATA,__objc_const"))) = {
	1, sizeof(struct _class_t), sizeof(struct _class_t), 
	0, 
	"Student",
	0, 
	0, 
	0, 
	0, 
	0, 
};

static struct _class_ro_t _OBJC_CLASS_RO_$_Student __attribute__ ((used, section ("__DATA,__objc_const"))) = {
	0, __OFFSETOFIVAR__(struct Student, number), sizeof(struct Student_IMPL), 
	0, 
	"Student",
	(const struct _method_list_t *)&_OBJC_$_INSTANCE_METHODS_Student,
	0, 
	(const struct _ivar_list_t *)&_OBJC_$_INSTANCE_VARIABLES_Student,
	0, 
	0, 
};

extern "C" __declspec(dllexport) struct _class_t OBJC_METACLASS_$_Person;
extern "C" __declspec(dllimport) struct _class_t OBJC_METACLASS_$_NSObject;

extern "C" __declspec(dllexport) struct _class_t OBJC_METACLASS_$_Student __attribute__ ((used, section ("__DATA,__objc_data"))) = {
	0, // &OBJC_METACLASS_$_NSObject,
	0, // &OBJC_METACLASS_$_Person,
	0, // (void *)&_objc_empty_cache,
	0, // unused, was (void *)&_objc_empty_vtable,
	&_OBJC_METACLASS_RO_$_Student,
};

extern "C" __declspec(dllexport) struct _class_t OBJC_CLASS_$_Person;

extern "C" __declspec(dllexport) struct _class_t OBJC_CLASS_$_Student __attribute__ ((used, section ("__DATA,__objc_data"))) = {
	0, // &OBJC_METACLASS_$_Student,
	0, // &OBJC_CLASS_$_Person,
	0, // (void *)&_objc_empty_cache,
	0, // unused, was (void *)&_objc_empty_vtable,
	&_OBJC_CLASS_RO_$_Student,
};
static void OBJC_CLASS_SETUP_$_Student(void ) {
	OBJC_METACLASS_$_Student.isa = &OBJC_METACLASS_$_NSObject;
	OBJC_METACLASS_$_Student.superclass = &OBJC_METACLASS_$_Person;
	OBJC_METACLASS_$_Student.cache = &_objc_empty_cache;
	OBJC_CLASS_$_Student.isa = &OBJC_METACLASS_$_Student;
	OBJC_CLASS_$_Student.superclass = &OBJC_CLASS_$_Person;
	OBJC_CLASS_$_Student.cache = &_objc_empty_cache;
}
#pragma section(".objc_inithooks$B", long, read, write)
__declspec(allocate(".objc_inithooks$B")) static void *OBJC_CLASS_SETUP[] = {
	(void *)&OBJC_CLASS_SETUP_$_Person,
	(void *)&OBJC_CLASS_SETUP_$_Student,
};
static struct _class_t *L_OBJC_LABEL_CLASS_$ [2] __attribute__((used, section ("__DATA, __objc_classlist,regular,no_dead_strip")))= {
	&OBJC_CLASS_$_Person,
	&OBJC_CLASS_$_Student,
};
static struct IMAGE_INFO { unsigned version; unsigned flag; } _OBJC_IMAGE_INFO = { 0, 2 };
