diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs b/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs
index 943ffed1da5fdce4a5ab0e0524df0e95fb5e8077..b27574109a453b6237a21d7edf005e3ae861c308 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs
@@ -572,8 +572,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies
 								dryRunResponse.ElectricMotor.AvgDrivetrainSpeed;
 					var gbxOutTqV = dryRunResponse.Gearbox.OutputTorque - emTq;
 
-					var prevGbxSpeed = (DataBus.GearboxInfo as AbstractGearbox<GearboxState>).PreviousState
-						.OutAngularVelocity;
+					var prevGbxSpeed = GetPrevGbxSpeed();
 					var gbxLoss = ModelData.GearboxData.Gears[gear.Gear].LossMap
 						.GetTorqueLoss((dryRunResponse.Gearbox.OutputSpeed + prevGbxSpeed) / 2.0, gbxOutTqV);
 					gbxInTq = gbxOutTqV / ModelData.GearboxData.Gears[gear.Gear].Ratio + gbxLoss.Value;
@@ -597,8 +596,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies
 						gbxInTorque = anglInTorque;
 					}
 					var gear = dryRunResponse.Gearbox.Gear;
-					var prevGbxSpeed = (DataBus.GearboxInfo as AbstractGearbox<GearboxState>).PreviousState
-						.OutAngularVelocity;
+					var prevGbxSpeed = GetPrevGbxSpeed();
 					var gbxLoss = ModelData.GearboxData.Gears[gear.Gear].LossMap
 						.GetTorqueLoss((dryRunResponse.Gearbox.OutputSpeed + prevGbxSpeed) / 2.0, gbxInTorque);
 					gbxInTq = gbxInTorque / ModelData.GearboxData.Gears[gear.Gear].Ratio + gbxLoss.Value;
@@ -609,6 +607,17 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies
 			return gbxInTq;
 		}
 
+		private PerSecond GetPrevGbxSpeed()
+		{
+			switch (DataBus.GearboxInfo) {
+				case Gearbox gbx:
+					return gbx.PreviousState.OutAngularVelocity;
+				case ATGearbox atGbx:
+					return atGbx.PreviousState.OutAngularVelocity;
+				default: throw new VectoException("Unsupported gearbox type!");
+			}
+		}
+
 		public void OperatingpointChangedDuringRequest(Second absTime, Second dt, NewtonMeter outTorque,
 			PerSecond outAngularVelocity,
 			bool dryRun, IResponse retVal)
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P2/P2 Group 5_LimitVehiclePropTq.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P2/P2 Group 5_LimitVehiclePropTq.vecto
index 1d9670246f14cfeadbea10e851c1bb20d8534eeb..cd2de6775748e972587df0f68c1ba5fbb00f6b56 100644
--- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P2/P2 Group 5_LimitVehiclePropTq.vecto	
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P2/P2 Group 5_LimitVehiclePropTq.vecto	
@@ -17,7 +17,6 @@
     "AuxiliaryAssembly": "Classic",
     "AuxiliaryVersion": "CLASSIC",
     "AdvancedAuxiliaryFilePath": "",
-    "Aux": [],
     "Padd": 3000.0,
     "Padd_electric": 0.0,
     "VACC": "Vehicle\\Truck.vacc",
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/P3 APT Group 5_LimitVehiclePropTq.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/P3 APT Group 5_LimitVehiclePropTq.vecto
index 66759402c4058b416d4a5ebf4210e032a5f1bab0..a739bc00dcfaf077175efacf28c2cb83ba953020 100644
--- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/P3 APT Group 5_LimitVehiclePropTq.vecto	
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/JSON/P_HEV/Group5_P3_APT/P3 APT Group 5_LimitVehiclePropTq.vecto	
@@ -17,7 +17,6 @@
     "AuxiliaryAssembly": "Classic",
     "AuxiliaryVersion": "CLASSIC",
     "AdvancedAuxiliaryFilePath": "",
-    "Aux": [],
     "Padd": 3000.0,
     "Padd_electric": 0.0,
     "VACC": "Vehicle\\Truck.vacc",