diff --git a/Model_Library b/Model_Library
index c3fb8e02ab0938692ad3695e4deedb3d59aa6ad4..2a2b15d999931587ea22df28e7351fa2c49af8ed 160000
--- a/Model_Library
+++ b/Model_Library
@@ -1 +1 @@
-Subproject commit c3fb8e02ab0938692ad3695e4deedb3d59aa6ad4
+Subproject commit 2a2b15d999931587ea22df28e7351fa2c49af8ed
diff --git a/input_files/convert_input_files_TODO.py b/input_files/convert_input_files_TODO.py
new file mode 100644
index 0000000000000000000000000000000000000000..210ef1876a4ad011871758e0c2b5873a1fcb7e28
--- /dev/null
+++ b/input_files/convert_input_files_TODO.py
@@ -0,0 +1,38 @@
+"""
+This script inspects the input files and modifies them such that they adhere to the new input file specification used by the framework after merge of merge request !TODO TODO.
+This script assumes that the file containing the paths to the files containing the input profiles is called "data_path.csv".
+DO NOT APPLY THIS SCRIPT TO A FILE TWICE. IT CAN BREAK.
+"""
+
+import os.path
+import pandas as pd
+
+changed_files = []
+invalid_files = []
+for dirpath, dirnames, filenames in os.walk(".\\input_files"):
+    for filename in filenames:
+        if filename == "data_path.csv":
+            try:
+                print(f"Inspecting file {os.path.join(dirpath, filename)}")
+                df = pd.read_csv(os.path.join(dirpath, filename))
+                file_changed = False
+                demand_heat_rows = []
+                for i in df.index:
+                    if df["type"][i] == "demand_heat":
+                        demand_heat_rows.append((i, df.loc[i,].copy()))
+                if len(demand_heat_rows) != 0:
+                    file_changed = True
+                    for (i, row) in demand_heat_rows:
+                        df.loc[i + 0.5] = row
+                        df["type"][i + 0.5] = "demand_hot_water"
+                    df.sort_index(inplace = True)
+                    df.reset_index(drop = True, inplace = True)
+                if file_changed:
+                    changed_files.append(os.path.join(dirpath, filename))
+                    df.to_csv(os.path.join(dirpath, filename), index = False)
+            except KeyError:
+                invalid_files.append(os.path.join(dirpath, filename))
+for file in changed_files:
+    print(f"Modified file {file}!")
+for file in invalid_files:
+    print(f"File {file} breaks some part of the input file specification that during the implementation!")
diff --git a/input_files/models/district_models/example_CA/data_path.csv b/input_files/models/district_models/example_CA/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/district_models/example_CA/data_path.csv
+++ b/input_files/models/district_models/example_CA/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/district_models/jbr_test_ca/data_path.csv b/input_files/models/district_models/jbr_test_ca/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/district_models/jbr_test_ca/data_path.csv
+++ b/input_files/models/district_models/jbr_test_ca/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/SCN0_CAT1/data_path.csv b/input_files/models/prosumer_models/SCN0_CAT1/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/SCN0_CAT1/data_path.csv
+++ b/input_files/models/prosumer_models/SCN0_CAT1/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/SCN2_CAT1_PV11/data_path.csv b/input_files/models/prosumer_models/SCN2_CAT1_PV11/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/SCN2_CAT1_PV11/data_path.csv
+++ b/input_files/models/prosumer_models/SCN2_CAT1_PV11/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/SCN2_CAT1_PV12_BA/data_path.csv b/input_files/models/prosumer_models/SCN2_CAT1_PV12_BA/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/SCN2_CAT1_PV12_BA/data_path.csv
+++ b/input_files/models/prosumer_models/SCN2_CAT1_PV12_BA/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/SCN2_CAT1_PV13_BA_HP/data_path.csv b/input_files/models/prosumer_models/SCN2_CAT1_PV13_BA_HP/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/SCN2_CAT1_PV13_BA_HP/data_path.csv
+++ b/input_files/models/prosumer_models/SCN2_CAT1_PV13_BA_HP/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/SCN2_CAT1_PV14_HP/data_path.csv b/input_files/models/prosumer_models/SCN2_CAT1_PV14_HP/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/SCN2_CAT1_PV14_HP/data_path.csv
+++ b/input_files/models/prosumer_models/SCN2_CAT1_PV14_HP/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/SCN2_CAT1_PV31/data_path.csv b/input_files/models/prosumer_models/SCN2_CAT1_PV31/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/SCN2_CAT1_PV31/data_path.csv
+++ b/input_files/models/prosumer_models/SCN2_CAT1_PV31/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/SCN2_CAT1_PV32_BA/data_path.csv b/input_files/models/prosumer_models/SCN2_CAT1_PV32_BA/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/SCN2_CAT1_PV32_BA/data_path.csv
+++ b/input_files/models/prosumer_models/SCN2_CAT1_PV32_BA/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/SCN2_CAT1_PV33_BA_HP/data_path.csv b/input_files/models/prosumer_models/SCN2_CAT1_PV33_BA_HP/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/SCN2_CAT1_PV33_BA_HP/data_path.csv
+++ b/input_files/models/prosumer_models/SCN2_CAT1_PV33_BA_HP/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/SCN2_CAT1_PV34_HP/data_path.csv b/input_files/models/prosumer_models/SCN2_CAT1_PV34_HP/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/SCN2_CAT1_PV34_HP/data_path.csv
+++ b/input_files/models/prosumer_models/SCN2_CAT1_PV34_HP/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/SCN3_CAT1/data_path.csv b/input_files/models/prosumer_models/SCN3_CAT1/data_path.csv
index 8d989a9b0ec55857e12044e661eb076b1e72e12a..1d4e684da998f73d8887548029716a8609ddd08f 100644
--- a/input_files/models/prosumer_models/SCN3_CAT1/data_path.csv
+++ b/input_files/models/prosumer_models/SCN3_CAT1/data_path.csv
@@ -1,6 +1,7 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
 day_ahead_price,input_files/data/prices/day-ahead/hourly_price.csv,h
