diff --git a/VECTO/File Browser/FileBrowserModule.vb b/VECTO/File Browser/FileBrowserModule.vb
index ca63789858564b70c3b98e14df7a2c9cbf0c7614..7109cce430ce55f9e07136c855bd986f5066473e 100644
--- a/VECTO/File Browser/FileBrowserModule.vb	
+++ b/VECTO/File Browser/FileBrowserModule.vb	
@@ -37,6 +37,8 @@ Public Module FileBrowserModule
     Public BatteryInternalResistanceCurveFileBrowser As FileBrowser
     Public BatterySoCCurveFileBrowser As FileBrowser
 
+    Public HCUFileBrowser As FileBrowser
+
     Public EngineFileBrowser As FileBrowser
 	Public GearboxFileBrowser As FileBrowser
     Public TCUFileBrowser As FileBrowser
diff --git a/VECTO/GUI/BatteryForm.vb b/VECTO/GUI/BatteryForm.vb
index cd5fdc4262a82e3f7ace7b7e086942ebe0ce5061..3fcdcb2504933d0a68ce2435fee16b34f77f58e3 100644
--- a/VECTO/GUI/BatteryForm.vb
+++ b/VECTO/GUI/BatteryForm.vb
@@ -47,7 +47,7 @@ Public Class BatteryForm
     End Sub
 
     'Initialise.
-    Private Sub EngineFormLoad(sender As Object, e As EventArgs) Handles Me.Load
+    Private Sub BatteryFormLoad(sender As Object, e As EventArgs) Handles Me.Load
 
         ' initialize form on load - nothng to do right now
 
@@ -57,7 +57,7 @@ Public Class BatteryForm
         _changed = False
 
 
-        NewEngine()
+        NewBattery()
     End Sub
 
     'Set generic values for Declaration mode.
@@ -73,15 +73,15 @@ Public Class BatteryForm
 #Region "Toolbar"
 
     Private Sub ToolStripBtNew_Click(sender As Object, e As EventArgs) Handles ToolStripBtNew.Click
-        NewEngine()
+        NewBattery()
     End Sub
 
     Private Sub ToolStripBtOpen_Click(sender As Object, e As EventArgs) Handles ToolStripBtOpen.Click
-        If EngineFileBrowser.OpenDialog(_batteryFile) Then
+        If BatteryFileBrowser.OpenDialog(_batteryFile) Then
             Try
-                OpenBatteryFile(EngineFileBrowser.Files(0))
+                OpenBatteryFile(BatteryFileBrowser.Files(0))
             Catch ex As Exception
-                MsgBox(ex.Message, MsgBoxStyle.OkOnly, "Error loading Engine File")
+                MsgBox(ex.Message, MsgBoxStyle.OkOnly, "Error loading Battery File")
             End Try
         End If
     End Sub
@@ -130,7 +130,7 @@ Public Class BatteryForm
 #End Region
 
     'Create new empty Engine file.
-    Private Sub NewEngine()
+    Private Sub NewBattery()
 
         If ChangeCheckCancel() Then Exit Sub
 
@@ -203,11 +203,11 @@ Public Class BatteryForm
                 Return False
             End If
         End If
-        Return SaveEngineToFile(_batteryFile)
+        Return SaveBatteryToFile(_batteryFile)
     End Function
 
     'Save VENG file to given filepath. Called by SaveOrSaveAs. 
-    Private Function SaveEngineToFile(ByVal file As String) As Boolean
+    Private Function SaveBatteryToFile(ByVal file As String) As Boolean
 
         Dim battery As Battery = New Battery
         battery.FilePath = file
