(command.CommandList
  children: [
    (C {<Id.KW_Set set>} {<-e>})
    (C {<.>} {($ Id.VSub_DollarName '$REPO_ROOT') </bootstrap/shared/shared_functions.sh>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:REQUIRED_VARS)
          op: assign_op.Equal
          rhs: 
            {
              (sh_array_literal
                left: <Id.Op_LParen _>
                words: [
                  {<BOOTSTRAP_CHEF_DO_CONVERGE>}
                  {<BOOTSTRAP_CHEF_ENV>}
                  {<BCPC_HYPERVISOR_DOMAIN>}
                  {<FILECACHE_MOUNT_POINT>}
                  {<REPO_MOUNT_POINT>}
                  {<REPO_ROOT>}
                ]
              )
            }
          spids: [17]
        )
      ]
    )
    (C {<check_for_envvars>} 
      {
        (braced_var_sub
          token: <Id.VSub_Name REQUIRED_VARS>
          bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
        )
      }
    )
    (C {<cd>} {($ Id.VSub_DollarName '$REPO_ROOT') </bootstrap/vagrant_scripts>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:KNIFE)
          op: assign_op.Equal
          rhs: {</opt/opscode/embedded/bin/knife>}
          spids: [76]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DBracket
                  expr: 
                    (bool_expr.Unary
                      op_id: Id.BoolUnary_n
                      child: {(DQ ($ Id.VSub_DollarName '$CHEF_SERVER_DEB'))}
                    )
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:debpath)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ ($ Id.VSub_DollarName '$FILECACHE_MOUNT_POINT') </> 
                        ($ Id.VSub_DollarName '$CHEF_SERVER_DEB')
                      )
                    }
                  spids: [102]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:CHEF_SERVER_INSTALL_CMD)
                  op: assign_op.Equal
                  rhs: {(DQ <'sudo dpkg -i '> ($ Id.VSub_DollarName '$debpath'))}
                  spids: [110]
                )
              ]
            )
          ]
          spids: [86 99]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:CHEF_SERVER_INSTALL_CMD)
              op: assign_op.Equal
              rhs: 
                {
                  (DQ <'sudo dpkg -i '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) 
                    <'(find '> ($ Id.VSub_DollarName '$FILECACHE_MOUNT_POINT') <'/ -name chef-server'> <Id.Lit_Other '\\'> 
                    <'*deb -not -name '> <Id.Lit_Other '\\'> <'*downloaded | tail -1)'>
                  )
                }
              spids: [119]
            )
          ]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DBracket
                  expr: 
                    (bool_expr.Unary
                      op_id: Id.BoolUnary_n
                      child: {(DQ ($ Id.VSub_DollarName '$CHEF_CLIENT_DEB'))}
                    )
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:debpath)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ ($ Id.VSub_DollarName '$FILECACHE_MOUNT_POINT') </> 
                        ($ Id.VSub_DollarName '$CHEF_CLIENT_DEB')
                      )
                    }
                  spids: [150]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:CHEF_CLIENT_INSTALL_CMD)
                  op: assign_op.Equal
                  rhs: {(DQ <'sudo dpkg -i '> ($ Id.VSub_DollarName '$debpath'))}
                  spids: [158]
                )
              ]
            )
          ]
          spids: [134 147]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:CHEF_CLIENT_INSTALL_CMD)
              op: assign_op.Equal
              rhs: 
                {
                  (DQ <'sudo dpkg -i '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) 
                    <'(find '> ($ Id.VSub_DollarName '$FILECACHE_MOUNT_POINT') <'/ -name chef_'> <Id.Lit_Other '\\'> 
                    <'*deb -not -name '> <Id.Lit_Other '\\'> <'*downloaded | tail -1)'>
                  )
                }
              spids: [167]
            )
          ]
        )
      ]
    )
    (C {<unset>} {<debpath>})
    (C {<do_on_node>} {<vm-bootstrap>} 
      {
        (DQ ($ Id.VSub_DollarName '$CHEF_SERVER_INSTALL_CMD') <' '> <'  && sudo sh -c '> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'echo nginx['> <Id.Lit_Other '\\'> <"'non_ssl_port"> <Id.Lit_Other '\\'> 
          <"'] = 4000 > /etc/opscode/chef-server.rb"> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' '> 
          <'  && sudo chef-server-ctl reconfigure '> 
          <
'  && sudo chef-server-ctl user-create admin admin admin admin@localhost.com welcome --filename /etc/opscode/admin.pem '
          > 
          <
'  && sudo chef-server-ctl org-create bcpc BCPC --association admin --filename /etc/opscode/bcpc-validator.pem '
          > <'  && sudo chmod 0644 /etc/opscode/admin.pem /etc/opscode/bcpc-validator.pem '> <'  && '> 
          ($ Id.VSub_DollarName '$CHEF_CLIENT_INSTALL_CMD')
        )
      }
    )
    (C {<do_on_node>} {<vm-bootstrap>} 
      {
        (DQ <'mkdir -p '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) 
          <'HOME/.chef && echo -e '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) 
          <"chef_server_url 'https://bcpc-vm-bootstrap."> ($ Id.VSub_DollarName '$BCPC_HYPERVISOR_DOMAIN') <"/organizations/bcpc'"> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <Id.Lit_Other '\\'> <"nvalidation_client_name 'bcpc-validator'"> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <Id.Lit_Other '\\'> <"nvalidation_key '/etc/opscode/bcpc-validator.pem'"> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <Id.Lit_Other '\\'> <"nnode_name 'admin'"> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) 
          <Id.Lit_Other '\\'> <"nclient_key '/etc/opscode/admin.pem'"> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) 
          <Id.Lit_Other '\\'> <"nknife['editor'] = 'vim'"> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) 
          <Id.Lit_Other '\\'> <'ncookbook_path [ '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <"#{ENV['HOME']}/chef-bcpc/cookbooks"> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' ]'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' > '> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'HOME/.chef/knife.rb '> <'  && '> ($ Id.VSub_DollarName '$KNIFE') <' ssl fetch '> <'  && '> 
          ($ Id.VSub_DollarName '$KNIFE') <' bootstrap -x vagrant -P vagrant --sudo 10.0.100.3'>
        )
      }
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:vms)
          op: assign_op.Equal
          rhs: {(DQ <'vm1 vm2 vm3'>)}
          spids: [274]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {<Id.Lit_LBracket '['>} {($ Id.VSub_DollarName '$MONITORING_NODES')} {<-gt>} {<0>} 
                  {<Id.Lit_RBracket ']'>}
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:i)
                  op: assign_op.Equal
                  rhs: {<1>}
                  spids: [295]
                )
              ]
            )
            (command.WhileUntil
              keyword: <Id.KW_While while>
              cond: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {($ Id.VSub_DollarName '$i')} {<-le>} 
                      {($ Id.VSub_DollarName '$MONITORING_NODES')} {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
              body: 
                (command.DoGroup
                  children: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:mon_vm)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ <vm> 
                                (command_sub
                                  left_token: <Id.Left_Backtick '`'>
                                  command_list: 
                                    (command.CommandList
                                      children: [
                                        (C {<expr>} {<3>} {<Id.Lit_Other '+'>} 
                                          {($ Id.VSub_DollarName '$i')}
                                        )
                                      ]
                                    )
                                )
                              )
                            }
                          spids: [315]
                        )
                      ]
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:mon_vms)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ ($ Id.VSub_DollarName '$mon_vms') <' '> 
                                ($ Id.VSub_DollarName '$mon_vm')
                              )
                            }
                          spids: [332]
                        )
                      ]
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:i)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (command_sub
                                left_token: <Id.Left_Backtick '`'>
                                command_list: 
                                  (command.CommandList
                                    children: [
                                      (C {<expr>} {($ Id.VSub_DollarName '$i')} {<Id.Lit_Other '+'>} 
                                        {<1>}
                                      )
                                    ]
                                  )
                              )
                            }
                          spids: [340]
                        )
                      ]
                    )
                  ]
                )
            )
          ]
          spids: [279 292]
        )
      ]
    )
    (C {<do_on_node>} {<vm-bootstrap>} 
      {
        (DQ <'sudo /opt/opscode/embedded/bin/gem install '> 
          ($ Id.VSub_DollarName '$FILECACHE_MOUNT_POINT') <'/knife-acl-1.0.2.gem '> <'  && rsync -a '> ($ Id.VSub_DollarName '$REPO_MOUNT_POINT') <'/* '> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'HOME/chef-bcpc '> <'  && cp '> ($ Id.VSub_DollarName '$FILECACHE_MOUNT_POINT') 
          <'/cookbooks/*.tar.gz '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'HOME/chef-bcpc/cookbooks '> <'  && cd '> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'HOME/chef-bcpc/cookbooks && ls -1 *.tar.gz | xargs -I% tar xvzf %'>
        )
      }
    )
    (C {<do_on_node>} {<vm-bootstrap>} 
      {
        (DQ <'sudo apt-get update '> <'  && cd '> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'HOME/chef-bcpc '> <"  && sudo bash -c 'export FILECACHE_MOUNT_POINT="> 
          ($ Id.VSub_DollarName '$FILECACHE_MOUNT_POINT') <' '> <'  && source '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) 
          <"HOME/proxy_config.sh && bootstrap/shared/shared_build_bins.sh'">
        )
      }
    )
    (C {<do_on_node>} {<vm-bootstrap>} 
      {
        (DQ ($ Id.VSub_DollarName '$KNIFE') <' cookbook upload -a '> <'  && cd '> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'HOME/chef-bcpc/roles && '> ($ Id.VSub_DollarName '$KNIFE') <' role from file *.json '> <'  && cd '> 
          (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'HOME/chef-bcpc/environments && '> ($ Id.VSub_DollarName '$KNIFE') <' environment from file '> 
          ($ Id.VSub_DollarName '$BOOTSTRAP_CHEF_ENV') <.json>
        )
      }
    )
    (command.ShAssignment
      pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:i) op:assign_op.Equal rhs:{<1>} spids:[452])]
    )
    (command.ForEach
      iter_name: vm
      iter_words: [{($ Id.VSub_DollarName '$vms')} {($ Id.VSub_DollarName '$mon_vms')}]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (command.DBracket
                          expr: 
                            (bool_expr.Unary
                              op_id: Id.BoolUnary_z
                              child: {(DQ ($ Id.VSub_DollarName '$CHEF_CLIENT_DEB'))}
                            )
                        )
                      terminator: <Id.Op_Semi _>
                    )
                  ]
                  action: [
                    (C {<echo>} 
                      {
                        (DQ <'Installing latest chef-client found in '> ($ Id.VSub_DollarName '$vm') 
                          <':'> ($ Id.VSub_DollarName '$FILECACHE_MOUNT_POINT')
                        )
                      }
                    )
                  ]
                  spids: [473 486]
                )
              ]
            )
            (C {<do_on_node>} {($ Id.VSub_DollarName '$vm')} 
              {(DQ ($ Id.VSub_DollarName '$CHEF_CLIENT_INSTALL_CMD'))}
            )
            (C {<do_on_node>} {<vm-bootstrap>} 
              {
                (DQ ($ Id.VSub_DollarName '$KNIFE') 
                  <' bootstrap -x vagrant -P vagrant --sudo 10.0.100.1'> (${ Id.VSub_Name i)
                )
              }
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:i)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (command_sub
                        left_token: <Id.Left_Backtick '`'>
                        command_list: 
                          (command.CommandList
                            children: [
                              (C {<expr>} {($ Id.VSub_DollarName '$i')} {<Id.Lit_Other '+'>} {<1>})
                            ]
                          )
                      )
                    }
                  spids: [524]
                )
              ]
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:ENVIRONMENT_SET)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [543]
        )
      ]
    )
    (command.ForEach
      iter_name: vm
      iter_words: [{<vm-bootstrap>} {($ Id.VSub_DollarName '$vms')} {($ Id.VSub_DollarName '$mon_vms')}]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:ENVIRONMENT_SET)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ ($ Id.VSub_DollarName '$ENVIRONMENT_SET') <' '> 
                        ($ Id.VSub_DollarName '$KNIFE') <' node environment set bcpc-'> ($ Id.VSub_DollarName '$vm') <.> 
                        ($ Id.VSub_DollarName '$BCPC_HYPERVISOR_DOMAIN') <' '> ($ Id.VSub_DollarName '$BOOTSTRAP_CHEF_ENV') <' && '>
                      )
                    }
                  spids: [563]
                )
              ]
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:ENVIRONMENT_SET)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$ENVIRONMENT_SET') <' :'>)}
          spids: [579]
        )
      ]
    )
    (C {<do_on_node>} {<vm-bootstrap>} {($ Id.VSub_DollarName '$ENVIRONMENT_SET')})
    (C {<do_on_node>} {<vm-bootstrap>} 
      {
        (DQ ($ Id.VSub_DollarName '$KNIFE') <' node run_list set bcpc-vm-bootstrap.'> 
          ($ Id.VSub_DollarName '$BCPC_HYPERVISOR_DOMAIN') <" 'role[BCPC-Hardware-Virtual],role[BCPC-Bootstrap]' "> <'  && '> ($ Id.VSub_DollarName '$KNIFE') 
          <' node run_list set bcpc-vm1.'> ($ Id.VSub_DollarName '$BCPC_HYPERVISOR_DOMAIN') 
          <" 'role[BCPC-Hardware-Virtual],role[BCPC-Headnode]' "> <'  && '> ($ Id.VSub_DollarName '$KNIFE') <' node run_list set bcpc-vm2.'> 
          ($ Id.VSub_DollarName '$BCPC_HYPERVISOR_DOMAIN') <" 'role[BCPC-Hardware-Virtual],role[BCPC-Worknode]' "> <'  && '> ($ Id.VSub_DollarName '$KNIFE') 
          <' node run_list set bcpc-vm3.'> ($ Id.VSub_DollarName '$BCPC_HYPERVISOR_DOMAIN') 
          <" 'role[BCPC-Hardware-Virtual],role[BCPC-EphemeralWorknode]'">
        )
      }
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:ADMIN_SET)
          op: assign_op.Equal
          rhs: {(DQ <'true && '>)}
          spids: [625]
        )
      ]
    )
    (command.ForEach
      iter_name: vm
      iter_words: [{<vm-bootstrap>} {<vm1>} {($ Id.VSub_DollarName '$mon_vms')}]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:ADMIN_SET)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ ($ Id.VSub_DollarName '$ADMIN_SET') <' '> ($ Id.VSub_DollarName '$KNIFE') 
                        <' group add client bcpc-'> ($ Id.VSub_DollarName '$vm') <.> ($ Id.VSub_DollarName '$BCPC_HYPERVISOR_DOMAIN') <' admins && '>
                      )
                    }
                  spids: [646]
                )
              ]
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:ADMIN_SET)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$ADMIN_SET') <' :'>)}
          spids: [660]
        )
      ]
    )
    (C {<do_on_node>} {<vm-bootstrap>} {($ Id.VSub_DollarName '$ADMIN_SET')})
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DBracket
                  expr: 
                    (bool_expr.Binary
                      op_id: Id.BoolBinary_eq
                      left: {($ Id.VSub_DollarName '$BOOTSTRAP_CHEF_DO_CONVERGE')}
                      right: {<0>}
                    )
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ForEach
              iter_name: vm
              iter_words: [{($ Id.VSub_DollarName '$mon_vms')}]
              do_arg_iter: F
              body: 
                (command.DoGroup
                  children: [
                    (C {<do_on_node>} {<vm-bootstrap>} 
                      {
                        (DQ ($ Id.VSub_DollarName '$KNIFE') <' node run_list set bcpc-'> 
                          ($ Id.VSub_DollarName '$vm') <.> ($ Id.VSub_DollarName '$BCPC_HYPERVISOR_DOMAIN') <" 'role[BCPC-Monitoring]'">
                        )
                      }
                    )
                  ]
                )
            )
            (C {<echo>} 
              {(DQ <'BOOTSTRAP_CHEF_DO_CONVERGE is set to 0, skipping automatic convergence.'>)}
            )
            (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
          ]
          spids: [682 695]
        )
      ]
      else_action: [
        (C {<do_on_node>} {<vm-bootstrap>} {(DQ <'sudo chef-client'>)})
        (command.ForEach
          iter_name: vm
          iter_words: [{($ Id.VSub_DollarName '$vms')}]
          do_arg_iter: F
          body: 
            (command.DoGroup
              children: [(C {<do_on_node>} {($ Id.VSub_DollarName '$vm')} {(DQ <'sudo chef-client'>)})]
            )
        )
        (C {<do_on_node>} {<vm1>} {(DQ <'sudo chef-client'>)})
        (command.ForEach
          iter_name: vm
          iter_words: [{($ Id.VSub_DollarName '$vms')}]
          do_arg_iter: F
          body: 
            (command.DoGroup
              children: [
                (C {<do_on_node>} {($ Id.VSub_DollarName '$vm')} {(DQ <'sudo hup_openstack || true'>)})
              ]
            )
        )
        (command.ForEach
          iter_name: vm
          iter_words: [{($ Id.VSub_DollarName '$mon_vms')}]
          do_arg_iter: F
          body: 
            (command.DoGroup
              children: [
                (C {<do_on_node>} {<vm-bootstrap>} 
                  {
                    (DQ ($ Id.VSub_DollarName '$KNIFE') <' node run_list set bcpc-'> 
                      ($ Id.VSub_DollarName '$vm') <.> ($ Id.VSub_DollarName '$BCPC_HYPERVISOR_DOMAIN') <" 'role[BCPC-Monitoring]'">
                    )
                  }
                )
                (C {<do_on_node>} {($ Id.VSub_DollarName '$vm')} {(DQ <'sudo chef-client'>)})
              ]
            )
        )
        (command.ForEach
          iter_name: vm
          iter_words: [
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (command.Pipeline
                        children: [
                          (C {<echo>} {($ Id.VSub_DollarName '$mon_vms')})
                          (C {<awk>} {(SQ <'{$NF=""}1'>)})
                        ]
                        negated: F
                      )
                    ]
                  )
              )
            }
          ]
          do_arg_iter: F
          body: 
            (command.DoGroup
              children: [(C {<do_on_node>} {($ Id.VSub_DollarName '$vm')} {(DQ <'sudo chef-client'>)})]
            )
        )
      ]
    )
  ]
)