diff --git a/LicenceHeader/Program.cs b/LicenceHeader/Program.cs
index 853fb97b14b7b224bf92b3207b6358db618252c1..7d5ed4285c2d4475cbc83ecd268d29523cc42f1c 100644
--- a/LicenceHeader/Program.cs
+++ b/LicenceHeader/Program.cs
@@ -34,6 +34,7 @@ namespace LicenceHeader
 			var count = 0;
 
 			foreach (var file in Directory.GetFiles(SolutionRootDirectory, "*.cs", SearchOption.AllDirectories)) {
+				Console.WriteLine(file);
 				if (file.Contains("\\obj\\") || file.Contains("\\bin\\")) {
 					continue;
 				}
diff --git a/LicenceHeader/header.txt b/LicenceHeader/header.txt
index 4ad4eb3d90ce2923358992c2875799c2ec24c924..7fd7590f224b5b1c880d96f5436ec47f189204ec 100644
--- a/LicenceHeader/header.txt
+++ b/LicenceHeader/header.txt
@@ -1,5 +1,5 @@
 /*
-* Copyright 2015 European Union
+* Copyright 2015 Graz University of Technology
 *
 * Licensed under the EUPL (the "Licence");
 * You may not use this work except in compliance with the Licence.
diff --git a/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs b/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
index bb7bee8536b6793686554dc76bead4bef9971aad..212144642a433f7f74087f0e9214da221661127a 100644
--- a/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
+++ b/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
@@ -107,7 +107,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
 			}
 		}
 
-		private void CheckLossMapRangeForFullLoadCurves(GearboxData gearboxData, CombustionEngineData engineData)
+		internal static void CheckLossMapRangeForFullLoadCurves(GearboxData gearboxData, CombustionEngineData engineData)
 		{
 			foreach (var gear in gearboxData.Gears) {
 				for (var angularVelocity = engineData.IdleSpeed;
diff --git a/VectoCoreTest/Models/Simulation/SimulationTests.cs b/VectoCoreTest/Models/Simulation/SimulationTests.cs
index 58e55345c6eb56f7f63ba127fa0e1aff12a359c2..aaad3c987ed758163a130ce9fb58d8e7a971334f 100644
--- a/VectoCoreTest/Models/Simulation/SimulationTests.cs
+++ b/VectoCoreTest/Models/Simulation/SimulationTests.cs
@@ -25,104 +25,103 @@ using TUGraz.VectoCore.Utils;
 
 namespace TUGraz.VectoCore.Tests.Models.Simulation
 {
-    [TestClass]
-    public class SimulationTests
-    {
-        private const string EngineFile = @"TestData\Components\24t Coach.veng";
-        private const string CycleFile = @"TestData\Cycles\Coach Engine Only short.vdri";
-
-        private const string EngineOnlyJob = @"TestData\Jobs\EngineOnlyJob.vecto";
-
-        [TestMethod]
-        public void TestSimulationEngineOnly()
-        {
-            var resultFileName = "TestEngineOnly-result.vmod";
-            var job = CreateRun(resultFileName);
-
-            var container = job.GetContainer();
-
-            Assert.AreEqual(560.RPMtoRad(), container.EngineSpeed);
-            Assert.AreEqual(0U, container.Gear);
-        }
-
-        [TestMethod]
-        public void TestEngineOnly_JobRun()
-        {
-            var actual = @"TestData\Jobs\EngineOnlyJob_Coach Engine Only short.vmod";
-            var expected = @"TestData\Results\EngineOnlyCycles\24tCoach_EngineOnly short.vmod";
-
-            var job = CreateRun(actual);
-            job.Run();
-
-            ResultFileHelper.TestModFile(expected, actual);
-        }
-
-        private class MockSumWriter : SummaryFileWriter
-        {
-            public override void Write(bool isEngineOnly, IModalDataWriter data, string jobFileName, string jobName,
-                string cycleFileName,
-                Kilogram vehicleMass, Kilogram vehicleLoading) {}
-
-            public override void Finish() {}
-        }
-
-
-        [TestMethod]
-        public void TestEngineOnly_SimulatorRun()
-        {
-            var actual = @"TestData\Jobs\EngineOnlyJob_Coach Engine Only short.vmod";
-            var expected = @"TestData\Results\EngineOnlyCycles\24tCoach_EngineOnly short.vmod";
-
-            var run = CreateRun(actual);
-
-            var sim = new JobContainer(new MockSumWriter());
-            sim.AddRun(run);
-            sim.Execute();
-            sim.WaitFinished();
-
-            ResultFileHelper.TestModFile(expected, actual);
-        }
-
-        public IVectoRun CreateRun(string resultFileName)
-        {
-            var sumFileName = resultFileName.Substring(0, resultFileName.Length - 5) + Constants.FileExtensions.SumFile;
-
-            var dataWriter = new ModalDataWriter(resultFileName, SimulatorFactory.FactoryMode.EngineOnlyMode);
-            var sumWriter = new SummaryFileWriter(sumFileName);
-
-            var factory = new SimulatorFactory(SimulatorFactory.FactoryMode.EngineOnlyMode, EngineOnlyJob) {
-                SumWriter = sumWriter
-            };
-
-            return factory.SimulationRuns().First();
-        }
-
-        [TestMethod]
-        public void Test_VectoJob()
-        {
-            var sumWriter = new SummaryFileWriter(@"24t Coach.vsum");
-            var jobContainer = new JobContainer(sumWriter);
-
-            var runsFactory = new SimulatorFactory(SimulatorFactory.FactoryMode.EngineOnlyMode,
-                @"TestData\Jobs\24t Coach EngineOnly.vecto");
-
-            jobContainer.AddRuns(runsFactory);
-            jobContainer.Execute();
-
-            jobContainer.WaitFinished();
-
-            ResultFileHelper.TestSumFile(@"TestData\Results\EngineOnlyCycles\24t Coach.vsum", @"24t Coach.vsum");
-
-            ResultFileHelper.TestModFiles(new[] {
-                @"TestData\Results\EngineOnlyCycles\24t Coach_Engine Only1.vmod",
-                @"TestData\Results\EngineOnlyCycles\24t Coach_Engine Only2.vmod",
-                @"TestData\Results\EngineOnlyCycles\24t Coach_Engine Only3.vmod"
-            }, new[] {
-                @"TestData\Jobs\24t Coach EngineOnly_Engine Only1.vmod",
-                @"TestData\Jobs\24t Coach EngineOnly_Engine Only2.vmod",
-                @"TestData\Jobs\24t Coach EngineOnly_Engine Only3.vmod"
-            })
-                ;
-        }
-    }
+	[TestClass]
+	public class SimulationTests
+	{
+		private const string EngineFile = @"TestData\Components\24t Coach.veng";
+		private const string CycleFile = @"TestData\Cycles\Coach Engine Only short.vdri";
+
+		private const string EngineOnlyJob = @"TestData\Jobs\EngineOnlyJob.vecto";
+
+		[TestMethod]
+		public void TestSimulationEngineOnly()
+		{
+			var resultFileName = "TestEngineOnly-result.vmod";
+			var job = CreateRun(resultFileName);
+
+			var container = job.GetContainer();
+
+			Assert.AreEqual(560.RPMtoRad(), container.EngineSpeed);
+			Assert.AreEqual(0U, container.Gear);
+		}
+
+		[TestMethod]
+		public void TestEngineOnly_JobRun()
+		{
+			var actual = @"TestData\Jobs\EngineOnlyJob_Coach Engine Only short.vmod";
+			var expected = @"TestData\Results\EngineOnlyCycles\24tCoach_EngineOnly short.vmod";
+
+			var job = CreateRun(actual);
+			job.Run();
+
+			ResultFileHelper.TestModFile(expected, actual);
+		}
+
+		private class MockSumWriter : SummaryFileWriter
+		{
+			public override void Write(bool isEngineOnly, IModalDataWriter data, string jobFileName, string jobName,
+				string cycleFileName,
+				Kilogram vehicleMass, Kilogram vehicleLoading) {}
+
+			public override void Finish() {}
+		}
+
+
+		[TestMethod]
+		public void TestEngineOnly_SimulatorRun()
+		{
+			var actual = @"TestData\Jobs\EngineOnlyJob_Coach Engine Only short.vmod";
+			var expected = @"TestData\Results\EngineOnlyCycles\24tCoach_EngineOnly short.vmod";
+
+			var run = CreateRun(actual);
+
+			var sim = new JobContainer(new MockSumWriter());
+			sim.AddRun(run);
+			sim.Execute();
+			sim.WaitFinished();
+
+			ResultFileHelper.TestModFile(expected, actual);
+		}
+
+		public IVectoRun CreateRun(string resultFileName)
+		{
+			var sumFileName = resultFileName.Substring(0, resultFileName.Length - 5) + Constants.FileExtensions.SumFile;
+
+			var dataWriter = new ModalDataWriter(resultFileName, SimulatorFactory.FactoryMode.EngineOnlyMode);
+			var sumWriter = new SummaryFileWriter(sumFileName);
+
+			var factory = new SimulatorFactory(SimulatorFactory.FactoryMode.EngineOnlyMode, EngineOnlyJob) {
+				SumWriter = sumWriter
+			};
+
+			return factory.SimulationRuns().First();
+		}
+
+		[TestMethod]
+		public void Test_VectoJob()
+		{
+			var sumWriter = new SummaryFileWriter(@"24t Coach.vsum");
+			var jobContainer = new JobContainer(sumWriter);
+
+			var runsFactory = new SimulatorFactory(SimulatorFactory.FactoryMode.EngineOnlyMode,
+				@"TestData\Jobs\24t Coach EngineOnly.vecto");
+
+			jobContainer.AddRuns(runsFactory);
+			jobContainer.Execute();
+
+			jobContainer.WaitFinished();
+
+			ResultFileHelper.TestSumFile(@"TestData\Results\EngineOnlyCycles\24t Coach.vsum", @"24t Coach.vsum");
+
+			ResultFileHelper.TestModFiles(new[] {
+				@"TestData\Results\EngineOnlyCycles\24t Coach_Engine Only1.vmod",
+				@"TestData\Results\EngineOnlyCycles\24t Coach_Engine Only2.vmod",
+				@"TestData\Results\EngineOnlyCycles\24t Coach_Engine Only3.vmod"
+			}, new[] {
+				@"TestData\Jobs\24t Coach EngineOnly_Engine Only1.vmod",
+				@"TestData\Jobs\24t Coach EngineOnly_Engine Only2.vmod",
+				@"TestData\Jobs\24t Coach EngineOnly_Engine Only3.vmod"
+			});
+		}
+	}
 }
\ No newline at end of file
diff --git a/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs b/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs
index c0d361c40e9840ec26012f0126903023daa03f3a..63b2387cdf080a172a97707f48bec90bb83c04f3 100644
--- a/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs
+++ b/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs
@@ -14,10 +14,16 @@
 * limitations under the Licence.
 */
 
+using System.IO;
 using Microsoft.VisualStudio.TestTools.UnitTesting;
 using TUGraz.VectoCore.Exceptions;
+using TUGraz.VectoCore.Models.Declaration;
+using TUGraz.VectoCore.Models.Simulation.Data;
+using TUGraz.VectoCore.Models.Simulation.Impl;
 using TUGraz.VectoCore.Models.SimulationComponent.Data;
 using TUGraz.VectoCore.Models.SimulationComponent.Data.Engine;
+using TUGraz.VectoCore.Models.SimulationComponent.Data.Gearbox;
+using TUGraz.VectoCore.Models.SimulationComponent.Impl;
 using TUGraz.VectoCore.Tests.Utils;
 using TUGraz.VectoCore.Utils;
 
@@ -143,5 +149,23 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 				() => EngineFullLoadCurve.ReadFromFile(@"TestData\Components\FullLoadCurve insufficient entries.vfld"),
 				"FullLoadCurve must consist of at least two lines with numeric values (below file header)");
 		}
