@Override
 protected void build(UnitVmModel model, VmBase vm) {
   super.build(model, vm);
   vm.setAllowConsoleReconnect(model.getAllowConsoleReconnect().getEntity());
   vm.setVmType(model.getVmType().getSelectedItem());
   vm.setVdsGroupId(
       model.getSelectedCluster() != null ? model.getSelectedCluster().getId() : null);
   vm.setTimeZone(
       model.getTimeZone().getIsAvailable() && model.getTimeZone().getSelectedItem() != null
           ? model.getTimeZone().getSelectedItem().getTimeZoneKey()
           : ""); //$NON-NLS-1$
   vm.setIsoPath(
       model.getCdImage().getIsChangable()
           ? model.getCdImage().getSelectedItem()
           : ""); //$NON-NLS-1$
   vm.setDeleteProtected(model.getIsDeleteProtected().getEntity());
   vm.setOsId(model.getOSType().getSelectedItem());
   Guid largeIconId = IconCache.getInstance().getId(model.getIcon().getEntity().getIcon());
   vm.setLargeIconId(largeIconId);
   vm.setSmallIconId(
       model.getIcon().getEntity().getSmallIconId() != null
           ? model.getIcon().getEntity().getSmallIconId()
           : AsyncDataProvider.getInstance().isCustomIconId(largeIconId)
               ? null
               : AsyncDataProvider.getInstance().getSmallByLargeOsDefaultIconId(largeIconId));
   vm.setVncKeyboardLayout(model.getVncKeyboardLayout().getSelectedItem());
   vm.setSerialNumberPolicy(model.getSerialNumberPolicy().getSelectedSerialNumberPolicy());
   vm.setCustomSerialNumber(model.getSerialNumberPolicy().getCustomSerialNumber().getEntity());
   vm.setBootMenuEnabled(model.getBootMenuEnabled().getEntity());
   vm.setSpiceFileTransferEnabled(
       Boolean.TRUE.equals(model.getSpiceFileTransferEnabled().getEntity()));
   vm.setSpiceCopyPasteEnabled(Boolean.TRUE.equals(model.getSpiceCopyPasteEnabled().getEntity()));
   vm.setAutoConverge(model.getAutoConverge().getSelectedItem());
   vm.setMigrateCompressed(model.getMigrateCompressed().getSelectedItem());
   vm.setCustomProperties(model.getCustomPropertySheet().serialize());
   vm.setConsoleDisconnectAction(model.getConsoleDisconnectAction().getSelectedItem());
   if (model.getCpuSharesAmount().getIsAvailable()
       && model.getCpuSharesAmount().getEntity() != null) {
     vm.setCpuShares(model.getCpuSharesAmount().getEntity());
   }
   vm.setCustomCompatibilityVersion(model.getCustomCompatibilityVersion().getSelectedItem());
 }