From 2a0f5b469fad5e8220f46ec9fb3ce23cc94f30d8 Mon Sep 17 00:00:00 2001
From: "harald.martini@student.tugraz.at" <harald.martini@student.tugraz.at>
Date: Mon, 9 Aug 2021 15:40:42 +0200
Subject: [PATCH] Implemented new HVAC Heatpump parameters, updated Testfiles.

---
 .../XMLBusAuxiliariesWriter.cs                |  35 +-
 .../MultistageAuxiliariesViewModel.cs         | 420 +++++-------------
 .../ManufacturingStageAuxiliariesView.xaml    |  87 +---
 .../ViewModelTests/LoadAndSaveVehicleData.cs  |  82 ++--
 .../InputData/DeclarationInputData.cs         |  12 +-
 .../Resources/XMLNames.Designer.cs            |  24 +-
 .../VectoCommon/Resources/XMLNames.resx       |  16 +-
 .../InputData/FileIO/JSON/JSONSubComponent.cs |  10 +-
 ...MLDeclarationBusAuxiliariesDataProvider.cs |  85 ++--
 .../XMLDeclarationMultistageInputReader.cs    |  37 +-
 ...larationDataAdapterCompletedBusSpecific.cs |  70 +--
 .../Models/Simulation/Impl/JobContainer.cs    |   7 -
 .../XMLMultistageBusReport.cs                 |  44 +-
 .../Multistage/MultistageVehicleTest.cs       |  22 +-
 ...cle-stage_input_full-sample_final_noNG.xml |  12 +-
 ...e-stage_input_full-sample_interim_noNG.xml |  12 +-
 .../vecto_vehicle-stage_input_full-sample.xml |  12 +-
 ..._vehicle-stage_input_full-sample_final.xml |  12 +-
 ...cle-stage_input_full-sample_final_noNG.xml |  12 +-
 ...ehicle-stage_input_full-sample_group41.xml |   8 +-
 ...ge_input_only_certain_entries02-sample.xml |  74 ++-
 ...ultistage_consolidated_multiple_stages.xml |   8 +-
 ...solidated_multiple_stages_NGTankSystem.xml |   8 +-
 ...e_consolidated_multiple_stages_airdrag.xml |  18 +-
 ..._consolidated_multiple_stages_heatPump.xml |   8 +-
 ...stage_consolidated_multiple_stages_hev.xml |   8 +-
 ...stage_consolidated_multiple_stages_vif.xml |   8 +-
 ...o_multistage_primary_vehicle_stage_2_3.xml |   8 +-
 ...ultistage_primary_vehicle_stage_2_full.xml |   8 +-
 .../vecto_vehicle-stage_input_full-sample.xml |  93 +++-
 ...ge_input_only_certain_entries02-sample.xml |  74 ++-
 ...LMultistageBusConsolidatedInputDataTest.cs |  47 +-
 .../XML/XMLMultistageBusDataTest.cs           |  18 +-
 .../XML/XMLMultistageBusInputDataTest.cs      |  13 +-
 34 files changed, 680 insertions(+), 732 deletions(-)

diff --git a/VECTO3GUI2020/Util/XML/Implementation/ComponentWriter/XMLBusAuxiliariesWriter.cs b/VECTO3GUI2020/Util/XML/Implementation/ComponentWriter/XMLBusAuxiliariesWriter.cs
index ad44783039..18e2f88098 100644
--- a/VECTO3GUI2020/Util/XML/Implementation/ComponentWriter/XMLBusAuxiliariesWriter.cs
+++ b/VECTO3GUI2020/Util/XML/Implementation/ComponentWriter/XMLBusAuxiliariesWriter.cs
@@ -85,20 +85,33 @@ namespace VECTO3GUI2020.Util.XML.Implementation.ComponentWriter
 			if (_inputData.HVACAux != null) {
 				var hvacElement = new XElement(_defaultNamespace + "HVAC");
 				hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_SystemConfiguration, _inputData.HVACAux.SystemConfiguration.GetXmlFormat()));
-				var heatPumpTypeLabel = _inputData.HVACAux.HeatPumpTypeDriverCompartment.GetLabel();
-				if (heatPumpTypeLabel == "~null~") {
-					heatPumpTypeLabel = null;
+
+				var driverCoolingHeatPumpLabel = _inputData.HVACAux.HeatPumpTypeCoolingDriverCompartment.GetLabel();
+				if (driverCoolingHeatPumpLabel == "~null~") {
+					driverCoolingHeatPumpLabel = null;
+				}
+				hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_HeatPumpTypeCoolingDriver, driverCoolingHeatPumpLabel));
+
+				var driverHeatingHeatPumpLabel = _inputData.HVACAux.HeatPumpTypeHeatingDriverCompartment.GetLabel();
+				if (driverHeatingHeatPumpLabel == "~null~")
+				{
+					driverHeatingHeatPumpLabel = null;
 				}
-				hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_HeatPumpTypeDriver, heatPumpTypeLabel));
-				hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_HeatPumpModeDriver, _inputData.HVACAux.HeatPumpModeDriverCompartment.GetLabel()));
-				//TODO
-				if (_inputData.HVACAux.HeatPumpPassengerCompartments != null) {
-					foreach (var (heatPumpType, heatPumpMode) in _inputData.HVACAux.HeatPumpPassengerCompartments) {
-						hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_HeatPumpTypePassenger, heatPumpType.GetLabel()));
-						hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_HeatPumpModePassenger, heatPumpMode.GetLabel()));
-					}
+				hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_HeatPumpTypeHeatingDriver, driverHeatingHeatPumpLabel));
+				
+				var passengerCoolingHeatPumpLabel = _inputData.HVACAux.HeatPumpTypeCoolingPassengerCompartment.GetLabel();
+				if (passengerCoolingHeatPumpLabel == "~null~")
+				{
+					passengerCoolingHeatPumpLabel = null;
 				}
+				hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_HeatPumpTypeCoolingPassenger, passengerCoolingHeatPumpLabel));
 
+				var passengerHeatingHeatPumpLabel = _inputData.HVACAux.HeatPumpTypeHeatingPassengerCompartment.GetLabel();
+				if (passengerHeatingHeatPumpLabel == "~null~")
+				{
+					passengerHeatingHeatPumpLabel = null;
+				}
+				hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_HeatPumpTypeHeatingPassenger, passengerHeatingHeatPumpLabel));
 
 				hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_AuxiliaryHeaterPower, _inputData.HVACAux.AuxHeaterPower?.ToXMLFormat(0)));
 				hvacElement.Add(new XElement(_defaultNamespace + XMLNames.Bus_DoubleGlazing, _inputData.HVACAux.DoubleGlazing));
diff --git a/VECTO3GUI2020/ViewModel/MultiStage/Implementation/MultistageAuxiliariesViewModel.cs b/VECTO3GUI2020/ViewModel/MultiStage/Implementation/MultistageAuxiliariesViewModel.cs
index a1a749c121..38a3e9e110 100644
--- a/VECTO3GUI2020/ViewModel/MultiStage/Implementation/MultistageAuxiliariesViewModel.cs
+++ b/VECTO3GUI2020/ViewModel/MultiStage/Implementation/MultistageAuxiliariesViewModel.cs
@@ -53,17 +53,6 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 		public MultistageAuxiliariesViewModel(IBusAuxiliariesDeclarationData consolidatedAuxiliariesInputData)
 		{
 			ConsolidatedInputData = consolidatedAuxiliariesInputData;
-			if (ConsolidatedInputData?.HVACAux?.HeatPumpPassengerCompartments != null) {
-				_consolidatedHeatPumpConfigurationsPassenger = new ObservableCollection<HeatPumpConfiguration>();
-				foreach (var (heatPumpType, heatPumpMode) in ConsolidatedInputData?.HVACAux?.HeatPumpPassengerCompartments) {
-					ConsolidatedHeatPumpConfigurationsPassenger.Add(new HeatPumpConfiguration()
-					{
-						HeatPumpMode = heatPumpMode,
-						HeatPumpType = heatPumpType,
-						IsReadOnly = true,
-					});
-				}
-			}
 
 			CreateParameterViewModels();
 		}
@@ -80,8 +69,10 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 				nameof(HeadlightsLED),
 			
 				nameof(SystemConfiguration),
-				nameof(HeatPumpModeDriverCompartment),
-				nameof(HeatPumpTypeDriverCompartment),
+				nameof(HeatPumpTypeHeatingPassengerCompartment),
+				nameof(HeatPumpTypeCoolingPassengerCompartment),
+				nameof(HeatPumpTypeHeatingDriverCompartment),
+				nameof(HeatPumpTypeCoolingDriverCompartment),
 
 				nameof(AuxHeaterPower),
 				nameof(DoubleGlazing),
@@ -129,14 +120,15 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 				ConsolidatedInputData?.ElectricConsumers.HeadlightsLED;
 			_parameterViewModels[nameof(SystemConfiguration)].PreviousContent =
 				ConsolidatedInputData?.HVACAux.SystemConfiguration;
-			_parameterViewModels[nameof(HeatPumpModeDriverCompartment)].PreviousContent =
-				ConsolidatedInputData?.HVACAux.HeatPumpModeDriverCompartment;
-			//_parameterViewModels[nameof(HeatPumpTypePassengerCompartment)].PreviousContent =
-			//	ConsolidatedInputData?.HVACAux.HeatPumpTypePassengerCompartment;
-			_parameterViewModels[nameof(HeatPumpTypeDriverCompartment)].PreviousContent =
-				ConsolidatedInputData?.HVACAux.HeatPumpTypeDriverCompartment;
-			//_parameterViewModels[nameof(HeatPumpModePassengerCompartment)].PreviousContent =
-			//	ConsolidatedInputData?.HVACAux.HeatPumpModePassengerCompartment;
+			_parameterViewModels[nameof(HeatPumpTypeCoolingDriverCompartment)].PreviousContent =
+				ConsolidatedInputData?.HVACAux.HeatPumpTypeCoolingDriverCompartment;
+			_parameterViewModels[nameof(HeatPumpTypeHeatingDriverCompartment)].PreviousContent =
+				ConsolidatedInputData?.HVACAux.HeatPumpTypeHeatingDriverCompartment;
+			_parameterViewModels[nameof(HeatPumpTypeCoolingPassengerCompartment)].PreviousContent =
+				ConsolidatedInputData?.HVACAux.HeatPumpTypeCoolingPassengerCompartment;
+			_parameterViewModels[nameof(HeatPumpTypeHeatingPassengerCompartment)].PreviousContent =
+				ConsolidatedInputData?.HVACAux.HeatPumpTypeHeatingPassengerCompartment;
+
 			_parameterViewModels[nameof(AuxHeaterPower)].PreviousContent =
 				ConsolidatedInputData?.HVACAux.AuxHeaterPower;
 			_parameterViewModels[nameof(DoubleGlazing)].PreviousContent =
@@ -157,20 +149,29 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 			};
 			_parameterViewModels[nameof(SystemConfiguration)].EditingChangedCallback =
 				HeatPumpGroupEditingEnabledCallback;
-			_parameterViewModels[nameof(HeatPumpModeDriverCompartment)].EditingChangedCallback =
+			_parameterViewModels[nameof(HeatPumpTypeCoolingDriverCompartment)].EditingChangedCallback =
 				HeatPumpGroupEditingEnabledCallback;
-			_parameterViewModels[nameof(HeatPumpTypeDriverCompartment)].EditingChangedCallback =
+			_parameterViewModels[nameof(HeatPumpTypeHeatingDriverCompartment)].EditingChangedCallback =
+				HeatPumpGroupEditingEnabledCallback;
+			_parameterViewModels[nameof(HeatPumpTypeCoolingPassengerCompartment)].EditingChangedCallback =
 				HeatPumpGroupEditingEnabledCallback;
 
+			_parameterViewModels[nameof(HeatPumpTypeHeatingPassengerCompartment)].EditingChangedCallback =
+				HeatPumpGroupEditingEnabledCallback;
 			//Setup AllowedValues 
-			HeatPumpModeDriverCompartmentAllowedValues =
-				EnumHelper.GetValuesAsObservableCollectionExcluding<Enum, HeatPumpMode>(HeatPumpMode.N_A);
+			_heatPumpTypeDriverCompartmentAllowedValues =
+				EnumHelper.GetValuesAsObservableCollection<Enum, HeatPumpType>();
+
+			_heatPumpTypePassengerCompartmentAllowedValues =
+				EnumHelper.GetValuesAsObservableCollectionExcluding<Enum, HeatPumpType>(HeatPumpType.not_applicable);
 
 			SystemConfigurationAllowedValues =
 				EnumHelper.GetValuesAsObservableCollectionExcluding<Enum, BusHVACSystemConfiguration>(
 					BusHVACSystemConfiguration.Unknown);
 		}
 
