diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/SSMTOOLTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/SSMTOOLTests.vb
index c539ab78fa426334ad496dd97a494c3637a18869..e2f937efc4278f3aae0f4e3a51135d98a046e323 100644
--- a/VECTOAux/VectoAuxiliariesTests/UnitTests/SSMTOOLTests.vb
+++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/SSMTOOLTests.vb
@@ -95,7 +95,7 @@ Namespace UnitTests
 
             Dim dao = New GenericCompletedBusAuxiliaryDataAdapter()
             Dim target As ISSMDeclarationInputs = dao.CreateSSMModelParameters(auxInput, mission, LoadingType.ReferenceLoad, mission.BusParameter.HVACConventional.HVACConfiguration,
-                                                                               HeatPumpType.none, mission.BusParameter.HVACConventional.HeatPumpTypePassengerCompartmentCooling, mission.BusParameter.HVACConventional.HVACAuxHeaterPower, FuelData.Diesel)
+                                                                               HeatPumpType.none, mission.BusParameter.HVACConventional.HeatPumpTypePassengerCompartmentCooling, mission.BusParameter.HVACConventional.HVACAuxHeaterPower, FuelData.Diesel, true)
 
             If section = "BusParameterisation" Then
                 'BUS Parameterisation
@@ -605,7 +605,7 @@ Namespace UnitTests
 
             Dim dao = New GenericCompletedBusAuxiliaryDataAdapter()
             Dim params as ISSMDeclarationInputs = dao.CreateSSMModelParameters(auxInput, mission, LoadingType.ReferenceLoad, mission.BusParameter.HVACConventional.HVACConfiguration,
-                                                                                             HeatPumpType.none, mission.BusParameter.HVACConventional.HeatPumpTypePassengerCompartmentCooling, mission.BusParameter.HVACConventional.HVACAuxHeaterPower, FuelData.Diesel)
+                                                                                             HeatPumpType.none, mission.BusParameter.HVACConventional.HeatPumpTypePassengerCompartmentCooling, mission.BusParameter.HVACConventional.HVACAuxHeaterPower, FuelData.Diesel, true)
 
             Dim target As SSMTOOL = New SSMTOOL(params)
 
diff --git a/VectoCommon/VectoCommon/BusAuxiliaries/HeatingDistributionCase.cs b/VectoCommon/VectoCommon/BusAuxiliaries/HeatingDistributionCase.cs
index 05dbbecd69e892917a8bf79523af0472659a039e..83f6e6df5a749a2acd777fdcbece0b5d73ef606c 100644
--- a/VectoCommon/VectoCommon/BusAuxiliaries/HeatingDistributionCase.cs
+++ b/VectoCommon/VectoCommon/BusAuxiliaries/HeatingDistributionCase.cs
@@ -4,7 +4,7 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.HVAC
 {
     public enum HeatingDistributionCase
     {
-        HeatingDistribution1,
+        HeatingDistribution1 = 1,
         HeatingDistribution2,
         HeatingDistribution3,
         HeatingDistribution4,
@@ -16,6 +16,8 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.HVAC
         HeatingDistribution10,
         HeatingDistribution11,
         HeatingDistribution12,
+
+        HeatingDistribution_NotAvailable_,
     }
 
 	public static class HeatingDistributionCaseHelper
diff --git a/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs b/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs
index 8fe0e1977dd98ed312ec05cdf69fa375386d12fc..5dfdd28829d6b8337af660cb4c3ecf3765eb29fc 100644
--- a/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs
+++ b/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs
@@ -84,6 +84,8 @@ namespace TUGraz.VectoCommon.InputData
 	{
 		IVehicleDeclarationInputData PrimaryVehicle { get; }
 		IVehicleDeclarationInputData CompletedVehicle { get; }
+
+		XElement XMLHashCompleted { get; }
 	}
 
 	
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs
index acba8e4901ab370aa6dcfd258e50a77c2eb07c77..b6f7320d601259b920a86a2c3676e775815833a7 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs
@@ -954,7 +954,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 	public class JSONInputDataSingleBusV6 : JSONFile, ISingleBusInputDataProvider, IDeclarationJobInputData
 	{
 		private readonly IXMLInputDataReader _xmlInputReader;
-
+		
 		public JSONInputDataSingleBusV6(JObject data, string filename, bool tolerateMissing = false) : base(
 			data, filename, tolerateMissing)
 		{
@@ -964,19 +964,23 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			var primaryInputData = Path.Combine(BasePath,  Body.GetEx<string>(JsonKeys.PrimaryVehicle));
 			var completedInputData = Path.Combine(BasePath,  Body.GetEx<string>("CompletedVehicle"));
 
-			PrimaryVehicle = CreateReader(primaryInputData);
-			CompletedVehicle = CreateReader(completedInputData);
+			var primaryJob = CreateReader(primaryInputData);
+			PrimaryVehicle = primaryJob.JobInputData.Vehicle;
+			XMLHash = primaryJob.XMLHash;
+			var completedJob = CreateReader(completedInputData);
+			CompletedVehicle = completedJob.JobInputData.Vehicle;
+			XMLHashCompleted = completedJob.XMLHash;
 
 			JobName = CompletedVehicle.VIN;
 		}
 
-		private IVehicleDeclarationInputData CreateReader(string vehicleFileName)
+		private IDeclarationInputDataProvider CreateReader(string vehicleFileName)
 		{
 			if (Path.GetExtension(vehicleFileName) != ".xml") {
 				throw new VectoException("unsupported vehicle file format {0}", vehicleFileName);
 			}
 
-			return _xmlInputReader.CreateDeclaration(vehicleFileName).JobInputData.Vehicle;
+			return _xmlInputReader.CreateDeclaration(vehicleFileName);
 
 		}
 
@@ -997,7 +1001,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		public IDeclarationJobInputData JobInputData => this;
 		public virtual IPrimaryVehicleInformationInputDataProvider PrimaryVehicleData => null;
-		public XElement XMLHash => new XElement(XMLNames.DI_Signature);
+		public XElement XMLHash { get; }
+		public XElement XMLHashCompleted { get; }
 
 		#endregion
 
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/AbstractDeclarationMultistageBusVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/AbstractDeclarationMultistageBusVectoRunDataFactory.cs
index 94a915835788f1149da57c3e58b77f1e470eaacf..c8b8eb28566e295d4fc31a4cd009231a5e3e8900 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/AbstractDeclarationMultistageBusVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/AbstractDeclarationMultistageBusVectoRunDataFactory.cs
@@ -39,7 +39,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
 			var vehicle = InputDataProvider.MultistageJobInputData.JobInputData.PrimaryVehicle.Vehicle;
 			var powertrainConfig = CreateVectoRunData(vehicle, 0, null, new KeyValuePair<LoadingType, Tuple<Kilogram, double?>>());
 			var fuels = new List<List<FuelData.Entry>>();
-			Report.InitializeReport(powertrainConfig, fuels);
+			Report.InitializeReport(powertrainConfig);
 		}
 	}
 }
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/AbstractDeclarationVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/AbstractDeclarationVectoRunDataFactory.cs
index 0355db2503de82aaacb384f92891c12e3bbdda54..c244f448ba4bccc27de2d1efba01ba6a8ff52e65 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/AbstractDeclarationVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/AbstractDeclarationVectoRunDataFactory.cs
@@ -88,20 +88,16 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl {
 		protected virtual void InitializeReport()
 		{
 			VectoRunData powertrainConfig;
-			List<List<FuelData.Entry>> fuels;
 			var vehicle = InputDataProvider.JobInputData.Vehicle;
 			if (vehicle.ExemptedVehicle) {
 				powertrainConfig = CreateVectoRunData(vehicle, null, new KeyValuePair<LoadingType, Tuple<Kilogram, double?>>(), 0);
-				fuels = new List<List<FuelData.Entry>>();
 			} else {
 				powertrainConfig = _segment.Missions.Select(
 												mission => CreateVectoRunData(
 													vehicle, mission, mission.Loadings.First(), 0))
 											.FirstOrDefault(x => x != null);
-				fuels = vehicle.Components.EngineInputData.EngineModes.Select(x => x.Fuels.Select(f => DeclarationData.FuelData.Lookup(f.FuelType, vehicle.TankSystem)).ToList())
-								.ToList();
 			}
-			Report.InitializeReport(powertrainConfig, fuels);
+			Report.InitializeReport(powertrainConfig);
 		}
 
 		//protected virtual PTOData CreateDefaultPTOData()
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/AbstractVTPModeVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/AbstractVTPModeVectoRunDataFactory.cs
index eb02e2d71d55d28a2f10c53be36b7d18ac9a06fb..bdb48eb4383cc4e0fb5750c5ae06d16a379a2ed5 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/AbstractVTPModeVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/AbstractVTPModeVectoRunDataFactory.cs
@@ -76,7 +76,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl {
 										x => x.Fuels.Select(f => DeclarationData.FuelData.Lookup(f.FuelType, JobInputData.Vehicle.TankSystem))
 											.ToList())
 									.ToList();
-			Report.InitializeReport(powertrainConfig, fuels);
+			Report.InitializeReport(powertrainConfig);
 		}
 
 		protected abstract IEnumerable<VectoRunData.AuxData> GetAuxiliaryData(MissionType missionType);
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs
index 86e48c4d08b341b8cce3dfe55c976850fb6baf14..210bd7c0d3174aae651257e99f3e08b74ce6d7fb 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/CompletedBusRunDataFactory/DeclarationModeCompletedBusRunDataFactory.cs
@@ -69,7 +69,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl.DeclarationMode.CompletedBusRun
 								mission, mission.Loadings.First(), 0))
 						.FirstOrDefault(x => x != null);
 
