diff --git a/dumux/decoupled/2p/diffusion/fvmpfa/lmethod/fvmpfal2dpressure2p.hh b/dumux/decoupled/2p/diffusion/fvmpfa/lmethod/fvmpfal2dpressure2p.hh
index d8d6380a68dfe2bd527a816c886bff328f8ab6ce..9cc47f8ed23a4f4b6e7a3a9fc2a9d7d20a5666e8 100644
--- a/dumux/decoupled/2p/diffusion/fvmpfa/lmethod/fvmpfal2dpressure2p.hh
+++ b/dumux/decoupled/2p/diffusion/fvmpfa/lmethod/fvmpfal2dpressure2p.hh
@@ -600,9 +600,9 @@ void FvMpfaL2dPressure2p<TypeTag>::initializeMatrix()
             if (intersection.neighbor() && nextIntersection.neighbor())
             {
                 for (const auto& innerIntersection
-                     : Dune::intersections(problem_.gridView(), *intersection.outside()))
+                     : Dune::intersections(problem_.gridView(), intersection.outside()))
                     for (const auto& innerNextIntersection
-                         : Dune::intersections(problem_.gridView(), *nextIntersection.outside()))
+                         : Dune::intersections(problem_.gridView(), nextIntersection.outside()))
                     {
                         if (innerIntersection.neighbor() && innerNextIntersection.neighbor())
                         {
@@ -653,9 +653,9 @@ void FvMpfaL2dPressure2p<TypeTag>::initializeMatrix()
             if (intersection.neighbor() && nextIntersection.neighbor())
             {
                 for (const auto& innerIntersection
-                     : Dune::intersections(problem_.gridView(), *intersection.outside()))
+                     : Dune::intersections(problem_.gridView(), intersection.outside()))
                     for (const auto& innerNextIntersection
-                         : Dune::intersections(problem_.gridView(), *nextIntersection.outside()))
+                         : Dune::intersections(problem_.gridView(), nextIntersection.outside()))
                     {
                         if (innerIntersection.neighbor() && innerNextIntersection.neighbor())
                         {
@@ -956,7 +956,7 @@ void FvMpfaL2dPressure2p<TypeTag>::storeInteractionVolumeInfo()
                                         dim);
 
                                 int globalVertIdx2corner = problem_.variables().index(
-                                        *((element2).template subEntity < dim > (localVertIdx2corner)));
+                                        element2.template subEntity < dim > (localVertIdx2corner));
 
                                 if (globalVertIdx2corner == globalVertIdx1234)
                                 {
@@ -1087,7 +1087,7 @@ void FvMpfaL2dPressure2p<TypeTag>::storeInteractionVolumeInfo()
                                         dim);
 
                                 int globalVertIdx4corner = problem_.variables().index(
-                                        *((element4).template subEntity < dim > (localVertIdx4corner)));
+                                        (element4).template subEntity < dim > (localVertIdx4corner));
 
                                 if (globalVertIdx4corner == globalVertIdx1234)
                                 {
diff --git a/dumux/decoupled/2p/diffusion/fvmpfa/lmethod/fvmpfal2dpressure2padaptive.hh b/dumux/decoupled/2p/diffusion/fvmpfa/lmethod/fvmpfal2dpressure2padaptive.hh
index 07246af66af8ba8a044b27ce6b6765702323eef2..c0378bf53b29573c7ce1838543d65323d065eac5 100644
--- a/dumux/decoupled/2p/diffusion/fvmpfa/lmethod/fvmpfal2dpressure2padaptive.hh
+++ b/dumux/decoupled/2p/diffusion/fvmpfa/lmethod/fvmpfal2dpressure2padaptive.hh
@@ -607,10 +607,10 @@ void FvMpfaL2dPressure2pAdaptive<TypeTag>::initializeMatrix()
                     bool isCorner = true;
 
                     for (const auto& innerIntersection
-                         : Dune::intersections(problem_.gridView(), *intersection.outside()))
+                         : Dune::intersections(problem_.gridView(), intersection.outside()))
                     {
                         for (const auto& innerNextIntersection
-                             : Dune::intersections(problem_.gridView(), *nextIntersection.outside()))
+                             : Dune::intersections(problem_.gridView(), nextIntersection.outside()))
                         {
                             if (innerIntersection.neighbor() && innerNextIntersection.neighbor())
                             {
@@ -686,10 +686,10 @@ void FvMpfaL2dPressure2pAdaptive<TypeTag>::initializeMatrix()
                     }
 
                     for (const auto& innerIntersection
-                         : Dune::intersections(problem_.gridView(), *intersection.outside()))
+                         : Dune::intersections(problem_.gridView(), intersection.outside()))
                     {
                         for (const auto& innerNextIntersection
-                             : Dune::intersections(problem_.gridView(), *nextIntersection.outside()))
+                             : Dune::intersections(problem_.gridView(), nextIntersection.outside()))
                         {
                             if (innerIntersection.neighbor() && innerNextIntersection.neighbor())
                             {
@@ -703,7 +703,7 @@ void FvMpfaL2dPressure2pAdaptive<TypeTag>::initializeMatrix()
 
                                     this->A_.addindex(eIdxGlobalI, eIdxGlobalCorner);
 
-                                    if (element.level() > outside->level())
+                                    if (element.level() > outside.level())
                                     {
                                         int eIdxGlobalJCorner = problem_.variables().index(nextOutside);
 
diff --git a/dumux/decoupled/2p/diffusion/fvmpfa/omethod/fvmpfao2dpressure2p.hh b/dumux/decoupled/2p/diffusion/fvmpfa/omethod/fvmpfao2dpressure2p.hh
index d72bc0e982684e7b0454e1bec600f300c8239a24..3d942fb2bcff2ca6f417001331a943fb77f0599c 100644
--- a/dumux/decoupled/2p/diffusion/fvmpfa/omethod/fvmpfao2dpressure2p.hh
+++ b/dumux/decoupled/2p/diffusion/fvmpfa/omethod/fvmpfao2dpressure2p.hh
@@ -577,9 +577,9 @@ void FvMpfaO2dPressure2p<TypeTag>::initializeMatrix()
             if (intersection.neighbor() && nextIntersection.neighbor())
             {
                 for (const auto& innerIntersection
-                     : Dune::intersections(problem_.gridView(), *intersection.outside()))
+                     : Dune::intersections(problem_.gridView(), intersection.outside()))
                     for (const auto& innerNextIntersection
-                         : Dune::intersections(problem_.gridView(), *nextIntersection.outside()))
+                         : Dune::intersections(problem_.gridView(), nextIntersection.outside()))
                     {
                         if (innerIntersection.neighbor() && innerNextIntersection.neighbor())
                         {
@@ -630,9 +630,9 @@ void FvMpfaO2dPressure2p<TypeTag>::initializeMatrix()
             if (intersection.neighbor() && nextIntersection.neighbor())
             {
                 for (const auto& innerIntersection
-                     : Dune::intersections(problem_.gridView(), *intersection.outside()))
+                     : Dune::intersections(problem_.gridView(), intersection.outside()))
                     for (const auto& innerNextIntersection
-                         : Dune::intersections(problem_.gridView(), *nextIntersection.outside()))
+                         : Dune::intersections(problem_.gridView(), nextIntersection.outside()))
                     {
                         if (innerIntersection.neighbor() && innerNextIntersection.neighbor())
                         {
diff --git a/dumux/decoupled/2p2c/fv2dpressure2p2cadaptive.hh b/dumux/decoupled/2p2c/fv2dpressure2p2cadaptive.hh
index 86432d9e5dd6107abe80524a6c77cceb95a5e85b..12cebc42c5a5d6eb49577c5b00177461c4ae05f2 100644
--- a/dumux/decoupled/2p2c/fv2dpressure2p2cadaptive.hh
+++ b/dumux/decoupled/2p2c/fv2dpressure2p2cadaptive.hh
@@ -892,7 +892,7 @@ int FV2dPressure2P2CAdaptive<TypeTag>::computeTransmissibilities(const Intersect
     globalPos3 = face13->outside().geometry().center();
     globalIdx3 = problem().variables().index(face13->outside());
     // get absolute permeability of neighbor cell 3
-    DimMatrix K3(problem().spatialParams().intrinsicPermeability(*face13->outside()));
+    DimMatrix K3(problem().spatialParams().intrinsicPermeability(face13->outside()));
 
 
     // get the intersection node /bar^{x_3} between 'isIt' and 'isIt13', denoted as 'corner123'
@@ -1141,8 +1141,8 @@ int FV2dPressure2P2CAdaptive<TypeTag>::transmissibilityAdapter_(const Intersecti
         ++tempIntersection;
 
         // ensure iterator increases over local end of neighbor J
-        if (tempIntersection== problem().gridView().template iend(*intersection.outside()))
-            tempIntersection = problem().gridView().template ibegin(*intersection.outside());
+        if (tempIntersection== problem().gridView().template iend(intersection.outside()))
+            tempIntersection = problem().gridView().template ibegin(intersection.outside());
 
         if(!tempIntersection->neighbor())
             continue;
@@ -1184,7 +1184,7 @@ int FV2dPressure2P2CAdaptive<TypeTag>::transmissibilityAdapter_(const Intersecti
     interactionVolume.setCenterPosition(corner1234);
 
     //***************   store pointer 1
-    interactionVolume.setSubVolumeElement(*intersection.outside(), 0);
+    interactionVolume.setSubVolumeElement(intersection.outside(), 0);
     interactionVolume.setIndexOnElement(intersection.indexInOutside(), 0, 0);
     interactionVolume.setIndexOnElement(isIt14->indexInInside(), 0, 1);
 
diff --git a/dumux/decoupled/2p2c/fv3dpressure2p2cadaptive.hh b/dumux/decoupled/2p2c/fv3dpressure2p2cadaptive.hh
index c88f7d297d5d9fd57ab0dd9a483bc84facd02f17..b7d09a303d4aae99b7f4ed8b4325de097ef692c0 100644
--- a/dumux/decoupled/2p2c/fv3dpressure2p2cadaptive.hh
+++ b/dumux/decoupled/2p2c/fv3dpressure2p2cadaptive.hh
@@ -503,7 +503,7 @@ void FV3dPressure2P2CAdaptive<TypeTag>::initializeMatrixRowSize()
                             additional2isNeighbor = additional3isNeighbor = false;
                             // run through all intersections with neighbors of J
                             for (const auto& checkIntersection
-                                 : Dune::intersections(problem().gridView(), *intersection.outside()))
+                                 : Dune::intersections(problem().gridView(), intersection.outside()))
                             {
                                 if (checkIntersection.neighbor())
                                 {
@@ -1409,14 +1409,14 @@ int FV3dPressure2P2CAdaptive<TypeTag>::computeTransmissibilities(const Intersect
     eIdxGlobal4 = problem().variables().index(face24->outside());
     GlobalPosition outerNormaln24 = face24->centerUnitOuterNormal();
     // get absolute permeability of neighbor cell 3
-    DimMatrix K4(problem().spatialParams().intrinsicPermeability(*face24->outside()));
+    DimMatrix K4(problem().spatialParams().intrinsicPermeability(face24->outside()));
 
     // get information of cell6
     globalPos6 = face26->outside().geometry().center();
     eIdxGlobal6 = problem().variables().index(face26->outside());
     GlobalPosition outerNormaln26 = face26->centerUnitOuterNormal();
     // get absolute permeability of neighbor cell 3
-    DimMatrix K6(problem().spatialParams().intrinsicPermeability(*face26->outside()));
+    DimMatrix K6(problem().spatialParams().intrinsicPermeability(face26->outside()));
 
     /**** b) Get Points on the edges (in plane of isIt), 'x'4 and 'x'5 ***********/
     int localFace12 = intersection.indexInOutside(); // isIt is face12
diff --git a/dumux/decoupled/2p2c/variableclass2p2cadaptive.hh b/dumux/decoupled/2p2c/variableclass2p2cadaptive.hh
index 6e58c793d1d8cea873ea78ef90702cda09478b17..177af593459bc23876b71071c10bd7bb9be7a745 100644
--- a/dumux/decoupled/2p2c/variableclass2p2cadaptive.hh
+++ b/dumux/decoupled/2p2c/variableclass2p2cadaptive.hh
@@ -176,13 +176,13 @@ public:
                        const int& globalIdx3)
     {
         IdType intersectionID = grid_.localIdSet().subId(
-            *irregularIs.inside(), irregularIs.indexInInside(), 1);
+            irregularIs.inside(), irregularIs.indexInInside(), 1);
         // mapping is only unique from smaller cell (if *inside and not *outside)
         if (irregularIs.inside().level() < irregularIs.outside().level())
         {
             // IS is regarded from larger cell: get the unique number as seen from smaller
             intersectionID = grid_.localIdSet().subId(
-                *irregularIs.outside(), irregularIs.indexInOutside(), 1);
+                irregularIs.outside(), irregularIs.indexInOutside(), 1);
 
             // store as if it was seen from smaller: change i & j
             irregularInterfaceMap_[intersectionID].T1_[first][2] = - T1[0];