(command.CommandList
  children: [
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {<Id.Lit_LBracket '['>} 
          {(DQ (braced_var_sub token:<Id.VSub_At '@'> prefix_op:(Id.VSub_Pound)))} {<-gt>} {<1>} {<Id.Lit_RBracket ']'>}
        )
        (command.Subshell
          child: 
            (command.CommandList
              children: [
                (command.Sentence
                  child: (C {<echo>} {(DQ <'Usage: '> (${ Id.VSub_Number 0) <' <node> <join_args>'>)})
                  terminator: <Id.Op_Semi _>
                )
                (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>})
              ]
            )
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:name)
          op: assign_op.Equal
          rhs: {(DQ <node-> (${ Id.VSub_Number 1))}
          spids: [38]
        )
      ]
    )
    (C {<shift>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:disk)
          op: assign_op.Equal
          rhs: {(DQ <kube-> (${ Id.VSub_Name name) <-disk.img>)}
          spids: [48]
        )
      ]
    )
    (C {<set>} {<-x>})
    (C {<rm>} {<-f>} {(DQ (${ Id.VSub_Name disk))})
    (C {<'../../bin/moby'>} {<run>} {<hyperkit>} {<-cpus>} {<2>} {<-mem>} {<4096>} {<-disk-size>} {<4096>} 
      {<-disk>} {(DQ (${ Id.VSub_Name disk))} {<-data>} {(DQ (${ Id.VSub_Star '*'))} {<kube-node>}
    )
  ]
)