diff --git a/VECTO/GUI/HybridStratebyParamsForm.Designer.vb b/VECTO/GUI/HybridStratebyParamsForm.Designer.vb
new file mode 100644
index 0000000000000000000000000000000000000000..542947c114d67a0442bd3964efc404ee6acaf518
--- /dev/null
+++ b/VECTO/GUI/HybridStratebyParamsForm.Designer.vb
@@ -0,0 +1,549 @@
+' Copyright 2017 European Union.
+' Licensed under the EUPL (the 'Licence');
+'
+' * You may not use this work except in compliance with the Licence.
+' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
+' * Unless required by applicable law or agreed to in writing,
+'   software distributed under the Licence is distributed on an "AS IS" basis,
+'   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+'
+' See the LICENSE.txt for the specific language governing permissions and limitations.
+Imports System.ComponentModel
+Imports Microsoft.VisualBasic.CompilerServices
+
+<DesignerGenerated()>
+Partial Class HybridStrategyParamsForm
+    Inherits Form
+
+    'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
+    <DebuggerNonUserCode()>
+    Protected Overrides Sub Dispose(ByVal disposing As Boolean)
+        Try
+            If disposing AndAlso components IsNot Nothing Then
+                components.Dispose()
+            End If
+        Finally
+            MyBase.Dispose(disposing)
+        End Try
+    End Sub
+
+    'Wird vom Windows Form-Designer benötigt.
+    Private components As IContainer
+
+    'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich.
+    'Das Bearbeiten ist mit dem Windows Form-Designer möglich.  
+    'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
+    <DebuggerStepThrough()>
+    Private Sub InitializeComponent()
+        Me.components = New System.ComponentModel.Container()
+        Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(HybridStrategyParamsForm))
+        Me.tbEquivalenceFactor = New System.Windows.Forms.TextBox()
+        Me.lblEquivFactorUnit = New System.Windows.Forms.Label()
+        Me.lblEvquivFactor = New System.Windows.Forms.Label()
+        Me.ButCancel = New System.Windows.Forms.Button()
+        Me.ButOK = New System.Windows.Forms.Button()
+        Me.ToolStrip1 = New System.Windows.Forms.ToolStrip()
+        Me.ToolStripBtNew = New System.Windows.Forms.ToolStripButton()
+        Me.ToolStripBtOpen = New System.Windows.Forms.ToolStripButton()
+        Me.ToolStripBtSave = New System.Windows.Forms.ToolStripButton()
+        Me.ToolStripBtSaveAs = New System.Windows.Forms.ToolStripButton()
+        Me.ToolStripSeparator3 = New System.Windows.Forms.ToolStripSeparator()
+        Me.ToolStripBtSendTo = New System.Windows.Forms.ToolStripButton()
+        Me.ToolStripSeparator1 = New System.Windows.Forms.ToolStripSeparator()
+        Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton()
+        Me.StatusStrip1 = New System.Windows.Forms.StatusStrip()
+        Me.LbStatus = New System.Windows.Forms.ToolStripStatusLabel()
+        Me.PictureBox1 = New System.Windows.Forms.PictureBox()
+        Me.CmOpenFile = New System.Windows.Forms.ContextMenuStrip(Me.components)
+        Me.OpenWithToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
+        Me.ShowInFolderToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
+        Me.pnEquivFactor = New System.Windows.Forms.Panel()
+        Me.lblTitle = New System.Windows.Forms.Label()
+        Me.pnMinSoC = New System.Windows.Forms.Panel()
+        Me.lblMinSoC = New System.Windows.Forms.Label()
+        Me.lblMinSoCUnit = New System.Windows.Forms.Label()
+        Me.tbMinSoC = New System.Windows.Forms.TextBox()
+        Me.pnMaxSoC = New System.Windows.Forms.Panel()
+        Me.lblMaxSoC = New System.Windows.Forms.Label()
+        Me.lblMaxSoCUnit = New System.Windows.Forms.Label()
+        Me.tbMaxSoC = New System.Windows.Forms.TextBox()
+        Me.pnTargetSoC = New System.Windows.Forms.Panel()
+        Me.lblTargetSoC = New System.Windows.Forms.Label()
+        Me.lblTargetSoCUnit = New System.Windows.Forms.Label()
+        Me.tbTargetSoC = New System.Windows.Forms.TextBox()
+        Me.pnAuxBufferTime = New System.Windows.Forms.Panel()
+        Me.lblAuxBufferTime = New System.Windows.Forms.Label()
+        Me.lblAuxBufferTimeUnit = New System.Windows.Forms.Label()
+        Me.tbauxBufferTime = New System.Windows.Forms.TextBox()
+        Me.pnAuxBufferChgTime = New System.Windows.Forms.Panel()
+        Me.Label1 = New System.Windows.Forms.Label()
+        Me.lblAuxBufferChgTimeUnit = New System.Windows.Forms.Label()
+        Me.tbAuxBufferChargeTime = New System.Windows.Forms.TextBox()
+        Me.ToolStrip1.SuspendLayout()
+        Me.StatusStrip1.SuspendLayout()
+        CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit()
+        Me.CmOpenFile.SuspendLayout()
+        Me.pnEquivFactor.SuspendLayout()
+        Me.pnMinSoC.SuspendLayout()
+        Me.pnMaxSoC.SuspendLayout()
+        Me.pnTargetSoC.SuspendLayout()
+        Me.pnAuxBufferTime.SuspendLayout()
+        Me.pnAuxBufferChgTime.SuspendLayout()
+        Me.SuspendLayout()
+        '
+        'tbEquivalenceFactor
+        '
+        Me.tbEquivalenceFactor.Location = New System.Drawing.Point(181, 4)
+        Me.tbEquivalenceFactor.Name = "tbEquivalenceFactor"
+        Me.tbEquivalenceFactor.Size = New System.Drawing.Size(57, 20)
+        Me.tbEquivalenceFactor.TabIndex = 3
+        '
+        'lblEquivFactorUnit
+        '
+        Me.lblEquivFactorUnit.AutoSize = True
+        Me.lblEquivFactorUnit.Location = New System.Drawing.Point(244, 7)
+        Me.lblEquivFactorUnit.Name = "lblEquivFactorUnit"
+        Me.lblEquivFactorUnit.Size = New System.Drawing.Size(16, 13)
+        Me.lblEquivFactorUnit.TabIndex = 24
+        Me.lblEquivFactorUnit.Text = "[-]"
+        '
+        'lblEvquivFactor
+        '
+        Me.lblEvquivFactor.AutoSize = True
+        Me.lblEvquivFactor.Location = New System.Drawing.Point(3, 7)
+        Me.lblEvquivFactor.Name = "lblEvquivFactor"
+        Me.lblEvquivFactor.Size = New System.Drawing.Size(99, 13)
+        Me.lblEvquivFactor.TabIndex = 0
+        Me.lblEvquivFactor.Text = "Equivalence Factor"
+        '
+        'ButCancel
+        '
+        Me.ButCancel.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+        Me.ButCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel
+        Me.ButCancel.Location = New System.Drawing.Point(362, 268)
+        Me.ButCancel.Name = "ButCancel"
+        Me.ButCancel.Size = New System.Drawing.Size(75, 23)
+        Me.ButCancel.TabIndex = 13
+        Me.ButCancel.Text = "Cancel"
+        Me.ButCancel.UseVisualStyleBackColor = True
+        '
+        'ButOK
+        '
+        Me.ButOK.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+        Me.ButOK.Location = New System.Drawing.Point(281, 268)
+        Me.ButOK.Name = "ButOK"
+        Me.ButOK.Size = New System.Drawing.Size(75, 23)
+        Me.ButOK.TabIndex = 12
+        Me.ButOK.Text = "Save"
+        Me.ButOK.UseVisualStyleBackColor = True
+        '
+        'ToolStrip1
+        '
+        Me.ToolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden
+        Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripBtNew, Me.ToolStripBtOpen, Me.ToolStripBtSave, Me.ToolStripBtSaveAs, Me.ToolStripSeparator3, Me.ToolStripBtSendTo, Me.ToolStripSeparator1, Me.ToolStripButton1})
+        Me.ToolStrip1.Location = New System.Drawing.Point(0, 0)
+        Me.ToolStrip1.Name = "ToolStrip1"
+        Me.ToolStrip1.Size = New System.Drawing.Size(449, 25)
+        Me.ToolStrip1.TabIndex = 30
+        Me.ToolStrip1.Text = "ToolStrip1"
+        '
+        'ToolStripBtNew
+        '
+        Me.ToolStripBtNew.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+        Me.ToolStripBtNew.Image = Global.TUGraz.VECTO.My.Resources.Resources.blue_document_icon
+        Me.ToolStripBtNew.ImageTransparentColor = System.Drawing.Color.Magenta
+        Me.ToolStripBtNew.Name = "ToolStripBtNew"
+        Me.ToolStripBtNew.Size = New System.Drawing.Size(23, 22)
+        Me.ToolStripBtNew.Text = "ToolStripButton1"
+        Me.ToolStripBtNew.ToolTipText = "New"
+        '
+        'ToolStripBtOpen
+        '
+        Me.ToolStripBtOpen.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+        Me.ToolStripBtOpen.Image = Global.TUGraz.VECTO.My.Resources.Resources.Open_icon
+        Me.ToolStripBtOpen.ImageTransparentColor = System.Drawing.Color.Magenta
+        Me.ToolStripBtOpen.Name = "ToolStripBtOpen"
+        Me.ToolStripBtOpen.Size = New System.Drawing.Size(23, 22)
+        Me.ToolStripBtOpen.Text = "ToolStripButton1"
+        Me.ToolStripBtOpen.ToolTipText = "Open..."
+        '
+        'ToolStripBtSave
+        '
+        Me.ToolStripBtSave.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+        Me.ToolStripBtSave.Image = Global.TUGraz.VECTO.My.Resources.Resources.Actions_document_save_icon
+        Me.ToolStripBtSave.ImageTransparentColor = System.Drawing.Color.Magenta
+        Me.ToolStripBtSave.Name = "ToolStripBtSave"
+        Me.ToolStripBtSave.Size = New System.Drawing.Size(23, 22)
+        Me.ToolStripBtSave.Text = "ToolStripButton1"
+        Me.ToolStripBtSave.ToolTipText = "Save"
+        '
+        'ToolStripBtSaveAs
+        '
+        Me.ToolStripBtSaveAs.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+        Me.ToolStripBtSaveAs.Image = Global.TUGraz.VECTO.My.Resources.Resources.Actions_document_save_as_icon
+        Me.ToolStripBtSaveAs.ImageTransparentColor = System.Drawing.Color.Magenta
+        Me.ToolStripBtSaveAs.Name = "ToolStripBtSaveAs"
+        Me.ToolStripBtSaveAs.Size = New System.Drawing.Size(23, 22)
+        Me.ToolStripBtSaveAs.Text = "ToolStripButton1"
+        Me.ToolStripBtSaveAs.ToolTipText = "Save As..."
+        '
+        'ToolStripSeparator3
+        '
+        Me.ToolStripSeparator3.Name = "ToolStripSeparator3"
+        Me.ToolStripSeparator3.Size = New System.Drawing.Size(6, 25)
+        '
+        'ToolStripBtSendTo
+        '
+        Me.ToolStripBtSendTo.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+        Me.ToolStripBtSendTo.Image = Global.TUGraz.VECTO.My.Resources.Resources.export_icon
+        Me.ToolStripBtSendTo.ImageTransparentColor = System.Drawing.Color.Magenta
+        Me.ToolStripBtSendTo.Name = "ToolStripBtSendTo"
+        Me.ToolStripBtSendTo.Size = New System.Drawing.Size(23, 22)
+        Me.ToolStripBtSendTo.Text = "Send to Job Editor"
+        Me.ToolStripBtSendTo.ToolTipText = "Send to Job Editor"
+        '
+        'ToolStripSeparator1
+        '
+        Me.ToolStripSeparator1.Name = "ToolStripSeparator1"
+        Me.ToolStripSeparator1.Size = New System.Drawing.Size(6, 25)
+        '
+        'ToolStripButton1
+        '
+        Me.ToolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+        Me.ToolStripButton1.Image = Global.TUGraz.VECTO.My.Resources.Resources.Help_icon
+        Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta
+        Me.ToolStripButton1.Name = "ToolStripButton1"
+        Me.ToolStripButton1.Size = New System.Drawing.Size(23, 22)
+        Me.ToolStripButton1.Text = "Help"
+        '
+        'StatusStrip1
+        '
+        Me.StatusStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.LbStatus})
+        Me.StatusStrip1.Location = New System.Drawing.Point(0, 294)
+        Me.StatusStrip1.Name = "StatusStrip1"
+        Me.StatusStrip1.Size = New System.Drawing.Size(449, 22)
+        Me.StatusStrip1.SizingGrip = False
+        Me.StatusStrip1.TabIndex = 37
+        Me.StatusStrip1.Text = "StatusStrip1"
+        '
+        'LbStatus
+        '
+        Me.LbStatus.Name = "LbStatus"
+        Me.LbStatus.Size = New System.Drawing.Size(39, 17)
+        Me.LbStatus.Text = "Status"
+        '
+        'PictureBox1
+        '
+        Me.PictureBox1.BackColor = System.Drawing.Color.White
+        Me.PictureBox1.Image = Global.TUGraz.VECTO.My.Resources.Resources.VECTO_ENG
+        Me.PictureBox1.Location = New System.Drawing.Point(0, 28)
+        Me.PictureBox1.Name = "PictureBox1"
+        Me.PictureBox1.Size = New System.Drawing.Size(502, 40)
+        Me.PictureBox1.TabIndex = 39
+        Me.PictureBox1.TabStop = False
+        '
+        'CmOpenFile
+        '
+        Me.CmOpenFile.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.OpenWithToolStripMenuItem, Me.ShowInFolderToolStripMenuItem})
+        Me.CmOpenFile.Name = "CmOpenFile"
+        Me.CmOpenFile.Size = New System.Drawing.Size(153, 48)
+        '
+        'OpenWithToolStripMenuItem
+        '
+        Me.OpenWithToolStripMenuItem.Name = "OpenWithToolStripMenuItem"
+        Me.OpenWithToolStripMenuItem.Size = New System.Drawing.Size(152, 22)
+        Me.OpenWithToolStripMenuItem.Text = "Open with ..."
+        '
+        'ShowInFolderToolStripMenuItem
+        '
+        Me.ShowInFolderToolStripMenuItem.Name = "ShowInFolderToolStripMenuItem"
+        Me.ShowInFolderToolStripMenuItem.Size = New System.Drawing.Size(152, 22)
+        Me.ShowInFolderToolStripMenuItem.Text = "Show in Folder"
+        '
+        'pnEquivFactor
+        '
+        Me.pnEquivFactor.Controls.Add(Me.lblEvquivFactor)
+        Me.pnEquivFactor.Controls.Add(Me.lblEquivFactorUnit)
+        Me.pnEquivFactor.Controls.Add(Me.tbEquivalenceFactor)
+        Me.pnEquivFactor.Location = New System.Drawing.Point(12, 74)
+        Me.pnEquivFactor.Name = "pnEquivFactor"
+        Me.pnEquivFactor.Size = New System.Drawing.Size(288, 28)
+        Me.pnEquivFactor.TabIndex = 3
+        '
+        'lblTitle
+        '
+        Me.lblTitle.AutoSize = True
+        Me.lblTitle.BackColor = System.Drawing.Color.White
+        Me.lblTitle.Font = New System.Drawing.Font("Microsoft Sans Serif", 18.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+        Me.lblTitle.Location = New System.Drawing.Point(119, 35)
+        Me.lblTitle.Name = "lblTitle"
+        Me.lblTitle.Size = New System.Drawing.Size(307, 29)
+        Me.lblTitle.TabIndex = 48
+        Me.lblTitle.Text = "Hybrid Strategy Parameters"
+        '
+        'pnMinSoC
+        '
+        Me.pnMinSoC.Controls.Add(Me.lblMinSoC)
+        Me.pnMinSoC.Controls.Add(Me.lblMinSoCUnit)
+        Me.pnMinSoC.Controls.Add(Me.tbMinSoC)
+        Me.pnMinSoC.Location = New System.Drawing.Point(12, 104)
+        Me.pnMinSoC.Name = "pnMinSoC"
+        Me.pnMinSoC.Size = New System.Drawing.Size(288, 28)
+        Me.pnMinSoC.TabIndex = 25
+        '
+        'lblMinSoC
+        '
+        Me.lblMinSoC.AutoSize = True
+        Me.lblMinSoC.Location = New System.Drawing.Point(3, 7)
+        Me.lblMinSoC.Name = "lblMinSoC"
+        Me.lblMinSoC.Size = New System.Drawing.Size(47, 13)
+        Me.lblMinSoC.TabIndex = 0
+        Me.lblMinSoC.Text = "Min SoC"
+        '
+        'lblMinSoCUnit
+        '
+        Me.lblMinSoCUnit.AutoSize = True
+        Me.lblMinSoCUnit.Location = New System.Drawing.Point(244, 7)
+        Me.lblMinSoCUnit.Name = "lblMinSoCUnit"
+        Me.lblMinSoCUnit.Size = New System.Drawing.Size(21, 13)
+        Me.lblMinSoCUnit.TabIndex = 24
+        Me.lblMinSoCUnit.Text = "[%]"
+        '
+        'tbMinSoC
+        '
+        Me.tbMinSoC.Location = New System.Drawing.Point(181, 4)
+        Me.tbMinSoC.Name = "tbMinSoC"
+        Me.tbMinSoC.Size = New System.Drawing.Size(57, 20)
+        Me.tbMinSoC.TabIndex = 3
+        '
+        'pnMaxSoC
+        '
+        Me.pnMaxSoC.Controls.Add(Me.lblMaxSoC)
+        Me.pnMaxSoC.Controls.Add(Me.lblMaxSoCUnit)
+        Me.pnMaxSoC.Controls.Add(Me.tbMaxSoC)
+        Me.pnMaxSoC.Location = New System.Drawing.Point(12, 134)
+        Me.pnMaxSoC.Name = "pnMaxSoC"
+        Me.pnMaxSoC.Size = New System.Drawing.Size(288, 28)
+        Me.pnMaxSoC.TabIndex = 26
+        '
+        'lblMaxSoC
+        '
+        Me.lblMaxSoC.AutoSize = True
+        Me.lblMaxSoC.Location = New System.Drawing.Point(3, 7)
+        Me.lblMaxSoC.Name = "lblMaxSoC"
+        Me.lblMaxSoC.Size = New System.Drawing.Size(50, 13)
+        Me.lblMaxSoC.TabIndex = 0
+        Me.lblMaxSoC.Text = "Max SoC"
+        '
+        'lblMaxSoCUnit
+        '
+        Me.lblMaxSoCUnit.AutoSize = True
+        Me.lblMaxSoCUnit.Location = New System.Drawing.Point(244, 7)
+        Me.lblMaxSoCUnit.Name = "lblMaxSoCUnit"
+        Me.lblMaxSoCUnit.Size = New System.Drawing.Size(21, 13)
+        Me.lblMaxSoCUnit.TabIndex = 24
+        Me.lblMaxSoCUnit.Text = "[%]"
+        '
+        'tbMaxSoC
+        '
+        Me.tbMaxSoC.Location = New System.Drawing.Point(181, 4)
+        Me.tbMaxSoC.Name = "tbMaxSoC"
+        Me.tbMaxSoC.Size = New System.Drawing.Size(57, 20)
+        Me.tbMaxSoC.TabIndex = 3
+        '
+        'pnTargetSoC
+        '
+        Me.pnTargetSoC.Controls.Add(Me.lblTargetSoC)
+        Me.pnTargetSoC.Controls.Add(Me.lblTargetSoCUnit)
+        Me.pnTargetSoC.Controls.Add(Me.tbTargetSoC)
+        Me.pnTargetSoC.Location = New System.Drawing.Point(12, 164)
+        Me.pnTargetSoC.Name = "pnTargetSoC"
+        Me.pnTargetSoC.Size = New System.Drawing.Size(288, 28)
+        Me.pnTargetSoC.TabIndex = 27
+        '
+        'lblTargetSoC
+        '
+        Me.lblTargetSoC.AutoSize = True
+        Me.lblTargetSoC.Location = New System.Drawing.Point(3, 7)
+        Me.lblTargetSoC.Name = "lblTargetSoC"
+        Me.lblTargetSoC.Size = New System.Drawing.Size(61, 13)
+        Me.lblTargetSoC.TabIndex = 0
+        Me.lblTargetSoC.Text = "Target SoC"
+        '
+        'lblTargetSoCUnit
+        '
+        Me.lblTargetSoCUnit.AutoSize = True
+        Me.lblTargetSoCUnit.Location = New System.Drawing.Point(244, 7)
+        Me.lblTargetSoCUnit.Name = "lblTargetSoCUnit"
+        Me.lblTargetSoCUnit.Size = New System.Drawing.Size(21, 13)
+        Me.lblTargetSoCUnit.TabIndex = 24
+        Me.lblTargetSoCUnit.Text = "[%]"
+        '
+        'tbTargetSoC
+        '
+        Me.tbTargetSoC.Location = New System.Drawing.Point(181, 4)
+        Me.tbTargetSoC.Name = "tbTargetSoC"
+        Me.tbTargetSoC.Size = New System.Drawing.Size(57, 20)
+        Me.tbTargetSoC.TabIndex = 3
+        '
+        'pnAuxBufferTime
+        '
+        Me.pnAuxBufferTime.Controls.Add(Me.lblAuxBufferTime)
+        Me.pnAuxBufferTime.Controls.Add(Me.lblAuxBufferTimeUnit)
+        Me.pnAuxBufferTime.Controls.Add(Me.tbauxBufferTime)
+        Me.pnAuxBufferTime.Location = New System.Drawing.Point(12, 194)
+        Me.pnAuxBufferTime.Name = "pnAuxBufferTime"
+        Me.pnAuxBufferTime.Size = New System.Drawing.Size(288, 28)
+        Me.pnAuxBufferTime.TabIndex = 28
+        '
+        'lblAuxBufferTime
+        '
+        Me.lblAuxBufferTime.AutoSize = True
+        Me.lblAuxBufferTime.Location = New System.Drawing.Point(3, 7)
+        Me.lblAuxBufferTime.Name = "lblAuxBufferTime"
+        Me.lblAuxBufferTime.Size = New System.Drawing.Size(82, 13)
+        Me.lblAuxBufferTime.TabIndex = 0
+        Me.lblAuxBufferTime.Text = "Aux Buffer Time"
+        '
+        'lblAuxBufferTimeUnit
+        '
+        Me.lblAuxBufferTimeUnit.AutoSize = True
+        Me.lblAuxBufferTimeUnit.Location = New System.Drawing.Point(244, 7)
+        Me.lblAuxBufferTimeUnit.Name = "lblAuxBufferTimeUnit"
+        Me.lblAuxBufferTimeUnit.Size = New System.Drawing.Size(18, 13)
+        Me.lblAuxBufferTimeUnit.TabIndex = 24
+        Me.lblAuxBufferTimeUnit.Text = "[s]"
+        '
+        'tbauxBufferTime
+        '
+        Me.tbauxBufferTime.Location = New System.Drawing.Point(181, 4)
+        Me.tbauxBufferTime.Name = "tbauxBufferTime"
+        Me.tbauxBufferTime.Size = New System.Drawing.Size(57, 20)
+        Me.tbauxBufferTime.TabIndex = 3
+        '
+        'pnAuxBufferChgTime
+        '
+        Me.pnAuxBufferChgTime.Controls.Add(Me.Label1)
+        Me.pnAuxBufferChgTime.Controls.Add(Me.lblAuxBufferChgTimeUnit)
+        Me.pnAuxBufferChgTime.Controls.Add(Me.tbAuxBufferChargeTime)
+        Me.pnAuxBufferChgTime.Location = New System.Drawing.Point(12, 224)
+        Me.pnAuxBufferChgTime.Name = "pnAuxBufferChgTime"
+        Me.pnAuxBufferChgTime.Size = New System.Drawing.Size(288, 28)
+        Me.pnAuxBufferChgTime.TabIndex = 29
+        '
+        'Label1
+        '
+        Me.Label1.AutoSize = True
+        Me.Label1.Location = New System.Drawing.Point(3, 7)
+        Me.Label1.Name = "Label1"
+        Me.Label1.Size = New System.Drawing.Size(119, 13)
+        Me.Label1.TabIndex = 0
+        Me.Label1.Text = "Aux Buffer Charge Time"
+        '
+        'lblAuxBufferChgTimeUnit
+        '
+        Me.lblAuxBufferChgTimeUnit.AutoSize = True
+        Me.lblAuxBufferChgTimeUnit.Location = New System.Drawing.Point(244, 7)
+        Me.lblAuxBufferChgTimeUnit.Name = "lblAuxBufferChgTimeUnit"
+        Me.lblAuxBufferChgTimeUnit.Size = New System.Drawing.Size(18, 13)
+        Me.lblAuxBufferChgTimeUnit.TabIndex = 24
+        Me.lblAuxBufferChgTimeUnit.Text = "[s]"
+        '
+        'tbAuxBufferChargeTime
+        '
+        Me.tbAuxBufferChargeTime.Location = New System.Drawing.Point(181, 4)
+        Me.tbAuxBufferChargeTime.Name = "tbAuxBufferChargeTime"
+        Me.tbAuxBufferChargeTime.Size = New System.Drawing.Size(57, 20)
+        Me.tbAuxBufferChargeTime.TabIndex = 3
+        '
+        'HybridStrategyParamsForm
+        '
+        Me.AcceptButton = Me.ButOK
+        Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
+        Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
+        Me.CancelButton = Me.ButCancel
+        Me.ClientSize = New System.Drawing.Size(449, 316)
+        Me.Controls.Add(Me.pnAuxBufferChgTime)
+        Me.Controls.Add(Me.pnAuxBufferTime)
+        Me.Controls.Add(Me.pnTargetSoC)
+        Me.Controls.Add(Me.pnMaxSoC)
+        Me.Controls.Add(Me.pnMinSoC)
+        Me.Controls.Add(Me.lblTitle)
+        Me.Controls.Add(Me.pnEquivFactor)
+        Me.Controls.Add(Me.PictureBox1)
+        Me.Controls.Add(Me.StatusStrip1)
+        Me.Controls.Add(Me.ToolStrip1)
+        Me.Controls.Add(Me.ButCancel)
+        Me.Controls.Add(Me.ButOK)
+        Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
+        Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
+        Me.MaximizeBox = False
+        Me.Name = "HybridStrategyParamsForm"
+        Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide
+        Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
+        Me.Text = "Electric Energy Storage"
+        Me.ToolStrip1.ResumeLayout(False)
+        Me.ToolStrip1.PerformLayout()
+        Me.StatusStrip1.ResumeLayout(False)
+        Me.StatusStrip1.PerformLayout()
+        CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit()
+        Me.CmOpenFile.ResumeLayout(False)
+        Me.pnEquivFactor.ResumeLayout(False)
+        Me.pnEquivFactor.PerformLayout()
+        Me.pnMinSoC.ResumeLayout(False)
+        Me.pnMinSoC.PerformLayout()
+        Me.pnMaxSoC.ResumeLayout(False)
+        Me.pnMaxSoC.PerformLayout()
+        Me.pnTargetSoC.ResumeLayout(False)
+        Me.pnTargetSoC.PerformLayout()
+        Me.pnAuxBufferTime.ResumeLayout(False)
+        Me.pnAuxBufferTime.PerformLayout()
+        Me.pnAuxBufferChgTime.ResumeLayout(False)
+        Me.pnAuxBufferChgTime.PerformLayout()
+        Me.ResumeLayout(False)
+        Me.PerformLayout()
+
+    End Sub
+    Friend WithEvents tbEquivalenceFactor As TextBox
+    Friend WithEvents lblEquivFactorUnit As Label
+    Friend WithEvents lblEvquivFactor As Label
+    Friend WithEvents ButCancel As Button
+    Friend WithEvents ButOK As Button
+    Friend WithEvents ToolStrip1 As ToolStrip
+    Friend WithEvents ToolStripBtNew As ToolStripButton
+    Friend WithEvents ToolStripBtOpen As ToolStripButton
+    Friend WithEvents ToolStripBtSave As ToolStripButton
+    Friend WithEvents ToolStripBtSaveAs As ToolStripButton
+    Friend WithEvents ToolStripSeparator3 As ToolStripSeparator
+    Friend WithEvents ToolStripBtSendTo As ToolStripButton
+    Friend WithEvents StatusStrip1 As StatusStrip
+    Friend WithEvents LbStatus As ToolStripStatusLabel
+    Friend WithEvents PictureBox1 As PictureBox
+    Friend WithEvents ToolStripSeparator1 As ToolStripSeparator
+    Friend WithEvents ToolStripButton1 As ToolStripButton
+    Friend WithEvents CmOpenFile As ContextMenuStrip
+    Friend WithEvents OpenWithToolStripMenuItem As ToolStripMenuItem
+    Friend WithEvents ShowInFolderToolStripMenuItem As ToolStripMenuItem
+    Friend WithEvents pnEquivFactor As Panel
+    Friend WithEvents lblTitle As Label
+    Friend WithEvents pnMinSoC As Panel
+    Friend WithEvents lblMinSoC As Label
+    Friend WithEvents lblMinSoCUnit As Label
+    Friend WithEvents tbMinSoC As TextBox
+    Friend WithEvents pnMaxSoC As Panel
+    Friend WithEvents lblMaxSoC As Label
+    Friend WithEvents lblMaxSoCUnit As Label
+    Friend WithEvents tbMaxSoC As TextBox
+    Friend WithEvents pnTargetSoC As Panel
+    Friend WithEvents lblTargetSoC As Label
+    Friend WithEvents lblTargetSoCUnit As Label
+    Friend WithEvents tbTargetSoC As TextBox
+    Friend WithEvents pnAuxBufferTime As Panel
+    Friend WithEvents lblAuxBufferTime As Label
+    Friend WithEvents lblAuxBufferTimeUnit As Label
+    Friend WithEvents tbauxBufferTime As TextBox
+    Friend WithEvents pnAuxBufferChgTime As Panel
+    Friend WithEvents Label1 As Label
+    Friend WithEvents lblAuxBufferChgTimeUnit As Label
+    Friend WithEvents tbAuxBufferChargeTime As TextBox
+End Class
diff --git a/VECTO/GUI/HybridStratebyParamsForm.resx b/VECTO/GUI/HybridStratebyParamsForm.resx
new file mode 100644
index 0000000000000000000000000000000000000000..81623a24e36cbaf6c70822eb47f982f654db0f27
--- /dev/null
+++ b/VECTO/GUI/HybridStratebyParamsForm.resx
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="ToolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="StatusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>114, 20</value>
+  </metadata>
+  <metadata name="CmOpenFile.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>226, 18</value>
+  </metadata>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP39/QLg6NsG/v7+AgAA
+        AAAAAAAAAAAAAAAAAAAAAAAA////////////////////////////////////////////////////////
+        /////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v4B1uDQEIil
+        di319/MQ////AQAAAAAAAAAAAAAAAAAAAAD/////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
+        AP8AAAD/AAAA/wAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+
+        /gudtI5FRHEmhMbUvS7+/v4CAAAAAAAAAAAAAAAAAAAAAP////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
+        AP8AAAD/AAAA/wAAAP8AAAD/AAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAD///8B7PDpJmOJS5s4aBnEjal8Wf39/A8AAAAAAAAAAAAAAAAAAAAA/////wAAAP8AAAD/AAAA/wAA
+        AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAP7+/ga3ya0+PGsexzdnGO9Vfjut4OfcLP///wIAAAAAAAAAAAAAAAD/////AAAA/wAA
+        AP8AAAD/AAAA////////////////////////////////////////////AAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAD///8B+vv6Fn+ea3E2ZhfeN2cY/DhnGc+nvJpJ/v7+CQAAAAAAAAAAAAAAAP//
+        //8AAAD/AAAA/wAAAP8AAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/+/gLU3s0vSHQstTZmF/Y2Zhf+NmYX6G2QV4zy9fAg////AQAA
+        AAAAAAAA/////wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////AAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+DJqyilI1ZhbTNmYW/TZmF/82Zhf5P20hwMDP
+        tzj+/v4EAAAAAAAAAAD/////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////
+        //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wLr7+cpX4ZFpTVmFfA2ZhX/NmYW/zZm
+        Fv42ZhfZh6N0ZPz9/BL+/v4BAAAAAP////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
+        AP8AAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+B7TGqEI6ahnMNmcV/DZn
+        Ff82ZhX/NmYV/zVlF/RPeTOw2+TWLf7+/gIAAAAA/////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
+        AP8AAAD/AAAA/wAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wH4+vgZeppleTVm
+        FOE2ZxX+NmcV/zZnFf82ZhX/NmYV/TZmFtGhuJNO/v7+CgAAAAD/////AAAA/wAAAP8AAAD/AAAA////
+        //////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+As/b
+        yDBGcyi3NWYU9zVmFP82ZxX/NmcV/zZnFf82ZxX+NWYV7GeMT5fv8+0k////Af////8AAAD/AAAA/wAA
+        AP8AAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAD+/v4Mlq+FVDRlE9Q1ZhT9NWYU/zVmFP82ZxX/NmcV/zZnFf82ZxX7PWwdxbzMsTz+/v4F/////wAA
+        AP8AAAD/AAAA/wAAAP///////////////////////////////////////////wAAAAAAAAAAAAAAAAAA
+        AAAAAAAA////Auju5Stbg0GqNWUU8jVmFP81ZhT/NWYU/zVmFP82ZxX/NmcV/zZnFf41ZhTdgqBubfv8
+        +hX/////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////AAAAAAAA
+        AAAAAAAAAAAAAAAAAAD+/v4HscOlRThoGM41ZhT9NWYU/zVmFP81ZhT/NWYU/zVmFP82ZxX/NmcV/zVm
+        FPVLdy6z1+DQL/7+/v8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////
+        //8AAAAAAAAAAAAAAAAAAAAA////Afj59xt2l2F+NGUT4zVmFP41ZhT/NWYU/zVmFP81ZhT/NWYU/zVm
+        FP82ZxX/NmcV/TVmFdOctI1R/v7+/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
+        AP8AAAD//////wAAAAAAAAAAAAAAAAAAAAD+/v4CzdnFMURxJbo1ZhT4NWYU/zVmFP81ZhT/NWYU/zVm
+        FP81ZhT/NWYU/zVmFP82ZxX/NWYU7mKISZ/8/Pv/////////////////////////////////////////
+        ////////////////////////AAAAAAAAAAAAAAAAAAAAAP7+/gyUroNUNGUT1DVmFP01ZhT/NWYU/zVm
+        FP81ZhT/NWYU/zVmFP81ZhT/NWYU/zVmFP82ZxX8O2obybfIq0L+/v4I/v7+Av39/QL9/v0C/f79Av3+
+        /QL9/v0C/f79Av3+/QL9/v0C/f79Av3+/QL9/v0C/f79AgAAAAD///8C5uziK1mBPqs0ZRPzNWYU/zVm
+        FP81ZhT/NWYU/zVmFP81ZhT/NWYU/zVmFP81ZhT/NWYU/zZnFf41ZhThepplhNTezUPZ4tM12eLTNdni
+        0zXZ4tM12eLTNdni1DXZ4tQ12eLUNdrj1DXa49U12eLUNdrj1DXa49U1AAAAAP7+/givwqJGN2cWzjVm
+        FP01ZhT/NWYU/zVmFP81ZhT/NGYT/zVmFP41ZhT/NWYU/zVmFP81ZhT/NWYU/zZnFfg1ZhThRHImz0Rx
+        JspEcSfKRXEoykVyKMpFcinKRnMqykd0K8pIdCvKSXUsykt3LspIdCvKSXUsykt3Lsr//v8B9vj1HXSW
+        XoM0ZRPlNWYU/jVmFP81ZhT/NWYU/zVmFP82ZhX0U3w34DRlE/Q1ZhT/NWYU/zVmFP81ZhT/NWYU/zZn
+        Ff42ZxX9NmYV/TZmFv02Zhf9NmYX/TdnGP03Zxj9OWgZ/TppGv06ahv9PGwd/TppGv06ahv9PGwd/f7/
+        /gLK1sIyQnAkuzRlE/g1ZhT/NWYU/zVmFP81ZhT/NWYU+0dzKc2gt5GGP24g0zVmFP01ZhT/NWYU/zVm
+        FP81ZhT/NmcV/zZnFf82ZxX/NmYW/zZmF/82Zhf/N2cY/zdnGP84aBn/Omka/zpqG/87axz/Omka/zpq
+        G/87axz//f79DY+qflc0ZRPVNWYU/TVmFP81ZhT/NWYU/zVmFP41ZRTraY1RluLp3k1fhkWnNGUT8TVm
+        FP81ZhT/NWYU/zVmFP81ZhT/NmcV/zZnFf82ZhX/NmYW/zZmF/83Zxf/N2cY/zhoGf85aRr/Omob/ztr
+        HP85aRr/Omob/ztrHP/j6t8rVn88rDRlFPM1ZhT/NWYU/zVmFP81ZhT/NWYU/jRlE9KWr4VN/f39F5Cq
+        flU0ZRPVNWYU/jVmFP81ZhT/NWYU/zVmFP82ZxX/NmcV/zZmFf82Zhb/NmYX/zZmF/83Zxj/N2cY/zlp
+        Gv86ahv/O2sc/zlpGv86ahv/O2sc/6zAn0c3ZxbPNWYU/TVmFP81ZhT/NWYU/zVmFP81ZhT9PWwdycPS
+        ujb+/v4EwtC4Nz1sHco1ZhT9NWYU/zVmFP81ZhT/NWYU/zZnFf82ZxX/NmYV/zZmFv82Zhf/NmYX/zdn
+        GP83Zxj/OWka/zpqG/86ahv/OWka/zpqG/86ahv/cpRchjRlE+Y1ZhT+NWYU/zVmFP81ZhT/NWYU/zVm
+        FPZXgDyz6e7mLv///wPp7uYsWYE+rzVmFPQ1ZhT/NWYU/zVmFP81ZhT/NmcV/zZnFf82ZhT/NmYV/zZm
+        F/82Zhf/N2cX/zdnGP85aRr/Omob/zpqG/85aRr/Omob/zpqG/9BbyK6NGUU9jVmFP01ZhT9NWYU/TVm
+        FP01ZhT8NGUT3IGgbW78/PwW////Af39/RGJpXZiNGUT2DVmFPw1ZhT9NGUT/TVmFP02ZxX9NmcV/TZm
+        Ff02ZhX9NmYX/TZmF/03Zxf9N2cY/ThoGf06aRr9Omob/ThoGf06aRr9Omob/TZnFaE2ZxXINmcVyjZn
+        Fco2ZxXKNmcVyjZnFck4aBijr8KiNP7+/gUAAAAA/v7+A7rKrzA7ahuiNmcVyTZnFco2ZxXKN2cWyjdo
+        Fso3aBbKN2gWyjdnF8o3ZxjKOGcZyjhoGco5aBrKOmobyjtrHMo8ax3KOmobyjtrHMo8ax3KscSkKrHE
+        pDWxxKQ1scSkNbHEpDWxxKQ1scSkNbTGqCru8uwM///+AQAAAAAAAAAA8/bxC7bHqiqxxKQ1scSkNbHE
+        pDWxxKQ1scSlNbHEpTWxxKU1scSlNbHEpTWxxKU1scSmNbLEpjWyxaY1s8WnNbPFpzWyxaY1s8WnNbPF
+        pzX///8C////Av///wL///8C////Av///wL///8C////AgAAAAAAAAAAAAAAAAAAAAAAAAAA////Av//
+        /wL///8C////Av///wL///8C////Av///wL///8C////Av///wL///8C////Av///wL///8C////AgAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAA////////gAP//4AD/9+AA/+fgAP/j4AD/4+B//8HgAf/B4AH/geAB/4D
+        gAf+A4AH/AGB//wBgAP4AYAD+ACAA/gAgAPwAAAD8AB//+AAP//gAAAAwAAAAMAAAADAIAAAgHAAAIBw
+        AAAAcAAAAPgAAAD4AAD///////////////8=
+</value>
+  </data>
+</root>
\ No newline at end of file
diff --git a/VECTO/GUI/HybridStratebyParamsForm.vb b/VECTO/GUI/HybridStratebyParamsForm.vb
new file mode 100644
index 0000000000000000000000000000000000000000..ddd7d74dfb4f7993659d4f0bc9ec1fb706758b75
--- /dev/null
+++ b/VECTO/GUI/HybridStratebyParamsForm.vb
@@ -0,0 +1,355 @@
+
+Imports System.Drawing.Imaging
+Imports System.IO
+Imports System.Linq
+Imports System.Windows.Forms.DataVisualization.Charting
+Imports TUGraz.VectoCommon.InputData
+Imports TUGraz.VectoCommon.Models
+Imports TUGraz.VectoCommon.Utils
+Imports TUGraz.VectoCore.InputData.FileIO.JSON
+Imports TUGraz.VectoCore.InputData.Reader.ComponentData
+Imports TUGraz.VectoCore.Models.Declaration
+Imports TUGraz.VectoCore.Models.SimulationComponent.Data
+Imports TUGraz.VectoCore.Models.SimulationComponent.Data.Battery
+Imports TUGraz.VectoCore.Models.SimulationComponent.Data.Engine
+Imports TUGraz.VectoCore.Utils
+' Copyright 2017 European Union.
+' Licensed under the EUPL (the 'Licence');
+'
+' * You may not use this work except in compliance with the Licence.
+' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
+' * Unless required by applicable law or agreed to in writing,
+'   software distributed under the Licence is distributed on an "AS IS" basis,
+'   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+'
+' See the LICENSE.txt for the specific language governing permissions and limitations.
+
+''' <summary>
+''' Engine Editor. Open and save .VENG files.
+''' </summary>
+''' <remarks></remarks>
+Public Class HybridStrategyParamsForm
+    Private _strategyParamsFile As String = ""
+    Public AutoSendTo As Boolean = False
+    Public JobDir As String = ""
+    Private _changed As Boolean = False
+
+    Private _contextMenuFiles As String()
+
+
+
+
+    'Before closing Editor: Check if file was changed and ask to save.
+    Private Sub F_ENG_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
+        If e.CloseReason <> CloseReason.ApplicationExitCall And e.CloseReason <> CloseReason.WindowsShutDown Then
+            e.Cancel = ChangeCheckCancel()
+        End If
+    End Sub
+
+    'Initialise.
+    Private Sub EngineFormLoad(sender As Object, e As EventArgs) Handles Me.Load
+
+        ' initialize form on load - nothng to do right now
+
+        'pnInertia.Enabled = Not Cfg.DeclMode
+
+
+        _changed = False
+
+
+        NewEngine()
+    End Sub
+
+    'Set generic values for Declaration mode.
+    Private Sub DeclInit()
+
+        If Not Cfg.DeclMode Then Exit Sub
+
+
+
+    End Sub
+
+
+#Region "Toolbar"
+
+    Private Sub ToolStripBtNew_Click(sender As Object, e As EventArgs) Handles ToolStripBtNew.Click
+        NewEngine()
+    End Sub
+
+    Private Sub ToolStripBtOpen_Click(sender As Object, e As EventArgs) Handles ToolStripBtOpen.Click
+        If EngineFileBrowser.OpenDialog(_strategyParamsFile) Then
+            Try
+                OpenHybridStrategyParametersFile(EngineFileBrowser.Files(0))
+            Catch ex As Exception
+                MsgBox(ex.Message, MsgBoxStyle.OkOnly, "Error loading Engine File")
+            End Try
+        End If
+    End Sub
+
+    Private Sub ToolStripBtSave_Click(sender As Object, e As EventArgs) Handles ToolStripBtSave.Click
+        SaveOrSaveAs(False)
+    End Sub
+
+    Private Sub ToolStripBtSaveAs_Click(sender As Object, e As EventArgs) Handles ToolStripBtSaveAs.Click
+        SaveOrSaveAs(True)
+    End Sub
+
+    Private Sub ToolStripBtSendTo_Click(sender As Object, e As EventArgs) Handles ToolStripBtSendTo.Click
+
+        If ChangeCheckCancel() Then Exit Sub
+
+        If _strategyParamsFile = "" Then
+            If MsgBox("Save file now?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
+                If Not SaveOrSaveAs(True) Then Exit Sub
+            Else
+                Exit Sub
+            End If
+        End If
+
+        If Not VectoJobForm.Visible Then
+            JobDir = ""
+            VectoJobForm.Show()
+            VectoJobForm.VectoNew()
+        Else
+            VectoJobForm.WindowState = FormWindowState.Normal
+        End If
+
+        VectoJobForm.TbENG.Text = GetFilenameWithoutDirectory(_strategyParamsFile, JobDir)
+    End Sub
+
+    Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
+        If File.Exists(Path.Combine(MyAppPath, "User Manual\help.html")) Then
+            Dim defaultBrowserPath As String = BrowserUtils.GetDefaultBrowserPath()
+            Process.Start(defaultBrowserPath,
+                        String.Format("""file://{0}""", Path.Combine(MyAppPath, "User Manual\help.html#engine-editor")))
+        Else
+            MsgBox("User Manual not found!", MsgBoxStyle.Critical)
+        End If
+    End Sub
+
+#End Region
+
+    'Create new empty Engine file.
+    Private Sub NewEngine()
+
+        If ChangeCheckCancel() Then Exit Sub
+
+
+        tbEquivalenceFactor.Text = ""
+        tbMinSoC.Text = ""
+        tbMaxSoC.Text = ""
+        tbTargetSoC.Text = ""
+        tbauxBufferTime.Text = ""
+        tbAuxBufferChargeTime.Text = ""
+
+        DeclInit()
+
+        _strategyParamsFile = ""
+        Text = "Hybrid Strategy Parameters Editor"
+        LbStatus.Text = ""
+
+        _changed = False
+    End Sub
+
+    'Open VENG file
+    Public Sub OpenHybridStrategyParametersFile(file As String)
+        Dim strategyParams As IHybridStrategyParameters
+
+        If ChangeCheckCancel() Then Exit Sub
+
+        Dim inputData As IEngineeringInputDataProvider = TryCast(JSONInputDataFactory.ReadComponentData(file),
+                                                                IEngineeringInputDataProvider)
+
+        strategyParams = inputData.JobInputData.HybridStrategyParameters
+
+        If Not Cfg.DeclMode Then
+            Select Case WrongMode()
+                Case 1
+                    Close()
+                    MainForm.RbDecl.Checked = Not MainForm.RbDecl.Checked
+                    MainForm.OpenVectoFile(file)
+                Case -1
+                    Exit Sub
+            End Select
+        End If
+
+        Dim basePath As String = Path.GetDirectoryName(file)
+
+        tbEquivalenceFactor.Text = strategyParams.EquivalenceFactor.ToGUIFormat()
+
+        tbEquivalenceFactor.Text = strategyParams.EquivalenceFactor.ToGUIFormat()
+        tbMinSoC.Text = (strategyParams.MinSoC * 100).ToGUIFormat()
+        tbMaxSoC.Text = (strategyParams.MaxSoC * 100).ToGUIFormat()
+        tbTargetSoC.Text = (strategyParams.MaxSoC * 100).ToGUIFormat()
+
+        'tbAuxBufferChargeTime = strategyParams.
+        'tbauxBufferTime = strategyParams.
+
+        DeclInit()
+
+        BatteryFileBrowser.UpdateHistory(file)
+        Text = GetFilenameWithoutPath(file, True)
+        LbStatus.Text = ""
+        _strategyParamsFile = file
+        Activate()
+
+        _changed = False
+    End Sub
+
+    'Save or Save As function = true if file is saved
+    Private Function SaveOrSaveAs(ByVal saveAs As Boolean) As Boolean
+        If _strategyParamsFile = "" Or saveAs Then
+            If HCUFileBrowser.SaveDialog(_strategyParamsFile) Then
+                _strategyParamsFile = HCUFileBrowser.Files(0)
+            Else
+                Return False
+            End If
+        End If
+        Return SaveParamsToFile(_strategyParamsFile)
+    End Function
+
+    'Save VENG file to given filepath. Called by SaveOrSaveAs. 
+    Private Function SaveParamsToFile(ByVal file As String) As Boolean
+
+        Dim strategyParams As HybridStrategyParams = New HybridStrategyParams
+        strategyParams.FilePath = file
+
+
+        strategyParams.EquivalenceFactor = tbEquivalenceFactor.Text.ToDouble(0)
+
+        strategyParams.MinSoC = tbMinSoC.Text.ToDouble(0) / 100
+        strategyParams.MaxSoC = tbMaxSoC.Text.ToDouble(0) / 100
+        strategyParams.TargetSoC = tbTargetSoC.Text.ToDouble(0) / 100
+
+        strategyParams.AuxBufferTime = tbauxBufferTime.Text.ToDouble(0)
+        strategyParams.AuxBufferChgTime = tbAuxBufferChargeTime.Text.ToDouble(0)
+
+        If Not strategyParams.SaveFile Then
+            MsgBox("Cannot save to " & file, MsgBoxStyle.Critical)
+            Return False
+        End If
+
+        HCUFileBrowser.UpdateHistory(file)
+        Text = GetFilenameWithoutPath(file, True)
+        LbStatus.Text = ""
+
+        _changed = False
+
+        Return True
+    End Function
+
+
+#Region "Track changes"
+
+    'Flags current file as modified.
+    Private Sub Change()
+        If Not _changed Then
+            LbStatus.Text = "Unsaved changes in current file"
+            _changed = True
+        End If
+    End Sub
+
+    ' "Save changes ?" .... Returns True if User aborts
+    Private Function ChangeCheckCancel() As Boolean
+
+        If _changed Then
+            Select Case MsgBox("Save changes ?", MsgBoxStyle.YesNoCancel)
+                Case MsgBoxResult.Yes
+                    Return Not SaveOrSaveAs(False)
+                Case MsgBoxResult.Cancel
+                    Return True
+                Case Else 'MsgBoxResult.No
+                    _changed = False
+                    Return False
+            End Select
+
+        Else
+
+            Return False
+
+        End If
+    End Function
+
+
+
+
+
+
+#End Region
+
+
+
+    'Save and close
+    Private Sub ButOK_Click(sender As Object, e As EventArgs) Handles ButOK.Click
+        If SaveOrSaveAs(False) Then Close()
+    End Sub
+
+    'Close without saving (see FormClosing Event)
+    Private Sub ButCancel_Click(sender As Object, e As EventArgs) Handles ButCancel.Click
+        Close()
+    End Sub
+
+
+#Region "Open File Context Menu"
+
+
+    Private Sub OpenFiles(ParamArray files() As String)
+
+        If files.Length = 0 Then Exit Sub
+
+        _contextMenuFiles = files
+
+        OpenWithToolStripMenuItem.Text = "Open with " & Cfg.OpenCmdName
+
+        CmOpenFile.Show(Windows.Forms.Cursor.Position)
+    End Sub
+
+    Private Sub OpenWithToolStripMenuItem_Click(sender As Object, e As EventArgs) _
+        Handles OpenWithToolStripMenuItem.Click
+        If Not FileOpenAlt(_contextMenuFiles(0)) Then MsgBox("Failed to open file!")
+    End Sub
+
+    Private Sub ShowInFolderToolStripMenuItem_Click(sender As Object, e As EventArgs) _
+        Handles ShowInFolderToolStripMenuItem.Click
+        If File.Exists(_contextMenuFiles(0)) Then
+            Try
+                Process.Start("explorer", "/select,""" & _contextMenuFiles(0) & "")
+            Catch ex As Exception
+                MsgBox("Failed to open file!")
+            End Try
+        Else
+            MsgBox("File not found!")
+        End If
+    End Sub
+
+    Private Sub tbMinSoC_TextChanged(sender As Object, e As EventArgs) Handles tbMinSoC.TextChanged
+        Change()
+    End Sub
+
+    Private Sub tbMaxSoC_TextChanged(sender As Object, e As EventArgs) Handles tbMaxSoC.TextChanged
+        Change()
+    End Sub
+
+    Private Sub tbTargetSoC_TextChanged(sender As Object, e As EventArgs) Handles tbTargetSoC.TextChanged
+        Change()
+    End Sub
+
+    Private Sub tbauxBufferTime_TextChanged(sender As Object, e As EventArgs) Handles tbauxBufferTime.TextChanged
+        Change()
+    End Sub
+
+    Private Sub tbAuxBufferChargeTime_TextChanged(sender As Object, e As EventArgs) Handles tbAuxBufferChargeTime.TextChanged
+        Change()
+    End Sub
+
+    Private Sub tbEquivalenceFactor_TextChanged(sender As Object, e As EventArgs) Handles tbEquivalenceFactor.TextChanged
+        Change()
+    End Sub
+
+#End Region
+
+
+
+
+
+End Class
diff --git a/VECTO/GUI/MainForm.vb b/VECTO/GUI/MainForm.vb
index 7253a319501210e95b96940ca42ef8d1578702bd..6b3981cd79a5923eb97f807cb0d96d15d50a3235 100644
--- a/VECTO/GUI/MainForm.vb
+++ b/VECTO/GUI/MainForm.vb
@@ -149,6 +149,7 @@ Imports TUGraz.VectoCore.Utils
         ElectricMachineDragTorqueFileBrowser = New FileBrowser("vemd")
         ElectricMachineMaxTorqueFileBrowser = New FileBrowser("vemp")
         ElectricMachineEfficiencyMapFileBrowser = New FileBrowser("vemo")
+        HCUFileBrowser = New FileBrowser("vhctl")
 
         BatteryInternalResistanceCurveFileBrowser = New FileBrowser("vbatv")
         BatterySoCCurveFileBrowser = New FileBrowser("vbatr")
@@ -187,6 +188,7 @@ Imports TUGraz.VectoCore.Utils
 
         BatteryInternalResistanceCurveFileBrowser.Extensions = New String() {"vbatv"}
         BatterySoCCurveFileBrowser.Extensions = New String() {"vbatr"}
+        HCUFileBrowser.Extensions = New String() {"vhctl"}
 
         ModalResultsFileBrowser.Extensions = New String() {"vmod"}
     End Sub
diff --git a/VECTO/GUI/VectoJobForm.Designer.vb b/VECTO/GUI/VectoJobForm.Designer.vb
index 23ea61842079051350121f4dedae05fdaa0c7ef5..f5bdc3f3369a42897968c51b62a8ebb73fc60c6d 100644
--- a/VECTO/GUI/VectoJobForm.Designer.vb
+++ b/VECTO/GUI/VectoJobForm.Designer.vb
@@ -28,18 +28,22 @@ Partial Class VectoJobForm
         Me.components = New System.ComponentModel.Container()
         Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(VectoJobForm))
         Me.TabPgGen = New System.Windows.Forms.TabPage()
-        Me.TbShiftStrategyParams = New System.Windows.Forms.TextBox()
-        Me.BtnShiftParamsForm = New System.Windows.Forms.Button()
-        Me.BtnShiftStrategyParams = New System.Windows.Forms.Button()
-        Me.TbGBX = New System.Windows.Forms.TextBox()
-        Me.TbENG = New System.Windows.Forms.TextBox()
-        Me.TbVEH = New System.Windows.Forms.TextBox()
-        Me.ButOpenGBX = New System.Windows.Forms.Button()
-        Me.ButOpenENG = New System.Windows.Forms.Button()
+        Me.pnVehicle = New System.Windows.Forms.Panel()
         Me.ButOpenVEH = New System.Windows.Forms.Button()
         Me.ButtonVEH = New System.Windows.Forms.Button()
-        Me.ButtonGBX = New System.Windows.Forms.Button()
+        Me.TbVEH = New System.Windows.Forms.TextBox()
+        Me.pnEngine = New System.Windows.Forms.Panel()
+        Me.ButOpenENG = New System.Windows.Forms.Button()
         Me.ButtonMAP = New System.Windows.Forms.Button()
+        Me.TbENG = New System.Windows.Forms.TextBox()
+        Me.pnGearbox = New System.Windows.Forms.Panel()
+        Me.ButOpenGBX = New System.Windows.Forms.Button()
+        Me.ButtonGBX = New System.Windows.Forms.Button()
+        Me.TbGBX = New System.Windows.Forms.TextBox()
+        Me.pnShiftParams = New System.Windows.Forms.Panel()
+        Me.BtnShiftParamsForm = New System.Windows.Forms.Button()
+        Me.TbShiftStrategyParams = New System.Windows.Forms.TextBox()
+        Me.BtnShiftStrategyParams = New System.Windows.Forms.Button()
         Me.GrCycles = New System.Windows.Forms.GroupBox()
         Me.Label2 = New System.Windows.Forms.Label()
         Me.LvCycles = New System.Windows.Forms.ListView()
@@ -181,11 +185,16 @@ Partial Class VectoJobForm
         Me.lblEngineCharacteristics = New System.Windows.Forms.Label()
         Me.lblTitle = New System.Windows.Forms.Label()
         Me.pnJobInfo = New System.Windows.Forms.Panel()
-        Me.pnShiftParams = New System.Windows.Forms.Panel()
-        Me.pnGearbox = New System.Windows.Forms.Panel()
-        Me.pnEngine = New System.Windows.Forms.Panel()
-        Me.pnVehicle = New System.Windows.Forms.Panel()
+        Me.pnHybridStrategy = New System.Windows.Forms.Panel()
+        Me.btnOpenHybridStrategyParameters = New System.Windows.Forms.Button()
+        Me.tbHybridStrategyParams = New System.Windows.Forms.TextBox()
+        Me.btnBrowseHybridStrategyParams = New System.Windows.Forms.Button()
+        Me.Label46 = New System.Windows.Forms.Label()
         Me.TabPgGen.SuspendLayout()
+        Me.pnVehicle.SuspendLayout()
+        Me.pnEngine.SuspendLayout()
+        Me.pnGearbox.SuspendLayout()
+        Me.pnShiftParams.SuspendLayout()
         Me.GrCycles.SuspendLayout()
         Me.GrAuxMech.SuspendLayout()
         CType(Me.picAuxInfo, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -211,14 +220,12 @@ Partial Class VectoJobForm
         CType(Me.PicVehicle, System.ComponentModel.ISupportInitialize).BeginInit()
         CType(Me.PicBox, System.ComponentModel.ISupportInitialize).BeginInit()
         Me.pnJobInfo.SuspendLayout()
-        Me.pnShiftParams.SuspendLayout()
-        Me.pnGearbox.SuspendLayout()
-        Me.pnEngine.SuspendLayout()
-        Me.pnVehicle.SuspendLayout()
+        Me.pnHybridStrategy.SuspendLayout()
         Me.SuspendLayout()
         '
         'TabPgGen
         '
+        Me.TabPgGen.Controls.Add(Me.pnHybridStrategy)
         Me.TabPgGen.Controls.Add(Me.pnVehicle)
         Me.TabPgGen.Controls.Add(Me.pnEngine)
         Me.TabPgGen.Controls.Add(Me.pnGearbox)
@@ -231,53 +238,36 @@ Partial Class VectoJobForm
         Me.TabPgGen.Text = "General"
         Me.TabPgGen.UseVisualStyleBackColor = True
         '
-        'TbShiftStrategyParams
-        '
-        Me.TbShiftStrategyParams.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
-            Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
-        Me.TbShiftStrategyParams.Location = New System.Drawing.Point(81, 3)
-        Me.TbShiftStrategyParams.Name = "TbShiftStrategyParams"
-        Me.TbShiftStrategyParams.Size = New System.Drawing.Size(406, 20)
-        Me.TbShiftStrategyParams.TabIndex = 12
-        '
-        'BtnShiftParamsForm
-        '
-        Me.BtnShiftParamsForm.Location = New System.Drawing.Point(3, 3)
-        Me.BtnShiftParamsForm.Name = "BtnShiftParamsForm"
-        Me.BtnShiftParamsForm.Size = New System.Drawing.Size(72, 21)
-        Me.BtnShiftParamsForm.TabIndex = 11
-        Me.BtnShiftParamsForm.TabStop = False
-        Me.BtnShiftParamsForm.Text = "Shift Parameters"
-        Me.BtnShiftParamsForm.UseVisualStyleBackColor = True
-        '
-        'BtnShiftStrategyParams
+        'pnVehicle
         '
-        Me.BtnShiftStrategyParams.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
-        Me.BtnShiftStrategyParams.Image = CType(resources.GetObject("BtnShiftStrategyParams.Image"), System.Drawing.Image)
-        Me.BtnShiftStrategyParams.Location = New System.Drawing.Point(489, 1)
-        Me.BtnShiftStrategyParams.Name = "BtnShiftStrategyParams"
-        Me.BtnShiftStrategyParams.Size = New System.Drawing.Size(24, 24)
-        Me.BtnShiftStrategyParams.TabIndex = 13
-        Me.BtnShiftStrategyParams.TabStop = False
-        Me.BtnShiftStrategyParams.UseVisualStyleBackColor = True
+        Me.pnVehicle.Controls.Add(Me.ButOpenVEH)
+        Me.pnVehicle.Controls.Add(Me.ButtonVEH)
+        Me.pnVehicle.Controls.Add(Me.TbVEH)
+        Me.pnVehicle.Location = New System.Drawing.Point(4, 7)
+        Me.pnVehicle.Name = "pnVehicle"
+        Me.pnVehicle.Size = New System.Drawing.Size(518, 27)
+        Me.pnVehicle.TabIndex = 17
         '
-        'TbGBX
+        'ButOpenVEH
         '
-        Me.TbGBX.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
-            Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
-        Me.TbGBX.Location = New System.Drawing.Point(82, 3)
-        Me.TbGBX.Name = "TbGBX"
-        Me.TbGBX.Size = New System.Drawing.Size(404, 20)
-        Me.TbGBX.TabIndex = 7
+        Me.ButOpenVEH.Location = New System.Drawing.Point(4, 3)
+        Me.ButOpenVEH.Name = "ButOpenVEH"
+        Me.ButOpenVEH.Size = New System.Drawing.Size(72, 21)
+        Me.ButOpenVEH.TabIndex = 0
+        Me.ButOpenVEH.TabStop = False
+        Me.ButOpenVEH.Text = "Vehicle"
+        Me.ButOpenVEH.UseVisualStyleBackColor = True
         '
-        'TbENG
+        'ButtonVEH
         '
-        Me.TbENG.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
-            Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
-        Me.TbENG.Location = New System.Drawing.Point(82, 3)
-        Me.TbENG.Name = "TbENG"
-        Me.TbENG.Size = New System.Drawing.Size(404, 20)
-        Me.TbENG.TabIndex = 4
+        Me.ButtonVEH.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+        Me.ButtonVEH.Image = CType(resources.GetObject("ButtonVEH.Image"), System.Drawing.Image)
+        Me.ButtonVEH.Location = New System.Drawing.Point(492, 2)
+        Me.ButtonVEH.Name = "ButtonVEH"
+        Me.ButtonVEH.Size = New System.Drawing.Size(24, 24)
+        Me.ButtonVEH.TabIndex = 2
+        Me.ButtonVEH.TabStop = False
+        Me.ButtonVEH.UseVisualStyleBackColor = True
         '
         'TbVEH
         '
@@ -288,15 +278,15 @@ Partial Class VectoJobForm
         Me.TbVEH.Size = New System.Drawing.Size(404, 20)
         Me.TbVEH.TabIndex = 1
         '
-        'ButOpenGBX
+        'pnEngine
         '
-        Me.ButOpenGBX.Location = New System.Drawing.Point(4, 3)
-        Me.ButOpenGBX.Name = "ButOpenGBX"
-        Me.ButOpenGBX.Size = New System.Drawing.Size(72, 21)
-        Me.ButOpenGBX.TabIndex = 6
-        Me.ButOpenGBX.TabStop = False
-        Me.ButOpenGBX.Text = "Gearbox"
-        Me.ButOpenGBX.UseVisualStyleBackColor = True
+        Me.pnEngine.Controls.Add(Me.ButOpenENG)
+        Me.pnEngine.Controls.Add(Me.ButtonMAP)
+        Me.pnEngine.Controls.Add(Me.TbENG)
+        Me.pnEngine.Location = New System.Drawing.Point(4, 37)
+        Me.pnEngine.Name = "pnEngine"
+        Me.pnEngine.Size = New System.Drawing.Size(519, 27)
+        Me.pnEngine.TabIndex = 16
         '
         'ButOpenENG
         '
@@ -308,26 +298,45 @@ Partial Class VectoJobForm
         Me.ButOpenENG.Text = "Engine"
         Me.ButOpenENG.UseVisualStyleBackColor = True
         '
-        'ButOpenVEH
+        'ButtonMAP
         '
-        Me.ButOpenVEH.Location = New System.Drawing.Point(4, 3)
-        Me.ButOpenVEH.Name = "ButOpenVEH"
-        Me.ButOpenVEH.Size = New System.Drawing.Size(72, 21)
-        Me.ButOpenVEH.TabIndex = 0
-        Me.ButOpenVEH.TabStop = False
-        Me.ButOpenVEH.Text = "Vehicle"
-        Me.ButOpenVEH.UseVisualStyleBackColor = True
+        Me.ButtonMAP.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+        Me.ButtonMAP.Image = CType(resources.GetObject("ButtonMAP.Image"), System.Drawing.Image)
+        Me.ButtonMAP.Location = New System.Drawing.Point(492, 1)
+        Me.ButtonMAP.Name = "ButtonMAP"
+        Me.ButtonMAP.Size = New System.Drawing.Size(24, 24)
+        Me.ButtonMAP.TabIndex = 5
+        Me.ButtonMAP.TabStop = False
+        Me.ButtonMAP.UseVisualStyleBackColor = True
         '
-        'ButtonVEH
+        'TbENG
         '
-        Me.ButtonVEH.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
-        Me.ButtonVEH.Image = CType(resources.GetObject("ButtonVEH.Image"), System.Drawing.Image)
-        Me.ButtonVEH.Location = New System.Drawing.Point(492, 2)
-        Me.ButtonVEH.Name = "ButtonVEH"
-        Me.ButtonVEH.Size = New System.Drawing.Size(24, 24)
-        Me.ButtonVEH.TabIndex = 2
-        Me.ButtonVEH.TabStop = False
-        Me.ButtonVEH.UseVisualStyleBackColor = True
+        Me.TbENG.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+            Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+        Me.TbENG.Location = New System.Drawing.Point(82, 3)
+        Me.TbENG.Name = "TbENG"
+        Me.TbENG.Size = New System.Drawing.Size(404, 20)
+        Me.TbENG.TabIndex = 4
+        '
+        'pnGearbox
+        '
+        Me.pnGearbox.Controls.Add(Me.ButOpenGBX)
+        Me.pnGearbox.Controls.Add(Me.ButtonGBX)
+        Me.pnGearbox.Controls.Add(Me.TbGBX)
+        Me.pnGearbox.Location = New System.Drawing.Point(3, 66)
+        Me.pnGearbox.Name = "pnGearbox"
+        Me.pnGearbox.Size = New System.Drawing.Size(517, 28)
+        Me.pnGearbox.TabIndex = 15
+        '
+        'ButOpenGBX
+        '
+        Me.ButOpenGBX.Location = New System.Drawing.Point(4, 3)
+        Me.ButOpenGBX.Name = "ButOpenGBX"
+        Me.ButOpenGBX.Size = New System.Drawing.Size(72, 21)
+        Me.ButOpenGBX.TabIndex = 6
+        Me.ButOpenGBX.TabStop = False
+        Me.ButOpenGBX.Text = "Gearbox"
+        Me.ButOpenGBX.UseVisualStyleBackColor = True
         '
         'ButtonGBX
         '
@@ -340,16 +349,54 @@ Partial Class VectoJobForm
         Me.ButtonGBX.TabStop = False
         Me.ButtonGBX.UseVisualStyleBackColor = True
         '
-        'ButtonMAP
+        'TbGBX
         '
-        Me.ButtonMAP.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
-        Me.ButtonMAP.Image = CType(resources.GetObject("ButtonMAP.Image"), System.Drawing.Image)
-        Me.ButtonMAP.Location = New System.Drawing.Point(492, 1)
-        Me.ButtonMAP.Name = "ButtonMAP"
-        Me.ButtonMAP.Size = New System.Drawing.Size(24, 24)
-        Me.ButtonMAP.TabIndex = 5
-        Me.ButtonMAP.TabStop = False
-        Me.ButtonMAP.UseVisualStyleBackColor = True
+        Me.TbGBX.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+            Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+        Me.TbGBX.Location = New System.Drawing.Point(82, 3)
+        Me.TbGBX.Name = "TbGBX"
+        Me.TbGBX.Size = New System.Drawing.Size(404, 20)
+        Me.TbGBX.TabIndex = 7
+        '
+        'pnShiftParams
+        '
+        Me.pnShiftParams.Controls.Add(Me.BtnShiftParamsForm)
+        Me.pnShiftParams.Controls.Add(Me.TbShiftStrategyParams)
+        Me.pnShiftParams.Controls.Add(Me.BtnShiftStrategyParams)
+        Me.pnShiftParams.Location = New System.Drawing.Point(4, 96)
+        Me.pnShiftParams.Name = "pnShiftParams"
+        Me.pnShiftParams.Size = New System.Drawing.Size(516, 26)
+        Me.pnShiftParams.TabIndex = 14
+        '
+        'BtnShiftParamsForm
+        '
+        Me.BtnShiftParamsForm.Location = New System.Drawing.Point(3, 3)
+        Me.BtnShiftParamsForm.Name = "BtnShiftParamsForm"
+        Me.BtnShiftParamsForm.Size = New System.Drawing.Size(72, 21)
+        Me.BtnShiftParamsForm.TabIndex = 11
+        Me.BtnShiftParamsForm.TabStop = False
+        Me.BtnShiftParamsForm.Text = "Shift Parameters"
+        Me.BtnShiftParamsForm.UseVisualStyleBackColor = True
+        '
+        'TbShiftStrategyParams
+        '
+        Me.TbShiftStrategyParams.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+            Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+        Me.TbShiftStrategyParams.Location = New System.Drawing.Point(81, 3)
+        Me.TbShiftStrategyParams.Name = "TbShiftStrategyParams"
+        Me.TbShiftStrategyParams.Size = New System.Drawing.Size(406, 20)
+        Me.TbShiftStrategyParams.TabIndex = 12
+        '
+        'BtnShiftStrategyParams
+        '
+        Me.BtnShiftStrategyParams.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+        Me.BtnShiftStrategyParams.Image = CType(resources.GetObject("BtnShiftStrategyParams.Image"), System.Drawing.Image)
+        Me.BtnShiftStrategyParams.Location = New System.Drawing.Point(489, 1)
+        Me.BtnShiftStrategyParams.Name = "BtnShiftStrategyParams"
+        Me.BtnShiftStrategyParams.Size = New System.Drawing.Size(24, 24)
+        Me.BtnShiftStrategyParams.TabIndex = 13
+        Me.BtnShiftStrategyParams.TabStop = False
+        Me.BtnShiftStrategyParams.UseVisualStyleBackColor = True
         '
         'GrCycles
         '
@@ -626,13 +673,14 @@ Partial Class VectoJobForm
         Me.tpAuxiliaries.Location = New System.Drawing.Point(4, 22)
         Me.tpAuxiliaries.Name = "tpAuxiliaries"
         Me.tpAuxiliaries.Padding = New System.Windows.Forms.Padding(3)
-        Me.tpAuxiliaries.Size = New System.Drawing.Size(520, 472)
+        Me.tpAuxiliaries.Size = New System.Drawing.Size(525, 472)
         Me.tpAuxiliaries.TabIndex = 9
         Me.tpAuxiliaries.Text = "Auxiliaries"
         Me.tpAuxiliaries.UseVisualStyleBackColor = True
         '
         'gbElectricAux
         '
+        Me.gbElectricAux.Controls.Add(Me.Label46)
         Me.gbElectricAux.Controls.Add(Me.lblElAuxConstUnit)
         Me.gbElectricAux.Controls.Add(Me.tbElectricAuxConstant)
         Me.gbElectricAux.Controls.Add(Me.lblElAuxConst)
@@ -674,7 +722,7 @@ Partial Class VectoJobForm
         Me.tpCycles.Location = New System.Drawing.Point(4, 22)
         Me.tpCycles.Name = "tpCycles"
         Me.tpCycles.Padding = New System.Windows.Forms.Padding(3)
-        Me.tpCycles.Size = New System.Drawing.Size(520, 472)
+        Me.tpCycles.Size = New System.Drawing.Size(525, 472)
         Me.tpCycles.TabIndex = 10
         Me.tpCycles.Text = "Cycles"
         Me.tpCycles.UseVisualStyleBackColor = True
@@ -688,7 +736,7 @@ Partial Class VectoJobForm
         Me.TabPgDriver.Location = New System.Drawing.Point(4, 22)
         Me.TabPgDriver.Name = "TabPgDriver"
         Me.TabPgDriver.Padding = New System.Windows.Forms.Padding(3)
-        Me.TabPgDriver.Size = New System.Drawing.Size(520, 472)
+        Me.TabPgDriver.Size = New System.Drawing.Size(525, 472)
         Me.TabPgDriver.TabIndex = 7
         Me.TabPgDriver.Text = "Driver Model"
         Me.TabPgDriver.UseVisualStyleBackColor = True
@@ -1057,7 +1105,7 @@ Partial Class VectoJobForm
         Me.TabPgADAS.Controls.Add(Me.gbEngineStopStart)
         Me.TabPgADAS.Location = New System.Drawing.Point(4, 22)
         Me.TabPgADAS.Name = "TabPgADAS"
-        Me.TabPgADAS.Size = New System.Drawing.Size(520, 472)
+        Me.TabPgADAS.Size = New System.Drawing.Size(525, 472)
         Me.TabPgADAS.TabIndex = 8
         Me.TabPgADAS.Text = "ADAS Parameters"
         Me.TabPgADAS.UseVisualStyleBackColor = True
@@ -1720,45 +1768,55 @@ Partial Class VectoJobForm
         Me.pnJobInfo.Size = New System.Drawing.Size(397, 471)
         Me.pnJobInfo.TabIndex = 39
         '
-        'pnShiftParams
+        'pnHybridStrategy
         '
-        Me.pnShiftParams.Controls.Add(Me.BtnShiftParamsForm)
-        Me.pnShiftParams.Controls.Add(Me.TbShiftStrategyParams)
-        Me.pnShiftParams.Controls.Add(Me.BtnShiftStrategyParams)
-        Me.pnShiftParams.Location = New System.Drawing.Point(4, 96)
-        Me.pnShiftParams.Name = "pnShiftParams"
-        Me.pnShiftParams.Size = New System.Drawing.Size(516, 26)
-        Me.pnShiftParams.TabIndex = 14
+        Me.pnHybridStrategy.Controls.Add(Me.btnOpenHybridStrategyParameters)
+        Me.pnHybridStrategy.Controls.Add(Me.tbHybridStrategyParams)
+        Me.pnHybridStrategy.Controls.Add(Me.btnBrowseHybridStrategyParams)
+        Me.pnHybridStrategy.Location = New System.Drawing.Point(4, 125)
+        Me.pnHybridStrategy.Name = "pnHybridStrategy"
+        Me.pnHybridStrategy.Size = New System.Drawing.Size(516, 26)
+        Me.pnHybridStrategy.TabIndex = 15
         '
-        'pnGearbox
+        'btnOpenHybridStrategyParameters
         '
-        Me.pnGearbox.Controls.Add(Me.ButOpenGBX)
-        Me.pnGearbox.Controls.Add(Me.ButtonGBX)
-        Me.pnGearbox.Controls.Add(Me.TbGBX)
-        Me.pnGearbox.Location = New System.Drawing.Point(3, 66)
-        Me.pnGearbox.Name = "pnGearbox"
-        Me.pnGearbox.Size = New System.Drawing.Size(517, 28)
-        Me.pnGearbox.TabIndex = 15
+        Me.btnOpenHybridStrategyParameters.Location = New System.Drawing.Point(3, 3)
+        Me.btnOpenHybridStrategyParameters.Name = "btnOpenHybridStrategyParameters"
+        Me.btnOpenHybridStrategyParameters.Size = New System.Drawing.Size(72, 21)
+        Me.btnOpenHybridStrategyParameters.TabIndex = 11
+        Me.btnOpenHybridStrategyParameters.TabStop = False
+        Me.btnOpenHybridStrategyParameters.Text = "Hyb. Str. P."
+        Me.btnOpenHybridStrategyParameters.UseVisualStyleBackColor = True
         '
-        'pnEngine
+        'tbHybridStrategyParams
         '
-        Me.pnEngine.Controls.Add(Me.ButOpenENG)
-        Me.pnEngine.Controls.Add(Me.ButtonMAP)
-        Me.pnEngine.Controls.Add(Me.TbENG)
-        Me.pnEngine.Location = New System.Drawing.Point(4, 37)
-        Me.pnEngine.Name = "pnEngine"
-        Me.pnEngine.Size = New System.Drawing.Size(519, 27)
-        Me.pnEngine.TabIndex = 16
-        '
-        'pnVehicle
-        '
-        Me.pnVehicle.Controls.Add(Me.ButOpenVEH)
-        Me.pnVehicle.Controls.Add(Me.ButtonVEH)
-        Me.pnVehicle.Controls.Add(Me.TbVEH)
-        Me.pnVehicle.Location = New System.Drawing.Point(4, 7)
-        Me.pnVehicle.Name = "pnVehicle"
-        Me.pnVehicle.Size = New System.Drawing.Size(518, 27)
-        Me.pnVehicle.TabIndex = 17
+        Me.tbHybridStrategyParams.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+            Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+        Me.tbHybridStrategyParams.Location = New System.Drawing.Point(81, 3)
+        Me.tbHybridStrategyParams.Name = "tbHybridStrategyParams"
+        Me.tbHybridStrategyParams.Size = New System.Drawing.Size(406, 20)
+        Me.tbHybridStrategyParams.TabIndex = 12
+        '
+        'btnBrowseHybridStrategyParams
+        '
+        Me.btnBrowseHybridStrategyParams.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+        Me.btnBrowseHybridStrategyParams.Image = CType(resources.GetObject("btnBrowseHybridStrategyParams.Image"), System.Drawing.Image)
+        Me.btnBrowseHybridStrategyParams.Location = New System.Drawing.Point(489, 1)
+        Me.btnBrowseHybridStrategyParams.Name = "btnBrowseHybridStrategyParams"
+        Me.btnBrowseHybridStrategyParams.Size = New System.Drawing.Size(24, 24)
+        Me.btnBrowseHybridStrategyParams.TabIndex = 13
+        Me.btnBrowseHybridStrategyParams.TabStop = False
+        Me.btnBrowseHybridStrategyParams.UseVisualStyleBackColor = True
+        '
+        'Label46
+        '
+        Me.Label46.AutoSize = True
+        Me.Label46.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+        Me.Label46.Location = New System.Drawing.Point(235, 22)
+        Me.Label46.Name = "Label46"
+        Me.Label46.Size = New System.Drawing.Size(106, 13)
+        Me.Label46.TabIndex = 48
+        Me.Label46.Text = "(high voltage system)"
         '
         'VectoJobForm
         '
@@ -1782,6 +1840,14 @@ Partial Class VectoJobForm
         Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
         Me.Text = "Job Editor"
         Me.TabPgGen.ResumeLayout(False)
+        Me.pnVehicle.ResumeLayout(False)
+        Me.pnVehicle.PerformLayout()
+        Me.pnEngine.ResumeLayout(False)
+        Me.pnEngine.PerformLayout()
+        Me.pnGearbox.ResumeLayout(False)
+        Me.pnGearbox.PerformLayout()
+        Me.pnShiftParams.ResumeLayout(False)
+        Me.pnShiftParams.PerformLayout()
         Me.GrCycles.ResumeLayout(False)
         Me.GrCycles.PerformLayout()
         Me.GrAuxMech.ResumeLayout(False)
@@ -1821,14 +1887,8 @@ Partial Class VectoJobForm
         CType(Me.PicBox, System.ComponentModel.ISupportInitialize).EndInit()
         Me.pnJobInfo.ResumeLayout(False)
         Me.pnJobInfo.PerformLayout()
-        Me.pnShiftParams.ResumeLayout(False)
-        Me.pnShiftParams.PerformLayout()
-        Me.pnGearbox.ResumeLayout(False)
-        Me.pnGearbox.PerformLayout()
-        Me.pnEngine.ResumeLayout(False)
-        Me.pnEngine.PerformLayout()
-        Me.pnVehicle.ResumeLayout(False)
-        Me.pnVehicle.PerformLayout()
+        Me.pnHybridStrategy.ResumeLayout(False)
+        Me.pnHybridStrategy.PerformLayout()
         Me.ResumeLayout(False)
         Me.PerformLayout()
 
@@ -1992,4 +2052,9 @@ Partial Class VectoJobForm
     Friend WithEvents pnEngine As Panel
     Friend WithEvents pnGearbox As Panel
     Friend WithEvents pnShiftParams As Panel
+    Friend WithEvents pnHybridStrategy As Panel
+    Friend WithEvents btnOpenHybridStrategyParameters As Button
+    Friend WithEvents tbHybridStrategyParams As TextBox
+    Friend WithEvents btnBrowseHybridStrategyParams As Button
+    Friend WithEvents Label46 As Label
 End Class
diff --git a/VECTO/GUI/VectoJobForm.resx b/VECTO/GUI/VectoJobForm.resx
index d41812b495c35d8ffb5fea5372a8095d01ba309c..7283bc0faef8b57652feaea6766bca9d2054d232 100644
--- a/VECTO/GUI/VectoJobForm.resx
+++ b/VECTO/GUI/VectoJobForm.resx
@@ -118,6 +118,24 @@
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
   <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="btnBrowseHybridStrategyParams.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+        vAAADrwBlbxySQAAAtVJREFUOE+FkmtIk2EYhhc6zU1zyjyAlZn5Q0QS6k/EMDDSQiuzkmxM5wpEA00S
+        zTzbsozQEDUyVKjQbejUPGQSyyjUmofysFRKU/M859J5qORu77s1KX/0wPXju7/vvp4X3o/RVsHv7pDy
+        0VklwIfaCPTXCzHQEPkXn5pEUDWJNH31kRGMf4eUocvF7GAShlqjQZ6H3qZjYUICQGliVfscvc+EGmNt
+        c0hhY/kONpYMrC/cwowqiYowchcYNaKRoa7mDDyfcuFRYpdnrBsEv7S3KT8XCTkUkq/3xGOj9xrQn0Cp
+        qQrGvnJ7uJTuwK58G4VJ8GMhh25eV29Ccp0yDmvd8SZBV7UA7sW2R5wfWsO+0ApO2ewMKlibE2N11siM
+        GCt6SL7YEQtdZxxUShECq7wQ9MQLZKnTfbbcqpQJuwxLDRWsTN+EbiobuslsLBsh+eybK3j/WgBfmQeq
+        1RKcqPalAgexlYIIrNMtQAVLE1lYGs/Cd8JYJrR6SK5ovoCzjTzI1VLE9gjgVsiBYza7jJvHAhGwkpkG
+        gfZrJhZHM6D5QtBf4ed0yKSnENLEg0L3AlHKIBxq2Ik9BRy4FNrA4bFBYJlgbhCQgno4DeqhNMwPpuFb
+        TyICan3waqUF0coAHGtxpwJvuSPcJBwqYBUzwby8TUEF84OpmFOlYnYghR69XcLHUdl+RLX7I6TVc4uA
+        W8aCZZy5hhnO8KECUpzuu4Gpj8lU0FgShuIHgeAVucK/0d0k8KzgwjGXje0xZiPMS/oyGVIgxcme65jo
+        MvyBNUWhqMw/j7ryi+Dlu+KwfDcVcNNYEOfx6E2Ypq0iVKN6GYNxZRLG3iVSQXnOcRSk+EGadxK1j4Jx
+        IMsZPhXOsE+2QnPZOcPmP9MtD+d0SMPkXTVCDLdeRadciPjIg7H6V3sNXzAYtrEMjmW0udxCZFZmjLZO
+        eyX/NDkNOcG9FD9vY/yfYTB+A9kMOLKC3dXwAAAAAElFTkSuQmCC
+</value>
+  </data>
   <data name="ButtonVEH.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
@@ -238,6 +256,9 @@
   <metadata name="CmOpenFile.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>350, 15</value>
   </metadata>
+  <metadata name="ToolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>468, 15</value>
+  </metadata>
   <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>49</value>
   </metadata>
diff --git a/VECTO/GUI/VectoJobForm.vb b/VECTO/GUI/VectoJobForm.vb
index 2ed42a2e435300c77bf9b05034f3fa1cdd4b540d..945b5885a411cd36bf30ddc4af25b04fe878107b 100644
--- a/VECTO/GUI/VectoJobForm.vb
+++ b/VECTO/GUI/VectoJobForm.vb
@@ -485,6 +485,9 @@ Public Class VectoJobForm
         Else
             TbShiftStrategyParams.Text = GetRelativePath(inputData.DriverInputData.GearshiftInputData.Source, _basePath)
         End If
+        If (JobType = VectoSimulationJobType.ParallelHybridVehicle) Then
+            tbHybridStrategyParams.Text = GetRelativePath(inputData.JobInputData.HybridStrategyParameters.Source, _basePath)
+        End If
 
         'Start/Stop
         Dim driver As IDriverEngineeringInputData = inputData.DriverInputData
@@ -1138,6 +1141,7 @@ lbDlog:
         GrAuxMech.Enabled = True
         pnEngine.Enabled = True
         pnShiftParams.Enabled = True
+        pnHybridStrategy.Enabled = False
         Select Case JobType
             Case VectoSimulationJobType.ConventionalVehicle
                 gbElectricAux.Enabled = False
@@ -1149,9 +1153,8 @@ lbDlog:
                 tpAuxiliaries.Enabled = False
                 pnShiftParams.Enabled = False
             Case VectoSimulationJobType.ParallelHybridVehicle
-                pnEngine.Enabled = False
-                pnGearbox.Enabled = False
-                GrAuxMech.Enabled = False
+                ' empty line - do not fall-through
+                pnHybridStrategy.Enabled = True
             Case VectoSimulationJobType.BatteryElectricVehicle
                 pnEngine.Enabled = False
                 pnGearbox.Enabled = False
@@ -1656,6 +1659,53 @@ lbDlog:
     Private Sub VectoJobForm_HandleDestroyed(sender As Object, e As EventArgs) Handles Me.HandleDestroyed
 
     End Sub
+
+    Private Sub btnBrowseHybridStrategyParams_Click(sender As Object, e As EventArgs) Handles btnBrowseHybridStrategyParams.Click
+        If HCUFileBrowser.OpenDialog(FileRepl(tbHybridStrategyParams.Text, GetPath(VectoFile))) Then
+            tbHybridStrategyParams.Text = GetFilenameWithoutDirectory(HCUFileBrowser.Files(0), GetPath(VectoFile))
+        End If
+    End Sub
+
+    Private Sub btnOpenHybridStrategyParameters_Click(sender As Object, e As EventArgs) Handles btnOpenHybridStrategyParameters.Click
+        Dim f As String
+        f = FileRepl(tbHybridStrategyParams.Text, GetPath(VectoFile))
+
+        'Thus Veh-file is returned
+        HybridStrategyParamsForm.JobDir = GetPath(VectoFile)
+        HybridStrategyParamsForm.AutoSendTo = True
+
+        If Not Trim(f) = "" Then
+            If Not File.Exists(f) Then
+                MsgBox("File not found!")
+                Exit Sub
+            End If
+        End If
+
+        If Not HybridStrategyParamsForm.Visible Then
+            HybridStrategyParamsForm.Show()
+        Else
+            If HybridStrategyParamsForm.WindowState = FormWindowState.Minimized Then HybridStrategyParamsForm.WindowState = FormWindowState.Normal
+            HybridStrategyParamsForm.BringToFront()
+        End If
+        Dim vehicleType As VehicleCategory
+        Try
+            If Not Trim(f) = "" Then
+                Dim vehInput As IVehicleDeclarationInputData =
+                        CType(JSONInputDataFactory.ReadComponentData(FileRepl(TbVEH.Text, GetPath(VectoFile))),
+                              IEngineeringInputDataProvider).JobInputData.Vehicle
+                vehicleType = vehInput.VehicleCategory
+            End If
+
+        Catch ex As Exception
+            vehicleType = VehicleCategory.RigidTruck
+        End Try
+        Try
+            If Not Trim(f) = "" Then HybridStrategyParamsForm.OpenHybridStrategyParametersFile(f)
+        Catch ex As Exception
+            MsgBox("Failed to open Gearbox File: " + ex.Message)
+        End Try
+
+    End Sub
 End Class
 
 
diff --git a/VECTO/Input Files/Battery.vb b/VECTO/Input Files/Battery.vb
index 4a09e95b1d831b05c3315986dba984d58f1cf855..e5872052135160b61b4955acc50608ea72d46879 100644
--- a/VECTO/Input Files/Battery.vb	
+++ b/VECTO/Input Files/Battery.vb	
@@ -57,7 +57,7 @@ Public Class Battery
             Dim messages As IEnumerable(Of String) =
                     validationResults.Select(Function(r) r.ErrorMessage + String.Join(", ", r.MemberNames.Distinct()))
             MsgBox("Invalid input." + Environment.NewLine + String.Join(Environment.NewLine, messages), MsgBoxStyle.OkOnly,
-                   "Failed to save engine")
+                   "Failed to save battery")
             Return False
         End If
 
@@ -66,7 +66,7 @@ Public Class Battery
             writer.SaveBattery(Me, _filePath, Cfg.DeclMode)
 
         Catch ex As Exception
-            MsgBox("Faled to write Engine file: " + ex.Message)
+            MsgBox("Faled to write Battery file: " + ex.Message)
             Return False
         End Try
         Return True
diff --git a/VECTO/Input Files/HybridStrategyParams.vb b/VECTO/Input Files/HybridStrategyParams.vb
new file mode 100644
index 0000000000000000000000000000000000000000..02a087295cbe04b87bda554482f7696d25f51139
--- /dev/null
+++ b/VECTO/Input Files/HybridStrategyParams.vb	
@@ -0,0 +1,109 @@
+Imports System.Collections.Generic
+Imports System.ComponentModel.DataAnnotations
+Imports System.IO
+Imports System.Linq
+Imports TUGraz.VECTO.Input_Files
+Imports TUGraz.VectoCommon.InputData
+Imports TUGraz.VectoCommon.Models
+Imports TUGraz.VectoCommon.Utils
+
+Public Class HybridStrategyParams
+    Implements IHybridStrategyParameters
+
+    Private _filePath As String
+    Private _myPath As String
+
+    Public Sub New()
+        _myPath = ""
+        _filePath = ""
+
+
+
+
+        SetDefault()
+    End Sub
+
+    Private Sub SetDefault()
+
+    End Sub
+
+    Public Function SaveFile() As Boolean
+
+        Dim validationResults As IList(Of ValidationResult) =
+                Validate(If(Cfg.DeclMode, ExecutionMode.Declaration, ExecutionMode.Engineering), Nothing, False)
+
+        If validationResults.Count > 0 Then
+            Dim messages As IEnumerable(Of String) =
+                    validationResults.Select(Function(r) r.ErrorMessage + String.Join(", ", r.MemberNames.Distinct()))
+            MsgBox("Invalid input." + Environment.NewLine + String.Join(Environment.NewLine, messages), MsgBoxStyle.OkOnly,
+                   "Failed to save strategy parameters")
+            Return False
+        End If
+
+        Try
+            Dim writer As JSONFileWriter = New JSONFileWriter()
+            writer.SaveStrategyParameters(Me, _filePath, Cfg.DeclMode)
+
+        Catch ex As Exception
+            MsgBox("Faled to write Strategy Parameters file: " + ex.Message)
+            Return False
+        End Try
+        Return True
+    End Function
+
+    Public Property FilePath() As String
+        Get
+            Return _filePath
+        End Get
+        Set(ByVal value As String)
+            _filePath = value
+            If _filePath = "" Then
+                _myPath = ""
+            Else
+                _myPath = Path.GetDirectoryName(_filePath) & "\"
+            End If
+        End Set
+    End Property
+
+    Public Property EquivalenceFactor As Double
+
+    Public Property MinSoC As Double
+
+    Public Property MaxSoC As Double
+
+    Public Property TargetSoC As Double
+
+    Public ReadOnly Property Source As String Implements IHybridStrategyParameters.Source
+        Get
+            Return FilePath
+        End Get
+    End Property
+
+    Public Property AuxBufferTime As Double
+
+    Public Property AuxBufferChgTime As Double
+
+    Private ReadOnly Property IHybridStrategyParameters_EquivalenceFactor As Double Implements IHybridStrategyParameters.EquivalenceFactor
+        Get
+            Throw New NotImplementedException()
+        End Get
+    End Property
+
+    Private ReadOnly Property IHybridStrategyParameters_MinSoC As Double Implements IHybridStrategyParameters.MinSoC
+        Get
+            Throw New NotImplementedException()
+        End Get
+    End Property
+
+    Private ReadOnly Property IHybridStrategyParameters_MaxSoC As Double Implements IHybridStrategyParameters.MaxSoC
+        Get
+            Throw New NotImplementedException()
+        End Get
+    End Property
+
+    Private ReadOnly Property IHybridStrategyParameters_TargetSoC As Double Implements IHybridStrategyParameters.TargetSoC
+        Get
+            Throw New NotImplementedException()
+        End Get
+    End Property
+End Class
\ No newline at end of file
diff --git a/VECTO/VECTO.vbproj b/VECTO/VECTO.vbproj
index 2141c4cb881dfff3f8a3d0b0e20d0f964798a847..46355be9b3bb5ea7e6815e5fc0bde99074978eaa 100644
--- a/VECTO/VECTO.vbproj
+++ b/VECTO/VECTO.vbproj
@@ -223,6 +223,12 @@
     <Compile Include="BusAuxiliaries\Util\DeleteCell.vb" />
     <Compile Include="BusAuxiliaries\Util\DeleteColumn.vb" />
     <Compile Include="BusAuxiliaries\Util\SIConvert.vb" />
+    <Compile Include="GUI\HybridStratebyParamsForm.Designer.vb">
+      <DependentUpon>HybridStratebyParamsForm.vb</DependentUpon>
+    </Compile>
+    <Compile Include="GUI\HybridStratebyParamsForm.vb">
+      <SubType>Form</SubType>
+    </Compile>
     <Compile Include="GUI\BatteryForm.Designer.vb">
       <DependentUpon>BatteryForm.vb</DependentUpon>
     </Compile>
@@ -328,6 +334,7 @@
     <Compile Include="File Browser\FileBrowserFavoritesDialog.vb">
       <SubType>Form</SubType>
     </Compile>
+    <Compile Include="Input Files\HybridStrategyParams.vb" />
     <Compile Include="Input Files\MockComponents.vb" />
     <Compile Include="Input Files\MockVehicleInputData.vb" />
     <Compile Include="Input Files\VectoEPTPJob.vb" />
@@ -409,6 +416,9 @@
     <EmbeddedResource Include="File Browser\FileBrowserFavoritesDialog.resx">
       <DependentUpon>FileBrowserFavoritesDialog.vb</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="GUI\HybridStratebyParamsForm.resx">
+      <DependentUpon>HybridStratebyParamsForm.vb</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="GUI\BatteryForm.resx">
       <DependentUpon>BatteryForm.vb</DependentUpon>
     </EmbeddedResource>
diff --git a/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs b/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs
index c27e8d22db0b0fa1633271f91a3f54a38d9648ff..bf982d1eb25e4f7c684b5b609e80c6ec277a5b17 100644
--- a/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs
+++ b/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs
@@ -76,7 +76,9 @@ namespace TUGraz.VectoCommon.InputData
 		double MaxSoC { get; }
 
 		double TargetSoC { get; }
-    }
+
+		string Source { get;  }
+	}
 
 	public interface IVehicleEngineeringInputData : IVehicleDeclarationInputData
 	{
diff --git a/VectoCore/VectoCore/Configuration/Constants.cs b/VectoCore/VectoCore/Configuration/Constants.cs
index dcbc86c3a796ecd98bf530f636a6dba862ccce03..02604d29985509944fca2d24ff761a5e45fc8247 100644
--- a/VectoCore/VectoCore/Configuration/Constants.cs
+++ b/VectoCore/VectoCore/Configuration/Constants.cs
@@ -244,6 +244,8 @@ namespace TUGraz.VectoCore.Configuration
 			public const string CycleFile = ".vdri";
 
 			public const string DriverAccelerationCurve = ".vacc";
+
+			public const string HybridStrategyParameters = ".vhctl";
 		}
 
 		public static class SimulationSettings
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
index be8e87c8f403b17eb1ecc98f8519068ca7602bef..6dde8c98f54ab8e94398bed470ec5a791d0c0b1c 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
@@ -89,6 +89,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 				case Constants.FileExtensions.ElectricMotorFile:
 					tmp = JSONInputDataFactory.ReadElectricMotorData(filename, tolerateMissing);
 					break;
