(command.CommandList children: [ (C {<echo>} {(DQ <'MicroPython change log'>)}) (command.ForEach iter_name: t iter_words: [ { (command_sub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [(C {<git>} {<tag>}) (C {<grep>} {<-v>} {<v1.0-rc1>}) (C {<sort>} {<-rV>})] negated: F ) ) } ] do_arg_iter: F body: (command.DoGroup children: [ (C {<echo>} {(SQ )}) (C {<echo>} {(SQ <'========'>)}) (C {<echo>} {(SQ )}) (C {<git>} {<show>} {<-s>} {<--format> <Id.Lit_Equals '='> <Id.Lit_Other '%'> <cD>} { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<git>} {<rev-list>} {($ Id.VSub_DollarName '$t')} {<--max-count> <Id.Lit_Equals '='> <1>} ) ) } ) (C {<echo>} {(SQ )}) (C {<git>} {<tag>} {<-l>} {($ Id.VSub_DollarName '$t')} {<-n9999>}) ] ) ) ] )