/* Generated file. Do not edit. */
#pragma once
#if defined(__NR__llseek)
  #define SYS__llseek __NR__llseek
#endif
#if defined(__NR__newselect)
  #define SYS__newselect __NR__newselect
#endif
#if defined(__NR__sysctl)
  #define SYS__sysctl __NR__sysctl
#endif
#if defined(__NR_accept)
  #define SYS_accept __NR_accept
#endif
#if defined(__NR_accept4)
  #define SYS_accept4 __NR_accept4
#endif
#if defined(__NR_access)
  #define SYS_access __NR_access
#endif
#if defined(__NR_acct)
  #define SYS_acct __NR_acct
#endif
#if defined(__NR_add_key)
  #define SYS_add_key __NR_add_key
#endif
#if defined(__NR_adjtimex)
  #define SYS_adjtimex __NR_adjtimex
#endif
#if defined(__NR_afs_syscall)
  #define SYS_afs_syscall __NR_afs_syscall
#endif
#if defined(__NR_alarm)
  #define SYS_alarm __NR_alarm
#endif
#if defined(__NR_arch_prctl)
  #define SYS_arch_prctl __NR_arch_prctl
#endif
#if defined(__NR_arch_specific_syscall)
  #define SYS_arch_specific_syscall __NR_arch_specific_syscall
#endif
#if defined(__NR_arm_fadvise64_64)
  #define SYS_arm_fadvise64_64 __NR_arm_fadvise64_64
#endif
#if defined(__NR_arm_sync_file_range)
  #define SYS_arm_sync_file_range __NR_arm_sync_file_range
#endif
#if defined(__NR_bdflush)
  #define SYS_bdflush __NR_bdflush
#endif
#if defined(__NR_bind)
  #define SYS_bind __NR_bind
#endif
#if defined(__NR_bpf)
  #define SYS_bpf __NR_bpf
#endif
#if defined(__NR_break)
  #define SYS_break __NR_break
#endif
#if defined(__NR_brk)
  #define SYS_brk __NR_brk
#endif
#if defined(__NR_capget)
  #define SYS_capget __NR_capget
#endif
#if defined(__NR_capset)
  #define SYS_capset __NR_capset
#endif
#if defined(__NR_chdir)
  #define SYS_chdir __NR_chdir
#endif
#if defined(__NR_chmod)
  #define SYS_chmod __NR_chmod
#endif
#if defined(__NR_chown)
  #define SYS_chown __NR_chown
#endif
#if defined(__NR_chown32)
  #define SYS_chown32 __NR_chown32
#endif
#if defined(__NR_chroot)
  #define SYS_chroot __NR_chroot
#endif
#if defined(__NR_clock_adjtime)
  #define SYS_clock_adjtime __NR_clock_adjtime
#endif
#if defined(__NR_clock_getres)
  #define SYS_clock_getres __NR_clock_getres
#endif
#if defined(__NR_clock_gettime)
  #define SYS_clock_gettime __NR_clock_gettime
#endif
#if defined(__NR_clock_nanosleep)
  #define SYS_clock_nanosleep __NR_clock_nanosleep
#endif
#if defined(__NR_clock_settime)
  #define SYS_clock_settime __NR_clock_settime
#endif
#if defined(__NR_clone)
  #define SYS_clone __NR_clone
#endif
#if defined(__NR_close)
  #define SYS_close __NR_close
#endif
#if defined(__NR_connect)
  #define SYS_connect __NR_connect
#endif
#if defined(__NR_copy_file_range)
  #define SYS_copy_file_range __NR_copy_file_range
#endif
#if defined(__NR_creat)
  #define SYS_creat __NR_creat
#endif
#if defined(__NR_create_module)
  #define SYS_create_module __NR_create_module
#endif
#if defined(__NR_delete_module)
  #define SYS_delete_module __NR_delete_module
#endif
#if defined(__NR_dup)
  #define SYS_dup __NR_dup
#endif
#if defined(__NR_dup2)
  #define SYS_dup2 __NR_dup2
#endif
#if defined(__NR_dup3)
  #define SYS_dup3 __NR_dup3
#endif
#if defined(__NR_epoll_create)
  #define SYS_epoll_create __NR_epoll_create
#endif
#if defined(__NR_epoll_create1)
  #define SYS_epoll_create1 __NR_epoll_create1
#endif
#if defined(__NR_epoll_ctl)
  #define SYS_epoll_ctl __NR_epoll_ctl
#endif
#if defined(__NR_epoll_ctl_old)
  #define SYS_epoll_ctl_old __NR_epoll_ctl_old
#endif
#if defined(__NR_epoll_pwait)
  #define SYS_epoll_pwait __NR_epoll_pwait
#endif
#if defined(__NR_epoll_wait)
  #define SYS_epoll_wait __NR_epoll_wait
#endif
#if defined(__NR_epoll_wait_old)
  #define SYS_epoll_wait_old __NR_epoll_wait_old
#endif
#if defined(__NR_eventfd)
  #define SYS_eventfd __NR_eventfd
#endif
#if defined(__NR_eventfd2)
  #define SYS_eventfd2 __NR_eventfd2
#endif
#if defined(__NR_execve)
  #define SYS_execve __NR_execve
