diff --git a/VECTO/Input Files/Engine.vb b/VECTO/Input Files/Engine.vb
index 1f7943b8f5ca3c09274632ca27b202e41b95b41a..0658148a3377e42275b2e05acabdedd627d7b7a6 100644
--- a/VECTO/Input Files/Engine.vb	
+++ b/VECTO/Input Files/Engine.vb	
@@ -632,32 +632,33 @@ Public Class DummyVehicle
 	Public  Property ManufacturerAddress As String Implements IVehicleDeclarationInputData.ManufacturerAddress
 	Public  Property EngineIdleSpeed As PerSecond Implements IVehicleDeclarationInputData.EngineIdleSpeed
 	Public  Property VocationalVehicle As Boolean Implements IVehicleDeclarationInputData.VocationalVehicle
-	Public  Property SleeperCab As Boolean Implements IVehicleDeclarationInputData.SleeperCab
-	Public  Property TankSystem As TankSystem? Implements IVehicleDeclarationInputData.TankSystem
-    Public  Property IVehicleEngineeringInputData_ADAS As IAdvancedDriverAssistantSystemsEngineering Implements IVehicleEngineeringInputData.ADAS
+    Public Property SleeperCab As Boolean Implements IVehicleDeclarationInputData.SleeperCab
+    Public ReadOnly Property AirdragModifiedMultistage As Boolean Implements IVehicleDeclarationInputData.AirdragModifiedMultistage
+    Public Property TankSystem As TankSystem? Implements IVehicleDeclarationInputData.TankSystem
+    Public Property IVehicleEngineeringInputData_ADAS As IAdvancedDriverAssistantSystemsEngineering Implements IVehicleEngineeringInputData.ADAS
     Public ReadOnly Property IVehicleEngineeringInputData_Components As IVehicleComponentsEngineering Implements IVehicleEngineeringInputData.Components
-    get
-            return me
-    End Get
+        Get
+            Return Me
+        End Get
     End Property
-	Public Property ADAS As IAdvancedDriverAssistantSystemDeclarationInputData Implements IVehicleDeclarationInputData.ADAS
+    Public Property ADAS As IAdvancedDriverAssistantSystemDeclarationInputData Implements IVehicleDeclarationInputData.ADAS
     Public ReadOnly Property InitialSOC As Double Implements IVehicleEngineeringInputData.InitialSOC
     Public ReadOnly Property MaxDrivetrainPower As Watt Implements IVehicleEngineeringInputData.MaxDrivetrainPower
     Public ReadOnly Property VehicleType As VectoSimulationJobType Implements IVehicleEngineeringInputData.VehicleType
     Public Property ZeroEmissionVehicle As Boolean Implements IVehicleDeclarationInputData.ZeroEmissionVehicle
-    Public  Property HybridElectricHDV As Boolean Implements IVehicleDeclarationInputData.HybridElectricHDV
-	Public  Property DualFuelVehicle As Boolean Implements IVehicleDeclarationInputData.DualFuelVehicle
-	Public  Property MaxNetPower1 As Watt Implements IVehicleDeclarationInputData.MaxNetPower1
-	Public  Property MaxNetPower2 As Watt Implements IVehicleDeclarationInputData.MaxNetPower2
+    Public Property HybridElectricHDV As Boolean Implements IVehicleDeclarationInputData.HybridElectricHDV
+    Public Property DualFuelVehicle As Boolean Implements IVehicleDeclarationInputData.DualFuelVehicle
+    Public Property MaxNetPower1 As Watt Implements IVehicleDeclarationInputData.MaxNetPower1
+    Public Property MaxNetPower2 As Watt Implements IVehicleDeclarationInputData.MaxNetPower2
     Public ReadOnly Property RegisteredClass As RegistrationClass Implements IVehicleDeclarationInputData.RegisteredClass
     Public ReadOnly Property NumberOfPassengersUpperDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersUpperDeck
     Public ReadOnly Property NumberOfPassengersLowerDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersLowerDeck
     Public ReadOnly Property CargoVolume As CubicMeter Implements IVehicleDeclarationInputData.CargoVolume
     Public ReadOnly Property VehicleCode As VehicleCode Implements IVehicleDeclarationInputData.VehicleCode
-    Public  Property CurbMassExtra As Kilogram Implements IVehicleEngineeringInputData.CurbMassExtra
-    Public  Property Loading As Kilogram Implements IVehicleEngineeringInputData.Loading
-    Public  Property DynamicTyreRadius As Meter Implements IVehicleEngineeringInputData.DynamicTyreRadius
-    Public  Property Height As Meter Implements IVehicleEngineeringInputData.Height
+    Public Property CurbMassExtra As Kilogram Implements IVehicleEngineeringInputData.CurbMassExtra
+    Public Property Loading As Kilogram Implements IVehicleEngineeringInputData.Loading
+    Public Property DynamicTyreRadius As Meter Implements IVehicleEngineeringInputData.DynamicTyreRadius
+    Public Property Height As Meter Implements IVehicleEngineeringInputData.Height
     Public ReadOnly Property LowEntry As Boolean Implements IVehicleDeclarationInputData.LowEntry
     Public ReadOnly Property Articulated As Boolean Implements IVehicleDeclarationInputData.Articulated
     Public ReadOnly Property IVehicleDeclarationInputData_Height As Meter Implements IVehicleDeclarationInputData.Height
@@ -665,6 +666,7 @@ Public Class DummyVehicle
     Public ReadOnly Property Width As Meter Implements IVehicleDeclarationInputData.Width
     Public ReadOnly Property EntranceHeight As Meter Implements IVehicleDeclarationInputData.EntranceHeight
     Public ReadOnly Property DoorDriveTechnology As ConsumerTechnology Implements IVehicleDeclarationInputData.DoorDriveTechnology
+    Public ReadOnly Property StateOfCompletion As StateOfCompletion Implements IVehicleDeclarationInputData.StateOfCompletion
 
     Public readonly Property Components As IVehicleComponentsDeclaration Implements IVehicleDeclarationInputData.Components
 	get
diff --git a/VECTO/Input Files/Gearbox.vb b/VECTO/Input Files/Gearbox.vb
index e58b89d7dc24cc7146bb7639a4ae0ea352d6bfa6..ce6cb559fe829f16e238c2a6eda31beaf9a58197 100644
--- a/VECTO/Input Files/Gearbox.vb	
+++ b/VECTO/Input Files/Gearbox.vb	
@@ -811,15 +811,16 @@ Public Class MockEngineeringVehicle
     Public Property EngineIdleSpeed As PerSecond Implements IVehicleDeclarationInputData.EngineIdleSpeed
     Public Property VocationalVehicle As Boolean Implements IVehicleDeclarationInputData.VocationalVehicle
     Public Property SleeperCab As Boolean Implements IVehicleDeclarationInputData.SleeperCab
+    Public ReadOnly Property AirdragModifiedMultistage As Boolean Implements IVehicleDeclarationInputData.AirdragModifiedMultistage
     Public Property TankSystem As TankSystem? Implements IVehicleDeclarationInputData.TankSystem
 
     Public Property IVehicleEngineeringInputData_ADAS As IAdvancedDriverAssistantSystemsEngineering _
         Implements IVehicleEngineeringInputData.ADAS
 