+
+
 		protected override bool SetProperty<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
 		{
 			var propertyChanged = base.SetProperty(ref field, value, propertyName);
@@ -191,22 +192,14 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 
 			HeatPumpGroupEditingEnabled = componentsAuxiliaryInputData.HVACAux != null;
 			SystemConfiguration = componentsAuxiliaryInputData.HVACAux?.SystemConfiguration;
-			HeatPumpTypeDriverCompartment = componentsAuxiliaryInputData.HVACAux?.HeatPumpTypeDriverCompartment;
-			HeatPumpModeDriverCompartment = componentsAuxiliaryInputData.HVACAux?.HeatPumpModeDriverCompartment;
-			HeatPumpConfigurationsPassenger = null;
-			HeatPumpConfigurationsPassenger = new ObservableCollection<HeatPumpConfiguration>();
-			if (componentsAuxiliaryInputData?.HVACAux?.HeatPumpPassengerCompartments != null)
-			{
-				foreach (var (heatPumpType, heatPumpMode) in componentsAuxiliaryInputData.HVACAux.HeatPumpPassengerCompartments)
-				{
-					HeatPumpConfigurationsPassenger.Add(new HeatPumpConfiguration()
-					{
-						HeatPumpType = heatPumpType,
-						HeatPumpMode = heatPumpMode,
-					});
-				}
-			}
-
+			HeatPumpTypeCoolingDriverCompartment =
+				componentsAuxiliaryInputData.HVACAux?.HeatPumpTypeCoolingDriverCompartment;
+			HeatPumpTypeHeatingDriverCompartment =
+				componentsAuxiliaryInputData.HVACAux?.HeatPumpTypeHeatingDriverCompartment;
+			HeatPumpTypeCoolingPassengerCompartment =
+				componentsAuxiliaryInputData.HVACAux?.HeatPumpTypeCoolingPassengerCompartment;
+			HeatPumpTypeHeatingPassengerCompartment =
+				componentsAuxiliaryInputData.HVACAux?.HeatPumpTypeHeatingPassengerCompartment;
 
 
 			AuxHeaterPower = componentsAuxiliaryInputData.HVACAux?.AuxHeaterPower;
@@ -294,21 +287,8 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 
 
 
-		#region HVAC
-
-		private bool _heatPumpGroupEditingEnabled;
-		private BusHVACSystemConfiguration? _systemConfiguration;
-		private HeatPumpType? _heatPumpTypeDriverCompartment;
-		private HeatPumpMode? _heatPumpModeDriverCompartment;
-
-
-
 
-		public IHVACBusAuxiliariesDeclarationData HVACAux
-		{
-			get => this;
-			set => throw new NotImplementedException();
-		}
+		
 
 
 		private Watt _auxHeaterPower;
@@ -367,226 +347,35 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 
 		public bool EngineWasteGasHeatExchanger => throw new NotImplementedException();
 
-		#region Heatpump
-
-		private ICommand _addPassengerHeatpumpCommand;
-
-		public ICommand AddPassengerHeatpumpCommand
-		{
-			get
-			{
-				return _addPassengerHeatpumpCommand ?? (_addPassengerHeatpumpCommand =
-					new RelayCommand(() => {
-							HeatPumpGroupEditingEnabled = true;
-							if (HeatPumpConfigurationsPassenger == null) {
-								HeatPumpConfigurationsPassenger = new ObservableCollection<HeatPumpConfiguration>();
-							}
-
-							HeatPumpConfigurationsPassenger.Add(new HeatPumpConfiguration());
-							RemovePassengerHeatpumpCommand.NotifyCanExecuteChanged();
-
-						},
-						() => true));
-			}
-		}
-
-		private IRelayCommand _removePassengerHeatpumpCommand;
-
-		public IRelayCommand RemovePassengerHeatpumpCommand
-		{
-			get
-			{
-				return _removePassengerHeatpumpCommand ?? (_removePassengerHeatpumpCommand =
-					new RelayCommand<HeatPumpConfiguration>(hp => {
-						if (HeatPumpGroupEditingEnabled && HeatPumpConfigurationsPassenger.Count > 1) {
-							HeatPumpConfigurationsPassenger?.Remove(hp);
-							RemovePassengerHeatpumpCommand.NotifyCanExecuteChanged();
-						}
-					}, hp => HeatPumpConfigurationsPassenger.Count > 1));
-			}
-		}
-
-		public IList<Tuple<HeatPumpType, HeatPumpMode>> HeatPumpPassengerCompartments{
-			get
-			{
-				IList<Tuple<HeatPumpType,HeatPumpMode>> list = null;
-				if (HeatPumpConfigurationsPassenger != null) {
-					list = new List<Tuple<HeatPumpType, HeatPumpMode>>();
-					foreach (var heatPumpConfiguration in HeatPumpConfigurationsPassenger)
-					{
-						list.Add(new Tuple<HeatPumpType, HeatPumpMode>((HeatPumpType)heatPumpConfiguration.HeatPumpType, (HeatPumpMode)heatPumpConfiguration.HeatPumpMode));
-					}
-				}
 
 
-				return list;
-			}
-		}
-
-		public ObservableCollection<HeatPumpConfiguration> ConsolidatedHeatPumpConfigurationsPassenger
-		{
-			get => _consolidatedHeatPumpConfigurationsPassenger;
-			private set => SetProperty(ref _consolidatedHeatPumpConfigurationsPassenger, value);
-		}
 
+		#region HVAC
 
-		public ObservableCollection<HeatPumpConfiguration> HeatPumpConfigurationsPassenger
-		{
-			get => _heatPumpConfigurationsPassenger;
-			private set => SetProperty(ref _heatPumpConfigurationsPassenger, value);
-		}
+		private bool _heatPumpGroupEditingEnabled;
+		private BusHVACSystemConfiguration? _systemConfiguration;
+		private HeatPumpType? _heatPumpTypeCoolingDriverCompartment;
+		private HeatPumpType? _heatPumpTypeHeatingDriverCompartment;
+		private HeatPumpType? _heatPumpTypeCoolingPassengerCompartment;
+		private HeatPumpType? _heatPumpTypeHeatingPassengerCompartment;
+		private ObservableCollection<Enum> _heatPumpTypeDriverCompartmentAllowedValues;
+		private ObservableCollection<Enum> _heatPumpTypePassengerCompartmentAllowedValues;
 
-		public class HeatPumpConfiguration : ViewModelBase, ITuple, IDataErrorInfo
+		public IHVACBusAuxiliariesDeclarationData HVACAux
 		{
-			public MultistageParameterViewModel HeatPumpTypeVM { get; }
-			public MultistageParameterViewModel HeatPumpModeVM { get; }
-
-			private HeatPumpType? _heatPumpType;
-			private HeatPumpMode? _heatPumpMode;
-
-			public HeatPumpType? HeatPumpType
-			{
-				get => _heatPumpType;
-				set
-				{
-					if (SetProperty(ref _heatPumpType, value)) {
-						
-						if (value == TUGraz.VectoCommon.BusAuxiliaries.HeatPumpType.none)
-						{
-							HeatPumpModeVM.AllowedItems =
-								EnumHelper.GetValuesAsObservableCollectionIncluding<Enum, HeatPumpMode>(
-									items: TUGraz.VectoCommon.BusAuxiliaries.HeatPumpMode.N_A);
-						}
-						else
-						{
-							HeatPumpModeVM.AllowedItems =
-								EnumHelper.GetValuesAsObservableCollectionExcluding<Enum, HeatPumpMode>(
-									items: TUGraz.VectoCommon.BusAuxiliaries.HeatPumpMode.N_A);
-						}
-
-						HeatPumpTypeVM.CurrentContent = value;
-					}
-				}
-			}
-
-
-			public HeatPumpMode? HeatPumpMode
-			{
-				get => _heatPumpMode;
-				set
-				{
-					if (SetProperty(ref _heatPumpMode, value)) {
-						HeatPumpModeVM.CurrentContent = value;
-					}
-				}
-			}
-			public HeatPumpConfiguration()
-			{
-				HeatPumpModeVM = new MultistageParameterViewModel(nameof(HeatPumpMode), null, this, ViewMode.COMBOBOX,
-					mandatory: true, resourceManagers: new ResourceManager[] {
-						BusStrings.ResourceManager,
-						Strings.ResourceManager,
-					}) {
-					AllowedItems = EnumHelper.GetValuesAsObservableCollectionExcluding<Enum, HeatPumpMode>(items: TUGraz.VectoCommon.BusAuxiliaries.HeatPumpMode.N_A)
-				};
-				HeatPumpTypeVM = new MultistageParameterViewModel(nameof(HeatPumpType), null, this, ViewMode.COMBOBOX,
-					mandatory: true, resourceManagers: new ResourceManager[] {
-						BusStrings.ResourceManager,
-						Strings.ResourceManager,
-					});
-			}
-
-			public bool IsReadOnly
-			{
-				get => HeatPumpModeVM.IsReadOnly && HeatPumpTypeVM.IsReadOnly;
-				set
-				{
-					HeatPumpTypeVM.IsReadOnly = value;
-					HeatPumpModeVM.IsReadOnly = value;
-				}
-			}
-
-			#region Implementation of ITuple
-
-			int ITuple.Length => 2;
-
-			object ITuple.this[int index]
-			{
-				get
-				{
-					return null;
-				}
-			}
-
-			#endregion
-
-			#region Implementation of IDataErrorInfo
-
-			string IDataErrorInfo.this[string columnName]
-			{
-				get
-				{
-					string result = null;
-					switch (columnName) {
-						case nameof(HeatPumpType):
-							if (HeatPumpType == null) {
-								result = $"{columnName} must not be empty";
-							}
-							break;
-						case nameof(HeatPumpMode):
-							if (HeatPumpMode == null) {
-								result = $"{columnName} must not be empty";
-							}
-							break;
-						default:
-							result = null;
-							break;
-					}
-
-					if (result == null)
-					{
-						if (Errors.ContainsKey(columnName))
-							Errors.Remove(columnName);
-					}
-					else
-					{
-						Errors[columnName] = result;
-					}
-
-
-
-					return result;
-				}
-			}
-
-			private Dictionary<string, string> Errors { get; } = new Dictionary<string, string>();
-
-			public bool HasErrors
-			{
-				get => !Errors.IsNullOrEmpty();
-
-			}
-			string IDataErrorInfo.Error => String.Join(",", Errors.Values);
-
-			#endregion
+			get => this;
+			set => throw new NotImplementedException();
 		}
-
 		public bool HeatPumpGroupEditingEnabled
 		{
 			get => _heatPumpGroupEditingEnabled;
 			set
 			{
 				if (SetProperty(ref _heatPumpGroupEditingEnabled, value)) {
-					_parameterViewModels[nameof(HeatPumpModeDriverCompartment)].EditingEnabled = value;
-					_parameterViewModels[nameof(HeatPumpTypeDriverCompartment)].EditingEnabled = value;
-					_parameterViewModels[nameof(SystemConfiguration)].EditingEnabled = value;
-					if (value == false) {
-						HeatPumpConfigurationsPassenger = null;
-					} else {
-						if (HeatPumpConfigurationsPassenger == null || HeatPumpConfigurationsPassenger.Count == 0) {
-							AddPassengerHeatpumpCommand.Execute(null);
-						}
-					}
+					_parameterViewModels[nameof(HeatPumpTypeCoolingDriverCompartment)].EditingEnabled = value;
+					_parameterViewModels[nameof(HeatPumpTypeCoolingPassengerCompartment)].EditingEnabled = value;
+					_parameterViewModels[nameof(HeatPumpTypeHeatingDriverCompartment)].EditingEnabled = value;
+					_parameterViewModels[nameof(HeatPumpTypeHeatingPassengerCompartment)].EditingEnabled = value;
 				}
 			}
 		}
@@ -607,58 +396,77 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 		public BusHVACSystemConfiguration? SystemConfiguration
 		{
 			get => _systemConfiguration;
-			set => SetProperty(ref _systemConfiguration, value);
+			set {
+				if (SetProperty(ref _systemConfiguration, value)) {
+					switch (value) {
+						case BusHVACSystemConfiguration.Configuration6:
+						case BusHVACSystemConfiguration.Configuration10:
+							HeatPumpTypeDriverAllowedValues =
+								EnumHelper.GetValuesAsObservableCollectionIncluding<Enum, HeatPumpType>(HeatPumpType
+									.not_applicable);
+							break;
+						default:
+							HeatPumpTypeDriverAllowedValues =
+								EnumHelper.GetValuesAsObservableCollectionExcluding<Enum, HeatPumpType>(HeatPumpType
+									.not_applicable);
+							break;
+					}
+				}}
 		}
 
-		public HeatPumpType? HeatPumpTypeDriverCompartment
+		#region Implementation of IHVACBusAuxiliariesDeclarationData
+
+		public HeatPumpType? HeatPumpTypeCoolingDriverCompartment
 		{
-			get => _heatPumpTypeDriverCompartment;
+			get => _heatPumpTypeCoolingDriverCompartment;
 			set
 			{
-				if (SetProperty(ref _heatPumpTypeDriverCompartment, value)) {
-					if (value == HeatPumpType.none)
-					{
-						HeatPumpModeDriverCompartmentAllowedValues =
-							EnumHelper.GetValuesAsObservableCollectionIncluding<Enum, HeatPumpMode>(items: HeatPumpMode.N_A);
-
-					}
-					else
-					{
-						HeatPumpModeDriverCompartmentAllowedValues =
-							EnumHelper.GetValuesAsObservableCollectionExcluding<Enum, HeatPumpMode>(
-								items: HeatPumpMode.N_A);
+				SetProperty(ref _heatPumpTypeCoolingDriverCompartment, value);
+			}
+		}
 
-					}
+		public ObservableCollection<Enum> HeatPumpTypeDriverAllowedValues
+		{
+			get => _heatPumpTypeDriverCompartmentAllowedValues;
+			set => SetProperty(ref _heatPumpTypeDriverCompartmentAllowedValues, value);
+		}
 
-				}
-			} 
+		public ObservableCollection<Enum> HeatPumpTypePassengerAllowedValues
+		{
+			get => _heatPumpTypePassengerCompartmentAllowedValues;
+			set => SetProperty(ref _heatPumpTypePassengerCompartmentAllowedValues, value);
 		}
 
-		public HeatPumpMode? HeatPumpModeDriverCompartment
+		public HeatPumpType? HeatPumpTypeHeatingDriverCompartment
 		{
-			get => _heatPumpModeDriverCompartment;
-			set => SetProperty(ref _heatPumpModeDriverCompartment, value);
+			get => _heatPumpTypeHeatingDriverCompartment;
+			set
+			{
+				SetProperty(ref _heatPumpTypeHeatingDriverCompartment, value);
+			}
 		}
 
-		private ObservableCollection<Enum> _heatPumpModeDriverCompartmentAllowedValues;
-	
-		public ObservableCollection<Enum> HeatPumpModeDriverCompartmentAllowedValues
+		public HeatPumpType? HeatPumpTypeCoolingPassengerCompartment
 		{
-			get
+			get => _heatPumpTypeCoolingPassengerCompartment;
+			set
 			{
-				return _heatPumpModeDriverCompartmentAllowedValues;
+				SetProperty(ref _heatPumpTypeCoolingPassengerCompartment, value);
 			}
-			private set
+		}
+
+		public HeatPumpType? HeatPumpTypeHeatingPassengerCompartment
+		{
+			get => _heatPumpTypeHeatingPassengerCompartment;
+			set
 			{
-				if (SetProperty(ref _heatPumpModeDriverCompartmentAllowedValues, value)) {
-					_parameterViewModels[nameof(HeatPumpModeDriverCompartment)].AllowedItems = value;
-				};
+				SetProperty(ref _heatPumpTypeHeatingPassengerCompartment, value);
 			}
 		}
 
 		#endregion
-
 		#endregion
+
 		#region IElectricConsumersDeclaration
 
 		//LED lights
@@ -714,8 +522,6 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 
 		private CompressorDrive _compressorDrive;
 		private Dictionary<string, MultistageParameterViewModel> _parameterViewModels;
-		private ObservableCollection<HeatPumpConfiguration> _consolidatedHeatPumpConfigurationsPassenger;
-		private ObservableCollection<HeatPumpConfiguration> _heatPumpConfigurationsPassenger;
 
 
 		public CompressorDrive CompressorDrive
@@ -812,8 +618,10 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 				string result = null;
 				switch (propertyName)
 				{
-					case nameof(HeatPumpTypeDriverCompartment):
-					case nameof(HeatPumpModeDriverCompartment):
+					case nameof(HeatPumpTypeCoolingPassengerCompartment):
+					case nameof(HeatPumpTypeCoolingDriverCompartment):
+					case nameof(HeatPumpTypeHeatingPassengerCompartment):
+					case nameof(HeatPumpTypeHeatingDriverCompartment):
 					case nameof(SystemConfiguration):
 						if (HeatPumpGroupEditingEnabled == true &&
 							this.GetType().GetProperty(propertyName).GetValue(this) == null) {
@@ -851,13 +659,6 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 				string result = string.Empty;
 				var auxVmError = String.Join(",", Errors.Values);
 				result = auxVmError;
-				if (HeatPumpConfigurationsPassenger != null) {
-					foreach (var heatPumpConfiguration in HeatPumpConfigurationsPassenger) {
-						if (heatPumpConfiguration.HasErrors) {
-							result += "," + ((IDataErrorInfo)heatPumpConfiguration).Error;
-						}
-					}
-				}
 
 				return result;
 			}
@@ -868,17 +669,8 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation
 			get
 			{
 				var auxVmHasErrors = !Error.IsNullOrEmpty();
-				var passengerHeatPumpsHaveError = false;
-				if (HeatPumpConfigurationsPassenger != null) {
-					foreach (var heatPump in HeatPumpConfigurationsPassenger) {
-						if (heatPump.HasErrors) {
-							passengerHeatPumpsHaveError = true;
-							break;
-						}
-					}
-				}
 
-				return auxVmHasErrors || passengerHeatPumpsHaveError;
+				return auxVmHasErrors;
 			}
 		}
 
diff --git a/VECTO3GUI2020/Views/Multistage/ManufacturingStageAuxiliariesView.xaml b/VECTO3GUI2020/Views/Multistage/ManufacturingStageAuxiliariesView.xaml
index 65740ac709..880cef340e 100644
--- a/VECTO3GUI2020/Views/Multistage/ManufacturingStageAuxiliariesView.xaml
+++ b/VECTO3GUI2020/Views/Multistage/ManufacturingStageAuxiliariesView.xaml
@@ -36,83 +36,24 @@
 
                     <Label  Style="{DynamicResource LabelStyle1}">Heating, Ventilation and Air Conditioning</Label>
                     <ContentControl Content="{Binding ParameterViewModels[SystemConfiguration]}"/>
