diff --git a/VECTO/GUI/F_MAINForm.vb b/VECTO/GUI/F_MAINForm.vb
index 6f734809040ac730dc015f2a2d5a4b32504679fe..9ed92bfbaf72c05317d97aa5f97380155aa83831 100644
--- a/VECTO/GUI/F_MAINForm.vb
+++ b/VECTO/GUI/F_MAINForm.vb
@@ -1707,7 +1707,6 @@ lbFound:
 	End Sub
 
 	Private Sub VectoWorkerV3_OnProgressChanged(sender As Object, e As ProgressChangedEventArgs)
-		ToolStripProgBarOverall.Value = e.ProgressPercentage
 		Select Case e.UserState.Target
 			Case "ListBox"
 				If e.UserState.GetType().GetProperty("Link") Is Nothing Then
@@ -1717,11 +1716,15 @@ lbFound:
 				End If
 			Case "ListBoxWarning"
 				MSGtoForm(tMsgID.Warn, e.UserState.Message, "", "")
+				Return
 			Case "ListBoxError"
 				MSGtoForm(tMsgID.Err, e.UserState.Message, "", "")
+				Return
 			Case "Status"
 				Status(e.UserState.Message)
 		End Select
+
+		ToolStripProgBarOverall.Value = e.ProgressPercentage
 	End Sub
 
 	Private Sub VectoWorkerV3_OnRunWorkerCompleted(sender As Object, e As RunWorkerCompletedEventArgs)
diff --git a/VectoCore/Models/Simulation/Data/VectoRunData.cs b/VectoCore/Models/Simulation/Data/VectoRunData.cs
index 864912239b1ce49325ae326fce22c5b656c78ab1..501a39e1b258c7b92dbd163fc402db655384820b 100644
--- a/VectoCore/Models/Simulation/Data/VectoRunData.cs
+++ b/VectoCore/Models/Simulation/Data/VectoRunData.cs
@@ -62,7 +62,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 		[Required, ValidateObject]
 		public IEnumerable<AuxData> Aux { get; internal set; }
 
-		[Required, ValidateObject]
+		[ValidateObject]
 		public string AccelerationLimitingFile { get; internal set; }
 
 		[Required, ValidateObject]
@@ -96,13 +96,13 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 
 			public string Technology;
 
-			[Required] public string[] TechList;
+			public string[] TechList;
 
 			[Required, SIRange(0, 100 * Constants.Kilo)] public Watt PowerDemand;
 
 			[Required] public AuxiliaryDemandType DemandType;
 
-			[Required, ValidateObject] public AuxiliaryData Data;
+			[ValidateObject] public AuxiliaryData Data;
 		}
 
 		public class StartStopData
@@ -113,7 +113,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 			[Required, SIRange(0, 100)] public Second Delay;
 		}
 
