(CommandList
  children: [
    (C {(_Dbg_help_add_sub)} {(set)} {(history)} 
      {
        (SQ <'**set history save** [**on**|**off**]\n'> <'\n'> <'**set history size** *num*\n'> <'\n'> 
          <'**set history filename** *path*\n'> <'\n'> <'In the first form, set whether to save history.\n'> <'\n'> 
          <'In the second form, how many history lines to save is indicated.\n'> <'\n'> <'In the third form, the place to store the history file is given.\n'>
        )
      }
    )
    (C {(_Dbg_next_complete) (Lit_Other '[') (set)} 
      {(history) (Lit_Other ']') (Lit_Other '=') (SQ <_Dbg_complete_history>)}
    )
    (FuncDef
      name: _Dbg_complete_history
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:COMPREPLY)
                  op: Equal
                  rhs: {(ArrayLiteralPart words:[{(save)} {(size)}])}
                  spids: [99]
                )
              ]
              spids: [99]
            )
          ]
          spids: [96]
        )
      spids: [92 95]
    )
    (FuncDef
      name: _Dbg_do_set_history
      body: 
        (BraceGroup
          children: [
            (Case
              to_match: {(DQ ($ VSub_Number '$1'))}
              arms: [
                (case_arm
                  pat_list: [{(sa)} {(sav)} {(save)}]
                  action: [
                    (Assignment
                      keyword: Assign_Typeset
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:onoff)
                          op: Equal
                          rhs: 
                            {
                              (BracedVarSub
                                token: <VSub_Number 2>
                                suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ <on>)})
                                spids: [141 147]
                              )
                            }
                          spids: [140]
                        )
                      ]
                      spids: [138]
                    )
                    (Case
                      to_match: {($ VSub_Name '$onoff')}
                      arms: [
                        (case_arm
                          pat_list: [{(on)} {(1)}]
                          action: [(C {(_Dbg_write_journal_eval)} {(DQ ('_Dbg_set_history=1'))})]
                          spids: [157 163 173 16777215]
                        )
                        (case_arm
                          pat_list: [{(off)} {(0)}]
                          action: [(C {(_Dbg_write_journal_eval)} {(DQ ('_Dbg_set_history=0'))})]
                          spids: [176 182 192 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (C {(_Dbg_errmsg)} 
                              {
                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (on) 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\"'>
                                  ) (' or ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (off) 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\"'>
                                  ) (' expected.')
                                )
                              }
                            )
                            (ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(1)}
                            )
                          ]
                          spids: [195 197 219 16777215]
                        )
                      ]
                      spids: [150 154 222]
                    )
                  ]
                  spids: [125 135 225 16777215]
                )
                (case_arm
                  pat_list: [{(si)} {(siz)} {(size)}]
                  action: [
                    (C {(eval)} {(DQ ($ VSub_Name '$_seteglob'))})
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: (BoolUnary op_id:BoolUnary_z child:{($ VSub_Number '$2')})
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(_Dbg_errmsg)} {(DQ ('Argument required (integer to set it to.).'))})
                          ]
                          spids: [16777215 260]
                        )
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobNEqual
                                      left: {($ VSub_Number '$2')}
                                      right: {($ VSub_Name '$int_pat')}
                                    )
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(_Dbg_errmsg)} 
                              {(DQ ('Integer argument expected; got: ') ($ VSub_Number '$2'))}
                            )
                            (C {(eval)} {(DQ ($ VSub_Name '$_resteglob'))})
                            (ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(1)}
                            )
                          ]
                          spids: [270 284]
                        )
                      ]
                      spids: [16777215 307]
                    )
                    (C {(eval)} {(DQ ($ VSub_Name '$_resteglob'))})
                    (C {(_Dbg_write_journal_eval)} {(DQ ('_Dbg_history_length=') ($ VSub_Number '$2'))})
                  ]
                  spids: [228 238 325 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (C {(_Dbg_errmsg)} 
                      {
                        (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (save) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (', or ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (size) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' expected.')
                        )
                      }
                    )
                    (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
                  ]
                  spids: [328 329 351 16777215]
                )
              ]
              spids: [116 122 354]
            )
            (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
          ]
          spids: [113]
        )
      spids: [109 112]
    )
  ]
)