diff --git a/DesignEvaluator/src/main.cpp b/DesignEvaluator/src/main.cpp
index 9b3c765bcadc2a1d51263665aa9e37f6c22fda1b..ff8410f9b5e7ff656b8caa75807bf96182492407 100644
--- a/DesignEvaluator/src/main.cpp
+++ b/DesignEvaluator/src/main.cpp
@@ -37,11 +37,14 @@ boost::property_tree::ptree extractNodesFromPtree(const boost::property_tree::pt
     for (const auto& parent_node : ptree) {
         if (parent_node.first == target_node) {
             reduced_ptree.add_child(parent_node.first, parent_node.second);
+        } else {
+            boost::property_tree::ptree myPtree{};
+            myPtree = extractNodesFromPtree(parent_node.second, target_node);
+            for (const auto& child_node : myPtree) {
+                reduced_ptree.add_child(child_node.first, child_node.second);
+            }
         }
-        boost::property_tree::ptree myPtree{};
-        myPtree = extractNodesFromPtree(parent_node.second, target_node);
     }
-
     return reduced_ptree;
 }
 
@@ -132,19 +135,8 @@ int main () {
         case State::ExtractingConfigTreeInforamtion:
             std::cout << "Current State: " << state << std::endl;
 
-            // Iterate through the children of <ConfigFile.ProgramSettings.Parameters>
-            // for (const boost::property_tree::ptree::value_type& parent_nodes : config_tree.get_child("ConfigFile.ProgramSettings.Parameters")) {
-            //     boost::property_tree::ptree temporary_tree{};
-            //     // Iterate through the children of parent_node
-            //     for (const auto &child_nodes : parent_nodes.second) {
-            //         if (child_nodes.first == "SubPath") {
-            //             temporary_tree.add_child(child_nodes.first, child_nodes.second);
-            //         }
-            //     }
-            //     reduced_config_tree.add_child(parent_nodes.first, temporary_tree);
-            // }
             reduced_config_tree = extractNodesFromPtree(config_tree, "SubPath");
-            // printNodeNames(reduced_config_tree);
+            printNodeNames(reduced_config_tree);
             state = State::SubstractingNodeValues;
             break;