-		public ValidationResult ValidateRunData(VectoRunData runData, ValidationContext validationContext)
+		public static ValidationResult ValidateRunData(VectoRunData runData, ValidationContext validationContext)
 		{
 			var gearboxData = runData.GearboxData;
 			var engineData = runData.EngineData;
diff --git a/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs b/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
index c1e3f9038b9c6af53424c6692345227a9cba21d2..48bfc16afc31a6076008a7a0e67ba0c9f993bff2 100644
--- a/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
+++ b/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
@@ -148,8 +148,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
 
 				var validationErrors = run.Validate();
 				if (validationErrors.Any()) {
-					throw new VectoException("Validation of Run-Data Failed: " +
-											"\n".Join(validationErrors.Select(r => r.ErrorMessage)));
+					throw new VectoException("Validation of Run-Data Failed: " + "\n".Join(validationErrors.Select(r => r.ErrorMessage)));
 				}
 
 
diff --git a/VectoCore/Models/SimulationComponent/Data/AuxiliaryData.cs b/VectoCore/Models/SimulationComponent/Data/AuxiliaryData.cs
index b03d805036273a17b96519c588492b0f25f9f071..bbcf8dd0b7441e1681726ee63f4e36eb6ce9fb1b 100644
--- a/VectoCore/Models/SimulationComponent/Data/AuxiliaryData.cs
+++ b/VectoCore/Models/SimulationComponent/Data/AuxiliaryData.cs
@@ -41,6 +41,7 @@ using TUGraz.VectoCore.Utils;
 
 namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 {
+	[CustomValidation(typeof(AuxiliaryData), "ValidateAuxMap")]
 	public class AuxiliaryData
 	{
 		[Required, Range(double.Epsilon, 1)]
@@ -52,8 +53,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 		[Required, Range(double.Epsilon, 1)]
 		public double EfficiencyToEngine { get; set; }
 
-		[Required, CustomValidation(typeof(AuxiliaryData), "ValidateAuxMap")] private readonly DelauneyMap _map =
-			new DelauneyMap();
+		[Required] private readonly DelauneyMap _map = new DelauneyMap();
 
 		public Watt GetPowerDemand(PerSecond nAuxiliary, Watt powerAuxOut)
 		{
@@ -160,7 +160,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 		/// <param name="data">The data.</param>
 		/// <param name="context">The validation context.</param>
 		/// <returns></returns>
-		protected static ValidationResult ValidateAuxMap(AuxiliaryData data, ValidationContext context)
+		public static ValidationResult ValidateAuxMap(AuxiliaryData data, ValidationContext context)
 		{
 			var xValidationRules = new[] { new RangeAttribute(0, double.MaxValue) };
 			var yValidationRules = new[] { new RangeAttribute(0, 100.SI().Kilo.Watt.Value()) };
diff --git a/VectoCore/Models/SimulationComponent/Data/RetarderData.cs b/VectoCore/Models/SimulationComponent/Data/RetarderData.cs
index 4617f41f6518e66f4732cebaf78e8d3c4fc3cb74..691082f858b3535d39bba10bc2a5936d648cd5d8 100644
--- a/VectoCore/Models/SimulationComponent/Data/RetarderData.cs
+++ b/VectoCore/Models/SimulationComponent/Data/RetarderData.cs
@@ -29,7 +29,6 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
-using System.ComponentModel.DataAnnotations;
 using TUGraz.VectoCore.Utils;
 
 namespace TUGraz.VectoCore.Models.SimulationComponent.Data
@@ -49,7 +48,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data
 
 		public RetarderType Type { get; internal set; }
 
-		[Required, SIRange(double.Epsilon, double.MaxValue)]
+		[SIRange(0, double.MaxValue)]
 		public double Ratio { get; internal set; }
 	}
 }
\ No newline at end of file
diff --git a/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs b/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs
index 2ffbc723100477ef2c733cc241c63049d0a00d81..547e30c56a50d33511c814ab0ff89b9d86e8fd00 100644
--- a/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs
+++ b/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs
@@ -66,7 +66,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 
 			var runData = new VectoRunData { GearboxData = gearboxData, EngineData = engineData, AxleGearData = axleGearData };
 
-			var result = runData.ValidateRunData(runData, new ValidationContext(runData));
+			var result = VectoRunData.ValidateRunData(runData, new ValidationContext(runData));
 			Assert.IsTrue(ValidationResult.Success == result);
 			Assert.IsFalse(runData.IsValid());
 		}
@@ -95,7 +95,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFile);
 			var axleGearData = CreateAxleGearData(AxleGearLossMap);
 			var runData = new VectoRunData { GearboxData = gearboxData, EngineData = engineData, AxleGearData = axleGearData };
-			var result = runData.ValidateRunData(runData, new ValidationContext(runData));
+			var result = VectoRunData.ValidateRunData(runData, new ValidationContext(runData));
 			Assert.IsFalse(ValidationResult.Success == result);
 		}
 
@@ -108,7 +108,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			var gearboxData = CreateGearboxData(GearboxDirectLoss, GearboxIndirectLoss);
 			var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFile);
 			var runData = new VectoRunData { GearboxData = gearboxData, EngineData = engineData };
-			var result = runData.ValidateRunData(runData, new ValidationContext(runData));
+			var result = VectoRunData.ValidateRunData(runData, new ValidationContext(runData));
 			Assert.IsTrue(ValidationResult.Success == result);
 			Assert.IsFalse(runData.IsValid());
 		}
@@ -123,7 +123,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			var axleGearData = CreateAxleGearData(AxleGearLossMap);
 
 			var runData = new VectoRunData { EngineData = engineData, AxleGearData = axleGearData };
-			var result = runData.ValidateRunData(runData, new ValidationContext(runData));
+			var result = VectoRunData.ValidateRunData(runData, new ValidationContext(runData));
 			Assert.IsTrue(ValidationResult.Success == result);
 			Assert.IsFalse(runData.IsValid());
 		}
diff --git a/VectoCoreTest/TestData/Components/24t Coach.veng b/VectoCoreTest/TestData/Components/24t Coach.veng
index d93e66348bbf92fc91f80d7b24ae03ebc3a936e6..2d1fb173be9dd9fc5c919c5c9d29abf045e6a21d 100644
--- a/VectoCoreTest/TestData/Components/24t Coach.veng	
+++ b/VectoCoreTest/TestData/Components/24t Coach.veng	
@@ -13,8 +13,8 @@
     "Inertia": 3.8,
     "FullLoadCurve": "24t Coach.vfld",
     "FuelMap": "24t Coach.vmap",
-    "WHTC-Urban": 0.0,
-    "WHTC-Rural": 0.0,
-    "WHTC-Motorway": 0.0
+    "WHTC-Urban": 1.0,
+    "WHTC-Rural": 1.0,
+    "WHTC-Motorway": 1.0
   }
 }
\ No newline at end of file