diff --git a/VectoCore/VectoCore/Models/Connector/Ports/Impl/Response.cs b/VectoCore/VectoCore/Models/Connector/Ports/Impl/Response.cs
index f7203914d5069d3e4beffff8a01299180937a3cb..a86221ca2d5d55dcedd6677890cec86f6bc3fb16 100644
--- a/VectoCore/VectoCore/Models/Connector/Ports/Impl/Response.cs
+++ b/VectoCore/VectoCore/Models/Connector/Ports/Impl/Response.cs
@@ -123,6 +123,7 @@ namespace TUGraz.VectoCore.Models.Connector.Ports.Impl
 	{
 		public Watt DeltaFullLoad { get; set; }
 		public Watt DeltaDragLoad { get; set; }
+		public PerSecond DeltaEngineSpeed { get; set; }
 	}
 
 	internal class ResponseGearShift : AbstractResponse
@@ -131,4 +132,9 @@ namespace TUGraz.VectoCore.Models.Connector.Ports.Impl
 	}
 
 	internal class ResponseEngineSpeedTooLow : ResponseDryRun {}
+
+	internal class ResponseEngineSpeedTooHigh : AbstractResponse
+	{
+		public PerSecond DeltaEngineSpeed { get; set; }	
+	}
 }
\ No newline at end of file
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/CombustionEngine.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/CombustionEngine.cs
index 05f307760eec6c4fe08b0a8660e017a6b4deec7e..64e98f3945a2dfdddaba984e9cc60680d19d4523 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/CombustionEngine.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/CombustionEngine.cs
@@ -181,6 +181,12 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 
 			var avgEngineSpeed = (PreviousState.EngineSpeed + angularVelocity) / 2.0;
 
+			var engineSpeedLimit = VectoMath.Min(DataBus.GetGearData(DataBus.Gear).MaxSpeed,
+				ModelData.FullLoadCurves[0].N95hSpeed);
+			if (!dryRun && avgEngineSpeed.IsGreater(engineSpeedLimit, Constants.SimulationSettings.LineSearchTolerance)) {
+				return new ResponseEngineSpeedTooHigh() { DeltaEngineSpeed = avgEngineSpeed - engineSpeedLimit };
+			}
+
 			var fullDragTorque = ModelData.FullLoadCurves[DataBus.Gear].DragLoadStationaryTorque(avgEngineSpeed);
 			var dynamicFullLoadPower = ComputeFullLoadPower(avgEngineSpeed, dt, dryRun);
 			if (dynamicFullLoadPower < 0) {
@@ -216,6 +222,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 				return new ResponseDryRun {
 					DeltaFullLoad = deltaFull * avgEngineSpeed,
 					DeltaDragLoad = deltaDrag * avgEngineSpeed,
+					DeltaEngineSpeed = avgEngineSpeed - engineSpeedLimit,
 					EnginePowerRequest = torqueOut * avgEngineSpeed,
 					DynamicFullLoadPower = dynamicFullLoadPower,
 					DragPower = fullDragTorque * avgEngineSpeed,
@@ -565,13 +572,12 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 
 				var nextAngularSpeed = (velocitySlope * dt + _engine.PreviousState.EngineSpeed);
 
+				var engineMaxSpeed = VectoMath.Min(_dataBus.GetGearData(_dataBus.NextGear.Gear).MaxSpeed,
+					_engine.ModelData.FullLoadCurves[0].N95hSpeed);
 				nextAngularSpeed = velocitySlope < 0
-					? VectoMath.Max(_engineTargetSpeed, nextAngularSpeed)
-					: VectoMath.Min(_engineTargetSpeed, nextAngularSpeed);
-				if (nextAngularSpeed < _engine.ModelData.IdleSpeed) {
-					nextAngularSpeed = _engine.ModelData.IdleSpeed;
-				}
-
+					? VectoMath.LimitTo(VectoMath.Max(_engineTargetSpeed, nextAngularSpeed), _engine.EngineIdleSpeed, engineMaxSpeed)
+					: VectoMath.LimitTo(VectoMath.Min(_engineTargetSpeed, nextAngularSpeed), _engine.EngineIdleSpeed, engineMaxSpeed);
+				
 
 				var retVal = RequestPort.Request(absTime, dt, 0.SI<NewtonMeter>(), nextAngularSpeed);
 				retVal.Switch().
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/DefaultDriverStrategy.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/DefaultDriverStrategy.cs
index 4b7f861896d149df421f0e3f6a82a0c6db83c378..e02d2635379cec11eccbed66612a9d4904ad356e 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/DefaultDriverStrategy.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/DefaultDriverStrategy.cs
@@ -411,6 +411,13 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 									second
 								});
 							}
+							if (second is ResponseEngineSpeedTooHigh) {
+								second = Driver.DrivingActionBrake(absTime, ds, velocity, gradient, second);
+								debug.Add(new {
+									action = "second:(EngineSpeedTooHigh|SpeedLimitExceeded) -> Brake with reduced acceleration",
+									second
+								});
+							}
 						} else {
 							second = Driver.DrivingActionBrake(absTime, ds, velocity, gradient);
 							debug.Add(new { action = "first:(Underload & !Overspeed) -> Brake", second });
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/Driver.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/Driver.cs
index 96f5f0d041a273e9580ee2348672e01cd2602afb..6264f2e361376100f5e2c0dd75c737ebdeca5cd3 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/Driver.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/Driver.cs
@@ -148,6 +148,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 				Case<ResponseSuccess>(r => { retVal = r; // => return
 				}).
 				Case<ResponseOverload>(). // do nothing, searchOperatingPoint is called later on
+				Case<ResponseEngineSpeedTooHigh>(). // do nothing, searchOperatingPoint is called later on
 				Case<ResponseUnderload>(r => {
 					// Delta is negative we are already below the Drag-load curve. activate brakes
 					retVal = r; // => return, strategy should brake
@@ -175,11 +176,13 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 						response);
 				}
 
-				var limitedOperatingPoint = LimitAccelerationByDriverModel(nextOperatingPoint,
-					LimitationMode.LimitDecelerationDriver);
-				Log.Debug("Found operating point for Drive/Accelerate. dt: {0}, acceleration: {1}",
-					limitedOperatingPoint.SimulationInterval, limitedOperatingPoint.Acceleration);
-
+				var limitedOperatingPoint = nextOperatingPoint;
+				if (!(retVal is ResponseEngineSpeedTooHigh || DataBus.ClutchClosed(absTime))) {
+					limitedOperatingPoint = LimitAccelerationByDriverModel(nextOperatingPoint,
+						LimitationMode.LimitDecelerationDriver);
+					Log.Debug("Found operating point for Drive/Accelerate. dt: {0}, acceleration: {1}",
+						limitedOperatingPoint.SimulationInterval, limitedOperatingPoint.Acceleration);
+				}
 				DriverAcceleration = limitedOperatingPoint.Acceleration;
 				retVal = NextComponent.Request(absTime, limitedOperatingPoint.SimulationInterval,
 					limitedOperatingPoint.Acceleration,
@@ -209,13 +212,23 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 								ds = 0.SI<Meter>();
 								//retVal.Acceleration = 0.SI<MeterPerSquareSecond>();
 							} else {
-								Log.Info(
-									"Operating point with limited acceleration resulted in an overload! trying again with original acceleration {0}",
-									nextOperatingPoint.Acceleration);
-								DriverAcceleration = nextOperatingPoint.Acceleration;
-								retVal = NextComponent.Request(absTime, nextOperatingPoint.SimulationInterval,
-									nextOperatingPoint.Acceleration,
-									gradient);
+								if (response is ResponseEngineSpeedTooHigh) {
+									Log.Info(
+										"Operating point with limited acceleration due to high engine speed resulted in an overload, searching again...");
+									nextOperatingPoint = SearchOperatingPoint(absTime, ds, gradient, operatingPoint.Acceleration,
+										retVal);
+									DriverAcceleration = nextOperatingPoint.Acceleration;
+									retVal = NextComponent.Request(absTime, nextOperatingPoint.SimulationInterval,
+										nextOperatingPoint.Acceleration, gradient);
+								} else {
+									Log.Info(
+										"Operating point with limited acceleration resulted in an overload! trying again with original acceleration {0}",
+										nextOperatingPoint.Acceleration);
+									DriverAcceleration = nextOperatingPoint.Acceleration;
+									retVal = NextComponent.Request(absTime, nextOperatingPoint.SimulationInterval,
+										nextOperatingPoint.Acceleration,
+										gradient);
+								}
 							}
 						}
 						retVal.Switch().
@@ -373,8 +386,8 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 				Case<ResponseSuccess>().
 				Case<ResponseUnderload>(). // driver limits acceleration, operating point may be below engine's 
 				//drag load resp. below 0
