diff --git a/VectoCore/InputData/IInputDataProvider.cs b/VectoCore/InputData/IInputDataProvider.cs
index 689eed04d0d52b0722d15958e615d972b88885d0..788082e59d95c173da848ad50c53e51e3ad0596a 100644
--- a/VectoCore/InputData/IInputDataProvider.cs
+++ b/VectoCore/InputData/IInputDataProvider.cs
@@ -21,22 +21,44 @@ using System.Deployment.Internal;
 
 namespace TUGraz.VectoCore.InputData
 {
-	public interface IInputDataProvider
+	public interface IInputDataProvider {}
+
+	public interface IDeclarationInputDataProvider : IInputDataProvider
 	{
-		IJobInputData JobInputData();
+		IDeclarationJobInputData JobInputData();
 
-		IVehicleInputData VehicleInputData { get; }
+		IVehicleDeclarationInputData VehicleInputData { get; }
 
-		IGearboxInputData GearboxInputData { get; }
+		IGearboxDeclarationInputData GearboxInputData { get; }
 
 		IAxleGearInputData AxleGearInputData { get; }
 
-		IEngineInputData EngineInputData { get; }
+		IEngineDeclarationInputData EngineInputData { get; }
 
-		IAuxiliariesInputData AuxiliaryInputData();
+		IAuxiliariesDeclarationInputData AuxiliaryInputData();
 
 		IRetarderInputData RetarderInputData { get; }
 
 		IDriverInputData DriverInputData { get; }
 	}
+
+
+	public interface IEngineeringInputDataProvider : IDeclarationInputDataProvider
+	{
+		new IEngineeringJobInputData JobInputData();
+
+		new IVehicleEngineeringInputData VehicleInputData { get; }
+
+		new IGearboxEngineeringInputData GearboxInputData { get; }
+
+		//IAxleGearInputData AxleGearInputData { get; }
+
+		new IEngineEngineeringInputData EngineInputData { get; }
+
+		new IAuxiliariesEngineeringInputData AuxiliaryInputData();
+
+		//IRetarderInputData RetarderInputData { get; }
+
+		//IDriverInputData DriverInputData { get; }
+	}
 }
\ No newline at end of file
diff --git a/VectoCore/InputData/InputData.cs b/VectoCore/InputData/InputData.cs
index 497806670126fb43e01793dc279d4a59034a0372..dca192a5770eec29067cbb714fdaff26c07c115e 100644
--- a/VectoCore/InputData/InputData.cs
+++ b/VectoCore/InputData/InputData.cs
@@ -24,11 +24,18 @@ using TUGraz.VectoCore.Utils;
 
 namespace TUGraz.VectoCore.InputData
 {
-	public interface IJobInputData
+	public interface IDeclarationJobInputData
 	{
 		bool SavedInDeclarationMode { get; }
 
-		IVehicleInputData Vehicle { get; }
+		IVehicleDeclarationInputData Vehicle { get; }
+
+		string JobName { get; }
+	}
+
+	public interface IEngineeringJobInputData : IDeclarationJobInputData
+	{
+		new IVehicleEngineeringInputData Vehicle { get; }
 
 		/// <summary>
 		/// P008  Cycles
@@ -41,8 +48,6 @@ namespace TUGraz.VectoCore.InputData
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
 		bool EngineOnlyMode { get; }
-
-		string JobName { get; }
 	}
 
 	public interface IComponentInputData
@@ -64,7 +69,7 @@ namespace TUGraz.VectoCore.InputData
 		IntegrityStatus IntegrityStatus { get; }
 	}
 
