(CommandList
  children: [
    (C {(echo)} {(DQ ("MicroPython change log"))})
    (ForEach
      iter_name: t
      iter_words: [
        {
          (CommandSubPart
            command_list: 
              (CommandList
                children: [
                  (Pipeline
                    children: [(C {(git)} {(tag)}) (C {(grep)} {(-v)} {(v1.0-rc1)}) (C {(sort)} {(-rV)})]
                    negated: False
                  )
                ]
              )
            left_token: <Left_CommandSub "$(">
            spids: [17 35]
          )
        }
      ]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (C {(echo)} {(SQ )})
            (C {(echo)} {(SQ <"========">)})
            (C {(echo)} {(SQ )})
            (C {(git)} {(show)} {(-s)} {(--format) (Lit_Other "=") (Lit_Other "%") (cD)} 
              {
                (CommandSubPart
                  command_list: 
                    (CommandList
                      children: [
                        (C {(git)} {(rev-list)} {($ VSub_Name "$t")} {(--max-count) (Lit_Other "=") (1)})
                      ]
                    )
                  left_token: <Left_Backtick "`">
                  spids: [71 81]
                )
              }
            )
            (C {(echo)} {(SQ )})
            (C {(git)} {(tag)} {(-l)} {($ VSub_Name "$t")} {(-n9999)})
          ]
          spids: [38 100]
        )
      spids: [16 36]
    )
  ]
)