diff --git a/VECTO/BusAuxiliaries/UI/frmAuxiliaryConfig.vb b/VECTO/BusAuxiliaries/UI/frmAuxiliaryConfig.vb
index 94b7d391528264e8e692e255e92aeef368c2fe57..da243091fc8de9b89aa1b19cc62a6f76b3573a9d 100644
--- a/VECTO/BusAuxiliaries/UI/frmAuxiliaryConfig.vb
+++ b/VECTO/BusAuxiliaries/UI/frmAuxiliaryConfig.vb
@@ -298,7 +298,7 @@ Public Class frmAuxiliaryConfig
         Dim comp As ICompressorMap
         Try
 
-            comp = CompressorMapReader.ReadFile(FilePathUtils.ResolveFilePath(aauxPath, txtCompressorMap.Text))
+            comp = CompressorMapReader.ReadFile(FilePathUtils.ResolveFilePath(aauxPath, txtCompressorMap.Text), 1.0)
             'comp.Initialise()
             ErrorProvider.SetError(txtCompressorMap, String.Empty)
         Catch ex As Exception
diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/AveragePneumaticLoadDemandTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/AveragePneumaticLoadDemandTests.vb
index 73649b60a0b348f62caacae84b409d6d69ae5e0d..49bcc5ba19f22270b8e6688939cbd7f53a2da4b0 100644
--- a/VECTOAux/VectoAuxiliariesTests/UnitTests/AveragePneumaticLoadDemandTests.vb
+++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/AveragePneumaticLoadDemandTests.vb
@@ -73,7 +73,7 @@ Namespace UnitTests
 
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.LossesIncludedInTransmission)
                                         
-            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
                                         
 
             Dim auxCfg = Utils.GetAuxTestConfig()
@@ -93,7 +93,7 @@ Namespace UnitTests
             initialise()
 
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.LossesIncludedInTransmission)
-            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
                                        
 
             'psCompressorMap.Initialise()
@@ -117,7 +117,7 @@ Namespace UnitTests
             initialise()
 
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.LossesIncludedInTransmission)
-            Dim psCompressorMap =CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap =CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
                        
 
             'psCompressorMap.Initialise()
@@ -144,7 +144,7 @@ Namespace UnitTests
             _defaultInputConfig.CompressorGearEfficiency = 0.8
 
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.LossesIncludedInTransmission)
-            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
                                         
 
             'psCompressorMap.Initialise()
@@ -166,7 +166,7 @@ Namespace UnitTests
             initialise()
 
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.LossesIncludedInTransmission)
-            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
                                         
 
             'psCompressorMap.Initialise()
@@ -195,7 +195,7 @@ Namespace UnitTests
             _defaultInputConfig.SmartRegeneration = False
 
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.LossesIncludedInTransmission)
-            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
                                        
 
             'psCompressorMap.Initialise()
@@ -222,7 +222,7 @@ Namespace UnitTests
             '_defaultInputConfig.RetarderBrake = False
            
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.None)
-            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
                                        
 
             'psCompressorMap.Initialise()
@@ -250,7 +250,7 @@ Namespace UnitTests
             _defaultInputConfig.KneelingHeight = 100.SI(Unit.si.Milli.Meter).Cast (Of Meter)
 
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.LossesIncludedInTransmission)
-            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
                                        
 
             'psCompressorMap.Initialise()
@@ -275,7 +275,7 @@ Namespace UnitTests
             _defaultInputConfig.AirSuspensionControl = ConsumerTechnology.Mechanically
 
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.LossesIncludedInTransmission)
-            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
                                         
 
             'psCompressorMap.Initialise()
@@ -302,7 +302,7 @@ Namespace UnitTests
             _defaultInputConfig.AdBlueDosing = ConsumerTechnology.Pneumatically
 
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.LossesIncludedInTransmission)
-            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
                                         
 
             'psCompressorMap.Initialise()