+
+		[TestMethod]
+		public void FullLoad_LossMap_Test()
+		{
+			var engineData = new CombustionEngineData {
+				FullLoadCurve = EngineFullLoadCurve.ReadFromFile(@"TestData\Components\12t Delivery Truck.vfld"),
+				IdleSpeed = 560.RPMtoRad()
+			};
+
+			var gearboxData = new GearboxData();
+			gearboxData.Gears[1] = new GearData {
+				LossMap = TransmissionLossMap.ReadFromFile(@"TestData\Components\limited.vtlm", 1, "1"),
+				Ratio = 1
+			};
+
+			AssertHelper.Exception<VectoException>(
+				() => SimulatorFactory.CheckLossMapRangeForFullLoadCurves(gearboxData, engineData));
+		}
 	}
 }
\ No newline at end of file
diff --git a/VectoCoreTest/TestData/Components/Axle.vtlm b/VectoCoreTest/TestData/Components/Axle.vtlm
index ca83698dd7d8747eaa2cc34fc5c1440b1d209a10..a2f69201fe0a5444d2b61277178fb1c851b7f55e 100644
--- a/VectoCoreTest/TestData/Components/Axle.vtlm
+++ b/VectoCoreTest/TestData/Components/Axle.vtlm
@@ -265,3 +265,22 @@ Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm],Eff [-]
 2600,13500,242.5
 2600,14500,257.5
 2600,15500,272.5
