(CommandList
  children: [
    (SimpleCommand
      words: [{(cat)}]
      redirects: [
        (HereDoc
          op_id: Redir_DLess
          fd: -1
          body: 
            {("Git Howto Index\n") ("===============\n") ("\n") 
              ("Here is a collection of mailing list postings made by various\n") ("people describing how they use Git in their workflow.\n") ("\n")
            }
          do_expansion: False
          here_end: EOF
          was_filled: True
          spids: [6]
        )
      ]
    )
    (ForEach
      iter_name: txt
      do_arg_iter: True
      body: 
        (DoGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:title)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(expr)} {(DQ ($ VSub_Name "$txt"))} {(Lit_Other ":")} 
                                {(SQ <".*/\\(.*\\)\\.txt$">)}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub "$(">
                        spids: [19 31]
                      )
                    }
                  spids: [18]
                )
              ]
              spids: [18]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:from)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(sed)} {(-ne)} 
                                {
                                  (SQ <"\n"> <"\t/^$/q\n"> <"\t/^From:[ \t]/{\n"> <"\t\ts///\n"> 
                                    <"\t\ts/^[ \t]*//\n"> <"\t\ts/[ \t]*$//\n"> <"\t\ts/^/by /\n"> <"\t\tp\n"> <"\t}\n"> <"\t">
                                  )
                                } {(DQ ($ VSub_Name "$txt"))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub "$(">
                        spids: [35 56]
                      )
                    }
                  spids: [34]
                )
              ]
              spids: [34]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:abstract)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(sed)} {(-ne)} 
                                {
                                  (SQ <"\n"> <"\t/^Abstract:[ \t]/{\n"> <"\t\ts/^[^ \t]*//\n"> 
                                    <"\t\tx\n"> <"\t\ts/.*//\n"> <"\t\tx\n"> <"\t\t: again\n"> <"\t\t/^[ \t]/{\n"> <"\t\t\ts/^[ \t]*//\n"> <"\t\t\tH\n"> 
                                    <"\t\t\tn\n"> <"\t\t\tb again\n"> <"\t\t}\n"> <"\t\tx\n"> <"\t\tp\n"> <"\t\tq\n"> <"\t}">
                                  )
                                } {(DQ ($ VSub_Name "$txt"))}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub "$(">
                        spids: [61 89]
                      )
                    }
                  spids: [60]
                )
              ]
              spids: [60]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (SimpleCommand
                      words: [{(grep)} {(SQ <"Content-type: text/asciidoc">)} {($ VSub_Name "$txt")}]
                      redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(/dev/null)} spids:[101])]
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:file)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (C {(expr)} {(DQ ($ VSub_Name "$txt"))} {(Lit_Other ":")} 
                                        {(SQ <"\\(.*\\)\\.txt$">)}
                                      )
                                    ]
                                  )
                                left_token: <Left_CommandSub "$(">
                                spids: [111 123]
                              ) (.html)
                            }
                          spids: [110]
                        )
                      ]
                      spids: [110]
                    )
                  ]
                  spids: [-1 107]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:file)
                      op: Equal
                      rhs: {(DQ ($ VSub_Name "$txt"))}
                      spids: [130]
                    )
                  ]
                  spids: [130]
                )
              ]
              spids: [127 136]
            )
            (C {(echo)} 
              {
                (DQ ("* link:") ($ VSub_Name "$file") ("[") ($ VSub_Name "$title") ("] ") 
                  ($ VSub_Name "$from") ("\n") ($ VSub_Name "$abstract") ("\n") ("\n")
                )
              }
            )
          ]
          spids: [15 156]
        )
      spids: [-1 -1]
    )
  ]
)