#endif
#if defined(__NR_execveat)
  #define SYS_execveat __NR_execveat
#endif
#if defined(__NR_exit)
  #define SYS_exit __NR_exit
#endif
#if defined(__NR_exit_group)
  #define SYS_exit_group __NR_exit_group
#endif
#if defined(__NR_faccessat)
  #define SYS_faccessat __NR_faccessat
#endif
#if defined(__NR_fadvise64)
  #define SYS_fadvise64 __NR_fadvise64
#endif
#if defined(__NR_fadvise64_64)
  #define SYS_fadvise64_64 __NR_fadvise64_64
#endif
#if defined(__NR_fallocate)
  #define SYS_fallocate __NR_fallocate
#endif
#if defined(__NR_fanotify_init)
  #define SYS_fanotify_init __NR_fanotify_init
#endif
#if defined(__NR_fanotify_mark)
  #define SYS_fanotify_mark __NR_fanotify_mark
#endif
#if defined(__NR_fchdir)
  #define SYS_fchdir __NR_fchdir
#endif
#if defined(__NR_fchmod)
  #define SYS_fchmod __NR_fchmod
#endif
#if defined(__NR_fchmodat)
  #define SYS_fchmodat __NR_fchmodat
#endif
#if defined(__NR_fchown)
  #define SYS_fchown __NR_fchown
#endif
#if defined(__NR_fchown32)
  #define SYS_fchown32 __NR_fchown32
#endif
#if defined(__NR_fchownat)
  #define SYS_fchownat __NR_fchownat
#endif
#if defined(__NR_fcntl)
  #define SYS_fcntl __NR_fcntl
#endif
#if defined(__NR_fcntl64)
  #define SYS_fcntl64 __NR_fcntl64
#endif
#if defined(__NR_fdatasync)
  #define SYS_fdatasync __NR_fdatasync
#endif
#if defined(__NR_fgetxattr)
  #define SYS_fgetxattr __NR_fgetxattr
#endif
#if defined(__NR_finit_module)
  #define SYS_finit_module __NR_finit_module
#endif
#if defined(__NR_flistxattr)
  #define SYS_flistxattr __NR_flistxattr
#endif
#if defined(__NR_flock)
  #define SYS_flock __NR_flock
#endif
#if defined(__NR_fork)
  #define SYS_fork __NR_fork
#endif
#if defined(__NR_fremovexattr)
  #define SYS_fremovexattr __NR_fremovexattr
#endif
#if defined(__NR_fsetxattr)
  #define SYS_fsetxattr __NR_fsetxattr
#endif
#if defined(__NR_fstat)
  #define SYS_fstat __NR_fstat
#endif
#if defined(__NR_fstat64)
  #define SYS_fstat64 __NR_fstat64
#endif
#if defined(__NR_fstatat64)
  #define SYS_fstatat64 __NR_fstatat64
#endif
#if defined(__NR_fstatfs)
  #define SYS_fstatfs __NR_fstatfs
#endif
#if defined(__NR_fstatfs64)
  #define SYS_fstatfs64 __NR_fstatfs64
#endif
#if defined(__NR_fsync)
  #define SYS_fsync __NR_fsync
#endif
#if defined(__NR_ftime)
  #define SYS_ftime __NR_ftime
#endif
#if defined(__NR_ftruncate)
  #define SYS_ftruncate __NR_ftruncate
#endif
#if defined(__NR_ftruncate64)
  #define SYS_ftruncate64 __NR_ftruncate64
#endif
#if defined(__NR_futex)
  #define SYS_futex __NR_futex
#endif
#if defined(__NR_futimesat)
  #define SYS_futimesat __NR_futimesat
#endif
#if defined(__NR_get_kernel_syms)
  #define SYS_get_kernel_syms __NR_get_kernel_syms
#endif
#if defined(__NR_get_mempolicy)
  #define SYS_get_mempolicy __NR_get_mempolicy
#endif
#if defined(__NR_get_robust_list)
  #define SYS_get_robust_list __NR_get_robust_list
#endif
#if defined(__NR_get_thread_area)
  #define SYS_get_thread_area __NR_get_thread_area
#endif
#if defined(__NR_getcpu)
  #define SYS_getcpu __NR_getcpu
#endif
#if defined(__NR_getcwd)
  #define SYS_getcwd __NR_getcwd
#endif
#if defined(__NR_getdents)
  #define SYS_getdents __NR_getdents
#endif
#if defined(__NR_getdents64)
  #define SYS_getdents64 __NR_getdents64
#endif
#if defined(__NR_getegid)
  #define SYS_getegid __NR_getegid
#endif
#if defined(__NR_getegid32)
  #define SYS_getegid32 __NR_getegid32
#endif
#if defined(__NR_geteuid)
  #define SYS_geteuid __NR_geteuid
#endif
#if defined(__NR_geteuid32)
  #define SYS_geteuid32 __NR_geteuid32
#endif
#if defined(__NR_getgid)
  #define SYS_getgid __NR_getgid
#endif
#if defined(__NR_getgid32)
  #define SYS_getgid32 __NR_getgid32
#endif
#if defined(__NR_getgroups)
  #define SYS_getgroups __NR_getgroups
#endif
#if defined(__NR_getgroups32)
  #define SYS_getgroups32 __NR_getgroups32