diff --git a/input_files/models/prosumer_models/SCN3_CAT1_PV11/data_path.csv b/input_files/models/prosumer_models/SCN3_CAT1_PV11/data_path.csv
index 8d989a9b0ec55857e12044e661eb076b1e72e12a..1d4e684da998f73d8887548029716a8609ddd08f 100644
--- a/input_files/models/prosumer_models/SCN3_CAT1_PV11/data_path.csv
+++ b/input_files/models/prosumer_models/SCN3_CAT1_PV11/data_path.csv
@@ -1,6 +1,7 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
 day_ahead_price,input_files/data/prices/day-ahead/hourly_price.csv,h
diff --git a/input_files/models/prosumer_models/SCN3_CAT1_PV12_BA/data_path.csv b/input_files/models/prosumer_models/SCN3_CAT1_PV12_BA/data_path.csv
index 8d989a9b0ec55857e12044e661eb076b1e72e12a..1d4e684da998f73d8887548029716a8609ddd08f 100644
--- a/input_files/models/prosumer_models/SCN3_CAT1_PV12_BA/data_path.csv
+++ b/input_files/models/prosumer_models/SCN3_CAT1_PV12_BA/data_path.csv
@@ -1,6 +1,7 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
 day_ahead_price,input_files/data/prices/day-ahead/hourly_price.csv,h
diff --git a/input_files/models/prosumer_models/SCN3_CAT1_PV13_BA_HP/data_path.csv b/input_files/models/prosumer_models/SCN3_CAT1_PV13_BA_HP/data_path.csv
index 8d989a9b0ec55857e12044e661eb076b1e72e12a..1d4e684da998f73d8887548029716a8609ddd08f 100644
--- a/input_files/models/prosumer_models/SCN3_CAT1_PV13_BA_HP/data_path.csv
+++ b/input_files/models/prosumer_models/SCN3_CAT1_PV13_BA_HP/data_path.csv
@@ -1,6 +1,7 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
 day_ahead_price,input_files/data/prices/day-ahead/hourly_price.csv,h