-                    <ContentControl Content="{Binding ParameterViewModels[HeatPumpTypeDriverCompartment]}"/>
-                    <ContentControl Content="{Binding ParameterViewModels[HeatPumpModeDriverCompartment]}"/>
-                    <Border Margin="5 0" BorderBrush="{DynamicResource ButtonHighlightColor}" BorderThickness="2" >
-                        <StackPanel Margin="0">
-                            <Label Margin="0" Style="{DynamicResource LabelStyle1}">Heat Pumps Passenger Compartment</Label>
-                            <StackPanel Visibility="{Binding ShowConsolidatedData, Converter={StaticResource BooleanToVisibilityConverter}}">
-                                <Label Padding="10 4 0 4" Style="{DynamicResource LabelStyle1}">Consolidated Data</Label>
-                                <ItemsControl AlternationCount="2"
-                                    Visibility="{Binding ConsolidatedHeatPumpConfigurationsPassenger, Converter={StaticResource NullToVisibilityConverter}}" 
-                                    ItemsSource="{Binding ConsolidatedHeatPumpConfigurationsPassenger}" 
-                                    HorizontalContentAlignment="Stretch"
-                                    Padding="5 5 29 5 " >
-                                    <ItemsControl.ItemTemplate>
-                                        <DataTemplate>
-                                            <Border BorderThickness="1">
-                                                <DockPanel LastChildFill="true" x:Name="ItemsDockPanel">
-                                                    <UniformGrid DockPanel.Dock="Left" Columns="2">
-                                                        <ContentControl Grid.Column="0" DockPanel.Dock="Top" Content="{Binding Path=HeatPumpTypeVM}"/>
-                                                        <ContentControl Grid.Column="1" DockPanel.Dock="Top" Content="{Binding Path=HeatPumpModeVM}"/>
-                                                    </UniformGrid>
-                                                </DockPanel>
-                                            </Border>
-                                            <DataTemplate.Triggers>
-                                                <Trigger Property="ItemsControl.AlternationIndex" Value="0">
-                                                    <Setter Property="Background" Value="White" TargetName="ItemsDockPanel"/>
-                                                </Trigger>
-                                                <Trigger Property="ItemsControl.AlternationIndex" Value="1">
-                                                    <Setter Property="Background" Value="LightGray" TargetName="ItemsDockPanel"/>
-                                                </Trigger>
-                                            </DataTemplate.Triggers>
-                                        </DataTemplate>
-                                    </ItemsControl.ItemTemplate>
-                                </ItemsControl>
-                                <Label Visibility="{Binding ConsolidatedHeatPumpConfigurationsPassenger, 
-                                    Converter={StaticResource NullToVisibilityConverter}, 
-                                    ConverterParameter=invert}"
-                                    HorizontalAlignment="Center">No consolidated data available</Label>
-                            </StackPanel>
-                            <DockPanel LastChildFill="true">
-                                <Button DockPanel.Dock="right"  ContentTemplate="{DynamicResource AddIcon}" Command="{Binding AddPassengerHeatpumpCommand}">
-
-                                </Button>
-                                <Label Style="{DynamicResource LabelStyle1}" Padding="10 4 0 4">Current Stage</Label>
-                            </DockPanel>
-
-                            <ItemsControl ItemsSource="{Binding HeatPumpConfigurationsPassenger}" HorizontalContentAlignment="Stretch"
-                                  Padding="5" AlternationCount="2">
-                                <ItemsControl.ItemTemplate>
-                                    <DataTemplate>
-                                        <Border BorderThickness="1">
-                                            <DockPanel LastChildFill="true" x:Name="ItemsDockPanel">
-                                                <Button DockPanel.Dock="Right" Height="24"
-                                                ContentTemplate="{DynamicResource TrashIcon}"
-                                                Command="{Binding RelativeSource={RelativeSource AncestorType=ItemsControl}, 
-                                                            Path=DataContext.RemovePassengerHeatpumpCommand}"
-                                                CommandParameter="{Binding }"/>
-                                                <UniformGrid DockPanel.Dock="Left" Columns="2">
-                                                    <ContentControl Grid.Column="0" DockPanel.Dock="Top" Content="{Binding Path=HeatPumpTypeVM}"/>
-                                                    <ContentControl Grid.Column="1" DockPanel.Dock="Top" Content="{Binding Path=HeatPumpModeVM}"/>
-                                                </UniformGrid>
-                                            </DockPanel>
-                                        </Border>
-                                        <DataTemplate.Triggers>
-                                            <Trigger Property="ItemsControl.AlternationIndex" Value="0">
-                                                <Setter Property="Background" Value="White" TargetName="ItemsDockPanel"/>
-                                            </Trigger>
-                                            <Trigger Property="ItemsControl.AlternationIndex" Value="1">
-                                                <Setter Property="Background" Value="LightGray" TargetName="ItemsDockPanel"/>
-                                            </Trigger>
-                                        </DataTemplate.Triggers>
-                                    </DataTemplate>
-                                </ItemsControl.ItemTemplate>
-                            </ItemsControl>
+                    <Border Margin="5" BorderThickness="2" BorderBrush="{DynamicResource ButtonHighlightColor}">
+                        <StackPanel>
+                            <Label  Style="{DynamicResource LabelStyle1}">Driver Compartment</Label>
+                            <ContentControl Content="{Binding ParameterViewModels[HeatPumpTypeCoolingDriverCompartment]}"/>
+                            <ContentControl Content="{Binding ParameterViewModels[HeatPumpTypeHeatingDriverCompartment]}"/>
+                        </StackPanel>
+                    </Border>
+                    <Border Margin="5" BorderThickness="2" BorderBrush="{DynamicResource ButtonHighlightColor}">
+                        <StackPanel>
+                            <Label  Style="{DynamicResource LabelStyle1}">Passenger Compartment</Label>
+                            <ContentControl Content="{Binding ParameterViewModels[HeatPumpTypeCoolingPassengerCompartment]}"/>
+                            <ContentControl Content="{Binding ParameterViewModels[HeatPumpTypeHeatingPassengerCompartment]}"/>
                         </StackPanel>
                     </Border>
 
 
+
+
                     <ContentControl Content="{Binding ParameterViewModels[AuxHeaterPower]}"/>
                     <ContentControl Content="{Binding ParameterViewModels[DoubleGlazing]}"/>
                     <ContentControl Content="{Binding ParameterViewModels[AdjustableAuxiliaryHeater]}"/>
diff --git a/Vecto3GUI2020Test/ViewModelTests/LoadAndSaveVehicleData.cs b/Vecto3GUI2020Test/ViewModelTests/LoadAndSaveVehicleData.cs
index 43d1066515..e2ed624383 100644
--- a/Vecto3GUI2020Test/ViewModelTests/LoadAndSaveVehicleData.cs
+++ b/Vecto3GUI2020Test/ViewModelTests/LoadAndSaveVehicleData.cs
@@ -38,38 +38,38 @@ namespace Vecto3GUI2020Test
 		}
 
 
-		[Test, Combinatorial]
-		public void LoadPrimaryAndEditHVACDriverCompartmentOnly(
-			[Values(BusHVACSystemConfiguration.Configuration2)] BusHVACSystemConfiguration configuration)
-		{
-			var stageInputFileName = "stageinput.xml";
+		//[Test, Combinatorial]
+		//public void LoadPrimaryAndEditHVACDriverCompartmentOnly(
+		//	[Values(BusHVACSystemConfiguration.Configuration2)] BusHVACSystemConfiguration configuration)
+		//{
+		//	var stageInputFileName = "stageinput.xml";
 
-			//Load Primary Vehicle VIF
-			var newMultiStageJob = loadFile(primary_vehicle_only);
-			var vehicle = newMultiStageJob.MultiStageJobViewModel.ManufacturingStageViewModel.Vehicle as InterimStageBusVehicleViewModel_v2_8;
-			Assert.NotNull(vehicle);
-			vehicle.Manufacturer = "test1";
-			vehicle.ManufacturerAddress = "testAddress2";
-			vehicle.VIN = "VIN123456789";
+		//	//Load Primary Vehicle VIF
+		//	var newMultiStageJob = loadFile(primary_vehicle_only);
+		//	var vehicle = newMultiStageJob.MultiStageJobViewModel.ManufacturingStageViewModel.Vehicle as InterimStageBusVehicleViewModel_v2_8;
+		//	Assert.NotNull(vehicle);
+		//	vehicle.Manufacturer = "test1";
+		//	vehicle.ManufacturerAddress = "testAddress2";
+		//	vehicle.VIN = "VIN123456789";
 
 
 
-			var manufacturingStage = newMultiStageJob.MultiStageJobViewModel.ManufacturingStageViewModel as ManufacturingStageViewModel_v0_1;
+		//	var manufacturingStage = newMultiStageJob.MultiStageJobViewModel.ManufacturingStageViewModel as ManufacturingStageViewModel_v0_1;
 
-			var auxVm = manufacturingStage.VehicleViewModel.MultistageAuxiliariesViewModel as MultistageAuxiliariesViewModel;
+		//	var auxVm = manufacturingStage.VehicleViewModel.MultistageAuxiliariesViewModel as MultistageAuxiliariesViewModel;
 
 
-			auxVm.SystemConfiguration = BusHVACSystemConfiguration.Configuration2;
-			auxVm.HeatPumpTypeDriverCompartment = HeatPumpType.non_R_744_2_stage;
-			auxVm.HeatPumpModeDriverCompartment = (HeatPumpMode)auxVm.HeatPumpModeDriverCompartmentAllowedValues[0];
+		//	auxVm.SystemConfiguration = BusHVACSystemConfiguration.Configuration2;
+		//	auxVm.HeatPumpTypeDriverCompartment = HeatPumpType.non_R_744_2_stage;
+		//	auxVm.HeatPumpModeDriverCompartment = (HeatPumpMode)auxVm.HeatPumpModeDriverCompartmentAllowedValues[0];
 
-			var multistageJob = newMultiStageJob.MultiStageJobViewModel as MultiStageJobViewModel_v0_1;
-			multistageJob.ManufacturingStageViewModel.SaveInputDataExecute(GetFullPath(stageInputFileName));
-			Assert.IsTrue(checkFileNameExists(stageInputFileName));
+		//	var multistageJob = newMultiStageJob.MultiStageJobViewModel as MultiStageJobViewModel_v0_1;
+		//	multistageJob.ManufacturingStageViewModel.SaveInputDataExecute(GetFullPath(stageInputFileName));
+		//	Assert.IsTrue(checkFileNameExists(stageInputFileName));
 
 
 
-		}
+		//}
 
 
 
@@ -408,38 +408,32 @@ namespace Vecto3GUI2020Test
 			Assert.AreEqual(false, electricConsumer.HeadlightsLED);
 		}
 
-		private void TestHVACComponent(IHVACBusAuxiliariesDeclarationData hvacAux)
-		{
-			Assert.AreEqual(BusHVACSystemConfiguration.Configuration0, hvacAux.SystemConfiguration);
-			Assert.AreEqual(HeatPumpType.none, hvacAux.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(HeatPumpMode.heating, hvacAux.HeatPumpModeDriverCompartment);
-
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvacAux.HeatPumpPassengerCompartments[0].Item2);
-
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvacAux.HeatPumpPassengerCompartments[1].Item1);
-			Assert.AreEqual(HeatPumpMode.heating, hvacAux.HeatPumpPassengerCompartments[1].Item2);
+        private void TestHVACComponent(IHVACBusAuxiliariesDeclarationData hvacAux)
+        {
+            Assert.AreEqual(BusHVACSystemConfiguration.Configuration0, hvacAux.SystemConfiguration);
 
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpPassengerCompartments[2].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvacAux.HeatPumpPassengerCompartments[2].Item2);
+			Assert.AreEqual(HeatPumpType.R_744, hvacAux.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.none, hvacAux.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, hvacAux.HeatPumpTypeCoolingDriverCompartment);
 
 			Assert.AreEqual(50, hvacAux.AuxHeaterPower.Value());
-			Assert.AreEqual(false, hvacAux.DoubleGlazing);
-			Assert.AreEqual(true, hvacAux.AdjustableAuxiliaryHeater);
-			Assert.AreEqual(false, hvacAux.SeparateAirDistributionDucts);
-			Assert.AreEqual(true, hvacAux.WaterElectricHeater);
-			Assert.AreEqual(false, hvacAux.AirElectricHeater);
-			Assert.AreEqual(false, hvacAux.OtherHeatingTechnology);
-		}
+            Assert.AreEqual(false, hvacAux.DoubleGlazing);
+            Assert.AreEqual(true, hvacAux.AdjustableAuxiliaryHeater);
+            Assert.AreEqual(false, hvacAux.SeparateAirDistributionDucts);
+            Assert.AreEqual(true, hvacAux.WaterElectricHeater);
+            Assert.AreEqual(false, hvacAux.AirElectricHeater);
+            Assert.AreEqual(false, hvacAux.OtherHeatingTechnology);
+        }
 
 
 
 
 
 
-		#region Helper
+        #region Helper
 
-		#endregion
-	}
+        #endregion
+    }
 
 }
