(command.AndOr
  ops: [Id.Op_DAmp]
  children: [
    (command.ShFunction
      name: _pylint
      body: 
        (command.BraceGroup
          children: [
            (C {(local)} {(cur)} {(prev)} {(words)} {(cword)} {(split)})
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {(_init_completion)} {(-s)})
                (command.ControlFlow
                  token: (Token id:Id.ControlFlow_Return val:return span_id:30)
                )
              ]
            )
            (command.Case
              to_match: {($ Id.VSub_DollarName '$prev')}
              arms: [
                (case_arm
                  pat_list: [
                    {(--version)}
                    {(-h)}
                    {(--help)}
                    {(--long-help)}
                    {(--help-msg)}
                    {(--init-hook)}
                    {(--ignore)}
                    {(-e)}
                    {(--enable)}
                    {(-d)}
                    {(--disable)}
                    {(--evaluation)}
                    {(--max-line-length)}
                    {(--max-module-lines)}
                    {(--indent-string)}
                    {(--min-similarity-lines)}
                    {(--max-args)}
                    {(--ignored-argument-names)}
                    {(--max-locals)}
                    {(--max-returns)}
                    {(--max-branchs)}
                    {(--max-statements)}
                    {(--max-parents)}
                    {(--max-attributes)}
                    {(--min-public-methods)}
                    {(--max-public-methods)}
                    {(--required-attributes)}
                    {(--bad-functions)}
                    {(--module-rgx)}
                    {(--const-rgx)}
                    {(--class-rgx)}
                    {(--function-rgx)}
                    {(--method-rgx)}
                    {(--attr-rgx)}
                    {(--argument-rgx)}
                    {(--variable-rgx)}
                    {(--inlinevar-rgx)}
                    {(--good-names)}
                    {(--bad-names)}
                    {(--no-docstring-rgx)}
                    {(--dummy-variables-rgx)}
                    {(--additional-builtins)}
                    {(--notes)}
                    {(--ignored-classes)}
                    {(--generated-members)}
                    {(--overgeneral-exceptions)}
                    {(--ignore-iface-methods)}
                    {(--defining-attr-methods)}
                    {(--valid-classmethod-first-arg)}
                    {(--valid-metaclass-classmethod-first-arg)}
                  ]
                  action: [
                    (command.ControlFlow
                      token: (Token id:Id.ControlFlow_Return val:return span_id:167)
                    )
                  ]
                  spids: [41 164 170 -1]
                )
                (case_arm
                  pat_list: [{(--rcfile)}]
                  action: [
                    (C {(_filedir)})
                    (command.ControlFlow
                      token: (Token id:Id.ControlFlow_Return val:return span_id:180)
                    )
                  ]
                  spids: [173 174 183 -1]
                )
                (case_arm
                  pat_list: [
                    {(--persistent)}
                    {(-i)}
                    {(--include-ids)}
                    {(-s)}
                    {(--symbols)}
                    {(--files-output)}
                    {(-r)}
                    {(--reports)}
                    {(--comment)}
                    {(--ignore-comments)}
                    {(--ignore-docstrings)}
                    {(--ignore-imports)}
                    {(--init-import)}
                    {(--ignore-mixin-members)}
                    {(--zope)}
                  ]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:COMPREPLY)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (sh_array_literal
                                left: (Token id:Id.Op_LParen val:'(' span_id:223)
                                words: [
                                  {
                                    (command_sub
                                      left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:225)
                                      command_list: 
                                        (command.CommandList
                                          children: [
                                            (C {(compgen)} {(-W)} 
                                              {(SQ (Token id:Id.Lit_Chars val:'yes no' span_id:232))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))}
                                            )
                                          ]
                                        )
                                    )
                                  }
                                ]
                              )
                            }
                          spids: [222]
                        )
                      ]
                    )
                    (command.ControlFlow
                      token: (Token id:Id.ControlFlow_Return val:return span_id:246)
                    )
                  ]
                  spids: [186 219 249 -1]
                )
                (case_arm
                  pat_list: [{(--load-plugins)} {(--deprecated-modules)}]
                  action: [
                    (command.Sentence
                      child: (C {(local)} {(Id.Lit_VarLike 'prefix=')})
                      terminator: (Token id:Id.Op_Semi val:';' span_id:261)
                    )
                    (command.AndOr
                      ops: [Id.Op_DAmp]
                      children: [
                        (command.DBracket
                          expr: 
                            (bool_expr.Binary
                              op_id: Id.BoolBinary_GlobDEqual
                              left: {($ Id.VSub_DollarName '$cur')}
                              right: {(Id.Lit_Other '*') (Id.Lit_Other ',') (Id.Lit_Other '*')}
                            )
                        )
                        (command.ShAssignment
                          pairs: [
                            (assign_pair
                              lhs: (sh_lhs_expr.Name name:prefix)
                              op: assign_op.Equal
                              rhs: 
                                {
                                  (DQ 
                                    (braced_var_sub
                                      token: (Token id:Id.VSub_Name val:cur span_id:280)
                                      suffix_op: 
                                        (suffix_op.Unary
                                          op_id: Id.VOp1_Percent
                                          arg_word: {(',*')}
                                        )
                                    ) (',')
                                  )
                                }
                              spids: [277]
                            )
                          ]
                        )
                      ]
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:cur)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ 
                                (braced_var_sub
                                  token: (Token id:Id.VSub_Name val:cur span_id:291)
                                  suffix_op: (suffix_op.Unary op_id:Id.VOp1_DPound arg_word:{('*,')})
                                )
                              )
                            }
                          spids: [288]
                        )
                      ]
                    )
                    (C {(_xfunc)} {(python)} {(_python_modules)})
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:COMPREPLY)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (sh_array_literal
                                left: (Token id:Id.Op_LParen val:'(' span_id:306)
                                words: [
                                  {
                                    (braced_var_sub
                                      token: (Token id:Id.VSub_Name val:COMPREPLY span_id:309)
                                      bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
                                      suffix_op: 
                                        (suffix_op.PatSub
                                          pat: {}
                                          replace: {($ Id.VSub_DollarName '$prefix')}
                                          replace_mode: Id.Lit_Pound
                                        )
                                    )
                                  }
                                ]
                              )
                            }
                          spids: [305]
                        )
                      ]
                    )
                    (command.ControlFlow
                      token: (Token id:Id.ControlFlow_Return val:return span_id:322)
                    )
                  ]
                  spids: [252 255 325 -1]
                )
                (case_arm
                  pat_list: [{(-f)} {(--format)}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:COMPREPLY)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (sh_array_literal
                                left: (Token id:Id.Op_LParen val:'(' span_id:335)
                                words: [
                                  {
                                    (command_sub
                                      left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:337)
                                      command_list: 
                                        (command.CommandList
                                          children: [
                                            (C {(compgen)} {(-W)} 
                                              {
                                                (SQ 
                                                  (Token
                                                    id: Id.Lit_Chars
                                                    val: 'text parseable colorized msvs html'
                                                    span_id: 344
                                                  )
                                                )
                                              } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))}
                                            )
                                          ]
                                        )
                                    )
                                  }
                                ]
                              )
                            }
                          spids: [334]
                        )
                      ]
                    )
                    (command.ControlFlow
                      token: (Token id:Id.ControlFlow_Return val:return span_id:360)
                    )
                  ]
                  spids: [328 331 363 -1]
                )
                (case_arm
                  pat_list: [{(--import-graph)} {(--ext-import-graph)} {(--int-import-graph)}]
                  action: [
                    (C {(_filedir)} {(dot)})
                    (command.ControlFlow
                      token: (Token id:Id.ControlFlow_Return val:return span_id:379)
                    )
                  ]
                  spids: [366 371 382 -1]
                )
              ]
            )
            (command.AndOr
              ops: [Id.Op_DAmp]
              children: [
                (C {($ Id.VSub_DollarName '$split')})
                (command.ControlFlow
                  token: (Token id:Id.ControlFlow_Return val:return span_id:393)
                )
              ]
            )
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (command.DBracket
                          expr: 
                            (bool_expr.Binary
                              op_id: Id.BoolBinary_GlobDEqual
                              left: {($ Id.VSub_DollarName '$cur')}
                              right: {(-) (Id.Lit_Other '*')}
                            )
                        )
                      terminator: (Token id:Id.Op_Semi val:';' span_id:409)
                    )
                  ]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:COMPREPLY)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (sh_array_literal
                                left: (Token id:Id.Op_LParen val:'(' span_id:415)
                                words: [
                                  {
                                    (command_sub
                                      left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:417)
                                      command_list: 
                                        (command.CommandList
                                          children: [
                                            (C {(compgen)} {(-W)} 
                                              {
                                                (SQ 
                                                  (Token
                                                    id: Id.Lit_Chars
                                                    val: '$( _parse_help "$1" --long-help )'
                                                    span_id: 426
                                                  )
                                                )
                                              } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))}
                                            )
                                          ]
                                        )
                                    )
                                  }
                                ]
                              )
                            }
                          spids: [414]
                        )
                      ]
                    )
                    (command.AndOr
                      ops: [Id.Op_DAmp]
                      children: [
                        (command.DBracket
                          expr: 
                            (bool_expr.Binary
                              op_id: Id.BoolBinary_GlobDEqual
                              left: {($ Id.VSub_DollarName '$COMPREPLY')}
                              right: {(Id.Lit_Other '*') (Id.BoolBinary_GlobEqual '=')}
                            )
                        )
                        (C {(compopt)} {(-o)} {(nospace)})
                      ]
                    )
                    (command.ControlFlow
                      token: (Token id:Id.ControlFlow_Return val:return span_id:460)
                    )
                  ]
                  spids: [397 411]
                )
              ]
            )
            (C {(_xfunc)} {(python)} {(_python_modules)})
            (C {(_filedir)} {(py)})
          ]
        )
    )
    (C {(complete)} {(-F)} {(_pylint)} {(pylint)})
  ]
)