@@ -329,7 +329,7 @@ Namespace UnitTests
             _defaultInputConfig.Doors = ConsumerTechnology.Electrically
 
             Dim psAuxConfig = New DeclarationDataAdapterPrimaryBus().CreatePneumaticAuxConfig(RetarderType.LossesIncludedInTransmission)
-            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath)
+            Dim psCompressorMap = CompressorMapReader.ReadFile(_compressorMapPath, 1.0)
 
             Dim auxConfig As IAuxiliaryConfig = GetAuxConfig(psAuxConfig)
 
diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/CompressorMapTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/CompressorMapTests.vb
index 5f973c0edcdc12633d048a630fcbf158cd2c0965..dd6ad116e558001e9e1a78674e20935f784cca3a 100644
--- a/VECTOAux/VectoAuxiliariesTests/UnitTests/CompressorMapTests.vb
+++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/CompressorMapTests.vb
@@ -23,7 +23,7 @@ Namespace UnitTests
 
         Private Function GetInitialiseMap() As ICompressorMap
             Dim path As String = GOODMAP
-            Dim target As ICompressorMap = CompressorMapReader.ReadFile(path)
+            Dim target As ICompressorMap = CompressorMapReader.ReadFile(path, 1.0)
             'target.Initialise()
             Return target
         End Function
@@ -39,7 +39,7 @@ Namespace UnitTests
         Public Sub CreateNewCompressorMapInstanceTest()
             Dim pat As String = "test"
             Assert.That(Sub()
-                Dim target As ICompressorMap = CompressorMapReader.ReadFile(pat)
+                Dim target As ICompressorMap = CompressorMapReader.ReadFile(pat, 1.0)
             end sub, throws.instanceof(of Vectoexception))
         End Sub
 
@@ -56,7 +56,7 @@ Namespace UnitTests
             'Dim target As ICompressorMap = CompressorMapReader.ReadFile(path)
 
             Assert.That(sub() 
-                dim tmp = CompressorMapReader.ReadFile(path)
+                dim tmp = CompressorMapReader.ReadFile(path, 1.0)
             end sub, Throws.InstanceOf (of VectoException))
         End Sub
 
@@ -65,7 +65,7 @@ Namespace UnitTests
             Dim path As String = INVALIDNUMBEROFCOLUMNS
 
             Assert.That(Sub()
-                Dim target = CompressorMapReader.ReadFile(path)
+                Dim target = CompressorMapReader.ReadFile(path, 1.0)
             End Sub, Throws.InstanceOf (Of VectoException))
         End Sub
 
@@ -74,7 +74,7 @@ Namespace UnitTests
             Dim path As String = INVALIDRPMMAP
 
             Assert.That(Sub()
-                Dim target As ICompressorMap = CompressorMapReader.ReadFile(path)
+                Dim target As ICompressorMap = CompressorMapReader.ReadFile(path, 1.0)
             End Sub, Throws.InstanceOf (Of VectoException))
         End Sub
 
@@ -83,7 +83,7 @@ Namespace UnitTests
             Dim path As String = INVALIDFLOWRATEMAP
             
             Assert.That(Sub()
-                Dim target As ICompressorMap = CompressorMapReader.ReadFile(path)
+                Dim target As ICompressorMap = CompressorMapReader.ReadFile(path, 1.0)
                         End Sub, Throws.InstanceOf (Of VectoException))
         End Sub
 
@@ -92,7 +92,7 @@ Namespace UnitTests
             Dim path As String = INVALIDPOWERCOMPRESSORONMAP
             
             Assert.That(Sub()
-                Dim target As ICompressorMap = CompressorMapReader.ReadFile(path)
+                Dim target As ICompressorMap = CompressorMapReader.ReadFile(path, 1.0)
                         End Sub, Throws.InstanceOf (Of VectoException))
         End Sub
 
@@ -101,7 +101,7 @@ Namespace UnitTests
             Dim path As String = INVALIDPOWERCOMPRESSOROFFMAP
            
             Assert.That(Sub()
-                Dim target As ICompressorMap = CompressorMapReader.ReadFile(path)
+                Dim target As ICompressorMap = CompressorMapReader.ReadFile(path, 1.0)
                         End Sub, Throws.InstanceOf (Of VectoException))
         End Sub
 