-	public interface IVehicleInputData : IComponentInputData
+	public interface IVehicleDeclarationInputData : IComponentInputData
 	{
 		/// <summary>
 		/// P036
@@ -73,16 +78,16 @@ namespace TUGraz.VectoCore.InputData
 		VehicleCategory VehicleCategory { get; }
 
 		/// <summary>
-		/// P038  Curb Weight Vehicle
+		/// P037  
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		Kilogram CurbWeight { get; }
+		AxleConfiguration AxleConfiguration { get; }
 
 		/// <summary>
-		/// P039  Curb Weight Extra Trailer/Body
+		/// P038  Curb Weight Vehicle
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		Kilogram CurbWeightExtra { get; }
+		Kilogram CurbWeightChassis { get; }
 
 		/// <summary>
 		/// P041  Max. vehicle weight
@@ -91,48 +96,65 @@ namespace TUGraz.VectoCore.InputData
 		Kilogram GrossVehicleMassRating { get; }
 
 		/// <summary>
-		/// P040  Loading
+		/// P146  DragCoefficient * Cross Section Area - Truck & Trailer
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		Kilogram Loading { get; }
+		SquareMeter AirDragArea { get; }
 
 		/// <summary>
-		/// P049
+		/// P147  DragCoefficient * Cross Section Area - Rigid
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		Meter DynamicTyreRadius { get; }
+		SquareMeter AirDragAreaRigidTruck { get; } // without trailer
+
 
 		/// <summary>
-		/// P146  DragCoefficient * Cross Section Area - Truck & Trailer
+		/// P117  Powered axle tyres/rims
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		SquareMeter AirDragArea { get; }
+		string Rim { get; }
+
 
 		/// <summary>
-		/// P147  DragCoefficient * Cross Section Area - Rigid
+		/// parameters for every axle
+		/// P044, P045, P046, P047, P048, P108
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		SquareMeter AirDragAreaRigidTruck { get; } // without trailer
+		IList<IAxleDeclarationInputData> Axles { get; }
 
+		/// <summary>
+		/// P053
+		/// cf. VECTO Input Parameters.xlsx
+		/// </summary>
+		double RetarderRatio { get; }
+	}
 
+	public interface IVehicleEngineeringInputData : IVehicleDeclarationInputData
+	{
 		/// <summary>
-		/// P117  Powered axle tyres/rims
+		/// P039  Curb Weight Extra Trailer/Body
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		string Rim { get; }
+		Kilogram CurbWeightExtra { get; }
 
 		/// <summary>
-		/// P037  
+		/// P040  Loading
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		AxleConfiguration AxleConfiguration { get; }
+		Kilogram Loading { get; }
 
 		/// <summary>
 		/// parameters for every axle
 		/// P044, P045, P046, P047, P048, P108
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		IList<IAxleInputData> Axles { get; }
+		new IList<IAxleEngineeringInputData> Axles { get; }
+
+		/// <summary>
+		/// P049
+		/// cf. VECTO Input Parameters.xlsx
+		/// </summary>
+		Meter DynamicTyreRadius { get; }
 
 		/// <summary>
 		/// P050
@@ -146,12 +168,6 @@ namespace TUGraz.VectoCore.InputData
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
 		DataTable CrosswindCorrectionMap { get; }
-
-		/// <summary>
-		/// P053
-		/// cf. VECTO Input Parameters.xlsx
-		/// </summary>
-		double RetarderRatio { get; }
 	}
 
 	public interface IRetarderInputData : IComponentInputData
@@ -170,7 +186,7 @@ namespace TUGraz.VectoCore.InputData
 		DataTable LossMap { get; }
 	}
 
-	public interface IAxleInputData : IComponentInputData
+	public interface IAxleDeclarationInputData : IComponentInputData
 	{
 		/// <summary>
 		/// P108  
@@ -197,7 +213,10 @@ namespace TUGraz.VectoCore.InputData
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
 		Newton TyreTestLoad { get; }
+	}
 
+	public interface IAxleEngineeringInputData : IAxleDeclarationInputData
+	{
 		/// <summary>
 		/// P044 (0 - 1)
 		/// cf. VECTO Input Parameters.xlsx
@@ -212,7 +231,7 @@ namespace TUGraz.VectoCore.InputData
 	}
 
 
-	public interface IGearboxInputData : IComponentInputData
+	public interface IGearboxDeclarationInputData : IComponentInputData
 	{
 		/// <summary>
 		/// P076
@@ -221,28 +240,25 @@ namespace TUGraz.VectoCore.InputData
 		GearboxType Type { get; }
 
 		/// <summary>
-		/// P080
-		/// cf. VECTO Input Parameters.xlsx
-		/// </summary>
-		KilogramSquareMeter Inertia { get; }
-
-		/// <summary>
-		/// P081
+		/// P078, P079, P077, P082, P145 (for every gear)
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		Second TractionInterruption { get; }
+		IList<ITransmissionInputData> Gears { get; }
+	}
 