#endif
#if defined(__NR_getitimer)
  #define SYS_getitimer __NR_getitimer
#endif
#if defined(__NR_getpeername)
  #define SYS_getpeername __NR_getpeername
#endif
#if defined(__NR_getpgid)
  #define SYS_getpgid __NR_getpgid
#endif
#if defined(__NR_getpgrp)
  #define SYS_getpgrp __NR_getpgrp
#endif
#if defined(__NR_getpid)
  #define SYS_getpid __NR_getpid
#endif
#if defined(__NR_getpmsg)
  #define SYS_getpmsg __NR_getpmsg
#endif
#if defined(__NR_getppid)
  #define SYS_getppid __NR_getppid
#endif
#if defined(__NR_getpriority)
  #define SYS_getpriority __NR_getpriority
#endif
#if defined(__NR_getrandom)
  #define SYS_getrandom __NR_getrandom
#endif
#if defined(__NR_getresgid)
  #define SYS_getresgid __NR_getresgid
#endif
#if defined(__NR_getresgid32)
  #define SYS_getresgid32 __NR_getresgid32
#endif
#if defined(__NR_getresuid)
  #define SYS_getresuid __NR_getresuid
#endif
#if defined(__NR_getresuid32)
  #define SYS_getresuid32 __NR_getresuid32
#endif
#if defined(__NR_getrlimit)
  #define SYS_getrlimit __NR_getrlimit
#endif
#if defined(__NR_getrusage)
  #define SYS_getrusage __NR_getrusage
#endif
#if defined(__NR_getsid)
  #define SYS_getsid __NR_getsid
#endif
#if defined(__NR_getsockname)
  #define SYS_getsockname __NR_getsockname
#endif
#if defined(__NR_getsockopt)
  #define SYS_getsockopt __NR_getsockopt
#endif
#if defined(__NR_gettid)
  #define SYS_gettid __NR_gettid
#endif
#if defined(__NR_gettimeofday)
  #define SYS_gettimeofday __NR_gettimeofday
#endif
#if defined(__NR_getuid)
  #define SYS_getuid __NR_getuid
#endif
#if defined(__NR_getuid32)
  #define SYS_getuid32 __NR_getuid32
#endif
#if defined(__NR_getxattr)
  #define SYS_getxattr __NR_getxattr
#endif
#if defined(__NR_gtty)
  #define SYS_gtty __NR_gtty
#endif
#if defined(__NR_idle)
  #define SYS_idle __NR_idle
#endif
#if defined(__NR_init_module)
  #define SYS_init_module __NR_init_module
#endif
#if defined(__NR_inotify_add_watch)
  #define SYS_inotify_add_watch __NR_inotify_add_watch
#endif
#if defined(__NR_inotify_init)
  #define SYS_inotify_init __NR_inotify_init
#endif
#if defined(__NR_inotify_init1)
  #define SYS_inotify_init1 __NR_inotify_init1
#endif
#if defined(__NR_inotify_rm_watch)
  #define SYS_inotify_rm_watch __NR_inotify_rm_watch
#endif
#if defined(__NR_io_cancel)
  #define SYS_io_cancel __NR_io_cancel
#endif
#if defined(__NR_io_destroy)
  #define SYS_io_destroy __NR_io_destroy
#endif
#if defined(__NR_io_getevents)
  #define SYS_io_getevents __NR_io_getevents
#endif
#if defined(__NR_io_pgetevents)
  #define SYS_io_pgetevents __NR_io_pgetevents
#endif
#if defined(__NR_io_setup)
  #define SYS_io_setup __NR_io_setup
#endif
#if defined(__NR_io_submit)
  #define SYS_io_submit __NR_io_submit
#endif
#if defined(__NR_ioctl)
  #define SYS_ioctl __NR_ioctl
#endif
#if defined(__NR_ioperm)
  #define SYS_ioperm __NR_ioperm
#endif
#if defined(__NR_iopl)
  #define SYS_iopl __NR_iopl
#endif
#if defined(__NR_ioprio_get)
  #define SYS_ioprio_get __NR_ioprio_get
#endif
#if defined(__NR_ioprio_set)
  #define SYS_ioprio_set __NR_ioprio_set
#endif
#if defined(__NR_ipc)
  #define SYS_ipc __NR_ipc
#endif
#if defined(__NR_kcmp)
  #define SYS_kcmp __NR_kcmp
#endif
#if defined(__NR_kexec_file_load)
  #define SYS_kexec_file_load __NR_kexec_file_load
#endif
#if defined(__NR_kexec_load)
  #define SYS_kexec_load __NR_kexec_load
#endif
#if defined(__NR_keyctl)
  #define SYS_keyctl __NR_keyctl
#endif
#if defined(__NR_kill)
  #define SYS_kill __NR_kill
#endif
#if defined(__NR_lchown)
  #define SYS_lchown __NR_lchown
#endif
#if defined(__NR_lchown32)
  #define SYS_lchown32 __NR_lchown32
#endif
#if defined(__NR_lgetxattr)
  #define SYS_lgetxattr __NR_lgetxattr
#endif
#if defined(__NR_link)
  #define SYS_link __NR_link
