(command.CommandList
  children: [
    (command.Simple
      blame_tok: <_Dbg_help_add>
      more_env: []
      words: [
        {<_Dbg_help_add>}
        {<alias>}
        {
          (SQ <'**alias** *alias-name* *debugger-command*\n'> <'\n'> 
            <'Make *alias-name* be an alias for *debugger-command*.\n'> <'\n'> <'Examples:\n'> <'---------\n'> <'\n'> 
            <'    alias cat list   # "cat prog.py" is the same as "list prog.py"\n'> <'    alias s   step   # "s" is now an alias for "step".\n'> 
            <'                     # The above example is done by default.\n'> <'\n'> <'See also:\n'> <'---------\n'> <'\n'> <'**unalias** and **show alias**.\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.ShFunction
      name_tok: <_Dbg_do_alias>
      name: _Dbg_do_alias
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DParen
                              left: <Id.Op_DLeftParen _>
                              child: 
                                (arith_expr.Binary
                                  op_id: Id.Arith_NEqual
                                  left: {($ Id.VSub_Pound '#')}
                                  right: {<Id.Lit_Digits 2>}
                                )
                              right: <Id.Op_DRightParen _>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <_Dbg_errmsg>
                      more_env: []
                      words: [
                        {<_Dbg_errmsg>}
                        {(DQ <'Got '> ($ Id.VSub_Pound '#') <' parameters, but need 2.'>)}
                      ]
                      redirects: []
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Return return>
                      arg_word: {<1>}
                    )
                  ]
                  spids: [86 99]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <_Dbg_alias_add>
              more_env: []
              words: [{<_Dbg_alias_add>} {($ Id.VSub_Number 1)} {($ Id.VSub_Number 2)}]
              redirects: []
              do_fork: T
            )
            (command.ControlFlow
              keyword: <Id.ControlFlow_Return return>
              arg_word: {($ Id.VSub_QMark '?')}
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.Simple
      blame_tok: <_Dbg_help_add>
      more_env: []
      words: [
        {<_Dbg_help_add>}
        {<unalias>}
        {
          (SQ <'**unalias** *name*\n'> <'\n'> <'Remove debugger command alias *name*.\n'> <'\n'> 
            <'Use **show aliases** to get a list the aliases in effect.\n'>
          )
        }
        {<1>}
      ]
      redirects: []
      do_fork: T
    )
    (command.ShFunction
      name_tok: <_Dbg_do_unalias>
      name: _Dbg_do_unalias
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.DParen
                              left: <Id.Op_DLeftParen _>
                              child: 
                                (arith_expr.Binary
                                  op_id: Id.Arith_NEqual
                                  left: {($ Id.VSub_Pound '#')}
                                  right: {<Id.Lit_Digits 1>}
                                )
                              right: <Id.Op_DRightParen _>
                              redirects: []
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <_Dbg_errmsg>
                      more_env: []
                      words: [
                        {<_Dbg_errmsg>}
                        {(DQ <'Got '> ($ Id.VSub_Pound '#') <' parameters, but need 1.'>)}
                      ]
                      redirects: []
                      do_fork: T
                    )
                    (command.ControlFlow
                      keyword: <Id.ControlFlow_Return return>
                      arg_word: {<1>}
                    )
                  ]
                  spids: [156 169]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <_Dbg_alias_remove>
              more_env: []
              words: [{<_Dbg_alias_remove>} {($ Id.VSub_Number 1)}]
              redirects: []
              do_fork: T
            )
            (command.ControlFlow keyword:<Id.ControlFlow_Return return> arg_word:{<0>})
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
  ]
)