+                case Constants.FileExtensions.HybridStrategyParameters:
+					tmp = JSONInputDataFactory.ReadHybridStrategyParameters(filename, tolerateMissing);
+					break;
 			}
 
 			tmp.Switch()
@@ -105,7 +108,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 				.If<IAxlesDeclarationInputData>(c => _axleWheelsDecl = c)
 				.If<IAxlesEngineeringInputData>(c => _axleWheelsEng = c)
 				.If<IBatteryPackEngineeringInputData>(c => Battery = c)
-				.If<IElectricMotorEngineeringInputData>(c => { ElectricMotor = c; });
+				.If<IElectricMotorEngineeringInputData>(c => { ElectricMotor = c; })
+				.If<IHybridStrategyParameters>(c => HybridStrategyParameters = c);
 			;
 			_filename = filename;
 		}
@@ -168,10 +172,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return Vehicle; }
 		}
 
-		public IHybridStrategyParameters HybridStrategyParameters
-		{
-			get { return null; }
-		}
+		public IHybridStrategyParameters HybridStrategyParameters { get; set; }
 
 		public IVehicleEngineeringInputData Vehicle
 		{
diff --git a/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs b/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs
index 85addd63cd82ea454ab4fe26fa1ee2d117db7acf..07525b09b5ed30ff9303ad1bcbc07b04d2a5ba3b 100644
--- a/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs
+++ b/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs
@@ -34,6 +34,8 @@ public class JSONFileWriter : IOutputFileWriter
 
 	private const int ElectricMotorFormatVersion = 1;
 
+	private const int HybridStrategyParamsVersion = 1;
+
     private static JSONFileWriter _instance;
 
 	public const string VECTOvers = "3";
@@ -925,4 +927,17 @@ public class JSONFileWriter : IOutputFileWriter
 	}
 
 
