(CommandList
  children: [
    (FuncDef
      name: _Dbg_usage
      body: 
        (BraceGroup
          children: [
            (C {(printf)} 
              {
                (DQ ("Usage:\n") ("   ") (${ VSub_Name _Dbg_pname) (" [OPTIONS] <script_file>\n") ("\n") 
                  ("Runs ") ($ VSub_Name "$_Dbg_shell_name") (" <script_file> under a debugger.\n") ("\n") ("options:\n") 
                  ("    -h | --help              Print this help.\n") ("    -q | --quiet             Do not print introductory and quiet messages.\n") 
                  ("    -A | --annotate  LEVEL   Set the annotation level.\n") ("    -B | --basename          Show basename only on source file listings.\n") 
                  ("                             (Needed in regression tests)\n") ("    --highlight {dark|light} Use dark or light background ANSI terminal sequence\n") 
                  ("                             syntax highlighting\n") ("       | --no-highlight\n") 
                  ("                             Don't use ANSI terminal sequences for syntax\n") ("                             highlight\n") ("    --highlight | --no-highlight\n") 
                  (
"                             Use or don't use ANSI terminal sequences for syntax\n"
                  ) ("                             highlight\n") 
                  ("    --init-file FILE         Source script file FILE. Similar to bash's\n") ("                             corresponding option. This option can be given\n") 
                  ("                             several times with different files.\n") ("    -L | --library DIRECTORY\n") 
                  (
"                             Set the directory location of library helper file: "
                  ) ($ VSub_Name "$_Dbg_main") ("\n") 
                  ("    -c | --command STRING    Run STRING instead of a script file\n") ("    -n | --nx | --no-init    Don't run initialization files.\n") 
                  (
"    -S | --style STYLE       Run use pygments STYLE for formatting source code\n"
                  ) ("    --tty | --terminal DEV   Set to terminal in debugger output to DEV\n") 
                  ("                             DEV can also be &1 for STDOUT\n") ("    -T | --tempdir DIRECTORY\n") 
                  ("                             Use DIRECTORY to store temporary files\n") ("    -V | --version           Print the debugger version number.\n") 
                  ("    -X | --trace             Set line tracing similar to set -x\n") ("    -x | --eval-command CMDFILE\n") 
                  ("                             Execute debugger commands from CMDFILE.\n")
                )
              }
            )
            (C {(exit)} {(100)})
          ]
          spids: [62]
        )
      spids: [58 61]
    )
    (FuncDef
      name: _Dbg_show_version
      body: 
        (BraceGroup
          children: [
            (C {(printf)} 
              {
                (DQ ("There is absolutely no warranty for ") ($ VSub_Name "$_Dbg_debugger_name") 
                  (".  Type ") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) ("show warranty") 
                  (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (" for details.\n")
                )
              }
            )
            (C {(exit)} {(101)})
          ]
          spids: [125]
        )
      spids: [121 124]
    )
    (C {(typeset)} {(-xa)} {(_Dbg_orig_script_args)})
    (C {(eval)} 
      {
        (DQ ("_Dbg_orig_script_args=(") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) 
          (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) ("@") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (")")
        )
      }
    )
    (C {(typeset)} {(-xa)} {(_Dbg_script_args)})
    (C {(typeset)} {(-i)} {(Lit_VarLike "_Dbg_set_annotate=") (0)})
    (C {(typeset)} {(-i)} {(Lit_VarLike "_Dbg_set_linetrace=") (0)})
    (C {(typeset)} {(-i)} {(Lit_VarLike "_Dbg_set_basename=") (0)})
    (C {(typeset)} {(Lit_VarLike "_Dbg_set_highlight=") (SQ )})
    (Sentence child:(C {(typeset)} {(-a)} {(_Dbg_o_init_files)}) terminator:<Op_Semi ";">)
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_Dbg_o_init_files)
          op: Equal
          rhs: {(ArrayLiteralPart)}
          spids: [237]
        )
      ]
      spids: [237]
    )
    (C {(typeset)} {(-i)} {(Lit_VarLike "_Dbg_o_nx=") (0)})
    (C {(typeset)} {(-ix)} {(_Dbg_working_term_highlight)})
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (SimpleCommand
                  words: [{(${ VSub_Name _Dbg_libdir) (/lib/term-highlight.py)} {(-V)}]
                  redirects: [
                    (Redir
                      op_id: Redir_Great
                      fd: 2
                      arg_word: {(/dev/null)}
                      spids: [265]
                    )
                    (Redir
                      op_id: Redir_Great
                      fd: 1
                      arg_word: {(/dev/null)}
                      spids: [268]
                    )
                  ]
                )
              terminator: <Op_Semi ";">
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:_Dbg_working_term_highlight)
                  op: Equal
                  rhs: {(1)}
                  spids: [276]
                )
              ]
              spids: [276]
            )
          ]
          spids: [-1 273]
        )
      ]
      else_action: [
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LhsName name:_Dbg_working_term_highlight)
              op: Equal
              rhs: {(0)}
              spids: [282]
            )
          ]
          spids: [282]
        )
      ]
      spids: [279 285]
    )
    (C {(typeset)} {(-x)} {(Lit_VarLike "_Dbg_set_style=") (SQ )})
    (AndOr
      children: [
        (DBracket expr:(BoolUnary op_id:BoolUnary_z child:{($ VSub_Name "$_Dbg_tmpdir")}))
        (C {(typeset)} {(Lit_VarLike "_Dbg_tmpdir=") (/tmp)})
      ]
      op_id: Op_DAmp
    )
    (FuncDef
      name: _Dbg_check_tty
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (DParen
                  child: 
                    (ArithBinary
                      op_id: Arith_Less
                      left: (ArithWord w:{($ VSub_Pound "$#")})
                      right: (ArithWord w:{(Lit_Digits 1)})
                    )
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DAmp
            )
            (C {(typeset)} {(Lit_VarLike "tty=") ($ VSub_Number "$1")})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: 
                            (BoolBinary
                              op_id: BoolBinary_GlobNEqual
                              left: {($ VSub_Name "$tty")}
                              right: {(SQ <"&1">)}
                            )
                        )
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (Pipeline
                                  children: [
                                    (C 
                                      {
                                        (CommandSubPart
                                          command_list: 
                                            (CommandList
                                              children: [
                                                (SimpleCommand
                                                  words: [{(touch)} {($ VSub_Name "$tty")}]
                                                  redirects: [
                                                    (Redir
                                                      op_id: Redir_Great
                                                      fd: -1
                                                      arg_word: {(/dev/null)}
                                                      spids: [374]
                                                    )
                                                    (Redir
                                                      op_id: Redir_Great
                                                      fd: 2
                                                      arg_word: {(/dev/null)}
                                                      spids: [377]
                                                    )
                                                  ]
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub "$(">
                                          spids: [369 379]
                                        )
                                      }
                                    )
                                  ]
                                  negated: True
                                )
                              terminator: <Op_Semi ";">
                            )
                          ]
                          action: [
                            (C {(_Dbg_errmsg)} 
                              {(DQ ("Can't access ") ($ VSub_Name "$tty") (" for writing."))}
                            )
                            (ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(1)}
                            )
                          ]
                          spids: [-1 382]
                        )
                      ]
                      spids: [-1 399]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: 
                                    (LogicalNot
                                      child: (BoolUnary op_id:BoolUnary_w child:{($ VSub_Name "$tty")})
                                    )
                                )
                              terminator: <Op_Semi ";">
                            )
                          ]
                          action: [
                            (C {(_Dbg_errmsg)} 
                              {(DQ ("tty ") ($ VSub_Name "$tty") (" needs to be writable"))}
                            )
                            (ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(1)}
                            )
                          ]
                          spids: [-1 416]
                        )
                      ]
                      spids: [-1 433]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:_Dbg_tty)
                          op: Equal
                          rhs: {($ VSub_Name "$tty")}
                          spids: [436]
                        )
                      ]
                      spids: [436]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:_Dbg_prompt_output)
                          op: Equal
                          rhs: {($ VSub_Name "$_Dbg_tty")}
                          spids: [440]
                        )
                      ]
                      spids: [440]
                    )
                  ]
                  spids: [-1 362]
                )
              ]
              spids: [-1 444]
            )
            (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
          ]
          spids: [319]
        )
      spids: [315 318]
    )
    (FuncDef
      name: _Dbg_parse_options
      body: 
        (BraceGroup
          children: [
            (C {(.)} {(${ VSub_Name _Dbg_libdir) (/getopts_long.sh)})
            (C {(typeset)} {(-i)} {(Lit_VarLike "_Dbg_o_quiet=") (0)})
            (C {(typeset)} {(-i)} {(Lit_VarLike "_Dbg_o_version=") (0)})
            (While
              cond: [
                (C {(getopts_long)} 
                  {(A) (Lit_Other ":") (Bc) (Lit_Other ":") (x) (Lit_Other ":") (hL) (Lit_Other ":") (nqTt) 
                    (Lit_Other ":") (VX)
                  } {(opt)} {(annotate)} {(required_argument)} {(basename)} {(no_argument)} {(command)} {(required_argument)} 
                  {(debugger)} {(no_argument)} {(eval-command)} {(required_argument)} {(help)} {(no_argument)} {(highlight)} 
                  {(required_argument)} {(init-file)} {(required_argument)} {(library)} {(required_argument)} {(no-highlight)} {(no_argument)} 
                  {(no-init)} {(no_argument)} {(nx)} {(no_argument)} {(quiet)} {(no_argument)} {(tempdir)} {(required_argument)} {(tty)} 
                  {(required_argument)} {(terminal)} {(required_argument)} {(version)} {(no_argument)} {(SQ )} {(DQ ($ VSub_At "$@"))}
                )
              ]
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {(DQ ($ VSub_Name "$opt"))}
                      arms: [
                        (case_arm
                          pat_list: [{(A)} {(annotate)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_o_annotate)
                                  op: Equal
                                  rhs: {($ VSub_Name "$OPTLARG")}
                                  spids: [639]
                                )
                              ]
                              spids: [639]
                            )
                          ]
                          spids: [630 636 641 -1]
                        )
                        (case_arm
                          pat_list: [{(B)} {(basename)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_set_basename)
                                  op: Equal
                                  rhs: {(1)}
                                  spids: [653]
                                )
                              ]
                              spids: [653]
                            )
                          ]
                          spids: [644 650 656 -1]
                        )
                        (case_arm
                          pat_list: [{(c)} {(command)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_EXECUTION_STRING)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name "$OPTLARG"))}
                                  spids: [668]
                                )
                              ]
                              spids: [668]
                            )
                          ]
                          spids: [659 665 673 -1]
                        )
                        (case_arm
                          pat_list: [{(debugger)}]
                          spids: [676 678 685 -1]
                        )
                        (case_arm
                          pat_list: [{(h)} {(help)}]
                          action: [(C {(_Dbg_usage)})]
                          spids: [688 694 699 -1]
                        )
                        (case_arm
                          pat_list: [{(highlight)}]
                          action: [
                            (Case
                              to_match: {(DQ ($ VSub_Name "$OPTLARG"))}
                              arms: [
                                (case_arm
                                  pat_list: [{(light)} {(dark)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:_Dbg_set_highlight)
                                          op: Equal
                                          rhs: {($ VSub_Name "$OPTLARG")}
                                          spids: [725]
                                        )
                                      ]
                                      spids: [725]
                                    )
                                  ]
                                  spids: [716 722 729 -1]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other "*")}]
                                  action: [
                                    (SimpleCommand
                                      words: [
                                        {(print)}
                                        {
                                          (DQ ("Expecting 'dark' or 'light', got ") 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar "\\\"">
                                            ) (${ VSub_Name OPTLARG) (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">)
                                          )
                                        }
                                      ]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_GreatAnd
                                          fd: -1
                                          arg_word: {(2)}
                                          spids: [748]
                                        )
                                      ]
                                    )
                                    (C {(exit)} {(2)})
                                  ]
                                  spids: [732 734 -1 757]
                                )
                              ]
                              spids: [707 713 757]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (Pipeline
                                          children: [
                                            (Subshell
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(pygmentize)} {(--version)})
                                                    (C {(pygmentize)} {(-V)})
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_Great
                                                  fd: 2
                                                  arg_word: {(/dev/null)}
                                                  spids: [779]
                                                )
                                                (Redir
                                                  op_id: Redir_Great
                                                  fd: 1
                                                  arg_word: {(/dev/null)}
                                                  spids: [782]
                                                )
                                              ]
                                              spids: [765 777]
                                            )
                                          ]
                                          negated: True
                                        )
                                      terminator: <Op_Semi ";">
                                    )
                                  ]
                                  action: [
                                    (SimpleCommand
                                      words: [
                                        {(print)}
                                        {(DQ ("Can't run pygmentize. --highight forced off"))}
                                      ]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_GreatAnd
                                          fd: -1
                                          arg_word: {(2)}
                                          spids: [796]
                                        )
                                      ]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:_Dbg_set_highlight)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [800]
                                        )
                                      ]
                                      spids: [800]
                                    )
                                  ]
                                  spids: [-1 787]
                                )
                              ]
                              spids: [-1 806]
                            )
                          ]
                          spids: [702 704 809 -1]
                        )
                        (case_arm
                          pat_list: [{(no-highlight)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_set_highlight)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [817]
                                )
                              ]
                              spids: [817]
                            )
                          ]
                          spids: [812 814 821 -1]
                        )
                        (case_arm
                          pat_list: [{(init-file)}]
                          action: [
                            (C {(set)} {(-x)})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_o_init_files)
                                  op: PlusEqual
                                  rhs: {(DQ ($ VSub_Name "$OPTLARG"))}
                                  spids: [834]
                                )
                              ]
                              spids: [834]
                            )
                            (C {(set)} {(Lit_Other "+") (x)})
                          ]
                          spids: [824 826 846 -1]
                        )
                        (case_arm
                          pat_list: [{(L)} {(library)}]
                          spids: [849 855 857 -1]
                        )
                        (case_arm
                          pat_list: [{(V)} {(version)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_o_version)
                                  op: Equal
                                  rhs: {(1)}
                                  spids: [869]
                                )
                              ]
                              spids: [869]
                            )
                          ]
                          spids: [860 866 872 -1]
                        )
                        (case_arm
                          pat_list: [{(n)} {(nx)} {(no-init)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_o_nx)
                                  op: Equal
                                  rhs: {(1)}
                                  spids: [888]
                                )
                              ]
                              spids: [888]
                            )
                          ]
                          spids: [875 885 891 -1]
                        )
                        (case_arm
                          pat_list: [{(q)} {(quiet)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_o_quiet)
                                  op: Equal
                                  rhs: {(1)}
                                  spids: [903]
                                )
                              ]
                              spids: [903]
                            )
                          ]
                          spids: [894 900 906 -1]
                        )
                        (case_arm
                          pat_list: [{(tempdir)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_tmpdir)
                                  op: Equal
                                  rhs: {($ VSub_Name "$OPTLARG")}
                                  spids: [913]
                                )
                              ]
                              spids: [913]
                            )
                          ]
                          spids: [909 910 916 -1]
                        )
                        (case_arm
                          pat_list: [{(terminal)} {(tty)}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(_Dbg_check_tty)} {($ VSub_Name "$OPTLARG")})
                                      terminator: <Op_Semi ";">
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:_Dbg_tty)
                                          op: Equal
                                          rhs: {($ VSub_Name "$OPTLARG")}
                                          spids: [939]
                                        )
                                      ]
                                      spids: [939]
                                    )
                                  ]
                                  spids: [-1 936]
                                )
                              ]
                              else_action: [(C {(_Dbg_errmsg)} {(SQ <"--tty option ignored">)})]
                              spids: [943 953]
                            )
                          ]
                          spids: [919 925 956 -1]
                        )
                        (case_arm
                          pat_list: [{(x)} {(eval-command)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:DBG_INPUT)
                                  op: Equal
                                  rhs: {($ VSub_Name "$OPTLARG")}
                                  spids: [968]
                                )
                              ]
                              spids: [968]
                            )
                          ]
                          spids: [959 965 971 -1]
                        )
                        (case_arm
                          pat_list: [{(X)} {(trace)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_set_linetrace)
                                  op: Equal
                                  rhs: {(1)}
                                  spids: [983]
                                )
                              ]
                              spids: [983]
                            )
                          ]
                          spids: [974 980 986 -1]
                        )
                        (case_arm
                          pat_list: [{(SQ <"?">)}]
                          action: [
                            (SimpleCommand
                              words: [{(echo)} {(SQ <"Use -h or --help to see options.">)}]
                              redirects: [
                                (Redir
                                  op_id: Redir_GreatAnd
                                  fd: -1
                                  arg_word: {(2)}
                                  spids: [1001]
                                )
                              ]
                            )
                            (C {(exit)} {(2)})
                          ]
                          spids: [990 993 1013 -1]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other "*")}]
                          action: [
                            (SimpleCommand
                              words: [
                                {(echo)}
                                {
                                  (DQ ("Unknown option ") ($ VSub_Name "$opt") 
                                    (". Use -h or --help to see options.")
                                  )
                                }
                              ]
                              redirects: [
                                (Redir
                                  op_id: Redir_GreatAnd
                                  fd: -1
                                  arg_word: {(2)}
                                  spids: [1029]
                                )
                              ]
                            )
                            (C {(exit)} {(2)})
                          ]
                          spids: [1016 1018 1037 -1]
                        )
                      ]
                      spids: [621 627 1040]
                    )
                  ]
                  spids: [618 1043]
                )
            )
            (C {(shift)} 
              {
                (DQ 
                  (ArithSubPart
                    anode: 
                      (ArithBinary
                        op_id: Arith_Minus
                        left: (ArithWord w:{($ VSub_Name "$OPTLIND")})
                        right: (ArithWord w:{(Lit_Digits 1)})
                      )
                    spids: [1049 1056]
                  )
                )
              }
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (DParen child:(ArithVarRef name:_Dbg_o_version))
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [(C {(_Dbg_do_show_version)}) (C {(exit)} {(0)})]
                  spids: [-1 1072]
                )
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (DParen
                              child: 
                                (ArithUnary
                                  op_id: Arith_Bang
                                  child: (ArithVarRef name:_Dbg_o_quiet)
                                )
                            )
                            (AndOr
                              children: [
                                (DBracket
                                  expr: 
                                    (BoolUnary
                                      op_id: BoolUnary_n
                                      child: {($ VSub_Name "$_Dbg_shell_name")}
                                    )
                                )
                                (DBracket
                                  expr: 
                                    (BoolUnary
                                      op_id: BoolUnary_n
                                      child: {($ VSub_Name "$_Dbg_release")}
                                    )
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (C {(echo)} 
                      {
                        (DQ ($ VSub_Name "$_Dbg_shell_name") (" debugger, ") 
                          ($ VSub_Name "$_Dbg_debugger_name") (", release ") ($ VSub_Name "$_Dbg_release")
                        )
                      }
                    )
                    (C {(printf)} 
                      {
                        (SQ <"\n"> 
                          <"Copyright 2002, 2003, 2004, 2006-2012, 2014, 2016 Rocky Bernstein\n"> <"This is free software, covered by the GNU General Public License, and you are\n"> 
                          <
"welcome to change it and/or distribute copies of it under certain conditions.\n"
                          > <"\n">
                        )
                      }
                    )
                  ]
                  spids: [1083 1118]
                )
              ]
              spids: [-1 1143]
            )
            (AndOr
              children: [(DParen child:(ArithVarRef name:_Dbg_o_version)) (C {(_Dbg_show_version)})]
              op_id: Op_DAmp
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (DBracket
                          expr: (BoolUnary op_id:BoolUnary_n child:{($ VSub_Name "$_Dbg_o_annotate")})
                        )
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (DBracket
                                  expr: 
                                    (BoolBinary
                                      op_id: BoolBinary_GlobDEqual
                                      left: {(${ VSub_Name _Dbg_o_annotate)}
                                      right: {(Lit_Other "[") (0-9) (Lit_Other "]") (Lit_Other "*")}
                                    )
                                )
                              terminator: <Op_Semi ";">
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:_Dbg_set_annotate)
                                  op: Equal
                                  rhs: {($ VSub_Name "$_Dbg_o_annotate")}
                                  spids: [1196]
                                )
                              ]
                              spids: [1196]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (DParen
                                          child: 
                                            (ArithBinary
                                              op_id: Arith_DPipe
                                              left: 
                                                (ArithBinary
                                                  op_id: Arith_Great
                                                  left: (ArithVarRef name:_Dbg_set_annotate)
                                                  right: (ArithWord w:{(Lit_Digits 3)})
                                                )
                                              right: 
                                                (ArithBinary
                                                  op_id: Arith_Less
                                                  left: (ArithVarRef name:_Dbg_set_annotate)
                                                  right: (ArithWord w:{(Lit_Digits 0)})
                                                )
                                            )
                                        )
                                      terminator: <Op_Semi ";">
                                    )
                                  ]
                                  action: [
                                    (SimpleCommand
                                      words: [
                                        {(echo)}
                                        {
                                          (DQ 
                                            (
"Annotation level must be less between 0 and 3. Got: "
                                            ) ($ VSub_Name "$_Dbg_set_annotate") (.)
                                          )
                                        }
                                      ]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_GreatAnd
                                          fd: -1
                                          arg_word: {(2)}
                                          spids: [1232]
                                        )
                                      ]
                                    )
                                    (SimpleCommand
                                      words: [{(echo)} {(DQ ("Setting Annotation level to 0."))}]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_GreatAnd
                                          fd: -1
                                          arg_word: {(2)}
                                          spids: [1242]
                                        )
                                      ]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:_Dbg_set_annotate)
                                          op: Equal
                                          rhs: {(0)}
                                          spids: [1246]
                                        )
                                      ]
                                      spids: [1246]
                                    )
                                  ]
                                  spids: [-1 1221]
                                )
                              ]
                              spids: [-1 1250]
                            )
                          ]
                          spids: [-1 1193]
                        )
                      ]
                      else_action: [
                        (SimpleCommand
                          words: [
                            {(echo)}
                            {
                              (DQ ("Annotate option should be an integer, got ") 
                                (${ VSub_Name _Dbg_o_annotate) (.)
                              )
                            }
                          ]
                          redirects: [(Redir op_id:Redir_GreatAnd fd:-1 arg_word:{(2)} spids:[1266])]
                        )
                        (SimpleCommand
                          words: [{(echo)} {(DQ ("Setting annotation level to 0."))}]
                          redirects: [(Redir op_id:Redir_GreatAnd fd:-1 arg_word:{(2)} spids:[1276])]
                        )
                      ]
                      spids: [1253 1280]
                    )
                  ]
                  spids: [-1 1171]
                )
              ]
              spids: [-1 1283]
            )
            (C {(unset)} {(_Dbg_o_annotate)} {(_Dbg_o_version)} {(_Dbg_o_quiet)})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:_Dbg_script_args)
                  op: Equal
                  rhs: {(ArrayLiteralPart words:[{(DQ ($ VSub_At "$@"))}])}
                  spids: [1295]
                )
              ]
              spids: [1295]
            )
          ]
          spids: [458]
        )
      spids: [454 457]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DBracket
                  expr: (BoolUnary op_id:BoolUnary_n child:{(DQ ($ VSub_Name "$_Dbg_dbg_opts_test"))})
                )
              terminator: <Op_Semi ";">
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:OPTLIND) op:Equal rhs:{(1)} spids:[1326])]
              spids: [1326]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:_Dbg_libdir)
                  op: Equal
                  rhs: {(SQ <.>)}
                  spids: [1330]
                )
              ]
              spids: [1330]
            )
            (AndOr
              children: [
                (DBracket
                  expr: (BoolUnary op_id:BoolUnary_n child:{($ VSub_Name "$_Dbg_input")})
                )
                (C {(typeset)} {(-p)} {(_Dbg_input)})
              ]
              op_id: Op_DAmp
            )
            (C {(_Dbg_parse_options)} {(DQ ($ VSub_At "$@"))})
            (C {(typeset)} {(-p)} {(_Dbg_set_highlight)})
            (C {(typeset)} {(-p)} {(_Dbg_set_annotate)})
            (C {(typeset)} {(-p)} {(_Dbg_set_linetrace)})
            (C {(typeset)} {(-p)} {(_Dbg_set_basename)})
          ]
          spids: [-1 1323]
        )
      ]
      spids: [-1 1387]
    )
  ]
)