-    Public readonly Property IVehicleEngineeringInputData_Components As IVehicleComponentsEngineering _
+    Public ReadOnly Property IVehicleEngineeringInputData_Components As IVehicleComponentsEngineering _
         Implements IVehicleEngineeringInputData.Components
         Get
-            Return me
+            Return Me
         End Get
     End Property
 
@@ -851,6 +852,7 @@ Public Class MockEngineeringVehicle
     Public ReadOnly Property Width As Meter Implements IVehicleDeclarationInputData.Width
     Public ReadOnly Property EntranceHeight As Meter Implements IVehicleDeclarationInputData.EntranceHeight
     Public ReadOnly Property DoorDriveTechnology As ConsumerTechnology Implements IVehicleDeclarationInputData.DoorDriveTechnology
+    Public ReadOnly Property StateOfCompletion As StateOfCompletion Implements IVehicleDeclarationInputData.StateOfCompletion
     Public Property Components As IVehicleComponentsDeclaration Implements IVehicleDeclarationInputData.Components
     Public ReadOnly Property XMLSource As XmlNode Implements IVehicleDeclarationInputData.XMLSource
 
diff --git a/VECTO/Input Files/MockVehicleInputData.vb b/VECTO/Input Files/MockVehicleInputData.vb
index 796fb9be88119a01222bd838a4bc347a100d5070..6baf286bb169a05fc3fa8b662e4a170171bd416e 100644
--- a/VECTO/Input Files/MockVehicleInputData.vb	
+++ b/VECTO/Input Files/MockVehicleInputData.vb	
@@ -29,6 +29,7 @@ Public Class MockVehicleInputData
     Public Property EngineIdleSpeed As PerSecond Implements IVehicleDeclarationInputData.EngineIdleSpeed
     Public Property VocationalVehicle As Boolean Implements IVehicleDeclarationInputData.VocationalVehicle
     Public Property SleeperCab As Boolean Implements IVehicleDeclarationInputData.SleeperCab
+    Public ReadOnly Property AirdragModifiedMultistage As Boolean Implements IVehicleDeclarationInputData.AirdragModifiedMultistage
     Public Property TankSystem As TankSystem? Implements IVehicleDeclarationInputData.TankSystem
 
     Public Property ADAS As IAdvancedDriverAssistantSystemDeclarationInputData _
@@ -51,6 +52,7 @@ Public Class MockVehicleInputData
     Public ReadOnly Property Width As Meter Implements IVehicleDeclarationInputData.Width
     Public ReadOnly Property EntranceHeight As Meter Implements IVehicleDeclarationInputData.EntranceHeight
     Public ReadOnly Property DoorDriveTechnology As ConsumerTechnology Implements IVehicleDeclarationInputData.DoorDriveTechnology
+    Public ReadOnly Property StateOfCompletion As StateOfCompletion Implements IVehicleDeclarationInputData.StateOfCompletion
     Public Property Components As IVehicleComponentsDeclaration Implements IVehicleDeclarationInputData.Components
     Public ReadOnly Property XMLSource As XmlNode Implements IVehicleDeclarationInputData.XMLSource
 End Class
\ No newline at end of file
diff --git a/VECTO/Input Files/Vehicle.vb b/VECTO/Input Files/Vehicle.vb
index 70fa26208a48171a9afeb58270e31226bd0630fb..33201727385dbea8d8e459cf80f79c53287413ee 100644
--- a/VECTO/Input Files/Vehicle.vb	
+++ b/VECTO/Input Files/Vehicle.vb	
@@ -74,19 +74,19 @@ Public Class Vehicle
 	public PCC as PredictiveCruiseControlType
 	public EngineStop as Boolean
 
-    Public VehicleTankSystem As TankSystem?
+	Public VehicleTankSystem As TankSystem?
 
-    Public ReadOnly BatteryFile As SubPath
-    Public ReadOnly ElectricMotorFile As SubPath
+	Public ReadOnly BatteryFile As SubPath
+	Public ReadOnly ElectricMotorFile As SubPath
 
-    Public NumBatteryPacks As Integer
-    Public ElectricMotorPosition As PowertrainPosition
-    Public ElectricMotorCount As Integer
-    Public ElectricMotorRatio As Double
-    Public ElectricMotorMechEff As Double
-    Public MaxPower As Double
+	Public NumBatteryPacks As Integer
+	Public ElectricMotorPosition As PowertrainPosition
+	Public ElectricMotorCount As Integer
+	Public ElectricMotorRatio As Double
+	Public ElectricMotorMechEff As Double
+	Public MaxPower As Double
 
-    Public Sub New()
+	Public Sub New()
 		_path = ""
 		_filePath = ""
 		CrossWindCorrectionFile = New SubPath
@@ -97,11 +97,11 @@ Public Class Vehicle
 		Axles = New List(Of AxleInputData)
 		torqueLimitsList = New List(Of ITorqueLimitInputData)
 		PtoLossMap = New SubPath()
-        PtoCycle = New SubPath()
-        BatteryFile = New SubPath()
-        ElectricMotorFile = New SubPath()
+		PtoCycle = New SubPath()
+		BatteryFile = New SubPath()
+		ElectricMotorFile = New SubPath()
 
-        SetDefault()
+		SetDefault()
 	End Sub
 
 
@@ -115,20 +115,20 @@ Public Class Vehicle
 		Dim angledriveData As AngledriveData
 
 		Dim modeService As VectoValidationModeServiceContainer =
-				TryCast(validationContext.GetService(GetType(VectoValidationModeServiceContainer)), 
+				TryCast(validationContext.GetService(GetType(VectoValidationModeServiceContainer)),
 						VectoValidationModeServiceContainer)
 		Dim mode As ExecutionMode = If(modeService Is Nothing, ExecutionMode.Declaration, modeService.Mode)
 		Dim emsCycle As Boolean = (modeService IsNot Nothing) AndAlso modeService.IsEMSCycle
 		Dim gbxType As GearboxType? = If(modeService Is Nothing, Nothing, modeService.GearboxType)
-	    Dim jobType as VectoSimulationJobType = If(modeService Is Nothing, VectoSimulationJobType.ConventionalVehicle, modeService.JobType)
-	    Dim emPos as PowertrainPosition? = If(modeService Is Nothing, PowertrainPosition.HybridPositionNotSet, modeService.EMPowertrainPosition)
+		Dim jobType As VectoSimulationJobType = If(modeService Is Nothing, VectoSimulationJobType.ConventionalVehicle, modeService.JobType)
+		Dim emPos As PowertrainPosition? = If(modeService Is Nothing, PowertrainPosition.HybridPositionNotSet, modeService.EMPowertrainPosition)
 
 
 		Try
 			If mode = ExecutionMode.Declaration Then
 				Dim doa As DeclarationDataAdapterHeavyLorry = New DeclarationDataAdapterHeavyLorry()
 				Dim segment As Segment = DeclarationData.TruckSegments.Lookup(vehicle.VehicleCategory, vehicle.AxleConfiguration,
-																		vehicle.GrossVehicleMassRating, vehicle.CurbMassChassis, false)
+																		vehicle.GrossVehicleMassRating, vehicle.CurbMassChassis, False)
 				vehicleData = doa.CreateVehicleData(vehicle, segment, segment.Missions.First(),
 													segment.Missions.First().Loadings.First())
 				airdragData = doa.CreateAirdragData(vehicle, segment.Missions.First(), segment)
