(command.CommandList
  children: [
    (C {(source)} {(./virtualbox_env.sh)})
    (command.ForEach
      iter_name: i
      iter_words: [
        {
          (command_sub
            left_token: (Token id:Id.Left_Backtick val:'`' span_id:18)
            command_list: (command.CommandList children:[(C {(seq)} {(1)} {(3)})])
          )
        }
      ]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (C {($ Id.VSub_DollarName '$VBM')} {(controlvm)} {(bcpc-vm) ($ Id.VSub_DollarName '$i')} 
              {(poweroff)}
            )
            (C {($ Id.VSub_DollarName '$VBM')} {(snapshot)} {(bcpc-vm) ($ Id.VSub_DollarName '$i')} 
              {(restore)} {(initial-install)}
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {(vagrant)} {(ssh)} {(-c)} 
                  {
                    (DQ ('cd chef-bcpc && knife client delete -y bcpc-vm') ($ Id.VSub_DollarName '$i') 
                      (.local.lan)
                    )
                  }
                )
                (C {(true)})
              ]
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {(vagrant)} {(ssh)} {(-c)} 
                  {
                    (DQ ('cd chef-bcpc && knife node delete -y bcpc-vm') ($ Id.VSub_DollarName '$i') 
                      (.local.lan)
                    )
                  }
                )
                (C {(true)})
              ]
            )
            (C {($ Id.VSub_DollarName '$VBM')} {(startvm)} {(bcpc-vm) ($ Id.VSub_DollarName '$i')})
          ]
        )
    )
  ]
)