diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/DistanceBasedDrivingCycle.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/DistanceBasedDrivingCycle.cs
index f077fefc392a8c938032d8c729544493c8417a43..45a94f3974dde6ba2a856a914bbebba32fff7565 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/DistanceBasedDrivingCycle.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/DistanceBasedDrivingCycle.cs
@@ -179,9 +179,11 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 		private Second GetStopTimeInterval()
 		{
 			if (!Left.PTOActive || IdleController == null) {
-				return Left.StoppingTime.IsGreater(3 * Constants.SimulationSettings.TargetTimeInterval)
-					? GetStopTimeIntervalThreePhases()
-					: Left.StoppingTime;
+				if ((Left.StoppingTime - CurrentState.WaitTime).IsGreater(2 * Constants.SimulationSettings.TargetTimeInterval,
+					0.1 * Constants.SimulationSettings.TargetTimeInterval)) {
+					return 2 * Constants.SimulationSettings.TargetTimeInterval;
+				}
+				return Left.StoppingTime - CurrentState.WaitTime;
 			}
 			if (Left.StoppingTime.IsGreater(6 * Constants.SimulationSettings.TargetTimeInterval)) {
 				// 7 phases
@@ -196,20 +198,6 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 			return IdleController.GetNextCycleTime();
 		}
 
-		private Second GetStopTimeIntervalThreePhases()
-		{
-			switch (CurrentState.WaitPhase) {
-				case 1:
-				case 3:
-					CurrentState.WaitPhase++;
-					return Constants.SimulationSettings.TargetTimeInterval;
-				case 2:
-					CurrentState.WaitPhase++;
-					return Left.StoppingTime - 2 * Constants.SimulationSettings.TargetTimeInterval;
-			}
-			return null;
-		}
-
 		private Second GetStopTimeIntervalThreePhasesPTO()
 		{
 			switch (CurrentState.WaitPhase) {
@@ -390,8 +378,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 		/// </summary>
 		public double Progress
 		{
-			get
-			{
+			get {
 				return Data.Entries.Count > 0
 					? (CurrentState.Distance.Value() - Data.Entries.First().Distance.Value()) /
 					(Data.Entries.Last().Distance.Value() - Data.Entries.First().Distance.Value())
@@ -448,8 +435,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 
 		public CycleData CycleData
 		{
-			get
-			{
+			get {
 				return new CycleData {
 					AbsTime = CurrentState.AbsTime,
 					AbsDistance = CurrentState.Distance,
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/TransmissionComponent.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/TransmissionComponent.cs
index 2c08505d6d73d5927c310238855929bfe41f7f38..a09be59236b6b63c6a4925add38c61d22207b7b4 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/TransmissionComponent.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/TransmissionComponent.cs
@@ -29,91 +29,91 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
-using TUGraz.VectoCommon.Exceptions;
-using TUGraz.VectoCommon.Models;
-using TUGraz.VectoCommon.Utils;
-using TUGraz.VectoCore.Models.Connector.Ports;
-using TUGraz.VectoCore.Models.Simulation;
-using TUGraz.VectoCore.Models.SimulationComponent.Data.Gearbox;
-
-namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
-{
-	public abstract class TransmissionComponent :
-		StatefulVectoSimulationComponent<TransmissionComponent.TransmissionState>, IPowerTrainComponent, ITnInPort,
-		ITnOutPort
-	{
-		protected ITnOutPort NextComponent;
-		[ValidateObject] internal readonly TransmissionData ModelData;
-
-		public class TransmissionState : SimpleComponentState
-		{
-			public TransmissionLossMap.LossMapResult TorqueLossResult;
-			//public NewtonMeter TorqueLoss = 0.SI<NewtonMeter>();
-		}
-
-		protected TransmissionComponent(IVehicleContainer container, TransmissionData modelData) : base(container)
-		{
-			ModelData = modelData;
-		}
-
-		public virtual ITnInPort InPort()
-		{
-			return this;
-		}
-
-		public virtual ITnOutPort OutPort()
-		{
-			return this;
-		}
-
-		public virtual void Connect(ITnOutPort other)
-		{
-			NextComponent = other;
-		}
-
-		public virtual IResponse Request(Second absTime, Second dt, NewtonMeter outTorque, PerSecond outAngularVelocity,
-			bool dryRun = false)
-		{
-			Log.Debug("request: torque: {0}, angularVelocity: {1}", outTorque, outAngularVelocity);
-
-			var inAngularVelocity = outAngularVelocity * ModelData.Ratio;
-			var avgOutAngularVelocity = (PreviousState.OutAngularVelocity + outAngularVelocity) / 2.0;
-
-			var torqueLossResult = ModelData.LossMap.GetTorqueLoss(avgOutAngularVelocity, outTorque);
-			var inTorque = outTorque / ModelData.Ratio + torqueLossResult.Value;
-
-			CurrentState.SetState(inTorque, inAngularVelocity, outTorque, outAngularVelocity);
-			CurrentState.TorqueLossResult = torqueLossResult;
-
-			var retVal = NextComponent.Request(absTime, dt, inTorque, inAngularVelocity, dryRun);
-			return retVal;
-		}
-
-		public virtual IResponse Initialize(NewtonMeter outTorque, PerSecond outAngularVelocity)
-		{
-			var inAngularVelocity = outAngularVelocity * ModelData.Ratio;
-			var torqueLossResult = ModelData.LossMap.GetTorqueLoss(outAngularVelocity, outTorque);
-			var inTorque = outTorque / ModelData.Ratio + torqueLossResult.Value;
-
-			PreviousState.SetState(inTorque, inAngularVelocity, outTorque, outAngularVelocity);
-			PreviousState.TorqueLossResult = torqueLossResult;
-
-			return NextComponent.Initialize(inTorque, inAngularVelocity);
-		}
-
-		protected override void DoCommitSimulationStep()
-		{
-			if (CurrentState.TorqueLossResult.Extrapolated) {
-				Log.Warn("{2} LossMap data was extrapolated: range for loss map is not sufficient: n:{0}, torque:{1}",
-					CurrentState.OutAngularVelocity.ConvertTo().Rounds.Per.Minute, CurrentState.OutTorque, GetType().Name);
-
-				if (DataBus.ExecutionMode == ExecutionMode.Declaration) {
-					throw new VectoException(
-						"{2} LossMap data was extrapolated in Declaration Mode: range for loss map is not sufficient: n:{0}, torque:{1}",
-						CurrentState.OutAngularVelocity.ConvertTo().Rounds.Per.Minute, CurrentState.OutTorque, GetType().Name);
-				}
-			}
-			AdvanceState();
-		}
-	}
+using TUGraz.VectoCommon.Exceptions;
+using TUGraz.VectoCommon.Models;
+using TUGraz.VectoCommon.Utils;
+using TUGraz.VectoCore.Models.Connector.Ports;
+using TUGraz.VectoCore.Models.Simulation;
+using TUGraz.VectoCore.Models.SimulationComponent.Data.Gearbox;
+
+namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
+{
+	public abstract class TransmissionComponent :
+		StatefulVectoSimulationComponent<TransmissionComponent.TransmissionState>, IPowerTrainComponent, ITnInPort,
+		ITnOutPort
+	{
+		protected ITnOutPort NextComponent;
+		[ValidateObject] internal readonly TransmissionData ModelData;
+
+		public class TransmissionState : SimpleComponentState
+		{
+			public TransmissionLossMap.LossMapResult TorqueLossResult;
+			//public NewtonMeter TorqueLoss = 0.SI<NewtonMeter>();
+		}
+
+		protected TransmissionComponent(IVehicleContainer container, TransmissionData modelData) : base(container)
+		{
+			ModelData = modelData;
+		}
+
+		public virtual ITnInPort InPort()
+		{
+			return this;
+		}
+
+		public virtual ITnOutPort OutPort()
+		{
+			return this;
+		}
+
+		public virtual void Connect(ITnOutPort other)
+		{
+			NextComponent = other;
+		}
+
+		public virtual IResponse Request(Second absTime, Second dt, NewtonMeter outTorque, PerSecond outAngularVelocity,
+			bool dryRun = false)
+		{
+			Log.Debug("request: torque: {0}, angularVelocity: {1}", outTorque, outAngularVelocity);
+
+			var inAngularVelocity = outAngularVelocity * ModelData.Ratio;
+			var avgOutAngularVelocity = (PreviousState.OutAngularVelocity + outAngularVelocity) / 2.0;
+
+			var torqueLossResult = ModelData.LossMap.GetTorqueLoss(avgOutAngularVelocity, outTorque);
+			var inTorque = outTorque / ModelData.Ratio + torqueLossResult.Value;
+
+			CurrentState.SetState(inTorque, inAngularVelocity, outTorque, outAngularVelocity);
+			CurrentState.TorqueLossResult = torqueLossResult;
+
+			var retVal = NextComponent.Request(absTime, dt, inTorque, inAngularVelocity, dryRun);
+			return retVal;
+		}
+
+		public virtual IResponse Initialize(NewtonMeter outTorque, PerSecond outAngularVelocity)
+		{
+			var inAngularVelocity = outAngularVelocity * ModelData.Ratio;
+			var torqueLossResult = ModelData.LossMap.GetTorqueLoss(outAngularVelocity, outTorque);
+			var inTorque = outTorque / ModelData.Ratio + torqueLossResult.Value;
+
+			PreviousState.SetState(inTorque, inAngularVelocity, outTorque, outAngularVelocity);
+			PreviousState.TorqueLossResult = torqueLossResult;
+
+			return NextComponent.Initialize(inTorque, inAngularVelocity);
+		}
+
+		protected override void DoCommitSimulationStep()
+		{
+			if (CurrentState.TorqueLossResult.Extrapolated) {
+				Log.Warn("{2} LossMap data was extrapolated: range for loss map is not sufficient: n:{0}, torque:{1}",
+					CurrentState.OutAngularVelocity.ConvertTo().Rounds.Per.Minute, CurrentState.OutTorque, GetType().Name);
+
+				if (DataBus.ExecutionMode == ExecutionMode.Declaration) {
+					throw new VectoException(
+						"{2} LossMap data was extrapolated in Declaration Mode: range for loss map is not sufficient: n:{0}, torque:{1}",
+						CurrentState.OutAngularVelocity.ConvertTo().Rounds.Per.Minute, CurrentState.OutTorque, GetType().Name);
+				}
+			}
+			AdvanceState();
+		}
+	}
 }
\ No newline at end of file
diff --git a/VectoCore/VectoCore/Utils/XmlResourceResolver.cs b/VectoCore/VectoCore/Utils/XmlResourceResolver.cs
index a045a73c78d216d0dccbdd31efac7146745c2657..1a02f713a5016476248c68db9984be726d9ed4fe 100644
--- a/VectoCore/VectoCore/Utils/XmlResourceResolver.cs
+++ b/VectoCore/VectoCore/Utils/XmlResourceResolver.cs
@@ -29,23 +29,23 @@
 *   Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology
 */
 
-using System;
-using System.IO;
-using System.Xml;
-
-namespace TUGraz.VectoCore.Utils
-{
-	public class XmlResourceResolver : XmlUrlResolver
-	{
-		internal const string BaseUri = "schema://";
-
-		public override object GetEntity(Uri absoluteUri, string role, Type ofObjectToReturn)
-		{
-			if (absoluteUri.Scheme == "schema") {
-				return RessourceHelper.LoadResourceAsStream(RessourceHelper.ResourceType.XMLSchema,
-					Path.GetFileName(absoluteUri.LocalPath));
-			}
-			return base.GetEntity(absoluteUri, role, ofObjectToReturn);
-		}
-	}
+using System;
+using System.IO;
+using System.Xml;
+
+namespace TUGraz.VectoCore.Utils
+{
+	public class XmlResourceResolver : XmlUrlResolver
+	{
+		internal const string BaseUri = "schema://";
+
+		public override object GetEntity(Uri absoluteUri, string role, Type ofObjectToReturn)
+		{
+			if (absoluteUri.Scheme == "schema") {
+				return RessourceHelper.LoadResourceAsStream(RessourceHelper.ResourceType.XMLSchema,
+					Path.GetFileName(absoluteUri.LocalPath));
+			}
+			return base.GetEntity(absoluteUri, role, ofObjectToReturn);
+		}
+	}
 }
\ No newline at end of file