@@ -271,7 +271,7 @@ Public Class Vehicle
 
 	Public ReadOnly Property DataSource As DataSource Implements IComponentInputData.DataSource
 		Get
-			Dim retVal As DataSource =  New DataSource() 
+			Dim retVal As DataSource = New DataSource()
 			retVal.SourceType = DataSourceType.JSONFile
 			retVal.SourceFile = FilePath
 			Return retVal
@@ -305,13 +305,13 @@ Public Class Vehicle
 		End Get
 	End Property
 
-    Public ReadOnly Property AppVersion As String Implements IComponentInputData.AppVersion
-        get
-            Return "VECTO-GUI"
-        End Get
-    End Property
+	Public ReadOnly Property AppVersion As String Implements IComponentInputData.AppVersion
+		Get
+			Return "VECTO-GUI"
+		End Get
+	End Property
 
-    Public ReadOnly Property CertificationMethod As CertificationMethod Implements IComponentInputData.CertificationMethod
+	Public ReadOnly Property CertificationMethod As CertificationMethod Implements IComponentInputData.CertificationMethod
 		Get
 			Return CertificationMethod.NotCertified
 		End Get
@@ -345,15 +345,15 @@ Public Class Vehicle
 	End Property
 
 	Public ReadOnly Property Identifier As String Implements IVehicleDeclarationInputData.Identifier
-	get
+		Get
 			Return ""
-	End Get
+		End Get
 	End Property
 
 	Public ReadOnly Property ExemptedVehicle As Boolean Implements IVehicleDeclarationInputData.ExemptedVehicle
-	get
-			Return false
-	End Get
+		Get
+			Return False
+		End Get
 	End Property
 
 	Public ReadOnly Property VIN As String Implements IVehicleDeclarationInputData.VIN
@@ -377,7 +377,7 @@ Public Class Vehicle
 	Public ReadOnly Property GrossVehicleMassRating As Kilogram _
 		Implements IVehicleDeclarationInputData.GrossVehicleMassRating
 		Get
-					Return MassMax.SI(Unit.SI.Ton).Cast(Of Kilogram)()
+			Return MassMax.SI(Unit.SI.Ton).Cast(Of Kilogram)()
 		End Get
 	End Property
 
@@ -427,25 +427,26 @@ Public Class Vehicle
 		End Get
 	End Property
 
-    Public ReadOnly Property IVehicleDeclarationInputData_Height As Meter Implements IVehicleDeclarationInputData.Height
+	Public ReadOnly Property IVehicleDeclarationInputData_Height As Meter Implements IVehicleDeclarationInputData.Height
 
-    Public ReadOnly Property Articulated As Boolean Implements IVehicleDeclarationInputData.Articulated
+	Public ReadOnly Property Articulated As Boolean Implements IVehicleDeclarationInputData.Articulated
 
-    Public ReadOnly Property Height As Meter Implements IVehicleEngineeringInputData.Height
+	Public ReadOnly Property Height As Meter Implements IVehicleEngineeringInputData.Height
 		Get
 			Return VehicleHeight.SI(Of Meter)()
 		End Get
 	End Property
 
-    Public ReadOnly Property Length As Meter Implements IVehicleDeclarationInputData.Length
-    Public ReadOnly Property Width As Meter Implements IVehicleDeclarationInputData.Width
-    Public ReadOnly Property EntranceHeight As Meter Implements IVehicleDeclarationInputData.EntranceHeight
-    Public ReadOnly Property DoorDriveTechnology As ConsumerTechnology Implements IVehicleDeclarationInputData.DoorDriveTechnology
+	Public ReadOnly Property Length As Meter Implements IVehicleDeclarationInputData.Length
+	Public ReadOnly Property Width As Meter Implements IVehicleDeclarationInputData.Width
+	Public ReadOnly Property EntranceHeight As Meter Implements IVehicleDeclarationInputData.EntranceHeight
+	Public ReadOnly Property DoorDriveTechnology As ConsumerTechnology Implements IVehicleDeclarationInputData.DoorDriveTechnology
+	Public ReadOnly Property StateOfCompletion As StateOfCompletion Implements IVehicleDeclarationInputData.StateOfCompletion
 
-    Public ReadOnly Property IVehicleEngineeringInputData_Components As IVehicleComponentsEngineering Implements IVehicleEngineeringInputData.Components
-	get
-			Return me
-	End Get
+	Public ReadOnly Property IVehicleEngineeringInputData_Components As IVehicleComponentsEngineering Implements IVehicleEngineeringInputData.Components
+		Get
+			Return Me
+		End Get
 	End Property
 
 	Public ReadOnly Property CrosswindCorrectionMap As TableData _
@@ -465,7 +466,7 @@ Public Class Vehicle
 	Public ReadOnly Property IVehicleEngineeringInputData_DynamicTyreRadius As Meter _
 		Implements IVehicleEngineeringInputData.DynamicTyreRadius
 		Get
-				Return DynamicTyreRadius.SI(Unit.SI.Milli.Meter).Cast(Of Meter)()
+			Return DynamicTyreRadius.SI(Unit.SI.Milli.Meter).Cast(Of Meter)()
 		End Get
 	End Property
 
@@ -650,15 +651,15 @@ Public Class Vehicle
 	End Property
 
 	Public ReadOnly Property IVehicleComponentsDeclaration_AuxiliaryInputData As IAuxiliariesDeclarationInputData Implements IVehicleComponentsDeclaration.AuxiliaryInputData
-	get
-			return nothing
-	End Get
+		Get
+			Return Nothing
+		End Get
 	End Property
 
 	Public ReadOnly Property AuxiliaryInputData As IAuxiliariesEngineeringInputData Implements IVehicleComponentsEngineering.AuxiliaryInputData
-	get
+		Get
 			Return Nothing
-	End Get
+		End Get
 	End Property
 
 
@@ -699,56 +700,58 @@ Public Class Vehicle
 	End Property
 
 	Public ReadOnly Property IVehicleComponentsDeclaration_AxleWheels As IAxlesDeclarationInputData Implements IVehicleComponentsDeclaration.AxleWheels
-	get
+		Get
 			Return Me
-	End Get
+		End Get
 	End Property
 
 	Public ReadOnly Property AxleWheels As IAxlesEngineeringInputData Implements IVehicleComponentsEngineering.AxleWheels
-	get
-			Return me
-	End Get
+		Get
+			Return Me
+		End Get
 	End Property
 
-    Public ReadOnly Property ElectricStorage As IElectricStorageEngineeringInputData Implements IVehicleComponentsEngineering.ElectricStorage
-        Get
-            Return New ElectricStorageWrapper(Me)
-        End Get
-    End Property
+	Public ReadOnly Property ElectricStorage As IElectricStorageEngineeringInputData Implements IVehicleComponentsEngineering.ElectricStorage
+		Get
+			Return New ElectricStorageWrapper(Me)
+		End Get
+	End Property
 
