diff --git a/source/RobotAPI/libraries/aron_component_config/ComponentPlugin.h b/source/RobotAPI/libraries/aron_component_config/ComponentPlugin.h
index ae144f245b15cd28cdf0eee59245d7b9d8a94b28..288462223d51f039e7b38316c0e24a6f2037801f 100644
--- a/source/RobotAPI/libraries/aron_component_config/ComponentPlugin.h
+++ b/source/RobotAPI/libraries/aron_component_config/ComponentPlugin.h
@@ -23,57 +23,48 @@
 #pragma once
 
 #include <experimental/memory>
-#include <ArmarXCore/core/ManagedIceObject.h>
+
 #include <ArmarXCore/core/ComponentPlugin.h>
-#include <RobotAPI/libraries/aron/core/codegeneration/cpp/AronGeneratedClass.h>
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 #include <ArmarXGui/libraries/ArmarXGuiComponentPlugins/RemoteGuiComponentPlugin.h>
+
+#include <RobotAPI/libraries/aron/core/codegeneration/cpp/AronGeneratedClass.h>
 #include <RobotAPI/libraries/aron/core/data/visitor/RecursiveVisitor.h>
+
 #include "PropertyDefinitionVisitors.h"
 #include "RemoteGui.h"
 
-
 namespace armarx::plugins
 {
-    template <typename T> concept isAronGenerated = std::is_base_of<armarx::aron::cpp::AronGeneratedClass, T>::value;
+    template <typename T>
+    concept isAronGenerated = std::is_base_of<armarx::aron::cpp::AronGeneratedClass, T>::value;
 
     template <typename AronStructT>
-    requires isAronGenerated<AronStructT>
+        requires isAronGenerated<AronStructT>
     class AronComponentConfigPlugin : public ComponentPlugin
     {
     protected:
-        void preOnInitComponent() override
+        void
+        preOnInitComponent() override
         {
-            armarx::aron::component_config::PropertyDefinitionGetterVisitor vis(parent<armarx::PropertyUser>());
-            auto data = std::static_pointer_cast<armarx::aron::data::Variant>(config_.getUpToDateReadBuffer().toAron());
+            ARMARX_TRACE;
+            armarx::aron::component_config::PropertyDefinitionGetterVisitor vis(
+                parent<armarx::PropertyUser>());
+            auto data = std::static_pointer_cast<armarx::aron::data::Variant>(
+                config_.getUpToDateReadBuffer().toAron());
             auto type = config_.getUpToDateReadBuffer().ToAronType();
             armarx::aron::data::visitRecursive(vis, data, type);
-            config_.getWriteBuffer().fromAron(std::static_pointer_cast<armarx::aron::data::Dict>(data));
+            config_.getWriteBuffer().fromAron(
+                std::static_pointer_cast<armarx::aron::data::Dict>(data));
             config_.commitWrite();
             ManagedIceObjectPlugin::preOnInitComponent();
         }
 
-        void postOnInitComponent() override
-        {
-            ManagedIceObjectPlugin::postOnInitComponent();
-        }
-
-        void preOnConnectComponent() override
-        {
-            ManagedIceObjectPlugin::preOnConnectComponent();
-        }
-
-        void postOnConnectComponent() override
-        {
-            ManagedIceObjectPlugin::postOnConnectComponent();
-        }
-
-        void postOnDisconnectComponent() override
-        {
-            ManagedIceObjectPlugin::postOnDisconnectComponent();
-        }
-
-        void postCreatePropertyDefinitions(armarx::PropertyDefinitionsPtr& properties) override
+        void
+        postCreatePropertyDefinitions(armarx::PropertyDefinitionsPtr& properties) override
         {
+            ARMARX_TRACE;
             armarx::aron::component_config::PropertyDefinitionSetterVisitor vis(properties);
             const auto& config = config_.getUpToDateReadBuffer();
             armarx::aron::data::visitRecursive(vis, config.toAron(), config.ToAronType());
@@ -81,12 +72,16 @@ namespace armarx::plugins
         }
 
     public:
-        RemoteGui::detail::GroupBoxBuilder buildRemoteGui(const std::string& name)
+        RemoteGui::detail::GroupBoxBuilder
+        buildRemoteGui(const std::string& name)
         {
+            ARMARX_TRACE;
             return RemoteGui::makeConfigGui(name, config_.getUpToDateReadBuffer());
         }
 
-        bool updateRemoteGui(armarx::RemoteGui::TabProxy& prx) // prx has to be already updated; otherwise nothing will change
+        bool
+        updateRemoteGui(armarx::RemoteGui::TabProxy&
+                            prx) // prx has to be already updated; otherwise nothing will change
         {
             ARMARX_TRACE;
             armarx::aron::component_config::GetValueFromMapVisitor vis(&prx);
@@ -99,12 +94,12 @@ namespace armarx::plugins
             return vis.tabRebuildRequired();
         }
 
-        AronComponentConfigPlugin(ManagedIceObject& parent, const std::string& prefix) : ComponentPlugin(parent, prefix)
+        AronComponentConfigPlugin(ManagedIceObject& parent, const std::string& prefix) :
+            ComponentPlugin(parent, prefix)
         {
-
+            ARMARX_TRACE;
         }
 
         armarx::WriteBufferedTripleBuffer<AronStructT> config_;
-
     };
-}
\ No newline at end of file
+} // namespace armarx::plugins
\ No newline at end of file
diff --git a/source/RobotAPI/libraries/aron_component_config/PropertyDefinitionVisitors.cpp b/source/RobotAPI/libraries/aron_component_config/PropertyDefinitionVisitors.cpp
index c8a21c747d81c4465a1c85281da518f4905001e6..8f68b47f18780e0150239129f087ad41584b4c11 100644
--- a/source/RobotAPI/libraries/aron_component_config/PropertyDefinitionVisitors.cpp
+++ b/source/RobotAPI/libraries/aron_component_config/PropertyDefinitionVisitors.cpp
@@ -22,17 +22,29 @@
 
 #include "PropertyDefinitionVisitors.h"
 
-#include <ArmarXCore/core/application/properties/PropertyDefinitionContainer.h>
 #include <ArmarXCore/core/application/properties/PropertyDefinition.h>
+#include <ArmarXCore/core/application/properties/PropertyDefinitionContainer.h>
 #include <ArmarXCore/core/application/properties/PropertyUser.h>
+
 #include <RobotAPI/libraries/aron/core/data/variant/All.h>
 #include <RobotAPI/libraries/aron_component_config/VariantHelperFactory.h>
 
 #include "Util.h"
 