-				Report.InitializeReport(powertrainConfig, new List<List<FuelData.Entry>>());
+				Report.InitializeReport(powertrainConfig);
 			}
 
 			private VectoRunData GetExemptedVectoRunData()
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/SingleBus/DeclarationModeSingleBusVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/SingleBus/DeclarationModeSingleBusVectoRunDataFactory.cs
index 84376c00abf7166033e1e269ab9c6efd4bfeccbb..fb277f8b0c167bebd870d56ca8bc2620dae0652f 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/SingleBus/DeclarationModeSingleBusVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationMode/SingleBus/DeclarationModeSingleBusVectoRunDataFactory.cs
@@ -117,7 +117,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl.DeclarationMode.SingleBus
 								.ToList())
 						.ToList();
 				}
-				Report.InitializeReport(powertrainConfig, fuels);
+				Report.InitializeReport(powertrainConfig);
 			}
 
 			protected void Initialize()
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationVTPModeVectoRunDataFactoryHeavyBusPrimary.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationVTPModeVectoRunDataFactoryHeavyBusPrimary.cs
index 917ff48f9540c7dd5d792439cc0076715acf9608..097137e86b8d2cbe1d3c0c359aa1ea7b73771c51 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationVTPModeVectoRunDataFactoryHeavyBusPrimary.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationVTPModeVectoRunDataFactoryHeavyBusPrimary.cs
@@ -108,7 +108,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
                                         x => x.Fuels.Select(f => DeclarationData.FuelData.Lookup(f.FuelType, JobInputData.Vehicle.TankSystem))
                                             .ToList())
                                     .ToList();
-            Report.InitializeReport(powertrainConfig, fuels);
+            Report.InitializeReport(powertrainConfig);
         }
 
         protected virtual List<VectoRunData.AuxData> CreateVTPAuxData(IVehicleDeclarationInputData vehicle)
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/HVAC/SSMInputs.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/HVAC/SSMInputs.cs
index 5a07abf51dac38c50a6be3046005d903d945a46d..fb7d24b9945b9660bb033e74dbd5ec66dc3ea4d7 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/HVAC/SSMInputs.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/HVAC/SSMInputs.cs
@@ -192,8 +192,8 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.HVAC
 
 		protected virtual HeatingDistributionCase GetHeatingDistributionCase(HeatPumpType heatPump)
 		{
-			return HeatingDistributions.GetHeatingDistributionCase(heatPump, ElectricHeater,
-				AuxHeater.FuelFiredHeaterPower.IsGreater(0));
+			return HeatingDistributions?.GetHeatingDistributionCase(heatPump, ElectricHeater,
+				AuxHeater.FuelFiredHeaterPower.IsGreater(0)) ?? HeatingDistributionCase.HeatingDistribution_NotAvailable_;
 		}
 
 		public HeatingDistributionCasesMap HeatingDistributions { get; set; }
diff --git a/VectoCore/VectoCore/Models/Simulation/SimulationFactoryNinjectModule.cs b/VectoCore/VectoCore/Models/Simulation/SimulationFactoryNinjectModule.cs
index 20cce3d9efe1c6cc84bd5e73e4c854950c63ff2d..002cce5cb0c95b50ef43dc26c400b489828fc9f3 100644
--- a/VectoCore/VectoCore/Models/Simulation/SimulationFactoryNinjectModule.cs
+++ b/VectoCore/VectoCore/Models/Simulation/SimulationFactoryNinjectModule.cs
@@ -29,7 +29,6 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
-using System.Collections.Generic;
 using Ninject.Extensions.Factory;
 using Ninject.Modules;
 using TUGraz.VectoCommon.InputData;
@@ -68,7 +67,7 @@ namespace TUGraz.VectoCore.Models.Simulation
 	{
 		#region Implementation of IDeclarationReport
 
-		public void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public void InitializeReport(VectoRunData modelData)
 		{
 
 		}
@@ -92,7 +91,7 @@ namespace TUGraz.VectoCore.Models.Simulation
 	{
 		#region Implementation of IDeclarationReport
 
-		public void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public void InitializeReport(VectoRunData modelData)
 		{
 
 		}
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Data/VehicleData.cs b/VectoCore/VectoCore/Models/SimulationComponent/Data/VehicleData.cs
index 1c3f3fc8c8d11448dfa84152f9c23a4f11839fba..739517b2cdbcd5a311afb598e71ebbe8a9a6ac2a 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Data/VehicleData.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Data/VehicleData.cs
@@ -238,7 +238,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 		public ADASData ADAS { get; internal set; }
 		public bool VocationalVehicle { get; internal set; }
 
-		public bool Ocv { get; internal set; }
+		public bool OffVehicleCharging { get; internal set; }
 
 		public class ADASData
 		{
diff --git a/VectoCore/VectoCore/OutputData/DeclarationReport.cs b/VectoCore/VectoCore/OutputData/DeclarationReport.cs
index 35e1825e93e0c9119c6c7cb46de8a893b72750c4..98478bd345989e027e8679339223d76acbaafe86 100644
--- a/VectoCore/VectoCore/OutputData/DeclarationReport.cs
+++ b/VectoCore/VectoCore/OutputData/DeclarationReport.cs
@@ -51,7 +51,7 @@ namespace TUGraz.VectoCore.OutputData
 		 * This methodd is called once befor creating the simulation runs with a temporary 
 		 * VectoRunData instance
 		 */
-		void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes);
+		void InitializeReport(VectoRunData modelData);
 
 		/**
 		 * called when creating the simulation run (before starting the simulations)
@@ -215,6 +215,6 @@ namespace TUGraz.VectoCore.OutputData
 
 		protected abstract void WriteResult(T result);
 
-		public abstract void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes);
+		public abstract void InitializeReport(VectoRunData modelData);
 	}
 }
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/AbstractCustomerReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/AbstractCustomerReport.cs
index 968edce4bf5a2a09853757644463b83c614f0958..e266e330b157e73df44a8b4de3b3f1e73030103d 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/AbstractCustomerReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/AbstractCustomerReport.cs
@@ -8,7 +8,6 @@ using System.Xml;
 using System.Xml.Linq;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Models.SimulationComponent;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9;
@@ -48,15 +47,15 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		}
 
 
-		public abstract void InitializeVehicleData(IDeclarationInputDataProvider inputData);
+		protected abstract void InitializeVehicleData(IDeclarationInputDataProvider inputData);
 
 		#region Implementation of IXMLCustomerReport
 
-		public virtual void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public virtual void Initialize(VectoRunData modelData)
 		{
 			InitializeVehicleData(modelData.InputData);
-			_ovc = modelData.VehicleData.Ocv;
-			Results = new XElement(Cif_0_9 + "Results");
+			_ovc = modelData.VehicleData.OffVehicleCharging;
+			//Results = new XElement(Cif_0_9 + "Results");
 			InputDataIntegrity = new XElement(Cif_0_9 + XMLNames.Report_InputDataSignature,
 				modelData.InputData.XMLHash == null ? XMLHelper.CreateDummySig(_di) : new XElement(modelData.InputData.XMLHash));
 		}
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CustomerInformationFile/CustomerInformationFile.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CustomerInformationFile/CustomerInformationFile.cs
index 01b767199fd6a01a9eb41e4b245e0832f8f888e4..24072017b3c996b9a1dce63fb9bf995624f5b3c5 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CustomerInformationFile/CustomerInformationFile.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CustomerInformationFile/CustomerInformationFile.cs
@@ -7,7 +7,6 @@ using System.Xml.Linq;
 using TUGraz.VectoCommon.Exceptions;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReport;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter;
@@ -30,7 +29,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		#region Overrides of AbstractCustomerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetConventionalLorryVehicleType().GetElement(inputData);
 		}
@@ -45,7 +44,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		#region Overrides of AbstractCustomerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetHEV_PxLorryVehicleType().GetElement(inputData);
 		}
@@ -59,7 +58,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		#region Overrides of AbstractCustomerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetHEV_S2_LorryVehicleType().GetElement(inputData);
 		}
@@ -74,7 +73,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		#region Overrides of AbstractCustomerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetHEV_S3_LorryVehicleType().GetElement(inputData);
 		}
@@ -89,7 +88,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		#region Overrides of AbstractCustomerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetHEV_S4_LorryVehicleType().GetElement(inputData);
 		}
@@ -104,7 +103,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		#region Overrides of AbstractCustomerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetHEV_IEPC_LorryVehicleType().GetElement(inputData);
 		}
@@ -119,7 +118,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		#region Overrides of AbstractCustomerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetPEV_E2_LorryVehicleType().GetElement(inputData);
 		}
@@ -134,7 +133,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		#region Overrides of AbstractCustomerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetPEV_E3_LorryVehicleType().GetElement(inputData);
 		}
@@ -149,7 +148,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		#region Overrides of AbstractCustomerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetPEV_E4_LorryVehicleType().GetElement(inputData);
 
@@ -167,7 +166,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		#region Overrides of AbstractCustomerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetPEV_IEPC_LorryVehicleType().GetElement(inputData);
 		}
@@ -184,7 +183,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		public override string OutputDataType => XMLNames.CIF_OutputDataType_Exempted_LorryOutputType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetExempted_LorryVehicleType().GetElement(inputData);
 		}
@@ -206,16 +205,16 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		protected CustomerInformationFileCompletedBus(ICustomerInformationFileFactory cifFactory) :
 			base(cifFactory) { }
 
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			InitializeVehicleData(modelData.InputData);
-			_ovc = modelData.VehicleData.Ocv;
+			_ovc = modelData.VehicleData.OffVehicleCharging;
 
 			var inputData = modelData.InputData as IMultistepBusInputDataProvider;
 			if (inputData == null) {
 				throw new VectoException("CompletedBus CustomerInformationFile requires MultistepBusInputData");
 			}
-			Results = new XElement(Cif_0_9 + "Results");
+			//Results = new XElement(Cif_0_9 + "Results");
 			InputDataIntegrity = new XElement(Cif_0_9 + XMLNames.Report_InputDataSignature,
 				inputData.JobInputData.ConsolidateManufacturingStage.Signature == null
 					? XMLHelper.CreateDummySig(_di)
@@ -249,7 +248,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
         {
         }
 
-        public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
         {
 			Vehicle = _cifFactory.GetConventional_CompletedBusVehicleType().GetElement(inputData);
 		}
@@ -263,7 +262,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		{
 		}
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetHEV_Px_CompletedBusVehicleType().GetElement(inputData);
 		}
@@ -277,7 +276,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
         {
         }
 
-        public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
         {
             Vehicle = _cifFactory.GetHEV_IHPC_CompletedBusVehicleType().GetElement(inputData);
         }
@@ -291,7 +290,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		{
 		}
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetHEV_S2_CompletedBusVehicleType().GetElement(inputData);
 		}
@@ -305,7 +304,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		{
 		}
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetHEV_S3_CompletedBusVehicleType().GetElement(inputData);
 		}
@@ -319,7 +318,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		{
 		}
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetHEV_S4_CompletedBusVehicleType().GetElement(inputData);
 		}
@@ -333,7 +332,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		{
 		}
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetHEV_IEPC_S_CompletedBusVehicleType().GetElement(inputData);
 		}
@@ -347,7 +346,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		{
 		}
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetPEV_E2_CompletedBusVehicleType().GetElement(inputData);
 		}
@@ -361,7 +360,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		{
 		}
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetPEV_E3_CompletedBusVehicleType().GetElement(inputData);
 		}
@@ -375,7 +374,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		{
 		}
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetPEV_E4_CompletedBusVehicleType().GetElement(inputData);
 		}
@@ -389,7 +388,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		{
 		}
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetPEV_IEPC_CompletedBusVehicleType().GetElement(inputData);
 		}
@@ -404,7 +403,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		public override string OutputDataType => XMLNames.CIF_OutputDataType_Exempted_CompletedBusOutputType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetExemptedCompletedBusVehicleType().GetElement(inputData);
 		}
@@ -426,26 +425,21 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 			base(cifFactory)
 		{ }
 
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			InitializeVehicleData(modelData.InputData);
-			_ovc = modelData.VehicleData.Ocv;
+			_ovc = modelData.VehicleData.OffVehicleCharging;
 
 			var inputData = modelData.InputData as ISingleBusInputDataProvider;
 			if (inputData == null) {
 				throw new VectoException("CompletedBus CustomerInformationFile requires SingleBusInputData");
 			}
-			Results = new XElement(Cif_0_9 + "Results");
+			//Results = new XElement(Cif_0_9 + "Results");
 			InputDataIntegrity = new XElement(Cif_0_9 + XMLNames.Report_InputDataSignature,
-				//inputData.JobInputData.ConsolidateManufacturingStage.Signature == null ? 
-					XMLHelper.CreateDummySig(_di)
-					//: inputData.JobInputData.ConsolidateManufacturingStage.Signature.ToXML(_di)
-				);
+				inputData.XMLHashCompleted);
 			//new XElement());
 			InputDataIntegrityPrimaryVehicle = new XElement(Cif_0_9 + "InputDataSignaturePrimaryVehicle",
-				//inputData.PrimaryVehicle..ToXML(_di)
-				XMLHelper.CreateDummySig(_di)
-				);
+                inputData.XMLHash);
 			ManufacturerReportIntegrityPrimaryVehicle =
 				new XElement(Cif_0_9 + "ManufacturerRecordSignaturePrimaryVehicle", 
 					XMLHelper.CreateDummySig(_di)
@@ -475,7 +469,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 		{
 		}
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _cifFactory.GetConventional_SingleBusVehicleType().GetElement(inputData);
 		}
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/IXMLCustomerReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/IXMLCustomerReport.cs
index dc7e48050a1b6f7231f33dc1115e4db6f7f820ef..c839d9e332410d9e2843d2d0aeab42306396aae8 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/IXMLCustomerReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/IXMLCustomerReport.cs
@@ -1,13 +1,11 @@
-using System.Collections.Generic;
-using System.Xml.Linq;
-using TUGraz.VectoCore.Models.Declaration;
+using System.Xml.Linq;
 using TUGraz.VectoCore.Models.Simulation.Data;
 
 namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile
 {
 	public interface IXMLCustomerReport
 	{
-		void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes);
+		void Initialize(VectoRunData modelData);
 		XDocument Report { get; }
 		void WriteResult(XMLDeclarationReport.ResultEntry resultValue);
 		void GenerateReport(XElement resultSignature);
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReport.cs
index 38ff22b18cceb85d1502bdb45d7eb451edd20545..5f032fc674960a95e2b438411f60a082ace6ceb5 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReport.cs
@@ -30,7 +30,6 @@
 */
 
 using System;
-using System.Collections.Generic;
 using System.IO;
 using System.Linq;
 using System.Xml;
@@ -80,7 +79,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 			Results = new XElement(tns + XMLNames.Report_Results);
 		}
 
-		public virtual void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public virtual void Initialize(VectoRunData modelData)
 		{
 			var exempted = modelData.Exempted;
 			VehiclePart.Add(
@@ -111,7 +110,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 					new XElement(tns + XMLNames.Vehicle_VocationalVehicle, modelData.VehicleData.VocationalVehicle),
 					new XElement(tns + XMLNames.Vehicle_SleeperCab, modelData.VehicleData.SleeperCab),
 					GetADAS(modelData.VehicleData.ADAS),
-					ComponentData(modelData, fuelModes)
+					ComponentData(modelData)
 					);
 			}
 			InputDataIntegrity = new XElement(tns + XMLNames.Report_InputDataSignature,
@@ -136,8 +135,12 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 			);
 		}
 