diff --git a/input_files/models/prosumer_models/SCN3_CAT1_PV14_HP/data_path.csv b/input_files/models/prosumer_models/SCN3_CAT1_PV14_HP/data_path.csv
index 8d989a9b0ec55857e12044e661eb076b1e72e12a..1d4e684da998f73d8887548029716a8609ddd08f 100644
--- a/input_files/models/prosumer_models/SCN3_CAT1_PV14_HP/data_path.csv
+++ b/input_files/models/prosumer_models/SCN3_CAT1_PV14_HP/data_path.csv
@@ -1,6 +1,7 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
 day_ahead_price,input_files/data/prices/day-ahead/hourly_price.csv,h
diff --git a/input_files/models/prosumer_models/SCN3_CAT1_PV31/data_path.csv b/input_files/models/prosumer_models/SCN3_CAT1_PV31/data_path.csv
index 8d989a9b0ec55857e12044e661eb076b1e72e12a..1d4e684da998f73d8887548029716a8609ddd08f 100644
--- a/input_files/models/prosumer_models/SCN3_CAT1_PV31/data_path.csv
+++ b/input_files/models/prosumer_models/SCN3_CAT1_PV31/data_path.csv
@@ -1,6 +1,7 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
 day_ahead_price,input_files/data/prices/day-ahead/hourly_price.csv,h
diff --git a/input_files/models/prosumer_models/SCN3_CAT1_PV32_BA/data_path.csv b/input_files/models/prosumer_models/SCN3_CAT1_PV32_BA/data_path.csv
index 8d989a9b0ec55857e12044e661eb076b1e72e12a..1d4e684da998f73d8887548029716a8609ddd08f 100644
--- a/input_files/models/prosumer_models/SCN3_CAT1_PV32_BA/data_path.csv
+++ b/input_files/models/prosumer_models/SCN3_CAT1_PV32_BA/data_path.csv
@@ -1,6 +1,7 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
 day_ahead_price,input_files/data/prices/day-ahead/hourly_price.csv,h
diff --git a/input_files/models/prosumer_models/SCN3_CAT1_PV33_BA_HP/data_path.csv b/input_files/models/prosumer_models/SCN3_CAT1_PV33_BA_HP/data_path.csv
index 8d989a9b0ec55857e12044e661eb076b1e72e12a..1d4e684da998f73d8887548029716a8609ddd08f 100644
--- a/input_files/models/prosumer_models/SCN3_CAT1_PV33_BA_HP/data_path.csv
+++ b/input_files/models/prosumer_models/SCN3_CAT1_PV33_BA_HP/data_path.csv
@@ -1,6 +1,7 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
 day_ahead_price,input_files/data/prices/day-ahead/hourly_price.csv,h
diff --git a/input_files/models/prosumer_models/SCN3_CAT1_PV34_HP/data_path.csv b/input_files/models/prosumer_models/SCN3_CAT1_PV34_HP/data_path.csv
index 8d989a9b0ec55857e12044e661eb076b1e72e12a..1d4e684da998f73d8887548029716a8609ddd08f 100644
--- a/input_files/models/prosumer_models/SCN3_CAT1_PV34_HP/data_path.csv
+++ b/input_files/models/prosumer_models/SCN3_CAT1_PV34_HP/data_path.csv
@@ -1,6 +1,7 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
 day_ahead_price,input_files/data/prices/day-ahead/hourly_price.csv,h
diff --git a/input_files/models/prosumer_models/jbr_test/data_path.csv b/input_files/models/prosumer_models/jbr_test/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/jbr_test/data_path.csv
+++ b/input_files/models/prosumer_models/jbr_test/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/mfh_quartal/data_path.csv b/input_files/models/prosumer_models/mfh_quartal/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/mfh_quartal/data_path.csv
+++ b/input_files/models/prosumer_models/mfh_quartal/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h
diff --git a/input_files/models/prosumer_models/office_pv_heatpump/data_path.csv b/input_files/models/prosumer_models/office_pv_heatpump/data_path.csv
index aa0479f160f0098ef724bba48c299f1cb0ca738d..1602f005765239eb219c958f8dddd1006325519b 100644
--- a/input_files/models/prosumer_models/office_pv_heatpump/data_path.csv
+++ b/input_files/models/prosumer_models/office_pv_heatpump/data_path.csv
@@ -1,5 +1,6 @@
 type,path,unit
 demand_electric,generate,h
 demand_heat,generate,h
+demand_hot_water,generate,h
 irradiance,input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv,min
 temperature,input_files/data/temperature/temperature.csv,h