-#define INPUT_GUARD(i) \
-ARMARX_CHECK_NOT_NULL(i); \
-if (in_list_) return;
+#define INPUT_GUARD(i)                                                                             \
+    ARMARX_TRACE;                                                                                  \
+    ARMARX_CHECK_NOT_NULL(i);                                                                      \
+    if (in_list_)                                                                                  \
+        return;
+
+inline std::string
+joinNamespaces(const std::vector<std::string>& namespaces)
+{
+    std::string result = "";
+    std::for_each(
+        namespaces.begin(), namespaces.end(), [&result](const auto& i) { result += i + "."; });
+    return result;
+}
 
 namespace armarx::aron::component_config
 {
@@ -42,7 +54,7 @@ namespace armarx::aron::component_config
     {
         INPUT_GUARD(i);
         auto value = data::Int::DynamicCastAndCheck(i);
-        auto name = pathToName(i);
+        auto name = joinNamespaces(namespaces_) + pathToName(i);
         property_user_->getProperty(value->getValue(), name);
     }
 
@@ -51,7 +63,7 @@ namespace armarx::aron::component_config
     {
         INPUT_GUARD(f);
         auto value = data::Float::DynamicCastAndCheck(f);
-        auto name = pathToName(f);
+        auto name = joinNamespaces(namespaces_) + pathToName(f);
         property_user_->getProperty(value->getValue(), name);
     }
 
@@ -60,7 +72,7 @@ namespace armarx::aron::component_config
     {
         INPUT_GUARD(d);
         auto value = data::Double::DynamicCastAndCheck(d);
-        auto name = pathToName(d);
+        auto name = joinNamespaces(namespaces_) + pathToName(d);
         property_user_->getProperty(value->getValue(), name);
     }
 
@@ -69,7 +81,7 @@ namespace armarx::aron::component_config
     {
         INPUT_GUARD(b);
         auto value = data::Bool::DynamicCastAndCheck(b);
-        auto name = pathToName(b);
+        auto name = joinNamespaces(namespaces_) + pathToName(b);
         property_user_->getProperty(value->getValue(), name);
     }
 
@@ -78,11 +90,13 @@ namespace armarx::aron::component_config
     {
         INPUT_GUARD(string);
         auto value = data::String::DynamicCastAndCheck(string);
-        auto name = pathToName(string);
+        auto name = joinNamespaces(namespaces_) + pathToName(string);
         auto property = property_user_->getProperty<std::string>(name);
-        if (not property.getValue().empty()){
+        if (not property.getValue().empty())
+        {
             value->getValue() = property.getValueAndReplaceAllVars();
-        } else
+        }
+        else
         {
             value->getValue() = "";
         }
@@ -91,8 +105,9 @@ namespace armarx::aron::component_config
     void
     PropertyDefinitionGetterVisitor::visitListOnEnter(DataInput& o, TypeInput& t)
     {
+        ARMARX_TRACE;
         in_list_ = true;
-        const auto& name = pathToName(o);
+        const auto& name = joinNamespaces(namespaces_) + pathToName(o);
         const auto& type = type::List::DynamicCast(t)->getAcceptedType()->getDescriptor();
         if (std::find(implementedListDescriptors.begin(), implementedListDescriptors.end(), type) ==
             implementedListDescriptors.end())
@@ -101,7 +116,7 @@ namespace armarx::aron::component_config
         }
         auto old_list = data::List::DynamicCast(o);
         old_list->clear();
-        auto get_list = [this, & name]() -> std::vector<std::string>
+        auto get_list = [this, &name]() -> std::vector<std::string>
         {
             std::string list;
             property_user_->getProperty(list, name);
@@ -109,14 +124,14 @@ namespace armarx::aron::component_config
         };
         int i = 0;
         std::vector<std::string> vector = get_list();
-        std::for_each(vector.begin(), vector.end(), [&old_list, &i, &type](const auto& el)
-        {
-            old_list->addElement(factories::VariantHelper::make(type)->from_string(el,
-                                                                                   old_list->getPath()
-                                                                                              .withIndex(i)));
-            i++;
-        });
-
+        std::for_each(vector.begin(),
+                      vector.end(),
+                      [&old_list, &i, &type](const auto& el)
+                      {
+                          old_list->addElement(factories::VariantHelper::make(type)->from_string(
+                              el, old_list->getPath().withIndex(i)));
+                          i++;
+                      });
     }
 
     void
@@ -128,29 +143,32 @@ namespace armarx::aron::component_config
     void
     PropertyDefinitionGetterVisitor::visitIntEnum(DataInput& enumData, TypeInput& elementType)
     {
+        ARMARX_TRACE;
         auto data = data::Int::DynamicCastAndCheck(enumData);
-        auto name = pathToName(enumData);
+        auto name = joinNamespaces(namespaces_) + pathToName(enumData);
         property_user_->getProperty(data->getValue(), name);
     }
 
     void
     PropertyDefinitionGetterVisitor::visitUnknown(DataInput& unknown, TypeInput& elementType)
     {
-        ARMARX_WARNING << "Unknown data encountered: " << (unknown ? unknown->getFullName() : "nullptr");
+        ARMARX_WARNING << "Unknown data encountered: "
+                       << (unknown ? unknown->getFullName() : "nullptr");
     }
 
-    PropertyDefinitionGetterVisitor::PropertyDefinitionGetterVisitor(const armarx::PropertyUser& defs) :
-            property_user_(std::experimental::make_observer(&defs)), in_list_(false)
+    PropertyDefinitionGetterVisitor::PropertyDefinitionGetterVisitor(
+        const armarx::PropertyUser& defs) :
+        property_user_(std::experimental::make_observer(&defs)), in_list_(false)
     {
-
     }
 
     void
     PropertyDefinitionGetterVisitor::visitDictOnEnter(std::shared_ptr<data::Variant>& o,
                                                       const std::shared_ptr<type::Variant>& t)
     {
+        ARMARX_TRACE;
         in_list_ = true;
-        const auto& name = pathToName(o);
+        const auto& name = joinNamespaces(namespaces_) + pathToName(o);
         const auto& type = type::Dict::DynamicCast(t)->getAcceptedType()->getDescriptor();
         if (std::find(implementedListDescriptors.begin(), implementedListDescriptors.end(), type) ==
             implementedListDescriptors.end())
@@ -159,26 +177,30 @@ namespace armarx::aron::component_config
         }
         auto old_dict = data::Dict::DynamicCast(o);
         old_dict->clear();
-        auto get_list = [this, & name]() -> std::vector<std::string>
+        auto get_list = [this, &name]() -> std::vector<std::string>
         {
             std::string list;
             property_user_->getProperty(list, name);
             return simox::alg::split(list, ",");
         };
         std::vector<std::string> vector = get_list();
-        std::for_each(vector.begin(), vector.end(), [&old_dict, &type](const auto& el)
-        {
-            auto key_value = simox::alg::split(el, ":");
-            old_dict->addElement(key_value.front(),
-                                 factories::VariantHelper::make(type)->from_string(key_value.back(),
-                                                                                   old_dict->getPath()
-                                                                                              .withElement(key_value.front())));
-        });
+        std::for_each(
+            vector.begin(),
+            vector.end(),
+            [&old_dict, &type](const auto& el)
+            {
+                auto key_value = simox::alg::split(el, ":");
+                old_dict->addElement(
+                    key_value.front(),
+                    factories::VariantHelper::make(type)->from_string(
+                        key_value.back(), old_dict->getPath().withElement(key_value.front())));
+            });
     }
 
     void
-    PropertyDefinitionGetterVisitor::visitDictOnExit(std::shared_ptr<data::Variant>& elementData,
-                                                     const std::shared_ptr<type::Variant>& elementType)
+    PropertyDefinitionGetterVisitor::visitDictOnExit(
+        std::shared_ptr<data::Variant>& elementData,
+        const std::shared_ptr<type::Variant>& elementType)
     {
         in_list_ = false;
     }
@@ -219,8 +241,26 @@ namespace armarx::aron::component_config
         return data::ConstTypedVariantVisitor::GetDescriptor(o, t);
     }
 