-		protected virtual XElement[] ComponentData(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		protected virtual XElement[] ComponentData(VectoRunData modelData)
 		{
+			var vehicle = modelData.InputData.JobInputData.Vehicle;
+			var fuelModes = vehicle.Components.EngineInputData.EngineModes.Select(x =>
+					x.Fuels.Select(f => DeclarationData.FuelData.Lookup(f.FuelType, vehicle.TankSystem)).ToList())
+				.ToList();
 			return new[] {
 				new XElement(
 					tns + XMLNames.Report_Vehicle_EngineRatedPower,
@@ -299,7 +302,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 	{
 		#region Implementation of IXMLCustomerReport
 
-		public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public void Initialize(VectoRunData modelData)
 		{
 			// MQ 2021-06-14 TODO: fill with meat
 		}
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReportCompletedBus.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReportCompletedBus.cs
index c604214d7c580f3e8e3ba213a9e1443b9748fe88..b74e6140582b0526c0fb1cb17f762b6f1baabc50 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReportCompletedBus.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReportCompletedBus.cs
@@ -26,7 +26,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 
 		public IVehicleDeclarationInputData PrimaryVehicle => PrimaryVehicleRecordFile.Vehicle;
 
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			_tankSystem = modelData.VehicleData.InputData.TankSystem;
 			VehiclePart.Add(
@@ -73,10 +73,12 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 				new XElement(tns + XMLNames.Bus_VehicleWidth, modelData.VehicleData.InputData.Width.ToXMLFormat(3)),
 				GetADAS(modelData.VehicleData.ADAS),
 				ComponentData(
-					modelData,
-					PrimaryVehicleRecordFile.ResultsInputData.Results
-											.Select(x => x.EnergyConsumption.Keys.Select(f => FuelData.Instance().Lookup(f, modelData.VehicleData.InputData.TankSystem)).ToList()).Distinct()
-											.ToList())
+					modelData
+					// TODO: MQ 20221129: maybe this is necessary?
+					//PrimaryVehicleRecordFile.ResultsInputData.Results
+					//						.Select(x => x.EnergyConsumption.Keys.Select(f => FuelData.Instance().Lookup(f, modelData.VehicleData.InputData.TankSystem)).ToList()).Distinct()
+					//						.ToList()
+					)
 			);
 			
 			InputDataIntegrity = new XElement(tns + XMLNames.Report_InputDataSignature,
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReportExemptedCompletedBus.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReportExemptedCompletedBus.cs
index 89ed7fe8871935c4a4ee0b0d6fbc1a16846f07d3..c7e59d707210b0241d4a4be4788651b641bd0a10 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReportExemptedCompletedBus.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/XMLCustomerReportExemptedCompletedBus.cs
@@ -1,9 +1,7 @@
-using System.Collections.Generic;
-using System.Xml.Linq;
+using System.Xml.Linq;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Utils;
 
@@ -11,7 +9,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation
 {
 	public class XMLCustomerReportExemptedCompletedBus : XMLCustomerReportCompletedBus
 	{
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			VehiclePart.Add(
 				new XAttribute(xsi + XMLNames.XSIType, "VehicleCompletedExemptedBusType"),
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/AbstractXMLManufacturerReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/AbstractXMLManufacturerReport.cs
index 9ad7ca0bf5f4f104cd915e24927c68fa07ca8da3..c2a9c329f76bae99a7d608cdd45fe0ff3260d3a3 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/AbstractXMLManufacturerReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/AbstractXMLManufacturerReport.cs
@@ -48,7 +48,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 			throw new NotImplementedException();
 		}
 
-		public abstract void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes);
+		public abstract void Initialize(VectoRunData modelData);
 
 		public virtual void GenerateReport()
 		{
@@ -306,10 +306,12 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 				: new XElement(tns + XMLNames.Vehicle_TorqueLimits, limits.Cast<object>().ToArray());
 		}
 
-		protected abstract XElement VehicleComponents(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes);
+		protected abstract XElement VehicleComponents(VectoRunData modelData);
 
-		protected virtual XElement GetEngineDescription(CombustionEngineData engineData, List<List<FuelData.Entry>> fuelModes)
+		protected virtual XElement GetEngineDescription(CombustionEngineData engineData, TankSystem? tankSystem)
 		{
+			var fuelModes = engineData.InputData.EngineModes.Select(x => x.Fuels.Select(f => DeclarationData.FuelData.Lookup(f.FuelType, tankSystem)).ToList())
+				.ToList();
 			return new XElement(
 				tns + XMLNames.Component_Engine,
 				GetCommonDescription(engineData),
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/IXMLManufacturerReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/IXMLManufacturerReport.cs
index 9a62c0353a6873e8ea48ba0b9072aeffbbb46de9..3a38e047c05a1d61ce5abea364d317b50eef0b26 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/IXMLManufacturerReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/IXMLManufacturerReport.cs
@@ -1,15 +1,13 @@
-using System.Collections.Generic;
-using System.Xml.Linq;
+using System.Xml.Linq;
 using TUGraz.VectoCommon.InputData;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 
 namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 {
 	public interface IXMLManufacturerReport
 	{
-		void InitializeVehicleData(IDeclarationInputDataProvider inputData);
-		void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes);
+		//void InitializeVehicleData(IDeclarationInputDataProvider inputData);
+		void Initialize(VectoRunData modelData);
 		XDocument Report { get; }
 		void WriteResult(XMLDeclarationReport.ResultEntry resultValue);
 		void GenerateReport();
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/AbstractManufacturerReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/AbstractManufacturerReport.cs
index d23eac2738f725808b09f54d7b3d2222ed2964db..774fb857e0b7db4ff43919790a98c94399471140 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/AbstractManufacturerReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/AbstractManufacturerReport.cs
@@ -9,7 +9,6 @@ using System.Xml.Linq;
 using System.Xml.XPath;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter;
 using TUGraz.VectoCore.Utils;
@@ -52,14 +51,14 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		#region Implementation of IXMLManufacturerReport
 
-		public abstract void InitializeVehicleData(IDeclarationInputDataProvider inputData);
+		protected abstract void InitializeVehicleData(IDeclarationInputDataProvider inputData);
 
-		public virtual void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public virtual void Initialize(VectoRunData modelData)
 		{
 			InitializeVehicleData(modelData.InputData);
-			_ovc = modelData.VehicleData.Ocv;
+			_ovc = modelData.VehicleData.OffVehicleCharging;
 			
-			Results = new XElement(Mrf_0_9 + XMLNames.Report_Results);
+			//Results = new XElement(Mrf_0_9 + XMLNames.Report_Results);
 			InputDataIntegrity = new XElement(Mrf_0_9 + XMLNames.Report_InputDataSignature,
 				modelData.InputData.XMLHash == null ? XMLHelper.CreateDummySig(_di) : new XElement(modelData.InputData.XMLHash));
 		}
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/CompletedBusManufacturerReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/CompletedBusManufacturerReport.cs
index c447e1d1f899576d9f9114edbd753af2c4119df8..c4f5cd22cf40bd19163e5d891ba6bfe9d7ff3ba9 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/CompletedBusManufacturerReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/CompletedBusManufacturerReport.cs
@@ -1,5 +1,4 @@
 using System;
-using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
@@ -7,7 +6,6 @@ using System.Xml.Linq;
 using TUGraz.VectoCommon.Exceptions;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter;
 using TUGraz.VectoCore.Utils;
@@ -19,15 +17,15 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 		protected XNamespace _mrf = XNamespace.Get("urn:tugraz:ivt:VectoAPI:DeclarationOutput:v0.9");
 		public CompletedBusManufacturerReportBase(IManufacturerReportFactory MRFReportFactory) : base(MRFReportFactory) { }
 
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			InitializeVehicleData(modelData.InputData);
-			_ovc = modelData.VehicleData.Ocv;
+			_ovc = modelData.VehicleData.OffVehicleCharging;
 			var inputData = modelData.InputData as IMultistepBusInputDataProvider;
 			if (inputData == null) {
 				throw new VectoException("CompletedBus ManrufacturersRecordFile requires MultistepBusInputData");
 			}
-			Results = new XElement(Mrf_0_9 + XMLNames.Report_Results);
+			//Results = new XElement(Mrf_0_9 + XMLNames.Report_Results);
 			InputDataIntegrity = new XElement(Mrf_0_9 + XMLNames.Report_InputDataSignature,
 				inputData.JobInputData.ConsolidateManufacturingStage.Signature == null
 					? XMLHelper.CreateDummySig(_di)
@@ -44,9 +42,9 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "ConventionalCompletedBusManufacturerOutputDataType";
 
-		
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetConventional_CompletedBusVehicleType().GetElement(inputData);
 			//GenerateReport(OutputDataType);
@@ -64,7 +62,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "HEVCompletedBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_CompletedBusVehicleType().GetElement(inputData);
 			//GenerateReport("HEVCompletedBusManufacturerOutputDataType");
@@ -81,7 +79,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "PEVCompletedBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetPEV_CompletedBusVehicleType().GetElement(inputData);
 			//GenerateReport(OutputDataType);
@@ -98,7 +96,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "ExemptedCompletedBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetExempted_CompletedBusVehicleType().GetElement(inputData);
 			//GenerateReport(OutputDataType);
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/LorryManufacturerReports.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/LorryManufacturerReports.cs
index 9baebdb892613c0d3bfd406347cecb588ef4bb9b..f28326b8b4af04037d80e498935c324a47653ae7 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/LorryManufacturerReports.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/LorryManufacturerReports.cs
@@ -30,7 +30,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 		public override string OutputDataType =>
 			XMLNames.MRF_OutputDataType_ConventionalLorryManufacturerOutputDataType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetConventionalLorryVehicleType().GetElement(inputData);
 			
@@ -50,7 +50,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => XMLNames.MRF_OutputDataType_HEV_Px_IHPCLorryManufacturerOutputDataType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_Px_IHCP_LorryVehicleType().GetElement(inputData);
 		}
@@ -68,7 +68,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => XMLNames.MRF_OutputDataType_HEV_S2_LorryManufacturerOutputDataType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_S2_LorryVehicleType().GetElement(inputData);
 		}
@@ -87,7 +87,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		#region Overrides of AbstractManufacturerReport
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_S3_LorryVehicleType().GetElement(inputData);
 		}
@@ -103,7 +103,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => XMLNames.MRF_OutputDataType_HEV_S4_LorryManufacturerOutputDataType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_S4_LorryVehicleType().GetElement(inputData);
 		}
@@ -119,7 +119,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => XMLNames.MRF_OutputDataType_HEV_IEPC_S_LorryManufacturerOutputDataType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_IEPC_S_LorryVehicleType().GetElement(inputData);
 		}
@@ -135,7 +135,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => XMLNames.MRF_OutputDataType_PEV_E2_LorryManufacturerOutputDataType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetPEV_E2_LorryVehicleType().GetElement(inputData);
 			
@@ -152,7 +152,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => XMLNames.MRF_OutputDataType_PEV_E3_LorryManufacturerOutputDataType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetPEV_E3_LorryVehicleType().GetElement(inputData);
 		}
@@ -168,7 +168,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => XMLNames.MRF_OutputDataType_PEV_E4_LorryManufacturerOutputDataType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetPEV_E4_LorryVehicleType().GetElement(inputData);
 		}
@@ -184,7 +184,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => XMLNames.MRF_OutputDataType_PEV_IEPC_LorryManufacturerOutputDataType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetPEV_IEPC_LorryVehicleType().GetElement(inputData);
 		}
@@ -200,7 +200,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "ExemptedLorryManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetExempted_LorryVehicleType().GetElement(inputData);
 		}
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/PrimaryBusManufacturerReports.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/PrimaryBusManufacturerReports.cs
index a15ca5d30d179a7872aed6953e030afad0f00915..31adec2d10be77fbe0ef7a76a3a0e73403217f78 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/PrimaryBusManufacturerReports.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/PrimaryBusManufacturerReports.cs
@@ -31,7 +31,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => XMLNames.MRF_OutputDataType_ConventionalPrimaryBusManufacturerOutputDataType;
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetConventional_PrimaryBusVehicleType().GetElement(inputData);
 			
@@ -48,7 +48,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "HEV-Px_IHPCPrimaryBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_Px_IHPC_PrimaryBusVehicleType().GetElement(inputData);
 		}