#endif
#if defined(__NR_linkat)
  #define SYS_linkat __NR_linkat
#endif
#if defined(__NR_listen)
  #define SYS_listen __NR_listen
#endif
#if defined(__NR_listxattr)
  #define SYS_listxattr __NR_listxattr
#endif
#if defined(__NR_llistxattr)
  #define SYS_llistxattr __NR_llistxattr
#endif
#if defined(__NR_llseek)
  #define SYS_llseek __NR_llseek
#endif
#if defined(__NR_lock)
  #define SYS_lock __NR_lock
#endif
#if defined(__NR_lookup_dcookie)
  #define SYS_lookup_dcookie __NR_lookup_dcookie
#endif
#if defined(__NR_lremovexattr)
  #define SYS_lremovexattr __NR_lremovexattr
#endif
#if defined(__NR_lseek)
  #define SYS_lseek __NR_lseek
#endif
#if defined(__NR_lsetxattr)
  #define SYS_lsetxattr __NR_lsetxattr
#endif
#if defined(__NR_lstat)
  #define SYS_lstat __NR_lstat
#endif
#if defined(__NR_lstat64)
  #define SYS_lstat64 __NR_lstat64
#endif
#if defined(__NR_madvise)
  #define SYS_madvise __NR_madvise
#endif
#if defined(__NR_mbind)
  #define SYS_mbind __NR_mbind
#endif
#if defined(__NR_membarrier)
  #define SYS_membarrier __NR_membarrier
#endif
#if defined(__NR_memfd_create)
  #define SYS_memfd_create __NR_memfd_create
#endif
#if defined(__NR_migrate_pages)
  #define SYS_migrate_pages __NR_migrate_pages
#endif
#if defined(__NR_mincore)
  #define SYS_mincore __NR_mincore
#endif
#if defined(__NR_mkdir)
  #define SYS_mkdir __NR_mkdir
#endif
#if defined(__NR_mkdirat)
  #define SYS_mkdirat __NR_mkdirat
#endif
#if defined(__NR_mknod)
  #define SYS_mknod __NR_mknod
#endif
#if defined(__NR_mknodat)
  #define SYS_mknodat __NR_mknodat
#endif
#if defined(__NR_mlock)
  #define SYS_mlock __NR_mlock
#endif
#if defined(__NR_mlock2)
  #define SYS_mlock2 __NR_mlock2
#endif
#if defined(__NR_mlockall)
  #define SYS_mlockall __NR_mlockall
#endif
#if defined(__NR_mmap)
  #define SYS_mmap __NR_mmap
#endif
#if defined(__NR_mmap2)
  #define SYS_mmap2 __NR_mmap2
#endif
#if defined(__NR_modify_ldt)
  #define SYS_modify_ldt __NR_modify_ldt
#endif
#if defined(__NR_mount)
  #define SYS_mount __NR_mount
#endif
#if defined(__NR_move_pages)
  #define SYS_move_pages __NR_move_pages
#endif
#if defined(__NR_mprotect)
  #define SYS_mprotect __NR_mprotect
#endif
#if defined(__NR_mpx)
  #define SYS_mpx __NR_mpx
#endif
#if defined(__NR_mq_getsetattr)
  #define SYS_mq_getsetattr __NR_mq_getsetattr
#endif
#if defined(__NR_mq_notify)
  #define SYS_mq_notify __NR_mq_notify
#endif
#if defined(__NR_mq_open)
  #define SYS_mq_open __NR_mq_open
#endif
#if defined(__NR_mq_timedreceive)
  #define SYS_mq_timedreceive __NR_mq_timedreceive
#endif
#if defined(__NR_mq_timedsend)
  #define SYS_mq_timedsend __NR_mq_timedsend
#endif
#if defined(__NR_mq_unlink)
  #define SYS_mq_unlink __NR_mq_unlink
#endif
#if defined(__NR_mremap)
  #define SYS_mremap __NR_mremap
#endif
#if defined(__NR_msgctl)
  #define SYS_msgctl __NR_msgctl
#endif
#if defined(__NR_msgget)
  #define SYS_msgget __NR_msgget
#endif
#if defined(__NR_msgrcv)
  #define SYS_msgrcv __NR_msgrcv
#endif
#if defined(__NR_msgsnd)
  #define SYS_msgsnd __NR_msgsnd
#endif
#if defined(__NR_msync)
  #define SYS_msync __NR_msync
#endif
#if defined(__NR_munlock)
  #define SYS_munlock __NR_munlock
#endif
#if defined(__NR_munlockall)
  #define SYS_munlockall __NR_munlockall
#endif
#if defined(__NR_munmap)
  #define SYS_munmap __NR_munmap
#endif
#if defined(__NR_name_to_handle_at)
  #define SYS_name_to_handle_at __NR_name_to_handle_at
#endif
#if defined(__NR_nanosleep)
  #define SYS_nanosleep __NR_nanosleep
#endif
#if defined(__NR_newfstatat)
  #define SYS_newfstatat __NR_newfstatat
#endif
#if defined(__NR_nfsservctl)
  #define SYS_nfsservctl __NR_nfsservctl
#endif
#if defined(__NR_nice)
  #define SYS_nice __NR_nice
#endif
#if defined(__NR_oldfstat)
  #define SYS_oldfstat __NR_oldfstat
