diff --git a/dune/matrix-vector/genericvectortools.hh b/dune/matrix-vector/genericvectortools.hh
index f4143f871a1b5fbf4368fa842e1d9c6689611842..493c6c605b8431501b757431db8db40074a363f5 100644
--- a/dune/matrix-vector/genericvectortools.hh
+++ b/dune/matrix-vector/genericvectortools.hh
@@ -5,8 +5,10 @@
     \brief Various tools for working with istl vectors of arbitrary nesting depth
 */
 
-#include <iostream>
 #include <dune/common/fvector.hh>
+#include <dune/common/hybridutilities.hh>
+#include <dune/matrix-vector/algorithm.hh>
+#include <iostream>
 
 
 /** \brief Various tools for working with istl vectors of arbitrary nesting depth
@@ -33,8 +35,7 @@ void truncate(Vector& v, const BitVector& tr) {
 template <class Vector>
 struct Helper {
   static void writeBinary(std::ostream& s, const Vector& v) {
-    for (auto&& vi : v)
-      Generic::writeBinary(s, vi);
+    Hybrid::forEach(v, [&s](auto&& vi) { Generic::writeBinary(s, vi); });
   }
 
   template <class BitVector>