-    PropertyDefinitionSetterVisitor::PropertyDefinitionSetterVisitor(const PropertyDefinitionsPtr& defs) :
-            property_definitions_(std::experimental::make_observer(defs.get()))
+    void
+    PropertyDefinitionGetterVisitor::visitObjectOnEnter(std::shared_ptr<data::Variant>& i,
+                                                        const std::shared_ptr<type::Variant>& j)
+    {
+        INPUT_GUARD(i);
+        auto t = type::Object::DynamicCastAndCheck(j);
+        namespaces_.emplace_back(t->getObjectNameWithoutNamespace());
+    }
+
+    void
+    PropertyDefinitionGetterVisitor::visitObjectOnExit(std::shared_ptr<data::Variant>& i,
+                                                       const std::shared_ptr<type::Variant>& j)
+    {
+        INPUT_GUARD(i);
+        namespaces_.pop_back();
+    }
+
+    PropertyDefinitionSetterVisitor::PropertyDefinitionSetterVisitor(
+        const PropertyDefinitionsPtr& defs) :
+        property_definitions_(std::experimental::make_observer(defs.get()))
     {
     }
 
@@ -228,23 +268,25 @@ namespace armarx::aron::component_config
     PropertyDefinitionSetterVisitor::visitAronVariant(const data::IntPtr& i, const type::IntPtr&)
     {
         INPUT_GUARD(i);
-        auto name = pathToName(i);
+        auto name = joinNamespaces(namespaces_) + pathToName(i);
         property_definitions_->defineOptionalProperty<int>(name, i->getValue());
     }
 
     void
-    PropertyDefinitionSetterVisitor::visitAronVariant(const data::FloatPtr& f, const type::FloatPtr&)
+    PropertyDefinitionSetterVisitor::visitAronVariant(const data::FloatPtr& f,
+                                                      const type::FloatPtr&)
     {
         INPUT_GUARD(f);
-        auto name = pathToName(f);
+        auto name = joinNamespaces(namespaces_) + pathToName(f);
         property_definitions_->defineOptionalProperty<float>(name, f->getValue());
     }
 
     void
-    PropertyDefinitionSetterVisitor::visitAronVariant(const data::DoublePtr& d, const type::DoublePtr&)
+    PropertyDefinitionSetterVisitor::visitAronVariant(const data::DoublePtr& d,
+                                                      const type::DoublePtr&)
     {
         INPUT_GUARD(d);
-        auto name = pathToName(d);
+        auto name = joinNamespaces(namespaces_) + pathToName(d);
         property_definitions_->defineOptionalProperty<double>(name, d->getValue());
     }
 
@@ -252,32 +294,37 @@ namespace armarx::aron::component_config
     PropertyDefinitionSetterVisitor::visitAronVariant(const data::BoolPtr& b, const type::BoolPtr&)
     {
         INPUT_GUARD(b);
-        auto name = pathToName(b);
+        auto name = joinNamespaces(namespaces_) + pathToName(b);
         property_definitions_->defineOptionalProperty<bool>(name, b->getValue());
     }
 
     void
-    PropertyDefinitionSetterVisitor::visitAronVariant(const data::StringPtr& string, const type::StringPtr&)
+    PropertyDefinitionSetterVisitor::visitAronVariant(const data::StringPtr& string,
+                                                      const type::StringPtr& type)
     {
         INPUT_GUARD(string);
-        auto name = pathToName(string);
+        auto name = joinNamespaces(namespaces_) + pathToName(string);
         property_definitions_->defineOptionalProperty<std::string>(name, string->getValue());
     }
 
     void
-    PropertyDefinitionSetterVisitor::visitAronVariant(const data::IntPtr& i, const type::IntEnumPtr& t)
+    PropertyDefinitionSetterVisitor::visitAronVariant(const data::IntPtr& i,
+                                                      const type::IntEnumPtr& t)
     {
         INPUT_GUARD(i);
-        auto name = pathToName(i);
-        property_definitions_->defineOptionalProperty<int>(name, i->getValue()).map(t->getAcceptedValueMap());
+        auto name = joinNamespaces(namespaces_) + pathToName(i);
+        property_definitions_->defineOptionalProperty<int>(name, i->getValue())
+            .map(t->getAcceptedValueMap());
     }
 
     void
-    PropertyDefinitionSetterVisitor::visitAronVariantOnEnter(const data::ListPtr& l, const type::ListPtr& t)
+    PropertyDefinitionSetterVisitor::visitAronVariantOnEnter(const data::ListPtr& l,
+                                                             const type::ListPtr& t)
     {
+        ARMARX_TRACE;
         ARMARX_CHECK_NOT_NULL(l);
         in_list_ = true;
-        const auto& name = pathToName(l);
+        const auto& name = joinNamespaces(namespaces_) + pathToName(l);
         const auto& type = t->getAcceptedType()->getDescriptor();
         if (std::find(implementedListDescriptors.begin(), implementedListDescriptors.end(), type) ==
             implementedListDescriptors.end())
@@ -287,25 +334,29 @@ namespace armarx::aron::component_config
         const auto& input = l->getElements();
         std::string str;
         std::vector<std::string> vector;
-        std::transform(input.begin(), input.end(), std::back_inserter(vector), [&type](const auto& el)
-        {
-            return factories::VariantHelper::make(type)->to_string(el);
-        });
+        std::transform(input.begin(),
+                       input.end(),
+                       std::back_inserter(vector),
+                       [&type](const auto& el)
+                       { return factories::VariantHelper::make(type)->to_string(el); });
         str = simox::alg::to_string(vector, ", ");
         property_definitions_->defineOptionalProperty<std::string>(name, str);
     }
 
     void
-    PropertyDefinitionSetterVisitor::visitAronVariantOnExit(const data::ListPtr&, const type::ListPtr&)
+    PropertyDefinitionSetterVisitor::visitAronVariantOnExit(const data::ListPtr&,
+                                                            const type::ListPtr&)
     {
         in_list_ = false;
     }
 
     void
-    PropertyDefinitionSetterVisitor::visitAronVariantOnEnter(const data::DictPtr& d, const type::DictPtr& t)
+    PropertyDefinitionSetterVisitor::visitAronVariantOnEnter(const data::DictPtr& d,
+                                                             const type::DictPtr& t)
     {
+        ARMARX_TRACE;
         in_list_ = true;
-        const auto& name = pathToName(d);
+        const auto& name = joinNamespaces(namespaces_) + pathToName(d);
         const auto& type = t->getAcceptedType()->getDescriptor();
         if (std::find(implementedListDescriptors.begin(), implementedListDescriptors.end(), type) ==
             implementedListDescriptors.end())
@@ -314,7 +365,7 @@ namespace armarx::aron::component_config
         }
         const auto& input = d->getElements();
         std::stringstream ss;
-        for (const auto& [key, el]: input)
+        for (const auto& [key, el] : input)
         {
             ss << key << ":";
             ss << factories::VariantHelper::make(type)->to_string(el);
@@ -329,10 +380,27 @@ namespace armarx::aron::component_config
     }
 
     void
-    PropertyDefinitionSetterVisitor::visitAronVariantOnExit(const data::DictPtr&, const type::DictPtr&)
+    PropertyDefinitionSetterVisitor::visitAronVariantOnExit(const data::DictPtr&,
+                                                            const type::DictPtr&)
     {
         in_list_ = false;
     }