#endif
#if defined(__NR_oldlstat)
  #define SYS_oldlstat __NR_oldlstat
#endif
#if defined(__NR_oldolduname)
  #define SYS_oldolduname __NR_oldolduname
#endif
#if defined(__NR_oldstat)
  #define SYS_oldstat __NR_oldstat
#endif
#if defined(__NR_olduname)
  #define SYS_olduname __NR_olduname
#endif
#if defined(__NR_open)
  #define SYS_open __NR_open
#endif
#if defined(__NR_open_by_handle_at)
  #define SYS_open_by_handle_at __NR_open_by_handle_at
#endif
#if defined(__NR_openat)
  #define SYS_openat __NR_openat
#endif
#if defined(__NR_pause)
  #define SYS_pause __NR_pause
#endif
#if defined(__NR_pciconfig_iobase)
  #define SYS_pciconfig_iobase __NR_pciconfig_iobase
#endif
#if defined(__NR_pciconfig_read)
  #define SYS_pciconfig_read __NR_pciconfig_read
#endif
#if defined(__NR_pciconfig_write)
  #define SYS_pciconfig_write __NR_pciconfig_write
#endif
#if defined(__NR_perf_event_open)
  #define SYS_perf_event_open __NR_perf_event_open
#endif
#if defined(__NR_personality)
  #define SYS_personality __NR_personality
#endif
#if defined(__NR_pipe)
  #define SYS_pipe __NR_pipe
#endif
#if defined(__NR_pipe2)
  #define SYS_pipe2 __NR_pipe2
#endif
#if defined(__NR_pivot_root)
  #define SYS_pivot_root __NR_pivot_root
#endif
#if defined(__NR_pkey_alloc)
  #define SYS_pkey_alloc __NR_pkey_alloc
#endif
#if defined(__NR_pkey_free)
  #define SYS_pkey_free __NR_pkey_free
#endif
#if defined(__NR_pkey_mprotect)
  #define SYS_pkey_mprotect __NR_pkey_mprotect
#endif
#if defined(__NR_poll)
  #define SYS_poll __NR_poll
#endif
#if defined(__NR_ppoll)
  #define SYS_ppoll __NR_ppoll
#endif
#if defined(__NR_prctl)
  #define SYS_prctl __NR_prctl
#endif
#if defined(__NR_pread64)
  #define SYS_pread64 __NR_pread64
#endif
#if defined(__NR_preadv)
  #define SYS_preadv __NR_preadv
#endif
#if defined(__NR_preadv2)
  #define SYS_preadv2 __NR_preadv2
#endif
#if defined(__NR_prlimit64)
  #define SYS_prlimit64 __NR_prlimit64
#endif
#if defined(__NR_process_vm_readv)
  #define SYS_process_vm_readv __NR_process_vm_readv
#endif
#if defined(__NR_process_vm_writev)
  #define SYS_process_vm_writev __NR_process_vm_writev
#endif
#if defined(__NR_prof)
  #define SYS_prof __NR_prof
#endif
#if defined(__NR_profil)
  #define SYS_profil __NR_profil
#endif
#if defined(__NR_pselect6)
  #define SYS_pselect6 __NR_pselect6
#endif
#if defined(__NR_ptrace)
  #define SYS_ptrace __NR_ptrace
#endif
#if defined(__NR_putpmsg)
  #define SYS_putpmsg __NR_putpmsg
#endif
#if defined(__NR_pwrite64)
  #define SYS_pwrite64 __NR_pwrite64
#endif
#if defined(__NR_pwritev)
  #define SYS_pwritev __NR_pwritev
#endif
#if defined(__NR_pwritev2)
  #define SYS_pwritev2 __NR_pwritev2
#endif
#if defined(__NR_query_module)
  #define SYS_query_module __NR_query_module
#endif
#if defined(__NR_quotactl)
  #define SYS_quotactl __NR_quotactl
#endif
#if defined(__NR_read)
  #define SYS_read __NR_read
#endif
#if defined(__NR_readahead)
  #define SYS_readahead __NR_readahead
#endif
#if defined(__NR_readdir)
  #define SYS_readdir __NR_readdir
#endif
#if defined(__NR_readlink)
  #define SYS_readlink __NR_readlink
#endif
#if defined(__NR_readlinkat)
  #define SYS_readlinkat __NR_readlinkat
#endif
#if defined(__NR_readv)
  #define SYS_readv __NR_readv
#endif
#if defined(__NR_reboot)
  #define SYS_reboot __NR_reboot
#endif
#if defined(__NR_recv)
  #define SYS_recv __NR_recv
#endif
#if defined(__NR_recvfrom)
  #define SYS_recvfrom __NR_recvfrom
#endif
#if defined(__NR_recvmmsg)
  #define SYS_recvmmsg __NR_recvmmsg
#endif
#if defined(__NR_recvmsg)
  #define SYS_recvmsg __NR_recvmsg
#endif
#if defined(__NR_remap_file_pages)
  #define SYS_remap_file_pages __NR_remap_file_pages
#endif
#if defined(__NR_removexattr)
  #define SYS_removexattr __NR_removexattr
#endif
#if defined(__NR_rename)
  #define SYS_rename __NR_rename