-    Public ReadOnly Property IVehicleComponentsDeclaration_ElectricMachines As IElectricMachinesDeclarationInputData Implements IVehicleComponentsDeclaration.ElectricMachines
+	Public ReadOnly Property IVehicleComponentsDeclaration_ElectricMachines As IElectricMachinesDeclarationInputData Implements IVehicleComponentsDeclaration.ElectricMachines
 
-    Public ReadOnly Property IVehicleComponentsDeclaration_ElectricStorage As IElectricStorageDeclarationInputData Implements IVehicleComponentsDeclaration.ElectricStorage
-    Public ReadOnly Property ElectricMachines As IElectricMachinesEngineeringInputData Implements IVehicleComponentsEngineering.ElectricMachines
-        Get
-            Return New ElectricMachineWrapper(Me)
-        End Get
-    End Property
+	Public ReadOnly Property IVehicleComponentsDeclaration_ElectricStorage As IElectricStorageDeclarationInputData Implements IVehicleComponentsDeclaration.ElectricStorage
+	Public ReadOnly Property ElectricMachines As IElectricMachinesEngineeringInputData Implements IVehicleComponentsEngineering.ElectricMachines
+		Get
+			Return New ElectricMachineWrapper(Me)
+		End Get
+	End Property
 
-    Public ReadOnly Property BusAuxiliaries As IBusAuxiliariesDeclarationData Implements IVehicleComponentsDeclaration.BusAuxiliaries
+	Public ReadOnly Property BusAuxiliaries As IBusAuxiliariesDeclarationData Implements IVehicleComponentsDeclaration.BusAuxiliaries
 
-    Public ReadOnly Property VocationalVehicle As Boolean Implements IVehicleDeclarationInputData.VocationalVehicle
-	get
+	Public ReadOnly Property VocationalVehicle As Boolean Implements IVehicleDeclarationInputData.VocationalVehicle
+		Get
 			Return DeclarationData.Vehicle.VocationalVehicleDefault
-	End Get
+		End Get
 	End Property
 
 	Public ReadOnly Property SleeperCab As Boolean Implements IVehicleDeclarationInputData.SleeperCab
-	get
+		Get
 			Return DeclarationData.Vehicle.SleeperCabDefault
-	End Get
+		End Get
 	End Property
 
+	Public ReadOnly Property AirdragModifiedMultistage As Boolean Implements IVehicleDeclarationInputData.AirdragModifiedMultistage
+
 	Public ReadOnly Property TankSystem As TankSystem? Implements IVehicleDeclarationInputData.TankSystem
-	get
-			Return vehicleTankSystem
-	End Get
+		Get
+			Return VehicleTankSystem
+		End Get
 	End Property
 
 	Public ReadOnly Property IVehicleEngineeringInputData_ADAS As IAdvancedDriverAssistantSystemsEngineering Implements IVehicleEngineeringInputData.ADAS
-	get
-			Return me
-	End Get
+		Get
+			Return Me
+		End Get
 	End Property
 
 	Public ReadOnly Property ADAS As IAdvancedDriverAssistantSystemDeclarationInputData Implements IVehicleDeclarationInputData.ADAS
@@ -766,191 +769,191 @@ Public Class Vehicle
 	Public Property VehicleType As VectoSimulationJobType Implements IVehicleEngineeringInputData.VehicleType
 
 
-    Public ReadOnly Property ZeroEmissionVehicle As Boolean Implements IVehicleDeclarationInputData.ZeroEmissionVehicle
-        Get
-            Return DeclarationData.Vehicle.ZeroEmissionVehicleDefault
-        End Get
-    End Property
+	Public ReadOnly Property ZeroEmissionVehicle As Boolean Implements IVehicleDeclarationInputData.ZeroEmissionVehicle
+		Get
+			Return DeclarationData.Vehicle.ZeroEmissionVehicleDefault
+		End Get
+	End Property
 
-    Public ReadOnly Property HybridElectricHDV As Boolean Implements IVehicleDeclarationInputData.HybridElectricHDV
-	get
-			return DeclarationData.Vehicle.HybridElectricHDVDefault
-	End Get
+	Public ReadOnly Property HybridElectricHDV As Boolean Implements IVehicleDeclarationInputData.HybridElectricHDV
+		Get
+			Return DeclarationData.Vehicle.HybridElectricHDVDefault
+		End Get
 	End Property
 
 	Public ReadOnly Property DualFuelVehicle As Boolean Implements IVehicleDeclarationInputData.DualFuelVehicle
-	get
-			return DeclarationData.Vehicle.DualFuelVehicleDefault
-	End Get
+		Get
+			Return DeclarationData.Vehicle.DualFuelVehicleDefault
+		End Get
 	End Property
 
 	Public ReadOnly Property MaxNetPower1 As Watt Implements IVehicleDeclarationInputData.MaxNetPower1
-	get
+		Get
 			Return Nothing
-	End Get
+		End Get
 	End Property
 
 	Public ReadOnly Property MaxNetPower2 As Watt Implements IVehicleDeclarationInputData.MaxNetPower2
-	get
+		Get
 			Return Nothing
-	End Get
+		End Get
 	End Property
 
-    Public ReadOnly Property RegisteredClass As RegistrationClass Implements IVehicleDeclarationInputData.RegisteredClass
-    Public ReadOnly Property NumberOfPassengersUpperDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersUpperDeck
-    Public ReadOnly Property NumberOfPassengersLowerDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersLowerDeck
-    Public ReadOnly Property CargoVolume As CubicMeter Implements IVehicleDeclarationInputData.CargoVolume
-    Public ReadOnly Property VehicleCode As VehicleCode Implements IVehicleDeclarationInputData.VehicleCode
-    Public ReadOnly Property LowEntry As Boolean Implements IVehicleDeclarationInputData.LowEntry
+	Public ReadOnly Property RegisteredClass As RegistrationClass Implements IVehicleDeclarationInputData.RegisteredClass
+	Public ReadOnly Property NumberOfPassengersUpperDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersUpperDeck
+	Public ReadOnly Property NumberOfPassengersLowerDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersLowerDeck
+	Public ReadOnly Property CargoVolume As CubicMeter Implements IVehicleDeclarationInputData.CargoVolume
+	Public ReadOnly Property VehicleCode As VehicleCode Implements IVehicleDeclarationInputData.VehicleCode
+	Public ReadOnly Property LowEntry As Boolean Implements IVehicleDeclarationInputData.LowEntry
 
-    Public ReadOnly Property Components As IVehicleComponentsDeclaration Implements IVehicleDeclarationInputData.Components
-	get
+	Public ReadOnly Property Components As IVehicleComponentsDeclaration Implements IVehicleDeclarationInputData.Components
+		Get
 			Return Me
-	End Get
+		End Get
 	End Property
 
-    Public ReadOnly Property IVehicleDeclarationInputData_XMLSource As XmlNode Implements IVehicleDeclarationInputData.XMLSource
+	Public ReadOnly Property IVehicleDeclarationInputData_XMLSource As XmlNode Implements IVehicleDeclarationInputData.XMLSource
 