+3600,-2500,77.5
+3600,-1500,62.5
+3600,-500,47.5
+3600,500,47.5
+3600,1500,62.5
+3600,2500,77.5
+3600,3500,92.5
+3600,4500,107.5
+3600,5500,122.5
+3600,6500,137.5
+3600,7500,152.5
+3600,8500,167.5
+3600,9500,182.5
+3600,10500,197.5
+3600,11500,212.5
+3600,12500,227.5
+3600,13500,242.5
+3600,14500,257.5
+3600,15500,272.5
\ No newline at end of file
diff --git a/VectoCoreTest/TestData/Components/Direct Gear.vtlm b/VectoCoreTest/TestData/Components/Direct Gear.vtlm
index f01578ad9e3711612d374a7b4fe9ad6b667438da..65f85329b91de25332bc8f8c6ac9cfdcec314e2e 100644
--- a/VectoCoreTest/TestData/Components/Direct Gear.vtlm	
+++ b/VectoCoreTest/TestData/Components/Direct Gear.vtlm	
@@ -163,7 +163,22 @@ Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm],Eff [-]
 2000,1850,24.43,
 2000,2050,25.43,
 2000,2250,26.43,
-2000,2450,27.43,
+3000,2450,27.43,
+3000,-350,16.93,
+3000,-150,15.93,
+3000,50,15.43,
+3000,250,16.43,
+3000,450,17.43,
+3000,650,18.43,
+3000,850,19.43,
+3000,1050,20.43,
+3000,1250,21.43,
+3000,1450,22.43,
+3000,1650,23.43,
+3000,1850,24.43,
+3000,2050,25.43,
+3000,2250,26.43,
+3000,2450,27.43,
 0,-1000,10.06,
 200,-1000,11.072,
 400,-1000,12.084,