#endif
#if defined(__NR_renameat)
  #define SYS_renameat __NR_renameat
#endif
#if defined(__NR_renameat2)
  #define SYS_renameat2 __NR_renameat2
#endif
#if defined(__NR_request_key)
  #define SYS_request_key __NR_request_key
#endif
#if defined(__NR_restart_syscall)
  #define SYS_restart_syscall __NR_restart_syscall
#endif
#if defined(__NR_rmdir)
  #define SYS_rmdir __NR_rmdir
#endif
#if defined(__NR_rseq)
  #define SYS_rseq __NR_rseq
#endif
#if defined(__NR_rt_sigaction)
  #define SYS_rt_sigaction __NR_rt_sigaction
#endif
#if defined(__NR_rt_sigpending)
  #define SYS_rt_sigpending __NR_rt_sigpending
#endif
#if defined(__NR_rt_sigprocmask)
  #define SYS_rt_sigprocmask __NR_rt_sigprocmask
#endif
#if defined(__NR_rt_sigqueueinfo)
  #define SYS_rt_sigqueueinfo __NR_rt_sigqueueinfo
#endif
#if defined(__NR_rt_sigreturn)
  #define SYS_rt_sigreturn __NR_rt_sigreturn
#endif
#if defined(__NR_rt_sigsuspend)
  #define SYS_rt_sigsuspend __NR_rt_sigsuspend
#endif
#if defined(__NR_rt_sigtimedwait)
  #define SYS_rt_sigtimedwait __NR_rt_sigtimedwait
#endif
#if defined(__NR_rt_tgsigqueueinfo)
  #define SYS_rt_tgsigqueueinfo __NR_rt_tgsigqueueinfo
#endif
#if defined(__NR_sched_get_priority_max)
  #define SYS_sched_get_priority_max __NR_sched_get_priority_max
#endif
#if defined(__NR_sched_get_priority_min)
  #define SYS_sched_get_priority_min __NR_sched_get_priority_min
#endif
#if defined(__NR_sched_getaffinity)
  #define SYS_sched_getaffinity __NR_sched_getaffinity
#endif
#if defined(__NR_sched_getattr)
  #define SYS_sched_getattr __NR_sched_getattr
#endif
#if defined(__NR_sched_getparam)
  #define SYS_sched_getparam __NR_sched_getparam
#endif
#if defined(__NR_sched_getscheduler)
  #define SYS_sched_getscheduler __NR_sched_getscheduler
#endif
#if defined(__NR_sched_rr_get_interval)
  #define SYS_sched_rr_get_interval __NR_sched_rr_get_interval
#endif
#if defined(__NR_sched_setaffinity)
  #define SYS_sched_setaffinity __NR_sched_setaffinity
#endif
#if defined(__NR_sched_setattr)
  #define SYS_sched_setattr __NR_sched_setattr
#endif
#if defined(__NR_sched_setparam)
  #define SYS_sched_setparam __NR_sched_setparam
#endif
#if defined(__NR_sched_setscheduler)
  #define SYS_sched_setscheduler __NR_sched_setscheduler
#endif
#if defined(__NR_sched_yield)
  #define SYS_sched_yield __NR_sched_yield
#endif
#if defined(__NR_seccomp)
  #define SYS_seccomp __NR_seccomp
#endif
#if defined(__NR_security)
  #define SYS_security __NR_security
#endif
#if defined(__NR_select)
  #define SYS_select __NR_select
#endif
#if defined(__NR_semctl)
  #define SYS_semctl __NR_semctl
#endif
#if defined(__NR_semget)
  #define SYS_semget __NR_semget
#endif
#if defined(__NR_semop)
  #define SYS_semop __NR_semop
#endif
#if defined(__NR_semtimedop)
  #define SYS_semtimedop __NR_semtimedop
#endif
#if defined(__NR_send)
  #define SYS_send __NR_send
#endif
#if defined(__NR_sendfile)
  #define SYS_sendfile __NR_sendfile
#endif
#if defined(__NR_sendfile64)
  #define SYS_sendfile64 __NR_sendfile64
#endif
#if defined(__NR_sendmmsg)
  #define SYS_sendmmsg __NR_sendmmsg
#endif
#if defined(__NR_sendmsg)
  #define SYS_sendmsg __NR_sendmsg
#endif
#if defined(__NR_sendto)
  #define SYS_sendto __NR_sendto
#endif
#if defined(__NR_set_mempolicy)
  #define SYS_set_mempolicy __NR_set_mempolicy
#endif
#if defined(__NR_set_robust_list)
  #define SYS_set_robust_list __NR_set_robust_list
#endif
#if defined(__NR_set_thread_area)
  #define SYS_set_thread_area __NR_set_thread_area
#endif
#if defined(__NR_set_tid_address)
  #define SYS_set_tid_address __NR_set_tid_address
#endif
#if defined(__NR_setdomainname)
  #define SYS_setdomainname __NR_setdomainname
#endif
#if defined(__NR_setfsgid)
  #define SYS_setfsgid __NR_setfsgid
#endif
#if defined(__NR_setfsgid32)
  #define SYS_setfsgid32 __NR_setfsgid32
#endif
#if defined(__NR_setfsuid)
  #define SYS_setfsuid __NR_setfsuid
