diff --git a/VectoCore/Models/Declaration/DeclarationData.cs b/VectoCore/Models/Declaration/DeclarationData.cs
index bce649997019dbf707284bf5ce185ae68a427c0b..1cd444dae52314aaec9b07656dc060bf5688b755 100644
--- a/VectoCore/Models/Declaration/DeclarationData.cs
+++ b/VectoCore/Models/Declaration/DeclarationData.cs
@@ -137,7 +137,7 @@ namespace TUGraz.VectoCore.Models.Declaration
 
 			public static class OverSpeedEcoRoll
 			{
-				public static readonly IList<DriverData.DriverMode> AllowedModes = new List<DriverData.DriverMode>() {
+				public static readonly IList<DriverData.DriverMode> AllowedModes = new List<DriverData.DriverMode> {
 					DriverData.DriverMode.EcoRoll,
 					DriverData.DriverMode.Overspeed
 				};
@@ -187,9 +187,6 @@ namespace TUGraz.VectoCore.Models.Declaration
 			public const double MinTimeBetweenGearshifts = 2;
 
 
-
-
-
 			internal static ShiftPolygon ComputeShiftPolygon(EngineFullLoadCurve fullLoadCurve, PerSecond engineIdleSpeed)
 			{
 				var maxTorque = fullLoadCurve.MaxLoadTorque;
@@ -197,27 +194,27 @@ namespace TUGraz.VectoCore.Models.Declaration
 				var entriesDown = new List<ShiftPolygon.ShiftPolygonEntry>();
 				var entriesUp = new List<ShiftPolygon.ShiftPolygonEntry>();
 
-				entriesDown.Add(new ShiftPolygon.ShiftPolygonEntry() {
+				entriesDown.Add(new ShiftPolygon.ShiftPolygonEntry {
 					AngularSpeed = engineIdleSpeed,
 					Torque = 0.SI<NewtonMeter>()
 				});
 
 				var tq1 = maxTorque * engineIdleSpeed / (fullLoadCurve.PreferredSpeed + fullLoadCurve.LoSpeed - engineIdleSpeed);
-				entriesDown.Add(new ShiftPolygon.ShiftPolygonEntry() { AngularSpeed = engineIdleSpeed, Torque = tq1 });
+				entriesDown.Add(new ShiftPolygon.ShiftPolygonEntry { AngularSpeed = engineIdleSpeed, Torque = tq1 });
 
 				var speed1 = (fullLoadCurve.PreferredSpeed + fullLoadCurve.LoSpeed) / 2;
-				entriesDown.Add(new ShiftPolygon.ShiftPolygonEntry() { AngularSpeed = speed1, Torque = maxTorque });
+				entriesDown.Add(new ShiftPolygon.ShiftPolygonEntry { AngularSpeed = speed1, Torque = maxTorque });
 
 
-				entriesUp.Add(new ShiftPolygon.ShiftPolygonEntry() {
+				entriesUp.Add(new ShiftPolygon.ShiftPolygonEntry {
 					AngularSpeed = fullLoadCurve.PreferredSpeed,
 					Torque = 0.SI<NewtonMeter>()
 				});
 
 				tq1 = maxTorque * (fullLoadCurve.PreferredSpeed - engineIdleSpeed) / (fullLoadCurve.N95hSpeed - engineIdleSpeed);
-				entriesUp.Add(new ShiftPolygon.ShiftPolygonEntry() { AngularSpeed = fullLoadCurve.PreferredSpeed, Torque = tq1 });
+				entriesUp.Add(new ShiftPolygon.ShiftPolygonEntry { AngularSpeed = fullLoadCurve.PreferredSpeed, Torque = tq1 });
 
-				entriesUp.Add(new ShiftPolygon.ShiftPolygonEntry() { AngularSpeed = fullLoadCurve.N95hSpeed, Torque = maxTorque });
+				entriesUp.Add(new ShiftPolygon.ShiftPolygonEntry { AngularSpeed = fullLoadCurve.N95hSpeed, Torque = maxTorque });
 
 				return new ShiftPolygon(entriesDown, entriesUp);
 			}
diff --git a/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs b/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
index d9b8a81a59cd1dd079ca58cc561b77ad8b1deaaa..0588b50de3bee0d00692b0eaff162ad7b0c74a2d 100644
--- a/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
+++ b/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
@@ -4,7 +4,6 @@ using TUGraz.VectoCore.Exceptions;
 using TUGraz.VectoCore.FileIO.Reader.Impl;
 using TUGraz.VectoCore.Models.Connector.Ports.Impl;
 using TUGraz.VectoCore.Models.Simulation.Impl;
-using TUGraz.VectoCore.Models.SimulationComponent;
 using TUGraz.VectoCore.Models.SimulationComponent.Impl;
 using TUGraz.VectoCore.Tests.Utils;
 using TUGraz.VectoCore.Utils;
@@ -69,25 +68,21 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			var port = new MockTnOutPort();
 			gearbox.InPort().Connect(port);
 
-			var ratios = new[] { 0.0, 6.38, 4.63, 3.44, 2.59, 1.86, 1.35, 1, 0.76 };
-			// the first element 0.0 is just a placeholder for axlegear, not used in this test
+			var ratio = 6.38;
 
 			//todo: serach for a overload point in gearbox fullloadcurve
 			//todo: serach for a overload point in engine fullloadcurve
 			var expected = new[] {
-				new { gear = 1, t = 2400, n = 1200, loss = 10.108 },
-				new { gear = 1, t = 2400, n = 1200, loss = 10.108 },
+				new { t = 2250, n = 1200, loss = 55.0 }, //todo: calc exact loss
+				new { t = 2129, n = 1600, loss = 55.0 }, //todo: calc exact loss
 			};
 
 			foreach (var exp in expected) {
-				var torque = (exp.t.SI<NewtonMeter>() - exp.loss.SI<NewtonMeter>()) * ratios[exp.gear];
-				var angularVelocity = exp.n.RPMtoRad() / ratios[exp.gear];
+				var torque = (exp.t.SI<NewtonMeter>() - exp.loss.SI<NewtonMeter>()) * ratio;
+				var angularVelocity = exp.n.RPMtoRad() / ratio;
 
-				gearbox.Gear = (uint)exp.gear;
 				var response = gearbox.OutPort().Request(0.SI<Second>(), 1.SI<Second>(), torque, angularVelocity);
 				Assert.IsInstanceOfType(response, typeof(ResponseFailOverload));
-
-				//var overload = response as ResponseFailOverload;
 			}
 
 			Assert.Inconclusive("Test if the intersection of two fullloadcurves is correct");
diff --git a/VectoCoreTest/VectoCoreTest.csproj b/VectoCoreTest/VectoCoreTest.csproj
index ce9c7eeb04fe1d7ecadf16b0c64bf687cae4ba6c..88c58ab7a313a36a316dafe76b6e913631f0fc19 100644
--- a/VectoCoreTest/VectoCoreTest.csproj
+++ b/VectoCoreTest/VectoCoreTest.csproj
@@ -145,6 +145,9 @@
     <None Include="TestData\Components\12t Delivery Truck.vveh">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
+    <None Include="TestData\Components\24t Coach Engine.vfld">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
     <None Include="TestData\Components\24t Coach LessThanTwoGears.vgbx">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>