diff --git a/VECTOAux/VectoAuxiliariesTests/Mocks/M1_Mock.vb b/VECTOAux/VectoAuxiliariesTests/Mocks/M1_Mock.vb
index 19067c0c48262b70f7696477e8852505b33e26f7..cfbd53e137f4f6868fb954dc40df0a6ef4f4bdf2 100644
--- a/VECTOAux/VectoAuxiliariesTests/Mocks/M1_Mock.vb
+++ b/VECTOAux/VectoAuxiliariesTests/Mocks/M1_Mock.vb
@@ -1,58 +1,64 @@
 
 
+Imports Microsoft.JScript
 Imports TUGraz.VectoCommon.Utils
 Imports TUGraz.VectoCore.BusAuxiliaries.Interfaces.DownstreamModules
 Imports TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces.DownstreamModules
 
 
 Public Class M1_Mock
-	Implements IM1_AverageHVACLoadDemand
-
-	Public _AveragePowerDemandAtAlternatorFromHVACElectricsWatts As Watt
-	Public _AveragePowerDemandAtCrankFromHVACElectricsWatts As Watt
-	Public _AveragePowerDemandAtCrankFromHVACMechanicalsWatts As Watt
-	'Public _HVACFuelingLitresPerHour As KilogramPerSecond
-
-	Public ReadOnly Property AveragePowerDemandAtAlternatorFromHVACElectrics As Watt _
-		Implements IM1_AverageHVACLoadDemand.AveragePowerDemandAtAlternatorFromHVACElectrics
-    Get         
-		Return _AveragePowerDemandAtAlternatorFromHVACElectricsWatts
-    End Get
-
-	End Property
-
-	Public Function AveragePowerDemandAtCrankFromHVACElectrics() As Watt _
-		Implements IM1_AverageHVACLoadDemand.AveragePowerDemandAtCrankFromHVACElectrics
-		Return _AveragePowerDemandAtCrankFromHVACElectricsWatts
-	End Function
-
-	Public Function AveragePowerDemandAtCrankFromHVACMechanicals() As Watt _
-		Implements IM1_AverageHVACLoadDemand.AveragePowerDemandAtCrankFromHVACMechanicals
-		Return _AveragePowerDemandAtCrankFromHVACMechanicalsWatts
-	End Function
-
-	'Public Function HVACFueling() As KilogramPerSecond _
-	'    Implements IM1_AverageHVACLoadDemand.HVACFueling
-	'	Return _HVACFuelingLitresPerHour
-	'End Function
-
-
-	Public Sub New()
-	End Sub
-
-	Public Sub New(AveragePowerDemandAtAlternatorFromHVACElectricsWatts As Double,
-					AveragePowerDemandAtCrankFromHVACElectricsWatts As Double,
-					AveragePowerDemandAtCrankFromHVACMechanicalsWatts As Double,
-					HVACFuelingLitresPerHour As Double)
-
-		'Assign Values
-		_AveragePowerDemandAtAlternatorFromHVACElectricsWatts =
-			AveragePowerDemandAtAlternatorFromHVACElectricsWatts.SI(Of Watt)()
-		_AveragePowerDemandAtCrankFromHVACElectricsWatts = AveragePowerDemandAtCrankFromHVACElectricsWatts.SI(Of Watt)()
-		_AveragePowerDemandAtCrankFromHVACMechanicalsWatts = AveragePowerDemandAtCrankFromHVACMechanicalsWatts.SI(Of Watt)()
-       		'_HVACFuelingLitresPerHour = HVACFuelingLitresPerHour.SI(Of KilogramPerSecond)() _
-		'(Of LiterPerHour)()
-	End Sub
+    Implements IM1_AverageHVACLoadDemand
+
+    Public _AveragePowerDemandAtAlternatorFromHVACElectricsWatts As Watt
+    Public _AveragePowerDemandAtCrankFromHVACElectricsWatts As Watt
+    Public _AveragePowerDemandAtCrankFromHVACMechanicalsWatts As Watt
+    'Public _HVACFuelingLitresPerHour As KilogramPerSecond
+
+    Public ReadOnly Property AveragePowerDemandAtAlternatorFromHVACElectrics As Watt _
+        Implements IM1_AverageHVACLoadDemand.AveragePowerDemandAtAlternatorFromHVACElectrics
+        Get
+            Return _AveragePowerDemandAtAlternatorFromHVACElectricsWatts
+        End Get
+    End Property
+
+    Public ReadOnly Property AveragePowerDemandAtCrankFromHVACElectrics As Watt _
+        Implements IM1_AverageHVACLoadDemand.AveragePowerDemandAtCrankFromHVACElectrics
+        get
+            Return _AveragePowerDemandAtCrankFromHVACElectricsWatts
+        End get
+    End Property
+
+    Public ReadOnly Property AveragePowerDemandAtCrankFromHVACMechanicals As Watt _
+        Implements IM1_AverageHVACLoadDemand.AveragePowerDemandAtCrankFromHVACMechanicals
+        get
+            Return _AveragePowerDemandAtCrankFromHVACMechanicalsWatts
+        end get
+    End property
+
+    'Public Function HVACFueling() As KilogramPerSecond _
+    '    Implements IM1_AverageHVACLoadDemand.HVACFueling
+    '	Return _HVACFuelingLitresPerHour
+    'End Function
+
+
+    Public Sub New()
+    End Sub
+
+    Public Sub New(AveragePowerDemandAtAlternatorFromHVACElectricsWatts As Double,
+                   AveragePowerDemandAtCrankFromHVACElectricsWatts As Double,
+                   AveragePowerDemandAtCrankFromHVACMechanicalsWatts As Double,
+                   HVACFuelingLitresPerHour As Double)
+
+        'Assign Values
+        _AveragePowerDemandAtAlternatorFromHVACElectricsWatts =
+            AveragePowerDemandAtAlternatorFromHVACElectricsWatts.SI (Of Watt)()
+        _AveragePowerDemandAtCrankFromHVACElectricsWatts =
+            AveragePowerDemandAtCrankFromHVACElectricsWatts.SI (Of Watt)()
+        _AveragePowerDemandAtCrankFromHVACMechanicalsWatts =
+            AveragePowerDemandAtCrankFromHVACMechanicalsWatts.SI (Of Watt)()
+        '_HVACFuelingLitresPerHour = HVACFuelingLitresPerHour.SI(Of KilogramPerSecond)() _
+        '(Of LiterPerHour)()
+    End Sub
 
     Public Sub ResetCalculations() Implements IAbstractModule.ResetCalculations
         Throw New NotImplementedException
diff --git a/VECTOAux/VectoAuxiliariesTests/Mocks/M3_Mock.vb b/VECTOAux/VectoAuxiliariesTests/Mocks/M3_Mock.vb
index 60127173d3b13a3d535cd05e5556ef63a1f055e8..2c59631023d50ee4f8bbdc776170f51e35da93f4 100644
--- a/VECTOAux/VectoAuxiliariesTests/Mocks/M3_Mock.vb
+++ b/VECTOAux/VectoAuxiliariesTests/Mocks/M3_Mock.vb
@@ -4,38 +4,40 @@ Imports TUGraz.VectoCore.BusAuxiliaries.Interfaces.DownstreamModules
 Imports TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces.DownstreamModules
 
 Public Class M3_Mock
-	Implements IM3_AveragePneumaticLoadDemand
+    Implements IM3_AveragePneumaticLoadDemand
 
-	Public _GetAveragePowerDemandAtCrankFromPneumatics As Watt
-	Public _TotalAirConsumedPerCycle As NormLiterPerSecond
-	Private _totalAirDemand As NormLiter
+    Public _GetAveragePowerDemandAtCrankFromPneumatics As Watt
+    Public _TotalAirConsumedPerCycle As NormLiterPerSecond
+    Private _totalAirDemand As NormLiter
 
 
-	Public Function GetAveragePowerDemandAtCrankFromPneumatics() As Watt _
-		Implements IM3_AveragePneumaticLoadDemand.GetAveragePowerDemandAtCrankFromPneumatics
-		Return _GetAveragePowerDemandAtCrankFromPneumatics
-	End Function
+    Public Function GetAveragePowerDemandAtCrankFromPneumatics() As Watt _
+        Implements IM3_AveragePneumaticLoadDemand.GetAveragePowerDemandAtCrankFromPneumatics
+        Return _GetAveragePowerDemandAtCrankFromPneumatics
+    End Function
 
-	Public ReadOnly Property TotalAirDemand As NormLiter Implements IM3_AveragePneumaticLoadDemand.TotalAirDemand
-		Get
-			Return _totalAirDemand
-		End Get
-	End Property
+    Public ReadOnly Property TotalAirDemand As NormLiter Implements IM3_AveragePneumaticLoadDemand.TotalAirDemand
+        Get
+            Return _totalAirDemand
+        End Get
+    End Property
 
-	Public Function AverageAirConsumed() As NormLiterPerSecond _
-		Implements IM3_AveragePneumaticLoadDemand.AverageAirConsumed
-		Return _TotalAirConsumedPerCycle
-	End Function
+    Public ReadOnly Property AverageAirConsumed() As NormLiterPerSecond _
+        Implements IM3_AveragePneumaticLoadDemand.AverageAirConsumed
+        get
+            Return _TotalAirConsumedPerCycle
+        end get
+    End property
 
 
-	Public Sub New()
-	End Sub
+    Public Sub New()
+    End Sub
 
-	Public Sub New(GetAveragePowerDemandAtCrankFromPneumatics As Double, TotalAirConsumedPerCycle As Double)
+    Public Sub New(GetAveragePowerDemandAtCrankFromPneumatics As Double, TotalAirConsumedPerCycle As Double)
 
-		_GetAveragePowerDemandAtCrankFromPneumatics = GetAveragePowerDemandAtCrankFromPneumatics.SI(Of Watt)()
-		_TotalAirConsumedPerCycle = TotalAirConsumedPerCycle.SI(Of NormLiterPerSecond)()
-	End Sub
+        _GetAveragePowerDemandAtCrankFromPneumatics = GetAveragePowerDemandAtCrankFromPneumatics.SI (Of Watt)()
+        _TotalAirConsumedPerCycle = TotalAirConsumedPerCycle.SI (Of NormLiterPerSecond)()
+    End Sub
 
     Public Sub ResetCalculations() Implements IAbstractModule.ResetCalculations
         Throw New NotImplementedException
diff --git a/VECTOAux/VectoAuxiliariesTests/VectoAuxiliariesTests.vbproj b/VECTOAux/VectoAuxiliariesTests/VectoAuxiliariesTests.vbproj
index 66f4baf353191f69513f14df048783468d53c81a..0bd4c2c6c484408e9b6011a9bb1c06b5ed90989b 100644
--- a/VECTOAux/VectoAuxiliariesTests/VectoAuxiliariesTests.vbproj
+++ b/VECTOAux/VectoAuxiliariesTests/VectoAuxiliariesTests.vbproj
@@ -66,6 +66,7 @@
     <OptionInfer>On</OptionInfer>
   </PropertyGroup>
   <ItemGroup>
+    <Reference Include="Microsoft.JScript" />
     <Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
     <Reference Include="Moq, Version=4.2.1510.2205, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
       <HintPath>..\..\packages\Moq.4.2.1510.2205\lib\net40\Moq.dll</HintPath>