#endif
#if defined(__NR_setfsuid32)
  #define SYS_setfsuid32 __NR_setfsuid32
#endif
#if defined(__NR_setgid)
  #define SYS_setgid __NR_setgid
#endif
#if defined(__NR_setgid32)
  #define SYS_setgid32 __NR_setgid32
#endif
#if defined(__NR_setgroups)
  #define SYS_setgroups __NR_setgroups
#endif
#if defined(__NR_setgroups32)
  #define SYS_setgroups32 __NR_setgroups32
#endif
#if defined(__NR_sethostname)
  #define SYS_sethostname __NR_sethostname
#endif
#if defined(__NR_setitimer)
  #define SYS_setitimer __NR_setitimer
#endif
#if defined(__NR_setns)
  #define SYS_setns __NR_setns
#endif
#if defined(__NR_setpgid)
  #define SYS_setpgid __NR_setpgid
#endif
#if defined(__NR_setpriority)
  #define SYS_setpriority __NR_setpriority
#endif
#if defined(__NR_setregid)
  #define SYS_setregid __NR_setregid
#endif
#if defined(__NR_setregid32)
  #define SYS_setregid32 __NR_setregid32
#endif
#if defined(__NR_setresgid)
  #define SYS_setresgid __NR_setresgid
#endif
#if defined(__NR_setresgid32)
  #define SYS_setresgid32 __NR_setresgid32
#endif
#if defined(__NR_setresuid)
  #define SYS_setresuid __NR_setresuid
#endif
#if defined(__NR_setresuid32)
  #define SYS_setresuid32 __NR_setresuid32
#endif
#if defined(__NR_setreuid)
  #define SYS_setreuid __NR_setreuid
#endif
#if defined(__NR_setreuid32)
  #define SYS_setreuid32 __NR_setreuid32
#endif
#if defined(__NR_setrlimit)
  #define SYS_setrlimit __NR_setrlimit
#endif
#if defined(__NR_setsid)
  #define SYS_setsid __NR_setsid
#endif
#if defined(__NR_setsockopt)
  #define SYS_setsockopt __NR_setsockopt
#endif
#if defined(__NR_settimeofday)
  #define SYS_settimeofday __NR_settimeofday
#endif
#if defined(__NR_setuid)
  #define SYS_setuid __NR_setuid
#endif
#if defined(__NR_setuid32)
  #define SYS_setuid32 __NR_setuid32
#endif
#if defined(__NR_setxattr)
  #define SYS_setxattr __NR_setxattr
#endif
#if defined(__NR_sgetmask)
  #define SYS_sgetmask __NR_sgetmask
#endif
#if defined(__NR_shmat)
  #define SYS_shmat __NR_shmat
#endif
#if defined(__NR_shmctl)
  #define SYS_shmctl __NR_shmctl
#endif
#if defined(__NR_shmdt)
  #define SYS_shmdt __NR_shmdt
#endif
#if defined(__NR_shmget)
  #define SYS_shmget __NR_shmget
#endif
#if defined(__NR_shutdown)
  #define SYS_shutdown __NR_shutdown
#endif
#if defined(__NR_sigaction)
  #define SYS_sigaction __NR_sigaction
#endif
#if defined(__NR_sigaltstack)
  #define SYS_sigaltstack __NR_sigaltstack
#endif
#if defined(__NR_signal)
  #define SYS_signal __NR_signal
#endif
#if defined(__NR_signalfd)
  #define SYS_signalfd __NR_signalfd
#endif
#if defined(__NR_signalfd4)
  #define SYS_signalfd4 __NR_signalfd4
#endif
#if defined(__NR_sigpending)
  #define SYS_sigpending __NR_sigpending
#endif
#if defined(__NR_sigprocmask)
  #define SYS_sigprocmask __NR_sigprocmask
#endif
#if defined(__NR_sigreturn)
  #define SYS_sigreturn __NR_sigreturn
#endif
#if defined(__NR_sigsuspend)
  #define SYS_sigsuspend __NR_sigsuspend
#endif
#if defined(__NR_socket)
  #define SYS_socket __NR_socket
#endif
#if defined(__NR_socketcall)
  #define SYS_socketcall __NR_socketcall
#endif
#if defined(__NR_socketpair)
  #define SYS_socketpair __NR_socketpair
#endif
#if defined(__NR_splice)
  #define SYS_splice __NR_splice
#endif
#if defined(__NR_ssetmask)
  #define SYS_ssetmask __NR_ssetmask
#endif
#if defined(__NR_stat)
  #define SYS_stat __NR_stat
#endif
#if defined(__NR_stat64)
  #define SYS_stat64 __NR_stat64
#endif
#if defined(__NR_statfs)
  #define SYS_statfs __NR_statfs
#endif
#if defined(__NR_statfs64)
  #define SYS_statfs64 __NR_statfs64
#endif
#if defined(__NR_statx)
  #define SYS_statx __NR_statx
#endif
#if defined(__NR_stime)
  #define SYS_stime __NR_stime
#endif
#if defined(__NR_stty)
  #define SYS_stty __NR_stty
#endif
#if defined(__NR_swapoff)
  #define SYS_swapoff __NR_swapoff