+	public interface IGearboxEngineeringInputData : IGearboxDeclarationInputData
+	{
 		/// <summary>
-		/// P078, P079, P077, P082, P145 (for every gear)
+		/// P080
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		IList<ITransmissionInputData> Gears { get; }
+		KilogramSquareMeter Inertia { get; }
 
 		/// <summary>
-		/// P084
+		/// P081
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		bool SkipGears { get; }
+		Second TractionInterruption { get; }
 
 		/// <summary>
 		/// P086
@@ -281,6 +297,13 @@ namespace TUGraz.VectoCore.InputData
 		/// </summary>
 		double StartTorqueReserve { get; }
 
+		/// <summary>
+		/// P084
+		/// cf. VECTO Input Parameters.xlsx
+		/// </summary>
+		bool SkipGears { get; }
+
+
 		/// <summary>
 		/// P090, P091, P092, P127
 		/// cf. VECTO Input Parameters.xlsx
@@ -369,7 +392,7 @@ namespace TUGraz.VectoCore.InputData
 		DataTable TCData { get; }
 	}
 
-	public interface IEngineInputData : IComponentInputData
+	public interface IEngineDeclarationInputData : IComponentInputData
 	{
 		/// <summary>
 		/// P061
@@ -384,50 +407,58 @@ namespace TUGraz.VectoCore.InputData
 		PerSecond IdleSpeed { get; }
 
 		/// <summary>
-		/// P067
-		/// P072, P073, P074
+		/// P111
 		/// cf. VECTO Input Parameters.xlsx
-		/// engine speed in rpm, torque in NM, fuel consumption in g/h
 		/// </summary>
-		DataTable FuelConsumptionMap { get; }
+		KilogramPerWattSecond WHTCMotorway { get; }
 
 		/// <summary>
-		/// P144
-		/// P068, P069, P70, P71
+		/// P110
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		DataTable FullLoadCurve { get; }
+		KilogramPerWattSecond WHTCRural { get; }
 
 		/// <summary>
-		/// P062
+		/// P109
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		KilogramSquareMeter Inertia { get; }
+		KilogramPerWattSecond WHTCUrban { get; }
 
 		/// <summary>
-		/// P111
+		/// P067
+		/// P072, P073, P074
 		/// cf. VECTO Input Parameters.xlsx
+		/// engine speed in rpm, torque in NM, fuel consumption in g/h
 		/// </summary>
-		KilogramPerWattSecond WHTCMotorway { get; }
+		DataTable FuelConsumptionMap { get; }
 
 		/// <summary>
-		/// P110
+		/// P144
+		/// P068, P069, P70, P71
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		KilogramPerWattSecond WHTCRural { get; }
+		DataTable FullLoadCurve { get; }
+	}
 
+	public interface IEngineEngineeringInputData : IEngineDeclarationInputData
+	{
 		/// <summary>
-		/// P109
+		/// P062
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		KilogramPerWattSecond WHTCUrban { get; }
+		KilogramSquareMeter Inertia { get; }
 	}
 
-	public interface IAuxiliariesInputData
+	public interface IAuxiliariesDeclarationInputData
 	{
 		bool SavedInDeclarationMode { get; }
 
-		IList<IAuxiliaryInputData> Auxiliaries { get; }
+		IList<IAuxiliaryDeclarationInputData> Auxiliaries { get; }
+	}
+
+	public interface IAuxiliariesEngineeringInputData : IAuxiliariesDeclarationInputData
+	{
+		new IList<IAuxiliaryEngineeringInputData> Auxiliaries { get; }
 	}
 
 	public interface ICycleData
@@ -531,7 +562,7 @@ namespace TUGraz.VectoCore.InputData
 		Second Delay { get; }
 	}
 
-	public interface IAuxiliaryInputData
+	public interface IAuxiliaryDeclarationInputData
 	{
 		bool SavedInDeclarationMode { get; }
 
@@ -558,7 +589,10 @@ namespace TUGraz.VectoCore.InputData
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
 		IList<string> TechList { get; }
+	}
 
+	public interface IAuxiliaryEngineeringInputData : IAuxiliaryDeclarationInputData
+	{
 		/// <summary>
 		/// P022  Aux-InputFile: transmission ratio
 		/// cf. VECTO Input Parameters.xlsx