(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:cmd)
          op: assign_op.Equal
          rhs: {(DQ <'qemu-system-x86_64 -m 128M -cdrom minimal_linux_live.iso -boot d -vga std'>)}
          spids: [32]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_Number '$1'))} {<Id.Lit_Equals '='>} 
                      {(DQ <-hdd>)} {<-o>} {(DQ ($ Id.VSub_Number '$1'))} {<Id.Lit_Equals '='>} {(DQ <-h>)} {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (C {<echo>} {(DQ <'Starting QEMU with attached ISO image and hard disk.'>)})
            (C {($ Id.VSub_DollarName '$cmd')} {<-hda>} {<hdd.img>})
          ]
          spids: [38 68]
        )
      ]
      else_action: [
        (C {<echo>} {(DQ <'Starting QEMU with attached ISO image.'>)})
        (C {($ Id.VSub_DollarName '$cmd')})
      ]
    )
  ]
)