-    Public ReadOnly Property EngineStopStart As Boolean Implements IAdvancedDriverAssistantSystemDeclarationInputData.EngineStopStart
-	get
-			return EngineStop
-	End Get
+	Public ReadOnly Property EngineStopStart As Boolean Implements IAdvancedDriverAssistantSystemDeclarationInputData.EngineStopStart
+		Get
+			Return EngineStop
+		End Get
 	End Property
 
 	Public ReadOnly Property EcoRoll As EcoRollType Implements IAdvancedDriverAssistantSystemDeclarationInputData.EcoRoll
-	get
-			return EcoRolltype
-	End Get
+		Get
+			Return EcoRolltype
+		End Get
 	End Property
 
-	
+
 	Public ReadOnly Property PredictiveCruiseControl As PredictiveCruiseControlType Implements IAdvancedDriverAssistantSystemDeclarationInputData.PredictiveCruiseControl
-	get
+		Get
 			Return PCC
-	End Get
+		End Get
 	End Property
 
-    Public ReadOnly Property ATEcoRollReleaseLockupClutch As Boolean? Implements IAdvancedDriverAssistantSystemDeclarationInputData.ATEcoRollReleaseLockupClutch
-    get
-            Return EcoRollReleaseLockupClutch
-    End Get
-    End Property
+	Public ReadOnly Property ATEcoRollReleaseLockupClutch As Boolean? Implements IAdvancedDriverAssistantSystemDeclarationInputData.ATEcoRollReleaseLockupClutch
+		Get
+			Return EcoRollReleaseLockupClutch
+		End Get
+	End Property
 
-    Public ReadOnly Property XMLSource As XmlNode Implements IAdvancedDriverAssistantSystemDeclarationInputData.XMLSource
+	Public ReadOnly Property XMLSource As XmlNode Implements IAdvancedDriverAssistantSystemDeclarationInputData.XMLSource
 
-    Public ReadOnly Property IAdvancedDriverAssistantSystemsEngineering_DataSource As DataSource Implements IAdvancedDriverAssistantSystemsEngineering.DataSource
-        get
-            Return New DataSource() With {.SourceType = DataSourceType.JSONFile}
-        End Get
-    End Property
+	Public ReadOnly Property IAdvancedDriverAssistantSystemsEngineering_DataSource As DataSource Implements IAdvancedDriverAssistantSystemsEngineering.DataSource
+		Get
+			Return New DataSource() With {.SourceType = DataSourceType.JSONFile}
+		End Get
+	End Property
 
 
 	Public ReadOnly Property IAxlesEngineeringInputData_DataSource As DataSource Implements IAxlesEngineeringInputData.DataSource
-	get
-		Return New DataSource() With {.SourceType = DataSourceType.JSONFile}
-	End Get
+		Get
+			Return New DataSource() With {.SourceType = DataSourceType.JSONFile}
+		End Get
 	End Property
 
-    Public Property EcoRollReleaseLockupClutch As Boolean
+	Public Property EcoRollReleaseLockupClutch As Boolean
 
-    Public ReadOnly Property IAxlesDeclarationInputData_XMLSource As XmlNode Implements IAxlesDeclarationInputData.XMLSource
+	Public ReadOnly Property IAxlesDeclarationInputData_XMLSource As XmlNode Implements IAxlesDeclarationInputData.XMLSource
 End Class
 
 Public Class ElectricStorageWrapper
-    Implements IElectricStorageEngineeringInputData, IBatteryPackEngineeringInputData
-
-    Protected Vehicle As Vehicle
-
-    Public Sub New(veh As Vehicle)
-        Vehicle = veh
-    End Sub
-
-    
-    Public ReadOnly Property REESSPack As IREESSPackInputData Implements IElectricStorageEngineeringInputData.REESSPack
-        Get
-            return Me
-        End Get
-    End Property
-
-    Public ReadOnly Property Count As Integer Implements IElectricStorageEngineeringInputData.Count
-        Get
-            Return Vehicle.NumBatteryPacks
-        End Get
-    End Property
-
-    Public ReadOnly Property DataSource As DataSource Implements IComponentInputData.DataSource
-        Get
-            Dim retVal As DataSource = New DataSource()
-            retVal.SourceType = DataSourceType.JSONFile
-            retVal.SourceFile = Vehicle.BatteryFile.FullPath
-            Return retVal
-        End Get
-    End Property
-    Public ReadOnly Property SavedInDeclarationMode As Boolean Implements IComponentInputData.SavedInDeclarationMode
-    Public ReadOnly Property Manufacturer As String Implements IComponentInputData.Manufacturer
-    Public ReadOnly Property Model As String Implements IComponentInputData.Model
-    Public ReadOnly Property [Date] As Date Implements IComponentInputData.[Date]
-    Public ReadOnly Property AppVersion As String Implements IComponentInputData.AppVersion
-    Public ReadOnly Property CertificationMethod As CertificationMethod Implements IComponentInputData.CertificationMethod
-    Public ReadOnly Property CertificationNumber As String Implements IComponentInputData.CertificationNumber
-    Public ReadOnly Property DigestValue As DigestData Implements IComponentInputData.DigestValue
-    Public ReadOnly Property MinSOC As Double Implements IBatteryPackDeclarationInputData.MinSOC
-    Public ReadOnly Property MaxSOC As Double Implements IBatteryPackDeclarationInputData.MaxSOC
-    Public ReadOnly Property Capacity As AmpereSecond Implements IBatteryPackDeclarationInputData.Capacity
-    Public ReadOnly Property InternalResistanceCurve As TableData Implements IBatteryPackDeclarationInputData.InternalResistanceCurve
-    Public ReadOnly Property VoltageCurve As TableData Implements IBatteryPackDeclarationInputData.VoltageCurve
-    Public ReadOnly Property MaxCurrentMap As TableData Implements IBatteryPackDeclarationInputData.MaxCurrentMap
-    Public ReadOnly Property StorageType As REESSType Implements IREESSPackInputData.StorageType
+	Implements IElectricStorageEngineeringInputData, IBatteryPackEngineeringInputData
+
+	Protected Vehicle As Vehicle
+
+	Public Sub New(veh As Vehicle)
+		Vehicle = veh
+	End Sub
+
+
+	Public ReadOnly Property REESSPack As IREESSPackInputData Implements IElectricStorageEngineeringInputData.REESSPack
+		Get
+			Return Me
+		End Get
+	End Property
+
+	Public ReadOnly Property Count As Integer Implements IElectricStorageEngineeringInputData.Count
+		Get
+			Return Vehicle.NumBatteryPacks
+		End Get
+	End Property
+
+	Public ReadOnly Property DataSource As DataSource Implements IComponentInputData.DataSource
+		Get
+			Dim retVal As DataSource = New DataSource()
+			retVal.SourceType = DataSourceType.JSONFile
+			retVal.SourceFile = Vehicle.BatteryFile.FullPath
+			Return retVal
+		End Get
+	End Property
+	Public ReadOnly Property SavedInDeclarationMode As Boolean Implements IComponentInputData.SavedInDeclarationMode
+	Public ReadOnly Property Manufacturer As String Implements IComponentInputData.Manufacturer
+	Public ReadOnly Property Model As String Implements IComponentInputData.Model
+	Public ReadOnly Property [Date] As Date Implements IComponentInputData.[Date]
+	Public ReadOnly Property AppVersion As String Implements IComponentInputData.AppVersion
+	Public ReadOnly Property CertificationMethod As CertificationMethod Implements IComponentInputData.CertificationMethod
+	Public ReadOnly Property CertificationNumber As String Implements IComponentInputData.CertificationNumber
+	Public ReadOnly Property DigestValue As DigestData Implements IComponentInputData.DigestValue
+	Public ReadOnly Property MinSOC As Double Implements IBatteryPackDeclarationInputData.MinSOC
+	Public ReadOnly Property MaxSOC As Double Implements IBatteryPackDeclarationInputData.MaxSOC
+	Public ReadOnly Property Capacity As AmpereSecond Implements IBatteryPackDeclarationInputData.Capacity
+	Public ReadOnly Property InternalResistanceCurve As TableData Implements IBatteryPackDeclarationInputData.InternalResistanceCurve
+	Public ReadOnly Property VoltageCurve As TableData Implements IBatteryPackDeclarationInputData.VoltageCurve
+	Public ReadOnly Property MaxCurrentMap As TableData Implements IBatteryPackDeclarationInputData.MaxCurrentMap
+	Public ReadOnly Property StorageType As REESSType Implements IREESSPackInputData.StorageType
 End Class
 
 Public Class ElectricMachineWrapper