-}
+
+    void
+    PropertyDefinitionSetterVisitor::visitAronVariantOnEnter(const data::DictPtr& obj,
+                                                             const type::ObjectPtr& type)
+    {
+        INPUT_GUARD(obj);
+        namespaces_.emplace_back(type->getObjectNameWithoutNamespace());
+    }
+
+    void
+    PropertyDefinitionSetterVisitor::visitAronVariantOnExit(const data::DictPtr& obj,
+                                                            const type::ObjectPtr& type)
+    {
+        INPUT_GUARD(obj);
+        namespaces_.pop_back();
+    }
+} // namespace armarx::aron::component_config
 
 #undef INPUT_GUARD
\ No newline at end of file
diff --git a/source/RobotAPI/libraries/aron_component_config/PropertyDefinitionVisitors.h b/source/RobotAPI/libraries/aron_component_config/PropertyDefinitionVisitors.h
index b99fb8b7b4a3fa40bdf19b3407e8ce1dcb1ac963..5a22cb24534cfd44fdf680051fc7c7f9cb9c5304 100644
--- a/source/RobotAPI/libraries/aron_component_config/PropertyDefinitionVisitors.h
+++ b/source/RobotAPI/libraries/aron_component_config/PropertyDefinitionVisitors.h
@@ -23,9 +23,11 @@
 #pragma once
 
 #include <experimental/memory>
-#include <RobotAPI/libraries/aron/core/data/visitor/variant/VariantVisitor.h>
+
 #include <ArmarXCore/core/application/properties/forward_declarations.h>
 
+#include <RobotAPI/libraries/aron/core/data/visitor/variant/VariantVisitor.h>
+
 namespace armarx::aron::component_config
 {
 
@@ -54,13 +56,20 @@ namespace armarx::aron::component_config
 
         void visitAronVariantOnExit(const data::DictPtr&, const type::DictPtr&) override;
 
+        void visitAronVariantOnEnter(const data::DictPtr& ptr,
+                                     const type::ObjectPtr& objectPtr) override;
+
+        void visitAronVariantOnExit(const data::DictPtr& ptr,
+                                    const type::ObjectPtr& objectPtr) override;
+
     private:
         std::experimental::observer_ptr<PropertyDefinitionContainer> property_definitions_;
+        std::vector<std::string> namespaces_;
         std::atomic<bool> in_list_{false};
     };
 
-    class PropertyDefinitionGetterVisitor : public aron::data::RecursiveTypedVisitor<data::VariantPtr,
-                                                                                     const type::VariantPtr>
+    class PropertyDefinitionGetterVisitor :
+        public aron::data::RecursiveTypedVisitor<data::VariantPtr, const type::VariantPtr>
     {
     public:
         explicit PropertyDefinitionGetterVisitor(const armarx::PropertyUser& defs);
@@ -97,11 +106,16 @@ namespace armarx::aron::component_config
 
         void visitDictOnExit(DataInput& elementData, TypeInput& elementType) override;
 
+        void visitObjectOnEnter(DataInput& elementData, TypeInput& elementType) override;
+
+        void visitObjectOnExit(DataInput& elementData, TypeInput& elementType) override;
+
         void visitIntEnum(DataInput& elementData, TypeInput& elementType) override;
 
     private:
         std::experimental::observer_ptr<const armarx::PropertyUser> property_user_;
+        std::vector<std::string> namespaces_;
         std::atomic<bool> in_list_;
     };
 
-}
\ No newline at end of file
+} // namespace armarx::aron::component_config
\ No newline at end of file
diff --git a/source/RobotAPI/libraries/aron_component_config/RemoteGui.h b/source/RobotAPI/libraries/aron_component_config/RemoteGui.h
index e790688585294d69d7ff68e39ec54ad763b72046..ddc281c6d9b22fccdb3774fbfc418e0ea15de236 100644
--- a/source/RobotAPI/libraries/aron_component_config/RemoteGui.h
+++ b/source/RobotAPI/libraries/aron_component_config/RemoteGui.h
@@ -23,36 +23,38 @@
 #pragma once
 
 #include <ArmarXGui/libraries/RemoteGui/RemoteGui.h>
-#include <RobotAPI/libraries/aron/core/data/variant/forward_declarations.h>
+
 #include <RobotAPI/libraries/aron/core/codegeneration/cpp/AronGeneratedClass.h>
 #include <RobotAPI/libraries/aron/core/data/variant/container/Dict.h>
+#include <RobotAPI/libraries/aron/core/data/variant/forward_declarations.h>
+
 #include "RemoteGuiVisitors.h"
 
 namespace armarx::RemoteGui
 {
-    template <typename T> concept isAronGenerated = std::is_base_of<armarx::aron::cpp::AronGeneratedClass, T>::value;
+    template <typename T>
+    concept isAronGenerated = std::is_base_of<armarx::aron::cpp::AronGeneratedClass, T>::value;
 
     template <typename AronStructT>
-    requires isAronGenerated<AronStructT>
-    detail::GroupBoxBuilder makeConfigGui(
-            const std::string& name,
-            const AronStructT& val)
+        requires isAronGenerated<AronStructT>
+    detail::GroupBoxBuilder
+    makeConfigGui(const std::string& name, const AronStructT& val)
     {
         aron::component_config::MakeConfigGuiVisitor vis(name);
         armarx::aron::data::visitRecursive(vis, val.toAron(), val.ToAronType());
         return vis.getGroupBoxBuilder();
     }
 
-//    template <typename AronStructT>
-//    requires isAronGenerated<AronStructT>
-//    void getValueFromMap(AronStructT& cfg,
-//                         RemoteGui::ValueMap const& values, std::string const& name)
-//    {
-//        armarx::aron::component_config::GetValueFromMapVisitor vis(&values);
-//        auto data = std::static_pointer_cast<armarx::aron::data::Variant>(cfg.toAron());
-//        auto type = cfg.ToAronType();
-//        armarx::aron::data::visitRecursive(vis, data, type);
-//        cfg.fromAron(std::static_pointer_cast<armarx::aron::data::Dict>(data));
-//    }
-
-}
\ No newline at end of file
+    //    template <typename AronStructT>
+    //    requires isAronGenerated<AronStructT>
+    //    void getValueFromMap(AronStructT& cfg,
+    //                         RemoteGui::ValueMap const& values, std::string const& name)
+    //    {
+    //        armarx::aron::component_config::GetValueFromMapVisitor vis(&values);
+    //        auto data = std::static_pointer_cast<armarx::aron::data::Variant>(cfg.toAron());
+    //        auto type = cfg.ToAronType();
+    //        armarx::aron::data::visitRecursive(vis, data, type);
+    //        cfg.fromAron(std::static_pointer_cast<armarx::aron::data::Dict>(data));
+    //    }
+
+} // namespace armarx::RemoteGui
\ No newline at end of file
diff --git a/source/RobotAPI/libraries/aron_component_config/RemoteGuiVisitors.cpp b/source/RobotAPI/libraries/aron_component_config/RemoteGuiVisitors.cpp
index 9856fb3ccdbcee5426eec1d423fea9cacc2c2313..fc6ed525f1ff9239f9eb4f3078e66203e0baa44d 100644
--- a/source/RobotAPI/libraries/aron_component_config/RemoteGuiVisitors.cpp
+++ b/source/RobotAPI/libraries/aron_component_config/RemoteGuiVisitors.cpp
@@ -218,6 +218,7 @@ namespace armarx::aron::component_config
                            .toolTip(name));
         group_hierarchy_.back()->addChild(group);
     }
