diff --git a/Calorimeter/CaloTrackingGeometry/src/CaloTrackingGeometryBuilder.cxx b/Calorimeter/CaloTrackingGeometry/src/CaloTrackingGeometryBuilder.cxx
index 604c95234954aa7a008347e07c8dc9c09746e41d..2826fb73881e34263ab6834a08dc9d401f9b2558 100755
--- a/Calorimeter/CaloTrackingGeometry/src/CaloTrackingGeometryBuilder.cxx
+++ b/Calorimeter/CaloTrackingGeometry/src/CaloTrackingGeometryBuilder.cxx
@@ -1067,8 +1067,11 @@ Trk::TrackingGeometry* Calo::CaloTrackingGeometryBuilder::trackingGeometry(const
    matCrack.emplace_back(m_caloMaterial,-1);
    matCrack.emplace_back(mAl,-1);
    //
-   Trk::BinUtility* bun = new Trk::BinUtility(3,-1.8,-1.2,Trk::open,Trk::binEta);
-   Trk::BinUtility* bup = new Trk::BinUtility(3, 1.2,1.8,Trk::open,Trk::binEta);
+   double etadist;
+   // if TileGap3 goes above 1.6 in eta - it's RUN3 geometry
+   int nbins = (caloDDM->is_in(1.65,0.0,CaloCell_ID::TileGap3,etadist)) ? 6 : 3;
+   Trk::BinUtility* bun = new Trk::BinUtility(nbins,-1.8,-1.2,Trk::open,Trk::binEta);
+   Trk::BinUtility* bup = new Trk::BinUtility(nbins, 1.2,1.8,Trk::open,Trk::binEta);
    // array of indices
    std::vector<std::vector<size_t> > indexP;  
    std::vector<std::vector<size_t> > indexN;  
@@ -1083,7 +1086,7 @@ Trk::TrackingGeometry* Calo::CaloTrackingGeometryBuilder::trackingGeometry(const
      steps.clear();
      std::vector<size_t> indx; indx.clear();
      steps.push_back(crackZ1);
-     indx.push_back( i<2 ? 0 : 1);
+     indx.push_back( i<bup->bins()-1 ? 0 : 1);
      steps.push_back(crackZ2);
      indx.push_back(2);
      steps.push_back(keyDim.back().second);
diff --git a/Calorimeter/CaloTrackingGeometry/src/CaloTrackingGeometryBuilderCond.cxx b/Calorimeter/CaloTrackingGeometry/src/CaloTrackingGeometryBuilderCond.cxx
index f67a3254fc90ec39316a18c484c3a9becbc14871..28162c6006fac9806143019aafe42d37156ecc18 100755
--- a/Calorimeter/CaloTrackingGeometry/src/CaloTrackingGeometryBuilderCond.cxx
+++ b/Calorimeter/CaloTrackingGeometry/src/CaloTrackingGeometryBuilderCond.cxx
@@ -1070,8 +1070,11 @@ Calo::CaloTrackingGeometryBuilderCond::trackingGeometry(
    matCrack.emplace_back(m_caloMaterial,-1);
    matCrack.emplace_back(mAl,-1);
    //
-   Trk::BinUtility* bun = new Trk::BinUtility(3,-1.8,-1.2,Trk::open,Trk::binEta);
-   Trk::BinUtility* bup = new Trk::BinUtility(3, 1.2,1.8,Trk::open,Trk::binEta);
+   double etadist;
+   // if TileGap3 goes above 1.6 in eta - it's RUN3 geometry
+   int nbins = (caloDDM->is_in(1.65,0.0,CaloCell_ID::TileGap3,etadist)) ? 6 : 3;
+   Trk::BinUtility* bun = new Trk::BinUtility(nbins,-1.8,-1.2,Trk::open,Trk::binEta);
+   Trk::BinUtility* bup = new Trk::BinUtility(nbins, 1.2,1.8,Trk::open,Trk::binEta);
    // array of indices
    std::vector<std::vector<size_t> > indexP;  
    std::vector<std::vector<size_t> > indexN;  
@@ -1086,7 +1089,7 @@ Calo::CaloTrackingGeometryBuilderCond::trackingGeometry(
      steps.clear();
      std::vector<size_t> indx; indx.clear();
      steps.push_back(crackZ1);
-     indx.push_back( i<2 ? 0 : 1);
+     indx.push_back( i<bup->bins()-1 ? 0 : 1);
      steps.push_back(crackZ2);
      indx.push_back(2);
      steps.push_back(keyDim.back().second);
diff --git a/Tools/WorkflowTestRunner/python/References.py b/Tools/WorkflowTestRunner/python/References.py
index 6743f9b01f624f42c574f90cab0fca92236e7414..a429c62ff11a16c169d81d93fd2131cb36e6151a 100644
--- a/Tools/WorkflowTestRunner/python/References.py
+++ b/Tools/WorkflowTestRunner/python/References.py
@@ -20,6 +20,6 @@ references_map = {
     "d1759": "v4",
     # Reco
     "q442": "v5",
-    "q445": "v13",
+    "q445": "v14",
     "q449": "v8",
 }