(CommandList
  children: [
    (C {(echo)} {(SQ <'--- envini requires arguments'>)})
    (Sentence child:(C {(envini)} {(whatever)}) terminator:<Op_Semi ';'>)
    (C {(echo)} {($ VSub_QMark '$?')})
    (C {(echo)} {(SQ <'--- envini complains if it cannot read file'>)})
    (C {(ln)} {(-s)} {(envi)} {(envi)})
    (Sentence child:(C {(envini)} {(envi)} {(echo)} {(yes)}) terminator:<Op_Semi ';'>)
    (C {(echo)} {($ VSub_QMark '$?')})
    (C {(rm)} {(envi)})
    (C {(echo)} {(SQ <'--- envini adds variables'>)})
    (SimpleCommand
      words: [{(cat)}]
      redirects: [
        (Redir op_id:Redir_Great fd:16777215 arg_word:{(envi)} spids:[56])
        (HereDoc
          op_id: Redir_DLess
          fd: 16777215
          body: 
            {
              (DQ ('; comment\n') ('broken\n') (' Message = This is a test.\n') ('[sect]\n') 
                ('Message=This is only a test.    \n')
              )
            }
          do_expansion: True
          here_end: EOF
          was_filled: T
          spids: [60]
        )
      ]
    )
    (Sentence
      child: (C {(envini)} {(envi)} {(sh)} {(-c)} {(SQ <'echo $Message; echo $sect_Message'>)})
      terminator: <Op_Semi ';'>
    )
    (C {(echo)} {($ VSub_QMark '$?')})
    (C {(echo)} {(SQ <'--- envini adds prefix'>)})
    (Sentence
      child: 
        (C {(envini)} {(-p)} {(prefix_)} {(envi)} {(sh)} {(-c)} 
          {(SQ <'echo $Message; echo $prefix_Message'>)}
        )
      terminator: <Op_Semi ';'>
    )
    (C {(echo)} {($ VSub_QMark '$?')})
  ]
)