diff --git a/VectoCore/VectoCore/Models/Declaration/Auxiliaries/SteeringPump.cs b/VectoCore/VectoCore/Models/Declaration/Auxiliaries/SteeringPump.cs
index 905f1331c1dd7aa02bd78ace3131d92663fce7d2..5324916f007d9e1d7b5758e7bc22bfe2483c61f5 100644
--- a/VectoCore/VectoCore/Models/Declaration/Auxiliaries/SteeringPump.cs
+++ b/VectoCore/VectoCore/Models/Declaration/Auxiliaries/SteeringPump.cs
@@ -60,8 +60,8 @@ namespace TUGraz.VectoCore.Models.Declaration.Auxiliaries
 			var baseLine = _baseLookup.Lookup(mission, hdvClass);
 			var powerMech = new SteeringPumpValues<Watt>(0.SI<Watt>(), 0.SI<Watt>(), 0.SI<Watt>());
 			var powerEl = new SteeringPumpValues<Watt>(0.SI<Watt>(), 0.SI<Watt>(), 0.SI<Watt>());
-			var factorsMech = new SteeringPumpValues<double>(0, 0, 0);
-			var factorsEl = new SteeringPumpValues<double>(0, 0, 0);
+			var factors = new SteeringPumpValues<double>(0, 0, 0);
+			//var factorsEl = new SteeringPumpValues<double>(0, 0, 0);
 			var axleCount = 0;
 			var numberMech = 0;
 			var numberEl = 0;
@@ -80,40 +80,34 @@ namespace TUGraz.VectoCore.Models.Declaration.Auxiliaries
 				var axles = _axleLookup.Lookup(mission, axleCount);
 				var f = _techLookup.Lookup(technology, mission);
 
