(CommandList
  children: [
    (C {(_Dbg_help_add_sub)} {(info)} {(program)} 
      {
        (SQ <"\n"> <"**info program**\n"> <"\n"> 
          <"Information about debugged program stopping point.\n"> <"\n"> <"See also:\n"> <"---------\n"> <"\n"> <"\\\"info line\\\".">
        )
      } {(1)}
    )
    (FuncDef
      name: _Dbg_do_info_program
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (DParen child:(ArithVarRef name:_Dbg_running))
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (C {(_Dbg_msg)} {(DQ ("Program stopped."))})
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: 
                                    (BoolUnary
                                      op_id: BoolUnary_n
                                      child: {($ VSub_Name "$_Dbg_stop_reason")}
                                    )
                                )
                              terminator: <Op_Semi ";">
                            )
                          ]
                          action: [
                            (C {(_Dbg_msg)} {(DQ ("It stopped ") (${ VSub_Name _Dbg_stop_reason) (.))})
                          ]
                          spids: [-1 119]
                        )
                      ]
                      spids: [-1 133]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: 
                                    (BoolUnary
                                      op_id: BoolUnary_n
                                      child: {($ VSub_Name "$_Dbg_bash_command")}
                                    )
                                )
                              terminator: <Op_Semi ";">
                            )
                          ]
                          action: [
                            (C {(_Dbg_msg)} 
                              {
                                (DQ ("Next statement to be run is:") 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar "\\n">
                                  ) (EscapedLiteralPart token:<Lit_EscapedChar "\\t">) (${ VSub_Name _Dbg_bash_command)
                                )
                              }
                            )
                          ]
                          spids: [-1 148]
                        )
                      ]
                      spids: [-1 163]
                    )
                  ]
                  spids: [-1 97]
                )
              ]
              else_action: [(C {(_Dbg_errmsg)} {(DQ ("The program being debugged is not being run."))})]
              spids: [166 176]
            )
            (ControlFlow token:<ControlFlow_Return return> arg_word:{($ VSub_QMark "$?")})
          ]
          spids: [83]
        )
      spids: [79 82]
    )
  ]
)