@@ -110,7 +110,7 @@ Namespace UnitTests
             Dim path As String = INSSUFICIENTROWSMAP
             
             Assert.That(Sub()
-                Dim target As ICompressorMap = CompressorMapReader.ReadFile(path)
+                Dim target As ICompressorMap = CompressorMapReader.ReadFile(path, 1.0)
                         End Sub, Throws.InstanceOf (Of VectoException))
         End Sub
 
@@ -153,7 +153,7 @@ Namespace UnitTests
         <Test()>
         Public Sub InterpMiddle()
 
-            Dim target As ICompressorMap = CompressorMapReader.ReadFile(GOODMAP)
+            Dim target As ICompressorMap = CompressorMapReader.ReadFile(GOODMAP, 1.0)
             'Assert.IsTrue(target.Initialise())
 
             Dim actual = target.Interpolate(1750.RPMtoRad()).FlowRate
diff --git a/VectoCore/VectoCore/Configuration/Constants.cs b/VectoCore/VectoCore/Configuration/Constants.cs
index beddc5d4fd6e509cc9d60b8ce2a77d0b5195123c..d3c5e27fa3b1723c57b60ea81e6669fc3a72de25 100644
--- a/VectoCore/VectoCore/Configuration/Constants.cs
+++ b/VectoCore/VectoCore/Configuration/Constants.cs
@@ -173,6 +173,9 @@ namespace TUGraz.VectoCore.Configuration
 				public const double CompressorGearEfficiency = 0.97;
 
 				public const double PneumaticOverrunUtilisation = 0.97;
+
+				public const double ViscoClutchDragCurveFactor = 1 - 0.35;
+				public const double MechanicClutchDragCurveFactor = 1 - 0.75;
 			}
 
 			public static class Heater {
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/BusAuxiliaryInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/BusAuxiliaryInputData.cs
index d1f9a541c63b7da7011d029dcbfb9dfc79d057a5..1ffff7ba75c99394b5f30f38b3a0868dce580261 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/BusAuxiliaryInputData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/BusAuxiliaryInputData.cs
@@ -152,7 +152,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			pneumaticUserInputsConfig.CompressorGearRatio = puData.GetEx<double>("CompressorGearRatio");
 			var file = puData.GetEx<string>("CompressorMap");
 			if (!string.IsNullOrWhiteSpace(file)) {
-				pneumaticUserInputsConfig.CompressorMap = CompressorMapReader.ReadFile(Path.Combine(baseDir, file));
+				pneumaticUserInputsConfig.CompressorMap = CompressorMapReader.ReadFile(Path.Combine(baseDir, file), 1.0);
 			}
 			pneumaticUserInputsConfig.Doors = ConsumerTechnologyHelper.Parse(puData.GetEx<string>("Doors"));
 			pneumaticUserInputsConfig.KneelingHeight =
diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/CompressorMapReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/CompressorMapReader.cs
index 564f483acf2b548556b24d60ae1b910d899cb6d3..4d8654de109456d7932d6511736e1d155e3483c9 100644
--- a/VectoCore/VectoCore/InputData/Reader/ComponentData/CompressorMapReader.cs
+++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/CompressorMapReader.cs
@@ -14,17 +14,17 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData
 	{
 		public static readonly string[] Header = new[] { Fields.RPM, Fields.FlowRate, Fields.PowerOn, Fields.PowerOff };
 
-		public static ICompressorMap ReadFile(string filename)
+		public static ICompressorMap ReadFile(string filename, double dragCurveFactorClutch)
 		{
-			return new CompressorMap(Create(VectoCSVFile.Read(filename)), Path.GetFullPath(filename));
+			return new CompressorMap(Create(VectoCSVFile.Read(filename), dragCurveFactorClutch), Path.GetFullPath(filename));
 		}
 
-		public static ICompressorMap ReadStream(Stream stream, string source = null)
+		public static ICompressorMap ReadStream(Stream stream, double dragCurveFactorClutch, string source = null)
 		{
-			return new CompressorMap(Create(VectoCSVFile.ReadStream(stream)), source);
+			return new CompressorMap(Create(VectoCSVFile.ReadStream(stream), dragCurveFactorClutch), source);
 		}
 
-		public static IList<CompressorMapValues> Create(DataTable data)
+		public static IList<CompressorMapValues> Create(DataTable data, double dragCurveFactorClutch)
 		{
 			if (!HeaderIsValid(data.Columns)) {
 				throw new VectoException(
@@ -43,7 +43,7 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData
 					row.ParseDouble(Fields.RPM).RPMtoRad(),
 					row.ParseDouble(Fields.FlowRate).SI(Unit.SI.Liter.Per.Minute).Cast<NormLiterPerSecond>(),
 					row.ParseDouble(Fields.PowerOn).SI<Watt>(),
-					row.ParseDouble(Fields.PowerOff).SI<Watt>()
+					row.ParseDouble(Fields.PowerOff).SI<Watt>() * dragCurveFactorClutch
 					));
 			}
 			return entries;
diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterPrimaryBus.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterPrimaryBus.cs
index cba49698f5250902c1c8950af08a7cb17b88ad60..c0eceb9aea0f51e5eb5d7b5bc2014188cd0ff16a 100644
--- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterPrimaryBus.cs
+++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterPrimaryBus.cs
@@ -191,7 +191,7 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 					: 0.SI<Meter>(),
 				CompressorGearEfficiency = Constants.BusAuxiliaries.PneumaticUserConfig.CompressorGearEfficiency,
 				CompressorGearRatio = busAux.PneumaticSupply.Ratio,
-				CompressorMap = GetCompressorMap(busAux.PneumaticSupply.CompressorSize),
+				CompressorMap = GetCompressorMap(busAux.PneumaticSupply.CompressorSize, busAux.PneumaticSupply.Clutch),
 				SmartAirCompression = busAux.PneumaticSupply.SmartAirCompression,
 				SmartRegeneration = busAux.PneumaticSupply.SmartRegeneration,
 				AdBlueDosing = busAux.PneumaticConsumers.AdBlueDosing,
@@ -200,40 +200,38 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 			};
 		}
 
