(CommandList
  children: [
    (FuncDef
      name: _xen_domain_names
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:COMPREPLY)
                  op: Equal
                  rhs: 
                    {
                      (ArrayLiteralPart
                        words: [
                          {
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [
                                    (C {(compgen)} {(-W)} 
                                      {
                                        (DQ 
                                          (CommandSubPart
                                            command_list: 
                                              (CommandList
                                                children: [
                                                  (Pipeline
                                                    children: [
                                                      (SimpleCommand
                                                        words: [{(xm)} {(list)}]
                                                        redirects: [
                                                          (Redir
                                                            op_id: Redir_Great
                                                            fd: 2
                                                            arg_word: {(/dev/null)}
                                                            spids: [27]
                                                          )
                                                        ]
                                                      )
                                                      (C {(awk)} 
                                                        {(SQ <'!/Name|Domain-0/ { print $1 }'>)}
                                                      )
                                                    ]
                                                    negated: False
                                                  )
                                                ]
                                              )
                                            left_token: <Left_CommandSub '$('>
                                            spids: [21 40]
                                          )
                                        )
                                      } {(--)} {(DQ ($ VSub_Name '$cur'))}
                                    )
                                  ]
                                )
                              left_token: <Left_CommandSub '$('>
                              spids: [14 49]
                            )
                          }
                        ]
                      )
                    }
                  spids: [11]
                )
              ]
              spids: [11]
            )
          ]
          spids: [8]
        )
      spids: [4 7]
    )
    (FuncDef
      name: _xen_domain_ids
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:COMPREPLY)
                  op: Equal
                  rhs: 
                    {
                      (ArrayLiteralPart
                        words: [
                          {
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [
                                    (C {(compgen)} {(-W)} 
                                      {
                                        (DQ 
                                          (CommandSubPart
                                            command_list: 
                                              (CommandList
                                                children: [
                                                  (Pipeline
                                                    children: [
                                                      (SimpleCommand
                                                        words: [{(xm)} {(list)}]
                                                        redirects: [
                                                          (Redir
                                                            op_id: Redir_Great
                                                            fd: 2
                                                            arg_word: {(/dev/null)}
                                                            spids: [79]
                                                          )
                                                        ]
                                                      )
                                                      (C {(awk)} 
                                                        {(SQ <'!/Name|Domain-0/ { print $2 }'>)}
                                                      )
                                                    ]
                                                    negated: False
                                                  )
                                                ]
                                              )
                                            left_token: <Left_CommandSub '$('>
                                            spids: [73 92]
                                          )
                                        )
                                      } {(--)} {(DQ ($ VSub_Name '$cur'))}
                                    )
                                  ]
                                )
                              left_token: <Left_CommandSub '$('>
                              spids: [66 101]
                            )
                          }
                        ]
                      )
                    }
                  spids: [63]
                )
              ]
              spids: [63]
            )
          ]
          spids: [60]
        )
      spids: [56 59]
    )
    (AndOr
      children: [
        (FuncDef
          name: _xm
          body: 
            (BraceGroup
              children: [
                (Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair lhs:(LhsName name:cur) op:Equal spids:[117])
                    (assign_pair lhs:(LhsName name:prev) op:Equal spids:[119])
                    (assign_pair lhs:(LhsName name:words) op:Equal spids:[121])
                    (assign_pair lhs:(LhsName name:cword) op:Equal spids:[123])
                  ]
                  spids: [115]
                )
                (AndOr
                  children: [(C {(_init_completion)}) (ControlFlow token:<ControlFlow_Return return>)]
                  op_id: Op_DPipe
                )
                (Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair lhs:(LhsName name:command) op:Equal spids:[141])
                    (assign_pair lhs:(LhsName name:options) op:Equal spids:[143])
                  ]
                  spids: [139]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:commands)
                      op: Equal
                      rhs: 
                        {
                          (SQ <'console vncviewer create new delete destroy domid domname\n'> 
                            <
'        dump-core list mem-max mem-set migrate pause reboot rename reset\n'
                            > <'        restore resume save shutdown start suspend sysrq trigger top unpause\n'> 
                            <
'        uptime usb-add usb-del vcpu-list vcpu-pin vcpu-set debug-keys dmesg\n'
                            > <'        info log serve sched-credit sched-sedf block-attach block-detach\n'> 
                            <
'        block-list block-configure network-attach network-detach network-list\n'
                            > <'        vtpm-list pci-attach pci-detach pci-list pci-list-assignable-devices\n'> 
                            <
'        scsi-attach scsi-detach scsi-list vnet-list vnet-create vnet-delete\n'
                            > <'        labels addlabel rmlabel getlabel dry-run resources dumppolicy setpolicy\n'> 
                            <'        resetpolicy getpolicy shell help'>
                          )
                        }
                      spids: [147]
                    )
                  ]
                  spids: [147]
                )
                (If
                  arms: [
                    (if_arm
                      cond: [
                        (Sentence
                          child: 
                            (DBracket
                              expr: 
                                (BoolBinary
                                  op_id: BoolBinary_eq
                                  left: {($ VSub_Name '$cword')}
                                  right: {(1)}
                                )
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:COMPREPLY)
                              op: Equal
                              rhs: 
                                {
                                  (ArrayLiteralPart
                                    words: [
                                      {
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (C {(compgen)} {(-W)} {(DQ ($ VSub_Name '$commands'))} 
                                                  {(--)} {(DQ ($ VSub_Name '$cur'))}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [183 199]
                                        )
                                      }
                                    ]
                                  )
                                }
                              spids: [180]
                            )
                          ]
                          spids: [180]
                        )
                      ]
                      spids: [16777215 177]
                    )
                  ]
                  else_action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ ($ VSub_Name '$cur'))}
                                      right: 
                                        {(Lit_Other '*') (BoolBinary_GlobEqual '=') (Lit_Other '*')}
                                    )
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: 
                                    {
                                      (BracedVarSub
                                        token: <VSub_Name cur>
                                        suffix_op: 
                                          (PatSub
                                            pat: {('=*')}
                                            replace: {}
                                            do_all: False
                                            do_prefix: False
                                            do_suffix: False
                                          )
                                        spids: [228 233]
                                      )
                                    }
                                  spids: [227]
                                )
                              ]
                              spids: [227]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:cur)
                                  op: Equal
                                  rhs: 
                                    {
                                      (BracedVarSub
                                        token: <VSub_Name cur>
                                        suffix_op: 
                                          (PatSub
                                            pat: {('*=')}
                                            replace: {}
                                            do_all: False
                                            do_prefix: False
                                            do_suffix: False
                                          )
                                        spids: [237 242]
                                      )
                                    }
                                  spids: [236]
                                )
                              ]
                              spids: [236]
                            )
                          ]
                          spids: [16777215 224]
                        )
                      ]
                      spids: [16777215 245]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:command)
                          op: Equal
                          rhs: 
                            {
                              (BracedVarSub
                                token: <VSub_Name words>
                                bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 1)}))
                                spids: [250 255]
                              )
                            }
                          spids: [249]
                        )
                      ]
                      spids: [249]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(DQ ($ VSub_Name '$cur'))}
                                      right: {(-) (Lit_Other '*')}
                                    )
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Case
                              to_match: {($ VSub_Name '$command')}
                              arms: [
                                (case_arm
                                  pat_list: [{(create)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:options)
                                          op: Equal
                                          rhs: {(SQ <-c>)}
                                          spids: [292]
                                        )
                                      ]
                                      spids: [292]
                                    )
                                  ]
                                  spids: [288 289 298 16777215]
                                )
                                (case_arm
                                  pat_list: [{(dmesg)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:options)
                                          op: Equal
                                          rhs: {(SQ <--clear>)}
                                          spids: [305]
                                        )
                                      ]
                                      spids: [305]
                                    )
                                  ]
                                  spids: [301 302 311 16777215]
                                )
                                (case_arm
                                  pat_list: [{(list)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:options)
                                          op: Equal
                                          rhs: {(SQ <--long>)}
                                          spids: [318]
                                        )
                                      ]
                                      spids: [318]
                                    )
                                  ]
                                  spids: [314 315 324 16777215]
                                )
                                (case_arm
                                  pat_list: [{(reboot)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:options)
                                          op: Equal
                                          rhs: {(SQ <'-w -a'>)}
                                          spids: [331]
                                        )
                                      ]
                                      spids: [331]
                                    )
                                  ]
                                  spids: [327 328 337 16777215]
                                )
                                (case_arm
                                  pat_list: [{(shutdown)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:options)
                                          op: Equal
                                          rhs: {(SQ <'-w -a -R -H'>)}
                                          spids: [344]
                                        )
                                      ]
                                      spids: [344]
                                    )
                                  ]
                                  spids: [340 341 350 16777215]
                                )
                                (case_arm
                                  pat_list: [{(sched-credit)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:options)
                                          op: Equal
                                          rhs: {(SQ <'-d -w -c'>)}
                                          spids: [357]
                                        )
                                      ]
                                      spids: [357]
                                    )
                                  ]
                                  spids: [353 354 363 16777215]
                                )
                                (case_arm
                                  pat_list: [{(block-list)} {(network-list)} {(vtpm-list)} {(vnet-list)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:options)
                                          op: Equal
                                          rhs: {(SQ <'-l --long'>)}
                                          spids: [376]
                                        )
                                      ]
                                      spids: [376]
                                    )
                                  ]
                                  spids: [366 373 382 16777215]
                                )
                                (case_arm
                                  pat_list: [{(getpolicy)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:options)
                                          op: Equal
                                          rhs: {(SQ <--dumpxml>)}
                                          spids: [389]
                                        )
                                      ]
                                      spids: [389]
                                    )
                                  ]
                                  spids: [385 386 395 16777215]
                                )
                                (case_arm
                                  pat_list: [{(new)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:options)
                                          op: Equal
                                          rhs: 
                                            {
                                              (SQ 
                                                <
'-h --help --help_config -q --quiet --path= -f=\n'
                                                > <'                        --defconfig= -F= --config= -b --dryrun -x --xmldryrun\n'> 
                                                <
'                        -s --skipdtd -p --paused -c --console_autoconnect'
                                                >
                                              )
                                            }
                                          spids: [402]
                                        )
                                      ]
                                      spids: [402]
                                    )
                                  ]
                                  spids: [398 399 410 16777215]
                                )
                              ]
                              spids: [281 285 413]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:COMPREPLY)
                                  op: Equal
                                  rhs: 
                                    {
                                      (ArrayLiteralPart
                                        words: [
                                          {
                                            (CommandSubPart
                                              command_list: 
                                                (CommandList
                                                  children: [
                                                    (C {(compgen)} {(-W)} {(DQ ($ VSub_Name '$options'))} 
                                                      {(--)} {(DQ ($ VSub_Name '$cur'))}
                                                    )
                                                  ]
                                                )
                                              left_token: <Left_CommandSub '$('>
                                              spids: [419 435]
                                            )
                                          }
                                        ]
                                      )
                                    }
                                  spids: [416]
                                )
                              ]
                              spids: [416]
                            )
                          ]
                          spids: [16777215 274]
                        )
                      ]
                      else_action: [
                        (Case
                          to_match: {($ VSub_Name '$command')}
                          arms: [
                            (case_arm
                              pat_list: [
                                {(console)}
                                {(destroy)}
                                {(domname)}
                                {(domid)}
                                {(list)}
                                {(mem-set)}
                                {(mem-max)}
                                {(pause)}
                                {(reboot)}
                                {(rename)}
                                {(shutdown)}
                                {(unpause)}
                                {(vcpu-list)}
                                {(vcpu-pin)}
                                {(vcpu-set)}
                                {(block-list)}
                                {(network-list)}
                                {(vtpm-list)}
                              ]
                              action: [
                                (C {(_count_args)})
                                (Case
                                  to_match: {($ VSub_Name '$args')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(2)}]
                                      action: [(C {(_xen_domain_names)})]
                                      spids: [504 505 511 16777215]
                                    )
                                  ]
                                  spids: [497 501 514]
                                )
                              ]
                              spids: [450 491 517 16777215]
                            )
                            (case_arm
                              pat_list: [{(migrate)}]
                              action: [
                                (C {(_count_args)})
                                (Case
                                  to_match: {($ VSub_Name '$args')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(2)}]
                                      action: [(C {(_xen_domain_names)})]
                                      spids: [534 535 541 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(3)}]
                                      action: [(C {(_known_hosts_real)} {(DQ ($ VSub_Name '$cur'))})]
                                      spids: [544 545 555 16777215]
                                    )
                                  ]
                                  spids: [527 531 558]
                                )
                              ]
                              spids: [520 521 561 16777215]
                            )
                            (case_arm
                              pat_list: [{(restore)} {(dry-run)} {(vnet-create)}]
                              action: [(C {(_filedir)})]
                              spids: [564 569 575 16777215]
                            )
                            (case_arm
                              pat_list: [{(save)}]
                              action: [
                                (C {(_count_args)})
                                (Case
                                  to_match: {($ VSub_Name '$args')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(2)}]
                                      action: [(C {(_xen_domain_names)})]
                                      spids: [592 593 599 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(3)}]
                                      action: [(C {(_filedir)})]
                                      spids: [602 603 609 16777215]
                                    )
                                  ]
                                  spids: [585 589 612]
                                )
                              ]
                              spids: [578 579 615 16777215]
                            )
                            (case_arm
                              pat_list: [{(sysrq)}]
                              action: [
                                (C {(_count_args)})
                                (Case
                                  to_match: {($ VSub_Name '$args')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(2)}]
                                      action: [(C {(_xen_domain_names)})]
                                      spids: [632 633 639 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(3)}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:COMPREPLY)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (ArrayLiteralPart
                                                    words: [
                                                      {
                                                        (CommandSubPart
                                                          command_list: 
                                                            (CommandList
                                                              children: [
                                                                (C {(compgen)} {(-W)} 
                                                                  {(DQ ('r s e i u b'))} {(--)} {(DQ ($ VSub_Name '$cur'))}
                                                                )
                                                              ]
                                                            )
                                                          left_token: <Left_CommandSub '$('>
                                                          spids: [649 667]
                                                        )
                                                      }
                                                    ]
                                                  )
                                                }
                                              spids: [646]
                                            )
                                          ]
                                          spids: [646]
                                        )
                                      ]
                                      spids: [642 643 672 16777215]
                                    )
                                  ]
                                  spids: [625 629 675]
                                )
                              ]
                              spids: [618 619 678 16777215]
                            )
                            (case_arm
                              pat_list: [{(block-attach)}]
                              action: [
                                (C {(_count_args)})
                                (Case
                                  to_match: {($ VSub_Name '$args')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(2)}]
                                      action: [(C {(_xen_domain_names)})]
                                      spids: [695 696 702 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(3)}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:COMPREPLY)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (ArrayLiteralPart
                                                    words: [
                                                      {
                                                        (CommandSubPart
                                                          command_list: 
                                                            (CommandList
                                                              children: [
                                                                (C {(compgen)} {(-W)} 
                                                                  {(DQ ('phy: file:'))} {(--)} {(DQ ($ VSub_Name '$cur'))}
                                                                )
                                                              ]
                                                            )
                                                          left_token: <Left_CommandSub '$('>
                                                          spids: [712 730]
                                                        )
                                                      }
                                                    ]
                                                  )
                                                }
                                              spids: [709]
                                            )
                                          ]
                                          spids: [709]
                                        )
                                      ]
                                      spids: [705 706 735 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(5)}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:COMPREPLY)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (ArrayLiteralPart
                                                    words: [
                                                      {
                                                        (CommandSubPart
                                                          command_list: 
                                                            (CommandList
                                                              children: [
                                                                (C {(compgen)} {(-W)} {(DQ ('w r'))} 
                                                                  {(--)} {(DQ ($ VSub_Name '$cur'))}
                                                                )
                                                              ]
                                                            )
                                                          left_token: <Left_CommandSub '$('>
                                                          spids: [745 761]
                                                        )
                                                      }
                                                    ]
                                                  )
                                                }
                                              spids: [742]
                                            )
                                          ]
                                          spids: [742]
                                        )
                                      ]
                                      spids: [738 739 766 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(6)}]
                                      action: [(C {(_xen_domain_names)})]
                                      spids: [769 770 776 16777215]
                                    )
                                  ]
                                  spids: [688 692 779]
                                )
                              ]
                              spids: [681 682 782 16777215]
                            )
                            (case_arm
                              pat_list: [{(block-detach)}]
                              action: [
                                (C {(_count_args)})
                                (Case
                                  to_match: {($ VSub_Name '$args')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(2)}]
                                      action: [(C {(_xen_domain_names)})]
                                      spids: [799 800 806 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(3)}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:COMPREPLY)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (ArrayLiteralPart
                                                    words: [
                                                      {
                                                        (CommandSubPart
                                                          command_list: 
                                                            (CommandList
                                                              children: [
                                                                (C {(compgen)} {(-W)} 
                                                                  {
                                                                    (DQ 
                                                                      (CommandSubPart
                                                                        command_list: 
                                                                          (CommandList
                                                                            children: [
                                                                              (Pipeline
                                                                                children: [
                                                                                  (SimpleCommand
                                                                                    words: [
                                                                                      {(xm)}
                                                                                      {(block-list)}
                                                                                      {
                                                                                        ($ VSub_Name 
'$prev'
                                                                                        )
                                                                                      }
                                                                                    ]
                                                                                    redirects: [
                                                                                      (Redir
                                                                                        op_id: 
Redir_Great
                                                                                        fd: 2
                                                                                        arg_word: 
                                                                                          {
                                                                                            (
/dev/null
                                                                                            )
                                                                                          }
                                                                                        spids: [833]
                                                                                      )
                                                                                    ]
                                                                                  )
                                                                                  (C {(awk)} 
                                                                                    {
                                                                                      (SQ 
                                                                                        <
'!/Vdev/ { print $1 }'
                                                                                        >
                                                                                      )
                                                                                    }
                                                                                  )
                                                                                ]
                                                                                negated: False
                                                                              )
                                                                            ]
                                                                          )
                                                                        left_token: 
                                                                          <Left_CommandSub '$('>
                                                                        spids: [823 844]
                                                                      )
                                                                    )
                                                                  } {(--)} {(DQ ($ VSub_Name '$cur'))}
                                                                )
                                                              ]
                                                            )
                                                          left_token: <Left_CommandSub '$('>
                                                          spids: [816 855]
                                                        )
                                                      }
                                                    ]
                                                  )
                                                }
                                              spids: [813]
                                            )
                                          ]
                                          spids: [813]
                                        )
                                      ]
                                      spids: [809 810 860 16777215]
                                    )
                                  ]
                                  spids: [792 796 863]
                                )
                              ]
                              spids: [785 786 866 16777215]
                            )
                            (case_arm
                              pat_list: [{(network-attach)}]
                              action: [
                                (C {(_count_args)})
                                (Case
                                  to_match: {($ VSub_Name '$args')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(2)}]
                                      action: [(C {(_xen_domain_names)})]
                                      spids: [883 884 890 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(Lit_Other '*')}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:COMPREPLY)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (ArrayLiteralPart
                                                    words: [
                                                      {
                                                        (CommandSubPart
                                                          command_list: 
                                                            (CommandList
                                                              children: [
                                                                (C {(compgen)} {(-W)} 
                                                                  {
                                                                    (DQ 
                                                                      (
'script= ip= mac= bridge=\n'
                                                                      ) ('                                backend=')
                                                                    )
                                                                  } {(--)} {(DQ ($ VSub_Name '$cur'))}
                                                                )
                                                              ]
                                                            )
                                                          left_token: <Left_CommandSub '$('>
                                                          spids: [900 917]
                                                        )
                                                      }
                                                    ]
                                                  )
                                                }
                                              spids: [897]
                                            )
                                          ]
                                          spids: [897]
                                        )
                                      ]
                                      spids: [893 894 922 16777215]
                                    )
                                  ]
                                  spids: [876 880 925]
                                )
                              ]
                              spids: [869 870 928 16777215]
                            )
                            (case_arm
                              pat_list: [{(network-detach)}]
                              action: [
                                (C {(_count_args)})
                                (Case
                                  to_match: {($ VSub_Name '$args')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(2)}]
                                      action: [(C {(_xen_domain_names)})]
                                      spids: [945 946 952 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(3)}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:COMPREPLY)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (ArrayLiteralPart
                                                    words: [
                                                      {
                                                        (CommandSubPart
                                                          command_list: 
                                                            (CommandList
                                                              children: [
                                                                (C {(compgen)} {(-W)} 
                                                                  {
                                                                    (DQ 
                                                                      (CommandSubPart
                                                                        command_list: 
                                                                          (CommandList
                                                                            children: [
                                                                              (Pipeline
                                                                                children: [
                                                                                  (SimpleCommand
                                                                                    words: [
                                                                                      {(xm)}
                                                                                      {
                                                                                        (
network-list
                                                                                        )
                                                                                      }
                                                                                      {
                                                                                        ($ VSub_Name 
'$prev'
                                                                                        )
                                                                                      }
                                                                                    ]
                                                                                    redirects: [
                                                                                      (Redir
                                                                                        op_id: 
Redir_Great
                                                                                        fd: 2
                                                                                        arg_word: 
                                                                                          {
                                                                                            (
/dev/null
                                                                                            )
                                                                                          }
                                                                                        spids: [978]
                                                                                      )
                                                                                    ]
                                                                                  )
                                                                                  (C {(awk)} 
                                                                                    {
                                                                                      (SQ 
                                                                                        <
'!/Idx/ { print $1 }'
                                                                                        >
                                                                                      )
                                                                                    }
                                                                                  )
                                                                                ]
                                                                                negated: False
                                                                              )
                                                                            ]
                                                                          )
                                                                        left_token: 
                                                                          <Left_CommandSub '$('>
                                                                        spids: [968 989]
                                                                      )
                                                                    )
                                                                  } {(--)} {(DQ ($ VSub_Name '$cur'))}
                                                                )
                                                              ]
                                                            )
                                                          left_token: <Left_CommandSub '$('>
                                                          spids: [962 1000]
                                                        )
                                                      }
                                                    ]
                                                  )
                                                }
                                              spids: [959]
                                            )
                                          ]
                                          spids: [959]
                                        )
                                      ]
                                      spids: [955 956 1005 16777215]
                                    )
                                  ]
                                  spids: [938 942 1008]
                                )
                              ]
                              spids: [931 932 1011 16777215]
                            )
                            (case_arm
                              pat_list: [{(sched-credit)}]
                              action: [
                                (Case
                                  to_match: {($ VSub_Name '$prev')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(-d)}]
                                      action: [
                                        (C {(_xen_domain_names)})
                                        (ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(0)}
                                        )
                                      ]
                                      spids: [1025 1026 1037 16777215]
                                    )
                                  ]
                                  spids: [1018 1022 1040]
                                )
                              ]
                              spids: [1014 1015 1043 16777215]
                            )
                            (case_arm
                              pat_list: [{(create)}]
                              action: [
                                (C {(_filedir)})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:COMPREPLY)
                                      op: PlusEqual
                                      rhs: 
                                        {
                                          (ArrayLiteralPart
                                            words: [
                                              {
                                                (CommandSubPart
                                                  command_list: 
                                                    (CommandList
                                                      children: [
                                                        (C {(compgen)} {(-W)} 
                                                          {
                                                            (SQ 
                                                              <
'$( command ls /etc/xen 2>/dev/null )'
                                                              >
                                                            )
                                                          } {(--)} {(DQ ($ VSub_Name '$cur'))}
                                                        )
                                                      ]
                                                    )
                                                  left_token: <Left_CommandSub '$('>
                                                  spids: [1058 1076]
                                                )
                                              }
                                            ]
                                          )
                                        }
                                      spids: [1053]
                                    )
                                  ]
                                  spids: [1053]
                                )
                              ]
                              spids: [1046 1047 1081 16777215]
                            )
                            (case_arm
                              pat_list: [{(new)}]
                              action: [
                                (Case
                                  to_match: {($ VSub_Name '$prev')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(-f)} {(-F)} {(--defconfig)} {(--config)}]
                                      action: [
                                        (C {(_filedir)})
                                        (ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(0)}
                                        )
                                      ]
                                      spids: [1095 1102 1113 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(--path)}]
                                      action: [
                                        (C {(_filedir)} {(-d)})
                                        (ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(0)}
                                        )
                                      ]
                                      spids: [1116 1117 1130 16777215]
                                    )
                                  ]
                                  spids: [1088 1092 1133]
                                )
                                (C {(_count_args)})
                                (Case
                                  to_match: {($ VSub_Name '$args')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(2)}]
                                      action: [(C {(_xen_domain_names)})]
                                      spids: [1147 1148 1154 16777215]
                                    )
                                  ]
                                  spids: [1140 1144 1157]
                                )
                              ]
                              spids: [1084 1085 1160 16777215]
                            )
                          ]
                          spids: [443 447 1163]
                        )
                      ]
                      spids: [440 1166]
                    )
                  ]
                  spids: [204 1169]
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
              ]
              spids: [112]
            )
          spids: [108 111]
        )
        (C {(complete)} {(-F)} {(_xm)} {(xm)})
      ]
      op_id: Op_DAmp
    )
  ]
)