diff --git a/VectoCommon/VectoCommon/BusAuxiliaries/IAuxiliaryConfig.cs b/VectoCommon/VectoCommon/BusAuxiliaries/IAuxiliaryConfig.cs
index b2da7f68ec57b1ef933b37c7e191a73f33718636..f6c4aadbdf60637d2438a93888e85717588384e6 100644
--- a/VectoCommon/VectoCommon/BusAuxiliaries/IAuxiliaryConfig.cs
+++ b/VectoCommon/VectoCommon/BusAuxiliaries/IAuxiliaryConfig.cs
@@ -36,7 +36,7 @@ namespace TUGraz.VectoCommon.BusAuxiliaries {
 
 		IVehicleData VehicleData { get; }
 
-		IFuelConsumptionMap FuelMap { get; }
+		//IFuelConsumptionMap FuelMap { get; }
 
 		ISignals Signals { get; }
 
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/BusAuxiliaries.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/BusAuxiliaries.cs
index dc58f61dc580cc08391d1a5b2eb4b6b49761b7b2..abd4c09068860820c6aa120421064cc31e74779b 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/BusAuxiliaries.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/BusAuxiliaries.cs
@@ -23,404 +23,417 @@ using TUGraz.VectoCore.Models.BusAuxiliaries.Util;
 
 namespace TUGraz.VectoCore.Models.BusAuxiliaries
 {
-    /// <summary>
-    /// ''' Main entry point for the advanced auxiliary module. 
-    /// ''' This class represents slide number 17 titled Calculations of Cycle FC accounting for Smart Auxiliaries.
-    /// ''' </summary>
-    /// ''' <remarks></remarks>
-    public class BusAuxiliaries : IBusAuxiliaries
-    {
-        protected internal IAuxiliaryConfig auxConfig;
-
-        // Supporting classes which may generate event messages
-        //private ICompressorMap compressorMap;
-
-        //private SSMTOOL ssmTool;
-        //private SSMTOOL ssmToolModule14;
-
-        //private IAlternatorMap alternatorMap;
-
-        private IFuelConsumptionMap fuelMap;
-
-        // Classes which compose the model.
-        private IM0_NonSmart_AlternatorsSetEfficiency M0;
-
-        private IM0_5_SmartAlternatorSetEfficiency M0_5;
-        private IM1_AverageHVACLoadDemand M1;
-        private IM2_AverageElectricalLoadDemand M2;
-        private IM3_AveragePneumaticLoadDemand M3;
-        private IM4_AirCompressor M4;
-        private IM5_SmartAlternatorSetGeneration M5;
-        private IM6 M6;
-        private IM7 M7;
-        private IM8 M8;
-        //private IM9 M9;
-        //private IM10 M10;
-        //private IM11 M11;
-        //private IM12 M12;
-        //private IM13 M13;
-        //private IM14 M14;
-
-
-        public BusAuxiliaries()
-        {
-            Signals = new Signals();
-        }
-        
-        public void Initialise(
-            IAuxiliaryConfig auxCfg, IFuelProperties fuelProperties /*string IAuxPath, string vectoFilePath*/)
-        {
-            Signals.CurrentCycleTimeInSeconds = 0;
-            auxConfig = auxCfg; //new AuxiliaryConfig(auxPath);
-
-            // Pass some signals from config to Signals. ( These are stored in the configuration but shared in the signal distribution around modules )
-            //Signals.SmartElectrics = auxConfig.ElectricalUserInputsConfig.SmartElectrical;
-
-            //Signals.StoredEnergyEfficiency = auxConfig.ElectricalUserInputsConfig.StoredEnergyEfficiency;
-            //Signals.SmartPneumatics = auxConfig.PneumaticUserInputsConfig.SmartAirCompression;
-
-            //Signals.PneumaticOverrunUtilisation = auxConfig.PneumaticAuxillariesConfig.OverrunUtilisationForCompressionFraction;
-
-            //var alternatorMap = auxConfig.ElectricalUserInputsConfig.AlternatorMap;
-            var compressorMap = auxConfig.PneumaticUserInputsConfig.CompressorMap;
-
-            // fuelMap = New cMAP()
-            // fuelMap.FilePath = FilePathUtils.ResolveFilePath(vectoDirectory, VectoInputs.FuelMap)
-            // If Not fuelMap.ReadFile() Then
-            // MessageBox.Show("Unable to read fuel map, aborting.")
-            // Return
-            // End If
-            // fuelMap.Triangulate()
-            fuelMap = auxCfg.FuelMap;
-
-            // SSM HVAC
-            //var ssmPath = FilePathUtils.ResolveFilePath(vectoDirectory, auxConfig.HvacUserInputsConfig.SSMFilePath);
-            //var BusDatabase = FilePathUtils.ResolveFilePath(vectoDirectory, auxConfig.HvacUserInputsConfig.BusDatabasePath);
-            var ssmTool = new SSMTOOL(auxConfig.SSMInputs);
-            
-
-            M0 = new M00Impl(auxConfig.ElectricalUserInputsConfig, Signals, ssmTool.ElectricalWAdjusted);
-
-            var M0_5tmp = new M0_5Impl(
-                M0, auxConfig.ElectricalUserInputsConfig, Signals);
-            M0_5 = M0_5tmp;
-
-            M1 = new M01Impl(M0, auxConfig.ElectricalUserInputsConfig.AlternatorGearEfficiency,
-                auxConfig.PneumaticUserInputsConfig.CompressorGearEfficiency, ssmTool.ElectricalWAdjusted, ssmTool.MechanicalWBaseAdjusted);
-
-            M2 = new M02Impl(M0, auxConfig.ElectricalUserInputsConfig);
-
-            M3 = new M03Impl(auxConfig, compressorMap, auxCfg.Actuations, Signals);
-
-            M4 = new M04Impl(
-                compressorMap, auxConfig.PneumaticUserInputsConfig.CompressorGearRatio,
-                auxConfig.PneumaticUserInputsConfig.CompressorGearEfficiency, Signals);
-            M5 = new M05Impl(
-                M0_5tmp, auxConfig.ElectricalUserInputsConfig.PowerNetVoltage,
-                auxConfig.ElectricalUserInputsConfig.AlternatorGearEfficiency);
-            M6 = new M06Impl(auxCfg.ElectricalUserInputsConfig, M1, M2, M3, M4, M5, Signals);
-            M7 = new M07Impl(M5, M6, Signals);
-            M8 = new M08Impl(auxConfig, M1, M6, M7, Signals);
-
-            //M9 = new M09Impl(M1, M4, M6, M8, fuelMap, auxConfig.PneumaticAuxillariesConfig, Signals);
-            //M10 = new M10Impl(M3, M9);
-            //M11 = new M11Impl(M1, M3, M6, M8, fuelMap, Signals);
-            //M12 = new M12Impl(M10, M11);
-            //M13 = new M13Impl(auxCfg, M10, M11, M12, Signals);
-
-            // This duplicate SSM is being created for use in M14 as its properties will be dynamically changed at that point
-            // to honour EngineWaste Heat Usage in Fueling calculations.
-            //var ssmToolModule14 = new SSMTOOL(auxCfg.SSMInputs);
-
-            //M14 = new M14Impl(M13, ssmToolModule14, fuelProperties, Signals);
-        }
-
-
-        public ISignals Signals { get; set; }
-
-        public Watt ElectricPowerConsumerSum
-        {
-            get { return M1.AveragePowerDemandAtAlternatorFromHVACElectrics + M2.AveragePowerDemandAtAlternatorFromElectrics; }
-        }
-
-        public Watt ElectricPowerGenerated
-        {
-            get {
-                if (!auxConfig.ElectricalUserInputsConfig.SmartElectrical) {
-                    return ElectricPowerConsumerSum;
-                }
-
-                var inIdle = Signals.Idle && (!Signals.ClutchEngaged || Signals.InNeutral);
-                return
-                    (M6.OverrunFlag && Signals.ClutchEngaged && !Signals.InNeutral ? M6.SmartElecOnlyAltPowerGenAtCrank : 0.SI<Watt>())
-                    + (inIdle ? M5.AlternatorsGenerationPowerAtCrankIdle() : M5.AlternatorsGenerationPowerAtCrankTractionOn()) *
-                    auxConfig.ElectricalUserInputsConfig.AlternatorGearEfficiency *
-                    auxConfig.ElectricalUserInputsConfig.AlternatorMap.GetEfficiency(Signals.EngineSpeed, 0.SI<Ampere>());
-            }
-        }
-
-        public NormLiter PSDemandConsumer
-        {
-            get { return M3.AverageAirConsumed() * Signals.SimulationInterval; }
-        }
-
-        public NormLiter PSAirGenerated
-        {
-            get {
-                if (!auxConfig.PneumaticUserInputsConfig.SmartAirCompression) {
-                    return PSDemandConsumer;
-                }
-
-                return M6.OverrunFlag && M8.CompressorFlag && Signals.ClutchEngaged && !Signals.InNeutral
-                    ? M4.GetFlowRate() *
-                    auxConfig.PneumaticAuxillariesConfig.OverrunUtilisationForCompressionFraction
-                    * Signals.SimulationInterval
-                    : PSDemandConsumer;
-            }
-        }
-
-        public NormLiter PSAirGeneratedAlwaysOn
-        {
-            get { return M4.GetFlowRate() * Signals.SimulationInterval; }
-        }
-
-        public NormLiter PSAirGeneratedDrag
-        {
-            get {
-                if (!auxConfig.PneumaticUserInputsConfig.SmartAirCompression) {
-                    return 0.SI<NormLiter>();
-                }
-
-                return (M6.OverrunFlag && M8.CompressorFlag && Signals.ClutchEngaged && !Signals.InNeutral
-                            ? M4.GetFlowRate() *
-                            auxConfig.PneumaticAuxillariesConfig.OverrunUtilisationForCompressionFraction
-                            : 0.SI<NormLiterPerSecond>()) * Signals.SimulationInterval;
-            }
-        }
-
-        public Watt PSPowerDemandAirGenerated
-        {
-            get {
-                if (!auxConfig.PneumaticUserInputsConfig.SmartAirCompression) {
-                    return M3.GetAveragePowerDemandAtCrankFromPneumatics();
-                }
-
-                return M7.SmartPneumaticOnlyAuxAirCompPowerGenAtCrank;
-            }
-        }
-
-        public Watt PSPowerCompressorAlwaysOn
-        {
-            get { return M4.GetPowerCompressorOn(); }
-        }
-
-        public Watt PSPowerCompressorDragOnly
-        {
-            get { return M4.GetPowerCompressorOff(); }
-        }
-
-        public Watt HVACMechanicalPowerConsumer
-        {
-            get { return M1.AveragePowerDemandAtCrankFromHVACMechanicals(); }
-        }
-
-        public Watt HVACMechanicalPowerGenerated
-        {
-            get { return M1.AveragePowerDemandAtCrankFromHVACMechanicals(); }
-        }
-
-        public Watt HVACElectricalPowerConsumer
-        {
-            get { return M1.AveragePowerDemandAtAlternatorFromHVACElectrics; }
-        }
-
-        public void CycleStep(Second seconds)
-        {
-            try {
-                //M9.CycleStep(seconds);
-                //M10.CycleStep(seconds);
-                //M11.CycleStep(seconds);
-
-                Signals.CurrentCycleTimeInSeconds += seconds.Value();
-            } catch (Exception ex) {
-                //MessageBox.Show("Exception: " + ex.Message + " Stack Trace: " + ex.StackTrace);
-                throw ex;
-            }
-        }
-
-        public bool Running
-        {
-            get { throw new NotImplementedException(); }
-        }
-
-        //public bool RunStart(IAuxiliaryConfig auxCfg, IFuelProperties fuelProperties)
-        //{
-        //	try {
-        //		Initialise(auxCfg, fuelProperties);
-        //	} catch (Exception) {
-        //		return false;
-        //	}
-
-        //	return true;
-        //}
-
-        public bool RunStop(ref string message)
-        {
-            throw new NotImplementedException();
-        }
-
-        public void ResetCalculations()
-        {
-            var modules = new List<IAbstractModule>() { M0, M0_5, M1, M2, M3, M4, M5, M6, M7, M8 };
-            foreach (var moduel in modules)
-                moduel.ResetCalculations();
-        }
-
-        //public Kilogram TotalFuel
-        //{
-        //	get {
-        //		if (M13 != null)
-        //			return M14.TotalCycleFC;
-        //		else
-        //			return 0.SI<Kilogram>();
-        //	}
-        //}
-
-        //public Liter TotalFuelLITRES
-        //{
-        //	get {
-        //		if (M14 != null)
-        //			return M14.TotalCycleFCLitres;
-        //		else
-        //			return 0.SI<Liter>();
-        //	}
-        //}
-
-        public string AuxiliaryName
-        {
-            get { return "BusAuxiliaries"; }
-        }
-
-        public string AuxiliaryVersion
-        {
-            get { return "Version 1.0 Beta"; }
-        }
-
-
-        // Helpers
-
-
-        //public bool ValidateAAUXFile(string filePath, ref string message)
-        //{
-        //	var validResult = FilePathUtils.ValidateFilePath(filePath, ".aaux", ref message);
-
-        //	return validResult;
-        //}
-
-        // Diagnostics outputs for testing purposes in Vecto.
-        // Eventually this can be removed or rendered non effective to reduce calculation load on the model.
-        //public double AA_NonSmartAlternatorsEfficiency
-        //{
-        //	get { return M0.AlternatorsEfficiency; }
-        //}
-
-        //public Ampere AA_SmartIdleCurrent_Amps
-        //{
-        //	get { return M0_5.SmartIdleCurrent; }
-        //}
-
-        //public double AA_SmartIdleAlternatorsEfficiency
-        //{
-        //	get { return M0_5.AlternatorsEfficiencyIdleResultCard; }
-        //}
-
-        //public Ampere AA_SmartTractionCurrent_Amps
-        //{
-        //	get { return M0_5.SmartTractionCurrent; }
-        //}
-
-        //public double AA_SmartTractionAlternatorEfficiency
-        //{
-        //	get { return M0_5.AlternatorsEfficiencyTractionOnResultCard; }
-        //}
-
-        //public Ampere AA_SmartOverrunCurrent_Amps
-        //{
-        //	get { return M0_5.SmartOverrunCurrent; }
-        //}
-
-        //public double AA_SmartOverrunAlternatorEfficiency
-        //{
-        //	get { return M0_5.AlternatorsEfficiencyOverrunResultCard; }
-        //}
-
-        //public NormLiterPerSecond AA_CompressorFlowRate_LitrePerSec
-        //{
-        //	get { return M4.GetFlowRate(); }
-        //}
-
-        //public bool AA_OverrunFlag
-        //{
-        //	get { return M6.OverrunFlag; }
-        //}
-
-        //public int? AA_EngineIdleFlag
-        //{
-        //	get {
-        //		return Signals.EngineSpeed <= Signals.EngineIdleSpeed && (!Signals.ClutchEngaged || Signals.InNeutral) ? 1 : 0;
-        //	}
-        //}
-
-        //public bool AA_CompressorFlag
-        //{
-        //	get { return M8.CompressorFlag; }
-        //}
-
-        //public Kilogram AA_TotalCycleFC_Grams
-        //{
-        //	get { return M14.TotalCycleFC; }
-        //}
-
-        //public Liter AA_TotalCycleFC_Litres
-        //{
-        //	get {
-        //		return M14.TotalCycleFCLitres;
-        //	}
-        //}
-
-        public Watt AuxiliaryPowerAtCrankWatts
-        {
-            get { return M8.AuxPowerAtCrankFromElectricalHVACAndPneumaticsAncillaries; }
-        }
-
-        //public Watt AA_AveragePowerDemandCrankHVACMechanicals
-        //{
-        //	get { return M1.AveragePowerDemandAtCrankFromHVACMechanicals(); }
-        //}
-
-        //public Watt AA_AveragePowerDemandCrankHVACElectricals
-        //{
-        //	get { return M1.AveragePowerDemandAtCrankFromHVACElectrics(); }
-        //}
-
-        //public Watt AA_AveragePowerDemandCrankElectrics
-        //{
-        //	get { return M2.GetAveragePowerAtCrankFromElectrics(); }
-        //}
-
-        //public Watt AA_AveragePowerDemandCrankPneumatics
-        //{
-        //	get { return M3.GetAveragePowerDemandAtCrankFromPneumatics(); }
-        //}
-
-        //public Kilogram AA_TotalCycleFuelConsumptionCompressorOff
-        //{
-        //	get { return M9.TotalCycleFuelConsumptionCompressorOffContinuously; }
-        //}
-
-        //public Kilogram AA_TotalCycleFuelConsumptionCompressorOn
-        //{
-        //	get { return M9.TotalCycleFuelConsumptionCompressorOnContinuously; }
-        //}
-    }
+	/// <summary>
+	/// ''' Main entry point for the advanced auxiliary module. 
+	/// ''' This class represents slide number 17 titled Calculations of Cycle FC accounting for Smart Auxiliaries.
+	/// ''' </summary>
+	/// ''' <remarks></remarks>
+	public class BusAuxiliaries : IBusAuxiliaries
+	{
+		protected internal IAuxiliaryConfig auxConfig;
+
+		// Supporting classes which may generate event messages
+		//private ICompressorMap compressorMap;
+
+		//private SSMTOOL ssmTool;
+		//private SSMTOOL ssmToolModule14;
+
+		//private IAlternatorMap alternatorMap;
+
+		//private IFuelConsumptionMap fuelMap;
+
+		// Classes which compose the model.
+		private IM0_NonSmart_AlternatorsSetEfficiency M0;
+
+		private IM0_5_SmartAlternatorSetEfficiency M0_5;
+		private IM1_AverageHVACLoadDemand M1;
+		private IM2_AverageElectricalLoadDemand M2;
+		private IM3_AveragePneumaticLoadDemand M3;
+		private IM4_AirCompressor M4;
+		private IM5_SmartAlternatorSetGeneration M5;
+		private IM6 M6;
+		private IM7 M7;
+		private IM8 M8;
+		//private IM9 M9;
+		//private IM10 M10;
+		//private IM11 M11;
+		//private IM12 M12;
+		//private IM13 M13;
+		//private IM14 M14;
+
+
+		public BusAuxiliaries()
+		{
+			Signals = new Signals();
+		}
+		
+		public void Initialise(
+			IAuxiliaryConfig auxCfg, IFuelProperties fuelProperties /*string IAuxPath, string vectoFilePath*/)
+		{
+			Signals.CurrentCycleTimeInSeconds = 0;
+			auxConfig = auxCfg; //new AuxiliaryConfig(auxPath);
+
+			// Pass some signals from config to Signals. ( These are stored in the configuration but shared in the signal distribution around modules )
+			//Signals.SmartElectrics = auxConfig.ElectricalUserInputsConfig.SmartElectrical;
+
+			//Signals.StoredEnergyEfficiency = auxConfig.ElectricalUserInputsConfig.StoredEnergyEfficiency;
+			//Signals.SmartPneumatics = auxConfig.PneumaticUserInputsConfig.SmartAirCompression;
+
+			//Signals.PneumaticOverrunUtilisation = auxConfig.PneumaticAuxillariesConfig.OverrunUtilisationForCompressionFraction;
+
+			//var alternatorMap = auxConfig.ElectricalUserInputsConfig.AlternatorMap;
+			var compressorMap = auxConfig.PneumaticUserInputsConfig.CompressorMap;
+
+			// fuelMap = New cMAP()
+			// fuelMap.FilePath = FilePathUtils.ResolveFilePath(vectoDirectory, VectoInputs.FuelMap)
+			// If Not fuelMap.ReadFile() Then
+			// MessageBox.Show("Unable to read fuel map, aborting.")
+			// Return
+			// End If
+			// fuelMap.Triangulate()
+			//fuelMap = auxCfg.FuelMap;
+
+			// SSM HVAC
+			//var ssmPath = FilePathUtils.ResolveFilePath(vectoDirectory, auxConfig.HvacUserInputsConfig.SSMFilePath);
+			//var BusDatabase = FilePathUtils.ResolveFilePath(vectoDirectory, auxConfig.HvacUserInputsConfig.BusDatabasePath);
+			var ssmTool = new SSMTOOL(auxConfig.SSMInputs);
+			
+
+			M0 = new M00Impl(auxConfig.ElectricalUserInputsConfig, Signals, ssmTool.ElectricalWAdjusted);
+
+			M0_5 = new M0_5Impl(
+				M0, auxConfig.ElectricalUserInputsConfig, Signals);
+
+			M1 = new M01Impl(M0, auxConfig.ElectricalUserInputsConfig.AlternatorGearEfficiency,
+				auxConfig.PneumaticUserInputsConfig.CompressorGearEfficiency, ssmTool.ElectricalWAdjusted, ssmTool.MechanicalWBaseAdjusted);
+
+			M2 = new M02Impl(M0, auxConfig.ElectricalUserInputsConfig);
+
+			M3 = new M03Impl(auxConfig, compressorMap, auxCfg.Actuations, Signals);
+
+			M4 = new M04Impl(
+				compressorMap, auxConfig.PneumaticUserInputsConfig.CompressorGearRatio,
+				auxConfig.PneumaticUserInputsConfig.CompressorGearEfficiency, Signals);
+			M5 = new M05Impl(
+				M0_5, auxConfig.ElectricalUserInputsConfig.PowerNetVoltage,
+				auxConfig.ElectricalUserInputsConfig.AlternatorGearEfficiency);
+			M6 = new M06Impl(auxCfg.ElectricalUserInputsConfig, M1, M2, M3, M4, M5, Signals);
+			M7 = new M07Impl(M5, M6, Signals);
+			M8 = new M08Impl(auxConfig, M1, M6, M7, Signals);
+
+			//M9 = new M09Impl(M1, M4, M6, M8, fuelMap, auxConfig.PneumaticAuxillariesConfig, Signals);
+			//M10 = new M10Impl(M3, M9);
+			//M11 = new M11Impl(M1, M3, M6, M8, fuelMap, Signals);
+			//M12 = new M12Impl(M10, M11);
+			//M13 = new M13Impl(auxCfg, M10, M11, M12, Signals);
+
+			// This duplicate SSM is being created for use in M14 as its properties will be dynamically changed at that point
+			// to honour EngineWaste Heat Usage in Fueling calculations.
+			//var ssmToolModule14 = new SSMTOOL(auxCfg.SSMInputs);
+
+			//M14 = new M14Impl(M13, ssmToolModule14, fuelProperties, Signals);
+		}
+
+
+		public ISignals Signals { get; set; }
+
+		public Watt ElectricPowerConsumer
+		{
+			get { return M2.AveragePowerDemandAtAlternatorFromElectrics; }
+		}
+
+		public Watt HVACElectricalPowerConsumer
+		{
+			get { return M1.AveragePowerDemandAtAlternatorFromHVACElectrics; }
+		}
+
+
+		public Watt ElectricPowerConsumerSum
+		{
+			get { return M1.AveragePowerDemandAtAlternatorFromHVACElectrics + M2.AveragePowerDemandAtAlternatorFromElectrics; }
+		}
+
+		public Watt ElectricPowerDemandMech
+		{
+			get { return M2.GetAveragePowerAtCrankFromElectrics() + M1.AveragePowerDemandAtCrankFromHVACElectrics; }
+		}
+
+		public Watt ElectricPowerGenerated
+		{
+			get {
+				if (!auxConfig.ElectricalUserInputsConfig.SmartElectrical) {
+					return ElectricPowerConsumerSum;
+				}
+
+				var inIdle = Signals.Idle && (!Signals.ClutchEngaged || Signals.InNeutral);
+				return
+					(M6.OverrunFlag && Signals.ClutchEngaged && !Signals.InNeutral ? M6.SmartElecOnlyAltPowerGenAtCrank : 0.SI<Watt>())
+					+ (inIdle ? M5.AlternatorsGenerationPowerAtCrankIdle() : M5.AlternatorsGenerationPowerAtCrankTractionOn()) *
+					auxConfig.ElectricalUserInputsConfig.AlternatorGearEfficiency *
+					auxConfig.ElectricalUserInputsConfig.AlternatorMap.GetEfficiency(Signals.EngineSpeed, 0.SI<Ampere>());
+			}
+		}
+
+		public NormLiter PSDemandConsumer
+		{
+			get { return M3.AverageAirConsumed * Signals.SimulationInterval; }
+		}
+
+		public NormLiter PSAirGenerated
+		{
+			get {
+				if (!auxConfig.PneumaticUserInputsConfig.SmartAirCompression) {
+					return PSDemandConsumer;
+				}
+
+				return M6.OverrunFlag && M8.CompressorFlag && Signals.ClutchEngaged && !Signals.InNeutral
+					? M4.GetFlowRate() *
+					auxConfig.PneumaticAuxillariesConfig.OverrunUtilisationForCompressionFraction
+					* Signals.SimulationInterval
+					: PSDemandConsumer;
+			}
+		}
+
+		public NormLiter PSAirGeneratedAlwaysOn
+		{
+			get { return M4.GetFlowRate() * Signals.SimulationInterval; }
+		}
+
+		public NormLiter PSAirGeneratedDrag
+		{
+			get {
+				if (!auxConfig.PneumaticUserInputsConfig.SmartAirCompression) {
+					return 0.SI<NormLiter>();
+				}
+
+				return (M6.OverrunFlag && M8.CompressorFlag && Signals.ClutchEngaged && !Signals.InNeutral
+							? M4.GetFlowRate() *
+							auxConfig.PneumaticAuxillariesConfig.OverrunUtilisationForCompressionFraction
+							: 0.SI<NormLiterPerSecond>()) * Signals.SimulationInterval;
+			}
+		}
+
+		public Watt PSPowerDemandAirGenerated
+		{
+			get {
+				if (!auxConfig.PneumaticUserInputsConfig.SmartAirCompression) {
+					return M3.GetAveragePowerDemandAtCrankFromPneumatics();
+				}
+
+				return M7.SmartPneumaticOnlyAuxAirCompPowerGenAtCrank;
+			}
+		}
+
+		public Watt PSPowerCompressorAlwaysOn
+		{
+			get { return M4.GetPowerCompressorOn(); }
+		}
+
+		public Watt PSPowerCompressorDragOnly
+		{
+			get { return M4.GetPowerCompressorOff(); }
+		}
+
+		public Watt HVACMechanicalPowerConsumer
+		{
+			get { return M1.AveragePowerDemandAtCrankFromHVACMechanicals; }
+		}
+
+		public Watt HVACMechanicalPowerGenerated
+		{
+			get { return M1.AveragePowerDemandAtCrankFromHVACMechanicals; }
+		}
+
+		
+
+		public string AuxiliaryName
+		{
+			get { return "BusAuxiliaries"; }
+		}
+
+		public string AuxiliaryVersion
+		{
+			get { return "Version 2.0 DEV"; }
+		}
+
+		public Watt AuxiliaryPowerAtCrankWatts
+		{
+			get { return M8.AuxPowerAtCrankFromElectricalHVACAndPneumaticsAncillaries; }
+		}
+
+
+		public void CycleStep(Second seconds)
+		{
+			try {
+				//M9.CycleStep(seconds);
+				//M10.CycleStep(seconds);
+				//M11.CycleStep(seconds);
+
+				Signals.CurrentCycleTimeInSeconds += seconds.Value();
+			} catch (Exception ex) {
+				//MessageBox.Show("Exception: " + ex.Message + " Stack Trace: " + ex.StackTrace);
+				throw ex;
+			}
+		}
+
+		//public bool Running
+		//{
+		//    get { throw new NotImplementedException(); }
+		//}
+
+		//public bool RunStart(IAuxiliaryConfig auxCfg, IFuelProperties fuelProperties)
+		//{
+		//	try {
+		//		Initialise(auxCfg, fuelProperties);
+		//	} catch (Exception) {
+		//		return false;
+		//	}
+
+		//	return true;
+		//}
+
+		//public bool RunStop(ref string message)
+		//{
+		//    throw new NotImplementedException();
+		//}
+
+		public void ResetCalculations()
+		{
+			var modules = new List<IAbstractModule>() { M0, M0_5, M1, M2, M3, M4, M5, M6, M7, M8 };
+			foreach (var moduel in modules)
+				moduel.ResetCalculations();
+		}
+
+		//public Kilogram TotalFuel
+		//{
+		//	get {
+		//		if (M13 != null)
+		//			return M14.TotalCycleFC;
+		//		else
+		//			return 0.SI<Kilogram>();
+		//	}
+		//}
+
+		//public Liter TotalFuelLITRES
+		//{
+		//	get {
+		//		if (M14 != null)
+		//			return M14.TotalCycleFCLitres;
+		//		else
+		//			return 0.SI<Liter>();
+		//	}
+		//}
+
+		// Helpers
+
+
+		//public bool ValidateAAUXFile(string filePath, ref string message)
+		//{
+		//	var validResult = FilePathUtils.ValidateFilePath(filePath, ".aaux", ref message);
+
+		//	return validResult;
+		//}
+
+		// Diagnostics outputs for testing purposes in Vecto.
+		// Eventually this can be removed or rendered non effective to reduce calculation load on the model.
+		//public double AA_NonSmartAlternatorsEfficiency
+		//{
+		//	get { return M0.AlternatorsEfficiency; }
+		//}
+
+		//public Ampere AA_SmartIdleCurrent_Amps
+		//{
+		//	get { return M0_5.SmartIdleCurrent; }
+		//}
+
+		//public double AA_SmartIdleAlternatorsEfficiency
+		//{
+		//	get { return M0_5.AlternatorsEfficiencyIdleResultCard; }
+		//}
+
+		//public Ampere AA_SmartTractionCurrent_Amps
+		//{
+		//	get { return M0_5.SmartTractionCurrent; }
+		//}
+
+		//public double AA_SmartTractionAlternatorEfficiency
+		//{
+		//	get { return M0_5.AlternatorsEfficiencyTractionOnResultCard; }
+		//}
+
+		//public Ampere AA_SmartOverrunCurrent_Amps
+		//{
+		//	get { return M0_5.SmartOverrunCurrent; }
+		//}
+
+		//public double AA_SmartOverrunAlternatorEfficiency
+		//{
+		//	get { return M0_5.AlternatorsEfficiencyOverrunResultCard; }
+		//}
+
+		//public NormLiterPerSecond AA_CompressorFlowRate_LitrePerSec
+		//{
+		//	get { return M4.GetFlowRate(); }
+		//}
+
+		//public bool AA_OverrunFlag
+		//{
+		//	get { return M6.OverrunFlag; }
+		//}
+
+		//public int? AA_EngineIdleFlag
+		//{
+		//	get {
+		//		return Signals.EngineSpeed <= Signals.EngineIdleSpeed && (!Signals.ClutchEngaged || Signals.InNeutral) ? 1 : 0;
+		//	}
+		//}
+
+		//public bool AA_CompressorFlag
+		//{
+		//	get { return M8.CompressorFlag; }
+		//}
+
+		//public Kilogram AA_TotalCycleFC_Grams
+		//{
+		//	get { return M14.TotalCycleFC; }
+		//}
+
+		//public Liter AA_TotalCycleFC_Litres
+		//{
+		//	get {
+		//		return M14.TotalCycleFCLitres;
+		//	}
+		//}
+
+
+		//public Watt AA_AveragePowerDemandCrankHVACMechanicals
+		//{
+		//	get { return M1.AveragePowerDemandAtCrankFromHVACMechanicals(); }
+		//}
+
+		//public Watt AA_AveragePowerDemandCrankHVACElectricals
+		//{
+		//	get { return M1.AveragePowerDemandAtCrankFromHVACElectrics(); }
+		//}
+
+		//public Watt AA_AveragePowerDemandCrankElectrics
+		//{
+		//	get { return M2.GetAveragePowerAtCrankFromElectrics(); }
+		//}
+
+		//public Watt AA_AveragePowerDemandCrankPneumatics
+		//{
+		//	get { return M3.GetAveragePowerDemandAtCrankFromPneumatics(); }
+		//}
+
+		//public Kilogram AA_TotalCycleFuelConsumptionCompressorOff
+		//{
+		//	get { return M9.TotalCycleFuelConsumptionCompressorOffContinuously; }
+		//}
+
+		//public Kilogram AA_TotalCycleFuelConsumptionCompressorOn
+		//{
+		//	get { return M9.TotalCycleFuelConsumptionCompressorOnContinuously; }
+		//}
+	}
 }
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/Electrics/M00Impl.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/Electrics/M00Impl.cs
index d821ff076ccd1784b7c91980423713490a6ca96a..08ec6af75033648be8dd2b293d7cca9e442cfc18 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/Electrics/M00Impl.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/Electrics/M00Impl.cs
@@ -15,7 +15,8 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.Electric
 		protected ISignals _signals;
 		protected Watt _ElectricalPowerW;
 
-		private Ampere _totalAverageDemandAmpsIncludingBaseLoad;
+		//private Ampere _totalAverageDemandAmpsIncludingBaseLoad;
+		private Ampere _totalDemandAmps;
 
 		//private IM0_1_AverageElectricLoadDemand _m0_1;
 
@@ -40,10 +41,10 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.Electric
 
 			_powernetVoltage = powernetVoltage;
 
-			_totalAverageDemandAmpsIncludingBaseLoad = electricConfig.AverageCurrentDemandInclBaseLoad;
 			_signals = signals;
 
 			_ElectricalPowerW = electricalPowerHVAC;
+			_totalDemandAmps = electricConfig.AverageCurrentDemandInclBaseLoad + GetHVACElectricalCurrentDemand;
 		}
 
 		#region Implementation of IM0_NonSmart_AlternatorsSetEfficiency