-		protected virtual ICompressorMap GetCompressorMap(string compressorSize)
+		protected virtual ICompressorMap GetCompressorMap(string compressorSize, string clutchType)
 		{
 			var resource = "";
 			switch (compressorSize) {
 				case "Small":
-				case "Small + visco clutch":
-				case "Small + mech. clutch":
 					resource = "DEFAULT_1-Cylinder_1-Stage_393ccm.ACMP";
 					break;
 				case "Medium Supply 1-stage":
-				case "Medium Supply 1-stage + visco clutch":
-				case "Medium Supply 1-stage + mech. clutch":
 					resource = "DEFAULT_1-Cylinder_1-Stage_393ccm.ACMP";
 					break;
 				case "Medium Supply 2-stage":
-				case "Medium Supply 2-stage + visco clutch":
-				case "Medium Supply 2-stage + mech. clutch":
 					resource = "DEFAULT_2-Cylinder_1-Stage_650ccm.ACMP";
 					break;
 				case "Large Supply 1-stage":
-				case "Large Supply 1-stage + visco clutch":
-				case "Large Supply 1-stage + mech. clutch":
 					resource = "DEFAULT_2-Cylinder_2-Stage_398ccm.ACMP";
 					break;
 				case "Large Supply 2-stage":
-				case "Large Supply 2-stage + visco clutch":
-				case "Large Supply 2-stage + mech. clutch":
 					resource = "DEFAULT_3-Cylinder_2-Stage_598ccm.ACMP";
 					break;
 				default: throw new ArgumentException(string.Format("unkown compressor size {0}"), compressorSize);
 			}
 
+			var dragCurveFactorClutch = 1.0;
+			switch (clutchType) {
+				case "visco": dragCurveFactorClutch = Constants.BusAuxiliaries.PneumaticUserConfig.ViscoClutchDragCurveFactor;
+					break;
+				case "mechically": dragCurveFactorClutch = Constants.BusAuxiliaries.PneumaticUserConfig.MechanicClutchDragCurveFactor;
+					break;
+			}
+
 			return CompressorMapReader.ReadStream(
-				RessourceHelper.ReadStream(DeclarationData.DeclarationDataResourcePrefix + ".VAUXBus." + resource));
+				RessourceHelper.ReadStream(DeclarationData.DeclarationDataResourcePrefix + ".VAUXBus." + resource), dragCurveFactorClutch);
 		}
 
 		public virtual ISSMInputs CreateSSMModelParameters(IBusAuxiliariesDeclarationData busAuxInputData, Mission mission, IFuelProperties heatingFuel)
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeBusVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeBusVectoRunDataFactory.cs
index 2eeca9364c3f4732c6b5348f620c5909563b9e04..181505dd7b419c0ab374f169f4a942fb0ee952d2 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeBusVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeBusVectoRunDataFactory.cs
@@ -10,20 +10,21 @@ using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Models.SimulationComponent.Data;
 using TUGraz.VectoCore.OutputData;
 