+
     void
     MakeConfigGuiVisitor::visitMatrix(const std::shared_ptr<data::Variant>& q,
                                       const std::shared_ptr<type::Variant>& t)
@@ -259,7 +260,13 @@ namespace armarx::aron::component_config
         auto group = RemoteGui::makeHBoxLayout(name + "_layout");
         group.addChild(RemoteGui::makeLabel(name + "_label").value(q->getPath().getLastElement()));
         group.addHSpacer();
-        group.addChild(RemoteGui::makeVector3fSpinBoxes(name).value(quat).min(-M_PI).max(M_PI).steps(601).decimals(2).toolTip(name));
+        group.addChild(RemoteGui::makeVector3fSpinBoxes(name)
+                           .value(quat)
+                           .min(-M_PI)
+                           .max(M_PI)
+                           .steps(601)
+                           .decimals(2)
+                           .toolTip(name));
         group_hierarchy_.back()->addChild(group);
     }
 
@@ -307,7 +314,6 @@ namespace armarx::aron::component_config
         in_list_ = false;
     }
 
-
     GetValueFromMapVisitor::GetValueFromMapVisitor(armarx::RemoteGui::TabProxy* proxy) :
         proxy_(std::experimental::make_observer(proxy))
     {
@@ -519,6 +525,7 @@ namespace armarx::aron::component_config
     {
         return tab_rebuild_required_;
     }
+
     void
     GetValueFromMapVisitor::visitMatrix(std::shared_ptr<data::Variant>& o,
                                         const std::shared_ptr<type::Variant>& t)
@@ -539,7 +546,8 @@ namespace armarx::aron::component_config
             {
                 if (proxy_->hasValueChanged(name))
                 {
-                    auto variant = converter::AronEigenConverter::ConvertFromMatrix(gui_value.get());
+                    auto variant =
+                        converter::AronEigenConverter::ConvertFromMatrix(gui_value.get());
                     value->setData(gui_value.get().size() * sizeof(float), variant->getData());
                 }
                 else
@@ -547,7 +555,8 @@ namespace armarx::aron::component_config
                     proxy_->setValue(config_value, name);
                 }
             }
-        } else if ((cols == 3 and rows == 1) or (cols == 1 and rows == 3))
+        }
+        else if ((cols == 3 and rows == 1) or (cols == 1 and rows == 3))
         {
             auto gui_value = proxy_->getValue<Eigen::Vector3f>(name);
             auto config_value = converter::AronEigenConverter::ConvertToVector3f(value);
@@ -556,7 +565,8 @@ namespace armarx::aron::component_config
             {
                 if (proxy_->hasValueChanged(name))
                 {
-                    auto variant = converter::AronEigenConverter::ConvertFromMatrix(gui_value.get());
+                    auto variant =
+                        converter::AronEigenConverter::ConvertFromMatrix(gui_value.get());
                     value->setData(gui_value.get().size() * sizeof(float), variant->getData());
                 }
                 else
@@ -565,8 +575,8 @@ namespace armarx::aron::component_config
                 }
             }
         }
-
     }
+
     void
     GetValueFromMapVisitor::visitQuaternion(std::shared_ptr<data::Variant>& o,
                                             const std::shared_ptr<type::Variant>& t)
@@ -576,12 +586,14 @@ namespace armarx::aron::component_config
         const std::string name = pathToName(o);
         // TODO: does double work here?
         auto gui_value = proxy_->getValue<Eigen::Vector3f>(name);
-        const auto& quat = simox::math::quat_to_rpy(converter::AronEigenConverter::ConvertToQuaternionf(value));
+        const auto& quat =
+            simox::math::quat_to_rpy(converter::AronEigenConverter::ConvertToQuaternionf(value));
         if (quat != gui_value.get())
         {
             if (proxy_->hasValueChanged(name))
             {
-                auto variant = converter::AronEigenConverter::ConvertFromQuaternion(simox::math::rpy_to_quat(gui_value.get()));
+                auto variant = converter::AronEigenConverter::ConvertFromQuaternion(
+                    simox::math::rpy_to_quat(gui_value.get()));
                 value->setData(4 * sizeof(float), variant->getData());
             }
             else
diff --git a/source/RobotAPI/libraries/aron_component_config/RemoteGuiVisitors.h b/source/RobotAPI/libraries/aron_component_config/RemoteGuiVisitors.h
index e9324bf15e8429393beac81d2448aba9cbda26f2..93871934083414333bc7af05210b468af0601637 100644
--- a/source/RobotAPI/libraries/aron_component_config/RemoteGuiVisitors.h
+++ b/source/RobotAPI/libraries/aron_component_config/RemoteGuiVisitors.h
@@ -23,9 +23,11 @@
 #pragma once
 
 #include <experimental/memory>
-#include <RobotAPI/libraries/aron/core/data/visitor/variant/VariantVisitor.h>
+
 #include <ArmarXCore/core/application/properties/forward_declarations.h>
 
+#include <RobotAPI/libraries/aron/core/data/visitor/variant/VariantVisitor.h>
+
 namespace armarx::RemoteGui
 {
     namespace detail
@@ -37,7 +39,8 @@ namespace armarx::RemoteGui
     class ValueVariant;
 
     using ValueMap = std::map<std::string, ValueVariant>;
-}
+} // namespace armarx::RemoteGui
+
 namespace armarx::aron::component_config
 {
 
@@ -82,7 +85,8 @@ namespace armarx::aron::component_config
         std::atomic_bool in_list_{false};
     };
 
-    class GetValueFromMapVisitor : public aron::data::RecursiveTypedVisitor<data::VariantPtr, const type::VariantPtr>
+    class GetValueFromMapVisitor :
+        public aron::data::RecursiveTypedVisitor<data::VariantPtr, const type::VariantPtr>
     {
     public:
         explicit GetValueFromMapVisitor(armarx::RemoteGui::TabProxy* proxy);
@@ -123,11 +127,10 @@ namespace armarx::aron::component_config
 
         bool tabRebuildRequired() const;
 
-
     private:
         std::experimental::observer_ptr<armarx::RemoteGui::TabProxy> proxy_;
         bool in_list_{false};
         bool tab_rebuild_required_{false};
     };
 
-}
\ No newline at end of file
+} // namespace armarx::aron::component_config
\ No newline at end of file
diff --git a/source/RobotAPI/libraries/aron_component_config/Util.h b/source/RobotAPI/libraries/aron_component_config/Util.h
index c6c5561b7112714812896a4eec2269c1f767b597..f9b6889eff84ef6cac3d73607e13bc6eaa6b10dc 100644
--- a/source/RobotAPI/libraries/aron_component_config/Util.h
+++ b/source/RobotAPI/libraries/aron_component_config/Util.h
@@ -24,13 +24,16 @@
 
 #include <memory>
 #include <numeric>
+
 #include <RobotAPI/libraries/aron/core/data/variant/Variant.h>
 