-    Implements IElectricMachinesEngineeringInputData, IElectricMotorEngineeringInputData
-
-    Protected Vehicle As Vehicle
-
-    Public Sub New(veh As Vehicle)
-        Vehicle = veh
-    End Sub
-
-
-    Public ReadOnly Property Entries As IList(Of ElectricMachineEntry(Of IElectricMotorDeclarationInputData)) Implements IElectricMachinesDeclarationInputData.Entries
-        Get
-            Return New List(Of ElectricMachineEntry(Of IElectricMotorDeclarationInputData))(New ElectricMachineEntry(Of IElectricMotorDeclarationInputData)() {
-            New ElectricMachineEntry(Of IElectricMotorDeclarationInputData) With {
-                    .ElectricMachine = Me,
-                    .MechanicalEfficiency = Vehicle.ElectricMotorMechEff, .Position = Vehicle.ElectricMotorPosition, .Ratio = Vehicle.ElectricMotorRatio, .Count = Vehicle.ElectricMotorCount}})
-        End Get
-    End Property
-    Public ReadOnly Property IElectricMachinesEngineeringInputData_Entries As IList(Of ElectricMachineEntry(Of IElectricMotorEngineeringInputData)) Implements IElectricMachinesEngineeringInputData.Entries
-        Get
-            Return New List(Of ElectricMachineEntry(Of IElectricMotorEngineeringInputData))(New ElectricMachineEntry(Of IElectricMotorEngineeringInputData)() {
-            New ElectricMachineEntry(Of IElectricMotorEngineeringInputData)() With {
-                    .ElectricMachine = Me,
-                    .MechanicalEfficiency = Vehicle.ElectricMotorMechEff, .Position = Vehicle.ElectricMotorPosition, .Ratio = Vehicle.ElectricMotorRatio, .Count = Vehicle.ElectricMotorCount}})
-
-        End Get
-    End Property
-
-    Public ReadOnly Property DataSource As DataSource Implements IComponentInputData.DataSource
-        Get
-            Return New DataSource() With {
-                                .SourceFile = Vehicle.ElectricMotorFile.FullPath}
-        End Get
-    End Property
-    Public ReadOnly Property SavedInDeclarationMode As Boolean Implements IComponentInputData.SavedInDeclarationMode
-    Public ReadOnly Property Manufacturer As String Implements IComponentInputData.Manufacturer
-    Public ReadOnly Property Model As String Implements IComponentInputData.Model
-    Public ReadOnly Property [Date] As Date Implements IComponentInputData.[Date]
-    Public ReadOnly Property AppVersion As String Implements IComponentInputData.AppVersion
-    Public ReadOnly Property CertificationMethod As CertificationMethod Implements IComponentInputData.CertificationMethod
-    Public ReadOnly Property CertificationNumber As String Implements IComponentInputData.CertificationNumber
-    Public ReadOnly Property DigestValue As DigestData Implements IComponentInputData.DigestValue
-    Public ReadOnly Property FullLoadCurve As TableData Implements IElectricMotorDeclarationInputData.FullLoadCurve
-    Public ReadOnly Property DragCurve As TableData Implements IElectricMotorDeclarationInputData.DragCurve
-    Public ReadOnly Property EfficiencyMap As TableData Implements IElectricMotorDeclarationInputData.EfficiencyMap
-    Public ReadOnly Property Inertia As KilogramSquareMeter Implements IElectricMotorDeclarationInputData.Inertia
-    Public ReadOnly Property OverloadTime As Second Implements IElectricMotorDeclarationInputData.OverloadTime
+	Implements IElectricMachinesEngineeringInputData, IElectricMotorEngineeringInputData
+
+	Protected Vehicle As Vehicle
+
+	Public Sub New(veh As Vehicle)
+		Vehicle = veh
+	End Sub
+
+
+	Public ReadOnly Property Entries As IList(Of ElectricMachineEntry(Of IElectricMotorDeclarationInputData)) Implements IElectricMachinesDeclarationInputData.Entries
+		Get
+			Return New List(Of ElectricMachineEntry(Of IElectricMotorDeclarationInputData))(New ElectricMachineEntry(Of IElectricMotorDeclarationInputData)() {
+			New ElectricMachineEntry(Of IElectricMotorDeclarationInputData) With {
+					.ElectricMachine = Me,
+					.MechanicalEfficiency = Vehicle.ElectricMotorMechEff, .Position = Vehicle.ElectricMotorPosition, .Ratio = Vehicle.ElectricMotorRatio, .Count = Vehicle.ElectricMotorCount}})
+		End Get
+	End Property
+	Public ReadOnly Property IElectricMachinesEngineeringInputData_Entries As IList(Of ElectricMachineEntry(Of IElectricMotorEngineeringInputData)) Implements IElectricMachinesEngineeringInputData.Entries
+		Get
+			Return New List(Of ElectricMachineEntry(Of IElectricMotorEngineeringInputData))(New ElectricMachineEntry(Of IElectricMotorEngineeringInputData)() {
+			New ElectricMachineEntry(Of IElectricMotorEngineeringInputData)() With {
+					.ElectricMachine = Me,
+					.MechanicalEfficiency = Vehicle.ElectricMotorMechEff, .Position = Vehicle.ElectricMotorPosition, .Ratio = Vehicle.ElectricMotorRatio, .Count = Vehicle.ElectricMotorCount}})
+
+		End Get
+	End Property
+
+	Public ReadOnly Property DataSource As DataSource Implements IComponentInputData.DataSource
+		Get
+			Return New DataSource() With {
+								.SourceFile = Vehicle.ElectricMotorFile.FullPath}
+		End Get
+	End Property
+	Public ReadOnly Property SavedInDeclarationMode As Boolean Implements IComponentInputData.SavedInDeclarationMode
+	Public ReadOnly Property Manufacturer As String Implements IComponentInputData.Manufacturer
+	Public ReadOnly Property Model As String Implements IComponentInputData.Model
+	Public ReadOnly Property [Date] As Date Implements IComponentInputData.[Date]
+	Public ReadOnly Property AppVersion As String Implements IComponentInputData.AppVersion
+	Public ReadOnly Property CertificationMethod As CertificationMethod Implements IComponentInputData.CertificationMethod
+	Public ReadOnly Property CertificationNumber As String Implements IComponentInputData.CertificationNumber
+	Public ReadOnly Property DigestValue As DigestData Implements IComponentInputData.DigestValue
+	Public ReadOnly Property FullLoadCurve As TableData Implements IElectricMotorDeclarationInputData.FullLoadCurve
+	Public ReadOnly Property DragCurve As TableData Implements IElectricMotorDeclarationInputData.DragCurve
+	Public ReadOnly Property EfficiencyMap As TableData Implements IElectricMotorDeclarationInputData.EfficiencyMap
+	Public ReadOnly Property Inertia As KilogramSquareMeter Implements IElectricMotorDeclarationInputData.Inertia
+	Public ReadOnly Property OverloadTime As Second Implements IElectricMotorDeclarationInputData.OverloadTime
 	Public ReadOnly Property ContinuousPowerSpeed As PerSecond Implements IElectricMotorDeclarationInputData.ContinuousPowerSpeed
