diff --git a/src/output/OutputNamedItemValueSet.hpp b/src/output/OutputNamedItemValueSet.hpp
index 463e67a5522d81851b1a883bcaa5055d1b69a8b3..80c3d205200a7604840f48282b4b8cff8c137dc8 100644
--- a/src/output/OutputNamedItemValueSet.hpp
+++ b/src/output/OutputNamedItemValueSet.hpp
@@ -101,41 +101,6 @@ class OutputNamedItemDataSet
   // provided order
   std::vector<std::pair<std::string, ItemDataVariant>> m_name_itemvariant_list;
 
-  template <typename DataType,
-            ItemType item_type,
-            typename ConnectivityPtr,
-            template <typename DataTypeT, ItemType item_type_t, typename ConnectivityPtrT>
-            typename ItemDataT,
-            typename... Args>
-  PUGS_FORCEINLINE constexpr void
-  _doInsert(const NamedItemData<DataType, item_type, ConnectivityPtr, ItemDataT>& named_item_data)
-  {
-    for (auto& [name, itemvariant] : m_name_itemvariant_list) {
-      if (name == named_item_data.name()) {
-        std::ostringstream error_msg;
-        error_msg << "duplicate name '" << rang::fgB::yellow << name << rang::fg::reset << "' in name output list";
-        throw NormalError(error_msg.str());
-      }
-    }
-    m_name_itemvariant_list.push_back(std::make_pair(named_item_data.name(), named_item_data.itemData()));
-  }
-
-  template <typename DataType,
-            ItemType item_type,
-            typename ConnectivityPtr,
-            template <typename DataTypeT, ItemType item_type_t, typename ConnectivityPtrT>
-            typename ItemDataT,
-            typename... Args>
-  PUGS_FORCEINLINE constexpr void
-  _unpackVariadicInput(const NamedItemData<DataType, item_type, ConnectivityPtr, ItemDataT>& named_item_data,
-                       Args&&... args)
-  {
-    _doInsert(named_item_data);
-    if constexpr (sizeof...(args) > 0) {
-      this->_unpackVariadicInput(std::forward<Args>(args)...);
-    }
-  }
-
  public:
   auto
   begin() const
@@ -157,17 +122,14 @@ class OutputNamedItemDataSet
   void
   add(const NamedItemData<DataType, item_type, ConnectivityPtr, ItemDataT>& named_item_data)
   {
-    _doInsert(named_item_data);
-  }
-
-  template <typename... DataType,
-            ItemType... item_type,
-            typename... ConnectivityPtr,
-            template <typename DataTypeT, ItemType item_type_t, typename ConnectivityPtrT>
-            typename... ItemDataT>
-  OutputNamedItemDataSet(NamedItemData<DataType, item_type, ConnectivityPtr, ItemDataT>... named_item_data)
-  {
-    _unpackVariadicInput(named_item_data...);
+    for (auto& [name, itemvariant] : m_name_itemvariant_list) {
+      if (name == named_item_data.name()) {
+        std::ostringstream error_msg;
+        error_msg << "duplicate name '" << rang::fgB::yellow << name << rang::fg::reset << "' in name output list";
+        throw NormalError(error_msg.str());
+      }
+    }
+    m_name_itemvariant_list.push_back(std::make_pair(named_item_data.name(), named_item_data.itemData()));
   }
 
   OutputNamedItemDataSet(const OutputNamedItemDataSet&) = default;