(ForEach
  iter_name: i
  iter_words: [{(DQ ($ VSub_At '$@'))}]
  do_arg_iter: F
  body: 
    (DoGroup
      children: [
        (Case
          to_match: {($ VSub_Name '$i')}
          arms: [
            (case_arm
              pat_list: [{(-L) (Lit_Other '*')}]
              action: [
                (C {(printf)} {(SQ <'"%s"\\n'>)} 
                  {
                    (DQ 
                      (BracedVarSub
                        token: <VSub_Name i>
                        suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{(-L)})
                        spids: [46 50]
                      )
                    )
                  }
                )
              ]
              spids: [35 37 53 16777215]
            )
          ]
          spids: [28 32 56]
        )
      ]
      spids: [21 58]
    )
  spids: [15 19]
)