@@ -56,9 +57,8 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.Electric
 		public double AlternatorsEfficiency
 		{
 			get {
-				var baseCurrentDemandAmps = _totalAverageDemandAmpsIncludingBaseLoad; // _electricalConsumersList.GetTotalAverageDemandAmps(false);
-				var totalDemandAmps = baseCurrentDemandAmps + GetHVACElectricalCurrentDemand;
-				return _alternatorEfficiencyMap.GetEfficiency(_signals.EngineSpeed, totalDemandAmps);
+				
+				return _alternatorEfficiencyMap.GetEfficiency(_signals.EngineSpeed, _totalDemandAmps);
 			}
 		}
 
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/HVAC/M01Impl.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/HVAC/M01Impl.cs
index 12bee5f1ebe5c7184d80253551def6b2db733cc4..80781cba0f039be4925de8bdc9bd3a7c7c0a2aac 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/HVAC/M01Impl.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/HVAC/M01Impl.cs
@@ -48,9 +48,9 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.HVAC
 
 		#region Implementation of IM1_AverageHVACLoadDemand
 
-		public Watt AveragePowerDemandAtCrankFromHVACMechanicals()
+		public Watt AveragePowerDemandAtCrankFromHVACMechanicals
 		{
-			return _MechanicalPower * (1 / _compressorGearEfficiency);
+			get { return _MechanicalPower * (1 / _compressorGearEfficiency); }
 		}
 
 		public Watt AveragePowerDemandAtAlternatorFromHVACElectrics