@@ -65,7 +65,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "HEV-S2_PrimaryBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_S2_PrimaryBusVehicleType().GetElement(inputData);
 		}
@@ -81,7 +81,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "HEV-S3_PrimaryBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_S3_PrimaryBusVehicleType().GetElement(inputData);
 		}
@@ -97,7 +97,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "HEV-S4_PrimaryBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_S4_PrimaryBusVehicleType().GetElement(inputData);
 
@@ -115,7 +115,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "HEV-IEPC-S_PrimaryBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetHEV_IEPC_S_PrimaryBusVehicleType().GetElement(inputData);
 		}
@@ -131,7 +131,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "PEV-E2_PrimaryBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetPEV_E2_PrimaryBusVehicleType().GetElement(inputData);
 		}
@@ -148,7 +148,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "PEV-E3_PrimaryBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetPEV_E3_PrimaryBusVehicleType().GetElement(inputData);
 		}
@@ -168,7 +168,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 		#region Overrides of AbstractManufacturerReport
 
 		public override string OutputDataType => "PEV-E4_PrimaryBusManufacturerOutputDataType";
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetPEV_E4_PrimaryBusVehicleType().GetElement(inputData);
 		}
@@ -185,7 +185,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "PEV-IEPC_PrimaryBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetPEV_IEPC_PrimaryBusVehicleType().GetElement(inputData);
 		}
@@ -201,7 +201,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
 
 		public override string OutputDataType => "ExemptedPrimaryBusManufacturerOutputDataType";
 