+	public void SaveStrategyParameters(IHybridStrategyParameters hp, string filePath, bool declMode)
+	{
+		var header = GetHeader(HybridStrategyParamsVersion);
+		var body = new Dictionary<string, object>() {
+			{"EquivalenceFactor", hp.EquivalenceFactor},
+			{"MinSoC", hp.MinSoC * 100},
+			{"MaxSoC", hp.MaxSoC * 100},
+			{"TargetSoC", hp.TargetSoC * 100},
+			//{"AuxBufferTime", hp.}
+			//{"AuxBufferChgTime", hp.}
+		};
+		WriteFile(header, body, filePath);
+    }
 }
diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group2_P2/Class2_RigidTruck_ParHyb_ENG.vecto b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group2_P2/Class2_RigidTruck_ParHyb_ENG.vecto
index 41c8833ee75df929998cf1f5e1db30406eefaaf0..2a129faeb753e3cb355018517adcadb1ae389692 100644
--- a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group2_P2/Class2_RigidTruck_ParHyb_ENG.vecto
+++ b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group2_P2/Class2_RigidTruck_ParHyb_ENG.vecto
@@ -16,7 +16,7 @@
     "AuxiliaryVersion": "CLASSIC",
     "AdvancedAuxiliaryFilePath": "",
 	
-	  "HybridStrategyParams": "HybridStrategyParams.vctl",
+	  "HybridStrategyParams": "HybridStrategyParams.vhctl",
 	
     "Aux": [],
     "Padd": 3540.0,