@@ -58,9 +58,9 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.HVAC
 			get { return _ElectricalPower; }
 		}
 
-		public Watt AveragePowerDemandAtCrankFromHVACElectrics()
+		public Watt AveragePowerDemandAtCrankFromHVACElectrics
 		{
-			return _ElectricalPower * (1 / _m0.AlternatorsEfficiency / _alternatorGearEfficiency);
+			get { return _ElectricalPower * (1 / _m0.AlternatorsEfficiency / _alternatorGearEfficiency); }
 		}
 
 		//public KilogramPerSecond HVACFueling()
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M06Impl.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M06Impl.cs
index 735351a53fbbe92b3c13db0365ba3a0b4f3d8a83..b085d47db0a710d79e76de39cb1df145796c887d 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M06Impl.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M06Impl.cs
@@ -38,9 +38,9 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl
 
 		protected override void DoCalculate()
 		{
-			var sum1 = _m1.AveragePowerDemandAtCrankFromHVACElectrics() + _m2.GetAveragePowerAtCrankFromElectrics();
+			var sum1 = _m1.AveragePowerDemandAtCrankFromHVACElectrics + _m2.GetAveragePowerAtCrankFromElectrics();
 			var sw1 = _smartElectrics ? _m5.AlternatorsGenerationPowerAtCrankTractionOn() : sum1;
-			var sum2 = _m1.AveragePowerDemandAtCrankFromHVACMechanicals() + sw1 +
+			var sum2 = _m1.AveragePowerDemandAtCrankFromHVACMechanicals + sw1 +
 						_m3.GetAveragePowerDemandAtCrankFromPneumatics();
 			var sum3 = _signals.EngineMotoringPower + _signals.InternalEnginePower + sum2;
 			var vc0 = sum3 <= 0;
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M08Impl.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M08Impl.cs
index 335ef34c6b831e886644dcbc080cb2224857d46f..a9b54f4f2f7b0d9f7f385a06b02f24bcf747126a 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M08Impl.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M08Impl.cs
@@ -39,7 +39,7 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl
 			var sw2 = _smartPneumatics ? sum3 : sum4;
 			var sw5 = _smartElectrics ? sw1 : sw2;
 			var sw6 = !_signals.EngineStopped;
-			var sum5 = _m1.AveragePowerDemandAtCrankFromHVACMechanicals() + sw5;
+			var sum5 = _m1.AveragePowerDemandAtCrankFromHVACMechanicals + sw5;
 			var sum6 = sw6 ? sum5 : 0.SI<Watt>();
 
 			var sw3 = _smartPneumatics ? _m7.SmartElectricalAndPneumaticAuxAltPowerGenAtCrank :
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M09Impl.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M09Impl.cs
index 71590f168261359f9baabcd0a5ae5f8bf3ab75ed..fe3b4e47408344b61b48aa82b1e07dd0a9f9e7bf 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M09Impl.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M09Impl.cs
@@ -84,7 +84,7 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl
 				throw new DivideByZeroException("Engine speed is zero and cannot be used as a divisor.");
 			}
 
