(CommandList
  children: [
    (AndOr
      children: [
        (C {(Lit_Other "[")} {(DQ (BracedVarSub token:<VSub_At "@"> prefix_op:VSub_Pound spids:[69]))} 
          {(-gt)} {(1)} {(Lit_Other "]")}
        )
        (Subshell
          child: 
            (CommandList
              children: [
                (Sentence
                  child: (C {(echo)} {(DQ ("Usage: ") (${ VSub_Number 0) (" <node> <join_args>"))})
                  terminator: <Op_Semi ";">
                )
                (C {(exit)} {(1)})
              ]
            )
          spids: [20 36]
        )
      ]
      op_id: Op_DPipe
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:name)
          op: Equal
          rhs: {(DQ (node-) (${ VSub_Number 1))}
          spids: [38]
        )
      ]
      spids: [38]
    )
    (C {(shift)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:disk)
          op: Equal
          rhs: {(DQ (kube-) (${ VSub_Name name) (-disk.img))}
          spids: [48]
        )
      ]
      spids: [48]
    )
    (C {(set)} {(-x)})
    (C {(rm)} {(-f)} {(DQ (${ VSub_Name disk))})
    (C {(../../bin/moby)} {(run)} {(hyperkit)} {(-cpus)} {(2)} {(-mem)} {(4096)} {(-disk-size)} {(4096)} 
      {(-disk)} {(DQ (${ VSub_Name disk))} {(-data)} {(DQ (${ VSub_Star "*"))} {(kube-node)}
    )
  ]
)