-    Public ReadOnly Property OverloadRecoveryFactor As Double Implements IElectricMotorDeclarationInputData.OverloadRecoveryFactor
-    Public ReadOnly Property ContinuousPower As Watt Implements IElectricMotorDeclarationInputData.ContinuousPower
+	Public ReadOnly Property OverloadRecoveryFactor As Double Implements IElectricMotorDeclarationInputData.OverloadRecoveryFactor
+	Public ReadOnly Property ContinuousPower As Watt Implements IElectricMotorDeclarationInputData.ContinuousPower
 End Class
\ No newline at end of file
diff --git a/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs b/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
index 7b96b49705a19027400563ff5ab44d41baadc636..99bdd3c6527b51314984a8d80dfc12fe564f0fee 100644
--- a/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
+++ b/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
@@ -147,6 +147,8 @@ namespace TUGraz.VectoCommon.InputData
 
 		bool SleeperCab { get; }
 
+		bool AirdragModifiedMultistage { get; }
+
 		TankSystem? TankSystem { get; }
 
 		IAdvancedDriverAssistantSystemDeclarationInputData ADAS { get; }
@@ -188,6 +190,8 @@ namespace TUGraz.VectoCommon.InputData
 
 		ConsumerTechnology DoorDriveTechnology { get; }
 
+		StateOfCompletion StateOfCompletion { get; }
+
 		// components
 
 		IVehicleComponentsDeclaration Components { get; }
@@ -913,4 +917,32 @@ namespace TUGraz.VectoCommon.InputData
 		string SimulationToolVersion { get; }
 		DateTime Date { get; }
 	}
+
+	public enum StateOfCompletion
+	{
+		unknown,
+		incomplete,
+		complete,
+		completed
+	}
+
+
+	public static class StateOfCompletionHelper
+	{
+		public static StateOfCompletion Parse(string parse)
+		{
+			switch (parse)
+			{
+				case nameof(StateOfCompletion.incomplete):
+					return StateOfCompletion.incomplete;
+				case nameof(StateOfCompletion.complete):
+					return StateOfCompletion.complete;
+				case nameof(StateOfCompletion.completed):
+					return StateOfCompletion.completed;
+				default:
+					return StateOfCompletion.unknown;
+			}
+		}
+	}
+
 }
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
index aac5cf3355e71257b87b7ab4ad834116c07fc384..27ba8c49b46792a4c11ae1ae634966a50866c50b 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
@@ -90,7 +90,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 				case Constants.FileExtensions.ElectricMotorFile:
 					tmp = JSONInputDataFactory.ReadElectricMotorData(filename, tolerateMissing);
 					break;
-                case Constants.FileExtensions.HybridStrategyParameters:
+				case Constants.FileExtensions.HybridStrategyParameters:
 					tmp = JSONInputDataFactory.ReadHybridStrategyParameters(filename, tolerateMissing);
 					break;
 			}
@@ -340,6 +340,11 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return VehicleData.DoorDriveTechnology; }
 		}
 
+		public StateOfCompletion StateOfCompletion
+		{
+			get { return StateOfCompletion.unknown; }
+		}
+
 		IVehicleComponentsEngineering IVehicleEngineeringInputData.Components
 		{
 			get { return this; }
@@ -486,6 +491,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return DeclarationData.Vehicle.SleeperCabDefault; }
 		}
 
+		public bool AirdragModifiedMultistage { get; }
+
 		public TankSystem? TankSystem
 		{
 			get { return DeclarationData.Vehicle.TankSystemDefault; }
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs
index 3aa808a7e8937c7be7abac0b30f1cce1bdcf016e..fd97e27524680441be3b6959b4a644684f0c3b1e 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs
@@ -321,6 +321,11 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 		public virtual Meter EntranceHeight { get { return null; } }
 		public virtual ConsumerTechnology DoorDriveTechnology { get { return ConsumerTechnology.Unknown; } }
 
+		public virtual StateOfCompletion StateOfCompletion
+		{
+			get { return StateOfCompletion.unknown; }
+		}
+
 		IVehicleComponentsEngineering IVehicleEngineeringInputData.Components
 		{
 			get { return this; }
@@ -573,6 +578,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return DeclarationData.Vehicle.SleeperCabDefault; }
 		}
 
+		public virtual bool AirdragModifiedMultistage { get; }
+
 		public virtual TankSystem? TankSystem
 		{
 			get { return DeclarationData.Vehicle.TankSystemDefault; }
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs
index d52a7811487d7fcc779bc2182e19b3a5132311e9..24c582df8a892fec01f829d6fc62ee512ee7c0e7 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs
@@ -32,8 +32,6 @@
 using System;
 using System.Collections.Generic;
 using System.Linq;
-using System.Runtime.InteropServices;
-using System.Windows.Forms.VisualStyles;
 using System.Xml;
 using System.Xml.Linq;
 using TUGraz.VectoCommon.BusAuxiliaries;
@@ -42,7 +40,6 @@ using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Resources;
 using TUGraz.VectoCommon.Utils;
-using TUGraz.VectoCore.InputData.FileIO.XML.Common;
 using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Interfaces;
 using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader;
 using TUGraz.VectoCore.InputData.Impl;
@@ -227,6 +224,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 			get { return XmlConvert.ToBoolean(GetString(XMLNames.Vehicle_SleeperCab)); }
 		}
 