#endif
#if defined(__NR_swapon)
  #define SYS_swapon __NR_swapon
#endif
#if defined(__NR_symlink)
  #define SYS_symlink __NR_symlink
#endif
#if defined(__NR_symlinkat)
  #define SYS_symlinkat __NR_symlinkat
#endif
#if defined(__NR_sync)
  #define SYS_sync __NR_sync
#endif
#if defined(__NR_sync_file_range)
  #define SYS_sync_file_range __NR_sync_file_range
#endif
#if defined(__NR_sync_file_range2)
  #define SYS_sync_file_range2 __NR_sync_file_range2
#endif
#if defined(__NR_syncfs)
  #define SYS_syncfs __NR_syncfs
#endif
#if defined(__NR_syscall)
  #define SYS_syscall __NR_syscall
#endif
#if defined(__NR_syscalls)
  #define SYS_syscalls __NR_syscalls
#endif
#if defined(__NR_sysfs)
  #define SYS_sysfs __NR_sysfs
#endif
#if defined(__NR_sysinfo)
  #define SYS_sysinfo __NR_sysinfo
#endif
#if defined(__NR_syslog)
  #define SYS_syslog __NR_syslog
#endif
#if defined(__NR_tee)
  #define SYS_tee __NR_tee
#endif
#if defined(__NR_tgkill)
  #define SYS_tgkill __NR_tgkill
#endif
#if defined(__NR_time)
  #define SYS_time __NR_time
#endif
#if defined(__NR_timer_create)
  #define SYS_timer_create __NR_timer_create
#endif
#if defined(__NR_timer_delete)
  #define SYS_timer_delete __NR_timer_delete
#endif
#if defined(__NR_timer_getoverrun)
  #define SYS_timer_getoverrun __NR_timer_getoverrun
#endif
#if defined(__NR_timer_gettime)
  #define SYS_timer_gettime __NR_timer_gettime
#endif
#if defined(__NR_timer_settime)
  #define SYS_timer_settime __NR_timer_settime
#endif
#if defined(__NR_timerfd_create)
  #define SYS_timerfd_create __NR_timerfd_create
#endif
#if defined(__NR_timerfd_gettime)
  #define SYS_timerfd_gettime __NR_timerfd_gettime
#endif
#if defined(__NR_timerfd_settime)
  #define SYS_timerfd_settime __NR_timerfd_settime
#endif
#if defined(__NR_times)
  #define SYS_times __NR_times
#endif
#if defined(__NR_tkill)
  #define SYS_tkill __NR_tkill
#endif
#if defined(__NR_truncate)
  #define SYS_truncate __NR_truncate
#endif
#if defined(__NR_truncate64)
  #define SYS_truncate64 __NR_truncate64
#endif
#if defined(__NR_tuxcall)
  #define SYS_tuxcall __NR_tuxcall
#endif
#if defined(__NR_ugetrlimit)
  #define SYS_ugetrlimit __NR_ugetrlimit
#endif
#if defined(__NR_ulimit)
  #define SYS_ulimit __NR_ulimit
#endif
#if defined(__NR_umask)
  #define SYS_umask __NR_umask
#endif
#if defined(__NR_umount)
  #define SYS_umount __NR_umount
#endif
#if defined(__NR_umount2)
  #define SYS_umount2 __NR_umount2
#endif
#if defined(__NR_uname)
  #define SYS_uname __NR_uname
#endif
#if defined(__NR_unlink)
  #define SYS_unlink __NR_unlink
#endif
#if defined(__NR_unlinkat)
  #define SYS_unlinkat __NR_unlinkat
#endif
#if defined(__NR_unshare)
  #define SYS_unshare __NR_unshare
#endif
#if defined(__NR_uselib)
  #define SYS_uselib __NR_uselib
#endif
#if defined(__NR_userfaultfd)
  #define SYS_userfaultfd __NR_userfaultfd
#endif
#if defined(__NR_ustat)
  #define SYS_ustat __NR_ustat
#endif
#if defined(__NR_utime)
  #define SYS_utime __NR_utime
#endif
#if defined(__NR_utimensat)
  #define SYS_utimensat __NR_utimensat
#endif
#if defined(__NR_utimes)
  #define SYS_utimes __NR_utimes
#endif
#if defined(__NR_vfork)
  #define SYS_vfork __NR_vfork
#endif
#if defined(__NR_vhangup)
  #define SYS_vhangup __NR_vhangup
#endif
#if defined(__NR_vm86)
  #define SYS_vm86 __NR_vm86
#endif
#if defined(__NR_vm86old)
  #define SYS_vm86old __NR_vm86old
#endif
#if defined(__NR_vmsplice)
  #define SYS_vmsplice __NR_vmsplice
#endif
#if defined(__NR_vserver)
  #define SYS_vserver __NR_vserver
#endif
#if defined(__NR_wait4)
  #define SYS_wait4 __NR_wait4
#endif
#if defined(__NR_waitid)
  #define SYS_waitid __NR_waitid
#endif
#if defined(__NR_waitpid)
  #define SYS_waitpid __NR_waitpid
#endif
#if defined(__NR_write)
  #define SYS_write __NR_write
#endif
#if defined(__NR_writev)
  #define SYS_writev __NR_writev
#endif