-		public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
+		protected override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
 		{
 			Vehicle = _mRFReportFactory.GetExempted_PrimaryBusVehicleType().GetElement(inputData);
 		}
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportCompletedBus.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportCompletedBus.cs
index 770a98df0ab4644f95a18d3e83a0d8b762af591c..b0ec12765772cfa9ab80b2303abd4e0c917135b0 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportCompletedBus.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportCompletedBus.cs
@@ -26,7 +26,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 
 		#region Overrides of AbstractXMLManufacturerReport
 
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			_tankSystem = modelData.VehicleData.InputData.TankSystem;
 			VehiclePart.Add(
@@ -61,7 +61,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 					new XElement(tns + XMLNames.Bus_VehicleWidth, modelData.VehicleData.InputData.Width.ToXMLFormat(3)),
 					new XElement(tns + XMLNames.BusAux_PneumaticSystem_DoorDriveTechnology, modelData.VehicleData.InputData.DoorDriveTechnology.ToXMLFormat()),
 					
-					VehicleComponents(modelData, fuelModes),
+					VehicleComponents(modelData),
 					GetInputDataSignature(modelData)
 				)
 			);
@@ -337,7 +337,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 			return retVal.ToArray();
 		}
 
-		protected override XElement VehicleComponents(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		protected override XElement VehicleComponents(VectoRunData modelData)
 		{
 			return new XElement(
 				tns + XMLNames.Vehicle_Components,
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExemptedCompletedBus.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExemptedCompletedBus.cs
index f203b0cbe518aee03b76023b226f76f27499967e..14fddaef818c11f1baba86bd36cfd2e8c55cb6fb 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExemptedCompletedBus.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExemptedCompletedBus.cs
@@ -1,9 +1,7 @@
-using System.Collections.Generic;
-using System.Xml.Linq;
+using System.Xml.Linq;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Utils;
 
@@ -11,7 +9,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 {
 	public class XMLManufacturerReportExemptedCompletedBus : XMLManufacturerReportCompletedBus
 	{
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			VehiclePart.Add(
 				new XAttribute(xsi + XMLNames.XSIType, "VehicleExemptedCompletedBusType"),
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExemptedTruck.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExemptedTruck.cs
index de9ccd34d9c5be4da55f9c9104262c00864ac771..0d4eb6eed259fe03db1322d3403d089f47310dd5 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExemptedTruck.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExemptedTruck.cs
@@ -2,7 +2,6 @@
 using System.Xml.Linq;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Utils;
 
@@ -10,7 +9,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 {
 	public class XMLManufacturerReportExemptedTruck : AbstractXMLManufacturerReport
 	{
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			VehiclePart.Add(
 				new XAttribute(xsi + XMLNames.XSIType, "VehicleExemptedTruckType"),
@@ -34,7 +33,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 			InputDataIntegrity = GetInputDataSignature(modelData);
 		}
 
-		protected override XElement VehicleComponents(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		protected override XElement VehicleComponents(VectoRunData modelData)
 		{
 			return null;
 		}
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExeptedPrimaryBus.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExeptedPrimaryBus.cs
index 96719d814625cb2129c51425d3dba6d34d7b1ab1..1e9d83cb0e69ab3aa46183cf6adde8061860276b 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExeptedPrimaryBus.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportExeptedPrimaryBus.cs
@@ -1,8 +1,6 @@
-using System.Collections.Generic;
-using System.Xml.Linq;
+using System.Xml.Linq;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Utils;
 
@@ -16,7 +14,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
             vns = "urn:tugraz:ivt:VectoAPI:DeclarationOutput:v0.8";
         }
 
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			VehiclePart.Add(
 				new XAttribute(xsi + XMLNames.XSIType, "VehicleExemptedPrimaryBusType"),
@@ -43,7 +41,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 			InputDataIntegrity = GetInputDataSignature(modelData);
 		}
 
-		protected override XElement VehicleComponents(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		protected override XElement VehicleComponents(VectoRunData modelData)
 		{
 			return null;
 		}
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportPrimaryBus.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportPrimaryBus.cs
index 986154b38828457d04593a2261f8b1398dd72608..fa10b036e473d0a6a98c67f3310f1631ffc7dbea 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportPrimaryBus.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportPrimaryBus.cs
@@ -1,9 +1,7 @@
-using System.Collections.Generic;
-using System.Linq;
+using System.Linq;
 using System.Xml.Linq;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport;
 using TUGraz.VectoCore.Utils;
@@ -11,7 +9,7 @@ using TUGraz.VectoCore.Utils;
 namespace TUGraz.VectoCore.OutputData.XML {
 	public class XMLManufacturerReportPrimaryBus : AbstractXMLManufacturerReport
 	{
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			VehiclePart.Add(
 				new XAttribute(xsi + XMLNames.XSIType, "VehiclePrimaryBusType"),
@@ -32,19 +30,19 @@ namespace TUGraz.VectoCore.OutputData.XML {
 
 				GetADAS(modelData.VehicleData.ADAS),
 				GetTorqueLimits(modelData.EngineData),
-				VehicleComponents(modelData, fuelModes)
+				VehicleComponents(modelData)
 				
 			);
 
 			InputDataIntegrity = GetInputDataSignature(modelData);
 		}
 
-		protected override XElement VehicleComponents(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		protected override XElement VehicleComponents(VectoRunData modelData)
 		{
 			return new XElement(
 				tns + XMLNames.Vehicle_Components,
 				new XAttribute(xsi + XMLNames.XSIType, "ComponentsPrimaryBusType"),
-				GetEngineDescription(modelData.EngineData, fuelModes),
+				GetEngineDescription(modelData.EngineData, modelData.VehicleData.InputData.TankSystem),
 				GetGearboxDescription(modelData.GearboxData),
 				GetTorqueConverterDescription(modelData.GearboxData.TorqueConverterData),
 				GetRetarderDescription(modelData.Retarder),
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportTruck.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportTruck.cs
index cb6bb6d37cf22808678be16597018886a6681213..cf3c47b590217f6a0451ee3ab232c8245ea3b0b4 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportTruck.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/XMLManufacturerReportTruck.cs
@@ -29,12 +29,10 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
-using System.Collections.Generic;
 using System.Linq;
 using System.Xml.Linq;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Declaration.Auxiliaries;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Utils;
@@ -44,7 +42,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 	public class XMLManufacturerReportTruck : AbstractXMLManufacturerReport
 	{
 		
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			VehiclePart.Add(
 				new XAttribute(xsi + XMLNames.XSIType, "VehicleTruckType"),
@@ -69,20 +67,20 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 						
 				GetADAS(modelData.VehicleData.ADAS),
 				GetTorqueLimits(modelData.EngineData),
-				VehicleComponents(modelData, fuelModes)
+				VehicleComponents(modelData)
 					
 			);
 			
 			InputDataIntegrity = GetInputDataSignature(modelData);
 		}
 
-		protected override XElement VehicleComponents(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		protected override XElement VehicleComponents(VectoRunData modelData)
 		{
 			if (modelData.VehicleData.AxleConfiguration.AxlegearIncludedInGearbox()) {
 				return new XElement(
 					tns + XMLNames.Vehicle_Components,
 					new XAttribute(xsi + XMLNames.XSIType, "ComponentsTruckFWDType"),
-					GetEngineDescription(modelData.EngineData, fuelModes),
+					GetEngineDescription(modelData.EngineData, modelData.VehicleData.InputData.TankSystem),
 					GetGearboxDescription(modelData.GearboxData, modelData.AxleGearData),
 					GetTorqueConverterDescription(modelData.GearboxData.TorqueConverterData),
 					GetRetarderDescription(modelData.Retarder),
@@ -95,7 +93,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport
 			return new XElement(
 				tns + XMLNames.Vehicle_Components,
 				new XAttribute(xsi + XMLNames.XSIType, "ComponentsTruckType"),
-				GetEngineDescription(modelData.EngineData, fuelModes),
+				GetEngineDescription(modelData.EngineData, modelData.VehicleData.InputData.TankSystem),
 				GetGearboxDescription(modelData.GearboxData),
 				GetTorqueConverterDescription(modelData.GearboxData.TorqueConverterData),
 				GetRetarderDescription(modelData.Retarder),
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VTPReport/XMLVTPReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VTPReport/XMLVTPReport.cs
index fedb31d37930ecbd2ad8f297d485ad4f756d1b6d..3473a569cd3935a67a85bd61973b5d4080700539 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VTPReport/XMLVTPReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VTPReport/XMLVTPReport.cs
@@ -346,7 +346,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 			return retVal;
 		}
 
-		public override void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void InitializeReport(VectoRunData modelData)
 		{
 			VehicleClass = modelData.VehicleData.VehicleClass;
 			if (VehicleClass.IsBus()) {
@@ -373,7 +373,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 					new XElement(
 						tns + XMLNames.Vehicle_Components,
 						new XAttribute(xsi + XMLNames.XSIType, "ComponentsTruckFWDType"),
-						GetEngineDescription(modelData.EngineData, fuelModes),
+						GetEngineDescription(modelData.EngineData, modelData.InputData.JobInputData.Vehicle.TankSystem),
 						GetGearboxDescription(modelData.GearboxData, modelData.AxleGearData.AxleGear.Ratio),
 						GetTorqueConverterDescription(modelData.GearboxData.TorqueConverterData),
 						GetRetarderDescription(modelData.Retarder),
@@ -387,7 +387,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 					new XElement(
 						tns + XMLNames.Vehicle_Components,
 						new XAttribute(xsi + XMLNames.XSIType, "ComponentsTruckType"),
-						GetEngineDescription(modelData.EngineData, fuelModes),
+						GetEngineDescription(modelData.EngineData, modelData.InputData.JobInputData.Vehicle.TankSystem),
 						GetGearboxDescription(modelData.GearboxData),
 						GetTorqueConverterDescription(modelData.GearboxData.TorqueConverterData),
 						GetRetarderDescription(modelData.Retarder),
@@ -553,8 +553,10 @@ namespace TUGraz.VectoCore.OutputData.XML
 					XmlConvert.ToString(DateTime.Now, XmlDateTimeSerializationMode.Utc)));
 		}
 
-		private XElement GetEngineDescription(CombustionEngineData engineData, List<List<FuelData.Entry>> fuelModes)
+		private XElement GetEngineDescription(CombustionEngineData engineData, TankSystem? tankSystem)
 		{
+			var fuelModes = engineData.InputData.EngineModes.Select(x => x.Fuels.Select(f => DeclarationData.FuelData.Lookup(f.FuelType, tankSystem)).ToList())
+				.ToList();
 			return new XElement(
 				tns + XMLNames.Component_Engine,
 				GetCommonDescription(engineData),
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/IXMLVehicleInformationFile.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/IXMLVehicleInformationFile.cs
index 7cd02a7241e187c775828ec47bfc8d6bb121f46d..8d330dd58b5c1bcfd268dee69f0986b031550349 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/IXMLVehicleInformationFile.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/IXMLVehicleInformationFile.cs
@@ -1,13 +1,11 @@
-using System.Collections.Generic;
-using System.Xml.Linq;
-using TUGraz.VectoCore.Models.Declaration;
+using System.Xml.Linq;
 using TUGraz.VectoCore.Models.Simulation.Data;
 
 namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile
 {
 	public interface IXMLVehicleInformationFile
 	{
-		void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes);
+		void Initialize(VectoRunData modelData);
 		void WriteResult(XMLDeclarationReport.ResultEntry result);
 		void GenerateReport(XElement fullReportHash);
 		XDocument Report { get; }
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/AbstractVehicleInformationFile.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/AbstractVehicleInformationFile.cs
index b5bbe10ee0b220c73e09967aa6425c226331ba8b..50cd9bcf24c8e9497ba059ba8d8adaeb3fbb09c1 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/AbstractVehicleInformationFile.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/AbstractVehicleInformationFile.cs
@@ -9,7 +9,6 @@ using System.Xml.Linq;
 using TUGraz.VectoCommon.Hashing;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Models.Simulation.Impl;
 using TUGraz.VectoCore.Utils;
@@ -51,7 +50,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
 		
 		#region Implementation of IXMLPrimaryVehicleReport
 
-		public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public void Initialize(VectoRunData modelData)
 		{
 			InitializeVehicleData(modelData.InputData);
 			Results = new XElement(VIF + XMLNames.Report_Results);
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLExemptedPrimaryBusVehicleReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLExemptedPrimaryBusVehicleReport.cs
index 091296243658f607321b5a0de2fec571b44952c6..be87c99c1aedc52718f4efb8da8d06d1f8d7000a 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLExemptedPrimaryBusVehicleReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLExemptedPrimaryBusVehicleReport.cs
@@ -1,11 +1,9 @@
 using System;
-using System.Collections.Generic;
 using System.Xml;
 using System.Xml.Linq;
 using TUGraz.VectoCommon.Hashing;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Utils;
 
@@ -15,7 +13,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
 	{
 		#region Implementation of IXMLPrimaryVehicleReport
 
-		public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void Initialize(VectoRunData modelData)
 		{
 			VehiclePart.Add(
 				new XAttribute(xsi + XMLNames.Attr_Type, "VehicleExemptedPrimaryBusType"),
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLPrimaryBusVehicleReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLPrimaryBusVehicleReport.cs
index 4f07df1870f816006c89b9af2d5d1bd18b8683fe..9222baa24b73e65197b03d23c2347a4fbf3867c0 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLPrimaryBusVehicleReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLPrimaryBusVehicleReport.cs
@@ -130,7 +130,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
 					XmlConvert.ToString(DateTime.Now, XmlDateTimeSerializationMode.Utc)));
 		}
 
-		public virtual void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public virtual void Initialize(VectoRunData modelData)
 		{
 			VehiclePart.Add(
 				new XAttribute(xsi + XMLNames.XSIType, "ConventionalVehicleVIFType"),
@@ -153,7 +153,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
 				new XElement(tns + XMLNames.Vehicle_ZeroEmissionVehicle, modelData.VehicleData.ZeroEmissionVehicle),
 				GetADAS(modelData.VehicleData.ADAS),
 				GetTorqueLimits(modelData),
-				VehicleComponents(modelData, fuelModes)
+				VehicleComponents(modelData)
 			);
 			
 			InputDataIntegrity = new XElement(tns + XMLNames.Report_InputDataSignature,
@@ -193,12 +193,12 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
 			);
 		}
 
-		private XElement VehicleComponents(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		private XElement VehicleComponents(VectoRunData modelData)
 		{
 			return new XElement(
 				tns + XMLNames.Vehicle_Components,
 				new XAttribute(xsi + XMLNames.XSIType, "Vehicle_Conventional_ComponentsVIFType"),
-				GetEngineDescription(modelData.EngineData, fuelModes),
+				GetEngineDescription(modelData.EngineData),
 				GetGearboxDescription(modelData.GearboxData),
 				GetTorqueConverterDescription(modelData.GearboxData.TorqueConverterData),
 				GetAngledriveDescription(modelData.AngledriveData),
@@ -434,7 +434,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
 
 		}
 
-		private XElement GetEngineDescription(CombustionEngineData engineData, List<List<FuelData.Entry>> fuelModes)
+		private XElement GetEngineDescription(CombustionEngineData engineData)
 		{
 			
 			var fuels = new List<XElement>();
diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport.cs
index 7d36dac4011875f97876793b058672947a2804b5..37ab455b654ceaf6fd6bc4ce92eb0b22a7158ce3 100644
--- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport.cs
@@ -226,7 +226,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 		}
 
 
-		public override void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void InitializeReport(VectoRunData modelData)
 		{
 			if (modelData.Exempted) {
 				WeightingGroup = WeightingGroup.Unknown;
@@ -247,8 +247,8 @@ namespace TUGraz.VectoCore.OutputData.XML
 
 			InstantiateReports(modelData);
 
-			ManufacturerRpt.Initialize(modelData, fuelModes);
-			CustomerRpt?.Initialize(modelData, fuelModes);
+			ManufacturerRpt.Initialize(modelData);
+			CustomerRpt?.Initialize(modelData);
 		}
 
 		public WeightingGroup WeightingGroup { get; protected set; }
diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportCompletedVehicle.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportCompletedVehicle.cs
index 5c4f366dd67215160f704204ca4c0f908e10da1a..752e6a2da04553d2072716cf90ad972cf3a06d1e 100644
--- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportCompletedVehicle.cs
+++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportCompletedVehicle.cs
@@ -38,14 +38,14 @@ namespace TUGraz.VectoCore.OutputData.XML {
 				};
 		}
 
-		public override void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void InitializeReport(VectoRunData modelData)
 		{
 			_weightingFactors = EqualWeighting;
 
 			InstantiateReports(modelData);
 
-			ManufacturerRpt.Initialize(modelData, fuelModes);
-			CustomerRpt.Initialize(modelData, fuelModes);
+			ManufacturerRpt.Initialize(modelData);
+			CustomerRpt.Initialize(modelData);
 		}
 		#endregion
 
diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportPrimaryVehicle.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportPrimaryVehicle.cs
index 633400763537d0101d3e3f0f1c055f6bf28720e4..7644ca2483cf77082bbb853b2144be292a5c6726 100644
--- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportPrimaryVehicle.cs
+++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportPrimaryVehicle.cs
@@ -1,7 +1,5 @@
 using System;
-using System.Collections.Generic;
 using System.Xml.Linq;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport;
@@ -40,10 +38,10 @@ namespace TUGraz.VectoCore.OutputData.XML {
 
 		}
 
-		public override void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void InitializeReport(VectoRunData modelData)
 		{
-			base.InitializeReport(modelData, fuelModes);
-			VehicleInformationFile.Initialize(modelData,fuelModes);
+			base.InitializeReport(modelData);
+			VehicleInformationFile.Initialize(modelData);
 		}
 
 
diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport_0_9.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport_0_9.cs
index 127449661c6e6e1b007af4307edb38c90cc7aa66..42425ad00c29989e3e42e5be2eb510407271a5a9 100644
--- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport_0_9.cs
+++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReport_0_9.cs
@@ -1,9 +1,7 @@
 using System;
-using System.Collections.Generic;
 using System.Linq;
 using System.Xml.Linq;
 using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Interfaces;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter;
@@ -36,10 +34,10 @@ namespace TUGraz.VectoCore.OutputData.XML
 			_vifFactory = vifFactory;
 		}
 
-		public override void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void InitializeReport(VectoRunData modelData)
 		{
-			base.InitializeReport(modelData, fuelModes);
-			VehicleInformationFile.Initialize(modelData, fuelModes);
+			base.InitializeReport(modelData);
+			VehicleInformationFile.Initialize(modelData);
 		}
 
 
@@ -135,7 +133,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 
 		#endregion
 
-		public override void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void InitializeReport(VectoRunData modelData)
 		{
 			//_multistageBusReport =
 			//	modelData.Exempted ? new XMLMultistageExemptedBusReport() : new XMLMultistageBusReport();
diff --git a/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusFactorMethodTest.cs b/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusFactorMethodTest.cs
index 663f48707edf781a99d1496378e4e7763fa9e691..e68e30fe9af93eef7170369b7cac2b59c23709e3 100644
--- a/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusFactorMethodTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusFactorMethodTest.cs
@@ -1311,6 +1311,7 @@ namespace TUGraz.VectoCore.Tests.Integration.CompletedBus
 
 			public IVehicleDeclarationInputData PrimaryVehicle { get; set; }
 			public IVehicleDeclarationInputData CompletedVehicle { get; set; }
+			public XElement XMLHashCompleted { get; }
 
 			#endregion
 
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/TimeRun/MeasuredSpeed/GenericVehicleE3/BEV_ENG.vecto b/VectoCore/VectoCoreTest/TestData/Integration/TimeRun/MeasuredSpeed/GenericVehicleE3/BEV_ENG.vecto
index eb945da539fcbdfcd0268f23671febe194d6cb11..8576714bc93c161240c6d4c259a222f784249205 100644
--- a/VectoCore/VectoCoreTest/TestData/Integration/TimeRun/MeasuredSpeed/GenericVehicleE3/BEV_ENG.vecto
+++ b/VectoCore/VectoCoreTest/TestData/Integration/TimeRun/MeasuredSpeed/GenericVehicleE3/BEV_ENG.vecto
@@ -35,7 +35,7 @@
 	    "UrbanDelivery",
 		"PWheel_LongHaul.vdri",
 	    "PWheel_RegionalDelivery.vdri",
-	    "PWheel_UrbanDelivery.vdri",
+	    "PWheel_UrbanDelivery.vdri"
     ]
   }
 }
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/VectoCoreTest.csproj b/VectoCore/VectoCoreTest/VectoCoreTest.csproj
index 024aa3a94899aa1953cfebdcf56bc8f94c815cf0..f9a349f1c4bff9bfbdd9cf69379989bd57b0e570 100644
--- a/VectoCore/VectoCoreTest/VectoCoreTest.csproj
+++ b/VectoCore/VectoCoreTest/VectoCoreTest.csproj
@@ -33,6 +33,9 @@
   </ItemGroup>
 
   <ItemGroup>
+    <None Update="TestData\Integration\Buses\FactorMethod\primary_heavyBus group42_SmartPS.RSLT_VIF.xml">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
     <None Update="TestData\Integration\DeclarationMode\V24_DeclarationMode\HeavyLorry\PEV_heavyLorry_AMT_E2_realistic.xml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
diff --git a/VectoCore/VectoCoreTest/XML/Reports/CustomerInformationFileWriterTest.cs b/VectoCore/VectoCoreTest/XML/Reports/CustomerInformationFileWriterTest.cs
index b0f4fb20ad0b2c6b832339cb4ee7d739b8eb719e..a2ccc16a819a88e9a36d644d3ade3855cba4ba8f 100644
--- a/VectoCore/VectoCoreTest/XML/Reports/CustomerInformationFileWriterTest.cs
+++ b/VectoCore/VectoCoreTest/XML/Reports/CustomerInformationFileWriterTest.cs
@@ -8,6 +8,8 @@ using NUnit.Framework;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Utils;
+using TUGraz.VectoCore.Models.Simulation.Data;
+using TUGraz.VectoCore.Models.SimulationComponent.Data;
 using TUGraz.VectoCore.OutputData.XML;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9.CustomerInformationFile;
@@ -70,19 +72,29 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCustomerReport(fileName, out var dataProvider) as ConventionalLorry_CIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.CustomerReport));
 			Assert.IsTrue(WriteToDisk(outputBasePath, TestContext.CurrentContext.Test.MethodName, report.Report));
 		}
 
+		private VectoRunData GetRunData(IDeclarationInputDataProvider dataProvider)
+		{
+			return new VectoRunData() {
+				InputData = dataProvider,
+				VehicleData = new VehicleData() {
+					OffVehicleCharging = false
+				}
+			};
+		}
+
 		[TestCase(HEV_Px_HeavyLorry)]
 		public void HEV_Px_IHPC_LorryCIFTest(string fileName)
 		{
 			var report = GetCustomerReport(fileName, out var dataProvider) as HEV_PxLorry_CIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.CustomerReport));
@@ -94,7 +106,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCustomerReport(fileName, out var dataProvider) as HEV_S2_Lorry_CIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
@@ -107,7 +119,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCustomerReport(fileName, out var dataProvider) as HEV_S3_Lorry_CIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
@@ -122,7 +134,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCustomerReport(fileName, out var dataProvider) as HEV_S4_Lorry_CIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
@@ -135,7 +147,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCustomerReport(fileName, out var dataProvider) as HEV_IEPC_Lorry_CIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
@@ -148,7 +160,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCustomerReport(fileName, out var dataProvider) as PEV_E2_Lorry_CIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
@@ -161,7 +173,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCustomerReport(fileName, out var dataProvider) as PEV_E3_Lorry_CIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.CustomerReport));
@@ -172,7 +184,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCustomerReport(fileName, out var dataProvider) as PEV_E4_Lorry_CIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
@@ -184,7 +196,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
         {
             var report = GetCustomerReport(fileName, out var dataProvider) as PEV_IEPC_Lorry_CIF;
             Assert.NotNull(report);
-            report.InitializeVehicleData(dataProvider);
+            report.Initialize(GetRunData(dataProvider));
 
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
@@ -197,7 +209,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCustomerReport(fileName, out var dataProvider) as Exempted_Lorry_CIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.CustomerReport));
@@ -211,7 +223,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCompletedBusCustomerReport(fileName, out var dataProvider) as Conventional_CompletedBusCIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.CustomerReport));
@@ -225,7 +237,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetCompletedBusCustomerReport(fileName, out var dataProvider) as Exempted_CompletedBusCIF;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport(XMLHelper.CreateDummySig(XNamespace.Get("http://www.w3.org/2000/09/xmldsig#")));
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.CustomerReport));
diff --git a/VectoCore/VectoCoreTest/XML/Reports/ManufacturerReportWriterTest.cs b/VectoCore/VectoCoreTest/XML/Reports/ManufacturerReportWriterTest.cs
index ffa9c7cd011b51c1342a6854f21d8d224f829061..f984d60bf51f15e2076a719c34c305f58d1084ba 100644
--- a/VectoCore/VectoCoreTest/XML/Reports/ManufacturerReportWriterTest.cs
+++ b/VectoCore/VectoCoreTest/XML/Reports/ManufacturerReportWriterTest.cs
@@ -8,6 +8,7 @@ using System.Xml;
 using System.Xml.Linq;
 using System.Xml.Schema;
 using Microsoft.VisualStudio.TestPlatform.CommunicationUtilities.DataCollection;
+using Moq;
 using Ninject;
 using NUnit.Framework;
 using TUGraz.VectoCommon.InputData;
@@ -15,7 +16,9 @@ using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Utils;
 using TUGraz.VectoCore.InputData.FileIO.XML;
 using TUGraz.VectoCore.Models.Simulation;
+using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Models.Simulation.Impl;
+using TUGraz.VectoCore.Models.SimulationComponent.Data;
 using TUGraz.VectoCore.OutputData;
 using TUGraz.VectoCore.OutputData.FileIO;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9;
@@ -241,19 +244,31 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as ConventionalLorryManufacturerReport;
 
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
             Assert.IsTrue(WriteToDisk(outputBasePath, TestContext.CurrentContext.Test.MethodName, report.Report));
         }
 
+		private VectoRunData GetRunData(IDeclarationInputDataProvider dataProvider)
+		{
+			//var vehicleMock = new Mock<IVehicleDeclarationInputData>();
+			//vehicleMock.Setup(x => x.o)
+			return new VectoRunData() {
+				InputData = dataProvider,
+				VehicleData = new VehicleData() {
+					OffVehicleCharging = false
+				}
+			};
+		}
+
 		[TestCase(HEV_Px_HeavyLorry)]
 		public async Task HEV_Px_LorryMRFTest(string fileName)
 		{
 			var report = GetReport(fileName, out var dataProvider) as HEV_Px_IHPC_LorryManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -265,7 +280,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as HEV_S2_LorryManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -277,7 +292,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as HEV_S3_LorryManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -289,7 +304,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as HEV_S4_LorryManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -301,7 +316,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as HEV_IEPC_S_LorryManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -313,7 +328,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as PEV_E2_LorryManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -326,7 +341,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 
 			var report = GetReport(fileName, out var dataProvider) as PEV_E3_LorryManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -338,7 +353,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as PEV_E4_LorryManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -350,7 +365,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as PEV_IEPC_LorryManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -362,7 +377,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider); 
 			Assert.NotNull(report as Exempted_LorryManufacturerReport);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -375,7 +390,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as Conventional_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
             report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -387,7 +402,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as HEV_Px_IHPC_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -402,7 +417,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as HEV_S2_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -415,7 +430,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as HEV_S3_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -427,7 +442,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as HEV_S4_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -439,7 +454,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as HEV_IEPC_S_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -453,7 +468,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as PEV_E2_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -466,7 +481,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as PEV_E3_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -478,7 +493,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as PEV_E4_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
@@ -491,7 +506,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as PEV_IEPC_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			report.GenerateReport();
@@ -505,7 +520,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
 		{
 			var report = GetReport(fileName, out var dataProvider) as Exempted_PrimaryBus_ManufacturerReport;
 			Assert.NotNull(report);
-			report.InitializeVehicleData(dataProvider);
+			report.Initialize(GetRunData(dataProvider));
 
 			report.GenerateReport();
 
@@ -518,7 +533,7 @@ namespace TUGraz.VectoCore.Tests.XML.Reports
         {
 			var report = GetCompletedBusReport(fileName, out var dataProvider) as Conventional_CompletedBusManufacturerReport;
 			Assert.NotNull(report);
-            report.InitializeVehicleData(dataProvider);
+            report.Initialize(GetRunData(dataProvider));
 			report.GenerateReport();
 
 			Assert.IsTrue(ValidateAndPrint(report.Report, XmlDocumentType.ManufacturerReport));
diff --git a/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs b/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs
index 1207efe1f950bf47a86536db865420232bdd454d..dd05cc476864c5be7ffa759081a266a28303b539 100644
--- a/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs
@@ -519,7 +519,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 		private void TestSignatureHashData(DigestData data)
 		{
-			Assert.AreEqual("#PIF-d10aff76c5d149948046", data.Reference);
+			Assert.AreEqual("#VIF-d10aff76c5d149948046", data.Reference);
 			Assert.AreEqual("urn:vecto:xml:2017:canonicalization", data.CanonicalizationMethods[0]);
 			Assert.AreEqual("http://www.w3.org/2001/10/xml-exc-c14n#", data.CanonicalizationMethods[1]);
 			Assert.AreEqual("http://www.w3.org/2001/04/xmlenc#sha256", data.DigestMethod);
@@ -547,7 +547,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			Assert.AreEqual(2, manufacturingStage.StepCount);
 
-			TestDigestData("#PIF-d10aff76c5d149948046", "nI+57QQtWA2rFqJTZ41t0XrXcJbcGmc7j4E66iGJyT0=",
+			TestDigestData("#VIF-d10aff76c5d149948046", "nI+57QQtWA2rFqJTZ41t0XrXcJbcGmc7j4E66iGJyT0=",
 				manufacturingStage.HashPreviousStep);
 
 			TestVehicleDataStage01(manufacturingStage.Vehicle);
@@ -684,7 +684,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var stageData = manufacturingStages[0];
 			Assert.AreEqual(2, stageData.StepCount);
 
-			TestDigestData("#PIF-d11aff76c5d149948046", "nI+67QQtWA2rFqJTZ41t0XrXcJbcGmc7j4E66iGJyT0=",
+			TestDigestData("#VIF-d11aff76c5d149948046", "nI+67QQtWA2rFqJTZ41t0XrXcJbcGmc7j4E66iGJyT0=",
 				stageData.HashPreviousStep);
 
 			TestVehicleDataVIF02(stageData.Vehicle);
diff --git a/VectoMockup/VectoMockup/Reports/MockupCustomerReport.cs b/VectoMockup/VectoMockup/Reports/MockupCustomerReport.cs
index 293c50e82ddffd015796209d2d9de17aac7bc756..f9829c3707d92fa5713e64b5ecd463a8fb22a56e 100644
--- a/VectoMockup/VectoMockup/Reports/MockupCustomerReport.cs
+++ b/VectoMockup/VectoMockup/Reports/MockupCustomerReport.cs
@@ -1,9 +1,7 @@
-using System.Collections.Generic;
-using System.Linq;
+using System.Linq;
 using System.Xml.Linq;
 using System.Xml.XPath;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.OutputData.XML;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile;
@@ -31,10 +29,10 @@ namespace TUGraz.VectoMockup.Reports
         
         #region Implementation of IXMLCustomerReport
 
-        public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+        public void Initialize(VectoRunData modelData)
         {
             _modelData = modelData;
-            _originalCustomerReport.Initialize(modelData, fuelModes);
+            _originalCustomerReport.Initialize(modelData);
         }
 
         public XDocument Report
diff --git a/VectoMockup/VectoMockup/Reports/MockupManufacturerReport.cs b/VectoMockup/VectoMockup/Reports/MockupManufacturerReport.cs
index 59a519252b73dc6dc0c79611ef018c4dad6c51d2..5e6c8019184f57d38932d0a0a887c65a4fbd1bff 100644
--- a/VectoMockup/VectoMockup/Reports/MockupManufacturerReport.cs
+++ b/VectoMockup/VectoMockup/Reports/MockupManufacturerReport.cs
@@ -1,11 +1,9 @@
-using System.Collections.Generic;
-using System.Linq;
+using System.Linq;
 using System.Xml.Linq;
 using System.Xml.XPath;
 using TUGraz.VectoCommon.BusAuxiliaries;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.OutputData.XML;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport;
@@ -60,10 +58,10 @@ namespace TUGraz.VectoMockup.Reports
 			_ixmlManufacturerReportImplementation.InitializeVehicleData(inputData);
 		}
 
-		public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public void Initialize(VectoRunData modelData)
 		{
 			_modelData = modelData;
-			_ixmlManufacturerReportImplementation.Initialize(modelData, fuelModes);
+			_ixmlManufacturerReportImplementation.Initialize(modelData);
 		}
 
 		public XDocument Report
diff --git a/VectoMockup/VectoMockup/Reports/MockupVIFReport.cs b/VectoMockup/VectoMockup/Reports/MockupVIFReport.cs
index 2c244ecb98da19152005ec297a597928e5cac9d6..2a2a4e27e3b07c60ed7f3ff2da4cda369ede7c29 100644
--- a/VectoMockup/VectoMockup/Reports/MockupVIFReport.cs
+++ b/VectoMockup/VectoMockup/Reports/MockupVIFReport.cs
@@ -1,10 +1,8 @@
 using System;
-using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
 using System.Xml.Linq;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.OutputData.XML;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile;
@@ -60,7 +58,7 @@ namespace TUGraz.VectoMockup.Reports
 
 		#region Implementation of IXMLPrimaryVehicleReport
 
-		public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public void Initialize(VectoRunData modelData)
 		{
 			throw new NotImplementedException();
 		}
diff --git a/VectoMockup/VectoMockup/Reports/MockupVehicleInformationFile.cs b/VectoMockup/VectoMockup/Reports/MockupVehicleInformationFile.cs
index a56c59829de05227ce8012621a1a42a221f1e85a..1c5140fafd3597892895a58485c6cb2b39b80f67 100644
--- a/VectoMockup/VectoMockup/Reports/MockupVehicleInformationFile.cs
+++ b/VectoMockup/VectoMockup/Reports/MockupVehicleInformationFile.cs
@@ -1,5 +1,4 @@
 using System;
-using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
@@ -7,7 +6,6 @@ using System.Xml.Linq;
 using System.Xml.XPath;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Resources;
-using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.OutputData.XML;
 using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9;
@@ -77,9 +75,9 @@ namespace TUGraz.VectoMockup.Reports
 
 		#region Implementation of IXMLPrimaryVehicleReport
 
-		public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public void Initialize(VectoRunData modelData)
 		{
-			_vehicleInformationFileImplementation.Initialize(modelData, fuelModes);
+			_vehicleInformationFileImplementation.Initialize(modelData);
 			_modelData = modelData;
 		}
 
diff --git a/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs b/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs
index 1e7169b8ad82b4cc41fa7dee3ea1431088c1a1f0..0703c33dc2efbb98ef8838cfe86cd4e704be58dc 100644
--- a/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs
+++ b/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs
@@ -1,5 +1,4 @@
 using System;
-using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
@@ -85,9 +84,9 @@ namespace TUGraz.VectoMockup.Reports
 
 		#region Overrides of XMLDeclarationReportCompletedVehicle
 
-		public override void InitializeReport(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
+		public override void InitializeReport(VectoRunData modelData)
 		{
-			base.InitializeReport(modelData, fuelModes);
+			base.InitializeReport(modelData);
 			_modelData = modelData;
 		}
 
diff --git a/VectoMockup/VectoMockup/Simulation/RundataFactories/MockupLorryVectoRunDataFactory.cs b/VectoMockup/VectoMockup/Simulation/RundataFactories/MockupLorryVectoRunDataFactory.cs
index 92205fc2343e1bd111d1c109884edb6a0ce72eb5..31c8d5f97e5ade96d7e57e463604811be32cb278 100644
--- a/VectoMockup/VectoMockup/Simulation/RundataFactories/MockupLorryVectoRunDataFactory.cs
+++ b/VectoMockup/VectoMockup/Simulation/RundataFactories/MockupLorryVectoRunDataFactory.cs
@@ -185,7 +185,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories
                 InputData = vehicleData,
                 SleeperCab = vehicleData.SleeperCab,
                 VehicleClass = _segment.VehicleClass,
-                Ocv = vehicleData.OvcHev,
+                OffVehicleCharging = vehicleData.OvcHev,
 
             };
         }
diff --git a/VectoMockup/VectoMockup/Simulation/RundataFactories/PrimaryBusMockupRunDataFactory.cs b/VectoMockup/VectoMockup/Simulation/RundataFactories/PrimaryBusMockupRunDataFactory.cs
index d95245224de65e40ab8950e7d09052fcd64f1970..fdf246c5717362478849619c0b6046b321fb9257 100644
--- a/VectoMockup/VectoMockup/Simulation/RundataFactories/PrimaryBusMockupRunDataFactory.cs
+++ b/VectoMockup/VectoMockup/Simulation/RundataFactories/PrimaryBusMockupRunDataFactory.cs
@@ -281,7 +281,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories
 				SleeperCab = vehicleData.SleeperCab,
 				//Loading = loading.Value.Item1,
 				VehicleClass = segment.VehicleClass,
-				Ocv = vehicleData.OvcHev,
+				OffVehicleCharging = vehicleData.OvcHev,
 				VehicleCategory = vehicleData.VehicleCategory,
 				ZeroEmissionVehicle = vehicleData.ZeroEmissionVehicle,
 				//ADAS = CreateMockupAdasData(vehicleData),
@@ -307,7 +307,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories
                 SleeperCab = vehicleData.SleeperCab,
                 Loading = loading.Value.Item1,
                 VehicleClass = segment.VehicleClass,
-                Ocv = vehicleData.OvcHev,
+                OffVehicleCharging = vehicleData.OvcHev,
                 VehicleCategory = vehicleData.VehicleCategory,
                 ZeroEmissionVehicle = vehicleData.ZeroEmissionVehicle,
                 ADAS = CreateMockupAdasData(vehicleData),
diff --git a/VectoMockup/VectoMockup/VectoMockup.csproj b/VectoMockup/VectoMockup/VectoMockup.csproj
index 63872dc5dadd1cc244f23f091d55d07d58643997..723ae3f5121f7bbf04e2c262acc98de7055bd511 100644
--- a/VectoMockup/VectoMockup/VectoMockup.csproj
+++ b/VectoMockup/VectoMockup/VectoMockup.csproj
@@ -76,6 +76,7 @@
     <PackageReference Include="Ninject.Extensions.Factory" Version="3.3.3" />
   </ItemGroup>
   <ItemGroup>
+    <ProjectReference Include="..\..\VectoCommon\VectoCommon\VectoCommon.csproj" />
     <ProjectReference Include="..\..\VectoCore\VectoCore\VectoCore.csproj" />
   </ItemGroup>