+#include <cxxabi.h>
 
 namespace armarx::aron::component_config
 {
 
-    inline std::string pathToName(const std::shared_ptr<data::Variant>& v)
+    inline std::string
+    pathToName(const std::shared_ptr<data::Variant>& v)
     {
         auto vector = v->getPath().getPath();
         auto path = v->getPath();
@@ -42,7 +45,8 @@ namespace armarx::aron::component_config
 
     template <typename DataInputT, typename TypeInputT>
     std::map<std::string,
-             std::pair<typename std::remove_const<DataInputT>::type, typename std::remove_const<TypeInputT>::type>>
+             std::pair<typename std::remove_const<DataInputT>::type,
+                       typename std::remove_const<TypeInputT>::type>>
     getObjectElements(DataInputT& o, TypeInputT& t)
     {
         std::map<std::string, std::pair<data::VariantPtr, type::VariantPtr>> ret;
@@ -53,7 +57,7 @@ namespace armarx::aron::component_config
 
         if (x)
         {
-            for (const auto& [key, e]: x->getElements())
+            for (const auto& [key, e] : x->getElements())
             {
                 auto ct = y->getMemberType(key);
                 ret.insert({key, {e, ct}});
@@ -64,11 +68,14 @@ namespace armarx::aron::component_config
 
     template <typename DataInputT, typename TypeInputT>
     std::map<std::string,
-             std::pair<typename std::remove_const<DataInputT>::type, typename std::remove_const<TypeInputT>::type>>
+             std::pair<typename std::remove_const<DataInputT>::type,
+                       typename std::remove_const<TypeInputT>::type>>
     getDictElements(DataInputT& o, TypeInputT& t)
     {
-        std::map<std::string, std::pair<typename std::remove_const<DataInputT>::type,
-                                        typename std::remove_const<TypeInputT>::type>> ret;
+        std::map<std::string,
+                 std::pair<typename std::remove_const<DataInputT>::type,
+                           typename std::remove_const<TypeInputT>::type>>
+            ret;
         auto x = data::Dict::DynamicCastAndCheck(o);
         auto y = type::Dict::DynamicCastAndCheck(t);
 
@@ -76,7 +83,7 @@ namespace armarx::aron::component_config
 
         if (x)
         {
-            for (const auto& [key, e]: x->getElements())
+            for (const auto& [key, e] : x->getElements())
             {
                 ret.insert({key, {e, ac}});
             }
@@ -85,11 +92,13 @@ namespace armarx::aron::component_config
     }
 
     template <typename DataInputT, typename TypeInputT>
-    std::vector<std::pair<typename std::remove_const<DataInputT>::type, typename std::remove_const<TypeInputT>::type>>
+    std::vector<std::pair<typename std::remove_const<DataInputT>::type,
+                          typename std::remove_const<TypeInputT>::type>>
     getListElements(DataInputT& o, TypeInputT& t)
     {
         std::vector<std::pair<typename std::remove_const<DataInputT>::type,
-                              typename std::remove_const<TypeInputT>::type>> ret;
+                              typename std::remove_const<TypeInputT>::type>>
+            ret;
         auto x = data::List::DynamicCastAndCheck(o);
         auto y = type::List::DynamicCastAndCheck(t);
 
@@ -97,7 +106,7 @@ namespace armarx::aron::component_config
 
         if (x)
         {
-            for (const auto& e: x->getElements())
+            for (const auto& e : x->getElements())
             {
                 ret.emplace_back(e, ac);
             }
@@ -106,8 +115,10 @@ namespace armarx::aron::component_config
     }
 
     template <typename DataInputT, typename TypeInputT>
-    std::pair<std::pair<typename std::remove_const<DataInputT>::type, typename std::remove_const<TypeInputT>::type>,
-              std::pair<typename std::remove_const<DataInputT>::type, typename std::remove_const<TypeInputT>::type>>
+    std::pair<std::pair<typename std::remove_const<DataInputT>::type,
+                        typename std::remove_const<TypeInputT>::type>,
+              std::pair<typename std::remove_const<DataInputT>::type,
+                        typename std::remove_const<TypeInputT>::type>>
     getPairElements(DataInputT& o, TypeInputT& t)
     {
         auto x = data::List::DynamicCastAndCheck(o);
@@ -121,14 +132,14 @@ namespace armarx::aron::component_config
             auto ac0 = y->getFirstAcceptedType();
             auto e1 = x->getElement(1);
             auto ac1 = y->getSecondAcceptedType();
-            return {{e0, ac0},
-                    {e1, ac1}};
+            return {{e0, ac0}, {e1, ac1}};
         }
         return {};
     }
 
     template <typename DataInputT, typename TypeInputT>
-    std::vector<std::pair<typename std::remove_const<DataInputT>::type, typename std::remove_const<TypeInputT>::type>>
+    std::vector<std::pair<typename std::remove_const<DataInputT>::type,
+                          typename std::remove_const<TypeInputT>::type>>
     getTupleElements(DataInputT& o, TypeInputT& t)
     {
         std::vector<std::pair<data::VariantPtr, type::VariantPtr>> ret;
@@ -140,7 +151,7 @@ namespace armarx::aron::component_config
         if (x)
         {
             unsigned int i = 0;
-            for (const auto& e: x->getElements())
+            for (const auto& e : x->getElements())
             {
                 auto ac = y->getAcceptedType(i++);
                 ret.emplace_back(e, ac);
@@ -148,4 +159,4 @@ namespace armarx::aron::component_config
         }
         return ret;
     }
-}
\ No newline at end of file
+} // namespace armarx::aron::component_config
\ No newline at end of file
diff --git a/source/RobotAPI/libraries/aron_component_config/VariantHelperFactory.cpp b/source/RobotAPI/libraries/aron_component_config/VariantHelperFactory.cpp
index 1a9f09ecf7c7b2d90577ec8974c4968f4d88c213..10e021861bbc16a6464ce29c95946dbbd3170888 100644
--- a/source/RobotAPI/libraries/aron_component_config/VariantHelperFactory.cpp
+++ b/source/RobotAPI/libraries/aron_component_config/VariantHelperFactory.cpp
@@ -20,11 +20,13 @@
  *             GNU General Public License
  */
 
-#include <RobotAPI/libraries/aron/core/data/variant/All.h>
-#include <ArmarXCore/core/application/properties/PropertyDefinitionContainer.h>
-#include <ArmarXCore/core/application/properties/Property.h>
 #include "VariantHelperFactory.h"
 
+#include <ArmarXCore/core/application/properties/Property.h>
+#include <ArmarXCore/core/application/properties/PropertyDefinitionContainer.h>
+
+#include <RobotAPI/libraries/aron/core/data/variant/All.h>
+
 namespace armarx::aron::component_config::products
 {
     template <>
@@ -78,8 +80,9 @@ namespace armarx::aron::component_config::products
 
     template <>
     aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::INT>::from_string(const std::string& string,
-                                                                const armarx::aron::Path& path) const
+    products::VariantHelper<type::Descriptor::INT>::from_string(
+        const std::string& string,
+        const armarx::aron::Path& path) const
     {
         ARMARX_TRACE;
         int i = string.empty() ? 0 : std::stoi(string);
@@ -88,18 +91,20 @@ namespace armarx::aron::component_config::products
 
     template <>
     aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::FLOAT>::from_string(const std::string& string,
-                                                                  const armarx::aron::Path& path) const
+    products::VariantHelper<type::Descriptor::FLOAT>::from_string(
+        const std::string& string,
+        const armarx::aron::Path& path) const
     {
         ARMARX_TRACE;
-        float f = string.empty() ?  0 : std::stof(string);
+        float f = string.empty() ? 0 : std::stof(string);
         return make_float(f, path);
     }
 
     template <>
     aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::DOUBLE>::from_string(const std::string& string,
-                                                                   const armarx::aron::Path& path) const
+    products::VariantHelper<type::Descriptor::DOUBLE>::from_string(
+        const std::string& string,
+        const armarx::aron::Path& path) const
     {
         ARMARX_TRACE;
         double d = string.empty() ? 0 : std::stod(string);
@@ -108,14 +113,16 @@ namespace armarx::aron::component_config::products
 
     template <>
     aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::BOOL>::from_string(const std::string& string,
-                                                                 const armarx::aron::Path& path) const
+    products::VariantHelper<type::Descriptor::BOOL>::from_string(
+        const std::string& string,
+        const armarx::aron::Path& path) const
     {
         ARMARX_TRACE;
         if (string == "true")
         {
             return make_bool(true, path);
-        } else if (string == "false" or string.empty())
+        }
+        else if (string == "false" or string.empty())
         {
             return make_bool(false, path);
         }
@@ -124,8 +131,9 @@ namespace armarx::aron::component_config::products
 
     template <>
     aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::INT_ENUM>::from_string(const std::string& string,
-                                                                     const armarx::aron::Path& path) const
+    products::VariantHelper<type::Descriptor::INT_ENUM>::from_string(
+        const std::string& string,
+        const armarx::aron::Path& path) const
     {
         // TODO: this might not work
         ARMARX_TRACE;
@@ -134,22 +142,25 @@ namespace armarx::aron::component_config::products
 
     template <>
     aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::STRING>::from_string(const std::string& string,
-                                                                   const armarx::aron::Path& path) const
+    products::VariantHelper<type::Descriptor::STRING>::from_string(
+        const std::string& string,
+        const armarx::aron::Path& path) const
     {
         ARMARX_TRACE;
         std::string formatted_string = "";
         if (not string.empty())
         {
-            formatted_string = armarx::FileSystemPathBuilder_ApplyFormattingAndResolveEnvAndCMakeVars(string);
+            formatted_string =
+                armarx::FileSystemPathBuilder_ApplyFormattingAndResolveEnvAndCMakeVars(string);
         }
         return make_string(formatted_string, path);
     }
 
     template <>
     void
-    products::VariantHelper<type::Descriptor::INT>::set_value_from_string(const armarx::aron::data::VariantPtr& variant,
-                                                                          const std::string& string) const
+    products::VariantHelper<type::Descriptor::INT>::set_value_from_string(
+        const armarx::aron::data::VariantPtr& variant,
+        const std::string& string) const
     {
         ARMARX_TRACE;
         data::Int::DynamicCast(variant)->getValue() = std::stoi(string);
@@ -157,8 +168,9 @@ namespace armarx::aron::component_config::products
 
     template <>
     void
-    products::VariantHelper<type::Descriptor::FLOAT>::set_value_from_string(const armarx::aron::data::VariantPtr& variant,
-                                                                            const std::string& string) const
+    products::VariantHelper<type::Descriptor::FLOAT>::set_value_from_string(
+        const armarx::aron::data::VariantPtr& variant,
+        const std::string& string) const
     {
         ARMARX_TRACE;
         data::Float::DynamicCast(variant)->getValue() = std::stof(string);
@@ -166,8 +178,9 @@ namespace armarx::aron::component_config::products
 
     template <>
     void
-    products::VariantHelper<type::Descriptor::DOUBLE>::set_value_from_string(const armarx::aron::data::VariantPtr& variant,
-                                                                             const std::string& string) const
+    products::VariantHelper<type::Descriptor::DOUBLE>::set_value_from_string(
+        const armarx::aron::data::VariantPtr& variant,
+        const std::string& string) const
     {
         ARMARX_TRACE;
         data::Double::DynamicCast(variant)->getValue() = std::stod(string);
@@ -175,8 +188,9 @@ namespace armarx::aron::component_config::products
 
     template <>
     void
-    products::VariantHelper<type::Descriptor::BOOL>::set_value_from_string(const armarx::aron::data::VariantPtr& variant,
-                                                                           const std::string& string) const
+    products::VariantHelper<type::Descriptor::BOOL>::set_value_from_string(
+        const armarx::aron::data::VariantPtr& variant,
+        const std::string& string) const
     {
         ARMARX_TRACE;
         data::Bool::DynamicCast(variant)->getValue() = string == "true";
@@ -184,8 +198,9 @@ namespace armarx::aron::component_config::products
 
     template <>
     void
-    products::VariantHelper<type::Descriptor::STRING>::set_value_from_string(const armarx::aron::data::VariantPtr& variant,
-                                                                             const std::string& string) const
+    products::VariantHelper<type::Descriptor::STRING>::set_value_from_string(
+        const armarx::aron::data::VariantPtr& variant,
+        const std::string& string) const
     {
         ARMARX_TRACE;
         data::String::DynamicCast(variant)->getValue() = string;
@@ -193,18 +208,18 @@ namespace armarx::aron::component_config::products
 
     template <>
     void
-    products::VariantHelper<type::Descriptor::INT_ENUM>::set_value_from_string(const armarx::aron::data::VariantPtr& variant,
-                                                                               const std::string& string) const
+    products::VariantHelper<type::Descriptor::INT_ENUM>::set_value_from_string(
+        const armarx::aron::data::VariantPtr& variant,
+        const std::string& string) const
     {
         ARMARX_TRACE;
         data::Int::DynamicCast(variant)->getValue() = std::stoi(string);
     }
 
-
     template struct products::VariantHelper<type::Descriptor::INT>;
     template struct products::VariantHelper<type::Descriptor::STRING>;
     template struct products::VariantHelper<type::Descriptor::BOOL>;
     template struct products::VariantHelper<type::Descriptor::FLOAT>;
     template struct products::VariantHelper<type::Descriptor::DOUBLE>;
     template struct products::VariantHelper<type::Descriptor::INT_ENUM>;
-}
\ No newline at end of file
+} // namespace armarx::aron::component_config::products
\ No newline at end of file
diff --git a/source/RobotAPI/libraries/aron_component_config/VariantHelperFactory.h b/source/RobotAPI/libraries/aron_component_config/VariantHelperFactory.h
index d2dfb921a7f5cea9e55c6fd96258f258a965c9e3..21a352fe268161758d1a6b20aa96b49c34f1d6c0 100644
--- a/source/RobotAPI/libraries/aron_component_config/VariantHelperFactory.h
+++ b/source/RobotAPI/libraries/aron_component_config/VariantHelperFactory.h
@@ -22,8 +22,9 @@
 
 #pragma once
 
-#include <ArmarXCore/util/CPPUtility/SelfRegisteringFactory.h>
 #include <ArmarXCore/core/application/properties/forward_declarations.h>
+#include <ArmarXCore/util/CPPUtility/SelfRegisteringFactory.h>
+
 #include <RobotAPI/libraries/aron/core/Descriptor.h>
 #include <RobotAPI/libraries/aron/core/data/variant/Variant.h>
 
@@ -33,20 +34,20 @@ namespace armarx::aron::component_config
     {
         struct VariantHelper : armarx::Factory<VariantHelper, type::Descriptor>
         {
-            explicit VariantHelper(Key)
-            {
-            };
+            explicit VariantHelper(Key){};
 
             virtual ~VariantHelper() = default;
 
             virtual std::string to_string(const armarx::aron::data::VariantPtr&) const = 0;
 
-            virtual void
-            set_value_from_string(const armarx::aron::data::VariantPtr&, const std::string& string) const = 0;
+            virtual void set_value_from_string(const armarx::aron::data::VariantPtr&,
+                                               const std::string& string) const = 0;
 
-            virtual aron::data::VariantPtr from_string(const std::string&, const armarx::aron::Path& path) const = 0;
+            virtual aron::data::VariantPtr from_string(const std::string&,
+                                                       const armarx::aron::Path& path) const = 0;
         };
-    }
+    } // namespace factories
+
     namespace products
     {
         template <type::Descriptor DescT>
@@ -55,9 +56,7 @@ namespace armarx::aron::component_config
             using RegistrarT = factories::VariantHelper::Registrar<VariantHelper<DescT>>;
             static constexpr type::Descriptor id = DescT;
 
-            explicit VariantHelper() : RegistrarT(typename RegistrarT::Registration())
-            {
-            };
+            explicit VariantHelper() : RegistrarT(typename RegistrarT::Registration()){};
 
             [[nodiscard]] std::string to_string(const data::VariantPtr& ptr) const override;
 
@@ -68,101 +67,99 @@ namespace armarx::aron::component_config
             from_string(const std::string&, const armarx::aron::Path& path) const override;
         };
 
-
-    }
+    } // namespace products
 
     template <>
     std::string
     products::VariantHelper<type::Descriptor::INT>::to_string(const data::VariantPtr& ptr) const;
 
     template <>
-    aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::INT>::from_string(const std::string&,
-                                                                const armarx::aron::Path& path) const;
+    aron::data::VariantPtr products::VariantHelper<type::Descriptor::INT>::from_string(
+        const std::string&,
+        const armarx::aron::Path& path) const;
 
     template <>
-    void
-    products::VariantHelper<type::Descriptor::INT>::set_value_from_string(const armarx::aron::data::VariantPtr&,
-                                                                          const std::string&) const;
+    void products::VariantHelper<type::Descriptor::INT>::set_value_from_string(
+        const armarx::aron::data::VariantPtr&,
+        const std::string&) const;
 
     template <>
     std::string
     products::VariantHelper<type::Descriptor::FLOAT>::to_string(const data::VariantPtr& ptr) const;
 
     template <>
-    aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::FLOAT>::from_string(const std::string&,
-                                                                  const armarx::aron::Path& path) const;
+    aron::data::VariantPtr products::VariantHelper<type::Descriptor::FLOAT>::from_string(
+        const std::string&,
+        const armarx::aron::Path& path) const;
 
     template <>
-    void
-    products::VariantHelper<type::Descriptor::FLOAT>::set_value_from_string(const armarx::aron::data::VariantPtr&,
-                                                                            const std::string&) const;
+    void products::VariantHelper<type::Descriptor::FLOAT>::set_value_from_string(
+        const armarx::aron::data::VariantPtr&,
+        const std::string&) const;
 
     template <>
     std::string
     products::VariantHelper<type::Descriptor::BOOL>::to_string(const data::VariantPtr& ptr) const;
 
     template <>
-    aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::BOOL>::from_string(const std::string&,
-                                                                 const armarx::aron::Path& path) const;
+    aron::data::VariantPtr products::VariantHelper<type::Descriptor::BOOL>::from_string(
+        const std::string&,
+        const armarx::aron::Path& path) const;
 
     template <>
-    void
-    products::VariantHelper<type::Descriptor::BOOL>::set_value_from_string(const armarx::aron::data::VariantPtr&,
-                                                                           const std::string&) const;
+    void products::VariantHelper<type::Descriptor::BOOL>::set_value_from_string(
+        const armarx::aron::data::VariantPtr&,
+        const std::string&) const;
 
     template <>
     std::string
     products::VariantHelper<type::Descriptor::STRING>::to_string(const data::VariantPtr& ptr) const;
 
     template <>
-    aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::STRING>::from_string(const std::string&,
-                                                                   const armarx::aron::Path& path) const;
+    aron::data::VariantPtr products::VariantHelper<type::Descriptor::STRING>::from_string(
+        const std::string&,
+        const armarx::aron::Path& path) const;
 
     template <>
-    void
-    products::VariantHelper<type::Descriptor::STRING>::set_value_from_string(const armarx::aron::data::VariantPtr&,
-                                                                             const std::string&) const;
+    void products::VariantHelper<type::Descriptor::STRING>::set_value_from_string(
+        const armarx::aron::data::VariantPtr&,
+        const std::string&) const;
 
     template <>
     std::string
     products::VariantHelper<type::Descriptor::DOUBLE>::to_string(const data::VariantPtr& ptr) const;
 
     template <>
-    aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::DOUBLE>::from_string(const std::string&,
-                                                                   const armarx::aron::Path& path) const;
+    aron::data::VariantPtr products::VariantHelper<type::Descriptor::DOUBLE>::from_string(
+        const std::string&,
+        const armarx::aron::Path& path) const;
 
     template <>
-    void
-    products::VariantHelper<type::Descriptor::DOUBLE>::set_value_from_string(const armarx::aron::data::VariantPtr&,
-                                                                             const std::string&) const;
+    void products::VariantHelper<type::Descriptor::DOUBLE>::set_value_from_string(
+        const armarx::aron::data::VariantPtr&,
+        const std::string&) const;
 
     template <>
-    std::string
-    products::VariantHelper<type::Descriptor::INT_ENUM>::to_string(const data::VariantPtr& ptr) const;
+    std::string products::VariantHelper<type::Descriptor::INT_ENUM>::to_string(
+        const data::VariantPtr& ptr) const;
 
     template <>
-    aron::data::VariantPtr
-    products::VariantHelper<type::Descriptor::INT_ENUM>::from_string(const std::string&,
-                                                                     const armarx::aron::Path& path) const;
+    aron::data::VariantPtr products::VariantHelper<type::Descriptor::INT_ENUM>::from_string(
+        const std::string&,
+        const armarx::aron::Path& path) const;
 
     template <>
-    void
-    products::VariantHelper<type::Descriptor::INT_ENUM>::set_value_from_string(const armarx::aron::data::VariantPtr&,
-                                                                               const std::string&) const;
-
+    void products::VariantHelper<type::Descriptor::INT_ENUM>::set_value_from_string(
+        const armarx::aron::data::VariantPtr&,
+        const std::string&) const;
 
     static inline const std::list<type::Descriptor> implementedListDescriptors = {
-            type::Descriptor::INT_ENUM,
-            type::Descriptor::INT,
-            type::Descriptor::STRING,
-            type::Descriptor::FLOAT,
-            type::Descriptor::DOUBLE,
-            type::Descriptor::BOOL,
+        type::Descriptor::INT_ENUM,
+        type::Descriptor::INT,
+        type::Descriptor::STRING,
+        type::Descriptor::FLOAT,
+        type::Descriptor::DOUBLE,
+        type::Descriptor::BOOL,
     };
     extern template struct products::VariantHelper<type::Descriptor::INT>;
     extern template struct products::VariantHelper<type::Descriptor::FLOAT>;
@@ -170,5 +167,4 @@ namespace armarx::aron::component_config
     extern template struct products::VariantHelper<type::Descriptor::STRING>;
     extern template struct products::VariantHelper<type::Descriptor::BOOL>;
     extern template struct products::VariantHelper<type::Descriptor::INT_ENUM>;
-}
-
+} // namespace armarx::aron::component_config