(command.ForEach
  iter_name: i
  iter_words: [{(DQ ($ Id.VSub_At '$@'))}]
  do_arg_iter: F
  body: 
    (command.DoGroup
      children: [
        (command.Case
          to_match: {($ Id.VSub_DollarName '$i')}
          arms: [
            (case_arm
              pat_list: [{<-L> <Id.Lit_Star '*'>}]
              action: [
                (C {<printf>} {(SQ <'"%s"\\n'>)} 
                  {
                    (DQ 
                      (braced_var_sub
                        token: <Id.VSub_Name i>
                        suffix_op: (suffix_op.Unary tok:<Id.VOp1_Pound '#'> arg_word:{<-L>})
                      )
                    )
                  }
                )
              ]
              spids: [35 37 53 -1]
            )
          ]
        )
      ]
    )
)