-			var s1 = M6.AvgPowerDemandAtCrankFromElectricsIncHVAC + M1.AveragePowerDemandAtCrankFromHVACMechanicals();
+			var s1 = M6.AvgPowerDemandAtCrankFromElectricsIncHVAC + M1.AveragePowerDemandAtCrankFromHVACMechanicals;
 			var s2 = M4.GetPowerCompressorOn() / S0(Signals.EngineSpeed);
 			var s3 = M4.GetPowerCompressorOff() / S0(Signals.EngineSpeed);
 			var s4 = s1 / S0(Signals.EngineSpeed);
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M10Impl.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M10Impl.cs
index 88e278703c8bd3b4ca2337c89d10d53212fee510..183f6123c20445550f27183fc03a465de68af546 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M10Impl.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M10Impl.cs
@@ -94,9 +94,9 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl
 
 		public void CycleStep(Second stepTimeInSeconds)
 		{
-			_AverageAirConsumedLitre += double.IsNaN(M3.AverageAirConsumed().Value())
+			_AverageAirConsumedLitre += double.IsNaN(M3.AverageAirConsumed.Value())
 				? 0.SI<NormLiter>()
-				: M3.AverageAirConsumed() * stepTimeInSeconds;
+				: M3.AverageAirConsumed * stepTimeInSeconds;
 		}
 
 		#endregion
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M11Impl.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M11Impl.cs
index fa9d56e280c61cfbe05314ccc239e2a7476ca020..b5e5f782b8360b21387a91bdea8d18b866b79122 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M11Impl.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/M11Impl.cs
@@ -110,7 +110,7 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl
 
 			AG6 += (M6.AvgPowerDemandAtCrankFromElectricsIncHVAC * stepTimeInSeconds);
 
-			var sum2 = M3.GetAveragePowerDemandAtCrankFromPneumatics() + M1.AveragePowerDemandAtCrankFromHVACMechanicals();
+			var sum2 = M3.GetAveragePowerDemandAtCrankFromPneumatics() + M1.AveragePowerDemandAtCrankFromHVACMechanicals;
 			var sum3 = M8.SmartElectricalAlternatorPowerGenAtCrank / Sum0(Signals.EngineSpeed);
 			var sum4 = sum2 / Sum0(Signals.EngineSpeed);
 			var sum9 = Signals.EngineDrivelineTorque +
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/Pneumatics/M03Impl.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/Pneumatics/M03Impl.cs
index 32e0cc395026f38fdbfd79018423e11517b5508d..74fcfce928798c1336824abcb47f2bce5de8b56a 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/Pneumatics/M03Impl.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/DownstreamModules/Impl/Pneumatics/M03Impl.cs
@@ -9,61 +9,56 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.Pneumati
 	{
 		protected IPneumaticUserInputsConfig _pneumaticUserInputsConfig;
 		protected IPneumaticsConsumersDemand _pneumaticAuxillariesConfig;
-		protected IActuations Actuations;
 		protected ICompressorMap _pneumaticsCompressorFlowRateMap;
 		protected Kilogram _vehicleMassKG;
 		protected ISignals _signals;
-		protected NormLiter _totalAirDemand;
-		
+
 
 		//public M03Impl(IPneumaticUserInputsConfig pneumaticsUserInputConfig, IPneumaticsAuxilliariesConfig pneumaticsAuxillariesConfig, IPneumaticActuationsMap pneumaticsActuationsMap, ICompressorMap pneumaticsCompressorFlowRateMap, Kilogram vehicleMassKG, string cycleName, ISignals signals)
 		public M03Impl(IAuxiliaryConfig auxConfig, ICompressorMap compressorMap, IActuations actuations, ISignals signals)
 		{
 			_pneumaticUserInputsConfig = auxConfig.PneumaticUserInputsConfig;
 			_pneumaticAuxillariesConfig = auxConfig.PneumaticAuxillariesConfig;
-			Actuations = actuations;
 			_pneumaticsCompressorFlowRateMap = compressorMap;
 			_vehicleMassKG = auxConfig.VehicleData.TotalVehicleMass;
 			
 			_signals = signals;
 
 			//'Calculate the Total Required Air Delivery Rate L / S
-			_totalAirDemand = TotalAirDemandCalculation();
+			TotalAirDemand = TotalAirDemandCalculation(actuations);
+			AverageAirConsumed = TotalAirDemand / actuations.CycleTime;
 		}
 
 
-		private NormLiter TotalAirDemandCalculation()
+		public NormLiter TotalAirDemandCalculation(IActuations actuations)
 		{
 			//'These calculation are done directly from formulae provided from a supplied spreadsheet.
-
-
+			
 			//'* * Breaks * *
-			double numActuationsPerCycle = Actuations.Braking;
 			//'=IF(K10 = "yes", IF(COUNTBLANK(F33), G33, F33), IF(COUNTBLANK(F34), G34, F34)) * K16
 			var airConsumptionPerActuation =  _pneumaticAuxillariesConfig.Braking * _vehicleMassKG;
-			var breaks = numActuationsPerCycle * airConsumptionPerActuation ;
+			var breaks = actuations.Braking * airConsumptionPerActuation ;
 
 			//'* * ParkBrakesBreakplus2Doors * *Park break +2 doors
-			numActuationsPerCycle = Actuations.ParkBrakeAndDoors;
 			//'=SUM(IF(K14 = "electric", 0, IF(COUNTBLANK(F36), G36, F36)), PRODUCT(K16 * IF(COUNTBLANK(F37), G37, F37)))
 			airConsumptionPerActuation = _pneumaticUserInputsConfig.Doors == ConsumerTechnology.Electrically
 				? 0.SI<NormLiter>()
 				: _pneumaticAuxillariesConfig.DoorOpening;
 			airConsumptionPerActuation += _pneumaticAuxillariesConfig.StopBrakeActuation * _vehicleMassKG;
-			var parkBrakesplus2Doors = (numActuationsPerCycle * airConsumptionPerActuation);
+			var parkBrakesplus2Doors = (actuations.ParkBrakeAndDoors * airConsumptionPerActuation);
 
 			//'* * Kneeling * *
-			numActuationsPerCycle = Actuations.Kneeling;
+			
 			//'=IF(COUNTBLANK(F35), G35, F35) * K11 * K16
 			airConsumptionPerActuation = _pneumaticAuxillariesConfig.BreakingWithKneeling *
 										_pneumaticUserInputsConfig.KneelingHeight * _vehicleMassKG;
-			var kneeling = (numActuationsPerCycle * airConsumptionPerActuation);
+			var kneeling = (actuations.Kneeling * airConsumptionPerActuation);
 
 			//'* * AdBlue * *
 			//	'=IF(K13 = "electric", 0, G39 * F54) - Supplied Spreadsheet
 			var adBlue = _pneumaticUserInputsConfig.AdBlueDosing == ConsumerTechnology.Electrically
 				? 0.SI<NormLiter>()
-				: _pneumaticAuxillariesConfig.AdBlueInjection * Actuations.CycleTime;
+				: _pneumaticAuxillariesConfig.AdBlueInjection * actuations.CycleTime;
 
 			//'* * Regeneration * *
 			//	'=SUM(R6: R9) * IF(K9 = "yes", IF(COUNTBLANK(F41), G41, F41), IF(COUNTBLANK(F40), G40, F40)) - Supplied SpreadSheet
@@ -75,22 +70,20 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.Pneumati
 
 			//'* * DeadVolBlowOuts * *
 			//	'=IF(COUNTBLANK(F43), G43, F43) / (F54 / 60) - Supplied SpreadSheet
-			//numActuationsPerCycle =;
 			airConsumptionPerActuation = _pneumaticAuxillariesConfig.DeadVolume;
 			var deadVolBlowOuts = (airConsumptionPerActuation * _pneumaticAuxillariesConfig.DeadVolBlowOuts *
-									Actuations.CycleTime).Cast<NormLiter>();
+									actuations.CycleTime).Cast<NormLiter>();
 
 			//'* * AirSuspension * *
 			//	'=IF(K12 = "electrically", 0, G38 * F54) - Suplied Spreadsheet
 			var airSuspension = _pneumaticUserInputsConfig.AirSuspensionControl == ConsumerTechnology.Electrically
 				? 0.SI<NormLiter>()
-				: _pneumaticAuxillariesConfig.AirControlledSuspension * Actuations.CycleTime;
+				: _pneumaticAuxillariesConfig.AirControlledSuspension * actuations.CycleTime;
 
 			//'* * Total Air Demand**
 			var totalAirDemand = breaks + parkBrakesplus2Doors + kneeling + adBlue + regeneration + deadVolBlowOuts +
 								airSuspension;
-
-
+			
 			return totalAirDemand;
 		}
 
@@ -102,28 +95,17 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.DownstreamModules.Impl.Pneumati
 			var cmp = _pneumaticsCompressorFlowRateMap.Interpolate(
 				_signals.EngineSpeed * _pneumaticUserInputsConfig.CompressorGearRatio);
 
-			var sum1 = _totalAirDemand / Actuations.CycleTime;
 			var sum6 = cmp.FlowRate;
-			
 			var sum7 = cmp.PowerOn - cmp.PowerOff;
-
-			var sum2 = (sum7 / sum6 * sum1); // ' Watt / Nl/s * Nl/s = Watt
+			var sum2 = (sum7 / sum6 * AverageAirConsumed); // ' Watt / Nl/s * Nl/s = Watt
 			var sum3 = sum2 + cmp.PowerOff;
 			var sum4 = sum3 * (1 / _pneumaticUserInputsConfig.CompressorGearEfficiency);
 			return sum4;
 		}
 
-		public NormLiterPerSecond AverageAirConsumed()
-		{
-			var sum1 = _totalAirDemand / Actuations.CycleTime;
-			return sum1;
-		}
+		public NormLiterPerSecond AverageAirConsumed { get; }
 
-		public NormLiter TotalAirDemand
-		{
-			get { return _totalAirDemand; }
-		}
-		
+		public NormLiter TotalAirDemand { get; }
 
 		#endregion
 	}
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/DownstreamModules/IM1_AverageHVACLoadDemand.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/DownstreamModules/IM1_AverageHVACLoadDemand.cs
index 064c52b65e9ed4185f90ba31d1cb8aa44204ec15..66165fb80bf5a10076fb17a8a1a521d187bd973b 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/DownstreamModules/IM1_AverageHVACLoadDemand.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/DownstreamModules/IM1_AverageHVACLoadDemand.cs
@@ -21,7 +21,7 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces.DownstreamModules
 		/// 	</summary>
 		/// 	<returns></returns>
 		/// 	<remarks></remarks>
-		Watt AveragePowerDemandAtCrankFromHVACMechanicals();
+		Watt AveragePowerDemandAtCrankFromHVACMechanicals { get; }
 
 		/// <summary>
 		/// 	Average Power Demand At Alternator From HVAC Electrics (W)
@@ -35,7 +35,7 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces.DownstreamModules
 		/// 	</summary>
 		/// 	<returns></returns>
 		/// 	<remarks></remarks>
-		Watt AveragePowerDemandAtCrankFromHVACElectrics();
+		Watt AveragePowerDemandAtCrankFromHVACElectrics { get; }
 
 		///// <summary>
 		///// 	HVAC Fueling   (L/H)
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/DownstreamModules/IM3_AveragePneumaticLoadDemand.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/DownstreamModules/IM3_AveragePneumaticLoadDemand.cs
index 344e8bcf808d29579a030831f9634eafd379d192..7b526d6c84463fe25450d983ad40558590b033b4 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/DownstreamModules/IM3_AveragePneumaticLoadDemand.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/DownstreamModules/IM3_AveragePneumaticLoadDemand.cs
@@ -17,7 +17,7 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces.DownstreamModules
 	{
 		Watt GetAveragePowerDemandAtCrankFromPneumatics();
 
-		NormLiterPerSecond AverageAirConsumed();
+		NormLiterPerSecond AverageAirConsumed { get; }
 
 		NormLiter TotalAirDemand { get; }
 	}
diff --git a/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/IBusAuxiliaries.cs b/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/IBusAuxiliaries.cs
index 403f0b97de21c091b219af4bda5f71c1e9ec430e..249e1764b70808c21216020144e03b768370165a 100644
--- a/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/IBusAuxiliaries.cs
+++ b/VectoCore/VectoCore/Models/BusAuxiliaries/Interfaces/IBusAuxiliaries.cs
@@ -12,8 +12,8 @@
 using TUGraz.VectoCommon.BusAuxiliaries;
 using TUGraz.VectoCommon.Utils;
 
