(command.CommandList
  children: [
    (command.ShFunction
      name: ignore_list
      body: 
        (command.BraceGroup
          children: [
            (command.Simple
              words: [{(cat)}]
              redirects: [
                (redir.HereDoc
                  op: (Token id:Id.Redir_DLess val:'<<' span_id:39)
                  fd: -1
                  here_begin: {(EOF)}
                  here_end_span_id: 234
                  stdin_parts: [
                    ('#include <asm/types.h>\n')
                    ('#include <asm/unistd.h>\n')
                    ('\n')
                    ('/* *at */\n')
                    ('#define __IGNORE_open\t\t/* openat */\n')
                    ('#define __IGNORE_link\t\t/* linkat */\n')
                    ('#define __IGNORE_unlink\t\t/* unlinkat */\n')
                    ('#define __IGNORE_mknod\t\t/* mknodat */\n')
                    ('#define __IGNORE_chmod\t\t/* fchmodat */\n')
                    ('#define __IGNORE_chown\t\t/* fchownat */\n')
                    ('#define __IGNORE_mkdir\t\t/* mkdirat */\n')
                    ('#define __IGNORE_rmdir\t\t/* unlinkat */\n')
                    ('#define __IGNORE_lchown\t\t/* fchownat */\n')
                    ('#define __IGNORE_access\t\t/* faccessat */\n')
                    ('#define __IGNORE_rename\t\t/* renameat2 */\n')
                    ('#define __IGNORE_readlink\t/* readlinkat */\n')
                    ('#define __IGNORE_symlink\t/* symlinkat */\n')
                    ('#define __IGNORE_utimes\t\t/* futimesat */\n')
                    ('#if BITS_PER_LONG == 64\n')
                    ('#define __IGNORE_stat\t\t/* fstatat */\n')
                    ('#define __IGNORE_lstat\t\t/* fstatat */\n')
                    ('#else\n')
                    ('#define __IGNORE_stat64\t\t/* fstatat64 */\n')
                    ('#define __IGNORE_lstat64\t/* fstatat64 */\n')
                    ('#endif\n')
                    ('\n')
                    ('/* Missing flags argument */\n')
                    ('#define __IGNORE_renameat\t/* renameat2 */\n')
                    ('\n')
                    ('/* CLOEXEC flag */\n')
                    ('#define __IGNORE_pipe\t\t/* pipe2 */\n')
                    ('#define __IGNORE_dup2\t\t/* dup3 */\n')
                    ('#define __IGNORE_epoll_create\t/* epoll_create1 */\n')
                    ('#define __IGNORE_inotify_init\t/* inotify_init1 */\n')
                    ('#define __IGNORE_eventfd\t/* eventfd2 */\n')
                    ('#define __IGNORE_signalfd\t/* signalfd4 */\n')
                    ('\n')
                    ('/* MMU */\n')
                    ('#ifndef CONFIG_MMU\n')
                    ('#define __IGNORE_madvise\n')
                    ('#define __IGNORE_mbind\n')
                    ('#define __IGNORE_mincore\n')
                    ('#define __IGNORE_mlock\n')
                    ('#define __IGNORE_mlockall\n')
                    ('#define __IGNORE_munlock\n')
                    ('#define __IGNORE_munlockall\n')
                    ('#define __IGNORE_mprotect\n')
                    ('#define __IGNORE_msync\n')
                    ('#define __IGNORE_migrate_pages\n')
                    ('#define __IGNORE_move_pages\n')
                    ('#define __IGNORE_remap_file_pages\n')
                    ('#define __IGNORE_get_mempolicy\n')
                    ('#define __IGNORE_set_mempolicy\n')
                    ('#define __IGNORE_swapoff\n')
                    ('#define __IGNORE_swapon\n')
                    ('#endif\n')
                    ('\n')
                    ('/* System calls for 32-bit kernels only */\n')
                    ('#if BITS_PER_LONG == 64\n')
                    ('#define __IGNORE_sendfile64\n')
                    ('#define __IGNORE_ftruncate64\n')
                    ('#define __IGNORE_truncate64\n')
                    ('#define __IGNORE_stat64\n')
                    ('#define __IGNORE_lstat64\n')
                    ('#define __IGNORE_fstat64\n')
                    ('#define __IGNORE_fcntl64\n')
                    ('#define __IGNORE_fadvise64_64\n')
                    ('#define __IGNORE_fstatat64\n')
                    ('#define __IGNORE_fstatfs64\n')
                    ('#define __IGNORE_statfs64\n')
                    ('#define __IGNORE_llseek\n')
                    ('#define __IGNORE_mmap2\n')
                    ('#else\n')
                    ('#define __IGNORE_sendfile\n')
                    ('#define __IGNORE_ftruncate\n')
                    ('#define __IGNORE_truncate\n')
                    ('#define __IGNORE_stat\n')
                    ('#define __IGNORE_lstat\n')
                    ('#define __IGNORE_fstat\n')
                    ('#define __IGNORE_fcntl\n')
                    ('#define __IGNORE_fadvise64\n')
                    ('#define __IGNORE_newfstatat\n')
                    ('#define __IGNORE_fstatfs\n')
                    ('#define __IGNORE_statfs\n')
                    ('#define __IGNORE_lseek\n')
                    ('#define __IGNORE_mmap\n')
                    ('#endif\n')
                    ('\n')
                    ('/* i386-specific or historical system calls */\n')
                    ('#define __IGNORE_break\n')
                    ('#define __IGNORE_stty\n')
                    ('#define __IGNORE_gtty\n')
                    ('#define __IGNORE_ftime\n')
                    ('#define __IGNORE_prof\n')
                    ('#define __IGNORE_lock\n')
                    ('#define __IGNORE_mpx\n')
                    ('#define __IGNORE_ulimit\n')
                    ('#define __IGNORE_profil\n')
                    ('#define __IGNORE_ioperm\n')
                    ('#define __IGNORE_iopl\n')
                    ('#define __IGNORE_idle\n')
                    ('#define __IGNORE_modify_ldt\n')
                    ('#define __IGNORE_ugetrlimit\n')
                    ('#define __IGNORE_vm86\n')
                    ('#define __IGNORE_vm86old\n')
                    ('#define __IGNORE_set_thread_area\n')
                    ('#define __IGNORE_get_thread_area\n')
                    ('#define __IGNORE_madvise1\n')
                    ('#define __IGNORE_oldstat\n')
                    ('#define __IGNORE_oldfstat\n')
                    ('#define __IGNORE_oldlstat\n')
                    ('#define __IGNORE_oldolduname\n')
                    ('#define __IGNORE_olduname\n')
                    ('#define __IGNORE_umount\n')
                    ('#define __IGNORE_waitpid\n')
                    ('#define __IGNORE_stime\n')
                    ('#define __IGNORE_nice\n')
                    ('#define __IGNORE_signal\n')
                    ('#define __IGNORE_sigaction\n')
                    ('#define __IGNORE_sgetmask\n')
                    ('#define __IGNORE_sigsuspend\n')
                    ('#define __IGNORE_sigpending\n')
                    ('#define __IGNORE_ssetmask\n')
                    ('#define __IGNORE_readdir\n')
                    ('#define __IGNORE_socketcall\n')
                    ('#define __IGNORE_ipc\n')
                    ('#define __IGNORE_sigreturn\n')
                    ('#define __IGNORE_sigprocmask\n')
                    ('#define __IGNORE_bdflush\n')
                    ('#define __IGNORE__llseek\n')
                    ('#define __IGNORE__newselect\n')
                    ('#define __IGNORE_create_module\n')
                    ('#define __IGNORE_query_module\n')
                    ('#define __IGNORE_get_kernel_syms\n')
                    ('#define __IGNORE_sysfs\n')
                    ('#define __IGNORE_uselib\n')
                    ('#define __IGNORE__sysctl\n')
                    ('\n')
                    ('/* ... including the ')
                    (Id.Right_DoubleQuote '"')
                    (new)
                    (Id.Right_DoubleQuote '"')
                    (' 32-bit uid syscalls */\n')
                    ('#define __IGNORE_lchown32\n')
                    ('#define __IGNORE_getuid32\n')
                    ('#define __IGNORE_getgid32\n')
                    ('#define __IGNORE_geteuid32\n')
                    ('#define __IGNORE_getegid32\n')
                    ('#define __IGNORE_setreuid32\n')
                    ('#define __IGNORE_setregid32\n')
                    ('#define __IGNORE_getgroups32\n')
                    ('#define __IGNORE_setgroups32\n')
                    ('#define __IGNORE_fchown32\n')
                    ('#define __IGNORE_setresuid32\n')
                    ('#define __IGNORE_getresuid32\n')
                    ('#define __IGNORE_setresgid32\n')
                    ('#define __IGNORE_getresgid32\n')
                    ('#define __IGNORE_chown32\n')
                    ('#define __IGNORE_setuid32\n')
                    ('#define __IGNORE_setgid32\n')
                    ('#define __IGNORE_setfsuid32\n')
                    ('#define __IGNORE_setfsgid32\n')
                    ('\n')
                    ('/* these can be expressed using other calls */\n')
                    ('#define __IGNORE_alarm\t\t/* setitimer */\n')
                    ('#define __IGNORE_creat\t\t/* open */\n')
                    ('#define __IGNORE_fork\t\t/* clone */\n')
                    ('#define __IGNORE_futimesat\t/* utimensat */\n')
                    ('#define __IGNORE_getpgrp\t/* getpgid */\n')
                    ('#define __IGNORE_getdents\t/* getdents64 */\n')
                    ('#define __IGNORE_pause\t\t/* sigsuspend */\n')
                    ('#define __IGNORE_poll\t\t/* ppoll */\n')
                    ('#define __IGNORE_select\t\t/* pselect6 */\n')
                    ('#define __IGNORE_epoll_wait\t/* epoll_pwait */\n')
                    ('#define __IGNORE_time\t\t/* gettimeofday */\n')
                    ('#define __IGNORE_uname\t\t/* newuname */\n')
                    ('#define __IGNORE_ustat\t\t/* statfs */\n')
                    ('#define __IGNORE_utime\t\t/* utimes */\n')
                    ('#define __IGNORE_vfork\t\t/* clone */\n')
                    ('\n')
                    ('/* sync_file_range had a stupid ABI. Allow sync_file_range2 instead */\n')
                    ('#ifdef __NR_sync_file_range2\n')
                    ('#define __IGNORE_sync_file_range\n')
                    ('#endif\n')
                    ('\n')
                    ('/* Unmerged syscalls for AFS, STREAMS, etc. */\n')
                    ('#define __IGNORE_afs_syscall\n')
                    ('#define __IGNORE_getpmsg\n')
                    ('#define __IGNORE_putpmsg\n')
                    ('#define __IGNORE_vserver\n')
                  ]
                )
              ]
            )
          ]
        )
    )
    (command.ShFunction
      name: syscall_list
      body: 
        (command.BraceGroup
          children: [
            (command.Pipeline
              children: [
                (C {(grep)} {(SQ (Token id:Id.Lit_Chars val:'^[0-9]' span_id:248))} 
                  {(DQ ($ Id.VSub_Number '$1'))}
                )
                (C {(sort)} {(-n)})
                (command.Subshell
                  command_list: 
                    (command.CommandList
                      children: [
                        (command.WhileUntil
                          keyword: (Token id:Id.KW_While val:while span_id:266)
                          cond: [
                            (command.Sentence
                              child: (C {(read)} {(nr)} {(abi)} {(name)} {(entry)})
                              terminator: (Token id:Id.Op_Semi val:';' span_id:278)
                            )
                          ]
                          body: 
                            (command.DoGroup
                              children: [
                                (command.Simple
                                  words: [{(cat)}]
                                  redirects: [
                                    (redir.HereDoc
                                      op: (Token id:Id.Redir_DLess val:'<<' span_id:285)
                                      fd: -1
                                      here_begin: {(EOF)}
                                      here_end_span_id: 304
                                      stdin_parts: [
                                        ('#if !defined(__NR_')
                                        (${ Id.VSub_Name name)
                                        (') && !defined(__IGNORE_')
                                        (${ Id.VSub_Name name)
                                        (')\n')
                                        ('#warning syscall ')
                                        (${ Id.VSub_Name name)
                                        (' not implemented\n')
                                        ('#endif\n')
                                      ]
                                    )
                                  ]
                                )
                              ]
                            )
                        )
                      ]
                    )
                )
              ]
              negated: F
            )
          ]
        )
    )
    (command.Pipeline
      children: [
        (command.Subshell
          command_list: 
            (command.CommandList
              children: [
                (command.AndOr
                  ops: [Id.Op_DAmp]
                  children: [
                    (C {(ignore_list)})
                    (C {(syscall_list)} 
                      {
                        (command_sub
                          left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:321)
                          command_list: 
                            (command.CommandList
                              children: [(C {(dirname)} {($ Id.VSub_Number '$0')})]
                            )
                        ) (/../arch/x86/entry/syscalls/syscall_32.tbl)
                      }
                    )
                  ]
                )
              ]
            )
        )
        (command.Simple
          words: [{($ Id.VSub_Star '$*')} {(-E)} {(-x)} {(c)} {(-)}]
          redirects: [
            (redir.Redir
              op: (Token id:Id.Redir_Great val:'>' span_id:342)
              fd: -1
              arg_word: {(/dev/null)}
            )
          ]
        )
      ]
      negated: F
    )
  ]
)