+		public virtual bool AirdragModifiedMultistage { get; }
+
 		public virtual TankSystem? TankSystem
 		{
 			get {
@@ -330,6 +329,11 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 		}
 
 		public virtual ConsumerTechnology DoorDriveTechnology { get { return ConsumerTechnology.Unknown; } }
+		
+		public virtual StateOfCompletion StateOfCompletion
+		{
+			get { return StateOfCompletion.unknown; }
+		}
 
 		public virtual IVehicleComponentsDeclaration Components
 		{
@@ -1037,6 +1041,11 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 			get { return ConsumerTechnology.Unknown; }
 		}
 
+		public StateOfCompletion StateOfCompletion
+		{
+			get { return StateOfCompletion.unknown; }
+		}
+
 		public IVehicleComponentsDeclaration Components
 		{
 			get { return _components ?? (_components = ComponentReader.ComponentInputData); }
@@ -1057,6 +1066,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 		public Kilogram CurbMassChassis { get; }
 		public bool VocationalVehicle { get; }
 		public bool SleeperCab { get; }
+		public bool AirdragModifiedMultistage { get; }
 		public TankSystem? TankSystem { get; }
 
 		public bool HybridElectricHDV { get; }
@@ -1155,13 +1165,13 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 			get { return GetDouble(XMLNames.Vehicle_TPMLM).SI<Kilogram>(); }
 		}
 
-		//public override bool AirdragModifiedMultistage
-		//{
-		//	get
-		//	{
-		//		return GetBool(XMLNames.Bus_AirdragModifiedMultistage);
-		//	}
-		//}
+		public override bool AirdragModifiedMultistage
+		{
+			get
+			{
+				return GetBool(XMLNames.Bus_AirdragModifiedMultistage);
+			}
+		}
 
 		public override RegistrationClass RegisteredClass
 		{
@@ -1246,14 +1256,13 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 			get { return _adas ?? (_adas = ADASReader.ADASInputData); }
 		}
 
-		//public override StateOfCompletion StateOfCompletion
-		//{
-		//	get
-		//	{
-		//		return StateOfCompletionHelper.Parse(GetString(XMLNames.Bus_StateOfCompletion));
-		//	}
-		//}
-
+		public override StateOfCompletion StateOfCompletion
+		{
+			get
+			{
+				return StateOfCompletionHelper.Parse(GetString(XMLNames.Bus_StateOfCompletion));
+			}
+		}
 
 		protected override DataSourceType SourceType { get; }
 
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringVehicleDataProvider.cs
index 688c44111c5d7f16ae845a8911ff27ca633b8fa5..27a8eced7dd589649888c8a7e476e07745031fe0 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringVehicleDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringVehicleDataProvider.cs
@@ -129,6 +129,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering.DataProvider
 			get { return false; }
 		}
 
+		public virtual bool AirdragModifiedMultistage { get; }
+
 		public TankSystem? TankSystem
 		{
 			get {
@@ -176,6 +178,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering.DataProvider
 		public virtual Meter Width { get { return null; } }
 		public virtual Meter EntranceHeight { get { return null; } }
 		public ConsumerTechnology DoorDriveTechnology { get { return ConsumerTechnology.Unknown; } }
+		public virtual StateOfCompletion StateOfCompletion
+		{
+			get { return StateOfCompletion.unknown; }
+		}
 
 		IVehicleComponentsDeclaration IVehicleDeclarationInputData.Components
 		{
diff --git a/VectoCore/VectoCoreTest/Utils/MockDeclarationVehicleInputData.cs b/VectoCore/VectoCoreTest/Utils/MockDeclarationVehicleInputData.cs
index 9f84bbb377c64edce81199271ec44a31d1b4fae9..9e7e900db8bf6e67ff3500bd78a597ac37da3f7f 100644
--- a/VectoCore/VectoCoreTest/Utils/MockDeclarationVehicleInputData.cs
+++ b/VectoCore/VectoCoreTest/Utils/MockDeclarationVehicleInputData.cs
@@ -38,6 +38,7 @@ namespace TUGraz.VectoCore.Tests.Utils {
 		public PerSecond EngineIdleSpeed { get; }
 		public bool VocationalVehicle { get; }
 		public bool SleeperCab { get; }
+		public bool AirdragModifiedMultistage { get; }
 		public TankSystem? TankSystem { get; }
 		public IAdvancedDriverAssistantSystemDeclarationInputData ADAS { get; }
 		public bool ZeroEmissionVehicle { get; }
@@ -57,6 +58,7 @@ namespace TUGraz.VectoCore.Tests.Utils {
 		public Meter Width { get; set; }
 		public Meter EntranceHeight { get; }
 		public ConsumerTechnology DoorDriveTechnology { get; }
+		public StateOfCompletion StateOfCompletion { get; }
 		public IVehicleComponentsDeclaration Components { get { return this; } }
 		public XmlNode XMLSource { get; }
 
@@ -111,6 +113,7 @@ namespace TUGraz.VectoCore.Tests.Utils {
 		public Meter Width { get; set; }
 		public Meter EntranceHeight { get; }
 		public ConsumerTechnology DoorDriveTechnology { get; }
+		public StateOfCompletion StateOfCompletion { get; }
 		public Watt MaxNetPower2 { get; }
 		public RegistrationClass RegisteredClass { get; set; }
 		public int NumberOfPassengersUpperDeck { get; set; }
@@ -140,6 +143,7 @@ namespace TUGraz.VectoCore.Tests.Utils {
 		public PerSecond EngineIdleSpeed { get; }
 		public bool VocationalVehicle { get; }
 		public bool SleeperCab { get; }
+		public bool AirdragModifiedMultistage { get; }
 		public TankSystem? TankSystem { get; }
 
 		IAdvancedDriverAssistantSystemDeclarationInputData IVehicleDeclarationInputData.ADAS
diff --git a/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputTest.cs b/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputTest.cs
index f2c5f246d1eda15f561a8e2dfff21e4f4634b1a1..1229c746dfa545f6ef762c312539a106201a6ed8 100644
--- a/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputTest.cs
@@ -43,7 +43,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(LegislativeClass.M3, vehicle.LegislativeClass);
 			Assert.AreEqual(500, vehicle.CurbMassChassis.Value());//CurbMassChassis
 			Assert.AreEqual(3500, vehicle.GrossVehicleMassRating.Value());//TechnicalPermissibleMaximumLadenMass
-			//Assert.AreEqual(false, vehicle.AirdragModifiedMultistage);
+			Assert.AreEqual(false, vehicle.AirdragModifiedMultistage);
 			Assert.AreEqual(TankSystem.Compressed, vehicle.TankSystem);//NgTankSystem
 			Assert.AreEqual(RegistrationClass.II_III, vehicle.RegisteredClass);//ClassBus
 			Assert.AreEqual(0, vehicle.NumberOfPassengersLowerDeck);
@@ -55,8 +55,8 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(2500, vehicle.Width.Value());
 			Assert.AreEqual(2000, vehicle.EntranceHeight.Value());
 			Assert.AreEqual(ConsumerTechnology.Electrically, vehicle.DoorDriveTechnology);
-			//Assert.AreEqual(StateOfCompletion.incomplete, vehicle.StateOfCompletion);
-			
+			Assert.AreEqual(StateOfCompletion.incomplete, vehicle.StateOfCompletion);
+
 			TestADASInput(vehicle);
 			TestComponents(vehicle.Components);
 		}