-				
+				factors.UnloadedFriction += f.UnloadedFriction;
+				factors.Banking += f.Banking;
+				factors.Steering += f.Steering;
 				if (_techLookup.IsFullyElectric(technology)) {
 					numberEl++;
 
 					powerEl.UnloadedFriction += baseLine.UnloadedFriction * axles.UnloadedFriction;
 					powerEl.Banking += baseLine.Banking * axles.Banking;
 					powerEl.Steering += baseLine.Steering * axles.Steering;
-
-					factorsEl.UnloadedFriction += f.UnloadedFriction;
-					factorsEl.Banking += f.Banking;
-					factorsEl.Steering += f.Steering;
 				} else {
 					numberMech++;
 
 					powerMech.UnloadedFriction += baseLine.UnloadedFriction * axles.UnloadedFriction;
 					powerMech.Banking += baseLine.Banking * axles.Banking;
 					powerMech.Steering += baseLine.Steering * axles.Steering;
-
-					factorsMech.UnloadedFriction += f.UnloadedFriction;
-					factorsMech.Banking += f.Banking;
-					factorsMech.Steering += f.Steering;
 				}
 			}
 
 			if (numberMech > 0) {
-				powerMech.UnloadedFriction *= factorsMech.UnloadedFriction / numberMech;
-				powerMech.Banking *= factorsMech.Banking / numberMech;
-				powerMech.Steering *= factorsMech.Steering / numberMech;
+				powerMech.UnloadedFriction *= factors.UnloadedFriction / axleCount;
+				powerMech.Banking *= factors.Banking / axleCount;
+				powerMech.Steering *= factors.Steering / axleCount;
 			}
 
 			if (numberEl > 0) {
-				powerEl.UnloadedFriction *= factorsEl.UnloadedFriction / numberEl;
-				powerEl.Banking *= factorsEl.Banking / numberEl;
-				powerEl.Steering *= factorsEl.Steering / numberEl;
+				powerEl.UnloadedFriction *= factors.UnloadedFriction / axleCount;
+				powerEl.Banking *= factors.Banking / axleCount;
+				powerEl.Steering *= factors.Steering / axleCount;
 			}
 
 			return (powerMech.UnloadedFriction + powerMech.Banking + powerMech.Steering, 
diff --git a/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs
index ef9de6a8ab16130f0fdfaaff6993ccdbdfd2f436..4b13675932cf41fef206649d4c8746c04c474c0c 100644
--- a/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs
@@ -523,60 +523,76 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         }
 
         [
-            TestCase(MissionType.LongHaul, VehicleClass.Class2, 370, "Fixed displacement", null, null, null),
-            TestCase(MissionType.LongHaul, VehicleClass.Class4, 610, "Fixed displacement", null, null, null),
-            TestCase(MissionType.LongHaul, VehicleClass.Class5, 720, "Fixed displacement", null, null, null),
-            TestCase(MissionType.LongHaul, VehicleClass.Class9, 720, "Fixed displacement", null, null, null),
-            TestCase(MissionType.LongHaul, VehicleClass.Class10, 570, "Fixed displacement", null, null, null),
-            TestCase(MissionType.LongHaul, VehicleClass.Class11, 720, "Fixed displacement", null, null, null),
-            TestCase(MissionType.LongHaul, VehicleClass.Class12, 570, "Fixed displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class1s, 280, "Fixed displacement", null, null, null),
-			TestCase(MissionType.RegionalDelivery, VehicleClass.Class1, 280, "Fixed displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 340, "Fixed displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class3, 370, "Fixed displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class4, 570, "Fixed displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class5, 670, "Fixed displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class9, 590, "Fixed displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class10, 570, "Fixed displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class11, 590, "Fixed displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class12, 570, "Fixed displacement", null, null, null),
-			TestCase(MissionType.UrbanDelivery, VehicleClass.Class1s, 270, "Fixed displacement", null, null, null),
-            TestCase(MissionType.UrbanDelivery, VehicleClass.Class1, 270, "Fixed displacement", null, null, null),
-            TestCase(MissionType.UrbanDelivery, VehicleClass.Class2, 310, "Fixed displacement", null, null, null),
-            TestCase(MissionType.UrbanDelivery, VehicleClass.Class3, 350, "Fixed displacement", null, null, null),
-            TestCase(MissionType.UrbanDelivery, VehicleClass.Class5, 620, "Fixed displacement", null, null, null),
-            TestCase(MissionType.MunicipalUtility, VehicleClass.Class4, 510, "Fixed displacement", null, null, null),
-            TestCase(MissionType.MunicipalUtility, VehicleClass.Class9, 510, "Fixed displacement", null, null, null),
-            TestCase(MissionType.MunicipalUtility, VehicleClass.Class11, 510, "Fixed displacement", null, null, null),
-            TestCase(MissionType.Construction, VehicleClass.Class11, 770, "Fixed displacement", null, null, null),
-            TestCase(MissionType.Construction, VehicleClass.Class12, 770, "Fixed displacement", null, null, null),
-            TestCase(MissionType.Construction, VehicleClass.Class16, 770, "Fixed displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 325.5, "Fixed displacement with elec. control", null,
+            TestCase(MissionType.LongHaul, VehicleClass.Class2, 370, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.LongHaul, VehicleClass.Class4, 610, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.LongHaul, VehicleClass.Class5, 720, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.LongHaul, VehicleClass.Class9, 720, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.LongHaul, VehicleClass.Class10, 570, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.LongHaul, VehicleClass.Class11, 720, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.LongHaul, VehicleClass.Class12, 570, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class1s, 280, 0, "Fixed displacement", null, null, null),
+			TestCase(MissionType.RegionalDelivery, VehicleClass.Class1, 280, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 340, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class3, 370, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class4, 570, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class5, 670, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class9, 590, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class10, 570, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class11, 590, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class12, 570, 0, "Fixed displacement", null, null, null),
+			TestCase(MissionType.UrbanDelivery, VehicleClass.Class1s, 270, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.UrbanDelivery, VehicleClass.Class1, 270, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.UrbanDelivery, VehicleClass.Class2, 310, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.UrbanDelivery, VehicleClass.Class3, 350, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.UrbanDelivery, VehicleClass.Class5, 620, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.MunicipalUtility, VehicleClass.Class4, 510, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.MunicipalUtility, VehicleClass.Class9, 510, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.MunicipalUtility, VehicleClass.Class11, 510, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.Construction, VehicleClass.Class11, 770, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.Construction, VehicleClass.Class12, 770, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.Construction, VehicleClass.Class16, 770, 0, "Fixed displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 325.5, 0, "Fixed displacement with elec. control", null,
                 null,
                 null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 289, "Dual displacement", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 255, "Variable displacement mech. controlled", null,
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 289, 0, "Dual displacement", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 255, 0, "Variable displacement mech. controlled", null,
                 null,
                 null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 204, "Variable displacement elec. controlled", null,
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 204, 0, "Variable displacement elec. controlled", null,
                 null,
                 null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 92.87, "Electric", null, null, null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 665, "Fixed displacement", "Fixed displacement", null,
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 92.87, 0, "Electric", null, null, null),
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 665, 0, "Fixed displacement", "Fixed displacement", null,
                 null),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 1295, "Fixed displacement", "Fixed displacement",
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 1295, 0, "Fixed displacement", "Fixed displacement",
                 "Fixed displacement", "Fixed displacement"),
-            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 1021.5, "Dual displacement",
-                "Variable displacement mech. controlled", "Fixed displacement with elec. control",
+            TestCase(MissionType.RegionalDelivery, VehicleClass.Class2, 1021.5, 0, 
+				"Dual displacement",
+                "Variable displacement mech. controlled", 
+				"Fixed displacement with elec. control",
                 "Variable displacement elec. controlled"),
+
+            //Electric and Mechanic
+			TestCase(MissionType.UrbanDelivery, VehicleClass.Class5, 852.048, 768.72,
+                "Fixed displacement",
+				"Dual displacement",
+                "Electric driven pump",
+                "Full electric steering gear"),
+			TestCase(MissionType.UrbanDelivery, VehicleClass.Class5, 0, 262.386
+				,
+                "Full electric steering gear",
+				"Full electric steering gear",
+				"Full electric steering gear",
+				"Full electric steering gear"),
         ]
-        public void Aux_SteeringPumpLookupValues(MissionType mission, VehicleClass hdvClass, double expected, string axle1,
+        public void Aux_SteeringPumpLookupValues(MissionType mission, VehicleClass hdvClass, double expectedMech, double expectedElectric, string axle1,
             string axle2, string axle3, string axle4)
-        {
-            AssertHelper.AreRelativeEqual(expected,
-                DeclarationData.SteeringPump.Lookup(mission, hdvClass,
-                    new[] { axle1, axle2, axle3, axle4 }.TakeWhile(a => a != null).ToArray()).mechanicalPumps);
-        }
+		{
+			var result = DeclarationData.SteeringPump.Lookup(mission, hdvClass,
+				new[] { axle1, axle2, axle3, axle4 }.TakeWhile(a => a != null).ToArray());
+            AssertHelper.AreRelativeEqual(expectedMech, result.mechanicalPumps);
+            AssertHelper.AreRelativeEqual(expectedElectric, result.electricPumps);
+		}
 
         [TestCase]
         public void Aux_SteeringpumpMultipleLookups()