-namespace TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces {
-
+namespace TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces
+{
 	//public delegate void AuxiliaryEventEventHandler(ref object sender, string message, AdvancedAuxiliaryMessageType messageType);
 
 	public interface IBusAuxiliaries
@@ -23,7 +23,7 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces {
 		//event AuxiliaryEventEventHandler AuxiliaryEvent;
 
 		// Information
-		bool Running { get; }
+		//bool Running { get; }
 
 		string AuxiliaryName { get; }
 		string AuxiliaryVersion { get; }
@@ -64,7 +64,6 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces {
 		///// <returns></returns>
 		///// <remarks></remarks>
 		//Liter TotalFuelLITRES { get; }
-
 		/// <summary>
 		/// Total Power Demans At Crank From Auxuliaries (W)
 		/// </summary>
@@ -81,7 +80,6 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces {
 		/// <returns></returns>
 		/// <remarks></remarks>
 		//IVectoInputs VectoInputs { get; set; }
-
 		/// <summary>
 		/// Signals From Vecto 
 		/// </summary>
@@ -90,19 +88,23 @@ namespace TUGraz.VectoCore.Models.BusAuxiliaries.Interfaces {
 		/// <remarks></remarks>
 		ISignals Signals { get; set; }
 
+		Watt HVACElectricalPowerConsumer { get; }
+
+		Watt ElectricPowerConsumer { get; }
+
 		Watt ElectricPowerConsumerSum { get; }
 		Watt ElectricPowerGenerated { get; }
-		NormLiter PSDemandConsumer { get;  }
+		Watt ElectricPowerDemandMech { get; }
+		NormLiter PSDemandConsumer { get; }
 		NormLiter PSAirGenerated { get; }
 		NormLiter PSAirGeneratedAlwaysOn { get; }
 		NormLiter PSAirGeneratedDrag { get; }
-		Watt PSPowerDemandAirGenerated { get;  }
-		Watt PSPowerCompressorAlwaysOn { get;  }
-		Watt PSPowerCompressorDragOnly { get;  }
+		Watt PSPowerDemandAirGenerated { get; }
+		Watt PSPowerCompressorAlwaysOn { get; }
+		Watt PSPowerCompressorDragOnly { get; }
 		Watt HVACMechanicalPowerConsumer { get; }
 		Watt HVACMechanicalPowerGenerated { get; }
 
-		Watt HVACElectricalPowerConsumer { get; }
 
 		///// <summary>
 		///// Configure Auxuliaries ( Launches Config Form )
diff --git a/VectoCore/VectoCore/Models/Simulation/Data/ModalResultField.cs b/VectoCore/VectoCore/Models/Simulation/Data/ModalResultField.cs
index 8a431c4fec8fdc49e93c240db5a5c6db4ebe1673..a5ea09d349c669398aefaa7c981a3a0ab22165d0 100644
--- a/VectoCore/VectoCore/Models/Simulation/Data/ModalResultField.cs
+++ b/VectoCore/VectoCore/Models/Simulation/Data/ModalResultField.cs
@@ -126,15 +126,15 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 		/// </summary>
 		[ModalResultField(typeof(SI), name: "FC-WHTCc", caption: "FC-WHTCc{0} [g/h]", outputFactor: 3600 * 1000)] FCWHTCc,
 
-		/// <summary>
-		/// [g/h] Fuel consumption after smart auxiliary correction.
-		/// </summary>
-		[ModalResultField(typeof(SI), name: "FC-AAUX", caption: "FC-AAUX{0} [g/h]", outputFactor: 3600 * 1000)] FCAAUX,
+		///// <summary>
+		///// [g/h] Fuel consumption after smart auxiliary correction.
+		///// </summary>
+		//[ModalResultField(typeof(SI), name: "FC-AAUX", caption: "FC-AAUX{0} [g/h]", outputFactor: 3600 * 1000)] FCAAUX,
 
 		/// <summary>
 		/// [g/h] Fuel consumption after correction for ADAS technologies. (Based on FC-AAUXc.)
 		/// </summary>
-		[ModalResultField(typeof(SI), name: "FC-ESS", caption: "FC-ESS{0} [g/h]", outputFactor: 3600 * 1000)] FCEngineStopStart,
+		[ModalResultField(typeof(SI), name: "FC-ESS", caption: "FC-ESS{0} [g/h]", outputFactor: 3600 * 1000)] FCICEStopStart,
 
 		/// <summary>
 		/// [g/h] Fuel consumption after WHTC Correction. (Based on FC-ADAS.)
@@ -250,9 +250,9 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 
 		[ModalResultField(typeof(SI), caption: "P_trac [kW]", outputFactor: 1e-3)] P_trac,
 
-		[ModalResultField(typeof(SI), caption: "P_eng_fcmap [kW]", outputFactor: 1e-3)] P_eng_fcmap,
+		[ModalResultField(typeof(SI), caption: "P_ice_fcmap [kW]", outputFactor: 1e-3)] P_ice_fcmap,
 
-		[ModalResultField(typeof(SI), caption: "P_eng_full_stat [kW]", outputFactor: 1e-3)] P_eng_full_stat,
+		[ModalResultField(typeof(SI), caption: "P_ice_full_stat [kW]", outputFactor: 1e-3)] P_ice_full_stat,
 
 		/// <summary>
 		///     [kW]	Power demand of Auxiliary with ID xxx. See also Aux Dialog and Driving Cycle.
@@ -260,18 +260,23 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 		[ModalResultField(typeof(SI), caption: "P_aux_{0} [kW]", outputFactor: 1e-3)] P_aux_,
 
 		/// Bus Aux Data
+		[ModalResultField(typeof(SI), caption: "P_busAux_ES_HVAC [kW]", outputFactor: 1e-3)] P_busAux_ES_HVAC,
+
+		[ModalResultField(typeof(SI), caption: "P_busAux_ES_other [kW]", outputFactor: 1e-3)] P_busAux_ES_other,
+
+		[ModalResultField(typeof(SI), caption: "P_busAux_ES_consumer_sum [kW]", outputFactor: 1e-3)] P_busAux_ES_consumer_sum,
 
-		[ModalResultField(typeof(SI), caption: "P_busAux_el_consumer_sum [kW]", outputFactor: 1e-3)] P_busAux_ES_consumer_sum,
+		[ModalResultField(typeof(SI), caption: "P_busAux_ES_gen [kW]", outputFactor: 1e-3)] P_busAux_ES_generated,
 
-		[ModalResultField(typeof(SI), caption: "P_busAux_el_gen [kW]", outputFactor: 1e-3)] P_busAux_ES_generated,
+		[ModalResultField(typeof(SI), caption: "P_busAux_ES_mech [kW]", outputFactor: 1e-3)] P_busAux_ES_sum_mech,
 
-		[ModalResultField(typeof(SI), caption: "Nl_busAux_consumer [Nl]")] Nl_busAux_consumer,
+		[ModalResultField(typeof(SI), caption: "Nl_busAux_consumer [Nl]")] Nl_busAux_PS_consumer,
 
-		[ModalResultField(typeof(SI), caption: "Nl_busAux_gen [Nl]")] Nl_busAux_generated,
+		[ModalResultField(typeof(SI), caption: "Nl_busAux_gen [Nl]")] Nl_busAux_PS_generated,
 
-		[ModalResultField(typeof(SI), caption: "Nl_busAux_gen_max [Nl]")] Nl_busAux_generated_alwaysOn,
+		[ModalResultField(typeof(SI), caption: "Nl_busAux_gen_max [Nl]")] Nl_busAux_PS_generated_alwaysOn,
 
-		[ModalResultField(typeof(SI), caption: "Nl_busAux_gen_drag [Nl]")] Nl_busAux_generated_dragOnly,
+		[ModalResultField(typeof(SI), caption: "Nl_busAux_gen_drag [Nl]")] Nl_busAux_PS_generated_dragOnly,
 
 		[ModalResultField(typeof(SI), caption: "P_busAux_PS_gen [kW]", outputFactor: 1e-3)] P_busAux_PS_generated,
 
diff --git a/VectoCore/VectoCore/Models/Simulation/Impl/PowertrainBuilder.cs b/VectoCore/VectoCore/Models/Simulation/Impl/PowertrainBuilder.cs
index b88340d7a99e3bbe1bced8deef733c723322eabc..b277fb80d4f1a57e1364163a8365b49b99401215 100644
--- a/VectoCore/VectoCore/Models/Simulation/Impl/PowertrainBuilder.cs
+++ b/VectoCore/VectoCore/Models/Simulation/Impl/PowertrainBuilder.cs
@@ -429,8 +429,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
 
 		private static IGearbox GetGearbox(IVehicleContainer container, VectoRunData runData)
 		{
-			IShiftStrategy strategy;
-			strategy = GetShiftStrategy(runData, container);
+			var strategy = GetShiftStrategy(runData, container);
 			switch (runData.GearboxData.Type) {
 				case GearboxType.AMT:
 				case GearboxType.MT:
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/AMTShiftStrategyOptimized.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/AMTShiftStrategyOptimized.cs
index 1a8654131c3982d3bb4b9a73df70fc8cb055cc4b..8599356ccca08927daa579030c0514d7f55a6b20 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/AMTShiftStrategyOptimized.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/AMTShiftStrategyOptimized.cs
@@ -227,6 +227,11 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 			var minFc = double.MaxValue;
 			var fcCurrent = double.NaN;
 
+			var estimatedVelocityPostShift = VelocityDropData.Interpolate(DataBus.VehicleSpeed, DataBus.RoadGradient ?? 0.SI<Radian>());
+			if (estimatedVelocityPostShift.IsSmaller(0)) {
+				return currentGear;
+			}
+
 			if (response1.EngineTorqueDemand.IsSmaller(DeclarationData.GearboxTCU.DragMarginFactor * fld[currentGear].DragLoadStationaryTorque(response1.EngineSpeed))) {
 				return currentGear;
 			}
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/BusAuxiliariesAdapter.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/BusAuxiliariesAdapter.cs
index d0b63e58f5660f60a541aa7178b9cb8a5b3b1615..fa6d9becf14af26ec80d85063fad8a2bfd014ad2 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/BusAuxiliariesAdapter.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/BusAuxiliariesAdapter.cs
@@ -171,16 +171,20 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
             //CurrentState.TotalFuelConsumption = Auxiliaries.TotalFuel;
             container[ModalResultField.P_aux] = CurrentState.PowerDemand;
 
+			container[ModalResultField.P_busAux_ES_HVAC] = Auxiliaries.HVACElectricalPowerConsumer;
+			container[ModalResultField.P_busAux_ES_other] = Auxiliaries.ElectricPowerConsumer;
 			container[ModalResultField.P_busAux_ES_consumer_sum] = Auxiliaries.ElectricPowerConsumerSum;
 			container[ModalResultField.P_busAux_ES_generated] = Auxiliaries.ElectricPowerGenerated;
+			container[ModalResultField.P_busAux_ES_sum_mech] = Auxiliaries.ElectricPowerDemandMech;
 
-			container[ModalResultField.Nl_busAux_consumer] = Auxiliaries.PSDemandConsumer;
-			container[ModalResultField.Nl_busAux_generated] = Auxiliaries.PSAirGenerated;
-			container[ModalResultField.Nl_busAux_generated_alwaysOn] = Auxiliaries.PSAirGeneratedAlwaysOn;
-			container[ModalResultField.Nl_busAux_generated_dragOnly] = Auxiliaries.PSAirGeneratedDrag;
+			container[ModalResultField.Nl_busAux_PS_consumer] = Auxiliaries.PSDemandConsumer;
+			container[ModalResultField.Nl_busAux_PS_generated] = Auxiliaries.PSAirGenerated;
+			container[ModalResultField.Nl_busAux_PS_generated_alwaysOn] = Auxiliaries.PSAirGeneratedAlwaysOn;
+			container[ModalResultField.Nl_busAux_PS_generated_dragOnly] = Auxiliaries.PSAirGeneratedDrag;
 			container[ModalResultField.P_busAux_PS_generated] = Auxiliaries.PSPowerDemandAirGenerated;
 			container[ModalResultField.P_busAux_PS_generated_alwaysOn] = Auxiliaries.PSPowerCompressorAlwaysOn;
 			container[ModalResultField.P_busAux_PS_generated_dragOnly] = Auxiliaries.PSPowerCompressorDragOnly;
+
 			container[ModalResultField.P_busAux_HVACmech_consumer] = Auxiliaries.HVACMechanicalPowerConsumer;
 			container[ModalResultField.P_busAux_HVACmech_gen] = Auxiliaries.HVACMechanicalPowerGenerated;
 
@@ -239,10 +243,10 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
             CurrentState = new BusAuxState();
         }
 
-        protected internal KilogramPerSecond AAuxFuelConsumption
-        {
-            get { return (CurrentState.TotalFuelConsumption - PreviousState.TotalFuelConsumption) / CurrentState.dt; }
-        }
+        //protected internal KilogramPerSecond AAuxFuelConsumption
+        //{
+        //    get { return (CurrentState.TotalFuelConsumption - PreviousState.TotalFuelConsumption) / CurrentState.dt; }
+        //}
 
         private Watt GetBusAuxPowerDemand(Second absTime, Second dt, NewtonMeter torquePowerTrain, NewtonMeter torqueEngine,
             PerSecond angularSpeed, bool dryRun = false)
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/CombustionEngine.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/CombustionEngine.cs
index 7755f4cd3ab8a8f10e31d085dcf1b6de20e7088d..02cf1895b9ce45d7a15f0b332095d90c408d6e57 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/CombustionEngine.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/CombustionEngine.cs
@@ -381,7 +381,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 				DataBus.ExecutionMode == ExecutionMode.Engineering ? 20.RPMtoRad() : 1e-3.RPMtoRad())) {
 				Log.Warn("EngineSpeed below idling speed! n_eng_avg: {0}, n_idle: {1}", avgEngineSpeed.AsRPM, EngineIdleSpeed.AsRPM);
 			}
-			container[ModalResultField.P_eng_fcmap] = CurrentState.EngineTorque * avgEngineSpeed;
+			container[ModalResultField.P_ice_fcmap] = CurrentState.EngineTorque * avgEngineSpeed;
 			container[ModalResultField.P_ice_out] = container[ModalResultField.P_ice_out] is DBNull
 				? CurrentState.EngineTorqueOut * avgEngineSpeed
 				: container[ModalResultField.P_ice_out];
@@ -391,7 +391,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 			container[ModalResultField.T_ice_fcmap] = CurrentState.EngineTorque;
 
 			container[ModalResultField.P_ice_full] = CurrentState.DynamicFullLoadTorque * avgEngineSpeed;
-			container[ModalResultField.P_eng_full_stat] = CurrentState.StationaryFullLoadTorque * avgEngineSpeed;
+			container[ModalResultField.P_ice_full_stat] = CurrentState.StationaryFullLoadTorque * avgEngineSpeed;
 			container[ModalResultField.P_ice_drag] = CurrentState.FullDragTorque * avgEngineSpeed;
 			container[ModalResultField.T_ice_full] = CurrentState.DynamicFullLoadTorque;
 			container[ModalResultField.T_ice_drag] = CurrentState.FullDragTorque;
@@ -420,19 +420,19 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 				var fcNCVcorr = fc * fuelData.HeatingValueCorrection; // TODO: wird fcNCVcorr
 
 				var fcWHTC = fcNCVcorr * WHTCCorrectionFactor(fuel.FuelData);
-				var fcAAUX = fcWHTC;
+				//var fcAAUX = fcWHTC;
 				var advancedAux = EngineAux as BusAuxiliariesAdapter;
 				if (advancedAux != null) {
 					advancedAux.DoWriteModalResults(container);
-					fcAAUX = advancedAux.AAuxFuelConsumption;
+					//fcAAUX = advancedAux.AAuxFuelConsumption;
 				}
-				var fcFinal = fcAAUX;
+				var fcFinal = fcWHTC; // fcAAUX;
 
 				container[ModalResultField.FCMap, fuelData] = fc;
 				container[ModalResultField.FCNCVc, fuel.FuelData] = fcNCVcorr;
 				container[ModalResultField.FCWHTCc, fuel.FuelData] = fcWHTC;
-				container[ModalResultField.FCAAUX, fuel.FuelData] = fcAAUX;
-				container[ModalResultField.FCEngineStopStart, fuel.FuelData] = fcFinal;
+				//container[ModalResultField.FCAAUX, fuel.FuelData] = fcAAUX;
+				container[ModalResultField.FCICEStopStart, fuel.FuelData] = fcFinal;
 				container[ModalResultField.FCFinal, fuel.FuelData] = fcFinal;
 			}
 		}
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/StopStartCombustionEngine.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/StopStartCombustionEngine.cs
index be33a489871942b8b038037e651fbd1b4d26fbe4..540c609f94154a5e2f3b8a6c2945d8c27a5ac867 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/StopStartCombustionEngine.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/StopStartCombustionEngine.cs
@@ -95,7 +95,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl {
 
 		protected virtual void DoWriteEngineOffResults(IModalDataContainer container)
 		{
-			container[ModalResultField.P_eng_fcmap] = 0.SI<Watt>();
+			container[ModalResultField.P_ice_fcmap] = 0.SI<Watt>();
 			container[ModalResultField.P_ice_out] = 0.SI<Watt>();
 			container[ModalResultField.P_ice_inertia] = 0.SI<Watt>();
 
@@ -103,7 +103,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl {
 			container[ModalResultField.T_ice_fcmap] = 0.SI<NewtonMeter>();
 
 			container[ModalResultField.P_ice_full] = 0.SI<Watt>();
-			container[ModalResultField.P_eng_full_stat] = 0.SI<Watt>();
+			container[ModalResultField.P_ice_full_stat] = 0.SI<Watt>();
 			container[ModalResultField.P_ice_drag] = 0.SI<Watt>();
 			container[ModalResultField.T_ice_full] = 0.SI<NewtonMeter>();
 			container[ModalResultField.T_ice_drag] = 0.SI<NewtonMeter>();
@@ -121,12 +121,11 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl {
 				var fcNCVcorr = fc * fuel.FuelData.HeatingValueCorrection; // TODO: wird fcNCVcorr
 
 				var fcWHTC = fcNCVcorr * WHTCCorrectionFactor(fuel.FuelData);
-				var fcAAUX = fcWHTC;
+				//var fcAAUX = fcWHTC;
 				var advancedAux = EngineAux as BusAuxiliariesAdapter;
 				if (advancedAux != null) {
-					throw new VectoException("Engine Stop/Start with advanced auxiliaries not supported!");
-
-					//advancedAux.DoWriteModalResults(container);
+					//throw new VectoException("Engine Stop/Start with advanced auxiliaries not supported!");
+					advancedAux.DoWriteModalResults(container);
 					//fcAAUX = advancedAux.AAuxFuelConsumption;
 				}
 
@@ -139,8 +138,8 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl {
 				container[ModalResultField.FCMap, fuel.FuelData] = fc;
 				container[ModalResultField.FCNCVc, fuel.FuelData] = fcNCVcorr;
 				container[ModalResultField.FCWHTCc, fuel.FuelData] = fcWHTC;
-				container[ModalResultField.FCAAUX, fuel.FuelData] = fcAAUX;
-				container[ModalResultField.FCEngineStopStart, fuel.FuelData] = fcESS;
+				//container[ModalResultField.FCAAUX, fuel.FuelData] = fcAAUX;
+				container[ModalResultField.FCICEStopStart, fuel.FuelData] = fcESS;
 				container[ModalResultField.FCFinal, fuel.FuelData] = fcFinal;
 			}
 		}
diff --git a/VectoCore/VectoCore/OutputData/IModalDataContainer.cs b/VectoCore/VectoCore/OutputData/IModalDataContainer.cs
index a0a9797bb70956df8618aad1c56e33c7c0ed9c43..d0c222bd1b603735319b74614496f325e6876833 100644
--- a/VectoCore/VectoCore/OutputData/IModalDataContainer.cs
+++ b/VectoCore/VectoCore/OutputData/IModalDataContainer.cs
@@ -306,12 +306,12 @@ namespace TUGraz.VectoCore.OutputData
 
 		public static WattSecond TotalEngineWorkPositive(this IModalDataContainer data)
 		{
-			return data.TimeIntegral<WattSecond>(ModalResultField.P_eng_fcmap, x => x > 0);
+			return data.TimeIntegral<WattSecond>(ModalResultField.P_ice_fcmap, x => x > 0);
 		}
 
 		public static WattSecond TotalEngineWorkNegative(this IModalDataContainer data)
 		{
-			return data.TimeIntegral<WattSecond>(ModalResultField.P_eng_fcmap, x => x < 0);
+			return data.TimeIntegral<WattSecond>(ModalResultField.P_ice_fcmap, x => x < 0);
 		}
 
 		public static WattSecond WorkAuxiliariesDuringEngineStop(this IModalDataContainer data)
@@ -354,7 +354,7 @@ namespace TUGraz.VectoCore.OutputData
 		public static Watt TotalPowerEnginePositiveAverage(this IModalDataContainer data)
 		{
 			var simulationIntervals = data.GetValues<Second>(ModalResultField.simulationInterval);
-			var values = data.GetValues<Watt>(ModalResultField.P_eng_fcmap)
+			var values = data.GetValues<Watt>(ModalResultField.P_ice_fcmap)
 				.Zip(simulationIntervals, (value, dt) => new { Dt = dt, Value = value * dt })
 				.Where(v => v.Value > 0).ToList();
 			if (values.Any()) {
diff --git a/VectoCore/VectoCore/OutputData/ModFilter/ActualModalDataFilter.cs b/VectoCore/VectoCore/OutputData/ModFilter/ActualModalDataFilter.cs
index 866ccfd100efb8e72c957407192f4f49ac4b6620..6e6eb67c2ba8c141ef3e94a1e784887f3342dbaa 100644
--- a/VectoCore/VectoCore/OutputData/ModFilter/ActualModalDataFilter.cs
+++ b/VectoCore/VectoCore/OutputData/ModFilter/ActualModalDataFilter.cs
@@ -97,10 +97,10 @@ namespace TUGraz.VectoCore.OutputData.ModFilter
 
 				SetConstantValues(current, start, end,
 					ModalResultField.P_ice_full,
-					ModalResultField.P_eng_full_stat,
+					ModalResultField.P_ice_full_stat,
 					ModalResultField.P_ice_out,
 					ModalResultField.P_ice_drag,
-					ModalResultField.P_eng_fcmap,
+					ModalResultField.P_ice_fcmap,
 					ModalResultField.P_clutch_out,
 					ModalResultField.P_clutch_loss,
 					ModalResultField.P_aux,
@@ -128,7 +128,7 @@ namespace TUGraz.VectoCore.OutputData.ModFilter
 				SetConstantValues(current, start, end,
 					ModalResultField.FCMap,
 					ModalResultField.FCNCVc,
-					ModalResultField.FCAAUX,
+					//ModalResultField.FCAAUX,
 					ModalResultField.FCWHTCc,
 					ModalResultField.FCFinal);
 
diff --git a/VectoCore/VectoCore/OutputData/ModalDataContainer.cs b/VectoCore/VectoCore/OutputData/ModalDataContainer.cs
index af55d8cfed3a91748259cddc08192b9151b46820..edc47df58c33ece71acac1a12c79cac43d095d89 100644
--- a/VectoCore/VectoCore/OutputData/ModalDataContainer.cs
+++ b/VectoCore/VectoCore/OutputData/ModalDataContainer.cs
@@ -62,8 +62,8 @@ namespace TUGraz.VectoCore.OutputData
 		private Meter _distance;
 
 		public static readonly IList<ModalResultField> FuelConsumptionSignals = new[] {
-			ModalResultField.FCMap, ModalResultField.FCNCVc, ModalResultField.FCWHTCc, ModalResultField.FCAAUX,
-			ModalResultField.FCEngineStopStart,  ModalResultField.FCFinal
+			ModalResultField.FCMap, ModalResultField.FCNCVc, ModalResultField.FCWHTCc, // ModalResultField.FCAAUX,
+			ModalResultField.FCICEStopStart,  ModalResultField.FCFinal
 		};
 
 		private readonly Dictionary<String, SI> _timeIntegrals = new Dictionary<string, SI>();
@@ -175,7 +175,7 @@ namespace TUGraz.VectoCore.OutputData
 				GetValues(
 					x => x.Field<bool>(ModalResultField.ICEOn.GetName())
 						? new Point(
-							x.Field<SI>(ModalResultField.P_eng_fcmap.GetName()).Value(),
+							x.Field<SI>(ModalResultField.P_ice_fcmap.GetName()).Value(),
 							x.Field<SI>(GetColumnName(fuel, ModalResultField.FCFinal)).Value())
 						: null).Where(x => x != null && x.Y > 0),
 				out k, out d, out r);
@@ -197,9 +197,9 @@ namespace TUGraz.VectoCore.OutputData
 				TimeIntegral<Kilogram>(GetColumnName(fuel, ModalResultField.FCMap));
 				TimeIntegral<Kilogram>(GetColumnName(fuel, ModalResultField.FCNCVc));
 				TimeIntegral<Kilogram>(GetColumnName(fuel, ModalResultField.FCWHTCc));
-				TimeIntegral<Kilogram>(GetColumnName(fuel, ModalResultField.FCAAUX));
+				//TimeIntegral<Kilogram>(GetColumnName(fuel, ModalResultField.FCAAUX));
 				TimeIntegral<Kilogram>(GetColumnName(fuel, ModalResultField.FCMap));
-				TimeIntegral<Kilogram>(GetColumnName(fuel, ModalResultField.FCEngineStopStart));
+				TimeIntegral<Kilogram>(GetColumnName(fuel, ModalResultField.FCICEStopStart));
 				TimeIntegral<Kilogram>(GetColumnName(fuel, ModalResultField.FCFinal));
 				
 			}
@@ -346,9 +346,9 @@ namespace TUGraz.VectoCore.OutputData
 					ModalResultField.T_ice_fcmap,
 					ModalResultField.T_ice_full,
 					ModalResultField.T_ice_drag,
-					ModalResultField.P_eng_fcmap,
+					ModalResultField.P_ice_fcmap,
 					ModalResultField.P_ice_full,
-					ModalResultField.P_eng_full_stat,
+					ModalResultField.P_ice_full_stat,
 					ModalResultField.P_ice_drag,
 					ModalResultField.P_ice_inertia,
 					ModalResultField.P_ice_out,
@@ -396,7 +396,25 @@ namespace TUGraz.VectoCore.OutputData
 						ModalResultField.n_gbx_out_avg,
 						ModalResultField.T_gbx_out
 					});
-
+				if (WriteAdvancedAux) {
+					dataColumns.AddRange(
+						new[] {
+							ModalResultField.P_busAux_ES_HVAC,
+							ModalResultField.P_busAux_ES_other,
+							ModalResultField.P_busAux_ES_consumer_sum,
+							ModalResultField.P_busAux_ES_sum_mech,
+							ModalResultField.P_busAux_ES_generated,
+							ModalResultField.P_busAux_HVACmech_consumer,
+							ModalResultField.P_busAux_HVACmech_gen,
+							ModalResultField.Nl_busAux_PS_consumer,
+							ModalResultField.Nl_busAux_PS_generated,
+							ModalResultField.Nl_busAux_PS_generated_alwaysOn,
+							ModalResultField.Nl_busAux_PS_generated_dragOnly,
+							ModalResultField.P_busAux_PS_generated,
+							ModalResultField.P_busAux_PS_generated_alwaysOn,
+							ModalResultField.P_busAux_PS_generated_dragOnly,
+						});
+				}
 				if (HasTorqueConverter) {
 					dataColumns.AddRange(
 						new[] {
diff --git a/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs b/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs
index e6ed402822c5c63d6485a0e082ee979e2fcc2170..0503e92ab5c29b64ed60eb419f41ef4abaae1608 100644
--- a/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs
+++ b/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs
@@ -352,14 +352,14 @@ namespace TUGraz.VectoCore.OutputData
 				row[FcCol(Fields.FCWHTCC_KM, suffix)] =
 					modData.FuelConsumptionPerMeter(ModalResultField.FCWHTCc, fuel)?.ConvertToGrammPerKiloMeter();
 
-				row[FcCol(Fields.FCAAUX_H, suffix)] =
-					modData.FuelConsumptionPerSecond(ModalResultField.FCAAUX, fuel)?.ConvertToGrammPerHour();
-				row[FcCol(Fields.FCAAUX_KM, suffix)] =
-					modData.FuelConsumptionPerMeter(ModalResultField.FCAAUX, fuel)?.ConvertToGrammPerKiloMeter();
+				//row[FcCol(Fields.FCAAUX_H, suffix)] =
+				//	modData.FuelConsumptionPerSecond(ModalResultField.FCAAUX, fuel)?.ConvertToGrammPerHour();
+				//row[FcCol(Fields.FCAAUX_KM, suffix)] =
+				//	modData.FuelConsumptionPerMeter(ModalResultField.FCAAUX, fuel)?.ConvertToGrammPerKiloMeter();
 
-				row[FcCol(Fields.FCESS_H, suffix)] = modData.FuelConsumptionPerSecond(ModalResultField.FCEngineStopStart, fuel)
+				row[FcCol(Fields.FCESS_H, suffix)] = modData.FuelConsumptionPerSecond(ModalResultField.FCICEStopStart, fuel)
 													?.ConvertToGrammPerHour();
-				row[FcCol(Fields.FCESS_KM, suffix)] = modData.FuelConsumptionPerMeter(ModalResultField.FCEngineStopStart, fuel)
+				row[FcCol(Fields.FCESS_KM, suffix)] = modData.FuelConsumptionPerMeter(ModalResultField.FCICEStopStart, fuel)
 													?.ConvertToGrammPerKiloMeter();
 
 				var fcModSum = modData.TotalFuelConsumption(ModalResultField.FCFinal, fuel);
@@ -492,7 +492,7 @@ namespace TUGraz.VectoCore.OutputData
 			foreach (var fuel in modData.FuelData) {
 				eFC += modData.TimeIntegral<Kilogram>(modData.GetColumnName(fuel, ModalResultField.FCFinal)) * fuel.LowerHeatingValueVecto;
 			}
-			var eIcePos = modData.TimeIntegral<WattSecond>(ModalResultField.P_eng_fcmap, x => x > 0);
+			var eIcePos = modData.TimeIntegral<WattSecond>(ModalResultField.P_ice_fcmap, x => x > 0);
 			row[Fields.AVERAGE_ENGINE_EFFICIENCY] = eFC.IsEqual(0, 1e-9) ? 0 : (eIcePos / eFC).Value();
 
 			if (runData.SimulationType == SimulationType.EngineOnly) {
diff --git a/VectoCore/VectoCoreTest/Models/Declaration/BusFactoryTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/BusFactoryTest.cs
index ac26029b430fca5812f737db5e9a620c2241ed59..de7dbf47475bec28a796e0fcb720c5a37b92b3bb 100644
--- a/VectoCore/VectoCoreTest/Models/Declaration/BusFactoryTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Declaration/BusFactoryTest.cs
@@ -29,7 +29,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 		[TestCase()]
 		public void CreateRunDataPrimaryBus()
 		{
-			var runIdx = 0;
+			var runIdx = 2;
 			var jobFile = @"TestData\XML\XMLReaderDeclaration\SchemaVersion2.6_Buses\vecto_vehicle-primary_heavyBus.xml";
 
 			var writer = new FileOutputWriter(jobFile);
@@ -44,12 +44,12 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			};
 			var jobContainer = new JobContainer(new MockSumWriter());
 
-			//var runs = factory.SimulationRuns().ToArray();
-			//jobContainer.AddRun(runs[runIdx]);
-			//runs[runIdx].Run();
+			var runs = factory.SimulationRuns().ToArray();
+			jobContainer.AddRun(runs[runIdx]);
+			runs[runIdx].Run();
 
-			var run = factory.SimulationRuns().First();
-			run.Run();
+			//var run = factory.SimulationRuns().First();
+			//run.Run();
 
 			//Assert.IsTrue(runs[runIdx].FinishedWithoutErrors);
 		}
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/ClutchTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/ClutchTest.cs
index 851e9b1c88e225c7d1a041b702249bc380c6dbba..e628ccc5ef248fc5dbb9b34bce38f01f64892110 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/ClutchTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/ClutchTest.cs
@@ -183,7 +183,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 
 		protected override void DoWriteModalResults(IModalDataContainer container)
 		{
-			container[ModalResultField.P_eng_fcmap] = 0.SI<Watt>();
+			container[ModalResultField.P_ice_fcmap] = 0.SI<Watt>();
 			container[ModalResultField.P_ice_out] = 0.SI<Watt>();
 			container[ModalResultField.P_ice_inertia] = 0.SI<Watt>();
 
@@ -198,7 +198,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			container[ModalResultField.FCMap] = 0.SI<KilogramPerSecond>();
 			container[ModalResultField.FCNCVc] = 0.SI<KilogramPerSecond>();
 			container[ModalResultField.FCWHTCc] = 0.SI<KilogramPerSecond>();
-			container[ModalResultField.FCAAUX] = 0.SI<KilogramPerSecond>();
+			//container[ModalResultField.FCAAUX] = 0.SI<KilogramPerSecond>();
 			container[ModalResultField.FCFinal] = 0.SI<KilogramPerSecond>();
 		}
 
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs
index 2b14ed59254563dd41c4c8aa06b72160272237da..672f97a38a85992aaf44b480639058eed13b22f7 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs
@@ -320,7 +320,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			container.CommitSimulationStep(absTime, dt);
 			var row = dataWriter.Data.Rows.Cast<DataRow>().Last();
 			Assert.AreEqual(100530.96491487339.SI<Watt>().Value(), ((SI)row[ModalResultField.P_ice_out.GetName()]).Value());
-			Assert.AreEqual(105530.96491487339.SI<Watt>().Value(), ((SI)row[ModalResultField.P_eng_fcmap.GetName()]).Value());
+			Assert.AreEqual(105530.96491487339.SI<Watt>().Value(), ((SI)row[ModalResultField.P_ice_fcmap.GetName()]).Value());
 			Assert.AreEqual(5000.SI<Watt>(), row[ModalResultField.P_aux.GetName()]);
 			Assert.AreEqual(800.RPMtoRad(), row[ModalResultField.n_ice_avg.GetName()]);
 
diff --git a/VectoCore/VectoCoreTest/Reports/ModDataTest.cs b/VectoCore/VectoCoreTest/Reports/ModDataTest.cs
index 5b241923e16624856da67708bd17c9981acce5c7..a8cf827f2c76fc40d2445edcd3d05bd8a35be0b1 100644
--- a/VectoCore/VectoCoreTest/Reports/ModDataTest.cs
+++ b/VectoCore/VectoCoreTest/Reports/ModDataTest.cs
@@ -494,7 +494,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 					time, distance);
 
 				// check P_eng_FCmap = T_eng_fcmap * n_eng
-				var pEngFcmap = (SI)row[ModalResultField.P_eng_fcmap.GetName()];
+				var pEngFcmap = (SI)row[ModalResultField.P_ice_fcmap.GetName()];
 				Assert.AreEqual(pEngFcmap.Value(), (tqEngFcmap * nEngFcMap).Value(), 1E-3, "time: {0}  distance: {1}", time,
 					distance);
 
@@ -666,7 +666,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 					time, distance);
 
 				// check P_eng_FCmap = T_eng_fcmap * n_eng
-				var pEngFcmap = (SI)row[ModalResultField.P_eng_fcmap.GetName()];
+				var pEngFcmap = (SI)row[ModalResultField.P_ice_fcmap.GetName()];
 				Assert.AreEqual(pEngFcmap.Value(), (tqEngFcmap * nEngFcMap).Value(), 1E-3, "time: {0}  distance: {1}", time,
 					distance);
 
diff --git a/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs b/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs
index e388fd901cf5346797cf7ed7bf5ce4329fc040b8..4455e3b35a8ee22e0f72daa526af4945ae944033 100644
--- a/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs
+++ b/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs
@@ -99,7 +99,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 				modData[ModalResultField.acc] = 0.SI<MeterPerSquareSecond>();
 				modData[ModalResultField.P_ice_out] = (i % 2 == 0 ? 1 : -1) * 3000.SI<Watt>();
 
-				modData[ModalResultField.P_eng_fcmap] = 0.SI<Watt>();
+				modData[ModalResultField.P_ice_fcmap] = 0.SI<Watt>();
 
 				modData.CommitSimulationStep();
 			}
@@ -161,7 +161,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 				modData[ModalResultField.acc] = 0.SI<MeterPerSquareSecond>();
 				modData[ModalResultField.P_ice_out] = (i % 2 == 0 ? 1 : -1) * powerDemand[i % powerDemand.Length];
 
-				modData[ModalResultField.P_eng_fcmap] = 0.SI<Watt>();
+				modData[ModalResultField.P_ice_fcmap] = 0.SI<Watt>();
 				modData[ModalResultField.FCFinal] = 0.SI<KilogramPerSecond>();
 				modData[ModalResultField.ICEOn] = false;
 				modData.CommitSimulationStep();