\ No newline at end of file
diff --git a/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs b/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
index 87e4208c30..b3798b9e75 100644
--- a/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
+++ b/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
@@ -894,11 +894,13 @@ namespace TUGraz.VectoCommon.InputData
 	{
 		BusHVACSystemConfiguration? SystemConfiguration { get; }
 
-		HeatPumpType? HeatPumpTypeDriverCompartment { get; }
-		
-		HeatPumpMode? HeatPumpModeDriverCompartment { get; }
-		
-		IList<Tuple<HeatPumpType, HeatPumpMode>> HeatPumpPassengerCompartments { get; }
+		HeatPumpType? HeatPumpTypeCoolingDriverCompartment { get; }
+
+		HeatPumpType? HeatPumpTypeHeatingDriverCompartment { get; }
+
+		HeatPumpType? HeatPumpTypeCoolingPassengerCompartment { get; }
+
+		HeatPumpType? HeatPumpTypeHeatingPassengerCompartment { get; }
 
 		Watt AuxHeaterPower { get; }
 
diff --git a/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs b/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs
index 505a1a3f6b..a3e3dcbc93 100644
--- a/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs
+++ b/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs
@@ -700,38 +700,38 @@ namespace TUGraz.VectoCommon.Resources {
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to HeatPumpModeDriverCompartment.
+        ///   Looks up a localized string similar to HeatPumpTypeCoolingDriverCompartment.
         /// </summary>
-        public static string Bus_HeatPumpModeDriver {
+        public static string Bus_HeatPumpTypeCoolingDriver {
             get {
-                return ResourceManager.GetString("Bus_HeatPumpModeDriver", resourceCulture);
+                return ResourceManager.GetString("Bus_HeatPumpTypeCoolingDriver", resourceCulture);
             }
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to HeatPumpModePassengerCompartment.
+        ///   Looks up a localized string similar to HeatPumpTypeCoolingPassengerCompartment.
         /// </summary>
-        public static string Bus_HeatPumpModePassenger {
+        public static string Bus_HeatPumpTypeCoolingPassenger {
             get {
-                return ResourceManager.GetString("Bus_HeatPumpModePassenger", resourceCulture);
+                return ResourceManager.GetString("Bus_HeatPumpTypeCoolingPassenger", resourceCulture);
             }
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to HeatPumpTypeDriverCompartment.
+        ///   Looks up a localized string similar to HeatPumpTypeHeatingDriverCompartment.
         /// </summary>
-        public static string Bus_HeatPumpTypeDriver {
+        public static string Bus_HeatPumpTypeHeatingDriver {
             get {
-                return ResourceManager.GetString("Bus_HeatPumpTypeDriver", resourceCulture);
+                return ResourceManager.GetString("Bus_HeatPumpTypeHeatingDriver", resourceCulture);
             }
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to HeatPumpTypePassengerCompartment.
+        ///   Looks up a localized string similar to HeatPumpTypeHeatingPassengerCompartment.
         /// </summary>
-        public static string Bus_HeatPumpTypePassenger {
+        public static string Bus_HeatPumpTypeHeatingPassenger {
             get {
-                return ResourceManager.GetString("Bus_HeatPumpTypePassenger", resourceCulture);
+                return ResourceManager.GetString("Bus_HeatPumpTypeHeatingPassenger", resourceCulture);
             }
         }
         
diff --git a/VectoCommon/VectoCommon/Resources/XMLNames.resx b/VectoCommon/VectoCommon/Resources/XMLNames.resx
index bbb441fcd9..357b2eadc0 100644
--- a/VectoCommon/VectoCommon/Resources/XMLNames.resx
+++ b/VectoCommon/VectoCommon/Resources/XMLNames.resx
@@ -1398,17 +1398,17 @@
   <data name="Bus_AirElectricHeater" xml:space="preserve">
     <value>AirElectricHeater</value>
   </data>
-  <data name="Bus_HeatPumpModeDriver" xml:space="preserve">
-    <value>HeatPumpModeDriverCompartment</value>
+  <data name="Bus_HeatPumpTypeCoolingDriver" xml:space="preserve">
+    <value>HeatPumpTypeCoolingDriverCompartment</value>
   </data>
-  <data name="Bus_HeatPumpModePassenger" xml:space="preserve">
-    <value>HeatPumpModePassengerCompartment</value>
+  <data name="Bus_HeatPumpTypeHeatingDriver" xml:space="preserve">
+    <value>HeatPumpTypeHeatingDriverCompartment</value>
   </data>
-  <data name="Bus_HeatPumpTypeDriver" xml:space="preserve">
-    <value>HeatPumpTypeDriverCompartment</value>
+  <data name="Bus_HeatPumpTypeCoolingPassenger" xml:space="preserve">
+    <value>HeatPumpTypeCoolingPassengerCompartment</value>
   </data>
-  <data name="Bus_HeatPumpTypePassenger" xml:space="preserve">
-    <value>HeatPumpTypePassengerCompartment</value>
+  <data name="Bus_HeatPumpTypeHeatingPassenger" xml:space="preserve">
+    <value>HeatPumpTypeHeatingPassengerCompartment</value>
   </data>
   <data name="Bus_OtherHeatingTechnology" xml:space="preserve">
     <value>OtherHeatingTechnology</value>
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONSubComponent.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONSubComponent.cs
index 592b5b3459..477a071d8a 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONSubComponent.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONSubComponent.cs
@@ -570,8 +570,14 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 		#region Implementation of IHVACBusAuxiliariesDeclarationData
 
         public virtual BusHVACSystemConfiguration? SystemConfiguration { get; set; }
-		public virtual HeatPumpType? HeatPumpTypeDriverCompartment => null;
-		public virtual HeatPumpMode? HeatPumpModeDriverCompartment => null;
+
+		public HeatPumpType? HeatPumpTypeCoolingDriverCompartment => null;
+
+		public HeatPumpType? HeatPumpTypeHeatingDriverCompartment => null;
+
+		public HeatPumpType? HeatPumpTypeCoolingPassengerCompartment => null;
+
+		public HeatPumpType? HeatPumpTypeHeatingPassengerCompartment => null;
 
 		public virtual IList<Tuple<HeatPumpType, HeatPumpMode>> HeatPumpPassengerCompartments => null;
 		public virtual Watt AuxHeaterPower => null;
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs
index 521cc4b5fc..684fdcf759 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs
@@ -183,11 +183,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 		#region Implementation of IHVACBusAuxiliariesDeclarationData
 
 		public virtual BusHVACSystemConfiguration? SystemConfiguration => BusHVACSystemConfiguration.Unknown;
-
-		public virtual HeatPumpType? HeatPumpTypeDriverCompartment => null;
-		public virtual HeatPumpMode? HeatPumpModeDriverCompartment => null;
-
-		public virtual IList<Tuple<HeatPumpType, HeatPumpMode>> HeatPumpPassengerCompartments => null;
+		public virtual HeatPumpType? HeatPumpTypeCoolingDriverCompartment => null;
+		public virtual HeatPumpType? HeatPumpTypeHeatingDriverCompartment => null;
+		public virtual HeatPumpType? HeatPumpTypeCoolingPassengerCompartment => null;
+		public virtual HeatPumpType? HeatPumpTypeHeatingPassengerCompartment => null;
 
 		public virtual Watt AuxHeaterPower => 0.SI<Watt>();
 
@@ -307,10 +306,18 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 
 		private bool IsBusHVACTagEmpty()
 		{
-			return SystemConfiguration == null && HeatPumpTypeDriverCompartment == null && HeatPumpModeDriverCompartment == null &&
-					HeatPumpPassengerCompartments?.Any() != true && AuxHeaterPower == null && DoubleGlazing == null && 
-					AdjustableAuxiliaryHeater == null && SeparateAirDistributionDucts == null && WaterElectricHeater == null &&
-					AirElectricHeater == null && OtherHeatingTechnology == null ;
+			return SystemConfiguration == null && 
+					HeatPumpTypeCoolingPassengerCompartment == null && 
+					HeatPumpTypeHeatingPassengerCompartment == null &&
+					HeatPumpTypeCoolingDriverCompartment == null && 
+					HeatPumpTypeHeatingDriverCompartment == null && 
+					AuxHeaterPower == null && 
+					DoubleGlazing == null && 
+					AdjustableAuxiliaryHeater == null && 
+					SeparateAirDistributionDucts == null && 
+					WaterElectricHeater == null &&
+					AirElectricHeater == null && 
+					OtherHeatingTechnology == null ;
 		}
 
 		public override XmlNode XMLSource => BaseNode;
@@ -322,50 +329,48 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 			ElementExists(XMLNames.Bus_SystemConfiguration) 
 				? BusHVACSystemConfigurationHelper.Parse(GetString(XMLNames.Bus_SystemConfiguration)) : null;
 
-		public override HeatPumpType? HeatPumpTypeDriverCompartment =>
-			ElementExists(XMLNames.Bus_HeatPumpTypeDriver)
-				? HeatPumpTypeHelper.Parse(GetString(XMLNames.Bus_HeatPumpTypeDriver)) : (HeatPumpType?)null;
 
-		public override HeatPumpMode? HeatPumpModeDriverCompartment
+		#region Overrides of XMLDeclarationPrimaryBusAuxiliariesDataProviderV26
+
+		public override HeatPumpType? HeatPumpTypeCoolingDriverCompartment
 		{
 			get
 			{
-				if (HeatPumpTypeDriverCompartment == HeatPumpType.none && !ElementExists(XMLNames.Bus_HeatPumpModeDriver)) 
-					return HeatPumpMode.N_A;
-				
-				return ElementExists(XMLNames.Bus_HeatPumpModeDriver)
-					? (HeatPumpMode?)HeatPumpModeHelper.Parse(GetString(XMLNames.Bus_HeatPumpModeDriver)) : null;
+				return ElementExists(XMLNames.Bus_HeatPumpTypeCoolingDriver)
+					? HeatPumpTypeHelper.Parse(GetString(XMLNames.Bus_HeatPumpTypeCoolingDriver)) : (HeatPumpType?)null;
 			}
 		}
 
+		public override HeatPumpType? HeatPumpTypeHeatingDriverCompartment
+		{
+			get
+			{
+				return ElementExists(XMLNames.Bus_HeatPumpTypeHeatingDriver)
+					? HeatPumpTypeHelper.Parse(GetString(XMLNames.Bus_HeatPumpTypeHeatingDriver)) : (HeatPumpType?)null;
+			}
+		}
 
+		public override HeatPumpType? HeatPumpTypeCoolingPassengerCompartment
+		{
+			get
+			{
+				return ElementExists(XMLNames.Bus_HeatPumpTypeCoolingPassenger)
+					? HeatPumpTypeHelper.Parse(GetString(XMLNames.Bus_HeatPumpTypeCoolingPassenger)) : (HeatPumpType?)null;
+			}
+		}
 
-		public override IList<Tuple<HeatPumpType, HeatPumpMode>> HeatPumpPassengerCompartments =>
-			ElementExists(XMLNames.Bus_HeatPumpTypePassenger) 
-			&& ElementExists(XMLNames.Bus_HeatPumpModePassenger) 
-				? GetHeatPumpPassengerCompartments() : null;
-
-		private IList<Tuple<HeatPumpType, HeatPumpMode>> GetHeatPumpPassengerCompartments()
+		public override HeatPumpType? HeatPumpTypeHeatingPassengerCompartment
 		{
-			var pumpTypeNodes = GetNodes(XMLNames.Bus_HeatPumpTypePassenger);
-			var pumpModeNodes = GetNodes(XMLNames.Bus_HeatPumpModePassenger);
-			
-			if (pumpTypeNodes == null || pumpModeNodes == null)
-				return null;
-			if (pumpTypeNodes.Count != pumpModeNodes.Count )
-				return null;
-
-			var heatPumps = new List<Tuple<HeatPumpType, HeatPumpMode>>();
-
-			for (int i = 0; i < pumpTypeNodes.Count; i++) {
-				var pumpType = HeatPumpTypeHelper.Parse(pumpTypeNodes[i]?.InnerText);
-				var pumpMode = HeatPumpModeHelper.Parse(pumpModeNodes[i]?.InnerText);
-				heatPumps.Add(new Tuple<HeatPumpType, HeatPumpMode>(pumpType, pumpMode));
+			get
+			{
+				return ElementExists(XMLNames.Bus_HeatPumpTypeHeatingPassenger)
+					? HeatPumpTypeHelper.Parse(GetString(XMLNames.Bus_HeatPumpTypeHeatingPassenger)) : (HeatPumpType?)null;
 			}
-			
-			return heatPumps.Any() != true ? null : heatPumps;
 		}
 
+		#endregion
+
+
 		public override Watt AuxHeaterPower =>
 			ElementExists(XMLNames.Bus_AuxiliaryHeaterPower)
 				? GetDouble(XMLNames.Bus_AuxiliaryHeaterPower).SI<Watt>() : null;
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs
index 5e24e13149..f9f46586f3 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs
@@ -1171,16 +1171,20 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl
 	// ---------------------------------------------------------------------------------------
 	public class ConsolidatedHVACBusAuxiliariesData : ConsolidatedDataBase, IHVACBusAuxiliariesDeclarationData
 	{
+
 		public ConsolidatedHVACBusAuxiliariesData(IEnumerable<IManufacturingStageInputData> manufacturingStages)
 			: base(manufacturingStages) { }
 
 		public BusHVACSystemConfiguration? SystemConfiguration => GetHVACBusAuxPropertyValue<BusHVACSystemConfiguration?>(nameof(SystemConfiguration));
 
-		public HeatPumpType? HeatPumpTypeDriverCompartment => GetHVACBusAuxPropertyValue<HeatPumpType?>(nameof(HeatPumpTypeDriverCompartment));
 
-		public HeatPumpMode? HeatPumpModeDriverCompartment => GetHVACBusAuxPropertyValue<HeatPumpMode?>(nameof(HeatPumpModeDriverCompartment));
+		public HeatPumpType? HeatPumpTypeCoolingDriverCompartment => GetHVACBusAuxPropertyValue<HeatPumpType?>(nameof(HeatPumpTypeCoolingDriverCompartment));
+
+		public HeatPumpType? HeatPumpTypeHeatingDriverCompartment => GetHVACBusAuxPropertyValue<HeatPumpType?>(nameof(HeatPumpTypeHeatingDriverCompartment));
+
+		public HeatPumpType? HeatPumpTypeCoolingPassengerCompartment => GetHVACBusAuxPropertyValue<HeatPumpType?>(nameof(HeatPumpTypeCoolingPassengerCompartment));
 
-		public IList<Tuple<HeatPumpType, HeatPumpMode>> HeatPumpPassengerCompartments => GetHeatPumpPassengerCompartments();
+		public HeatPumpType? HeatPumpTypeHeatingPassengerCompartment => GetHVACBusAuxPropertyValue<HeatPumpType?>(nameof(HeatPumpTypeHeatingPassengerCompartment));
 
 		public Watt AuxHeaterPower => GetHVACBusAuxPropertyValue<Watt>(nameof(AuxHeaterPower));
 
@@ -1201,19 +1205,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl
 		public bool EngineWasteGasHeatExchanger { get; }
 
 
-		private IList<Tuple<HeatPumpType, HeatPumpMode>> GetHeatPumpPassengerCompartments()
-		{
-			if (_manufacturingStages?.Any() != true)
-				return null; 
-
-			foreach (var entry in _manufacturingStages) {
-				if (entry.Vehicle?.Components?.BusAuxiliaries?.HVACAux?.HeatPumpPassengerCompartments != null)
-					return entry.Vehicle.Components.BusAuxiliaries.HVACAux.HeatPumpPassengerCompartments;
-			}
-
-			return null;
-		}
-
 
 		private T GetHVACBusAuxPropertyValue<T>(string propertyName)
 		{
@@ -1252,9 +1243,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl
 		{
 			if (fullCheck) {
 				return MethodComplete(IsCorrectSystemConfiguration(), nameof(IsCorrectSystemConfiguration))
-						& InputComplete(HeatPumpTypeDriverCompartment, nameof(HeatPumpTypeDriverCompartment))
-						& InputComplete(HeatPumpModeDriverCompartment, nameof(HeatPumpModeDriverCompartment))
-						& InputComplete(HeatPumpPassengerCompartments, nameof(HeatPumpPassengerCompartments))
+						& InputComplete(HeatPumpTypeCoolingDriverCompartment, nameof(HeatPumpTypeCoolingDriverCompartment))
+						& InputComplete(HeatPumpTypeHeatingDriverCompartment, nameof(HeatPumpTypeHeatingDriverCompartment))
+						& InputComplete(HeatPumpTypeCoolingPassengerCompartment, nameof(HeatPumpTypeCoolingPassengerCompartment))
+						& InputComplete(HeatPumpTypeHeatingPassengerCompartment, nameof(HeatPumpTypeHeatingPassengerCompartment))
 						& InputComplete(AuxHeaterPower, nameof(AuxHeaterPower))
 						& InputComplete(DoubleGlazing, nameof(DoubleGlazing))
 						& InputComplete(AdjustableAuxiliaryHeater, nameof(AdjustableAuxiliaryHeater))
@@ -1262,9 +1254,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl
 						& MethodComplete(RequiredParametersForJobType(jobType), nameof(RequiredParametersForJobType));
 			}
 			return MethodComplete(IsCorrectSystemConfiguration(), nameof(IsCorrectSystemConfiguration))
-					&& InputComplete(HeatPumpTypeDriverCompartment, nameof(HeatPumpTypeDriverCompartment))
-					&& InputComplete(HeatPumpModeDriverCompartment, nameof(HeatPumpModeDriverCompartment))
-					&& InputComplete(HeatPumpPassengerCompartments, nameof(HeatPumpPassengerCompartments))
+					&& InputComplete(HeatPumpTypeCoolingDriverCompartment, nameof(HeatPumpTypeCoolingDriverCompartment))
+					&& InputComplete(HeatPumpTypeHeatingDriverCompartment, nameof(HeatPumpTypeHeatingDriverCompartment))
+					&& InputComplete(HeatPumpTypeCoolingPassengerCompartment, nameof(HeatPumpTypeCoolingPassengerCompartment))
+					&& InputComplete(HeatPumpTypeHeatingPassengerCompartment, nameof(HeatPumpTypeHeatingPassengerCompartment))
 					&& InputComplete(AuxHeaterPower, nameof(AuxHeaterPower))
 					&& InputComplete(DoubleGlazing, nameof(DoubleGlazing))
 					&& InputComplete(AdjustableAuxiliaryHeater, nameof(AdjustableAuxiliaryHeater))
diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusSpecific.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusSpecific.cs
index 3ed44c3045..043f98ee0d 100644
--- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusSpecific.cs
+++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusSpecific.cs
@@ -222,37 +222,47 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 			if (completedVehicle.NumberPassengersStandingUpperDeck == null) {
 				throw new VectoException("NumberOfPassengersStandingUpperDeck input parameter is required");
 			}
-			if (busAux.HeatPumpTypeDriverCompartment == null) {
-				throw new VectoException("HeatPumpTypeDriverCompartment input parameter is required");
+			if (busAux.HeatPumpTypeCoolingDriverCompartment == null) {
+				throw new VectoException("HeatPumpTypeCoolingDriverCompartment input parameter is required");
 			}
-			if (busAux.HeatPumpPassengerCompartments == null || busAux.HeatPumpPassengerCompartments.Count == 0) {
-				throw new VectoException("HeatPumpPassengerCompartments input parameter is required");
-			}
-			if (busAux.HeatPumpModeDriverCompartment == null || (busAux.HeatPumpTypeDriverCompartment != HeatPumpType.none && busAux.HeatPumpModeDriverCompartment.Value == HeatPumpMode.N_A)) {
-				throw new VectoException("HeatPumpTypeDriverCompartment input parameter is required");
+			if (busAux.HeatPumpTypeHeatingDriverCompartment == null) {
+				throw new VectoException("HeatPumpTypeHeatingDriverCompartment input parameter is required");
 			}
 
-			if (hvacConfiguration.RequiresDriverAC() && busAux.HeatPumpTypeDriverCompartment == HeatPumpType.none) {
-				throw new VectoException("HVAC System Configuration {0} requires DriverAC Technology", hvacConfiguration);
+			if (busAux.HeatPumpTypeCoolingPassengerCompartment == null) {
+				throw new VectoException("HeatPumpTypeCoolingPassengerCompartment input parameter is required");
 			}
+
+
+
+			//if (busAux.HeatPumpPassengerCompartments == null || busAux.HeatPumpPassengerCompartments.Count == 0) {
+			//	throw new VectoException("HeatPumpPassengerCompartments input parameter is required");
+			//}
+			//if (busAux.HeatPumpModeDriverCompartment == null || (busAux.HeatPumpTypeDriverCompartment != HeatPumpType.none && busAux.HeatPumpModeDriverCompartment.Value == HeatPumpMode.N_A)) {
+			//	throw new VectoException("HeatPumpTypeDriverCompartment input parameter is required");
+			//}
+
+			//if (hvacConfiguration.RequiresDriverAC() && busAux.HeatPumpTypeCoolingDriverCompartment == HeatPumpType.none) {
+			//	throw new VectoException("HVAC System Configuration {0} requires DriverAC Technology", hvacConfiguration);
+			//}
 			
-			if (hvacConfiguration.RequiresPassengerAC() && busAux.HeatPumpPassengerCompartments.All(x => x.Item1 == HeatPumpType.none)) {
-				throw new VectoException("HVAC System Configuration {0} requires PassengerAC Technology", hvacConfiguration);
-			}
+			//if (hvacConfiguration.RequiresPassengerAC() && busAux.HeatPumpTypeCoolingPassengerCompartment == HeatPumpType.none) {
+			//	throw new VectoException("HVAC System Configuration {0} requires PassengerAC Technology", hvacConfiguration);
+			//}
 
-			if (busAux.HeatPumpPassengerCompartments.Any(x => x.Item1 != HeatPumpType.none && x.Item2 == HeatPumpMode.N_A)) {
-                throw new VectoException("HeatPumpModePassengerCompartment input parameter is required");
-            }
+			//if (busAux.HeatPumpPassengerCompartments.Any(x => x.Item1 != HeatPumpType.none && x.Item2 == HeatPumpMode.N_A)) {
+   //             throw new VectoException("HeatPumpModePassengerCompartment input parameter is required");
+   //         }
 
-            var heatPumpTypeDriverCompartment =
-				busAux.HeatPumpModeDriverCompartment == HeatPumpMode.heating
-					? HeatPumpType.none
-					: busAux.HeatPumpTypeDriverCompartment.Value;
+   //         var heatPumpTypeDriverCompartment =
+			//	busAux.HeatPumpModeDriverCompartment == HeatPumpMode.heating
+			//		? HeatPumpType.none
+			//		: busAux.HeatPumpTypeDriverCompartment.Value;
 
-            var heatPumpTypePassengerCompartment = (
-                busAux.HeatPumpPassengerCompartments.All(x => x.Item2 == HeatPumpMode.heating)
-                    ? new[] {HeatPumpType.none}.ToList()
-                    : busAux.HeatPumpPassengerCompartments.Select(x => x.Item1).ToList()).FirstOrDefault();
+   //         var heatPumpTypePassengerCompartment = (
+   //             busAux.HeatPumpPassengerCompartments.All(x => x.Item2 == HeatPumpMode.heating)
+   //                 ? new[] {HeatPumpType.none}.ToList()
+   //                 : busAux.HeatPumpPassengerCompartments.Select(x => x.Item1).ToList()).FirstOrDefault();
 
             var internalLength = hvacConfiguration == BusHVACSystemConfiguration.Configuration2
 				? 2 * Constants.BusParameters.DriverCompartmentLength // OK
@@ -294,14 +304,24 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 			ssmInputs.HVACMaxCoolingPower = coolingPower.Item1 + coolingPower.Item2;
 
             //ToDo FK COP calculation
-            ssmInputs.HVACCompressorType = heatPumpTypePassengerCompartment; // use passenger compartment
+			var heatPumpTypePassengerCompartment = busAux.HeatPumpTypeCoolingPassengerCompartment.Value;
+			var heatPumpTypeDriverCompartment = busAux.HeatPumpTypeCoolingDriverCompartment.Value;
+
+			ssmInputs.HVACCompressorType = busAux.HeatPumpTypeCoolingPassengerCompartment.Value; // use passenger compartment
             ssmInputs.HVACTechnology = $"{busAux.SystemConfiguration.GetName()} " + 
 									   $"({string.Join(", ", heatPumpTypePassengerCompartment.GetName(), heatPumpTypeDriverCompartment.GetName())})";
 			ssmInputs.COP = DeclarationData.BusAuxiliaries.CalculateCOP(
                 coolingPower.Item1, heatPumpTypeDriverCompartment, coolingPower.Item2, heatPumpTypePassengerCompartment /* average */,
                 floorType);
 
-            return ssmInputs;
+			ssmInputs.HVACCompressorType = heatPumpTypePassengerCompartment; // use passenger compartment
+			ssmInputs.HVACTechnology = $"{busAux.SystemConfiguration.GetName()} " +
+									   $"({string.Join(", ", heatPumpTypePassengerCompartment.GetName(), heatPumpTypeDriverCompartment.GetName())})";
+			ssmInputs.COP = DeclarationData.BusAuxiliaries.CalculateCOP(
+				coolingPower.Item1, heatPumpTypeDriverCompartment, coolingPower.Item2, heatPumpTypePassengerCompartment /* average */,
+				floorType);
+
+			return ssmInputs;
 		}
 
 		
diff --git a/VectoCore/VectoCore/Models/Simulation/Impl/JobContainer.cs b/VectoCore/VectoCore/Models/Simulation/Impl/JobContainer.cs
index 51e657b772..d5ec68ba0a 100644
--- a/VectoCore/VectoCore/Models/Simulation/Impl/JobContainer.cs
+++ b/VectoCore/VectoCore/Models/Simulation/Impl/JobContainer.cs
@@ -304,13 +304,6 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
 
 		public void WaitFinished()
 		{
-			try {
-				_cancelLock.EnterReadLock();
-				System.Diagnostics.Debug.Assert(_canceled == true);
-			} finally {
-				_cancelLock.ExitReadLock();
-			}
-
 			Task[] tasks;
 			try {
 				_runsRwLock.EnterReadLock();
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLMultistageBusReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLMultistageBusReport.cs
index 7548a6139d..99899340bc 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLMultistageBusReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLMultistageBusReport.cs
@@ -498,20 +498,30 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
 				return null;
 
 			if (hvac.SystemConfiguration == null &&
-				hvac.HeatPumpModeDriverCompartment == null && hvac.HeatPumpTypeDriverCompartment == null &&
-				hvac.HeatPumpPassengerCompartments?.Any() != true && hvac.AuxHeaterPower == null && hvac.DoubleGlazing == null && 
-				hvac.AdjustableAuxiliaryHeater == null && hvac.SeparateAirDistributionDucts == null &&
-				hvac.WaterElectricHeater == null && hvac.AirElectricHeater == null && hvac.OtherHeatingTechnology == null)
+				hvac.HeatPumpTypeCoolingDriverCompartment == null &&
+				hvac.HeatPumpTypeHeatingDriverCompartment == null &&
+				hvac.HeatPumpTypeCoolingPassengerCompartment == null &&
+				hvac.HeatPumpTypeHeatingPassengerCompartment == null &&
+				hvac.AuxHeaterPower == null &&
+				hvac.DoubleGlazing == null && 
+				hvac.AdjustableAuxiliaryHeater == null &&
+				hvac.SeparateAirDistributionDucts == null &&
+				hvac.WaterElectricHeater == null &&
+				hvac.AirElectricHeater == null &&
+				hvac.OtherHeatingTechnology == null)
 				return null;
 
 			return new XElement(v28 + XMLNames.BusAux_HVAC,
 				hvac.SystemConfiguration != null
 					? new XElement(v28 + XMLNames.Bus_SystemConfiguration, hvac.SystemConfiguration.GetXmlFormat()) : null,
-				hvac.HeatPumpTypeDriverCompartment != null
-					? new XElement(v28 + XMLNames.Bus_HeatPumpTypeDriver, hvac.HeatPumpTypeDriverCompartment.GetLabel()) : null,
-				hvac.HeatPumpModeDriverCompartment != null
-					? new XElement(v28 + XMLNames.Bus_HeatPumpModeDriver, hvac.HeatPumpModeDriverCompartment.GetLabel()) : null,
-				GetHeatPumpPassengerCompartments(hvac.HeatPumpPassengerCompartments),
+				hvac.HeatPumpTypeCoolingDriverCompartment != null
+					? new XElement(v28 + XMLNames.Bus_HeatPumpTypeCoolingDriver, hvac.HeatPumpTypeCoolingDriverCompartment.GetLabel()) : null,
+				hvac.HeatPumpTypeHeatingDriverCompartment != null
+					? new XElement(v28 + XMLNames.Bus_HeatPumpTypeHeatingDriver, hvac.HeatPumpTypeHeatingDriverCompartment.GetLabel()) : null,
+				hvac.HeatPumpTypeCoolingPassengerCompartment != null
+					? new XElement(v28 + XMLNames.Bus_HeatPumpTypeCoolingPassenger, hvac.HeatPumpTypeCoolingPassengerCompartment.GetLabel()) : null,
+				hvac.HeatPumpTypeHeatingPassengerCompartment != null
+					? new XElement(v28 + XMLNames.Bus_HeatPumpTypeHeatingPassenger, hvac.HeatPumpTypeHeatingPassengerCompartment.GetLabel()) : null,
 				hvac.AuxHeaterPower != null
 					? new XElement(v28 + XMLNames.Bus_AuxiliaryHeaterPower, hvac.AuxHeaterPower.ToXMLFormat(0)) : null,
 				hvac.DoubleGlazing != null
@@ -528,22 +538,6 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
 					? new XElement(v28 + XMLNames.Bus_OtherHeatingTechnology, hvac.OtherHeatingTechnology) : null
 			);
 		}
-		
-		private IList<XElement> GetHeatPumpPassengerCompartments(IList<Tuple<HeatPumpType,HeatPumpMode>> heatPumps)
-		{
-			if (heatPumps?.Any() != true)
-				return null;
-			
-			var result = new List<XElement>();
-
-			for (int i = 0; i < heatPumps.Count; i++) {
-				result.Add(new XElement(v28 + XMLNames.Bus_HeatPumpTypePassenger, heatPumps[i].Item1.GetLabel()));
-				result.Add(new XElement(v28 + XMLNames.Bus_HeatPumpModePassenger, heatPumps[i].Item2.GetLabel()));
-			}
-
-			return result;
-		}
-
 
 		private XElement GetApplicationInformation()
 		{
diff --git a/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs b/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs
index 4b9b1971ae..f56254e62b 100644
--- a/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs
@@ -212,10 +212,11 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage
 
 			var hvac = data.Vehicle.Components.BusAuxiliaries.HVACAux;
 			Assert.AreEqual(BusHVACSystemConfiguration.Configuration1, hvac.SystemConfiguration);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvac.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(HeatPumpMode.heating, hvac.HeatPumpModeDriverCompartment);
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvac.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvac.HeatPumpPassengerCompartments[0].Item2);
+			Assert.AreEqual(HeatPumpType.R_744, hvac.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvac.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.none, hvac.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, hvac.HeatPumpTypeCoolingDriverCompartment);
+
 			Assert.AreEqual(50.SI<Watt>(), hvac.AuxHeaterPower);
 			Assert.AreEqual(false, hvac.DoubleGlazing);
 			Assert.AreEqual(true, hvac.AdjustableAuxiliaryHeater);
@@ -286,15 +287,10 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage
 			
 			var hvac = data.Vehicle.Components.BusAuxiliaries.HVACAux;
 			Assert.AreEqual(BusHVACSystemConfiguration.Configuration0, hvac.SystemConfiguration);
-			Assert.AreEqual(HeatPumpType.none, hvac.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(HeatPumpMode.heating, hvac.HeatPumpModeDriverCompartment);
-			Assert.AreEqual(3, hvac.HeatPumpPassengerCompartments.Count);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvac.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvac.HeatPumpPassengerCompartments[0].Item2);
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvac.HeatPumpPassengerCompartments[1].Item1);
-			Assert.AreEqual(HeatPumpMode.heating, hvac.HeatPumpPassengerCompartments[1].Item2);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvac.HeatPumpPassengerCompartments[2].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvac.HeatPumpPassengerCompartments[2].Item2);
+			Assert.AreEqual(HeatPumpType.none, hvac.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvac.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.R_744, hvac.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, hvac.HeatPumpTypeCoolingDriverCompartment);
 			Assert.AreEqual(50.SI<Watt>(), hvac.AuxHeaterPower);
 			Assert.AreEqual(false, hvac.DoubleGlazing);
 			Assert.AreEqual(true, hvac.AdjustableAuxiliaryHeater);
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/Multistage/vecto_vehicle-stage_input_full-sample_final_noNG.xml b/VectoCore/VectoCoreTest/TestData/Integration/Multistage/vecto_vehicle-stage_input_full-sample_final_noNG.xml
index 3e0e4ace29..139dcf61da 100644
--- a/VectoCore/VectoCoreTest/TestData/Integration/Multistage/vecto_vehicle-stage_input_full-sample_final_noNG.xml
+++ b/VectoCore/VectoCoreTest/TestData/Integration/Multistage/vecto_vehicle-stage_input_full-sample_final_noNG.xml
@@ -66,14 +66,10 @@
           </ElectricSystem>
           <HVAC>
             <SystemConfiguration>2</SystemConfiguration>
-            <HeatPumpTypeDriverCompartment>R-744</HeatPumpTypeDriverCompartment>
-            <HeatPumpModeDriverCompartment>heating</HeatPumpModeDriverCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 3-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>heating</HeatPumpModePassengerCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
+            <HeatPumpTypeCoolingDriverCompartment>R-744</HeatPumpTypeCoolingDriverCompartment>
+            <HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</HeatPumpTypeHeatingDriverCompartment>
+            <HeatPumpTypeCoolingPassengerCompartment>none</HeatPumpTypeCoolingPassengerCompartment>
+            <HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</HeatPumpTypeHeatingPassengerCompartment>
             <AuxiliaryHeaterPower>50</AuxiliaryHeaterPower>
             <DoubleGlazing>false</DoubleGlazing>
             <AdjustableAuxiliaryHeater>true</AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/Multistage/vecto_vehicle-stage_input_full-sample_interim_noNG.xml b/VectoCore/VectoCoreTest/TestData/Integration/Multistage/vecto_vehicle-stage_input_full-sample_interim_noNG.xml
index 22ca013863..886bb2ebfc 100644
--- a/VectoCore/VectoCoreTest/TestData/Integration/Multistage/vecto_vehicle-stage_input_full-sample_interim_noNG.xml
+++ b/VectoCore/VectoCoreTest/TestData/Integration/Multistage/vecto_vehicle-stage_input_full-sample_interim_noNG.xml
@@ -66,14 +66,10 @@
           </ElectricSystem>
           <HVAC>
             <SystemConfiguration>2</SystemConfiguration>
-            <HeatPumpTypeDriverCompartment>R-744</HeatPumpTypeDriverCompartment>
-            <HeatPumpModeDriverCompartment>heating</HeatPumpModeDriverCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 3-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>heating</HeatPumpModePassengerCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
+            <HeatPumpTypeCoolingDriverCompartment>R-744</HeatPumpTypeCoolingDriverCompartment>
+            <HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</HeatPumpTypeHeatingDriverCompartment>
+            <HeatPumpTypeCoolingPassengerCompartment>none</HeatPumpTypeCoolingPassengerCompartment>
+            <HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</HeatPumpTypeHeatingPassengerCompartment>
             <AuxiliaryHeaterPower>50</AuxiliaryHeaterPower>
             <DoubleGlazing>false</DoubleGlazing>
             <AdjustableAuxiliaryHeater>true</AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample.xml
index 24f2810fdf..7eb180413b 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample.xml
@@ -67,14 +67,10 @@
           </ElectricSystem>
           <HVAC>
             <SystemConfiguration>0</SystemConfiguration>
-            <HeatPumpTypeDriverCompartment>none</HeatPumpTypeDriverCompartment>
-            <HeatPumpModeDriverCompartment>heating</HeatPumpModeDriverCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 3-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>heating</HeatPumpModePassengerCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
+            <HeatPumpTypeCoolingDriverCompartment>R-744</HeatPumpTypeCoolingDriverCompartment>
+            <HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</HeatPumpTypeHeatingDriverCompartment>
+            <HeatPumpTypeCoolingPassengerCompartment>none</HeatPumpTypeCoolingPassengerCompartment>
+            <HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</HeatPumpTypeHeatingPassengerCompartment>
             <AuxiliaryHeaterPower>50</AuxiliaryHeaterPower>
             <DoubleGlazing>false</DoubleGlazing>
             <AdjustableAuxiliaryHeater>true</AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_final.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_final.xml
index 92406c44e9..0b68e87343 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_final.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_final.xml
@@ -67,14 +67,10 @@
           </ElectricSystem>
           <HVAC>
             <SystemConfiguration>2</SystemConfiguration>
-            <HeatPumpTypeDriverCompartment>R-744</HeatPumpTypeDriverCompartment>
-            <HeatPumpModeDriverCompartment>heating</HeatPumpModeDriverCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 3-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>heating</HeatPumpModePassengerCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
+            <HeatPumpTypeCoolingDriverCompartment>R-744</HeatPumpTypeCoolingDriverCompartment>
+            <HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</HeatPumpTypeHeatingDriverCompartment>
+            <HeatPumpTypeCoolingPassengerCompartment>none</HeatPumpTypeCoolingPassengerCompartment>
+            <HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</HeatPumpTypeHeatingPassengerCompartment>
             <AuxiliaryHeaterPower>50</AuxiliaryHeaterPower>
             <DoubleGlazing>false</DoubleGlazing>
             <AdjustableAuxiliaryHeater>true</AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_final_noNG.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_final_noNG.xml
index 3e0e4ace29..139dcf61da 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_final_noNG.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_final_noNG.xml
@@ -66,14 +66,10 @@
           </ElectricSystem>
           <HVAC>
             <SystemConfiguration>2</SystemConfiguration>
-            <HeatPumpTypeDriverCompartment>R-744</HeatPumpTypeDriverCompartment>
-            <HeatPumpModeDriverCompartment>heating</HeatPumpModeDriverCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 3-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>heating</HeatPumpModePassengerCompartment>
-            <HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-            <HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
+            <HeatPumpTypeCoolingDriverCompartment>R-744</HeatPumpTypeCoolingDriverCompartment>
+            <HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</HeatPumpTypeHeatingDriverCompartment>
+            <HeatPumpTypeCoolingPassengerCompartment>none</HeatPumpTypeCoolingPassengerCompartment>
+            <HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</HeatPumpTypeHeatingPassengerCompartment>
             <AuxiliaryHeaterPower>50</AuxiliaryHeaterPower>
             <DoubleGlazing>false</DoubleGlazing>
             <AdjustableAuxiliaryHeater>true</AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_group41.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_group41.xml
index 7f2549432b..1aeb419d26 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_group41.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_full-sample_group41.xml
@@ -72,10 +72,10 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationJob E:\VECTO_DEV\fk_vecto
 					</ElectricSystem>
 					<HVAC>
 						<SystemConfiguration>7</SystemConfiguration>
-						<HeatPumpTypeDriverCompartment>non R-744 2-stage</HeatPumpTypeDriverCompartment>
-						<HeatPumpModeDriverCompartment>cooling</HeatPumpModeDriverCompartment>
-						<HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
-						<HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
+						<HeatPumpTypeCoolingDriverCompartment>R-744</HeatPumpTypeCoolingDriverCompartment>
+						<HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</HeatPumpTypeHeatingDriverCompartment>
+						<HeatPumpTypeCoolingPassengerCompartment>none</HeatPumpTypeCoolingPassengerCompartment>
+						<HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</HeatPumpTypeHeatingPassengerCompartment>
 						<AuxiliaryHeaterPower>0</AuxiliaryHeaterPower>
 						<DoubleGlazing>true</DoubleGlazing>
 						<AdjustableAuxiliaryHeater>true</AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_only_certain_entries02-sample.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_only_certain_entries02-sample.xml
index 7b07d4349e..9b3029eb72 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_only_certain_entries02-sample.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.8/vecto_vehicle-stage_input_only_certain_entries02-sample.xml
@@ -1 +1,73 @@
-<?xml version="1.0" encoding="UTF-8"?>
<tns:VectoInputDeclaration schemaVersion="2.8" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.8"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationInput:v2.0" 
xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3"
xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"
xmlns:di="http://www.w3.org/2000/09/xmldsig#" 
xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationJob v:\VectoCore\VectoCore\Resources\XSD/VectoDeclarationJob.xsd">
	<v2.0:Vehicle id="VEH-1234567890" xsi:type="InterimStageInputType" >
		<Manufacturer>Some Manufacturer 2</Manufacturer>
		<ManufacturerAddress>Some Manufacturer Address 2</ManufacturerAddress>
		<VIN>VEH-1234567890</VIN>
		<Date>2020-01-09T11:00:00Z</Date>
		<Model>Sample Bus Model</Model>
		<LegislativeCategory>M3</LegislativeCategory>
		<CorrectedActualMass>500</CorrectedActualMass>
		<NgTankSystem>Compressed</NgTankSystem>
		<ClassBus>II+III</ClassBus>
		<NumberPassengerSeatsLowerDeck>5</NumberPassengerSeatsLowerDeck>
		<NumberPassengersStandingLowerDeck>15</NumberPassengersStandingLowerDeck>
		<NumberPassengerSeatsUpperDeck>10</NumberPassengerSeatsUpperDeck>
		<NumberPassengersStandingUpperDeck>6</NumberPassengersStandingUpperDeck>
		<BodyworkCode>CB</BodyworkCode>
		<LowEntry>false</LowEntry>
		<HeightIntegratedBody>2500</HeightIntegratedBody>
		<VehicleLength>9500</VehicleLength>
		<VehicleWidth>2500</VehicleWidth>
		<EntranceHeight>2000</EntranceHeight>
		<VehicleDeclarationType>interim</VehicleDeclarationType>
		<ADAS>
			<v2.3:EngineStopStart>true</v2.3:EngineStopStart>
			<v2.3:EcoRollWithoutEngineStop>false</v2.3:EcoRollWithoutEngineStop>
			<v2.3:EcoRollWithEngineStop>false</v2.3:EcoRollWithEngineStop>
			<v2.3:PredictiveCruiseControl>none</v2.3:PredictiveCruiseControl>
			<v2.3:APTEcoRollReleaseLockupClutch>true</v2.3:APTEcoRollReleaseLockupClutch>
		</ADAS>
		<Components xsi:type="CompletedVehicleComponentsDeclarationType">
			<AirDrag>
				<v2.0:Data xsi:type="v2.0:AirDragDataDeclarationType" id="CabinX23h">
					<v2.0:Manufacturer>Generic Manufacturer</v2.0:Manufacturer>
					<v2.0:Model>Generic Model</v2.0:Model>
					<v2.0:CertificationNumber>e12*0815/8051*2017/05E0000*00</v2.0:CertificationNumber>
					<v2.0:Date>2017-03-24T15:00:00Z</v2.0:Date>
					<v2.0:AppVersion>Vecto AirDrag x.y</v2.0:AppVersion>
					<v2.0:CdxA_0>6.31</v2.0:CdxA_0>
					<v2.0:TransferredCdxA>6.32</v2.0:TransferredCdxA>
					<v2.0:DeclaredCdxA>6.34</v2.0:DeclaredCdxA>
				</v2.0:Data>
				<v2.0:Signature>
					<di:Reference URI="#CabinX23h">
						<di:Transforms>
							<di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/>
							<di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
						</di:Transforms>
						<di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
						<di:DigestValue>b9SHCfOoVrBxFQ8wwDK32OO+9bd85DuaUdgs6j/29N8=</di:DigestValue>
					</di:Reference>
				</v2.0:Signature>
			</AirDrag>
			<Auxiliaries>
				<Data xsi:type="CompletedVehicleAuxiliaryDataDeclarationType">
					<HVAC>
						<SystemConfiguration>0</SystemConfiguration>
						<HeatPumpTypeDriverCompartment>none</HeatPumpTypeDriverCompartment>
						<HeatPumpModeDriverCompartment>heating</HeatPumpModeDriverCompartment>
						<HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
						<HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
					</HVAC>
				</Data>
			</Auxiliaries>
		</Components>
	</v2.0:Vehicle>
</tns:VectoInputDeclaration>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<tns:VectoInputDeclaration schemaVersion="2.8" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.8"
+xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationInput:v2.0" 
+xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3"
+xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"
+xmlns:di="http://www.w3.org/2000/09/xmldsig#" 
+xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationJob v:\VectoCore\VectoCore\Resources\XSD/VectoDeclarationJob.xsd">
+	<v2.0:Vehicle id="VEH-1234567890" xsi:type="InterimStageInputType" >
+		<Manufacturer>Some Manufacturer 2</Manufacturer>
+		<ManufacturerAddress>Some Manufacturer Address 2</ManufacturerAddress>
+		<VIN>VEH-1234567890</VIN>
+		<Date>2020-01-09T11:00:00Z</Date>
+		<Model>Sample Bus Model</Model>
+		<LegislativeCategory>M3</LegislativeCategory>
+		<CorrectedActualMass>500</CorrectedActualMass>
+		<NgTankSystem>Compressed</NgTankSystem>
+		<ClassBus>II+III</ClassBus>
+		<NumberPassengerSeatsLowerDeck>5</NumberPassengerSeatsLowerDeck>
+		<NumberPassengersStandingLowerDeck>15</NumberPassengersStandingLowerDeck>
+		<NumberPassengerSeatsUpperDeck>10</NumberPassengerSeatsUpperDeck>
+		<NumberPassengersStandingUpperDeck>6</NumberPassengersStandingUpperDeck>
+		<BodyworkCode>CB</BodyworkCode>
+		<LowEntry>false</LowEntry>
+		<HeightIntegratedBody>2500</HeightIntegratedBody>
+		<VehicleLength>9500</VehicleLength>
+		<VehicleWidth>2500</VehicleWidth>
+		<EntranceHeight>2000</EntranceHeight>
+		<VehicleDeclarationType>interim</VehicleDeclarationType>
+		<ADAS>
+			<v2.3:EngineStopStart>true</v2.3:EngineStopStart>
+			<v2.3:EcoRollWithoutEngineStop>false</v2.3:EcoRollWithoutEngineStop>
+			<v2.3:EcoRollWithEngineStop>false</v2.3:EcoRollWithEngineStop>
+			<v2.3:PredictiveCruiseControl>none</v2.3:PredictiveCruiseControl>
+			<v2.3:APTEcoRollReleaseLockupClutch>true</v2.3:APTEcoRollReleaseLockupClutch>
+		</ADAS>
+		<Components xsi:type="CompletedVehicleComponentsDeclarationType">
+			<AirDrag>
+				<v2.0:Data xsi:type="v2.0:AirDragDataDeclarationType" id="CabinX23h">
+					<v2.0:Manufacturer>Generic Manufacturer</v2.0:Manufacturer>
+					<v2.0:Model>Generic Model</v2.0:Model>
+					<v2.0:CertificationNumber>e12*0815/8051*2017/05E0000*00</v2.0:CertificationNumber>
+					<v2.0:Date>2017-03-24T15:00:00Z</v2.0:Date>
+					<v2.0:AppVersion>Vecto AirDrag x.y</v2.0:AppVersion>
+					<v2.0:CdxA_0>6.31</v2.0:CdxA_0>
+					<v2.0:TransferredCdxA>6.32</v2.0:TransferredCdxA>
+					<v2.0:DeclaredCdxA>6.34</v2.0:DeclaredCdxA>
+				</v2.0:Data>
+				<v2.0:Signature>
+					<di:Reference URI="#CabinX23h">
+						<di:Transforms>
+							<di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/>
+							<di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
+						</di:Transforms>
+						<di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
+						<di:DigestValue>b9SHCfOoVrBxFQ8wwDK32OO+9bd85DuaUdgs6j/29N8=</di:DigestValue>
+					</di:Reference>
+				</v2.0:Signature>
+			</AirDrag>
+			<Auxiliaries>
+				<Data xsi:type="CompletedVehicleAuxiliaryDataDeclarationType">
+					<HVAC>
+						<SystemConfiguration>0</SystemConfiguration>
+						<HeatPumpTypeCoolingDriverCompartment>R-744</HeatPumpTypeCoolingDriverCompartment>
+						<HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</HeatPumpTypeHeatingDriverCompartment>
+						<HeatPumpTypeCoolingPassengerCompartment>none</HeatPumpTypeCoolingPassengerCompartment>
+						<HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</HeatPumpTypeHeatingPassengerCompartment>
+					</HVAC>
+				</Data>
+			</Auxiliaries>
+		</Components>
+	</v2.0:Vehicle>
+</tns:VectoInputDeclaration>
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages.xml
index 0f1a6b00a4..8402c054ef 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages.xml
@@ -723,10 +723,10 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
 							</v2.8:ElectricSystem>
 							<v2.8:HVAC>
 								<v2.8:SystemConfiguration>1</v2.8:SystemConfiguration>
-								<v2.8:HeatPumpTypeDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeDriverCompartment>
-								<v2.8:HeatPumpModeDriverCompartment>heating</v2.8:HeatPumpModeDriverCompartment>
-								<v2.8:HeatPumpTypePassengerCompartment>non R-744 3-stage</v2.8:HeatPumpTypePassengerCompartment>
-								<v2.8:HeatPumpModePassengerCompartment>cooling</v2.8:HeatPumpModePassengerCompartment>
+								<v2.8:HeatPumpTypeCoolingDriverCompartment>R-744</v2.8:HeatPumpTypeCoolingDriverCompartment>
+								<v2.8:HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeHeatingDriverCompartment>
+								<v2.8:HeatPumpTypeCoolingPassengerCompartment>none</v2.8:HeatPumpTypeCoolingPassengerCompartment>
+								<v2.8:HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</v2.8:HeatPumpTypeHeatingPassengerCompartment>
 								<v2.8:AuxiliaryHeaterPower>50</v2.8:AuxiliaryHeaterPower>
 								<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
 								<v2.8:AdjustableAuxiliaryHeater>true</v2.8:AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_NGTankSystem.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_NGTankSystem.xml
index b497bba999..2e92cbbdf8 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_NGTankSystem.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_NGTankSystem.xml
@@ -728,10 +728,10 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
 							</v2.8:ElectricSystem>
 							<v2.8:HVAC>
 								<v2.8:SystemConfiguration>1</v2.8:SystemConfiguration>
-								<v2.8:HeatPumpTypeDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeDriverCompartment>
-								<v2.8:HeatPumpModeDriverCompartment>heating</v2.8:HeatPumpModeDriverCompartment>
-								<v2.8:HeatPumpTypePassengerCompartment>non R-744 3-stage</v2.8:HeatPumpTypePassengerCompartment>
-								<v2.8:HeatPumpModePassengerCompartment>cooling</v2.8:HeatPumpModePassengerCompartment>
+								<v2.8:HeatPumpTypeCoolingDriverCompartment>R-744</v2.8:HeatPumpTypeCoolingDriverCompartment>
+								<v2.8:HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeHeatingDriverCompartment>
+								<v2.8:HeatPumpTypeCoolingPassengerCompartment>none</v2.8:HeatPumpTypeCoolingPassengerCompartment>
+								<v2.8:HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</v2.8:HeatPumpTypeHeatingPassengerCompartment>
 								<v2.8:AuxiliaryHeaterPower>50</v2.8:AuxiliaryHeaterPower>
 								<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
 								<v2.8:AdjustableAuxiliaryHeater>true</v2.8:AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_airdrag.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_airdrag.xml
index 0ad9eb1fd6..7348c791a3 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_airdrag.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_airdrag.xml
@@ -695,10 +695,10 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
 						<v2.8:Data xsi:type="v2.8:CompletedVehicleAuxiliaryDataDeclarationType">
 							<v2.8:HVAC>
 								<v2.8:SystemConfiguration>1</v2.8:SystemConfiguration>
-								<v2.8:HeatPumpTypeDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeDriverCompartment>
-								<v2.8:HeatPumpModeDriverCompartment>heating</v2.8:HeatPumpModeDriverCompartment>
-								<v2.8:HeatPumpTypePassengerCompartment>non R-744 3-stage</v2.8:HeatPumpTypePassengerCompartment>
-								<v2.8:HeatPumpModePassengerCompartment>heating</v2.8:HeatPumpModePassengerCompartment>
+								<v2.8:HeatPumpTypeCoolingDriverCompartment>R-744</v2.8:HeatPumpTypeCoolingDriverCompartment>
+								<v2.8:HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeHeatingDriverCompartment>
+								<v2.8:HeatPumpTypeCoolingPassengerCompartment>none</v2.8:HeatPumpTypeCoolingPassengerCompartment>
+								<v2.8:HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</v2.8:HeatPumpTypeHeatingPassengerCompartment>
 								<v2.8:AuxiliaryHeaterPower>50</v2.8:AuxiliaryHeaterPower>
 								<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
 								<v2.8:AdjustableAuxiliaryHeater>true</v2.8:AdjustableAuxiliaryHeater>
@@ -764,12 +764,10 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
 							</v2.8:ElectricSystem>
 							<v2.8:HVAC>
 								<v2.8:SystemConfiguration>1</v2.8:SystemConfiguration>
-								<v2.8:HeatPumpTypeDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeDriverCompartment>
-								<v2.8:HeatPumpModeDriverCompartment>heating</v2.8:HeatPumpModeDriverCompartment>
-								<v2.8:HeatPumpTypePassengerCompartment>non R-744 3-stage</v2.8:HeatPumpTypePassengerCompartment>
-								<v2.8:HeatPumpModePassengerCompartment>cooling</v2.8:HeatPumpModePassengerCompartment>
-								<v2.8:HeatPumpTypePassengerCompartment>non R-744 2-stage</v2.8:HeatPumpTypePassengerCompartment>
-								<v2.8:HeatPumpModePassengerCompartment>heating</v2.8:HeatPumpModePassengerCompartment>
+								<v2.8:HeatPumpTypeCoolingDriverCompartment>R-744</v2.8:HeatPumpTypeCoolingDriverCompartment>
+								<v2.8:HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeHeatingDriverCompartment>
+								<v2.8:HeatPumpTypeCoolingPassengerCompartment>none</v2.8:HeatPumpTypeCoolingPassengerCompartment>
+								<v2.8:HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</v2.8:HeatPumpTypeHeatingPassengerCompartment>
 								<v2.8:AuxiliaryHeaterPower>50</v2.8:AuxiliaryHeaterPower>
 								<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
 								<v2.8:AdjustableAuxiliaryHeater>true</v2.8:AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_heatPump.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_heatPump.xml
index 03897a0f18..a7da5c1238 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_heatPump.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_heatPump.xml
@@ -723,10 +723,10 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
 							</v2.8:ElectricSystem>
 							<v2.8:HVAC>
 								<v2.8:SystemConfiguration>1</v2.8:SystemConfiguration>
-								<v2.8:HeatPumpTypeDriverCompartment>none</v2.8:HeatPumpTypeDriverCompartment>
-								<v2.8:HeatPumpModeDriverCompartment>N.A.</v2.8:HeatPumpModeDriverCompartment>
-								<v2.8:HeatPumpTypePassengerCompartment>non R-744 3-stage</v2.8:HeatPumpTypePassengerCompartment>
-								<v2.8:HeatPumpModePassengerCompartment>cooling</v2.8:HeatPumpModePassengerCompartment>
+								<v2.8:HeatPumpTypeCoolingDriverCompartment>R-744</v2.8:HeatPumpTypeCoolingDriverCompartment>
+								<v2.8:HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeHeatingDriverCompartment>
+								<v2.8:HeatPumpTypeCoolingPassengerCompartment>none</v2.8:HeatPumpTypeCoolingPassengerCompartment>
+								<v2.8:HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</v2.8:HeatPumpTypeHeatingPassengerCompartment>
 								<v2.8:AuxiliaryHeaterPower>50</v2.8:AuxiliaryHeaterPower>
 								<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
 								<v2.8:AdjustableAuxiliaryHeater>true</v2.8:AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_hev.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_hev.xml
index 2fee295570..c39b410915 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_hev.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_hev.xml
@@ -723,10 +723,10 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
 							</v2.8:ElectricSystem>
 							<v2.8:HVAC>
 								<v2.8:SystemConfiguration>1</v2.8:SystemConfiguration>
-								<v2.8:HeatPumpTypeDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeDriverCompartment>
-								<v2.8:HeatPumpModeDriverCompartment>heating</v2.8:HeatPumpModeDriverCompartment>
-								<v2.8:HeatPumpTypePassengerCompartment>non R-744 3-stage</v2.8:HeatPumpTypePassengerCompartment>
-								<v2.8:HeatPumpModePassengerCompartment>cooling</v2.8:HeatPumpModePassengerCompartment>
+								<v2.8:HeatPumpTypeCoolingDriverCompartment>R-744</v2.8:HeatPumpTypeCoolingDriverCompartment>
+								<v2.8:HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeHeatingDriverCompartment>
+								<v2.8:HeatPumpTypeCoolingPassengerCompartment>none</v2.8:HeatPumpTypeCoolingPassengerCompartment>
+								<v2.8:HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</v2.8:HeatPumpTypeHeatingPassengerCompartment>
 								<v2.8:AuxiliaryHeaterPower>50</v2.8:AuxiliaryHeaterPower>
 								<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
 								<v2.8:AdjustableAuxiliaryHeater>true</v2.8:AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_vif.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_vif.xml
index aa48d6f8c4..d702ec7267 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_vif.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_consolidated_multiple_stages_vif.xml
@@ -723,10 +723,10 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
 							</v2.8:ElectricSystem>
 							<v2.8:HVAC>
 								<v2.8:SystemConfiguration>1</v2.8:SystemConfiguration>
-								<v2.8:HeatPumpTypeDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeDriverCompartment>
-								<v2.8:HeatPumpModeDriverCompartment>heating</v2.8:HeatPumpModeDriverCompartment>
-								<v2.8:HeatPumpTypePassengerCompartment>non R-744 3-stage</v2.8:HeatPumpTypePassengerCompartment>
-								<v2.8:HeatPumpModePassengerCompartment>cooling</v2.8:HeatPumpModePassengerCompartment>
+								<v2.8:HeatPumpTypeCoolingDriverCompartment>R-744</v2.8:HeatPumpTypeCoolingDriverCompartment>
+								<v2.8:HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeHeatingDriverCompartment>
+								<v2.8:HeatPumpTypeCoolingPassengerCompartment>none</v2.8:HeatPumpTypeCoolingPassengerCompartment>
+								<v2.8:HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</v2.8:HeatPumpTypeHeatingPassengerCompartment>
 								<v2.8:AuxiliaryHeaterPower>50</v2.8:AuxiliaryHeaterPower>
 								<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
 								<v2.8:AdjustableAuxiliaryHeater>true</v2.8:AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_primary_vehicle_stage_2_3.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_primary_vehicle_stage_2_3.xml
index b164a8f8f0..46a34994b6 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_primary_vehicle_stage_2_3.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_primary_vehicle_stage_2_3.xml
@@ -712,10 +712,10 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
 							</v2.8:ElectricSystem>
 							<v2.8:HVAC>
 								<v2.8:SystemConfiguration>1</v2.8:SystemConfiguration>
-								<v2.8:HeatPumpTypeDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeDriverCompartment>
-								<v2.8:HeatPumpModeDriverCompartment>heating</v2.8:HeatPumpModeDriverCompartment>
-								<v2.8:HeatPumpTypePassengerCompartment>non R-744 3-stage</v2.8:HeatPumpTypePassengerCompartment>
-								<v2.8:HeatPumpModePassengerCompartment>cooling</v2.8:HeatPumpModePassengerCompartment>
+								<v2.8:HeatPumpTypeCoolingDriverCompartment>R-744</v2.8:HeatPumpTypeCoolingDriverCompartment>
+								<v2.8:HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeHeatingDriverCompartment>
+								<v2.8:HeatPumpTypeCoolingPassengerCompartment>none</v2.8:HeatPumpTypeCoolingPassengerCompartment>
+								<v2.8:HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</v2.8:HeatPumpTypeHeatingPassengerCompartment>
 								<v2.8:AuxiliaryHeaterPower>50</v2.8:AuxiliaryHeaterPower>
 								<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
 								<v2.8:AdjustableAuxiliaryHeater>true</v2.8:AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_primary_vehicle_stage_2_full.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_primary_vehicle_stage_2_full.xml
index d1bba98489..6482e2bdf6 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_primary_vehicle_stage_2_full.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersionMultistage.0.1/vecto_multistage_primary_vehicle_stage_2_full.xml
@@ -717,10 +717,10 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
 							</v2.8:ElectricSystem>	
 							<v2.8:HVAC>
 								<v2.8:SystemConfiguration>0</v2.8:SystemConfiguration>
-								<v2.8:HeatPumpTypeDriverCompartment>non R-744 3-stage</v2.8:HeatPumpTypeDriverCompartment>
-								<v2.8:HeatPumpModeDriverCompartment>heating</v2.8:HeatPumpModeDriverCompartment>
-								<v2.8:HeatPumpTypePassengerCompartment>non R-744 2-stage</v2.8:HeatPumpTypePassengerCompartment>
-								<v2.8:HeatPumpModePassengerCompartment>heating</v2.8:HeatPumpModePassengerCompartment>
+								<v2.8:HeatPumpTypeCoolingDriverCompartment>R-744</v2.8:HeatPumpTypeCoolingDriverCompartment>
+								<v2.8:HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeHeatingDriverCompartment>
+								<v2.8:HeatPumpTypeCoolingPassengerCompartment>none</v2.8:HeatPumpTypeCoolingPassengerCompartment>
+								<v2.8:HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</v2.8:HeatPumpTypeHeatingPassengerCompartment>
 								<v2.8:AuxiliaryHeaterPower>40</v2.8:AuxiliaryHeaterPower>
 								<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
 								<v2.8:AdjustableAuxiliaryHeater>false</v2.8:AdjustableAuxiliaryHeater>
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/vecto_vehicle-stage_input_full-sample.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/vecto_vehicle-stage_input_full-sample.xml
index ed3d847324..f6bbf4d850 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/vecto_vehicle-stage_input_full-sample.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/vecto_vehicle-stage_input_full-sample.xml
@@ -1 +1,92 @@
-<?xml version="1.0" encoding="UTF-8"?>
<tns:VectoInputDeclaration schemaVersion="2.8" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.8"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationInput:v2.0" 
xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" 
xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" 
xmlns:di="http://www.w3.org/2000/09/xmldsig#" 
xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationJob E:\VECTO_DEV\fk_vecto-dev\VectoCore\VectoCore\Resources\XSD/VectoDeclarationJob.xsd">
	<v2.0:Vehicle id="VEH-1234567890" xsi:type="InterimStageInputType">
		<Manufacturer>Some Manufacturer</Manufacturer>
		<ManufacturerAddress>Some Manufacturer Address</ManufacturerAddress>
		<VIN>VEH-1234567890</VIN>
		<Date>2020-01-09T11:00:00Z</Date>
		<Model>Sample Bus Model</Model>
		<LegislativeCategory>M3</LegislativeCategory>
		<CorrectedActualMass>500</CorrectedActualMass>
		<TechnicalPermissibleMaximumLadenMass>3500</TechnicalPermissibleMaximumLadenMass>
		<AirdragModifiedMultistage>false</AirdragModifiedMultistage>
		<NgTankSystem>Compressed</NgTankSystem>
		<ClassBus>II+III</ClassBus>
		<NumberPassengerSeatsLowerDeck>0</NumberPassengerSeatsLowerDeck>
		<NumberPassengersStandingLowerDeck>10</NumberPassengersStandingLowerDeck>
		<NumberPassengerSeatsUpperDeck>10</NumberPassengerSeatsUpperDeck>
		<NumberPassengersStandingUpperDeck>10</NumberPassengersStandingUpperDeck>
		<BodyworkCode>CB</BodyworkCode>
		<LowEntry>false</LowEntry>
		<HeightIntegratedBody>2500</HeightIntegratedBody>
		<VehicleLength>9500</VehicleLength>
		<VehicleWidth>2500</VehicleWidth>
		<EntranceHeight>2000</EntranceHeight>
		<DoorDriveTechnology>electric</DoorDriveTechnology>
		<VehicleDeclarationType>interim</VehicleDeclarationType>
		<ADAS>
			<v2.3:EngineStopStart>true</v2.3:EngineStopStart>
			<v2.3:EcoRollWithoutEngineStop>false</v2.3:EcoRollWithoutEngineStop>
			<v2.3:EcoRollWithEngineStop>false</v2.3:EcoRollWithEngineStop>
			<v2.3:PredictiveCruiseControl>none</v2.3:PredictiveCruiseControl>
			<v2.3:APTEcoRollReleaseLockupClutch>true</v2.3:APTEcoRollReleaseLockupClutch>
		</ADAS>
		<Components xsi:type="CompletedVehicleComponentsDeclarationType">
			<AirDrag>
				<v2.0:Data xsi:type="v2.0:AirDragDataDeclarationType" id="CabinX23h">
					<v2.0:Manufacturer>Generic Manufacturer</v2.0:Manufacturer>
					<v2.0:Model>Generic Model</v2.0:Model>
					<v2.0:CertificationNumber>e12*0815/8051*2017/05E0000*00</v2.0:CertificationNumber>
					<v2.0:Date>2017-03-24T15:00:00Z</v2.0:Date>
					<v2.0:AppVersion>Vecto AirDrag x.y</v2.0:AppVersion>
					<v2.0:CdxA_0>6.31</v2.0:CdxA_0>
					<v2.0:TransferredCdxA>6.32</v2.0:TransferredCdxA>
					<v2.0:DeclaredCdxA>6.34</v2.0:DeclaredCdxA>
				</v2.0:Data>
				<v2.0:Signature>
					<di:Reference URI="#CabinX23h">
						<di:Transforms>
							<di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/>
							<di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
						</di:Transforms>
						<di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
						<di:DigestValue>b9SHCfOoVrBxFQ8wwDK32OO+9bd85DuaUdgs6j/29N8=</di:DigestValue>
					</di:Reference>
				</v2.0:Signature>
			</AirDrag>
			<Auxiliaries>
				<Data xsi:type="CompletedVehicleAuxiliaryDataDeclarationType">
					<ElectricSystem>
						<LEDLights>
							<Interiorlights>false</Interiorlights>
							<Dayrunninglights>true</Dayrunninglights>
							<Positionlights>true</Positionlights>
							<Brakelights>true</Brakelights>
							<Headlights>false</Headlights>
						</LEDLights>		
					</ElectricSystem>
					<HVAC>
						<SystemConfiguration>0</SystemConfiguration>
						<HeatPumpTypeDriverCompartment>none</HeatPumpTypeDriverCompartment>
						<HeatPumpModeDriverCompartment>heating</HeatPumpModeDriverCompartment>
						<HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
						<HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
						<AuxiliaryHeaterPower>50</AuxiliaryHeaterPower>
						<DoubleGlazing>false</DoubleGlazing>
						<AdjustableAuxiliaryHeater>true</AdjustableAuxiliaryHeater>
						<SeparateAirDistributionDucts>false</SeparateAirDistributionDucts>
						<WaterElectricHeater>true</WaterElectricHeater>
						<AirElectricHeater>false</AirElectricHeater>
						<OtherHeatingTechnology>false</OtherHeatingTechnology>			
					</HVAC>
				</Data>
			</Auxiliaries>
		</Components>
	</v2.0:Vehicle>
</tns:VectoInputDeclaration>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<tns:VectoInputDeclaration schemaVersion="2.8" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.8"
+xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationInput:v2.0" 
+xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" 
+xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" 
+xmlns:di="http://www.w3.org/2000/09/xmldsig#" 
+xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationJob E:\VECTO_DEV\fk_vecto-dev\VectoCore\VectoCore\Resources\XSD/VectoDeclarationJob.xsd">
+	<v2.0:Vehicle id="VEH-1234567890" xsi:type="InterimStageInputType">
+		<Manufacturer>Some Manufacturer</Manufacturer>
+		<ManufacturerAddress>Some Manufacturer Address</ManufacturerAddress>
+		<VIN>VEH-1234567890</VIN>
+		<Date>2020-01-09T11:00:00Z</Date>
+		<Model>Sample Bus Model</Model>
+		<LegislativeCategory>M3</LegislativeCategory>
+		<CorrectedActualMass>500</CorrectedActualMass>
+		<TechnicalPermissibleMaximumLadenMass>3500</TechnicalPermissibleMaximumLadenMass>
+		<AirdragModifiedMultistage>false</AirdragModifiedMultistage>
+		<NgTankSystem>Compressed</NgTankSystem>
+		<ClassBus>II+III</ClassBus>
+		<NumberPassengerSeatsLowerDeck>0</NumberPassengerSeatsLowerDeck>
+		<NumberPassengersStandingLowerDeck>10</NumberPassengersStandingLowerDeck>
+		<NumberPassengerSeatsUpperDeck>10</NumberPassengerSeatsUpperDeck>
+		<NumberPassengersStandingUpperDeck>10</NumberPassengersStandingUpperDeck>
+		<BodyworkCode>CB</BodyworkCode>
+		<LowEntry>false</LowEntry>
+		<HeightIntegratedBody>2500</HeightIntegratedBody>
+		<VehicleLength>9500</VehicleLength>
+		<VehicleWidth>2500</VehicleWidth>
+		<EntranceHeight>2000</EntranceHeight>
+		<DoorDriveTechnology>electric</DoorDriveTechnology>
+		<VehicleDeclarationType>interim</VehicleDeclarationType>
+		<ADAS>
+			<v2.3:EngineStopStart>true</v2.3:EngineStopStart>
+			<v2.3:EcoRollWithoutEngineStop>false</v2.3:EcoRollWithoutEngineStop>
+			<v2.3:EcoRollWithEngineStop>false</v2.3:EcoRollWithEngineStop>
+			<v2.3:PredictiveCruiseControl>none</v2.3:PredictiveCruiseControl>
+			<v2.3:APTEcoRollReleaseLockupClutch>true</v2.3:APTEcoRollReleaseLockupClutch>
+		</ADAS>
+		<Components xsi:type="CompletedVehicleComponentsDeclarationType">
+			<AirDrag>
+				<v2.0:Data xsi:type="v2.0:AirDragDataDeclarationType" id="CabinX23h">
+					<v2.0:Manufacturer>Generic Manufacturer</v2.0:Manufacturer>
+					<v2.0:Model>Generic Model</v2.0:Model>
+					<v2.0:CertificationNumber>e12*0815/8051*2017/05E0000*00</v2.0:CertificationNumber>
+					<v2.0:Date>2017-03-24T15:00:00Z</v2.0:Date>
+					<v2.0:AppVersion>Vecto AirDrag x.y</v2.0:AppVersion>
+					<v2.0:CdxA_0>6.31</v2.0:CdxA_0>
+					<v2.0:TransferredCdxA>6.32</v2.0:TransferredCdxA>
+					<v2.0:DeclaredCdxA>6.34</v2.0:DeclaredCdxA>
+				</v2.0:Data>
+				<v2.0:Signature>
+					<di:Reference URI="#CabinX23h">
+						<di:Transforms>
+							<di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/>
+							<di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
+						</di:Transforms>
+						<di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
+						<di:DigestValue>b9SHCfOoVrBxFQ8wwDK32OO+9bd85DuaUdgs6j/29N8=</di:DigestValue>
+					</di:Reference>
+				</v2.0:Signature>
+			</AirDrag>
+			<Auxiliaries>
+				<Data xsi:type="CompletedVehicleAuxiliaryDataDeclarationType">
+					<ElectricSystem>
+						<LEDLights>
+							<Interiorlights>false</Interiorlights>
+							<Dayrunninglights>true</Dayrunninglights>
+							<Positionlights>true</Positionlights>
+							<Brakelights>true</Brakelights>
+							<Headlights>false</Headlights>
+						</LEDLights>		
+					</ElectricSystem>
+					<HVAC>
+						<SystemConfiguration>0</SystemConfiguration>
+						<HeatPumpTypeCoolingDriverCompartment>R-744</HeatPumpTypeCoolingDriverCompartment>
+						<HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</HeatPumpTypeHeatingDriverCompartment>
+						<HeatPumpTypeCoolingPassengerCompartment>none</HeatPumpTypeCoolingPassengerCompartment>
+						<HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</HeatPumpTypeHeatingPassengerCompartment>
+						<AuxiliaryHeaterPower>50</AuxiliaryHeaterPower>
+						<DoubleGlazing>false</DoubleGlazing>
+						<AdjustableAuxiliaryHeater>true</AdjustableAuxiliaryHeater>
+						<SeparateAirDistributionDucts>false</SeparateAirDistributionDucts>
+						<WaterElectricHeater>true</WaterElectricHeater>
+						<AirElectricHeater>false</AirElectricHeater>
+						<OtherHeatingTechnology>false</OtherHeatingTechnology>			
+					</HVAC>
+				</Data>
+			</Auxiliaries>
+		</Components>
+	</v2.0:Vehicle>
+</tns:VectoInputDeclaration>
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/vecto_vehicle-stage_input_only_certain_entries02-sample.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/vecto_vehicle-stage_input_only_certain_entries02-sample.xml
index 67b138e728..493e6d4693 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/vecto_vehicle-stage_input_only_certain_entries02-sample.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/vecto_vehicle-stage_input_only_certain_entries02-sample.xml
@@ -1 +1,73 @@
-<?xml version="1.0" encoding="UTF-8"?>
<tns:VectoInputDeclaration schemaVersion="2.8" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.8"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationInput:v2.0" 
xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3"
xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"
xmlns:di="http://www.w3.org/2000/09/xmldsig#" 
xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationJob E:\VECTO_DEV\fk_vecto-dev\VectoCore\VectoCore\Resources\XSD/VectoDeclarationJob.xsd">
	<v2.0:Vehicle id="VEH-1234567890" xsi:type="InterimStageInputType" >
		<Manufacturer>Some Manufacturer 2</Manufacturer>
		<ManufacturerAddress>Some Manufacturer Address 2</ManufacturerAddress>
		<VIN>VEH-1234567890</VIN>
		<Date>2020-01-09T11:00:00Z</Date>
		<Model>Sample Bus Model</Model>
		<LegislativeCategory>M3</LegislativeCategory>
		<CorrectedActualMass>500</CorrectedActualMass>
		<NgTankSystem>Compressed</NgTankSystem>
		<ClassBus>II+III</ClassBus>
		<NumberPassengerSeatsLowerDeck>0</NumberPassengerSeatsLowerDeck>
		<NumberPassengersStandingLowerDeck>5</NumberPassengersStandingLowerDeck>
		<NumberPassengerSeatsUpperDeck>10</NumberPassengerSeatsUpperDeck>
		<NumberPassengersStandingUpperDeck>0</NumberPassengersStandingUpperDeck>
		<BodyworkCode>CB</BodyworkCode>
		<LowEntry>false</LowEntry>
		<HeightIntegratedBody>2500</HeightIntegratedBody>
		<VehicleLength>9500</VehicleLength>
		<VehicleWidth>2500</VehicleWidth>
		<EntranceHeight>2000</EntranceHeight>
		<VehicleDeclarationType>interim</VehicleDeclarationType>
		<ADAS>
			<v2.3:EngineStopStart>true</v2.3:EngineStopStart>
			<v2.3:EcoRollWithoutEngineStop>false</v2.3:EcoRollWithoutEngineStop>
			<v2.3:EcoRollWithEngineStop>false</v2.3:EcoRollWithEngineStop>
			<v2.3:PredictiveCruiseControl>none</v2.3:PredictiveCruiseControl>
			<v2.3:APTEcoRollReleaseLockupClutch>true</v2.3:APTEcoRollReleaseLockupClutch>
		</ADAS>
		<Components xsi:type="CompletedVehicleComponentsDeclarationType">
			<AirDrag>
				<v2.0:Data xsi:type="v2.0:AirDragDataDeclarationType" id="CabinX23h">
					<v2.0:Manufacturer>Generic Manufacturer</v2.0:Manufacturer>
					<v2.0:Model>Generic Model</v2.0:Model>
					<v2.0:CertificationNumber>e12*0815/8051*2017/05E0000*00</v2.0:CertificationNumber>
					<v2.0:Date>2017-03-24T15:00:00Z</v2.0:Date>
					<v2.0:AppVersion>Vecto AirDrag x.y</v2.0:AppVersion>
					<v2.0:CdxA_0>6.31</v2.0:CdxA_0>
					<v2.0:TransferredCdxA>6.32</v2.0:TransferredCdxA>
					<v2.0:DeclaredCdxA>6.34</v2.0:DeclaredCdxA>
				</v2.0:Data>
				<v2.0:Signature>
					<di:Reference URI="#CabinX23h">
						<di:Transforms>
							<di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/>
							<di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
						</di:Transforms>
						<di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
						<di:DigestValue>b9SHCfOoVrBxFQ8wwDK32OO+9bd85DuaUdgs6j/29N8=</di:DigestValue>
					</di:Reference>
				</v2.0:Signature>
			</AirDrag>
			<Auxiliaries>
				<Data xsi:type="CompletedVehicleAuxiliaryDataDeclarationType">
					<HVAC>
						<SystemConfiguration>0</SystemConfiguration>
						<HeatPumpTypeDriverCompartment>none</HeatPumpTypeDriverCompartment>
						<HeatPumpModeDriverCompartment>heating</HeatPumpModeDriverCompartment>
						<HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
						<HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
					</HVAC>
				</Data>
			</Auxiliaries>
		</Components>
	</v2.0:Vehicle>
</tns:VectoInputDeclaration>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<tns:VectoInputDeclaration schemaVersion="2.8" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.8"
+xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+xmlns:tns="urn:tugraz:ivt:VectoAPI:DeclarationInput:v2.0" 
+xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3"
+xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0"
+xmlns:di="http://www.w3.org/2000/09/xmldsig#" 
+xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationJob E:\VECTO_DEV\fk_vecto-dev\VectoCore\VectoCore\Resources\XSD/VectoDeclarationJob.xsd">
+	<v2.0:Vehicle id="VEH-1234567890" xsi:type="InterimStageInputType" >
+		<Manufacturer>Some Manufacturer 2</Manufacturer>
+		<ManufacturerAddress>Some Manufacturer Address 2</ManufacturerAddress>
+		<VIN>VEH-1234567890</VIN>
+		<Date>2020-01-09T11:00:00Z</Date>
+		<Model>Sample Bus Model</Model>
+		<LegislativeCategory>M3</LegislativeCategory>
+		<CorrectedActualMass>500</CorrectedActualMass>
+		<NgTankSystem>Compressed</NgTankSystem>
+		<ClassBus>II+III</ClassBus>
+		<NumberPassengerSeatsLowerDeck>0</NumberPassengerSeatsLowerDeck>
+		<NumberPassengersStandingLowerDeck>5</NumberPassengersStandingLowerDeck>
+		<NumberPassengerSeatsUpperDeck>10</NumberPassengerSeatsUpperDeck>
+		<NumberPassengersStandingUpperDeck>0</NumberPassengersStandingUpperDeck>
+		<BodyworkCode>CB</BodyworkCode>
+		<LowEntry>false</LowEntry>
+		<HeightIntegratedBody>2500</HeightIntegratedBody>
+		<VehicleLength>9500</VehicleLength>
+		<VehicleWidth>2500</VehicleWidth>
+		<EntranceHeight>2000</EntranceHeight>
+		<VehicleDeclarationType>interim</VehicleDeclarationType>
+		<ADAS>
+			<v2.3:EngineStopStart>true</v2.3:EngineStopStart>
+			<v2.3:EcoRollWithoutEngineStop>false</v2.3:EcoRollWithoutEngineStop>
+			<v2.3:EcoRollWithEngineStop>false</v2.3:EcoRollWithEngineStop>
+			<v2.3:PredictiveCruiseControl>none</v2.3:PredictiveCruiseControl>
+			<v2.3:APTEcoRollReleaseLockupClutch>true</v2.3:APTEcoRollReleaseLockupClutch>
+		</ADAS>
+		<Components xsi:type="CompletedVehicleComponentsDeclarationType">
+			<AirDrag>
+				<v2.0:Data xsi:type="v2.0:AirDragDataDeclarationType" id="CabinX23h">
+					<v2.0:Manufacturer>Generic Manufacturer</v2.0:Manufacturer>
+					<v2.0:Model>Generic Model</v2.0:Model>
+					<v2.0:CertificationNumber>e12*0815/8051*2017/05E0000*00</v2.0:CertificationNumber>
+					<v2.0:Date>2017-03-24T15:00:00Z</v2.0:Date>
+					<v2.0:AppVersion>Vecto AirDrag x.y</v2.0:AppVersion>
+					<v2.0:CdxA_0>6.31</v2.0:CdxA_0>
+					<v2.0:TransferredCdxA>6.32</v2.0:TransferredCdxA>
+					<v2.0:DeclaredCdxA>6.34</v2.0:DeclaredCdxA>
+				</v2.0:Data>
+				<v2.0:Signature>
+					<di:Reference URI="#CabinX23h">
+						<di:Transforms>
+							<di:Transform Algorithm="urn:vecto:xml:2017:canonicalization"/>
+							<di:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
+						</di:Transforms>
+						<di:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
+						<di:DigestValue>b9SHCfOoVrBxFQ8wwDK32OO+9bd85DuaUdgs6j/29N8=</di:DigestValue>
+					</di:Reference>
+				</v2.0:Signature>
+			</AirDrag>
+			<Auxiliaries>
+				<Data xsi:type="CompletedVehicleAuxiliaryDataDeclarationType">
+					<HVAC>
+						<SystemConfiguration>0</SystemConfiguration>
+						<HeatPumpTypeCoolingDriverCompartment>R-744</HeatPumpTypeCoolingDriverCompartment>
+						<HeatPumpTypeHeatingDriverCompartment>non R-744 2-stage</HeatPumpTypeHeatingDriverCompartment>
+						<HeatPumpTypeCoolingPassengerCompartment>none</HeatPumpTypeCoolingPassengerCompartment>
+						<HeatPumpTypeHeatingPassengerCompartment>non R-744 continuous</HeatPumpTypeHeatingPassengerCompartment>
+					</HVAC>
+				</Data>
+			</Auxiliaries>
+		</Components>
+	</v2.0:Vehicle>
+</tns:VectoInputDeclaration>
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs b/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs
index 50fba39851..de9f6ad8c9 100644
--- a/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs
@@ -90,11 +90,10 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var busHVACAux = vehicle.Components.BusAuxiliaries.HVACAux;
 			Assert.AreEqual(BusHVACSystemConfiguration.Configuration1, busHVACAux.SystemConfiguration);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, busHVACAux.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(HeatPumpMode.heating, busHVACAux.HeatPumpModeDriverCompartment);
-			Assert.AreEqual(1, busHVACAux.HeatPumpPassengerCompartments.Count);
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, busHVACAux.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, busHVACAux.HeatPumpPassengerCompartments[0].Item2);
+			Assert.AreEqual(HeatPumpType.R_744, busHVACAux.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, busHVACAux.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.none, busHVACAux.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, busHVACAux.HeatPumpTypeHeatingPassengerCompartment);
 			Assert.AreEqual(50, busHVACAux.AuxHeaterPower.Value());
 			Assert.AreEqual(false, busHVACAux.DoubleGlazing);
 			Assert.AreEqual(true, busHVACAux.AdjustableAuxiliaryHeater);
@@ -204,13 +203,10 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux;
 			Assert.NotNull(hvaux);
-			Assert.AreEqual(HeatPumpMode.heating, hvaux.HeatPumpModeDriverCompartment);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(2, hvaux.HeatPumpPassengerCompartments.Count);
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvaux.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvaux.HeatPumpPassengerCompartments[0].Item2);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpPassengerCompartments[1].Item1);
-			Assert.AreEqual(HeatPumpMode.heating, hvaux.HeatPumpPassengerCompartments[1].Item2);
+			Assert.AreEqual(HeatPumpType.R_744, hvaux.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.none, hvaux.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, hvaux.HeatPumpTypeHeatingPassengerCompartment);
 
 			Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
 		}
@@ -223,11 +219,10 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux;
 			Assert.NotNull(hvaux);
-			Assert.AreEqual(HeatPumpMode.N_A, hvaux.HeatPumpModeDriverCompartment);
-			Assert.AreEqual(HeatPumpType.none, hvaux.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(1, hvaux.HeatPumpPassengerCompartments.Count);
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvaux.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvaux.HeatPumpPassengerCompartments[0].Item2);
+			Assert.AreEqual(HeatPumpType.R_744, hvaux.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.none, hvaux.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, hvaux.HeatPumpTypeHeatingPassengerCompartment);
 
 			Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
 		}
@@ -240,11 +235,10 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux;
 			Assert.NotNull(hvaux);
-			Assert.AreEqual(HeatPumpMode.heating, hvaux.HeatPumpModeDriverCompartment);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(1, hvaux.HeatPumpPassengerCompartments.Count);
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvaux.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvaux.HeatPumpPassengerCompartments[0].Item2);
+			Assert.AreEqual(HeatPumpType.R_744, hvaux.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.none, hvaux.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, hvaux.HeatPumpTypeHeatingPassengerCompartment);
 
 			Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
 		}
@@ -257,11 +251,10 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux;
 			Assert.NotNull(hvaux);
-			Assert.AreEqual(HeatPumpMode.heating, hvaux.HeatPumpModeDriverCompartment);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(1, hvaux.HeatPumpPassengerCompartments.Count);
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvaux.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvaux.HeatPumpPassengerCompartments[0].Item2);
+			Assert.AreEqual(HeatPumpType.R_744, hvaux.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.none, hvaux.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, hvaux.HeatPumpTypeHeatingPassengerCompartment);
 
 
 			Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
diff --git a/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs b/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs
index 3f32009dea..aa9b96903d 100644
--- a/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs
@@ -630,11 +630,10 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var hvacAux = vehicleData.Components.BusAuxiliaries.HVACAux;
 			Assert.AreEqual(BusHVACSystemConfiguration.Configuration1, hvacAux.SystemConfiguration);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(HeatPumpMode.heating, hvacAux.HeatPumpModeDriverCompartment);
-			Assert.AreEqual(1, hvacAux.HeatPumpPassengerCompartments.Count);
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvacAux.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvacAux.HeatPumpPassengerCompartments[0].Item2);
+			Assert.AreEqual(HeatPumpType.R_744, hvacAux.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.none, hvacAux.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, hvacAux.HeatPumpTypeHeatingPassengerCompartment);
 			Assert.AreEqual(50.SI<Watt>(), hvacAux.AuxHeaterPower);
 			Assert.AreEqual(false, hvacAux.DoubleGlazing);
 			Assert.AreEqual(true, hvacAux.AdjustableAuxiliaryHeater);
@@ -746,11 +745,10 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var hvacAux = busAux.HVACAux;
 			Assert.AreEqual(BusHVACSystemConfiguration.Configuration0, hvacAux.SystemConfiguration);
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvacAux.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(HeatPumpMode.heating, hvacAux.HeatPumpModeDriverCompartment);
-			Assert.AreEqual(1, hvacAux.HeatPumpPassengerCompartments.Count);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.heating, hvacAux.HeatPumpPassengerCompartments[0].Item2);
+			Assert.AreEqual(HeatPumpType.R_744, hvacAux.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.none, hvacAux.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, hvacAux.HeatPumpTypeHeatingPassengerCompartment);
 			Assert.AreEqual(40.SI<Watt>(), hvacAux.AuxHeaterPower);
 			Assert.AreEqual(false, hvacAux.DoubleGlazing);
 			Assert.AreEqual(false, hvacAux.AdjustableAuxiliaryHeater);
diff --git a/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputDataTest.cs b/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputDataTest.cs
index 04127d5f4f..6f5891306f 100644
--- a/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputDataTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputDataTest.cs
@@ -121,15 +121,10 @@ namespace TUGraz.VectoCore.Tests.XML
 		private void TestHVACComponent(IHVACBusAuxiliariesDeclarationData hvacAux)
 		{
 			Assert.AreEqual(BusHVACSystemConfiguration.Configuration0, hvacAux.SystemConfiguration);
-			Assert.AreEqual(HeatPumpType.none, hvacAux.HeatPumpTypeDriverCompartment);
-			Assert.AreEqual(HeatPumpMode.heating, hvacAux.HeatPumpModeDriverCompartment);
-			Assert.AreEqual(3, hvacAux.HeatPumpPassengerCompartments.Count);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpPassengerCompartments[0].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvacAux.HeatPumpPassengerCompartments[0].Item2);
-			Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvacAux.HeatPumpPassengerCompartments[1].Item1);
-			Assert.AreEqual(HeatPumpMode.heating, hvacAux.HeatPumpPassengerCompartments[1].Item2);
-			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpPassengerCompartments[2].Item1);
-			Assert.AreEqual(HeatPumpMode.cooling, hvacAux.HeatPumpPassengerCompartments[2].Item2);
+			Assert.AreEqual(HeatPumpType.R_744, hvacAux.HeatPumpTypeCoolingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpTypeHeatingDriverCompartment);
+			Assert.AreEqual(HeatPumpType.none, hvacAux.HeatPumpTypeCoolingPassengerCompartment);
+			Assert.AreEqual(HeatPumpType.non_R_744_continuous, hvacAux.HeatPumpTypeHeatingPassengerCompartment);
 			Assert.AreEqual(50, hvacAux.AuxHeaterPower.Value());
 			Assert.AreEqual(false, hvacAux.DoubleGlazing);
 			Assert.AreEqual(true, hvacAux.AdjustableAuxiliaryHeater);
-- 
GitLab