-				Case<ResponseOverload>()
-				. // driver limits acceleration, operating point may be above 0 (GBX), use brakes
+				Case<ResponseOverload>(). // driver limits acceleration, operating point may be above 0 (GBX), use brakes
+				Case<ResponseEngineSpeedTooHigh>(). // reduce acceleration/vehicle speed
 				Case<ResponseGearShift>().
 				Case<ResponseFailTimeInterval>(r => {
 					response = new ResponseDrivingCycleDistanceExceeded {
@@ -449,6 +462,11 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 				Case<ResponseOverload>(r => retVal = r)
 				. // i.e., driving uphill, clutch open, deceleration higher than desired deceleration
 				Case<ResponseUnderload>(). // will be handled in SearchBrakingPower
+				Case<ResponseEngineSpeedTooHigh>(r => {
+					Log.Debug("Engine speeed was too high, search for appropriate acceleration first.");
+					operatingPoint = SearchOperatingPoint(absTime, ds, gradient, point.Acceleration,
+						response);
+				}). // will be handled in SearchBrakingPower
 				Case<ResponseGearShift>(). // will be handled in SearchBrakingPower
 				Case<ResponseFailTimeInterval>(r =>
 					retVal = new ResponseDrivingCycleDistanceExceeded() {
@@ -614,6 +632,14 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 						gradient, true);
 					deltaPower = nextResp.GearboxPowerRequest;
 				}).
+				Case<ResponseEngineSpeedTooHigh>(r => {
+					IterationStatistics.Increment(this, "SearchBrakingPower");
+					DriverAcceleration = operatingPoint.Acceleration;
+					var nextResp = NextComponent.Request(absTime, operatingPoint.SimulationInterval,
+						operatingPoint.Acceleration,
+						gradient, true);
+					deltaPower = nextResp.GearboxPowerRequest;
+				}).
 				Case<ResponseUnderload>(r =>
 					deltaPower = DataBus.ClutchClosed(absTime) ? r.Delta : r.GearboxPowerRequest).
 				Default(
@@ -659,6 +685,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 			var retVal = new OperatingPoint { Acceleration = acceleration, SimulationDistance = ds };
 
 			var actionRoll = !DataBus.ClutchClosed(absTime);
+			var searchEngineSpeed = false;
 
 			Watt origDelta = null;
 			if (actionRoll) {
@@ -668,8 +695,11 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 					Default(r => { throw new UnexpectedResponseException("SearchOperatingPoint: Unknown response type.", r); });
 			} else {
 				initialResponse.Switch().
-					Case<ResponseOverload>(r => origDelta = r.Delta)
-					. // search operating point in drive action after overload
+					Case<ResponseOverload>(r => origDelta = r.Delta).
+					Case<ResponseEngineSpeedTooHigh>(r => {
+						searchEngineSpeed = true;
+						origDelta = r.DeltaEngineSpeed * 1.SI<NewtonMeter>();
+					}). // search operating point in drive action after overload
 					Case<ResponseDryRun>(r => origDelta = coastingOrRoll ? r.DeltaDragLoad : r.DeltaFullLoad).
 					Default(r => { throw new UnexpectedResponseException("SearchOperatingPoint: Unknown response type.", r); });
 			}
@@ -679,6 +709,9 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 					Constants.SimulationSettings.OperatingPointInitialSearchIntervalAccelerating,
 					getYValue: response => {
 						var r = (ResponseDryRun)response;
+						if (searchEngineSpeed) {
+							return r.DeltaEngineSpeed * 1.SI<NewtonMeter>();
+						}
 						return actionRoll ? r.GearboxPowerRequest : (coastingOrRoll ? r.DeltaDragLoad : r.DeltaFullLoad);
 					},
 					evaluateFunction:
@@ -704,6 +737,9 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 						},
 					criterion: response => {
 						var r = (ResponseDryRun)response;
+						if (searchEngineSpeed) {
+							return r.DeltaEngineSpeed.Value();
+						}
 						delta = actionRoll
 							? r.GearboxPowerRequest
 							: (coastingOrRoll ? r.DeltaDragLoad : r.DeltaFullLoad);
diff --git a/VectoCore/VectoCoreTest/Integration/TorqueLimitsTest.cs b/VectoCore/VectoCoreTest/Integration/TorqueLimitsTest.cs
index c5d597df65817cc342c76e41ed17941b855a12cd..07f3b7a7d95f2191591905ecfd492d22f3ebfbbc 100644
--- a/VectoCore/VectoCoreTest/Integration/TorqueLimitsTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/TorqueLimitsTest.cs
@@ -29,6 +29,9 @@ namespace TUGraz.VectoCore.Tests.Integration
 		const string GearboxSpeedLimitJobDecl =
 			@"Testdata\Integration\DeclarationMode\Class2_RigidTruck_4x2_GbxSpeedLimits\Class2_RigidTruck_DECL.vecto";
 
+		const string EngineSpeedLimitJobDecl =
+			@"TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Class2_RigidTruck_DECL.vecto";
+
 		[TestCase()]
 		public void TestGearboxTorqueLimitsAbove90FLD()
 		{
@@ -180,5 +183,28 @@ namespace TUGraz.VectoCore.Tests.Integration
 
 			Assert.IsTrue(jobContainer.Runs.All(r => r.Success), string.Concat(jobContainer.Runs.Select(r => r.ExecException)));
 		}
+
+		[TestCase(EngineSpeedLimitJobDecl)]
+		public void TestRunEngineSpeedLimitedSimulations(string file)
+		{
+			var fileWriter = new FileOutputWriter(file);
+			var sumData = new SummaryDataContainer(fileWriter);
+			var inputDataProvider = JSONInputDataFactory.ReadJsonJob(file);
+			var factory = new SimulatorFactory(ExecutionMode.Declaration, inputDataProvider, fileWriter) {
+				WriteModalResults = true,
+				//ActualModalData = true
+			};
+
+
+			var jobContainer = new JobContainer(sumData);
+			jobContainer.AddRuns(factory);
+
+			//jobContainer.Runs[1].RunWorkerAsync().Wait();
+
+			jobContainer.Execute();
+			jobContainer.WaitFinished();
+
+			Assert.IsTrue(jobContainer.Runs.All(r => r.Success), string.Concat(jobContainer.Runs.Select(r => r.ExecException)));
+		}
 	}
 }
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/175kW.vfld b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/175kW.vfld
new file mode 100644
index 0000000000000000000000000000000000000000..c18c5c3cae86325fc562fc5a4ec0d10239f2a882
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/175kW.vfld
@@ -0,0 +1,252 @@
+engine speed [1/min], full load torque [Nm], motoring torque [Nm]
+600,478,-35
+608,485.52,-35.31693
+616,493.04,-35.63385
+624,500.56,-35.95077
+632,508.08,-36.26769
+640,515.6,-36.58462
+648,523.12,-36.90154
+656,530.64,-37.21846
+664,538.16,-37.53539
+672,545.68,-37.85231
+680,553.2,-38.16923
+688,560.72,-38.48615
+696,568.24,-38.80308
+704,575.76,-39.12
+712,583.28,-39.43692
+720,590.8,-39.75385
+728,598.32,-40.07077
+736,605.84,-40.3877
+744,613.36,-40.70462
+752,620.88,-41.02154
+760,628.4,-41.33846
+768,635.92,-41.65539
+776,643.44,-41.97231
+784,650.96,-42.28923
+792,658.48,-42.60616
+800,666,-42.92308
+808,673.44,-43.24
+816,680.88,-43.48
+824,688.32,-43.72
+832,695.76,-43.96
+840,703.2,-44.2
+848,710.64,-44.44
+856,718.08,-44.68
+864,725.52,-44.92
+872,732.96,-45.16
+880,740.4,-45.4
+888,747.84,-45.64
+896,755.28,-45.88
+904,762.72,-46.12
+912,770.16,-46.36
+920,777.6,-46.6
+928,785.04,-46.84
+936,792.48,-47.08
+944,799.92,-47.32
+952,807.36,-47.56
+960,814.8,-47.8
+968,822.24,-48.04
+976,829.68,-48.28
+984,837.12,-48.52
+992,844.56,-48.76
+1000,852,-49
+1008,856.16,-49.4
+1016,860.32,-49.8
+1024,864.48,-50.19579
+1032,868.64,-50.59098
+1040,872.8,-50.98618
+1048,876.96,-51.38137
+1056,881.12,-51.77656
+1064,885.28,-52.17175
+1072,889.44,-52.56694
+1080,893.6,-52.96214
+1088,897.76,-53.35733
+1096,901.92,-53.75252
+1104,906.08,-54.14772
+1112,910.24,-54.54291
+1120,914.4,-54.9381
+1128,918.56,-55.33329
+1136,922.72,-55.72849
+1144,926.88,-56.12368
+1152,931.04,-56.51887
+1160,935.2,-56.91406
+1168,939.36,-57.30925
+1176,943.52,-57.70444
+1184,947.68,-58.09964
+1192,951.84,-58.49483
+1200,956,-58.89002
+1208,956,-59.28522
+1216,956,-59.68041
+1224,956,-60.0756
+1232,956,-60.44
+1240,956,-60.8
+1248,956,-61.16
+1256,956,-61.52
+1264,956,-61.88
+1272,956,-62.24
+1280,956,-62.6
+1288,956,-62.96
+1296,956,-63.32
+1304,956,-63.68
+1312,956,-64.04
+1320,956,-64.4
+1328,956,-64.76
+1336,956,-65.12
+1344,956,-65.48
+1352,956,-65.84
+1360,956,-66.2
+1368,956,-66.56
+1376,956,-66.92
+1384,956,-67.28
+1392,956,-67.64
+1400,956,-68
+1408,956,-68.36
+1416,956,-68.72
+1424,956,-69.08
+1432,956,-69.44
+1440,956,-69.76736
+1448,956,-70.08386
+1456,956,-70.40035
+1464,956,-70.71684
+1472,956,-71.03333
+1480,956,-71.34982
+1488,956,-71.66631
+1496,956,-71.9828
+1504,956,-72.2993
+1512,956,-72.61579
+1520,956,-72.93228
+1528,956,-73.24877
+1536,956,-73.56526
+1544,956,-73.88175
+1552,956,-74.19825
+1560,956,-74.51474
+1568,956,-74.83123
+1576,956,-75.14772
+1584,956,-75.46421
+1592,956,-75.7807
+1600,956,-76.0972
+1608,953.56,-76.41369
+1616,951.12,-76.73018
+1624,948.68,-77.04667
+1632,946.24,-77.36316
+1640,943.8,-77.67965
+1648,941.36,-77.99614
+1656,938.92,-78.31264
+1664,936.48,-78.6
+1672,934.04,-78.8
+1680,931.6,-79
+1688,929.16,-79.2
+1696,926.72,-79.4
+1704,924.28,-79.6
+1712,921.84,-79.8
+1720,919.4,-80
+1728,916.96,-80.2
+1736,914.52,-80.4
+1744,912.08,-80.6
+1752,909.64,-80.8
+1760,907.2,-81
+1768,904.76,-81.2
+1776,902.32,-81.4
+1784,899.88,-81.6
+1792,897.44,-81.8
+1800,895,-82
+1808,892.24,-82.24
+1816,889.48,-82.48
+1824,886.72,-82.72
+1832,883.96,-82.96
+1840,881.2,-83.2
+1848,878.44,-83.44
+1856,875.68,-83.68
+1864,872.92,-83.92
+1872,870.16,-84.16
+1880,867.4,-84.4
+1888,864.64,-84.64
+1896,861.88,-84.88
+1904,859.12,-85.12
+1912,856.36,-85.36
+1920,853.6,-85.6
+1928,850.84,-85.84
+1936,848.08,-86.08
+1944,845.32,-86.32
+1952,842.56,-86.56
+1960,839.8,-86.8
+1968,837.04,-87.04
+1976,834.28,-87.28
+1984,831.52,-87.52
+1992,828.76,-87.76
+2000,826,-88
+2008,823.36,-88.44
+2016,820.72,-88.88
+2024,818.08,-89.32
+2032,815.44,-89.76
+2040,812.8,-90.2
+2048,810.16,-90.64
+2056,807.52,-91.08
+2064,804.88,-91.52
+2072,802.24,-91.96
+2080,799.6,-92.4
+2088,796.96,-92.84
+2096,794.32,-93.28
+2104,791.68,-93.72
+2112,789.04,-94.16
+2120,786.4,-94.6
+2128,783.76,-95.04
+2136,781.12,-95.48
+2144,778.48,-95.92
+2152,775.84,-96.36
+2160,773.2,-96.8
+2168,770.56,-97.24
+2176,767.92,-97.68
+2184,765.28,-98.06694
+2192,762.64,-98.40081
+2200,760,-98.73468
+2208,755.56,-99.06856
+2216,751.12,-99.40243
+2224,746.68,-99.73631
+2232,742.24,-100.0702
+2240,737.8,-100.404
+2248,733.36,-100.7379
+2256,728.92,-101.0718
+2264,724.48,-101.4057
+2272,720.04,-101.7395
+2280,715.6,-102.0734
+2288,711.16,-102.4073
+2296,706.72,-102.7412
+2304,702.28,-103.075
+2312,697.84,-103.4089
+2320,693.4,-103.7428
+2328,688.96,-104.0767
+2336,684.52,-104.4105
+2344,680.08,-104.7444
+2352,675.64,-105.0783
+2360,671.2,-105.4
+2368,666.76,-105.72
+2376,662.32,-106.04
+2384,657.88,-106.36
+2392,653.44,-106.68
+2400,649,-107
+2408,642.36,-107.32
+2416,635.72,-107.64
+2424,629.08,-107.96
+2432,622.44,-108.28
+2440,615.8,-108.6
+2448,609.16,-108.92
+2456,602.52,-109.24
+2464,595.88,-109.56
+2472,589.24,-109.88
+2480,582.6,-110.2
+2488,575.96,-110.52
+2496,569.32,-110.84
+2504,543.36,-111.16
+2512,498.08,-111.48
+2520,452.8,-111.8
+2528,407.52,-112.12
+2536,362.24,-112.44
+2544,316.96,-112.76
+2552,271.68,-113.08
+2560,226.4,-113.4
+2568,181.12,-113.72
+2576,135.84,-114.04
+2584,90.56,-114.36
+2592,45.28,-114.68
+2600,0,-115
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/175kW.vmap b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/175kW.vmap
new file mode 100644
index 0000000000000000000000000000000000000000..2cb356074807c6c2a1576af4a68ae166746eaf06
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/175kW.vmap
@@ -0,0 +1,137 @@
+engine speed [rpm], torque [Nm], fuel consumption [g/h]
+500,-31,0
+500,0,508
+500,95.6,1814.959
+500,191.2,3075.43
+500,286.8,4327.79
+500,382.4,6036.866
+500,478,7983
+500,573.6,9771.095
+600,-35,0
+600,0,508
+600,95.6,1814.959
+600,191.2,3075.43
+600,286.8,4327.79
+600,382.4,6036.866
+600,478,7983
+600,573.6,9771.095
+808,-43.24,0
+808.5,0,737.35
+808.5,95.6,2156.667
+808.5,191.2,3750.051
+808.5,286.8,5348.091
+808.5,382.4,7281.769
+808.5,478,9331.995
+808.5,573.6,11361.22
+808.5,669.2,13292.96
+808.5,673.905,13387.96
+808,769.505,15319.69
+1017,-49.85,0
+1017,0,966.7
+1017,95.6,2499.359
+1017,191.2,4425.586
+1017,286.8,6368.761
+1017,382.4,8527.475
+1017,478,10681.08
+1017,573.6,12806.98
+1017,669.2,14926.89
+1017,764.8,17075.42
+1017,860.4,19211.62
+1017,860.84,19221.39
+1017,956.44,21357.58
+1225,-60.125,0
+1225.4,0,1216.133
+1225.4,95.6,2867.396
+1225.4,191.2,5129.114
+1225.4,286.8,7421.546
+1225.4,382.4,9808.684
+1225.4,478,12096.76
+1225.4,573.6,14371.23
+1225.4,669.2,16697.39
+1225.4,764.8,19043.79
+1225.4,860.4,21380.34
+1225.4,956,23976.15
+1225,1051.6,26399.12
+1434,-69.53,0
+1433.9,0,1607.511
+1433.9,95.6,3422.282
+1433.9,191.2,6045.75
+1433.9,286.8,8717.55
+1433.9,382.4,11388.84
+1433.9,478,14040.14
+1433.9,573.6,16812.16
+1433.9,669.2,19499.88
+1433.9,764.8,22089.68
+1433.9,860.4,24706.84
+1433.9,956,27415.66
+1434,1051.6,30063.37
+1662,-78.55,0
+1661.8,0,2026.982
+1661.8,95.6,4054.852
+1661.8,191.2,7064.631
+1661.8,286.8,10168.59
+1661.8,382.4,13313.27
+1661.8,478,16389.77
+1661.8,573.6,19514.32
+1661.8,669.2,22625.12
+1661.8,764.8,25652.52
+1661.8,860.4,28788.1
+1661.8,937.151,31372.42
+1662,1032.751,34529.97
+1835,-83.05,0
+1834.7,0,2385.627
+1834.7,95.6,4596.783
+1834.7,191.2,7871.156
+1834.7,286.8,11300.52
+1834.7,382.4,14757.68
+1834.7,478,18117.38
+1834.7,573.6,21557.68
+1834.7,669.2,25079.78
+1834.7,764.8,28600.34
+1834.7,860.4,32191.22
+1834.7,883.0285,33047.82
+1835,978.6285,36639.92
+2008,-88.44,0
+2007.5,0,2806.425
+2007.5,95.6,5238.11
+2007.5,191.2,8755.323
+2007.5,286.8,12501.62
+2007.5,382.4,16278.62
+2007.5,478,20040.57
+2007.5,573.6,23826.03
+2007.5,669.2,27760.66
+2007.5,764.8,31692.9
+2007.5,823.525,34019.71
+2008,919.125,37924.6
+2180,-97.9,0
+2180.3,0,3323.097
+2180.3,95.6,5859.055
+2180.3,191.2,9668.133
+2180.3,286.8,13730.37
+2180.3,382.4,17786.81
+2180.3,478,21943.1
+2180.3,573.6,26354.73
+2180.3,669.2,30668.08
+2180.3,764.8,34924.28
+2180.3,766.501,35000.3
+2180,862.101,39256.51
+2353,-105.12,0
+2353.2,0,3807.896
+2353.2,95.6,6495.978
+2353.2,191.2,10634.86
+2353.2,286.8,15048
+2353.2,382.4,19654.95
+2353.2,478,24298.67
+2353.2,573.6,29311.43
+2353.2,669.2,34144.93
+2353,764.8,39097.94
+2453,-109.12,0
+2453.2,0,3807.896
+2453.2,95.6,6495.978
+2453.2,191.2,10634.86
+2453.2,286.8,15048
+2453.2,382.4,19654.95
+2453.2,478,24298.67
+2453.2,573.6,29311.43
+2453.2,669.2,34144.93
+2453,764.8,39097.94
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Axle_4x2.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Axle_4x2.vtlm
new file mode 100644
index 0000000000000000000000000000000000000000..8058a032dacb31c5833883a6d3cd179cc0b2f7c1
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Axle_4x2.vtlm
@@ -0,0 +1,834 @@
+Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm]
+0,-6993.8,41.6
+0,-6525.1,44.1
+0,-6056.4,46.5
+0,-5587.7,51.4
+0,-5119.0,56.3
+0,-4650.3,61.2
+0,-4181.6,66.0
+0,-3712.9,70.9
+0,-3244.2,75.8
+0,-2775.5,80.7
+0,-2306.8,85.6
+0,-2072.4,80.7
+0,-1838.1,75.8
+0,-1603.7,70.9
+0,-1369.4,66.0
+0,-1135.0,61.2
+0,-900.7,56.3
+0,-666.3,51.4
+0,-432.0,46.5
+0,-314.8,44.1
+0,-197.6,41.6
+0,-139.0,40.4
+0,-80.4,39.2
+0,-21.8,38.0
+0,38.0,38.0
+0,97.8,38.0
+0,158.8,39.2
+0,219.8,40.4
+0,280.9,41.6
+0,402.9,44.1
+0,525.0,46.5
+0,769.1,51.4
+0,1013.2,56.3
+0,1257.3,61.2
+0,1501.4,66.0
+0,1745.6,70.9
+0,1989.7,75.8
+0,2233.8,80.7
+0,2477.9,85.6
+0,2966.1,95.3
+0,3454.4,105.1
+0,3942.6,114.9
+0,4430.8,124.6
+0,4919.1,134.4
+0,5407.3,144.2
+0,5895.5,153.9
+0,6383.8,163.7
+0,6872.0,173.5
+0,7360.2,183.2
+209,-6993.8,41.6
+209,-6525.1,44.1
+209,-6056.4,46.5
+209,-5587.7,51.4
+209,-5119.0,56.3
+209,-4650.3,61.2
+209,-4181.6,66.0
+209,-3712.9,70.9
+209,-3244.2,75.8
+209,-2775.5,80.7
+209,-2306.8,85.6
+209,-2072.4,80.7
+209,-1838.1,75.8
+209,-1603.7,70.9
+209,-1369.4,66.0
+209,-1135.0,61.2
+209,-900.7,56.3
+209,-666.3,51.4
+209,-432.0,46.5
+209,-314.8,44.1
+209,-197.6,41.6
+209,-139.0,40.4
+209,-80.4,39.2
+209,-21.8,38.0
+209,38.0,38.0
+209,97.8,38.0
+209,158.8,39.2
+209,219.8,40.4
+209,280.9,41.6
+209,402.9,44.1
+209,525.0,46.5
+209,769.1,51.4
+209,1013.2,56.3
+209,1257.3,61.2
+209,1501.4,66.0
+209,1745.6,70.9
+209,1989.7,75.8
+209,2233.8,80.7
+209,2477.9,85.6
+209,2966.1,95.3
+209,3454.4,105.1
+209,3942.6,114.9
+209,4430.8,124.6
+209,4919.1,134.4
+209,5407.3,144.2
+209,5895.5,153.9
+209,6383.8,163.7
+209,6872.0,173.5
+209,7360.2,183.2
+418,-6993.8,41.6
+418,-6525.1,44.1
+418,-6056.4,46.5
+418,-5587.7,51.4
+418,-5119.0,56.3
+418,-4650.3,61.2
+418,-4181.6,66.0
+418,-3712.9,70.9
+418,-3244.2,75.8
+418,-2775.5,80.7
+418,-2306.8,85.6
+418,-2072.4,80.7
+418,-1838.1,75.8
+418,-1603.7,70.9
+418,-1369.4,66.0
+418,-1135.0,61.2
+418,-900.7,56.3
+418,-666.3,51.4
+418,-432.0,46.5
+418,-314.8,44.1
+418,-197.6,41.6
+418,-139.0,40.4
+418,-80.4,39.2
+418,-21.8,38.0
+418,38.0,38.0
+418,97.8,38.0
+418,158.8,39.2
+418,219.8,40.4
+418,280.9,41.6
+418,402.9,44.1
+418,525.0,46.5
+418,769.1,51.4
+418,1013.2,56.3
+418,1257.3,61.2
+418,1501.4,66.0
+418,1745.6,70.9
+418,1989.7,75.8
+418,2233.8,80.7
+418,2477.9,85.6
+418,2966.1,95.3
+418,3454.4,105.1
+418,3942.6,114.9
+418,4430.8,124.6
+418,4919.1,134.4
+418,5407.3,144.2
+418,5895.5,153.9
+418,6383.8,163.7
+418,6872.0,173.5
+418,7360.2,183.2
+627,-6993.8,41.6
+627,-6525.1,44.1
+627,-6056.4,46.5
+627,-5587.7,51.4
+627,-5119.0,56.3
+627,-4650.3,61.2
+627,-4181.6,66.0
+627,-3712.9,70.9
+627,-3244.2,75.8
+627,-2775.5,80.7
+627,-2306.8,85.6
+627,-2072.4,80.7
+627,-1838.1,75.8
+627,-1603.7,70.9
+627,-1369.4,66.0
+627,-1135.0,61.2
+627,-900.7,56.3
+627,-666.3,51.4
+627,-432.0,46.5
+627,-314.8,44.1
+627,-197.6,41.6
+627,-139.0,40.4
+627,-80.4,39.2
+627,-21.8,38.0
+627,38.0,38.0
+627,97.8,38.0
+627,158.8,39.2
+627,219.8,40.4
+627,280.9,41.6
+627,402.9,44.1
+627,525.0,46.5
+627,769.1,51.4
+627,1013.2,56.3
+627,1257.3,61.2
+627,1501.4,66.0
+627,1745.6,70.9
+627,1989.7,75.8
+627,2233.8,80.7
+627,2477.9,85.6
+627,2966.1,95.3
+627,3454.4,105.1
+627,3942.6,114.9
+627,4430.8,124.6
+627,4919.1,134.4
+627,5407.3,144.2
+627,5895.5,153.9
+627,6383.8,163.7
+627,6872.0,173.5
+627,7360.2,183.2
+836,-6993.8,41.6
+836,-6525.1,44.1
+836,-6056.4,46.5
+836,-5587.7,51.4
+836,-5119.0,56.3
+836,-4650.3,61.2
+836,-4181.6,66.0
+836,-3712.9,70.9
+836,-3244.2,75.8
+836,-2775.5,80.7
+836,-2306.8,85.6
+836,-2072.4,80.7
+836,-1838.1,75.8
+836,-1603.7,70.9
+836,-1369.4,66.0
+836,-1135.0,61.2
+836,-900.7,56.3
+836,-666.3,51.4
+836,-432.0,46.5
+836,-314.8,44.1
+836,-197.6,41.6
+836,-139.0,40.4
+836,-80.4,39.2
+836,-21.8,38.0
+836,38.0,38.0
+836,97.8,38.0
+836,158.8,39.2
+836,219.8,40.4
+836,280.9,41.6
+836,402.9,44.1
+836,525.0,46.5
+836,769.1,51.4
+836,1013.2,56.3
+836,1257.3,61.2
+836,1501.4,66.0
+836,1745.6,70.9
+836,1989.7,75.8
+836,2233.8,80.7
+836,2477.9,85.6
+836,2966.1,95.3
+836,3454.4,105.1
+836,3942.6,114.9
+836,4430.8,124.6
+836,4919.1,134.4
+836,5407.3,144.2
+836,5895.5,153.9
+836,6383.8,163.7
+836,6872.0,173.5
+836,7360.2,183.2
+1045,-6993.8,41.6
+1045,-6525.1,44.1
+1045,-6056.4,46.5
+1045,-5587.7,51.4
+1045,-5119.0,56.3
+1045,-4650.3,61.2
+1045,-4181.6,66.0
+1045,-3712.9,70.9
+1045,-3244.2,75.8
+1045,-2775.5,80.7
+1045,-2306.8,85.6
+1045,-2072.4,80.7
+1045,-1838.1,75.8
+1045,-1603.7,70.9
+1045,-1369.4,66.0
+1045,-1135.0,61.2
+1045,-900.7,56.3
+1045,-666.3,51.4
+1045,-432.0,46.5
+1045,-314.8,44.1
+1045,-197.6,41.6
+1045,-139.0,40.4
+1045,-80.4,39.2
+1045,-21.8,38.0
+1045,38.0,38.0
+1045,97.8,38.0
+1045,158.8,39.2
+1045,219.8,40.4
+1045,280.9,41.6
+1045,402.9,44.1
+1045,525.0,46.5
+1045,769.1,51.4
+1045,1013.2,56.3
+1045,1257.3,61.2
+1045,1501.4,66.0
+1045,1745.6,70.9
+1045,1989.7,75.8
+1045,2233.8,80.7
+1045,2477.9,85.6
+1045,2966.1,95.3
+1045,3454.4,105.1
+1045,3942.6,114.9
+1045,4430.8,124.6
+1045,4919.1,134.4
+1045,5407.3,144.2
+1045,5895.5,153.9
+1045,6383.8,163.7
+1045,6872.0,173.5
+1045,7360.2,183.2
+1254,-6993.8,41.6
+1254,-6525.1,44.1
+1254,-6056.4,46.5
+1254,-5587.7,51.4
+1254,-5119.0,56.3
+1254,-4650.3,61.2
+1254,-4181.6,66.0
+1254,-3712.9,70.9
+1254,-3244.2,75.8
+1254,-2775.5,80.7
+1254,-2306.8,85.6
+1254,-2072.4,80.7
+1254,-1838.1,75.8
+1254,-1603.7,70.9
+1254,-1369.4,66.0
+1254,-1135.0,61.2
+1254,-900.7,56.3
+1254,-666.3,51.4
+1254,-432.0,46.5
+1254,-314.8,44.1
+1254,-197.6,41.6
+1254,-139.0,40.4
+1254,-80.4,39.2
+1254,-21.8,38.0
+1254,38.0,38.0
+1254,97.8,38.0
+1254,158.8,39.2
+1254,219.8,40.4
+1254,280.9,41.6
+1254,402.9,44.1
+1254,525.0,46.5
+1254,769.1,51.4
+1254,1013.2,56.3
+1254,1257.3,61.2
+1254,1501.4,66.0
+1254,1745.6,70.9
+1254,1989.7,75.8
+1254,2233.8,80.7
+1254,2477.9,85.6
+1254,2966.1,95.3
+1254,3454.4,105.1
+1254,3942.6,114.9
+1254,4430.8,124.6
+1254,4919.1,134.4
+1254,5407.3,144.2
+1254,5895.5,153.9
+1254,6383.8,163.7
+1254,6872.0,173.5
+1254,7360.2,183.2
+1463,-6993.8,41.6
+1463,-6525.1,44.1
+1463,-6056.4,46.5
+1463,-5587.7,51.4
+1463,-5119.0,56.3
+1463,-4650.3,61.2
+1463,-4181.6,66.0
+1463,-3712.9,70.9
+1463,-3244.2,75.8
+1463,-2775.5,80.7
+1463,-2306.8,85.6
+1463,-2072.4,80.7
+1463,-1838.1,75.8
+1463,-1603.7,70.9
+1463,-1369.4,66.0
+1463,-1135.0,61.2
+1463,-900.7,56.3
+1463,-666.3,51.4
+1463,-432.0,46.5
+1463,-314.8,44.1
+1463,-197.6,41.6
+1463,-139.0,40.4
+1463,-80.4,39.2
+1463,-21.8,38.0
+1463,38.0,38.0
+1463,97.8,38.0
+1463,158.8,39.2
+1463,219.8,40.4
+1463,280.9,41.6
+1463,402.9,44.1
+1463,525.0,46.5
+1463,769.1,51.4
+1463,1013.2,56.3
+1463,1257.3,61.2
+1463,1501.4,66.0
+1463,1745.6,70.9
+1463,1989.7,75.8
+1463,2233.8,80.7
+1463,2477.9,85.6
+1463,2966.1,95.3
+1463,3454.4,105.1
+1463,3942.6,114.9
+1463,4430.8,124.6
+1463,4919.1,134.4
+1463,5407.3,144.2
+1463,5895.5,153.9
+1463,6383.8,163.7
+1463,6872.0,173.5
+1463,7360.2,183.2
+1672,-6993.8,41.6
+1672,-6525.1,44.1
+1672,-6056.4,46.5
+1672,-5587.7,51.4
+1672,-5119.0,56.3
+1672,-4650.3,61.2
+1672,-4181.6,66.0
+1672,-3712.9,70.9
+1672,-3244.2,75.8
+1672,-2775.5,80.7
+1672,-2306.8,85.6
+1672,-2072.4,80.7
+1672,-1838.1,75.8
+1672,-1603.7,70.9
+1672,-1369.4,66.0
+1672,-1135.0,61.2
+1672,-900.7,56.3
+1672,-666.3,51.4
+1672,-432.0,46.5
+1672,-314.8,44.1
+1672,-197.6,41.6
+1672,-139.0,40.4
+1672,-80.4,39.2
+1672,-21.8,38.0
+1672,38.0,38.0
+1672,97.8,38.0
+1672,158.8,39.2
+1672,219.8,40.4
+1672,280.9,41.6
+1672,402.9,44.1
+1672,525.0,46.5
+1672,769.1,51.4
+1672,1013.2,56.3
+1672,1257.3,61.2
+1672,1501.4,66.0
+1672,1745.6,70.9
+1672,1989.7,75.8
+1672,2233.8,80.7
+1672,2477.9,85.6
+1672,2966.1,95.3
+1672,3454.4,105.1
+1672,3942.6,114.9
+1672,4430.8,124.6
+1672,4919.1,134.4
+1672,5407.3,144.2
+1672,5895.5,153.9
+1672,6383.8,163.7
+1672,6872.0,173.5
+1672,7360.2,183.2
+1881,-6993.8,41.6
+1881,-6525.1,44.1
+1881,-6056.4,46.5
+1881,-5587.7,51.4
+1881,-5119.0,56.3
+1881,-4650.3,61.2
+1881,-4181.6,66.0
+1881,-3712.9,70.9
+1881,-3244.2,75.8
+1881,-2775.5,80.7
+1881,-2306.8,85.6
+1881,-2072.4,80.7
+1881,-1838.1,75.8
+1881,-1603.7,70.9
+1881,-1369.4,66.0
+1881,-1135.0,61.2
+1881,-900.7,56.3
+1881,-666.3,51.4
+1881,-432.0,46.5
+1881,-314.8,44.1
+1881,-197.6,41.6
+1881,-139.0,40.4
+1881,-80.4,39.2
+1881,-21.8,38.0
+1881,38.0,38.0
+1881,97.8,38.0
+1881,158.8,39.2
+1881,219.8,40.4
+1881,280.9,41.6
+1881,402.9,44.1
+1881,525.0,46.5
+1881,769.1,51.4
+1881,1013.2,56.3
+1881,1257.3,61.2
+1881,1501.4,66.0
+1881,1745.6,70.9
+1881,1989.7,75.8
+1881,2233.8,80.7
+1881,2477.9,85.6
+1881,2966.1,95.3
+1881,3454.4,105.1
+1881,3942.6,114.9
+1881,4430.8,124.6
+1881,4919.1,134.4
+1881,5407.3,144.2
+1881,5895.5,153.9
+1881,6383.8,163.7
+1881,6872.0,173.5
+1881,7360.2,183.2
+2090,-6993.8,41.6
+2090,-6525.1,44.1
+2090,-6056.4,46.5
+2090,-5587.7,51.4
+2090,-5119.0,56.3
+2090,-4650.3,61.2
+2090,-4181.6,66.0
+2090,-3712.9,70.9
+2090,-3244.2,75.8
+2090,-2775.5,80.7
+2090,-2306.8,85.6
+2090,-2072.4,80.7
+2090,-1838.1,75.8
+2090,-1603.7,70.9
+2090,-1369.4,66.0
+2090,-1135.0,61.2
+2090,-900.7,56.3
+2090,-666.3,51.4
+2090,-432.0,46.5
+2090,-314.8,44.1
+2090,-197.6,41.6
+2090,-139.0,40.4
+2090,-80.4,39.2
+2090,-21.8,38.0
+2090,38.0,38.0
+2090,97.8,38.0
+2090,158.8,39.2
+2090,219.8,40.4
+2090,280.9,41.6
+2090,402.9,44.1
+2090,525.0,46.5
+2090,769.1,51.4
+2090,1013.2,56.3
+2090,1257.3,61.2
+2090,1501.4,66.0
+2090,1745.6,70.9
+2090,1989.7,75.8
+2090,2233.8,80.7
+2090,2477.9,85.6
+2090,2966.1,95.3
+2090,3454.4,105.1
+2090,3942.6,114.9
+2090,4430.8,124.6
+2090,4919.1,134.4
+2090,5407.3,144.2
+2090,5895.5,153.9
+2090,6383.8,163.7
+2090,6872.0,173.5
+2090,7360.2,183.2
+2299,-6993.8,41.6
+2299,-6525.1,44.1
+2299,-6056.4,46.5
+2299,-5587.7,51.4
+2299,-5119.0,56.3
+2299,-4650.3,61.2
+2299,-4181.6,66.0
+2299,-3712.9,70.9
+2299,-3244.2,75.8
+2299,-2775.5,80.7
+2299,-2306.8,85.6
+2299,-2072.4,80.7
+2299,-1838.1,75.8
+2299,-1603.7,70.9
+2299,-1369.4,66.0
+2299,-1135.0,61.2
+2299,-900.7,56.3
+2299,-666.3,51.4
+2299,-432.0,46.5
+2299,-314.8,44.1
+2299,-197.6,41.6
+2299,-139.0,40.4
+2299,-80.4,39.2
+2299,-21.8,38.0
+2299,38.0,38.0
+2299,97.8,38.0
+2299,158.8,39.2
+2299,219.8,40.4
+2299,280.9,41.6
+2299,402.9,44.1
+2299,525.0,46.5
+2299,769.1,51.4
+2299,1013.2,56.3
+2299,1257.3,61.2
+2299,1501.4,66.0
+2299,1745.6,70.9
+2299,1989.7,75.8
+2299,2233.8,80.7
+2299,2477.9,85.6
+2299,2966.1,95.3
+2299,3454.4,105.1
+2299,3942.6,114.9
+2299,4430.8,124.6
+2299,4919.1,134.4
+2299,5407.3,144.2
+2299,5895.5,153.9
+2299,6383.8,163.7
+2299,6872.0,173.5
+2299,7360.2,183.2
+2508,-6993.8,41.6
+2508,-6525.1,44.1
+2508,-6056.4,46.5
+2508,-5587.7,51.4
+2508,-5119.0,56.3
+2508,-4650.3,61.2
+2508,-4181.6,66.0
+2508,-3712.9,70.9
+2508,-3244.2,75.8
+2508,-2775.5,80.7
+2508,-2306.8,85.6
+2508,-2072.4,80.7
+2508,-1838.1,75.8
+2508,-1603.7,70.9
+2508,-1369.4,66.0
+2508,-1135.0,61.2
+2508,-900.7,56.3
+2508,-666.3,51.4
+2508,-432.0,46.5
+2508,-314.8,44.1
+2508,-197.6,41.6
+2508,-139.0,40.4
+2508,-80.4,39.2
+2508,-21.8,38.0
+2508,38.0,38.0
+2508,97.8,38.0
+2508,158.8,39.2
+2508,219.8,40.4
+2508,280.9,41.6
+2508,402.9,44.1
+2508,525.0,46.5
+2508,769.1,51.4
+2508,1013.2,56.3
+2508,1257.3,61.2
+2508,1501.4,66.0
+2508,1745.6,70.9
+2508,1989.7,75.8
+2508,2233.8,80.7
+2508,2477.9,85.6
+2508,2966.1,95.3
+2508,3454.4,105.1
+2508,3942.6,114.9
+2508,4430.8,124.6
+2508,4919.1,134.4
+2508,5407.3,144.2
+2508,5895.5,153.9
+2508,6383.8,163.7
+2508,6872.0,173.5
+2508,7360.2,183.2
+2717,-6993.8,41.6
+2717,-6525.1,44.1
+2717,-6056.4,46.5
+2717,-5587.7,51.4
+2717,-5119.0,56.3
+2717,-4650.3,61.2
+2717,-4181.6,66.0
+2717,-3712.9,70.9
+2717,-3244.2,75.8
+2717,-2775.5,80.7
+2717,-2306.8,85.6
+2717,-2072.4,80.7
+2717,-1838.1,75.8
+2717,-1603.7,70.9
+2717,-1369.4,66.0
+2717,-1135.0,61.2
+2717,-900.7,56.3
+2717,-666.3,51.4
+2717,-432.0,46.5
+2717,-314.8,44.1
+2717,-197.6,41.6
+2717,-139.0,40.4
+2717,-80.4,39.2
+2717,-21.8,38.0
+2717,38.0,38.0
+2717,97.8,38.0
+2717,158.8,39.2
+2717,219.8,40.4
+2717,280.9,41.6
+2717,402.9,44.1
+2717,525.0,46.5
+2717,769.1,51.4
+2717,1013.2,56.3
+2717,1257.3,61.2
+2717,1501.4,66.0
+2717,1745.6,70.9
+2717,1989.7,75.8
+2717,2233.8,80.7
+2717,2477.9,85.6
+2717,2966.1,95.3
+2717,3454.4,105.1
+2717,3942.6,114.9
+2717,4430.8,124.6
+2717,4919.1,134.4
+2717,5407.3,144.2
+2717,5895.5,153.9
+2717,6383.8,163.7
+2717,6872.0,173.5
+2717,7360.2,183.2
+2926,-6993.8,41.6
+2926,-6525.1,44.1
+2926,-6056.4,46.5
+2926,-5587.7,51.4
+2926,-5119.0,56.3
+2926,-4650.3,61.2
+2926,-4181.6,66.0
+2926,-3712.9,70.9
+2926,-3244.2,75.8
+2926,-2775.5,80.7
+2926,-2306.8,85.6
+2926,-2072.4,80.7
+2926,-1838.1,75.8
+2926,-1603.7,70.9
+2926,-1369.4,66.0
+2926,-1135.0,61.2
+2926,-900.7,56.3
+2926,-666.3,51.4
+2926,-432.0,46.5
+2926,-314.8,44.1
+2926,-197.6,41.6
+2926,-139.0,40.4
+2926,-80.4,39.2
+2926,-21.8,38.0
+2926,38.0,38.0
+2926,97.8,38.0
+2926,158.8,39.2
+2926,219.8,40.4
+2926,280.9,41.6
+2926,402.9,44.1
+2926,525.0,46.5
+2926,769.1,51.4
+2926,1013.2,56.3
+2926,1257.3,61.2
+2926,1501.4,66.0
+2926,1745.6,70.9
+2926,1989.7,75.8
+2926,2233.8,80.7
+2926,2477.9,85.6
+2926,2966.1,95.3
+2926,3454.4,105.1
+2926,3942.6,114.9
+2926,4430.8,124.6
+2926,4919.1,134.4
+2926,5407.3,144.2
+2926,5895.5,153.9
+2926,6383.8,163.7
+2926,6872.0,173.5
+2926,7360.2,183.2
+3135,-6993.8,41.6
+3135,-6525.1,44.1
+3135,-6056.4,46.5
+3135,-5587.7,51.4
+3135,-5119.0,56.3
+3135,-4650.3,61.2
+3135,-4181.6,66.0
+3135,-3712.9,70.9
+3135,-3244.2,75.8
+3135,-2775.5,80.7
+3135,-2306.8,85.6
+3135,-2072.4,80.7
+3135,-1838.1,75.8
+3135,-1603.7,70.9
+3135,-1369.4,66.0
+3135,-1135.0,61.2
+3135,-900.7,56.3
+3135,-666.3,51.4
+3135,-432.0,46.5
+3135,-314.8,44.1
+3135,-197.6,41.6
+3135,-139.0,40.4
+3135,-80.4,39.2
+3135,-21.8,38.0
+3135,38.0,38.0
+3135,97.8,38.0
+3135,158.8,39.2
+3135,219.8,40.4
+3135,280.9,41.6
+3135,402.9,44.1
+3135,525.0,46.5
+3135,769.1,51.4
+3135,1013.2,56.3
+3135,1257.3,61.2
+3135,1501.4,66.0
+3135,1745.6,70.9
+3135,1989.7,75.8
+3135,2233.8,80.7
+3135,2477.9,85.6
+3135,2966.1,95.3
+3135,3454.4,105.1
+3135,3942.6,114.9
+3135,4430.8,124.6
+3135,4919.1,134.4
+3135,5407.3,144.2
+3135,5895.5,153.9
+3135,6383.8,163.7
+3135,6872.0,173.5
+3135,7360.2,183.2
+3344,-6993.8,41.6
+3344,-6525.1,44.1
+3344,-6056.4,46.5
+3344,-5587.7,51.4
+3344,-5119.0,56.3
+3344,-4650.3,61.2
+3344,-4181.6,66.0
+3344,-3712.9,70.9
+3344,-3244.2,75.8
+3344,-2775.5,80.7
+3344,-2306.8,85.6
+3344,-2072.4,80.7
+3344,-1838.1,75.8
+3344,-1603.7,70.9
+3344,-1369.4,66.0
+3344,-1135.0,61.2
+3344,-900.7,56.3
+3344,-666.3,51.4
+3344,-432.0,46.5
+3344,-314.8,44.1
+3344,-197.6,41.6
+3344,-139.0,40.4
+3344,-80.4,39.2
+3344,-21.8,38.0
+3344,38.0,38.0
+3344,97.8,38.0
+3344,158.8,39.2
+3344,219.8,40.4
+3344,280.9,41.6
+3344,402.9,44.1
+3344,525.0,46.5
+3344,769.1,51.4
+3344,1013.2,56.3
+3344,1257.3,61.2
+3344,1501.4,66.0
+3344,1745.6,70.9
+3344,1989.7,75.8
+3344,2233.8,80.7
+3344,2477.9,85.6
+3344,2966.1,95.3
+3344,3454.4,105.1
+3344,3942.6,114.9
+3344,4430.8,124.6
+3344,4919.1,134.4
+3344,5407.3,144.2
+3344,5895.5,153.9
+3344,6383.8,163.7
+3344,6872.0,173.5
+3344,7360.2,183.2
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Axle_4x2_orig.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Axle_4x2_orig.vtlm
new file mode 100644
index 0000000000000000000000000000000000000000..a3a48d41fa70ad13bcb1a39c12f25e9cbb166a2f
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Axle_4x2_orig.vtlm
@@ -0,0 +1,157 @@
+Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm]
+0,-1000,25
+0,0,5
+0,1000,25
+0,2000,45
+0,3000,65
+0,4000,85
+0,5000,105
+0,6000,125
+0,7000,145
+0,8000,165
+0,9000,185
+0,10000,205
+238,-1000,25.2
+238,0,5.2
+238,1000,25.2
+238,2000,45.2
+238,3000,65.2
+238,4000,85.2
+238,5000,105.2
+238,6000,125.2
+238,7000,145.2
+238,8000,165.2
+238,9000,185.2
+238,10000,205.2
+475,-1000,25.5
+475,0,5.5
+475,551,16.5
+475,1102,27.5
+475,1653,38.5
+475,2204,49.5
+475,2755,60.6
+475,3306,71.6
+475,3857,82.6
+475,4408,93.6
+475,4959,104.6
+475,5510,115.7
+713,-1000,25.7
+713,0,5.7
+713,346,12.6
+713,692,19.5
+713,1038,26.5
+713,1384,33.4
+713,1730,40.3
+713,2076,47.2
+713,2422,54.1
+713,2768,61
+713,3114,68
+713,3460,74.9
+950,-1000,25.9
+950,0,5.9
+950,278,11.5
+950,555,17
+950,833,22.6
+950,1111,28.1
+950,1389,33.7
+950,1666,39.3
+950,1944,44.8
+950,2222,50.4
+950,2500,55.9
+950,2777,61.5
+1188,-1000,26.2
+1188,0,6.2
+1188,221,10.6
+1188,443,15
+1188,664,19.4
+1188,886,23.9
+1188,1107,28.3
+1188,1329,32.7
+1188,1550,37.2
+1188,1772,41.6
+1188,1993,46
+1188,2215,50.4
+1425,-1000,26.4
+1425,0,6.4
+1425,180,10
+1425,361,13.6
+1425,541,17.2
+1425,721,20.8
+1425,902,24.4
+1425,1082,28
+1425,1262,31.6
+1425,1443,35.2
+1425,1623,38.8
+1425,1804,42.5
+1663,-1000,26.6
+1663,0,6.6
+1663,146,9.5
+1663,292,12.4
+1663,437,15.4
+1663,583,18.3
+1663,729,21.2
+1663,875,24.1
+1663,1020,27
+1663,1166,29.9
+1663,1312,32.9
+1663,1458,35.8
+1900,-1000,26.8
+1900,0,6.8
+1900,130,9.4
+1900,260,12
+1900,390,14.6
+1900,520,17.2
+1900,650,19.8
+1900,780,22.4
+1900,909,25
+1900,1039,27.6
+1900,1169,30.2
+1900,1299,32.8
+2138,-1000,27.1
+2138,0,7.1
+2138,114,9.4
+2138,228,11.6
+2138,342,13.9
+2138,456,16.2
+2138,570,18.5
+2138,684,20.8
+2138,798,23
+2138,912,25.3
+2138,1026,27.6
+2138,1140,29.9
+2375,-1000,27.3
+2375,0,7.3
+2375,110,9.5
+2375,220,11.7
+2375,330,13.9
+2375,440,16.1
+2375,550,18.3
+2375,660,20.5
+2375,770,22.7
+2375,880,24.9
+2375,990,27.1
+2375,1100,29.3
+2613,-1000,27.5
+2613,0,7.5
+2613,110,9.7
+2613,220,11.9
+2613,330,14.1
+2613,440,16.3
+2613,550,18.5
+2613,660,20.7
+2613,770,22.9
+2613,880,25.1
+2613,990,27.3
+2613,1100,29.5
+3088,-1000,28
+3088,0,8
+3088,110,10.2
+3088,220,12.4
+3088,330,14.6
+3088,440,16.8
+3088,550,19
+3088,660,21.2
+3088,770,23.4
+3088,880,25.6
+3088,990,27.8
+3088,1100,30
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Class2_RigidTruck.vveh b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Class2_RigidTruck.vveh
new file mode 100644
index 0000000000000000000000000000000000000000..5227ba879ee3b235a6d511298d39dec27cf8b68c
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Class2_RigidTruck.vveh
@@ -0,0 +1,56 @@
+{
+  "Header": {
+    "CreatedBy": " ()",
+    "Date": "2016-10-13T10:06:43.0936564Z",
+    "AppVersion": "3",
+    "FileVersion": 7
+  },
+  "Body": {
+    "SavedInDeclMode": true,
+    "VehCat": "RigidTruck",
+    "CurbWeight": 4670.0,
+    "CurbWeightExtra": 0.0,
+    "Loading": 0.0,
+    "MassMax": 11.99,
+    "CdA": 4.83,
+    "rdyn": 0.0,
+    "CdCorrMode": "CdofVdecl",
+    "CdCorrFile": "",
+    "Retarder": {
+      "Type": "None",
+      "Ratio": 0.0,
+      "File": ""
+    },
+    "Angledrive": {
+      "Type": "None",
+      "Ratio": 0.0,
+      "LossMap": ""
+    },
+    "PTO": {
+      "Type": "None",
+      "LossMap": "",
+      "Cycle": ""
+    },
+    "AxleConfig": {
+      "Type": "4x2",
+      "Axles": [
+        {
+          "Inertia": 6.5,
+          "Wheels": "265/70 R19.5",
+          "AxleWeightShare": 0.0,
+          "TwinTyres": false,
+          "RRCISO": 0.0065,
+          "FzISO": 20850.0
+        },
+        {
+          "Inertia": 6.5,
+          "Wheels": "265/70 R19.5",
+          "AxleWeightShare": 0.0,
+          "TwinTyres": true,
+          "RRCISO": 0.0075,
+          "FzISO": 20850.0
+        }
+      ]
+    }
+  }
+}
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Class2_RigidTruck_DECL.vecto b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Class2_RigidTruck_DECL.vecto
new file mode 100644
index 0000000000000000000000000000000000000000..cf83ebd7702bd89b404896591776610c27e80b25
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Class2_RigidTruck_DECL.vecto
@@ -0,0 +1,67 @@
+{
+  "Header": {
+    "CreatedBy": " ()",
+    "Date": "2016-10-13T15:21:02.8206564Z",
+    "AppVersion": "3",
+    "FileVersion": 3
+  },
+  "Body": {
+    "SavedInDeclMode": true,
+    "EngineOnlyMode": false,
+    "VehicleFile": "Class2_RigidTruck.vveh",
+    "EngineFile": "Engine_175kW_6.8l.veng",
+    "GearboxFile": "MT_6.vgbx",
+    "AuxiliaryAssembly": "Classic",
+    "AuxiliaryVersion": "CLASSIC",
+    "AdvancedAuxiliaryFilePath": "",
+    "Aux": [
+      {
+        "ID": "FAN",
+        "Type": "Fan",
+        "Technology": [
+          "Belt driven or driven via transm. - Electronically controlled visco clutch"
+        ]
+      },
+      {
+        "ID": "STP",
+        "Type": "Steering pump",
+        "Technology": [
+          "Fixed displacement with elec. control"
+        ]
+      },
+      {
+        "ID": "AC",
+        "Type": "HVAC",
+        "Technology": [
+          "Default"
+        ]
+      },
+      {
+        "ID": "ES",
+        "Type": "Electric System",
+        "Technology": [
+          "Standard technology"
+        ]
+      },
+      {
+        "ID": "PS",
+        "Type": "Pneumatic System",
+        "Technology": [
+          "Medium Supply 1-stage + ESS + AMS"
+        ]
+      }
+    ],
+    "StartStop": {
+      "Enabled": false,
+      "MaxSpeed": 5.0,
+      "MinTime": 5.0,
+      "Delay": 5.0
+    },
+    "OverSpeedEcoRoll": {
+      "Mode": "Overspeed",
+      "MinSpeed": 50.0,
+      "OverSpeed": 5.0,
+      "UnderSpeed": 5.0
+    }
+  }
+}
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Engine_175kW_6.8l.veng b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Engine_175kW_6.8l.veng
new file mode 100644
index 0000000000000000000000000000000000000000..f10c2b595f3e0d850b503dcc6a99ed8574396aa5
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Engine_175kW_6.8l.veng
@@ -0,0 +1,21 @@
+{
+  "Header": {
+    "CreatedBy": " ()",
+    "Date": "2016-10-13T10:06:50.6286564Z",
+    "AppVersion": "3",
+    "FileVersion": 3
+  },
+  "Body": {
+    "SavedInDeclMode": true,
+    "ModelName": "175kW 6.8l Engine",
+    "Displacement": "6871",
+    "IdlingSpeed": 600.0,
+    "Inertia": 3.56517,
+    "FullLoadCurve": "175kW.vfld",
+    "FuelMap": "175kW.vmap",
+    "WHTC-Urban": 1.0,
+    "WHTC-Rural": 1.0,
+    "WHTC-Motorway": 1.0,
+    "ColdHotBalancingFactor": 1.0
+  }
+}
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_1.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_1.vtlm
new file mode 100644
index 0000000000000000000000000000000000000000..b4274373230f50e6df7eb9702010c7a868dc967e
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_1.vtlm
@@ -0,0 +1,233 @@
+Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm]
+0,-5500.0,229.6
+0,-5000.0,209.6
+0,-4500.0,169.6
+0,-4000.0,169.6
+0,-3500.0,149.6
+0,-3000.0,129.6
+0,-2500.0,109.6
+0,-2000.0,89.6
+0,-1600.0,73.6
+0,-1200.0,57.6
+0,-900.0,45.6
+0,-600.0,33.6
+0,-400.0,25.6
+0,-200.0,17.6
+0,0.0,17.6
+0,200.0,17.6
+0,400.0,25.6
+0,600.0,33.6
+0,900.0,45.6
+0,1200.0,57.6
+0,1600.0,73.6
+0,2000.0,89.6
+0,2500.0,109.6
+0,3000.0,129.6
+0,3500.0,149.6
+0,4000.0,169.6
+0,4500.0,189.6
+0,5000.0,209.6
+0,5500.0,229.6
+600,-5500.0,229.6
+600,-5000.0,209.6
+600,-4500.0,169.6
+600,-4000.0,169.6
+600,-3500.0,149.6
+600,-3000.0,129.6
+600,-2500.0,109.6
+600,-2000.0,89.6
+600,-1600.0,73.6
+600,-1200.0,57.6
+600,-900.0,45.6
+600,-600.0,33.6
+600,-400.0,25.6
+600,-200.0,17.6
+600,0.0,17.6
+600,200.0,17.6
+600,400.0,25.6
+600,600.0,33.6
+600,900.0,45.6
+600,1200.0,57.6
+600,1600.0,73.6
+600,2000.0,89.6
+600,2500.0,109.6
+600,3000.0,129.6
+600,3500.0,149.6
+600,4000.0,169.6
+600,4500.0,189.6
+600,5000.0,209.6
+600,5500.0,229.6
+900,-5500.0,231.4
+900,-5000.0,211.4
+900,-4500.0,171.4
+900,-4000.0,171.4
+900,-3500.0,151.4
+900,-3000.0,131.4
+900,-2500.0,111.4
+900,-2000.0,91.4
+900,-1600.0,75.4
+900,-1200.0,59.4
+900,-900.0,47.4
+900,-600.0,35.4
+900,-400.0,27.4
+900,-200.0,19.4
+900,0.0,19.4
+900,200.0,19.4
+900,400.0,27.4
+900,600.0,35.4
+900,900.0,47.4
+900,1200.0,59.4
+900,1600.0,75.4
+900,2000.0,91.4
+900,2500.0,111.4
+900,3000.0,131.4
+900,3500.0,151.4
+900,4000.0,171.4
+900,4500.0,191.4
+900,5000.0,211.4
+900,5500.0,231.4
+1200,-5500.0,233.2
+1200,-5000.0,213.2
+1200,-4500.0,173.2
+1200,-4000.0,173.2
+1200,-3500.0,153.2
+1200,-3000.0,133.2
+1200,-2500.0,113.2
+1200,-2000.0,93.2
+1200,-1600.0,77.2
+1200,-1200.0,61.2
+1200,-900.0,49.2
+1200,-600.0,37.2
+1200,-400.0,29.2
+1200,-200.0,21.2
+1200,0.0,21.2
+1200,200.0,21.2
+1200,400.0,29.2
+1200,600.0,37.2
+1200,900.0,49.2
+1200,1200.0,61.2
+1200,1600.0,77.2
+1200,2000.0,93.2
+1200,2500.0,113.2
+1200,3000.0,133.2
+1200,3500.0,153.2
+1200,4000.0,173.2
+1200,4500.0,193.2
+1200,5000.0,213.2
+1200,5500.0,233.2
+1600,-5500.0,235.6
+1600,-5000.0,215.6
+1600,-4500.0,175.6
+1600,-4000.0,175.6
+1600,-3500.0,155.6
+1600,-3000.0,135.6
+1600,-2500.0,115.6
+1600,-2000.0,95.6
+1600,-1600.0,79.6
+1600,-1200.0,63.6
+1600,-900.0,51.6
+1600,-600.0,39.6
+1600,-400.0,31.6
+1600,-200.0,23.6
+1600,0.0,23.6
+1600,200.0,23.6
+1600,400.0,31.6
+1600,600.0,39.6
+1600,900.0,51.6
+1600,1200.0,63.6
+1600,1600.0,79.6
+1600,2000.0,95.6
+1600,2500.0,115.6
+1600,3000.0,135.6
+1600,3500.0,155.6
+1600,4000.0,175.6
+1600,4500.0,195.6
+1600,5000.0,215.6
+1600,5500.0,235.6
+2000,-5500.0,238.0
+2000,-5000.0,218.0
+2000,-4500.0,178.0
+2000,-4000.0,178.0
+2000,-3500.0,158.0
+2000,-3000.0,138.0
+2000,-2500.0,118.0
+2000,-2000.0,98.0
+2000,-1600.0,82.0
+2000,-1200.0,66.0
+2000,-900.0,54.0
+2000,-600.0,42.0
+2000,-400.0,34.0
+2000,-200.0,26.0
+2000,0.0,26.0
+2000,200.0,26.0
+2000,400.0,34.0
+2000,600.0,42.0
+2000,900.0,54.0
+2000,1200.0,66.0
+2000,1600.0,82.0
+2000,2000.0,98.0
+2000,2500.0,118.0
+2000,3000.0,138.0
+2000,3500.0,158.0
+2000,4000.0,178.0
+2000,4500.0,198.0
+2000,5000.0,218.0
+2000,5500.0,238.0
+2500,-5500.0,241.0
+2500,-5000.0,221.0
+2500,-4500.0,181.0
+2500,-4000.0,181.0
+2500,-3500.0,161.0
+2500,-3000.0,141.0
+2500,-2500.0,121.0
+2500,-2000.0,101.0
+2500,-1600.0,85.0
+2500,-1200.0,69.0
+2500,-900.0,57.0
+2500,-600.0,45.0
+2500,-400.0,37.0
+2500,-200.0,29.0
+2500,0.0,29.0
+2500,200.0,29.0
+2500,400.0,37.0
+2500,600.0,45.0
+2500,900.0,57.0
+2500,1200.0,69.0
+2500,1600.0,85.0
+2500,2000.0,101.0
+2500,2500.0,121.0
+2500,3000.0,141.0
+2500,3500.0,161.0
+2500,4000.0,181.0
+2500,4500.0,201.0
+2500,5000.0,221.0
+2500,5500.0,241.0
+3000,-5500.0,244.0
+3000,-5000.0,224.0
+3000,-4500.0,184.0
+3000,-4000.0,184.0
+3000,-3500.0,164.0
+3000,-3000.0,144.0
+3000,-2500.0,124.0
+3000,-2000.0,104.0
+3000,-1600.0,88.0
+3000,-1200.0,72.0
+3000,-900.0,60.0
+3000,-600.0,48.0
+3000,-400.0,40.0
+3000,-200.0,32.0
+3000,0.0,32.0
+3000,200.0,32.0
+3000,400.0,40.0
+3000,600.0,48.0
+3000,900.0,60.0
+3000,1200.0,72.0
+3000,1600.0,88.0
+3000,2000.0,104.0
+3000,2500.0,124.0
+3000,3000.0,144.0
+3000,3500.0,164.0
+3000,4000.0,184.0
+3000,4500.0,204.0
+3000,5000.0,224.0
+3000,5500.0,244.0
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_2.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_2.vtlm
new file mode 100644
index 0000000000000000000000000000000000000000..b4274373230f50e6df7eb9702010c7a868dc967e
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_2.vtlm
@@ -0,0 +1,233 @@
+Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm]
+0,-5500.0,229.6
+0,-5000.0,209.6
+0,-4500.0,169.6
+0,-4000.0,169.6
+0,-3500.0,149.6
+0,-3000.0,129.6
+0,-2500.0,109.6
+0,-2000.0,89.6
+0,-1600.0,73.6
+0,-1200.0,57.6
+0,-900.0,45.6
+0,-600.0,33.6
+0,-400.0,25.6
+0,-200.0,17.6
+0,0.0,17.6
+0,200.0,17.6
+0,400.0,25.6
+0,600.0,33.6
+0,900.0,45.6
+0,1200.0,57.6
+0,1600.0,73.6
+0,2000.0,89.6
+0,2500.0,109.6
+0,3000.0,129.6
+0,3500.0,149.6
+0,4000.0,169.6
+0,4500.0,189.6
+0,5000.0,209.6
+0,5500.0,229.6
+600,-5500.0,229.6
+600,-5000.0,209.6
+600,-4500.0,169.6
+600,-4000.0,169.6
+600,-3500.0,149.6
+600,-3000.0,129.6
+600,-2500.0,109.6
+600,-2000.0,89.6
+600,-1600.0,73.6
+600,-1200.0,57.6
+600,-900.0,45.6
+600,-600.0,33.6
+600,-400.0,25.6
+600,-200.0,17.6
+600,0.0,17.6
+600,200.0,17.6
+600,400.0,25.6
+600,600.0,33.6
+600,900.0,45.6
+600,1200.0,57.6
+600,1600.0,73.6
+600,2000.0,89.6
+600,2500.0,109.6
+600,3000.0,129.6
+600,3500.0,149.6
+600,4000.0,169.6
+600,4500.0,189.6
+600,5000.0,209.6
+600,5500.0,229.6
+900,-5500.0,231.4
+900,-5000.0,211.4
+900,-4500.0,171.4
+900,-4000.0,171.4
+900,-3500.0,151.4
+900,-3000.0,131.4
+900,-2500.0,111.4
+900,-2000.0,91.4
+900,-1600.0,75.4
+900,-1200.0,59.4
+900,-900.0,47.4
+900,-600.0,35.4
+900,-400.0,27.4
+900,-200.0,19.4
+900,0.0,19.4
+900,200.0,19.4
+900,400.0,27.4
+900,600.0,35.4
+900,900.0,47.4
+900,1200.0,59.4
+900,1600.0,75.4
+900,2000.0,91.4
+900,2500.0,111.4
+900,3000.0,131.4
+900,3500.0,151.4
+900,4000.0,171.4
+900,4500.0,191.4
+900,5000.0,211.4
+900,5500.0,231.4
+1200,-5500.0,233.2
+1200,-5000.0,213.2
+1200,-4500.0,173.2
+1200,-4000.0,173.2
+1200,-3500.0,153.2
+1200,-3000.0,133.2
+1200,-2500.0,113.2
+1200,-2000.0,93.2
+1200,-1600.0,77.2
+1200,-1200.0,61.2
+1200,-900.0,49.2
+1200,-600.0,37.2
+1200,-400.0,29.2
+1200,-200.0,21.2
+1200,0.0,21.2
+1200,200.0,21.2
+1200,400.0,29.2
+1200,600.0,37.2
+1200,900.0,49.2
+1200,1200.0,61.2
+1200,1600.0,77.2
+1200,2000.0,93.2
+1200,2500.0,113.2
+1200,3000.0,133.2
+1200,3500.0,153.2
+1200,4000.0,173.2
+1200,4500.0,193.2
+1200,5000.0,213.2
+1200,5500.0,233.2
+1600,-5500.0,235.6
+1600,-5000.0,215.6
+1600,-4500.0,175.6
+1600,-4000.0,175.6
+1600,-3500.0,155.6
+1600,-3000.0,135.6
+1600,-2500.0,115.6
+1600,-2000.0,95.6
+1600,-1600.0,79.6
+1600,-1200.0,63.6
+1600,-900.0,51.6
+1600,-600.0,39.6
+1600,-400.0,31.6
+1600,-200.0,23.6
+1600,0.0,23.6
+1600,200.0,23.6
+1600,400.0,31.6
+1600,600.0,39.6
+1600,900.0,51.6
+1600,1200.0,63.6
+1600,1600.0,79.6
+1600,2000.0,95.6
+1600,2500.0,115.6
+1600,3000.0,135.6
+1600,3500.0,155.6
+1600,4000.0,175.6
+1600,4500.0,195.6
+1600,5000.0,215.6
+1600,5500.0,235.6
+2000,-5500.0,238.0
+2000,-5000.0,218.0
+2000,-4500.0,178.0
+2000,-4000.0,178.0
+2000,-3500.0,158.0
+2000,-3000.0,138.0
+2000,-2500.0,118.0
+2000,-2000.0,98.0
+2000,-1600.0,82.0
+2000,-1200.0,66.0
+2000,-900.0,54.0
+2000,-600.0,42.0
+2000,-400.0,34.0
+2000,-200.0,26.0
+2000,0.0,26.0
+2000,200.0,26.0
+2000,400.0,34.0
+2000,600.0,42.0
+2000,900.0,54.0
+2000,1200.0,66.0
+2000,1600.0,82.0
+2000,2000.0,98.0
+2000,2500.0,118.0
+2000,3000.0,138.0
+2000,3500.0,158.0
+2000,4000.0,178.0
+2000,4500.0,198.0
+2000,5000.0,218.0
+2000,5500.0,238.0
+2500,-5500.0,241.0
+2500,-5000.0,221.0
+2500,-4500.0,181.0
+2500,-4000.0,181.0
+2500,-3500.0,161.0
+2500,-3000.0,141.0
+2500,-2500.0,121.0
+2500,-2000.0,101.0
+2500,-1600.0,85.0
+2500,-1200.0,69.0
+2500,-900.0,57.0
+2500,-600.0,45.0
+2500,-400.0,37.0
+2500,-200.0,29.0
+2500,0.0,29.0
+2500,200.0,29.0
+2500,400.0,37.0
+2500,600.0,45.0
+2500,900.0,57.0
+2500,1200.0,69.0
+2500,1600.0,85.0
+2500,2000.0,101.0
+2500,2500.0,121.0
+2500,3000.0,141.0
+2500,3500.0,161.0
+2500,4000.0,181.0
+2500,4500.0,201.0
+2500,5000.0,221.0
+2500,5500.0,241.0
+3000,-5500.0,244.0
+3000,-5000.0,224.0
+3000,-4500.0,184.0
+3000,-4000.0,184.0
+3000,-3500.0,164.0
+3000,-3000.0,144.0
+3000,-2500.0,124.0
+3000,-2000.0,104.0
+3000,-1600.0,88.0
+3000,-1200.0,72.0
+3000,-900.0,60.0
+3000,-600.0,48.0
+3000,-400.0,40.0
+3000,-200.0,32.0
+3000,0.0,32.0
+3000,200.0,32.0
+3000,400.0,40.0
+3000,600.0,48.0
+3000,900.0,60.0
+3000,1200.0,72.0
+3000,1600.0,88.0
+3000,2000.0,104.0
+3000,2500.0,124.0
+3000,3000.0,144.0
+3000,3500.0,164.0
+3000,4000.0,184.0
+3000,4500.0,204.0
+3000,5000.0,224.0
+3000,5500.0,244.0
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_3.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_3.vtlm
new file mode 100644
index 0000000000000000000000000000000000000000..b4274373230f50e6df7eb9702010c7a868dc967e
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_3.vtlm
@@ -0,0 +1,233 @@
+Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm]
+0,-5500.0,229.6
+0,-5000.0,209.6
+0,-4500.0,169.6
+0,-4000.0,169.6
+0,-3500.0,149.6
+0,-3000.0,129.6
+0,-2500.0,109.6
+0,-2000.0,89.6
+0,-1600.0,73.6
+0,-1200.0,57.6
+0,-900.0,45.6
+0,-600.0,33.6
+0,-400.0,25.6
+0,-200.0,17.6
+0,0.0,17.6
+0,200.0,17.6
+0,400.0,25.6
+0,600.0,33.6
+0,900.0,45.6
+0,1200.0,57.6
+0,1600.0,73.6
+0,2000.0,89.6
+0,2500.0,109.6
+0,3000.0,129.6
+0,3500.0,149.6
+0,4000.0,169.6
+0,4500.0,189.6
+0,5000.0,209.6
+0,5500.0,229.6
+600,-5500.0,229.6
+600,-5000.0,209.6
+600,-4500.0,169.6
+600,-4000.0,169.6
+600,-3500.0,149.6
+600,-3000.0,129.6
+600,-2500.0,109.6
+600,-2000.0,89.6
+600,-1600.0,73.6
+600,-1200.0,57.6
+600,-900.0,45.6
+600,-600.0,33.6
+600,-400.0,25.6
+600,-200.0,17.6
+600,0.0,17.6
+600,200.0,17.6
+600,400.0,25.6
+600,600.0,33.6
+600,900.0,45.6
+600,1200.0,57.6
+600,1600.0,73.6
+600,2000.0,89.6
+600,2500.0,109.6
+600,3000.0,129.6
+600,3500.0,149.6
+600,4000.0,169.6
+600,4500.0,189.6
+600,5000.0,209.6
+600,5500.0,229.6
+900,-5500.0,231.4
+900,-5000.0,211.4
+900,-4500.0,171.4
+900,-4000.0,171.4
+900,-3500.0,151.4
+900,-3000.0,131.4
+900,-2500.0,111.4
+900,-2000.0,91.4
+900,-1600.0,75.4
+900,-1200.0,59.4
+900,-900.0,47.4
+900,-600.0,35.4
+900,-400.0,27.4
+900,-200.0,19.4
+900,0.0,19.4
+900,200.0,19.4
+900,400.0,27.4
+900,600.0,35.4
+900,900.0,47.4
+900,1200.0,59.4
+900,1600.0,75.4
+900,2000.0,91.4
+900,2500.0,111.4
+900,3000.0,131.4
+900,3500.0,151.4
+900,4000.0,171.4
+900,4500.0,191.4
+900,5000.0,211.4
+900,5500.0,231.4
+1200,-5500.0,233.2
+1200,-5000.0,213.2
+1200,-4500.0,173.2
+1200,-4000.0,173.2
+1200,-3500.0,153.2
+1200,-3000.0,133.2
+1200,-2500.0,113.2
+1200,-2000.0,93.2
+1200,-1600.0,77.2
+1200,-1200.0,61.2
+1200,-900.0,49.2
+1200,-600.0,37.2
+1200,-400.0,29.2
+1200,-200.0,21.2
+1200,0.0,21.2
+1200,200.0,21.2
+1200,400.0,29.2
+1200,600.0,37.2
+1200,900.0,49.2
+1200,1200.0,61.2
+1200,1600.0,77.2
+1200,2000.0,93.2
+1200,2500.0,113.2
+1200,3000.0,133.2
+1200,3500.0,153.2
+1200,4000.0,173.2
+1200,4500.0,193.2
+1200,5000.0,213.2
+1200,5500.0,233.2
+1600,-5500.0,235.6
+1600,-5000.0,215.6
+1600,-4500.0,175.6
+1600,-4000.0,175.6
+1600,-3500.0,155.6
+1600,-3000.0,135.6
+1600,-2500.0,115.6
+1600,-2000.0,95.6
+1600,-1600.0,79.6
+1600,-1200.0,63.6
+1600,-900.0,51.6
+1600,-600.0,39.6
+1600,-400.0,31.6
+1600,-200.0,23.6
+1600,0.0,23.6
+1600,200.0,23.6
+1600,400.0,31.6
+1600,600.0,39.6
+1600,900.0,51.6
+1600,1200.0,63.6
+1600,1600.0,79.6
+1600,2000.0,95.6
+1600,2500.0,115.6
+1600,3000.0,135.6
+1600,3500.0,155.6
+1600,4000.0,175.6
+1600,4500.0,195.6
+1600,5000.0,215.6
+1600,5500.0,235.6
+2000,-5500.0,238.0
+2000,-5000.0,218.0
+2000,-4500.0,178.0
+2000,-4000.0,178.0
+2000,-3500.0,158.0
+2000,-3000.0,138.0
+2000,-2500.0,118.0
+2000,-2000.0,98.0
+2000,-1600.0,82.0
+2000,-1200.0,66.0
+2000,-900.0,54.0
+2000,-600.0,42.0
+2000,-400.0,34.0
+2000,-200.0,26.0
+2000,0.0,26.0
+2000,200.0,26.0
+2000,400.0,34.0
+2000,600.0,42.0
+2000,900.0,54.0
+2000,1200.0,66.0
+2000,1600.0,82.0
+2000,2000.0,98.0
+2000,2500.0,118.0
+2000,3000.0,138.0
+2000,3500.0,158.0
+2000,4000.0,178.0
+2000,4500.0,198.0
+2000,5000.0,218.0
+2000,5500.0,238.0
+2500,-5500.0,241.0
+2500,-5000.0,221.0
+2500,-4500.0,181.0
+2500,-4000.0,181.0
+2500,-3500.0,161.0
+2500,-3000.0,141.0
+2500,-2500.0,121.0
+2500,-2000.0,101.0
+2500,-1600.0,85.0
+2500,-1200.0,69.0
+2500,-900.0,57.0
+2500,-600.0,45.0
+2500,-400.0,37.0
+2500,-200.0,29.0
+2500,0.0,29.0
+2500,200.0,29.0
+2500,400.0,37.0
+2500,600.0,45.0
+2500,900.0,57.0
+2500,1200.0,69.0
+2500,1600.0,85.0
+2500,2000.0,101.0
+2500,2500.0,121.0
+2500,3000.0,141.0
+2500,3500.0,161.0
+2500,4000.0,181.0
+2500,4500.0,201.0
+2500,5000.0,221.0
+2500,5500.0,241.0
+3000,-5500.0,244.0
+3000,-5000.0,224.0
+3000,-4500.0,184.0
+3000,-4000.0,184.0
+3000,-3500.0,164.0
+3000,-3000.0,144.0
+3000,-2500.0,124.0
+3000,-2000.0,104.0
+3000,-1600.0,88.0
+3000,-1200.0,72.0
+3000,-900.0,60.0
+3000,-600.0,48.0
+3000,-400.0,40.0
+3000,-200.0,32.0
+3000,0.0,32.0
+3000,200.0,32.0
+3000,400.0,40.0
+3000,600.0,48.0
+3000,900.0,60.0
+3000,1200.0,72.0
+3000,1600.0,88.0
+3000,2000.0,104.0
+3000,2500.0,124.0
+3000,3000.0,144.0
+3000,3500.0,164.0
+3000,4000.0,184.0
+3000,4500.0,204.0
+3000,5000.0,224.0
+3000,5500.0,244.0
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_4.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_4.vtlm
new file mode 100644
index 0000000000000000000000000000000000000000..b4274373230f50e6df7eb9702010c7a868dc967e
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_4.vtlm
@@ -0,0 +1,233 @@
+Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm]
+0,-5500.0,229.6
+0,-5000.0,209.6
+0,-4500.0,169.6
+0,-4000.0,169.6
+0,-3500.0,149.6
+0,-3000.0,129.6
+0,-2500.0,109.6
+0,-2000.0,89.6
+0,-1600.0,73.6
+0,-1200.0,57.6
+0,-900.0,45.6
+0,-600.0,33.6
+0,-400.0,25.6
+0,-200.0,17.6
+0,0.0,17.6
+0,200.0,17.6
+0,400.0,25.6
+0,600.0,33.6
+0,900.0,45.6
+0,1200.0,57.6
+0,1600.0,73.6
+0,2000.0,89.6
+0,2500.0,109.6
+0,3000.0,129.6
+0,3500.0,149.6
+0,4000.0,169.6
+0,4500.0,189.6
+0,5000.0,209.6
+0,5500.0,229.6
+600,-5500.0,229.6
+600,-5000.0,209.6
+600,-4500.0,169.6
+600,-4000.0,169.6
+600,-3500.0,149.6
+600,-3000.0,129.6
+600,-2500.0,109.6
+600,-2000.0,89.6
+600,-1600.0,73.6
+600,-1200.0,57.6
+600,-900.0,45.6
+600,-600.0,33.6
+600,-400.0,25.6
+600,-200.0,17.6
+600,0.0,17.6
+600,200.0,17.6
+600,400.0,25.6
+600,600.0,33.6
+600,900.0,45.6
+600,1200.0,57.6
+600,1600.0,73.6
+600,2000.0,89.6
+600,2500.0,109.6
+600,3000.0,129.6
+600,3500.0,149.6
+600,4000.0,169.6
+600,4500.0,189.6
+600,5000.0,209.6
+600,5500.0,229.6
+900,-5500.0,231.4
+900,-5000.0,211.4
+900,-4500.0,171.4
+900,-4000.0,171.4
+900,-3500.0,151.4
+900,-3000.0,131.4
+900,-2500.0,111.4
+900,-2000.0,91.4
+900,-1600.0,75.4
+900,-1200.0,59.4
+900,-900.0,47.4
+900,-600.0,35.4
+900,-400.0,27.4
+900,-200.0,19.4
+900,0.0,19.4
+900,200.0,19.4
+900,400.0,27.4
+900,600.0,35.4
+900,900.0,47.4
+900,1200.0,59.4
+900,1600.0,75.4
+900,2000.0,91.4
+900,2500.0,111.4
+900,3000.0,131.4
+900,3500.0,151.4
+900,4000.0,171.4
+900,4500.0,191.4
+900,5000.0,211.4
+900,5500.0,231.4
+1200,-5500.0,233.2
+1200,-5000.0,213.2
+1200,-4500.0,173.2
+1200,-4000.0,173.2
+1200,-3500.0,153.2
+1200,-3000.0,133.2
+1200,-2500.0,113.2
+1200,-2000.0,93.2
+1200,-1600.0,77.2
+1200,-1200.0,61.2
+1200,-900.0,49.2
+1200,-600.0,37.2
+1200,-400.0,29.2
+1200,-200.0,21.2
+1200,0.0,21.2
+1200,200.0,21.2
+1200,400.0,29.2
+1200,600.0,37.2
+1200,900.0,49.2
+1200,1200.0,61.2
+1200,1600.0,77.2
+1200,2000.0,93.2
+1200,2500.0,113.2
+1200,3000.0,133.2
+1200,3500.0,153.2
+1200,4000.0,173.2
+1200,4500.0,193.2
+1200,5000.0,213.2
+1200,5500.0,233.2
+1600,-5500.0,235.6
+1600,-5000.0,215.6
+1600,-4500.0,175.6
+1600,-4000.0,175.6
+1600,-3500.0,155.6
+1600,-3000.0,135.6
+1600,-2500.0,115.6
+1600,-2000.0,95.6
+1600,-1600.0,79.6
+1600,-1200.0,63.6
+1600,-900.0,51.6
+1600,-600.0,39.6
+1600,-400.0,31.6
+1600,-200.0,23.6
+1600,0.0,23.6
+1600,200.0,23.6
+1600,400.0,31.6
+1600,600.0,39.6
+1600,900.0,51.6
+1600,1200.0,63.6
+1600,1600.0,79.6
+1600,2000.0,95.6
+1600,2500.0,115.6
+1600,3000.0,135.6
+1600,3500.0,155.6
+1600,4000.0,175.6
+1600,4500.0,195.6
+1600,5000.0,215.6
+1600,5500.0,235.6
+2000,-5500.0,238.0
+2000,-5000.0,218.0
+2000,-4500.0,178.0
+2000,-4000.0,178.0
+2000,-3500.0,158.0
+2000,-3000.0,138.0
+2000,-2500.0,118.0
+2000,-2000.0,98.0
+2000,-1600.0,82.0
+2000,-1200.0,66.0
+2000,-900.0,54.0
+2000,-600.0,42.0
+2000,-400.0,34.0
+2000,-200.0,26.0
+2000,0.0,26.0
+2000,200.0,26.0
+2000,400.0,34.0
+2000,600.0,42.0
+2000,900.0,54.0
+2000,1200.0,66.0
+2000,1600.0,82.0
+2000,2000.0,98.0
+2000,2500.0,118.0
+2000,3000.0,138.0
+2000,3500.0,158.0
+2000,4000.0,178.0
+2000,4500.0,198.0
+2000,5000.0,218.0
+2000,5500.0,238.0
+2500,-5500.0,241.0
+2500,-5000.0,221.0
+2500,-4500.0,181.0
+2500,-4000.0,181.0
+2500,-3500.0,161.0
+2500,-3000.0,141.0
+2500,-2500.0,121.0
+2500,-2000.0,101.0
+2500,-1600.0,85.0
+2500,-1200.0,69.0
+2500,-900.0,57.0
+2500,-600.0,45.0
+2500,-400.0,37.0
+2500,-200.0,29.0
+2500,0.0,29.0
+2500,200.0,29.0
+2500,400.0,37.0
+2500,600.0,45.0
+2500,900.0,57.0
+2500,1200.0,69.0
+2500,1600.0,85.0
+2500,2000.0,101.0
+2500,2500.0,121.0
+2500,3000.0,141.0
+2500,3500.0,161.0
+2500,4000.0,181.0
+2500,4500.0,201.0
+2500,5000.0,221.0
+2500,5500.0,241.0
+3000,-5500.0,244.0
+3000,-5000.0,224.0
+3000,-4500.0,184.0
+3000,-4000.0,184.0
+3000,-3500.0,164.0
+3000,-3000.0,144.0
+3000,-2500.0,124.0
+3000,-2000.0,104.0
+3000,-1600.0,88.0
+3000,-1200.0,72.0
+3000,-900.0,60.0
+3000,-600.0,48.0
+3000,-400.0,40.0
+3000,-200.0,32.0
+3000,0.0,32.0
+3000,200.0,32.0
+3000,400.0,40.0
+3000,600.0,48.0
+3000,900.0,60.0
+3000,1200.0,72.0
+3000,1600.0,88.0
+3000,2000.0,104.0
+3000,2500.0,124.0
+3000,3000.0,144.0
+3000,3500.0,164.0
+3000,4000.0,184.0
+3000,4500.0,204.0
+3000,5000.0,224.0
+3000,5500.0,244.0
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_5.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_5.vtlm
new file mode 100644
index 0000000000000000000000000000000000000000..981092222c94b37a692b22b8d5c4087055fb14e2
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_5.vtlm
@@ -0,0 +1,233 @@
+Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm]
+0,-5500.0,64.6
+0,-5000.0,59.6
+0,-4500.0,49.6
+0,-4000.0,49.6
+0,-3500.0,44.6
+0,-3000.0,39.6
+0,-2500.0,34.6
+0,-2000.0,29.6
+0,-1600.0,25.6
+0,-1200.0,21.6
+0,-900.0,18.6
+0,-600.0,15.6
+0,-400.0,13.6
+0,-200.0,11.6
+0,0.0,11.6
+0,200.0,11.6
+0,400.0,13.6
+0,600.0,15.6
+0,900.0,18.6
+0,1200.0,21.6
+0,1600.0,25.6
+0,2000.0,29.6
+0,2500.0,34.6
+0,3000.0,39.6
+0,3500.0,44.6
+0,4000.0,49.6
+0,4500.0,54.6
+0,5000.0,59.6
+0,5500.0,64.6
+600,-5500.0,64.6
+600,-5000.0,59.6
+600,-4500.0,49.6
+600,-4000.0,49.6
+600,-3500.0,44.6
+600,-3000.0,39.6
+600,-2500.0,34.6
+600,-2000.0,29.6
+600,-1600.0,25.6
+600,-1200.0,21.6
+600,-900.0,18.6
+600,-600.0,15.6
+600,-400.0,13.6
+600,-200.0,11.6
+600,0.0,11.6
+600,200.0,11.6
+600,400.0,13.6
+600,600.0,15.6
+600,900.0,18.6
+600,1200.0,21.6
+600,1600.0,25.6
+600,2000.0,29.6
+600,2500.0,34.6
+600,3000.0,39.6
+600,3500.0,44.6
+600,4000.0,49.6
+600,4500.0,54.6
+600,5000.0,59.6
+600,5500.0,64.6
+900,-5500.0,66.4
+900,-5000.0,61.4
+900,-4500.0,51.4
+900,-4000.0,51.4
+900,-3500.0,46.4
+900,-3000.0,41.4
+900,-2500.0,36.4
+900,-2000.0,31.4
+900,-1600.0,27.4
+900,-1200.0,23.4
+900,-900.0,20.4
+900,-600.0,17.4
+900,-400.0,15.4
+900,-200.0,13.4
+900,0.0,13.4
+900,200.0,13.4
+900,400.0,15.4
+900,600.0,17.4
+900,900.0,20.4
+900,1200.0,23.4
+900,1600.0,27.4
+900,2000.0,31.4
+900,2500.0,36.4
+900,3000.0,41.4
+900,3500.0,46.4
+900,4000.0,51.4
+900,4500.0,56.4
+900,5000.0,61.4
+900,5500.0,66.4
+1200,-5500.0,68.2
+1200,-5000.0,63.2
+1200,-4500.0,53.2
+1200,-4000.0,53.2
+1200,-3500.0,48.2
+1200,-3000.0,43.2
+1200,-2500.0,38.2
+1200,-2000.0,33.2
+1200,-1600.0,29.2
+1200,-1200.0,25.2
+1200,-900.0,22.2
+1200,-600.0,19.2
+1200,-400.0,17.2
+1200,-200.0,15.2
+1200,0.0,15.2
+1200,200.0,15.2
+1200,400.0,17.2
+1200,600.0,19.2
+1200,900.0,22.2
+1200,1200.0,25.2
+1200,1600.0,29.2
+1200,2000.0,33.2
+1200,2500.0,38.2
+1200,3000.0,43.2
+1200,3500.0,48.2
+1200,4000.0,53.2
+1200,4500.0,58.2
+1200,5000.0,63.2
+1200,5500.0,68.2
+1600,-5500.0,70.6
+1600,-5000.0,65.6
+1600,-4500.0,55.6
+1600,-4000.0,55.6
+1600,-3500.0,50.6
+1600,-3000.0,45.6
+1600,-2500.0,40.6
+1600,-2000.0,35.6
+1600,-1600.0,31.6
+1600,-1200.0,27.6
+1600,-900.0,24.6
+1600,-600.0,21.6
+1600,-400.0,19.6
+1600,-200.0,17.6
+1600,0.0,17.6
+1600,200.0,17.6
+1600,400.0,19.6
+1600,600.0,21.6
+1600,900.0,24.6
+1600,1200.0,27.6
+1600,1600.0,31.6
+1600,2000.0,35.6
+1600,2500.0,40.6
+1600,3000.0,45.6
+1600,3500.0,50.6
+1600,4000.0,55.6
+1600,4500.0,60.6
+1600,5000.0,65.6
+1600,5500.0,70.6
+2000,-5500.0,73.0
+2000,-5000.0,68.0
+2000,-4500.0,58.0
+2000,-4000.0,58.0
+2000,-3500.0,53.0
+2000,-3000.0,48.0
+2000,-2500.0,43.0
+2000,-2000.0,38.0
+2000,-1600.0,34.0
+2000,-1200.0,30.0
+2000,-900.0,27.0
+2000,-600.0,24.0
+2000,-400.0,22.0
+2000,-200.0,20.0
+2000,0.0,20.0
+2000,200.0,20.0
+2000,400.0,22.0
+2000,600.0,24.0
+2000,900.0,27.0
+2000,1200.0,30.0
+2000,1600.0,34.0
+2000,2000.0,38.0
+2000,2500.0,43.0
+2000,3000.0,48.0
+2000,3500.0,53.0
+2000,4000.0,58.0
+2000,4500.0,63.0
+2000,5000.0,68.0
+2000,5500.0,73.0
+2500,-5500.0,76.0
+2500,-5000.0,71.0
+2500,-4500.0,61.0
+2500,-4000.0,61.0
+2500,-3500.0,56.0
+2500,-3000.0,51.0
+2500,-2500.0,46.0
+2500,-2000.0,41.0
+2500,-1600.0,37.0
+2500,-1200.0,33.0
+2500,-900.0,30.0
+2500,-600.0,27.0
+2500,-400.0,25.0
+2500,-200.0,23.0
+2500,0.0,23.0
+2500,200.0,23.0
+2500,400.0,25.0
+2500,600.0,27.0
+2500,900.0,30.0
+2500,1200.0,33.0
+2500,1600.0,37.0
+2500,2000.0,41.0
+2500,2500.0,46.0
+2500,3000.0,51.0
+2500,3500.0,56.0
+2500,4000.0,61.0
+2500,4500.0,66.0
+2500,5000.0,71.0
+2500,5500.0,76.0
+3000,-5500.0,79.0
+3000,-5000.0,74.0
+3000,-4500.0,64.0
+3000,-4000.0,64.0
+3000,-3500.0,59.0
+3000,-3000.0,54.0
+3000,-2500.0,49.0
+3000,-2000.0,44.0
+3000,-1600.0,40.0
+3000,-1200.0,36.0
+3000,-900.0,33.0
+3000,-600.0,30.0
+3000,-400.0,28.0
+3000,-200.0,26.0
+3000,0.0,26.0
+3000,200.0,26.0
+3000,400.0,28.0
+3000,600.0,30.0
+3000,900.0,33.0
+3000,1200.0,36.0
+3000,1600.0,40.0
+3000,2000.0,44.0
+3000,2500.0,49.0
+3000,3000.0,54.0
+3000,3500.0,59.0
+3000,4000.0,64.0
+3000,4500.0,69.0
+3000,5000.0,74.0
+3000,5500.0,79.0
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_6.vtlm b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_6.vtlm
new file mode 100644
index 0000000000000000000000000000000000000000..b4274373230f50e6df7eb9702010c7a868dc967e
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/Gear_6.vtlm
@@ -0,0 +1,233 @@
+Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm]
+0,-5500.0,229.6
+0,-5000.0,209.6
+0,-4500.0,169.6
+0,-4000.0,169.6
+0,-3500.0,149.6
+0,-3000.0,129.6
+0,-2500.0,109.6
+0,-2000.0,89.6
+0,-1600.0,73.6
+0,-1200.0,57.6
+0,-900.0,45.6
+0,-600.0,33.6
+0,-400.0,25.6
+0,-200.0,17.6
+0,0.0,17.6
+0,200.0,17.6
+0,400.0,25.6
+0,600.0,33.6
+0,900.0,45.6
+0,1200.0,57.6
+0,1600.0,73.6
+0,2000.0,89.6
+0,2500.0,109.6
+0,3000.0,129.6
+0,3500.0,149.6
+0,4000.0,169.6
+0,4500.0,189.6
+0,5000.0,209.6
+0,5500.0,229.6
+600,-5500.0,229.6
+600,-5000.0,209.6
+600,-4500.0,169.6
+600,-4000.0,169.6
+600,-3500.0,149.6
+600,-3000.0,129.6
+600,-2500.0,109.6
+600,-2000.0,89.6
+600,-1600.0,73.6
+600,-1200.0,57.6
+600,-900.0,45.6
+600,-600.0,33.6
+600,-400.0,25.6
+600,-200.0,17.6
+600,0.0,17.6
+600,200.0,17.6
+600,400.0,25.6
+600,600.0,33.6
+600,900.0,45.6
+600,1200.0,57.6
+600,1600.0,73.6
+600,2000.0,89.6
+600,2500.0,109.6
+600,3000.0,129.6
+600,3500.0,149.6
+600,4000.0,169.6
+600,4500.0,189.6
+600,5000.0,209.6
+600,5500.0,229.6
+900,-5500.0,231.4
+900,-5000.0,211.4
+900,-4500.0,171.4
+900,-4000.0,171.4
+900,-3500.0,151.4
+900,-3000.0,131.4
+900,-2500.0,111.4
+900,-2000.0,91.4
+900,-1600.0,75.4
+900,-1200.0,59.4
+900,-900.0,47.4
+900,-600.0,35.4
+900,-400.0,27.4
+900,-200.0,19.4
+900,0.0,19.4
+900,200.0,19.4
+900,400.0,27.4
+900,600.0,35.4
+900,900.0,47.4
+900,1200.0,59.4
+900,1600.0,75.4
+900,2000.0,91.4
+900,2500.0,111.4
+900,3000.0,131.4
+900,3500.0,151.4
+900,4000.0,171.4
+900,4500.0,191.4
+900,5000.0,211.4
+900,5500.0,231.4
+1200,-5500.0,233.2
+1200,-5000.0,213.2
+1200,-4500.0,173.2
+1200,-4000.0,173.2
+1200,-3500.0,153.2
+1200,-3000.0,133.2
+1200,-2500.0,113.2
+1200,-2000.0,93.2
+1200,-1600.0,77.2
+1200,-1200.0,61.2
+1200,-900.0,49.2
+1200,-600.0,37.2
+1200,-400.0,29.2
+1200,-200.0,21.2
+1200,0.0,21.2
+1200,200.0,21.2
+1200,400.0,29.2
+1200,600.0,37.2
+1200,900.0,49.2
+1200,1200.0,61.2
+1200,1600.0,77.2
+1200,2000.0,93.2
+1200,2500.0,113.2
+1200,3000.0,133.2
+1200,3500.0,153.2
+1200,4000.0,173.2
+1200,4500.0,193.2
+1200,5000.0,213.2
+1200,5500.0,233.2
+1600,-5500.0,235.6
+1600,-5000.0,215.6
+1600,-4500.0,175.6
+1600,-4000.0,175.6
+1600,-3500.0,155.6
+1600,-3000.0,135.6
+1600,-2500.0,115.6
+1600,-2000.0,95.6
+1600,-1600.0,79.6
+1600,-1200.0,63.6
+1600,-900.0,51.6
+1600,-600.0,39.6
+1600,-400.0,31.6
+1600,-200.0,23.6
+1600,0.0,23.6
+1600,200.0,23.6
+1600,400.0,31.6
+1600,600.0,39.6
+1600,900.0,51.6
+1600,1200.0,63.6
+1600,1600.0,79.6
+1600,2000.0,95.6
+1600,2500.0,115.6
+1600,3000.0,135.6
+1600,3500.0,155.6
+1600,4000.0,175.6
+1600,4500.0,195.6
+1600,5000.0,215.6
+1600,5500.0,235.6
+2000,-5500.0,238.0
+2000,-5000.0,218.0
+2000,-4500.0,178.0
+2000,-4000.0,178.0
+2000,-3500.0,158.0
+2000,-3000.0,138.0
+2000,-2500.0,118.0
+2000,-2000.0,98.0
+2000,-1600.0,82.0
+2000,-1200.0,66.0
+2000,-900.0,54.0
+2000,-600.0,42.0
+2000,-400.0,34.0
+2000,-200.0,26.0
+2000,0.0,26.0
+2000,200.0,26.0
+2000,400.0,34.0
+2000,600.0,42.0
+2000,900.0,54.0
+2000,1200.0,66.0
+2000,1600.0,82.0
+2000,2000.0,98.0
+2000,2500.0,118.0
+2000,3000.0,138.0
+2000,3500.0,158.0
+2000,4000.0,178.0
+2000,4500.0,198.0
+2000,5000.0,218.0
+2000,5500.0,238.0
+2500,-5500.0,241.0
+2500,-5000.0,221.0
+2500,-4500.0,181.0
+2500,-4000.0,181.0
+2500,-3500.0,161.0
+2500,-3000.0,141.0
+2500,-2500.0,121.0
+2500,-2000.0,101.0
+2500,-1600.0,85.0
+2500,-1200.0,69.0
+2500,-900.0,57.0
+2500,-600.0,45.0
+2500,-400.0,37.0
+2500,-200.0,29.0
+2500,0.0,29.0
+2500,200.0,29.0
+2500,400.0,37.0
+2500,600.0,45.0
+2500,900.0,57.0
+2500,1200.0,69.0
+2500,1600.0,85.0
+2500,2000.0,101.0
+2500,2500.0,121.0
+2500,3000.0,141.0
+2500,3500.0,161.0
+2500,4000.0,181.0
+2500,4500.0,201.0
+2500,5000.0,221.0
+2500,5500.0,241.0
+3000,-5500.0,244.0
+3000,-5000.0,224.0
+3000,-4500.0,184.0
+3000,-4000.0,184.0
+3000,-3500.0,164.0
+3000,-3000.0,144.0
+3000,-2500.0,124.0
+3000,-2000.0,104.0
+3000,-1600.0,88.0
+3000,-1200.0,72.0
+3000,-900.0,60.0
+3000,-600.0,48.0
+3000,-400.0,40.0
+3000,-200.0,32.0
+3000,0.0,32.0
+3000,200.0,32.0
+3000,400.0,40.0
+3000,600.0,48.0
+3000,900.0,60.0
+3000,1200.0,72.0
+3000,1600.0,88.0
+3000,2000.0,104.0
+3000,2500.0,124.0
+3000,3000.0,144.0
+3000,3500.0,164.0
+3000,4000.0,184.0
+3000,4500.0,204.0
+3000,5000.0,224.0
+3000,5500.0,244.0
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/MT_6.vgbx b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/MT_6.vgbx
new file mode 100644
index 0000000000000000000000000000000000000000..aba03a85a1e5f2429860666eb3e253d7b6d811d4
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/Class2_RigidTruck_4x2_engineSpeedlimit/MT_6.vgbx
@@ -0,0 +1,56 @@
+{
+  "Header": {
+    "CreatedBy": " ()",
+    "Date": "2016-10-13T10:07:39.5626564Z",
+    "AppVersion": "3",
+    "FileVersion": 6
+  },
+  "Body": {
+    "SavedInDeclMode": true,
+    "ModelName": "Generic 6speed MT GBX",
+    "Inertia": 0.0,
+    "TracInt": 2.0,
+    "Gears": [
+      {
+        "Ratio": 4.18,
+        "LossMap": "Axle_4x2.vtlm"
+      },
+      {
+        "Ratio": 6.7,
+        "LossMap": "Gear_1.vtlm",
+        "ShiftPolygon": "",
+        "MaxTorque": ""
+      },
+      {
+        "Ratio": 3.8,
+        "LossMap": "Gear_2.vtlm",
+        "ShiftPolygon": "",
+        "MaxTorque": ""
+      },
+      {
+        "Ratio": 2.29,
+        "LossMap": "Gear_3.vtlm",
+        "ShiftPolygon": "",
+        "MaxTorque": ""
+      },
+      {
+        "Ratio": 1.48,
+        "LossMap": "Gear_4.vtlm",
+        "ShiftPolygon": "",
+        "MaxTorque": ""
+      },
+    ],
+    "TqReserve": 20.0,
+    "ShiftTime": 2.0,
+    "StartTqReserve": 20.0,
+    "StartSpeed": 2.0,
+    "StartAcc": 0.6,
+    "GearboxType": "MT",
+    "TorqueConverter": {
+      "Enabled": false
+    },
+    "DownshiftAferUpshiftDelay": 10.0,
+    "UpshiftAfterDownshiftDelay": 10.0,
+    "UpshiftMinAcceleration": 0.1
+  }
+}
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/VectoCoreTest.csproj b/VectoCore/VectoCoreTest/VectoCoreTest.csproj
index 84b3a84f522a2f0f7862fb4b4153293ea4a9f8bb..48e16a4e983d0068f20c0c19e84757fb3e3ac983 100644
--- a/VectoCore/VectoCoreTest/VectoCoreTest.csproj
+++ b/VectoCore/VectoCoreTest/VectoCoreTest.csproj
@@ -705,6 +705,48 @@
     <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2\MT_6.vgbx">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\175kW.vfld">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\175kW.vmap">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Axle_4x2.vtlm">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Axle_4x2_orig.vtlm">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Class2_RigidTruck.vveh">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Class2_RigidTruck_DECL.vecto">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Engine_175kW_6.8l.veng">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Gear_1.vtlm">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Gear_2.vtlm">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Gear_3.vtlm">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Gear_4.vtlm">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Gear_5.vtlm">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\Gear_6.vtlm">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+    <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_engineSpeedlimit\MT_6.vgbx">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
     <None Include="TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2_GbxSpeedLimits\175kW.vfld">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>