-namespace TUGraz.VectoCore.InputData.Reader.Impl {
+namespace TUGraz.VectoCore.InputData.Reader.Impl
+{
 	public class DeclarationModeBusVectoRunDataFactory : AbstractDeclarationVectoRunDataFactory
 	{
 		protected DeclarationDataAdapterPrimaryBus _dao = new DeclarationDataAdapterPrimaryBus();
 
 		public DeclarationModeBusVectoRunDataFactory(IDeclarationInputDataProvider dataProvider, IDeclarationReport report) :
-			base(dataProvider, report)
-		{
-			
-		}
+			base(dataProvider, report) { }
 
 		#region Overrides of AbstractDeclarationVectoRunDataFactory
 
-		protected override IDeclarationDataAdapter DataAdapter { get { return _dao; } }
+		protected override IDeclarationDataAdapter DataAdapter
+		{
+			get { return _dao; }
+		}
 
 		#endregion
 
@@ -32,13 +33,15 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl {
 			if (InputDataProvider.JobInputData.Vehicle.VehicleCategory == VehicleCategory.HeavyBusPrimaryVehicle) {
 				return VectoRunDataHeavyBusPrimary();
 			}
+
 			return new List<VectoRunData>();
 		}
 
 		protected override Segment GetSegment(IVehicleDeclarationInputData vehicle)
 		{
 			if (vehicle.VehicleCategory != VehicleCategory.HeavyBusPrimaryVehicle) {
-				throw new VectoException("Invalid vehicle category for bus factory! {0}", vehicle.VehicleCategory.GetCategoryName());
+				throw new VectoException(
+					"Invalid vehicle category for bus factory! {0}", vehicle.VehicleCategory.GetCategoryName());
 			}
 
 			var segment = DeclarationData.BusSegments.Lookup(
@@ -62,7 +65,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl {
 			for (var modeIdx = 0; modeIdx < engineModes.Count; modeIdx++) {
 				foreach (var mission in _segment.Missions) {
 					foreach (var loading in mission.Loadings) {
-						var simulationRunData = CreateVectoRunData(vehicle, modeIdx, mission, loading);							
+						var simulationRunData = CreateVectoRunData(vehicle, modeIdx, mission, loading);
 						yield return simulationRunData;
 					}
 				}
@@ -70,7 +73,8 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl {
 		}
 
 
-		protected override VectoRunData CreateVectoRunData(IVehicleDeclarationInputData vehicle, int modeIdx, Mission mission, KeyValuePair<LoadingType, Kilogram> loading)
+		protected override VectoRunData CreateVectoRunData(
+			IVehicleDeclarationInputData vehicle, int modeIdx, Mission mission, KeyValuePair<LoadingType, Kilogram> loading)
 		{
 			var engine = vehicle.Components.EngineInputData;
 			var engineModes = engine.EngineModes;
@@ -84,7 +88,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl {
 					CyclesCache.Add(mission.MissionType, cycle);
 				}
 			}
-			var simulationRunData  = new VectoRunData {
+			var simulationRunData = new VectoRunData {
 				Loading = loading.Key,
 				VehicleData = DataAdapter.CreateVehicleData(vehicle, mission, loading),
 				AirdragData = _dao.CreateAirdragData(mission),
@@ -92,8 +96,10 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl {
 				GearboxData = _gearboxData,
 				AxleGearData = _axlegearData,
 				AngledriveData = _angledriveData,
-				Aux = DataAdapter.CreateAuxiliaryData(vehicle.Components.AuxiliaryInputData,
-													vehicle.Components.BusAuxiliaries, mission.MissionType, _segment.VehicleClass, vehicle.Length ?? mission.BusParameter.VehicleLength),
+				Aux = DataAdapter.CreateAuxiliaryData(
+					vehicle.Components.AuxiliaryInputData,
+					vehicle.Components.BusAuxiliaries, mission.MissionType, _segment.VehicleClass,
+					vehicle.Length ?? mission.BusParameter.VehicleLength),
 				Cycle = new DrivingCycleProxy(cycle, mission.MissionType.ToString()),
 				Retarder = _retarderData,
 				DriverData = _driverdata,
@@ -109,8 +115,9 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl {
 			};
 			simulationRunData.EngineData.FuelMode = modeIdx;
 			simulationRunData.VehicleData.VehicleClass = _segment.VehicleClass;
-			simulationRunData.BusAuxiliaries = _dao.CreateBusAuxiliariesData(mission, InputDataProvider.JobInputData.Vehicle, simulationRunData);
+			simulationRunData.BusAuxiliaries = _dao.CreateBusAuxiliariesData(
+				mission, InputDataProvider.JobInputData.Vehicle, simulationRunData);
 			return simulationRunData;
 		}
 	}
-}
\ No newline at end of file
+}
diff --git a/VectoCore/VectoCoreTest/Models/Declaration/BusFactoryTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/BusFactoryTest.cs
index 4cad819ba77a6a257ca3d0c767da0079bee8c5b1..81cad974751af28dd76b5579976a973d4ca0241a 100644
--- a/VectoCore/VectoCoreTest/Models/Declaration/BusFactoryTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Declaration/BusFactoryTest.cs
@@ -28,6 +28,14 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 		}
 
 		[
+			TestCase(@"TestData\Integration\Buses\vecto_vehicle-primary_heavyBus_nonSmart.xml", 0, TestName = "Run Primary Bus NonSmart HeavyUrban Low"),
+
+
+			TestCase(@"TestData\Integration\Buses\vecto_vehicle-primary_heavyBus_nonSmart.xml", -1, TestName = "Run Primary Bus NonSmart ALL"),
+			TestCase(@"TestData\Integration\Buses\vecto_vehicle-primary_heavyBus_SmartPS.xml", -1, TestName = "Run Primary Bus SmartPS ALL"),
+			TestCase(@"TestData\Integration\Buses\vecto_vehicle-primary_heavyBus_SmartES.xml", -1, TestName = "Run Primary Bus SmartES ALL"),
+			TestCase(@"TestData\Integration\Buses\vecto_vehicle-primary_heavyBus_nonSmart_ESS.xml", -1, TestName = "Run Primary Bus NonSmart ESS ALL"),
+
 		TestCase(@"TestData\Integration\Buses\vecto_vehicle-primary_heavyBus_nonSmart.xml", 4, TestName = "Run Primary Bus NonSmart SubUrban Low"),
 		TestCase(@"TestData\Integration\Buses\vecto_vehicle-primary_heavyBus_SmartPS.xml", 4, TestName = "Run Primary Bus SmartPS SubUrban Low"),
 		TestCase(@"TestData\Integration\Buses\vecto_vehicle-primary_heavyBus_SmartES.xml", 4, TestName = "Run Primary Bus SmartES SubUrban Low"),