diff --git a/VectoCoreTest/TestData/Components/Indirect Gear.vtlm b/VectoCoreTest/TestData/Components/Indirect Gear.vtlm
index 90e4beee5b235671a0500dbd9f28ff2b3dd73236..a0dff7db051305a8b68c741a6920f0e905ed0af8 100644
--- a/VectoCoreTest/TestData/Components/Indirect Gear.vtlm	
+++ b/VectoCoreTest/TestData/Components/Indirect Gear.vtlm	
@@ -164,6 +164,21 @@ Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm],Eff [-]
 2000,2050,56.18,
 2000,2250,60.18,
 2000,2450,64.18,
+3000,-350,22.18,
+3000,-150,18.18,
+3000,50,16.18,
+3000,250,20.18,
+3000,450,24.18,
+3000,650,28.18,
+3000,850,32.18,
+3000,1050,36.18,
+3000,1250,40.18,
+3000,1450,44.18,
+3000,1650,48.18,
+3000,1850,52.18,
+3000,2050,56.18,
+3000,2250,60.18,
+3000,2450,64.18,
 0,-1000,25.06,
 200,-1000,26.072,
 400,-1000,27.084,
diff --git a/VectoCoreTest/TestData/Components/limited.vtlm b/VectoCoreTest/TestData/Components/limited.vtlm
new file mode 100644
index 0000000000000000000000000000000000000000..96c02e2c5473a4721c9d573be480678efcba3fca
--- /dev/null
+++ b/VectoCoreTest/TestData/Components/limited.vtlm
@@ -0,0 +1,39 @@
+Input Speed [rpm],Input Torque [Nm],Torque Loss [Nm],Eff [-]
+0,-2500,77.5
+0,-1500,62.5
+0,-500,47.5
+0,500,47.5
+0,1500,62.5
+0,2500,77.5
+0,3500,92.5
+0,4500,107.5
+0,5500,122.5
+0,6500,137.5
+0,7500,152.5
+0,8500,167.5
+0,9500,182.5
+0,10500,197.5
+0,11500,212.5
+0,12500,227.5
+0,13500,242.5
+0,14500,257.5
+0,15500,272.5
+200,-2500,77.5
+200,-1500,62.5
+200,-500,47.5
+200,500,47.5
+200,1500,62.5
+200,2500,77.5
+200,3500,92.5
+200,4500,107.5
+200,5500,122.5
+200,6500,137.5
+200,7500,152.5
+200,8500,167.5
+200,9500,182.5
+200,10500,197.5
+200,11500,212.5
+200,12500,227.5
+200,13500,242.5
+200,14500,257.5
+200,15500,272.5
\ No newline at end of file
diff --git a/VectoCoreTest/VectoCoreTest.csproj b/VectoCoreTest/VectoCoreTest.csproj
index 176794c9104fde36ab3cfb424eb0c3d6dc31b827..d645ed3e4c9e749ba7dc962d6551b7a6f0319d9d 100644
--- a/VectoCoreTest/VectoCoreTest.csproj
+++ b/VectoCoreTest/VectoCoreTest.csproj
@@ -156,6 +156,9 @@
     <None Include="TestData\Components\12t Delivery Truck.vveh">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
+    <None Include="TestData\Components\limited.vtlm">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
     <None Include="TestData\Components\Axle 40t Truck.vtlm">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>