diff --git a/AtlasTest/CITest/Athena.cmake b/AtlasTest/CITest/Athena.cmake
index db0e56703afb9468f5d6ddfaa867aa18fec939b8..1064380d5c0bbd963e04e495dbd2641f88d8563b 100755
--- a/AtlasTest/CITest/Athena.cmake
+++ b/AtlasTest/CITest/Athena.cmake
@@ -71,7 +71,7 @@ atlas_add_citest( RecoRun2MC_PileUp
    DEPENDS_SUCCESS PileUpPresamplingRun2 )
 
 atlas_add_citest( RecoRun3Data
-   SCRIPT RunWorkflowTests_Run3.py --CI -r -w DataReco -a q449 --threads 8 -e '--maxEvents 100 --preExec="flags.Exec.FPE=500;" --conditionsTag CONDBR2-BLKPA-2022-13' --run-only 
+   SCRIPT RunWorkflowTests_Run3.py --CI -r -w DataReco -a q449 --threads 8 -e '--maxEvents 100 --preExec="flags.Exec.FPE=500;" --conditionsTag CONDBR2-BLKPA-2022-16' --run-only 
    PROPERTIES PROCESSORS 8 )
 
 atlas_add_citest( RecoRun3Data_Checks
@@ -79,7 +79,7 @@ atlas_add_citest( RecoRun3Data_Checks
    DEPENDS_SUCCESS RecoRun3Data )
 
 atlas_add_citest( RecoRun3Data_Bulk
-    SCRIPT RunWorkflowTests_Run3.py --CI -r -w DataReco -a f1333 --threads 8  -e '--skipEvents 100 --maxEvents 500 --inputBSFile=/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/Tier0ChainTests/TCT_Run3/data22_13p6TeV.00431493.physics_Main.daq.RAW._lb0525._SFO-16._0001.data --conditionsTag CONDBR2-BLKPA-2022-13'  --run-only --no-output-checks 
+    SCRIPT RunWorkflowTests_Run3.py --CI -r -w DataReco -a f1333 --threads 8  -e '--skipEvents 100 --maxEvents 500 --inputBSFile=/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/Tier0ChainTests/TCT_Run3/data22_13p6TeV.00431493.physics_Main.daq.RAW._lb0525._SFO-16._0001.data --conditionsTag CONDBR2-BLKPA-2022-16'  --run-only --no-output-checks 
    PROPERTIES PROCESSORS 8 )
 
 atlas_add_citest( RecoRun3Data_Bulk_Checks
@@ -87,7 +87,7 @@ atlas_add_citest( RecoRun3Data_Bulk_Checks
    DEPENDS_SUCCESS RecoRun3Data_Bulk )
 
 atlas_add_citest( RecoRun3Data_Express
-    SCRIPT RunWorkflowTests_Run3.py --CI -r -w DataReco -a x785 -e '--maxEvents 25 --inputBSFile=/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/Tier0ChainTests/TCT_Run3/data24_13p6TeV.00477023.express_express.merge.RAW._lb0287._SFO-ALL._0001.1 --conditionsTag CONDBR2-ES1PA-2024-03 ' --no-output-checks
+    SCRIPT RunWorkflowTests_Run3.py --CI -r -w DataReco -a x785 -e '--maxEvents 25 --inputBSFile=/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/Tier0ChainTests/TCT_Run3/data24_13p6TeV.00477023.express_express.merge.RAW._lb0287._SFO-ALL._0001.1 --conditionsTag CONDBR2-ES1PA-2024-05 ' --no-output-checks
     LOG_IGNORE_PATTERN "WARNING FPE .*PixelChargeLUTCalibCondAlg"
     # ignore FPEs from PixelChargeLUTCalibCondAlg
   )
@@ -108,10 +108,10 @@ atlas_add_citest( ZdcRec_ZDCInjCalib
   )
 
 atlas_add_citest( RecoRun3Data_Cosmics 
-   SCRIPT RunWorkflowTests_Run3.py --CI -r -w DataReco -a q450 -e '--maxEvents 25  --preExec="all:flags.Exec.FPE=500;" --conditionsTag CONDBR2-BLKPA-2022-13'  --no-output-checks)
+   SCRIPT RunWorkflowTests_Run3.py --CI -r -w DataReco -a q450 -e '--maxEvents 25  --preExec="all:flags.Exec.FPE=500;" --conditionsTag CONDBR2-BLKPA-2022-16'  --no-output-checks)
 
 atlas_add_citest( RecoRun3Data_Calib
-   SCRIPT RunWorkflowTests_Run3.py --CI -r -w DataReco -a q451 -e '--maxEvents 25  --preExec="all:flags.Exec.FPE=500;" --conditionsTag CONDBR2-BLKPA-2022-13' --no-output-checks)
+   SCRIPT RunWorkflowTests_Run3.py --CI -r -w DataReco -a q451 -e '--maxEvents 25  --preExec="all:flags.Exec.FPE=500;" --conditionsTag CONDBR2-BLKPA-2022-16' --no-output-checks)
 
 atlas_add_citest( RecoRun3MC
    SCRIPT RunWorkflowTests_Run3.py --CI -r -w MCReco -e '--maxEvents 25 --conditionsTag OFLCOND-MC23-SDR-RUN3-08' )
@@ -251,7 +251,7 @@ atlas_add_citest( CPAlgorithmsRun3Data_PHYSLITE
 # Data Quality
 #################################################################################
 atlas_add_citest( GlobalMonitoring
-   SCRIPT GlobalMonitoring.py IOVDb.GlobalTag="CONDBR2-HLTP-2024-03" --offline  --evtMax 20 )
+   SCRIPT GlobalMonitoring.py IOVDb.GlobalTag="CONDBR2-HLTP-2025-01" --offline  --evtMax 20 )
 
 atlas_add_citest( DataQuality_Run3MC
    SCRIPT Run3DQTestingDriver.py 'Input.Files=["../RecoRun3MC/run_q454/myAOD.pool.root"]' DQ.Environment=AOD DQ.Steering.doHLTMon=False --threads=1
diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/python/PixelConditionsConfig.py b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/python/PixelConditionsConfig.py
index 9feba07b5330ca9a20aeefabe8827df040513f88..b4326d21efcf87b16e24f1b120e4fce003b2cb8b 100644
--- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/python/PixelConditionsConfig.py
+++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/python/PixelConditionsConfig.py
@@ -1,6 +1,6 @@
 """Define functions to configure Pixel conditions algorithms
 
-Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
 """
 from AthenaConfiguration.AccumulatorCache import AccumulatorCache
 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
@@ -216,7 +216,10 @@ def PixelDeadMapCondAlgCfg(flags, name="PixelDeadMapCondAlg", **kwargs):
     """Return a ComponentAccumulator with configured PixelDeadMapCondAlg"""
     acc = ComponentAccumulator()
     acc.merge(PixelConfigCondAlgCfg(flags))
-    if flags.GeoModel.Run is LHCPeriod.Run1:
+    if flags.InDet.JsonPathPixelModuleVeto:
+        kwargs.setdefault("ReadKey", "")
+        kwargs.setdefault("JsonPath", flags.InDet.JsonPathPixelModuleVeto)
+    elif flags.GeoModel.Run is LHCPeriod.Run1:
         kwargs.setdefault("ReadKey", "")
     else:
         kwargs.setdefault("ReadKey", "/PIXEL/PixelModuleFeMask")
diff --git a/InnerDetector/InDetConfig/python/InDetConfigFlags.py b/InnerDetector/InDetConfig/python/InDetConfigFlags.py
index 89dca6595c602fa292af99114a54ad2b44851f68..e9837e8cfb6cbfdf878f7787e7cb84d7c877cec7 100644
--- a/InnerDetector/InDetConfig/python/InDetConfigFlags.py
+++ b/InnerDetector/InDetConfig/python/InDetConfigFlags.py
@@ -33,6 +33,10 @@ def createInDetConfigFlags():
     icf.addFlag("InDet.doSCTModuleVeto", False)
     # Turn on SCT simple width calculation in clustering tool
     icf.addFlag("InDet.doSCTSimpleWidth", True)
+    # Path to the JSON file to mask the modules for Pixel.
+    # A non-empty string activates the veto automatically
+    icf.addFlag("InDet.JsonPathPixelModuleVeto", "")
+
     # Enable check for dead modules and FEs
     icf.addFlag("InDet.checkDeadElementsOnTrack", True)
     # Turn running of Event Info TRT Occupancy Filling Alg on and off (also whether it is used in TRT PID calculation)
diff --git a/LArCalorimeter/LArG4/LArG4ShowerLibSvc/src/LArG4ShowerLibSvc.cxx b/LArCalorimeter/LArG4/LArG4ShowerLibSvc/src/LArG4ShowerLibSvc.cxx
index 3e39db5d15b209b342d64628d368eb4cf61beb74..c3ddf5992d3fd64eb7e1e4498c414c95bfb9a0ec 100755
--- a/LArCalorimeter/LArG4/LArG4ShowerLibSvc/src/LArG4ShowerLibSvc.cxx
+++ b/LArCalorimeter/LArG4/LArG4ShowerLibSvc/src/LArG4ShowerLibSvc.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "LArG4ShowerLibSvc/LArG4ShowerLibSvc.h"
@@ -43,22 +43,25 @@ LArG4ShowerLibSvc::~LArG4ShowerLibSvc()
 
 StatusCode LArG4ShowerLibSvc::initialize()
 {
-  ATH_MSG_DEBUG("Initializing");
+  ATH_MSG_INFO("Initializing");
 
+  std::vector<std::string> ignoredLibraryFiles{};
   // iterate through filenames in list
   for (const std::string& fileName : m_fileNameList) {
     std::string resolvedFilename = PathResolverFindCalibFile(fileName);
     if (resolvedFilename.empty()) {
       ATH_MSG_WARNING("Could not resolve input filename " << (fileName) << ". Ignoring!");
+      ignoredLibraryFiles.push_back(fileName);
       continue;
     } else {
-      ATH_MSG_DEBUG("Resolving input filename to " << resolvedFilename);
+      ATH_MSG_INFO("Resolving input filename to " << resolvedFilename);
     }
 
     TFile rootfile(resolvedFilename.c_str(),"READ");
 
     if (rootfile.IsZombie()) {
       ATH_MSG_WARNING("File " << resolvedFilename << " is not a valid ROOT file");
+      ignoredLibraryFiles.push_back(fileName);
       continue;
     }
 
@@ -70,11 +73,13 @@ StatusCode LArG4ShowerLibSvc::initialize()
     // if no library can be created based on the file nullptr is returned
     if (library == nullptr) {
       ATH_MSG_WARNING("File " << resolvedFilename << " is not a valid library file");
+      ignoredLibraryFiles.push_back(fileName);
       continue;
     }
 
     if (m_detmap.find(library->detector()) == m_detmap.end()) {
       ATH_MSG_WARNING("Library " << resolvedFilename << " is produced for unknown detector: " << library->detector());
+      ignoredLibraryFiles.push_back(fileName);
       delete library;
       continue;
     }
@@ -96,18 +101,25 @@ StatusCode LArG4ShowerLibSvc::initialize()
 
   // no point in the service with no libraries
   if (m_libraryMap.empty()) {
-    ATH_MSG_WARNING("No library files found");
-  } else {
-    ATH_MSG_DEBUG("List of loaded libraries:");
-    for (const auto& m : m_libraryMap) {
-      ATH_MSG_DEBUG("      " << m_locations[m.first] << ": " << m.second->comment());
+    ATH_MSG_ERROR("No library files found. Please check the configuration of this job.");
+    return StatusCode::FAILURE;
+  }
+  // some of the configured library files did not work
+  if (!ignoredLibraryFiles.empty() ) {
+    for (const std::string& fileName : ignoredLibraryFiles) {
+      ATH_MSG_ERROR("Failed to create a library from filename: " << (fileName));
+    }
+    ATH_MSG_ERROR("Some library filenames were invalid. Please check the configuration of this job.");
+    return StatusCode::FAILURE;
+  }
+  ATH_MSG_INFO("List of loaded libraries:");
+  for (const auto& m : m_libraryMap) {
+    ATH_MSG_INFO("      " << m_locations[m.first] << ": " << m.second->comment());
 #ifdef DEBUG_FrozenShowers
-      m_statisticsMap[m.second] = m.second->createStatistics();
+    m_statisticsMap[m.second] = m.second->createStatistics();
 #endif
-    }
   }
-
-  ATH_MSG_DEBUG("Shower library successfully initialized.");
+  ATH_MSG_INFO("Shower library successfully initialized.");
 
   return StatusCode::SUCCESS;
 }
@@ -115,17 +127,17 @@ StatusCode LArG4ShowerLibSvc::initialize()
 StatusCode LArG4ShowerLibSvc::finalize()
 {
 
-  ATH_MSG_DEBUG("Finalizing shower library service.");
+  ATH_MSG_INFO("Finalizing shower library service.");
 
   libmap::const_iterator iter;
 
   for (iter = m_libraryMap.begin(); iter != m_libraryMap.end(); ++iter) {
-    ATH_MSG_DEBUG("Found ShowerLib at location " << m_locations[(*iter).first]);
-    ATH_MSG_DEBUG(std::endl << (*iter).second->statistics());
+    ATH_MSG_INFO("Found ShowerLib at location " << m_locations[(*iter).first]);
+    ATH_MSG_INFO(std::endl << (*iter).second->statistics());
     if (m_statisticsMap.find((*iter).second) != m_statisticsMap.end())
-      ATH_MSG_DEBUG(m_statisticsMap.find((*iter).second)->second->statistics());
+      ATH_MSG_INFO(m_statisticsMap.find((*iter).second)->second->statistics());
     else
-      ATH_MSG_DEBUG("No statistics available for this kind of library");
+      ATH_MSG_INFO("No statistics available for this kind of library");
     // delete the library:
     delete (*iter).second ;
   }
diff --git a/Reconstruction/RecExample/RecJobTransformTests/test/test_mc23a_13p6TeV.sh b/Reconstruction/RecExample/RecJobTransformTests/test/test_mc23a_13p6TeV.sh
index 85c1bdce827a9a3ca7dd0a865219d4632eb4748e..7774cbb14304e4452f4fac020c8bef0dc91d36bc 100755
--- a/Reconstruction/RecExample/RecJobTransformTests/test/test_mc23a_13p6TeV.sh
+++ b/Reconstruction/RecExample/RecJobTransformTests/test/test_mc23a_13p6TeV.sh
@@ -13,11 +13,14 @@ CONDTAG=$(python -c "from AthenaConfiguration.TestDefaults import defaultConditi
 GEOTAG=$(python -c "from AthenaConfiguration.TestDefaults import defaultGeometryTags; print(defaultGeometryTags.RUN3)")
 BKGFILE=$(python -c "from AthenaConfiguration.TestDefaults import defaultTestFiles; print(defaultTestFiles.RDO_BKG_RUN3[0])")
 
-Reco_tf.py --CA --multithreaded --maxEvents=300 \
---inputHITSFile="${INPUTFILE}" --conditionsTag="${CONDTAG}" --geometryVersion="${GEOTAG}" \
---inputRDO_BKGFile="${BKGFILE}" \
---outputRDOFile=myRDO.pool.root --outputAODFile=myAOD.pool.root --outputESDFile=myESD.pool.root \
---preInclude 'Campaigns.MC23a'
+Reco_tf.py --CA "default:True" "RDOtoRDOTrigger:False" \
+           --multithreaded --maxEvents=300 \
+	   --asetup "RDOtoRDOTrigger:Athena,23.0.20.7" \
+	   --steering "doOverlay" "doRDO_TRIG" "doTRIGtoALL" \
+	   --inputHITSFile="${INPUTFILE}" --conditionsTag="${CONDTAG}" --geometryVersion="${GEOTAG}" \
+	   --inputRDO_BKGFile="${BKGFILE}" \
+	   --outputRDOFile=myRDO.pool.root --outputAODFile=myAOD.pool.root --outputESDFile=myESD.pool.root \
+	   --preInclude 'Campaigns.MC23a'
 
 RES=$?
 echo "art-result: $RES Reco"
diff --git a/Reconstruction/RecExample/RecJobTransformTests/test/test_mc23d_13p6TeV.sh b/Reconstruction/RecExample/RecJobTransformTests/test/test_mc23d_13p6TeV.sh
new file mode 100755
index 0000000000000000000000000000000000000000..14725abc997539670d641c03a5a64496f1d64081
--- /dev/null
+++ b/Reconstruction/RecExample/RecJobTransformTests/test/test_mc23d_13p6TeV.sh
@@ -0,0 +1,28 @@
+#!/bin/sh
+#
+# art-description: Reco_tf runs on MC23d 13.6 TeV ttbar with HITS input (overlay+trigger+reco). Report issues to https://its.cern.ch/jira/projects/ATLASRECTS/
+# art-output: log.*
+# art-athena-mt: 8
+# art-type: grid
+# art-include: main/Athena
+# art-include: 24.0/Athena
+
+export ATHENA_CORE_NUMBER=8
+INPUTFILE=$(python -c "from AthenaConfiguration.TestDefaults import defaultTestFiles; print(defaultTestFiles.HITS_RUN3[0])")
+CONDTAG=$(python -c "from AthenaConfiguration.TestDefaults import defaultConditionsTags; print(defaultConditionsTags.RUN3_MC)")
+GEOTAG=$(python -c "from AthenaConfiguration.TestDefaults import defaultGeometryTags; print(defaultGeometryTags.RUN3)")
+BKGFILE=$(python -c "from AthenaConfiguration.TestDefaults import defaultTestFiles; print(defaultTestFiles.RDO_BKG_RUN3[0])")
+
+#TODO update input files from mc23d campaign when available
+
+Reco_tf.py --CA "default:True" "RDOtoRDOTrigger:False" \
+	   --multithreaded --maxEvents=300 \
+	   --asetup "RDOtoRDOTrigger:Athena,23.0.32.7" \
+	   --steering "doOverlay" "doRDO_TRIG" "doTRIGtoALL" \
+	   --inputHITSFile="${INPUTFILE}" --conditionsTag="${CONDTAG}" --geometryVersion="${GEOTAG}" \
+	   --inputRDO_BKGFile="${BKGFILE}" \
+	   --outputRDOFile=myRDO.pool.root --outputAODFile=myAOD.pool.root --outputESDFile=myESD.pool.root \
+	   --preInclude 'Campaigns.MC23d'
+
+RES=$?
+echo "art-result: $RES Reco"
diff --git a/Tools/PROCTools/data/q449_AOD_digest.ref b/Tools/PROCTools/data/q449_AOD_digest.ref
index 2574850317abc88376503e040d4896946acae992..8126f978e74c3bee9904fad58478ccb4a3fe3c3e 100644
--- a/Tools/PROCTools/data/q449_AOD_digest.ref
+++ b/Tools/PROCTools/data/q449_AOD_digest.ref
@@ -1,18 +1,18 @@
          run       event       nTopo   nIdTracks  nTauTracks       nTaus      nMuons       nElec   nTrueElec   nFakeElec       nPhot   nTruePhot   nFakePhot
       431493  1096110158         311         447          87           6           1          15           0          15          15           0          15
       431493  1096111916         286         319          49           6           1          10           0          10          14           0          14
-      431493  1096112143         267         389          48           4           1           1           0           1           2           0           2
+      431493  1096112143         267         389          48           4           0           1           0           1           2           0           2
       431493  1096113011         367         402          71           9           0           9           0           9          11           0          11
       431493  1096113187         274         319          71           7           0           9           0           9          15           0          15
       431493  1096113771         294         409          77           6           0          10           0          10          12           0          12
-      431493  1096114154         374         572          87           6           0           6           0           6          18           0          18
+      431493  1096114154         374         572          87           6           1           6           0           6          18           0          18
       431493  1096114168         132         151          17           4           0           2           0           2           6           0           6
       431493  1096115980         390         519         130          10           0          20           0          20          22           0          22
       431493  1096116200         309         410          57           6           1           4           0           4          12           0          12
       431493  1096118782         294         357          95           7           1          12           0          12          23           0          23
       431493  1096119418         307         337          81           6           0           5           0           5           9           0           9
       431493  1096119460         227         313          15           2           0           2           0           2           5           0           5
-      431493  1096120001         388         586         124           8           0          14           0          14          18           0          18
+      431493  1096120001         388         586         124           8           1          14           0          14          18           0          18
       431493  1096122174         301         413          72           8           0           5           0           5          23           0          23
       431493  1096123090         428         537         158          11           0          20           0          20          28           0          28
       431493  1096123254         489         685          96           7           2          14           0          14          27           0          27
@@ -42,15 +42,15 @@
       431493  1096137906         161         179          20           4           2           5           0           5           7           0           7
       431493  1096139648         219         205          27           5           3           2           0           2           7           0           7
       431493  1096139847         242         368          40           6           2           1           0           1           8           0           8
-      431493  1096142414         373         506         111           8           1           7           0           7          23           0          23
-      431493  1096143027         398         499          84           9           2           3           0           3          11           0          11
+      431493  1096142414         373         506         111           8           0           7           0           7          23           0          23
+      431493  1096143027         398         499          84           9           1           3           0           3          11           0          11
       431493  1096144036         268         343          65           5           0          12           0          12          14           0          14
       431493  1096145110         241         257          18           2           0           5           0           5           8           0           8
       431493  1096146639         283         422          77           6           0           3           0           3          18           0          18
       431493  1096146735         321         378         105          10           1          21           0          21          26           0          26
       431493  1096147568         392         600          41           4           2           4           0           4          14           0          14
       431493  1096150983         272         320          22           5           0           2           0           2          13           0          13
-      431493  1096152978         365         498          87           7           1           8           0           8          11           0          11
+      431493  1096152978         365         498          87           7           2           8           0           8          11           0          11
       431493  1096153967         539         655         111          10           2           7           0           7          33           0          33
       431493  1096155046         240         373          32           4           1           1           0           1           3           0           3
       431493  1096155387         335         486          84           9           1           7           0           7          15           0          15
@@ -63,16 +63,16 @@
       431493  1096160558         247         368          40           4           0           2           0           2          10           0          10
       431493  1096161183         249         318          54           4           0          12           0          12           7           0           7
       431493  1096162191         348         391          14           2           1           1           0           1           8           0           8
-      431493  1096163035         344         448         120          10           0          14           0          14          26           0          26
+      431493  1096163035         344         448         120          10           1          14           0          14          26           0          26
       431493  1096163900         337         461          70           7           0          12           0          12          19           0          19
       431493  1096164842         307         442          50           5           1           3           0           3           9           0           9
       431493  1096167556         330         425          74           7           1           9           0           9          11           0          11
       431493  1096168429         297         416          99           8           0           6           0           6           8           0           8
       431493  1096171532         341         417          88           9           0          13           0          13          14           0          14
-      431493  1096171788         310         441          60           4           0           9           0           9          12           0          12
+      431493  1096171788         310         441          60           4           1           9           0           9          12           0          12
       431493  1096171838         423         615         140           9           0          10           0          10          25           0          25
       431493  1096173554         314         425          47           5           1           4           0           4           9           0           9
-      431493  1096173910         355         572         107           8           0          11           0          11           9           0           9
+      431493  1096173910         355         572         107           8           1          11           0          11           9           0           9
       431493  1096176781         366         440          89          10           0          11           0          11          20           0          20
       431493  1096177006         309         381          45           5           0           7           0           7          11           0          11
       431493  1096177862         252         280          13           2           0           2           0           2          11           0          11
diff --git a/Tools/WorkflowTestRunner/python/References.py b/Tools/WorkflowTestRunner/python/References.py
index 6695445ed0971f0ac9de07e9845775763e95d8ca..4012940bb8a87113305af903a8ed47b0c31a37dc 100644
--- a/Tools/WorkflowTestRunner/python/References.py
+++ b/Tools/WorkflowTestRunner/python/References.py
@@ -26,7 +26,7 @@ references_map = {
     "d1912": "v8",
     # Reco
     "q442": "v75",
-    "q449": "v121",
+    "q449": "v122",
     "q452": "v35",
     "q454": "v51",
     # Derivations
diff --git a/Trigger/TrigHypothesis/TrigAnomalyDetectionHypo/src/TrigADComboHypoTool.cxx b/Trigger/TrigHypothesis/TrigAnomalyDetectionHypo/src/TrigADComboHypoTool.cxx
index 677bdcf194a453ea937fe35c217d904dafd93d7a..c38f3479aea0c5b2e54a404089cfe7cabbaca710 100644
--- a/Trigger/TrigHypothesis/TrigAnomalyDetectionHypo/src/TrigADComboHypoTool.cxx
+++ b/Trigger/TrigHypothesis/TrigAnomalyDetectionHypo/src/TrigADComboHypoTool.cxx
@@ -259,12 +259,12 @@ bool TrigADComboHypoTool::getAdDecision(
 		   << jet->eta() << ", "
 		   << jet->phi() << ", "
 		   << jet->m()/1000 << ")");
-    if (jet_count<m_maxjs) {
+    if (jet_count<m_maxjs.value()) {
       inputTensor.insert(inputTensor.end(), {static_cast<float>(jet->pt()/1000), static_cast<float>(jet->eta()), static_cast<float>(jet->phi())});
+      jet_count++;
     }
-    jet_count++;
   }
-  inputTensor.insert(inputTensor.end(), 3*(m_maxjs-jet_count), 0.);
+  inputTensor.insert(inputTensor.end(), 3*(m_maxjs.value()-jet_count), 0.);
 
   unsigned int ele_count = 0;
   for(const auto &ele : input_electrons){
@@ -274,12 +274,12 @@ bool TrigADComboHypoTool::getAdDecision(
 		   << ele->eta() << ", "
 		   << ele->phi() << ", "
 		   << ele->m()/1000 << ")");
-    if (ele_count<m_maxes) {
+    if (ele_count<m_maxes.value()) {
       inputTensor.insert(inputTensor.end(), {static_cast<float>(ele->pt()/1000), static_cast<float>(ele->eta()), static_cast<float>(ele->phi())});
+      ele_count++;
     }
-    ele_count++;
   }
-  inputTensor.insert(inputTensor.end(), 3*(m_maxes-ele_count), 0.);
+  inputTensor.insert(inputTensor.end(), 3*(m_maxes.value()-ele_count), 0.);
 
   unsigned int muon_count = 0;
   for(const auto &muon : input_muons){
@@ -289,12 +289,12 @@ bool TrigADComboHypoTool::getAdDecision(
 		   << muon->eta() << ", "
 		   << muon->phi() << ", "
 		   << muon->m()/1000 << ")");
-    if (muon_count<m_maxms) {
+    if (muon_count<m_maxms.value()) {
       inputTensor.insert(inputTensor.end(), {static_cast<float>(muon->pt()/1000), static_cast<float>(muon->eta()), static_cast<float>(muon->phi())});
+      muon_count++;
     }
-    muon_count++;
   }
-  inputTensor.insert(inputTensor.end(), 3*(m_maxms-muon_count), 0.);
+  inputTensor.insert(inputTensor.end(), 3*(m_maxms.value()-muon_count), 0.);
 	
   unsigned int gam_count = 0;
   for(const auto &gam : input_photons){
@@ -304,12 +304,12 @@ bool TrigADComboHypoTool::getAdDecision(
 		   << gam->eta() << ", "
 		   << gam->phi() << ", "
 		   << gam->m()/1000 << ")");
-    if (gam_count<m_maxgs) {
+    if (gam_count<m_maxgs.value()) {
       inputTensor.insert(inputTensor.end(), {static_cast<float>(gam->pt()/1000), static_cast<float>(gam->eta()), static_cast<float>(gam->phi())});
+      gam_count++;
     }
-    gam_count++;
   }
-  inputTensor.insert(inputTensor.end(), 3*(m_maxgs-gam_count), 0.);
+  inputTensor.insert(inputTensor.end(), 3*(m_maxgs.value()-gam_count), 0.);
 
   inputTensor.insert(inputTensor.end(), {0., 0., 0.});
   for(const auto &met : input_mets){
diff --git a/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/python/L1TopoOnlineMonitoringConfig.py b/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/python/L1TopoOnlineMonitoringConfig.py
index a52fb5c7454a94adb7663b055f6dc50b15613bd6..b7525e123a015e2467710a46cdb06c7b6d8cb087 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/python/L1TopoOnlineMonitoringConfig.py
+++ b/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/python/L1TopoOnlineMonitoringConfig.py
@@ -68,7 +68,9 @@ def getL1TopoPhase1OnlineMonitor(flags, name='L1TopoOnlineMonitor', doSimMon=Tru
                                           doHwMonCTP = doHwMonCtp,
                                           doComp = doComp,
                                           doMultComp = doMultComp,
-                                          forceCTPasHdw=forceCtp)
+                                          forceCTPasHdw=forceCtp,
+                                          MultiplicityVetoList=["ZeroBiasC","ZeroBiasB"],
+                                          AlgorithmVetoList   =["jXE40delay"])
     if logLevel : alg.OutputLevel=logLevel
     alg.MonTool = GenericMonitoringTool(flags, 'MonTool')
     alg.MonTool.HistPath = name
@@ -85,7 +87,9 @@ def getL1TopoPhase1DQMonitor(flags, name='L1TopoDQMonitor', doSimMon=True, doHwM
                                           doHwMonCTP = doHwMonCtp,
                                           doComp = doComp,
                                           doMultComp = doMultComp,
-                                          forceCTPasHdw=forceCtp)
+                                          forceCTPasHdw=forceCtp,
+                                          MultiplicityVetoList=["ZeroBiasA","ZeroBiasB"],
+                                          AlgorithmVetoList   =["jXE40delay"])
 
     #Define the Monitoring plots for L1Calo DQ
     helper.defineDQAlgorithm("L1TopoMismatchRate",
diff --git a/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/src/L1TopoOnlineMonitor.cxx b/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/src/L1TopoOnlineMonitor.cxx
index 4d98918f3bca5f6f9ee310a041609a295d044286..ebc64ab2189cac27a07104cf5063f8a712998d7b 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/src/L1TopoOnlineMonitor.cxx
+++ b/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/src/L1TopoOnlineMonitor.cxx
@@ -94,6 +94,108 @@ StatusCode L1TopoOnlineMonitor::initialize() {
   ATH_CHECK(m_monTool.retrieve(DisableTool{m_monTool.name().empty()}));
   ATH_CHECK(m_errorFlagsKey.initialize());
 
+  const TrigConf::L1Menu * l1menu = nullptr;
+  ATH_CHECK( m_detStore->retrieve(l1menu) );
+
+  auto & conn2EL = l1menu->connector("Topo2El");
+  auto & conn3EL = l1menu->connector("Topo3El");
+
+  auto & connOpt0 = l1menu->connector("Topo1Opt0");
+  auto & connOpt1 = l1menu->connector("Topo1Opt1");
+  auto & connOpt2 = l1menu->connector("Topo1Opt2");
+  auto & connOpt3 = l1menu->connector("Topo1Opt3");
+
+  m_TopoAlgTriggerNames.reserve(32*4);
+  m_TopoAlgTriggerNotVetoed.reserve(32*4);
+  m_TopoMultTriggerNames.reserve(64*4);
+  m_TopoMultTriggerNotVetoed.reserve(64*4);
+
+  //TopoOpt
+  auto & tlopt0 = connOpt0.triggerLines();
+  auto & tlopt1 = connOpt1.triggerLines();
+  auto & tlopt2 = connOpt2.triggerLines();
+  auto & tlopt3 = connOpt3.triggerLines();
+
+  long unsigned int size_tlopt0 = tlopt0.size();
+  long unsigned int size_tlopt1 = tlopt1.size();
+  long unsigned int size_tlopt2 = tlopt2.size();
+  long unsigned int size_tlopt3 = tlopt3.size();
+
+  long unsigned int total_size_opt = size_tlopt0+size_tlopt1+size_tlopt2+size_tlopt3;
+
+  for  (size_t j = 0; j < size_tlopt0; ++j) m_TopoMultTriggerNames.push_back(tlopt0[j].name());
+  for  (size_t j = 0; j < size_tlopt1; ++j) m_TopoMultTriggerNames.push_back(tlopt1[j].name());
+  for  (size_t j = 0; j < size_tlopt2; ++j) m_TopoMultTriggerNames.push_back(tlopt2[j].name());
+  for  (size_t j = 0; j < size_tlopt3; ++j) m_TopoMultTriggerNames.push_back(tlopt3[j].name());
+
+  //Topo2a
+  auto & tl2a0 = conn2EL.triggerLines(0, 0); //clock 0
+  auto & tl2a1 = conn2EL.triggerLines(0, 1); //clock 1
+  long unsigned int size_tl2a0 = tl2a0.size();
+  long unsigned int size_tl2a1 = tl2a1.size();
+  //Topo2b
+  auto & tl2b0 = conn2EL.triggerLines(1, 0); //clock 0
+  auto & tl2b1 = conn2EL.triggerLines(1, 1); //clock 1
+  long unsigned int size_tl2b0 = tl2b0.size();
+  long unsigned int size_tl2b1 = tl2b1.size();
+  //Topo3a
+  auto & tl3a0 = conn3EL.triggerLines(0, 0); //clock 0
+  auto & tl3a1 = conn3EL.triggerLines(0, 1); //clock 1
+  long unsigned int size_tl3a0 = tl3a0.size();
+  long unsigned int size_tl3a1 = tl3a1.size();
+  //Topo3b
+  auto & tl3b0 = conn3EL.triggerLines(1, 0); //clock 0
+  auto & tl3b1 = conn3EL.triggerLines(1, 1); //clock 1
+  long unsigned int size_tl3b0 = tl3b0.size();
+  long unsigned int size_tl3b1 = tl3b1.size();
+
+  for (size_t i = 0; i < 16; ++i) {
+    if (i < size_tl2a0) m_TopoAlgTriggerNames.push_back(tl2a0[i].name());
+    else                m_TopoAlgTriggerNames.push_back("Empty");
+    if (i < size_tl2a1) m_TopoAlgTriggerNames.push_back(tl2a1[i].name());
+    else                m_TopoAlgTriggerNames.push_back("Empty");
+  }
+
+  for (size_t i = 0; i < 16; ++i) {
+    if (i < size_tl2b0) m_TopoAlgTriggerNames.push_back(tl2b0[i].name());
+    else                m_TopoAlgTriggerNames.push_back("Empty");
+    if (i < size_tl2b1) m_TopoAlgTriggerNames.push_back(tl2b1[i].name());
+    else                m_TopoAlgTriggerNames.push_back("Empty");
+  }
+
+    for (size_t i = 0; i < 16; ++i) {
+    if (i < size_tl3a0) m_TopoAlgTriggerNames.push_back(tl3a0[i].name());
+    else                m_TopoAlgTriggerNames.push_back("Empty");
+    if (i < size_tl3a1) m_TopoAlgTriggerNames.push_back(tl3a1[i].name());
+    else                m_TopoAlgTriggerNames.push_back("Empty");
+  }
+
+  for (size_t i = 0; i < 16; ++i) {
+    if (i < size_tl3b0) m_TopoAlgTriggerNames.push_back(tl3b0[i].name());
+    else                m_TopoAlgTriggerNames.push_back("Empty");
+    if (i < size_tl3b1) m_TopoAlgTriggerNames.push_back(tl3b1[i].name());
+    else                m_TopoAlgTriggerNames.push_back("Empty");
+  }
+
+  //Fill Vector of booleans to fill corresponding triggers
+  //Only elements with a corresponding Veto are set to false
+
+  for (size_t j = 0; j < total_size_opt; ++j) {
+    m_TopoMultTriggerNotVetoed[j] = true;
+    for (const std::string& VetoedElement : m_MultiplicityVetoList) {
+      if ( !m_TopoMultTriggerNotVetoed[j] || m_TopoMultTriggerNames[j].find(VetoedElement)!= std::string::npos) m_TopoMultTriggerNotVetoed[j] = false;
+      else m_TopoMultTriggerNotVetoed[j] = true;
+    }
+  }
+
+  for (int j =0; j<128;j++){
+    m_TopoAlgTriggerNotVetoed[j] = true;
+    for (const std::string& VetoedElement : m_AlgorithmVetoList) {
+      if ( !m_TopoAlgTriggerNotVetoed[j] || m_TopoAlgTriggerNames[j].find(VetoedElement)!= std::string::npos) m_TopoAlgTriggerNotVetoed[j] = false;
+      else m_TopoAlgTriggerNotVetoed[j] = true;
+    }
+  }
+
   return AthMonitorAlgorithm::initialize();
 }
 
@@ -523,13 +625,16 @@ StatusCode L1TopoOnlineMonitor::doComp( DecisionBits& decisionBits, const EventC
   auto mon_matchVsLumi_DQ = Monitored::Scalar<unsigned>("L1TopoAlgorithmMissMatchVsLumi");
 
   for (size_t i=0;i<4;i++) {
+
     auto mon_trig = Monitored::Scalar<unsigned>("Phase1TopoTrigger_"+std::to_string(i));
     auto mon_match = Monitored::Scalar<unsigned>("Phase1TopoMissMatch_"+std::to_string(i));
     auto mon_match_DQ = Monitored::Scalar<unsigned>("L1TopoAlgorithmMissMatch_"+std::to_string(i));
     auto mon_match_OF_DQ = Monitored::Scalar<unsigned>("L1TopoAlgorithmOverflowMissMatch_"+std::to_string(i));
     auto mon_weight = Monitored::Scalar<float>("Phase1TopoWeight_"+std::to_string(i));
     auto mon_OFweight = Monitored::Scalar<float>("Phase1TopoOFWeight_"+std::to_string(i));
+    
     for (size_t j=0;j<32;j++) {
+      
       if (ambiguityBitsSim[32*i+j] == 0) {
         mon_trig = static_cast<unsigned>(j);
         mon_trig_allboards = static_cast<unsigned>(32*i+j);
@@ -554,7 +659,7 @@ StatusCode L1TopoOnlineMonitor::doComp( DecisionBits& decisionBits, const EventC
 	if ( m_countSim[32*i+j]  < m_countHdw[32*i+j] ){ mon_match_DQ = 0;  mon_matchVsLumi_DQ = 1;}
 	if ( m_countSim[32*i+j]  > m_countHdw[32*i+j] ){ mon_match_DQ = 1;  mon_matchVsLumi_DQ = 1;}
 	if ( m_countSim[32*i+j] == m_countHdw[32*i+j] ){ mon_match_DQ = 2;  mon_matchVsLumi_DQ = 0;}
-	if ( m_countSim[32*i+j] > 0 ||  m_countHdw[32*i+j] > 0) {
+	if ( (m_countSim[32*i+j] > 0 ||  m_countHdw[32*i+j] > 0 ) && m_TopoAlgTriggerNotVetoed[32*i+j] ) {
 	  Monitored::Group(m_monTool, mon_trig, mon_match_DQ);
 	  Monitored::Group(m_monTool, lbn, mon_trig_allboards, mon_matchVsLumi_DQ);
 	}
@@ -562,7 +667,7 @@ StatusCode L1TopoOnlineMonitor::doComp( DecisionBits& decisionBits, const EventC
 	if (m_overflow_countSim[32*i+j]  <m_overflow_countHdw[32*i+j] ) mon_match_OF_DQ = 0;
 	if (m_overflow_countSim[32*i+j]  >m_overflow_countHdw[32*i+j] ) mon_match_OF_DQ = 1;
 	if (m_overflow_countSim[32*i+j] ==m_overflow_countHdw[32*i+j] ) mon_match_OF_DQ = 2;
-	if (m_overflow_countSim[32*i+j] > 0 || m_overflow_countHdw[32*i+j] > 0) Monitored::Group(m_monTool, mon_trig, mon_match_OF_DQ);
+	if ( (m_overflow_countSim[32*i+j] > 0 || m_overflow_countHdw[32*i+j] > 0 ) && m_TopoAlgTriggerNotVetoed[32*i+j] ) Monitored::Group(m_monTool, mon_trig, mon_match_OF_DQ);
 
         rate = m_countHdw[32*i+j]>0 ? m_countHdwNotSim[32*i+j]/m_countHdw[32*i+j] : 0;
         if (rate != m_rateHdwNotSim[32*i+j]) {
@@ -649,7 +754,7 @@ StatusCode L1TopoOnlineMonitor::doMultComp( std::vector<std::vector<unsigned>> &
       if (monMultSim == monMultHdw){mon_match = 2;  mon_matchVsLumi_DQ = 0;}
       mon_multiplicity = static_cast<unsigned>(k);
       mon_multiplicity_allboards = static_cast<unsigned>(k+AccumulatedPosition);
-      if ( monMultSim > 0 ||  monMultHdw > 0){
+      if (( monMultSim > 0 ||  monMultHdw > 0) && m_TopoMultTriggerNotVetoed[k+AccumulatedPosition]) {
 	Monitored::Group(m_monTool, mon_multiplicity, mon_match);
 	Monitored::Group(m_monTool, lbn, mon_multiplicity_allboards, mon_matchVsLumi_DQ);
       }
diff --git a/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/src/L1TopoOnlineMonitor.h b/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/src/L1TopoOnlineMonitor.h
index d00d78a06e8d8ca4693fe6ee611b1b5aba117e51..406e197fbe79947343211b66f7857cf6a1c6d954 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/src/L1TopoOnlineMonitor.h
+++ b/Trigger/TrigT1/L1Topo/L1TopoOnlineMonitoring/src/L1TopoOnlineMonitor.h
@@ -63,6 +63,11 @@ private:
     }
   };
 
+  std::vector<std::string> m_TopoAlgTriggerNames;
+  std::vector<bool>        m_TopoAlgTriggerNotVetoed;
+  std::vector<std::string> m_TopoMultTriggerNames;
+  std::vector<bool>        m_TopoMultTriggerNotVetoed;
+
   std::unique_ptr<float[]> m_rateHdwNotSim;
   std::unique_ptr<float[]> m_rateSimNotHdw;
   std::unique_ptr<float[]> m_rateHdwAndSim;
@@ -110,6 +115,10 @@ private:
     this, "doMultComp", false, "Enable L1Topo Multiplicity HW/Sim comparison"};
   Gaudi::Property<bool> m_forceCTPasHdw {
     this, "forceCTPasHdw", false, "Force to CTP monitoring as primary in Sim/Hdw comparison"};
+  Gaudi::Property<std::vector<std::string>> m_AlgorithmVetoList {
+    this, "AlgorithmVetoList", {}, "List of L1Topo algorithm items Vetoed for monitoring in L1CaloDQ package due to known Sim/Hdw mismatches"};
+  Gaudi::Property<std::vector<std::string>> m_MultiplicityVetoList {
+    this, "MultiplicityVetoList", {}, "List of multiplicity items Vetoed for monitoring in L1CaloDQ package due to known Sim/Hdw mismatches"};
 
   ServiceHandle<StoreGateSvc> m_detStore { this, "DetectorStore", "StoreGateSvc/DetectorStore", "Detector store to get the menu" };
 
diff --git a/Trigger/TrigT1/TrigT1NSWSimTools/CMakeLists.txt b/Trigger/TrigT1/TrigT1NSWSimTools/CMakeLists.txt
index 70699cea658beabc6d7932ba8e486cea9094c52b..782fa2cf1eb5af9fcec5bd91dbc5fdb8bc143c60 100644
--- a/Trigger/TrigT1/TrigT1NSWSimTools/CMakeLists.txt
+++ b/Trigger/TrigT1/TrigT1NSWSimTools/CMakeLists.txt
@@ -14,7 +14,7 @@ atlas_add_library( TrigT1NSWSimToolsLib
                    PUBLIC_HEADERS TrigT1NSWSimTools
                    INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS}
                    LINK_LIBRARIES ${Boost_LIBRARIES} ${ROOT_LIBRARIES} AthenaBaseComps AthenaKernel FourMomUtils GaudiKernel GeoPrimitives Identifier MuonDigitContainer MuonIdHelpersLib MuonRDO MuonReadoutGeometry MuonSimData MuonSimEvent MuonTesterTreeLib RegSelLUT TrkSurfaces TrackRecordLib
-                   PRIVATE_LINK_LIBRARIES ${CLHEP_LIBRARIES} AGDDKernel AtlasHepMCLib TruthUtils GeneratorObjects PathResolver StoreGateLib )
+                   PRIVATE_LINK_LIBRARIES ${CLHEP_LIBRARIES} AGDDKernel AtlasHepMCLib TruthUtils GeneratorObjects PathResolver StoreGateLib MuonAGDDDescription)
 
 # Component(s) in the package:
 atlas_add_component( TrigT1NSWSimTools
diff --git a/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMT_Hit.h b/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMT_Hit.h
index c3973c0e4fb13fc8a0fd7900041adddb28aaecd6..16140d52df5349abb923e3e7047f64cbce442806 100644
--- a/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMT_Hit.h
+++ b/Trigger/TrigT1/TrigT1NSWSimTools/TrigT1NSWSimTools/MMT_Hit.h
@@ -1,5 +1,5 @@
 /*
- *   Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+ *   Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
  */
 
 #ifndef MMT_HIT_H
@@ -7,13 +7,9 @@
 
 #include "MMT_struct.h"
 
-namespace MuonGM {
-  class MuonDetectorManager;
-}
-
 class MMT_Hit {
   public:
-    MMT_Hit(const hitData_entry &entry, const MuonGM::MuonDetectorManager* detManager, const std::shared_ptr<MMT_Parameters> par, const std::vector<ROOT::Math::XYZVector> &planeCoordinates);
+    MMT_Hit(const hitData_entry &entry, const MuonGM::MuonDetectorManager* detManager, const std::string_view stName, const std::vector<ROOT::Math::XYZVector> &planeCoordinates);
     MMT_Hit(const MMT_Hit* hit);
     ~MMT_Hit()=default;
 
@@ -22,12 +18,10 @@ class MMT_Hit {
     int getBC() const { return m_BC_time; }
     int getChannel() const { return m_strip; }
     int getGasGap() const { return m_gasgap; }
-    const std::string& getModule() const { return m_module; }
     int getMultiplet() const { return m_multiplet; }
     int getPlane() const { return m_plane; }
     char getSector() const { return m_sector; }
     double getRZSlope() const { return m_RZslope; }
-    double getYZSlope() const { return m_YZslope; }
     int getVMM() const { return m_VMM_chip; }
     int getMMFE8() const { return m_MMFE_VMM; }
     float getShift() const { return m_shift; }
@@ -37,7 +31,6 @@ class MMT_Hit {
     double getR() const { return m_R; }
     double getRp() const { return m_Rp; }
     double getX() const { return m_localX; }
-    double getY() const { return m_Y; }
     double getZ() const { return m_Z; }
     double getPitchOverZ() const { return m_PitchOverZ; }
     float getTime() const { return m_time; }
@@ -45,19 +38,16 @@ class MMT_Hit {
     bool isX() const;
     bool isU() const;
     bool isV() const;
-    void printHit() const;
     void setAge(int age) { m_age = age; }
     void setAsNoise() { m_isNoise = true; }
     void setBC(int bc) { m_BC_time = bc; }
     void setRZSlope(double slope) { m_RZslope = slope; }
-    void setYZSlope(double slope) { m_YZslope = slope; }
-    void setY(double y) { m_Y = y; }
     void setZ(double z) { m_Z = z; }
     bool verifyHit() const;
 
   private:
     char m_sector;
-    std::string m_module, m_station_name;
+    std::string m_station_name;
     int m_VMM_chip;
     int m_MMFE_VMM;
     int m_ART_ASIC;
@@ -68,9 +58,9 @@ class MMT_Hit {
     int m_gasgap;
     int m_strip;
     double m_localX;
-    double m_RZslope, m_YZslope;
+    double m_RZslope;
     int m_BC_time, m_age;
-    double m_Y, m_Z, m_PitchOverZ;
+    double m_Z, m_PitchOverZ;
     double m_R, m_Rp;
     bool m_isNoise;
     float m_time, m_shift;
diff --git a/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_Diamond.cxx b/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_Diamond.cxx
index d747376bed9c64763e4614eeb1ccbe3087bd1517..edbf6644e7aedf7fc690035db3fab0f75e89d07e 100644
--- a/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_Diamond.cxx
+++ b/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_Diamond.cxx
@@ -61,7 +61,7 @@ void MMT_Diamond::createRoads_fillHits(const unsigned int iterator, std::vector<
   this->setUVfactor(uvfactor);
 
   for (const auto &hit_entry : hitDatas) {
-    auto myhit = std::make_shared<MMT_Hit>(hit_entry, detManager, par, planeCoordinates);
+    auto myhit = std::make_shared<MMT_Hit>(hit_entry, detManager, sector, planeCoordinates);
     if (myhit->verifyHit()) {
       m_hitslopes.push_back(myhit->getRZSlope());
       entry.ev_hits.push_back(myhit);
diff --git a/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_Hit.cxx b/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_Hit.cxx
index 3c6739615b89ac6738e228ddefa4ae07d6f2168c..9e5ce50dde9667c409ccf887c9e36b0793d56fcf 100644
--- a/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_Hit.cxx
+++ b/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_Hit.cxx
@@ -1,22 +1,19 @@
 /*
- *   Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+ *   Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
  */
 
 #include "TrigT1NSWSimTools/MMT_Hit.h"
+#include "MuonAGDDDescription/MMDetectorDescription.h"
+#include "MuonAGDDDescription/MMDetectorHelper.h"
 #include "MuonReadoutGeometry/MuonChannelDesign.h"
 #include "MuonReadoutGeometry/MuonDetectorManager.h"
 #include "MuonReadoutGeometry/MMReadoutElement.h"
 #include <cmath>
 
-MMT_Hit::MMT_Hit(const hitData_entry &entry, const MuonGM::MuonDetectorManager* detManager, const std::shared_ptr<MMT_Parameters> par, const std::vector<ROOT::Math::XYZVector> &planeCoordinates) {
-  m_sector = par->getSector();
-
-  std::string module(1, m_sector);
-  module += (std::abs(entry.station_eta) == 1) ? "M1" : "M2";
-  m_module = module;
-
-  m_station_name = "MM";
-  m_station_name += m_sector;
+MMT_Hit::MMT_Hit(const hitData_entry &entry, const MuonGM::MuonDetectorManager* detManager, const std::string_view stName, const std::vector<ROOT::Math::XYZVector> &planeCoordinates)
+   : m_station_name(stName)
+ {
+  m_sector = stName[2];
   m_VMM_chip = entry.VMM_chip;
   m_MMFE_VMM = entry.MMFE_VMM;
   m_ART_ASIC = std::ceil(1.*entry.MMFE_VMM/2);
@@ -29,14 +26,12 @@ MMT_Hit::MMT_Hit(const hitData_entry &entry, const MuonGM::MuonDetectorManager*
   m_localX = entry.localX;
   m_BC_time = entry.BC_time;
   m_age = entry.BC_time;
-  m_Y = -1.;
   m_Z = -1.;
   m_R = -1.;
   m_Rp = -1.;
   m_isNoise = false;
   m_time = entry.gtime;
   m_RZslope = -1.;
-  m_YZslope = -1.;
   m_PitchOverZ = -1.;
   m_shift = -1.;
 
@@ -88,28 +83,25 @@ MMT_Hit::MMT_Hit(const hitData_entry &entry, const MuonGM::MuonDetectorManager*
   Amg::Vector3D globalPos(0.0, 0.0, 0.0);
   if(readout->stripGlobalPosition(strip_id, globalPos)) {
 
+    MMDetectorHelper aHelper;
+    char side = (globalPos.z() > 0.) ? 'A' : 'C';
+    MMDetectorDescription* mm = aHelper.Get_MMDetector(m_sector, std::abs(m_station_eta), m_station_phi, m_multiplet, side);
+    MMReadoutParameters roP   = mm->GetReadoutParameters();
+
     m_R = globalPos.perp();
     m_Z = globalPos.z();
-    const double stripPitch{readout->getDesign(strip_id)->inputPitch};
-    m_PitchOverZ = stripPitch/m_Z;
+    m_PitchOverZ = roP.stripPitch/m_Z;
     m_RZslope = m_R / m_Z;
 
-    int eta = std::abs(m_station_eta)-1;
-    double base = par->getYbase(m_plane, eta);
-    m_Y = base + m_strip*stripPitch - stripPitch/2.;
-    m_YZslope = m_Y / m_Z;
-
     double index = std::round((std::abs(m_RZslope)-0.1)/5e-04); // 0.0005 is approx. the step in slope achievable with a road size of 8 strips
-    double roundedSlope = 0.1 + index*((0.6 - 0.1)/1000.); 
-    const double distanceFromZAxis = readout->absTransform().translation().perp() - 0.5*readout->getRsize();
-    m_Rp = distanceFromZAxis + roundedSlope*(planeCoordinates[m_plane].Z() - planeCoordinates[0].Z());
+    double roundedSlope = 0.1 + index*((0.6 - 0.1)/1000.);
+    m_Rp = roP.distanceFromZAxis + roundedSlope*(planeCoordinates[m_plane].Z() - planeCoordinates[0].Z());
     m_shift = m_Rp / m_Z;
   }
 }
 
 MMT_Hit::MMT_Hit(const MMT_Hit* hit)
   : m_sector (hit->m_sector),
-    m_module (hit->m_module),
     m_station_name (hit->m_station_name),
     m_VMM_chip (hit->m_VMM_chip),
     m_MMFE_VMM (hit->m_MMFE_VMM),
@@ -122,10 +114,8 @@ MMT_Hit::MMT_Hit(const MMT_Hit* hit)
     m_strip (hit->m_strip),
     m_localX (hit->m_localX),
     m_RZslope (hit->m_RZslope),
-    m_YZslope (hit->m_YZslope),
     m_BC_time (hit->m_BC_time),
     m_age (hit->m_age),
-    m_Y (hit->m_Y),
     m_Z (hit->m_Z),
     m_PitchOverZ (hit->m_PitchOverZ),
     m_R (hit->m_R),
diff --git a/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_struct.cxx b/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_struct.cxx
index 984c8a38c05ad25c9396b23a1fe4b1f19531093a..107115961b8663495025e982affa8b9d287e7f2f 100644
--- a/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_struct.cxx
+++ b/Trigger/TrigT1/TrigT1NSWSimTools/src/MMT_struct.cxx
@@ -3,6 +3,8 @@
 */
 
 #include "TrigT1NSWSimTools/MMT_struct.h"
+#include "MuonAGDDDescription/MMDetectorDescription.h"
+#include "MuonAGDDDescription/MMDetectorHelper.h"
 #include "MuonReadoutGeometry/MuonChannelDesign.h"
 #include "MuonReadoutGeometry/MuonDetectorManager.h"
 
@@ -11,27 +13,68 @@ MMT_Parameters::MMT_Parameters(const std::string& layerSetup, char wedgeSize, co
 
   // Get the modules for each multiplet, the sector and side arguement (third and fifth argument, respectively) shouldn't matter
   // since the algorithm computes locally
-  std::string wedgeString = (wedgeSize=='L' ? "MML" : "MMS");
+  char side   = 'A';
   m_sector = wedgeSize;
+  MMDetectorHelper aHelper;
+  MMDetectorDescription* mm_top_mult1    = aHelper.Get_MMDetector(m_sector, 2, 5, 1, side); // Parameters: sector, eta, phi, layer/multiplet
+  MMDetectorDescription* mm_top_mult2    = aHelper.Get_MMDetector(m_sector, 2, 5, 2, side);
+  MMDetectorDescription* mm_bottom_mult1 = aHelper.Get_MMDetector(m_sector, 1, 5, 1, side);
+  MMDetectorDescription* mm_bottom_mult2 = aHelper.Get_MMDetector(m_sector, 1, 5, 2, side);
 
-  Identifier mm_top_ele_id = detManager->mmIdHelper()->elementID(wedgeString, 2, 5);
-  Identifier mm_bottom_ele_id = detManager->mmIdHelper()->elementID(wedgeString, 1, 5);
-
-  const MuonGM::MMReadoutElement* mm_ReadOut_top = detManager->getMMReadoutElement(mm_top_ele_id);
-  const MuonGM::MMReadoutElement* mm_ReadOut_bottom = detManager->getMMReadoutElement(mm_bottom_ele_id);
-
-  m_lWidth = mm_ReadOut_top->getLongSsize(); 
-  m_pitch = mm_ReadOut_top->getDesign(mm_top_ele_id)->inputPitch;
+  MMReadoutParameters roParam_top_mult1    = mm_top_mult1->GetReadoutParameters();
+  MMReadoutParameters roParam_top_mult2    = mm_top_mult2->GetReadoutParameters();
+  MMReadoutParameters roParam_bottom_mult1 = mm_bottom_mult1->GetReadoutParameters();
+  MMReadoutParameters roParam_bottom_mult2 = mm_bottom_mult2->GetReadoutParameters();
 
   //Needed to get the max channels for the deadZone in the x planes... a little annoying...
   //Only changes for small or large and per module. Phi, layer, etc don't matter (just set to 1)
+  std::string wedgeString = (wedgeSize=='L' ? "MML" : "MMS");
 
-  m_innerRadiusEta1 = mm_ReadOut_bottom->absTransform().translation().perp() - 0.5*mm_ReadOut_bottom->getRsize();
-  m_innerRadiusEta2 = mm_ReadOut_top->absTransform().translation().perp() - 0.5*mm_ReadOut_top->getRsize();
+  m_pitch = roParam_bottom_mult1.stripPitch;
+  m_lWidth = mm_top_mult1->lWidth();
+  m_innerRadiusEta1 = roParam_bottom_mult1.distanceFromZAxis;
+  m_innerRadiusEta2 = roParam_top_mult1.distanceFromZAxis;
+  m_missedBottomEta = roParam_bottom_mult1.nMissedBottomEta;
+  m_missedBottomStereo = roParam_bottom_mult1.nMissedBottomStereo;
+  if (m_sector == 'L') {
+    ATH_MSG_DEBUG("LM1 \n" <<
+                 "\t\t\t\t Total Strips: " << roParam_bottom_mult1.tStrips << " with pitch: " << roParam_bottom_mult1.stripPitch << "\n" <<
+                 "\t\t\t\t KO strips TopEta: " << roParam_bottom_mult1.nMissedTopEta << " - BottomEta: " << roParam_bottom_mult1.nMissedBottomEta << "\n" <<
+                 "\t\t\t\t KO strips TopStereo: " << roParam_bottom_mult1.nMissedTopStereo << " - BottomStereo: " << roParam_bottom_mult1.nMissedBottomStereo << "\n" <<
+                 "\t\t\t\t (Top, Bottom, Length): (" << mm_bottom_mult1->lWidth() << ", " << mm_bottom_mult1->sWidth() << ", " << mm_bottom_mult1->Length() << ")\n" <<
+                 "\t\t\t\t Zpos - Distance from ZAxis: " << roParam_bottom_mult1.zpos << " - " << roParam_bottom_mult1.distanceFromZAxis << "\n" <<
+                 "\t\t\t\t dlStereoTop/Bottom: " << roParam_bottom_mult1.dlStereoTop << " " << roParam_bottom_mult1.dlStereoBottom << "\n" <<
+                 "\t\t\t\t Active area --> (Bottom, Top, Height) : (" << roParam_bottom_mult1.activeBottomLength << ", " << roParam_bottom_mult1.activeTopLength << ", " << roParam_bottom_mult1.activeH << ")");
+  } else if (m_sector == 'S') {
+    ATH_MSG_DEBUG("SM1 \n" <<
+                 "\t\t\t\t KO strips TopEta: " << roParam_bottom_mult1.nMissedTopEta << " - BottomEta: " << roParam_bottom_mult1.nMissedBottomEta << "\n" <<
+                 "\t\t\t\t KO strips TopStereo: " << roParam_bottom_mult1.nMissedTopStereo << " - BottomStereo: " << roParam_bottom_mult1.nMissedBottomStereo << "\n" <<
+                 "\t\t\t\t Total Strips: " << roParam_bottom_mult1.tStrips << " with pitch: " << roParam_bottom_mult1.stripPitch << "\n" <<
+                 "\t\t\t\t (Top, Bottom, Length): (" << mm_bottom_mult1->lWidth() << ", " << mm_bottom_mult1->sWidth() << ", " << mm_bottom_mult1->Length() << ")\n" <<
+                 "\t\t\t\t Zpos - Distance from ZAxis: " << roParam_bottom_mult1.zpos << " - " << roParam_bottom_mult1.distanceFromZAxis << "\n" <<
+                 "\t\t\t\t dlStereoTop/Bottom: " << roParam_bottom_mult1.dlStereoTop << " " << roParam_bottom_mult1.dlStereoBottom << "\n" <<
+                 "\t\t\t\t Active area --> (Bottom, Top, Height) : (" << roParam_bottom_mult1.activeBottomLength << ", " << roParam_bottom_mult1.activeTopLength << ", " << roParam_bottom_mult1.activeH << ")");
+  }
 
-  const auto design = mm_ReadOut_bottom->getDesign(mm_bottom_ele_id);
-  m_missedBottomEta = design->nMissedBottomEta;
-  m_missedBottomStereo = design->nMissedBottomStereo;
+  if (m_sector == 'L') {
+    ATH_MSG_DEBUG("LM2 \n" <<
+                 "\t\t\t\t Total Strips: " << roParam_top_mult1.tStrips << " with pitch: " << roParam_top_mult1.stripPitch << "\n" <<
+                 "\t\t\t\t KO strips TopEta: " << roParam_top_mult1.nMissedTopEta << " - BottomEta: " << roParam_top_mult1.nMissedBottomEta << "\n" <<
+                 "\t\t\t\t KO strips TopStereo: " << roParam_top_mult1.nMissedTopStereo << " - BottomStereo: " << roParam_top_mult1.nMissedBottomStereo << "\n" <<
+                 "\t\t\t\t (Top, Bottom, Length): (" << mm_top_mult1->lWidth() << ", " << mm_top_mult1->sWidth() << ", " << mm_top_mult1->Length() << ")\n" <<
+                 "\t\t\t\t Zpos - Distance from ZAxis: " << roParam_top_mult1.zpos << " - " << roParam_top_mult1.distanceFromZAxis << "\n" <<
+                 "\t\t\t\t dlStereoTop/Bottom: " << roParam_top_mult1.dlStereoTop << " " << roParam_top_mult1.dlStereoBottom << "\n" <<
+                 "\t\t\t\t Active area --> (Top, Bottom, Height) : (" << roParam_top_mult1.activeTopLength << ", " << roParam_top_mult1.activeBottomLength << ", " << roParam_top_mult1.activeH << ")");
+  } else if (m_sector == 'S') {
+    ATH_MSG_DEBUG("SM2 \n" <<
+                 "\t\t\t\t KO strips TopEta: " << roParam_top_mult1.nMissedTopEta << " - BottomEta: " << roParam_top_mult1.nMissedBottomEta << "\n" <<
+                 "\t\t\t\t KO strips TopStereo: " << roParam_top_mult1.nMissedTopStereo << " - BottomStereo: " << roParam_top_mult1.nMissedBottomStereo << "\n" <<
+                 "\t\t\t\t (Top, Bottom, Length): (" << mm_top_mult1->lWidth() << ", " << mm_top_mult1->sWidth() << ", " << mm_top_mult1->Length() << ")\n" <<
+                 "\t\t\t\t Zpos - Distance from ZAxis: " << roParam_top_mult1.zpos << " - " << roParam_top_mult1.distanceFromZAxis << "\n" <<
+                 "\t\t\t\t dlStereoTop/Bottom: " << roParam_top_mult1.dlStereoTop << " " << roParam_top_mult1.dlStereoBottom << "\n" <<
+                 "\t\t\t\t Active area --> (Top, Bottom, Height) : (" << roParam_top_mult1.activeTopLength << ", " << roParam_top_mult1.activeBottomLength << ", " << roParam_top_mult1.activeH << ")");
+    for (const auto &angle : roParam_top_mult1.stereoAngle) ATH_MSG_DEBUG("Stereo angle: " << angle);
+  }
 
   // retrieve the z-position of the planes
   std::vector<double> z_nominal;
@@ -42,64 +85,6 @@ MMT_Parameters::MMT_Parameters(const std::string& layerSetup, char wedgeSize, co
     ATH_MSG_WARNING("Number of planes in setup is "<< layerSetup.size() << ", but we have a nominal " << z_nominal.size() << " planes.");
     throw std::runtime_error("MMT_Parameters: Invalid number of planes");
   }
-
-  float stereo_degree = design->stereoAngle();
-
-  // MM_firststrip_positions returns the position for phi sector 1.
-  // => for the small sectors, rotate this by -1/16 of a rotation to make our lives easier.
-  // in this coordinate basis, x is up/down the wedge (radial), and y is left/right (phi).
-  float cos_rotation = std::cos(-2*M_PI / 16.0);
-  float sin_rotation = std::sin(-2*M_PI / 16.0);
-  float x_rotated = 0.0;
-  float y_rotated = 0.0;
-
-  float st_angle = 0.0;
-
-  float radial_pos      = 0;
-  float radial_pos_xx_1 = 0, radial_pos_xx_2 = 0;
-  float radial_pos_uv_1 = 0, radial_pos_uv_2 = 0;
-
-  for (unsigned int eta = 1; eta <= 2; eta++){
-    unsigned int layer = 1;
-    for (const auto& pos: MM_firststrip_positions(detManager, wedgeString, eta)){
-
-      if (wedgeString=="MMS"){
-        x_rotated = pos.X()*cos_rotation - pos.Y()*sin_rotation;
-        y_rotated = pos.X()*sin_rotation + pos.Y()*cos_rotation;
-      }
-      else{
-        x_rotated = pos.X();
-        y_rotated = pos.Y();
-      }
-
-      if      (is_u(layer)) st_angle = -1*std::abs(stereo_degree);
-      else if (is_v(layer)) st_angle =    std::abs(stereo_degree);
-      else                  st_angle = 0;
-
-      // walk from the center of the strip to the position of the strip at the center of the wedge.
-      // NB: for X-planes, this is simply the center of the strip: tan(0) = 0.
-      radial_pos = std::abs(x_rotated - y_rotated*std::tan(st_angle * M_PI/180.0));
-
-      if (is_x(layer) && eta==1) radial_pos_xx_1 = radial_pos;
-      else if (is_x(layer) && eta==2) radial_pos_xx_2 = radial_pos;
-      if (is_u(layer) && eta==1) radial_pos_uv_1 = radial_pos;
-      else if (is_u(layer) && eta==2) radial_pos_uv_2 = radial_pos;
-
-      layer++;
-    }
-  }
-
-  // store radial positions as fixed point
-  std::array<float, 2> radial_pos_xx = {radial_pos_xx_1, radial_pos_xx_2};
-  std::array<float, 2> radial_pos_uv = {radial_pos_uv_1, radial_pos_uv_2};
-  m_ybases[0] = radial_pos_xx;
-  m_ybases[1] = radial_pos_xx;
-  m_ybases[2] = radial_pos_uv;
-  m_ybases[3] = radial_pos_uv;
-  m_ybases[4] = radial_pos_uv;
-  m_ybases[5] = radial_pos_uv;
-  m_ybases[6] = radial_pos_xx;
-  m_ybases[7] = radial_pos_xx;
 }
 
 std::vector<ROOT::Math::XYZVector> MMT_Parameters::MM_firststrip_positions(const MuonGM::MuonDetectorManager* detManager, const std::string& wedge, int eta) const {
diff --git a/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref b/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref
index f35ef30b72478569847ce9e36a2883483d98343f..b3e9ead6b6ba78d3e512ff0a7fb3b74b499fb044 100644
--- a/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref
+++ b/Trigger/TrigValidation/TrigAnalysisTest/share/ref_RDOtoRDOTrig_v1Dev_build.ref
@@ -1,3 +1,411 @@
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetL_L1ADVAEL:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 3
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetL_L1ADVAET:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 3
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetM_L1ADVAEL:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 3
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetM_L1ADVAET:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 3
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetT_L1ADVAEL:
+  eventCount: 1
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 1
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetT_L1ADVAET:
+  eventCount: 1
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 1
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetL_L1ADVAEL:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 3
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetL_L1ADVAET:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 3
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetM_L1ADVAEL:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 3
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetM_L1ADVAET:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 3
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetT_L1ADVAEL:
+  eventCount: 1
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 1
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetT_L1ADVAET:
+  eventCount: 1
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 1
+  stepFeatures:
+    0: 15
+    1: 11
+    2: 37
+    3: 10
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetL_L1ADVAEL:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 7
+    9: 7
+    10: 3
+  stepFeatures:
+    0: 9
+    1: 8
+    2: 34
+    3: 7
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+    9: 5
+    10: 5
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetL_L1ADVAET:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 7
+    9: 7
+    10: 3
+  stepFeatures:
+    0: 9
+    1: 8
+    2: 34
+    3: 7
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+    9: 5
+    10: 5
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetM_L1ADVAEL:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 7
+    9: 7
+    10: 3
+  stepFeatures:
+    0: 9
+    1: 8
+    2: 34
+    3: 7
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+    9: 5
+    10: 5
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetM_L1ADVAET:
+  eventCount: 3
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 7
+    9: 7
+    10: 3
+  stepFeatures:
+    0: 9
+    1: 8
+    2: 34
+    3: 7
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+    9: 5
+    10: 5
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetT_L1ADVAEL:
+  eventCount: 1
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 7
+    9: 7
+    10: 1
+  stepFeatures:
+    0: 9
+    1: 8
+    2: 34
+    3: 7
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+    9: 5
+    10: 5
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetT_L1ADVAET:
+  eventCount: 1
+  stepCounts:
+    0: 7
+    1: 7
+    2: 7
+    3: 7
+    4: 7
+    5: 7
+    6: 7
+    7: 7
+    8: 7
+    9: 7
+    10: 1
+  stepFeatures:
+    0: 9
+    1: 8
+    2: 34
+    3: 7
+    4: 6
+    5: 6
+    6: 6
+    7: 39
+    8: 7
+    9: 5
+    10: 5
 HLT_10j35_pf_ftf_presel7j30_L14jJ40:
   eventCount: 0
   stepCounts:
diff --git a/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref b/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref
index 48c888467336dd0846f88258a35d99119e3171d4..665ff25005bd61dee59ebdd4c21e12d1aaad1e22 100644
--- a/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref
+++ b/Trigger/TrigValidation/TrigP1Test/share/ref_v1Dev_decodeBS_build.ref
@@ -1,3 +1,381 @@
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetL_L1ADVAEL:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetL_L1ADVAET:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetM_L1ADVAEL:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetM_L1ADVAET:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetT_L1ADVAEL:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetT_L1ADVAET:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetL_L1ADVAEL:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetL_L1ADVAET:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetM_L1ADVAEL:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetM_L1ADVAET:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetT_L1ADVAEL:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetT_L1ADVAET:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetL_L1ADVAEL:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+    8: 2
+    9: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetL_L1ADVAET:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+    8: 2
+    9: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetM_L1ADVAEL:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+    8: 2
+    9: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetM_L1ADVAET:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+    8: 2
+    9: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetT_L1ADVAEL:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+    8: 2
+    9: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
+HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetT_L1ADVAET:
+  eventCount: 0
+  stepCounts:
+    0: 2
+    1: 2
+    2: 2
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 2
+    8: 2
+    9: 2
+  stepFeatures:
+    0: 3
+    1: 3
+    2: 11
+    3: 2
+    4: 2
+    5: 2
+    6: 2
+    7: 11
+    8: 2
 HLT_10j35_pf_ftf_presel7j30_L14jJ40:
   eventCount: 0
 HLT_10j40_L14jJ40:
diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py
index c9768f7a4b79cbec91f19c1b9b15f73b162ad370..c163dab6e1347e9a1984039d217bc359591e1b39 100644
--- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py
+++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Dev_pp_run3_v1.py
@@ -1201,27 +1201,26 @@ def getDevSignatures():
         #----------------------------------------------------------------------------------------------------------------------
 
         # Anomaly detection (ATR-30618, ATR-30826)
-        # temporarily commented out, as these chains cause a huge increase in RAM
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetL_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetM_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetT_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetL_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetM_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetT_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetL_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetM_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetT_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetL_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetM_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetT_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetL_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetM_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetT_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetL_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetM_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
-        #ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetT_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetL_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetM_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetT_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetL_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetM_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24noL1_j20_xe0_nn_anomdetT_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','FSNOSEED','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetL_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetM_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetT_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetL_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetM_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_nn_anomdetT_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetL_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetM_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetT_L1ADVAET', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetL_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetM_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
+        ChainProp(name='HLT_0e25_nopid_0g25_loose_0mu24_j20_xe0_tcpufit_anomdetT_L1ADVAEL', l1SeedThresholds=['eEM18L','eEM18L','MU3V','FSNOSEED','FSNOSEED'], groups=PrimaryPhIGroup+Topo2Group),
 
     ]
 
diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/MC_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/MC_pp_run3_v1.py
index 81d9d43cd6497f8b1a973394bcc6285c44aacacb..56638c5488c74dce20f02dd1f46866fdb4a99db6 100644
--- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/MC_pp_run3_v1.py
+++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/MC_pp_run3_v1.py
@@ -241,23 +241,12 @@ def getMCSignatures():
         
         #L1 legacy Removal
         #ATR-29523
-        ChainProp(name='HLT_2j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn177_pf_ftf_presel2c20XX2c20b85_L13jJ40p0ETA25'    , l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
-        ChainProp(name='HLT_2j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
-        ChainProp(name='HLT_2j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
-        ChainProp(name='HLT_2j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
-        ChainProp(name='HLT_2j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
-        
         ChainProp(name='HLT_2j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn177_pf_ftf_presel1c20XX2c20bgtwo85_L13jJ40p0ETA25'    , l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
         ChainProp(name='HLT_2j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel1c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
         ChainProp(name='HLT_2j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel1c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
         ChainProp(name='HLT_2j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel1c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
         ChainProp(name='HLT_2j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel1c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
 
-        ChainProp(name='HLT_j50c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
-        ChainProp(name='HLT_j40c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
-        ChainProp(name='HLT_j50c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
-        ChainProp(name='HLT_j40c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
-        
         ChainProp(name='HLT_j50c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel1c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
         ChainProp(name='HLT_j40c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel1c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
         ChainProp(name='HLT_j50c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel1c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
@@ -507,12 +496,6 @@ def getMCSignatures():
         ChainProp(name='HLT_tau60_mediumRNN_tracktwoMVA_tau25_mediumRNN_tracktwoMVA_xe50_cell_03dRAB_L1eTAU60_2eTAU20M_jXE80', l1SeedThresholds=['eTAU60','eTAU20M','FSNOSEED'], stream=[PhysicsStream], groups=PrimaryPhIGroup+TauMETGroup),
         ChainProp(name='HLT_e17_lhmedium_tau25_mediumRNN_tracktwoMVA_xe50_cell_03dRAB_L1eEM18M_2eTAU20M_jXE70', l1SeedThresholds=['eEM18M','eTAU20M','FSNOSEED'], stream=[PhysicsStream], groups=PrimaryPhIGroup+TauMETGroup),
 
-        #ATR-29523
-        ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j50c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=[PhysicsStream], groups=PrimaryPhIGroup+TauBJetGroup),
-        ChainProp(name='HLT_tau20_mediumRNN_tracktwoMVA_probe_L1eTAU12_j50c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=[PhysicsStream], groups=PrimaryPhIGroup+TauBJetGroup),
-        ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_2j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+4*['FSNOSEED'], stream=[PhysicsStream], groups=PrimaryPhIGroup+TauBJetGroup),
-        ChainProp(name='HLT_tau20_mediumRNN_tracktwoMVA_probe_L1eTAU12_2j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+4*['FSNOSEED'], stream=[PhysicsStream], groups=PrimaryPhIGroup+TauBJetGroup),
-
         # ATR-28795 bjet menu cleanup
         ChainProp(name='HLT_g60_tight_2j55_0eta200_emergingPTF0p1dR0p4_pf_ftf_L1eEM26M', groups=SupportPhIGroup+EgammaJetGroup, l1SeedThresholds=['eEM26M','FSNOSEED']),
         ChainProp(name='HLT_g45_tight_2j55_0eta200_emergingPTF0p1dR0p4_pf_ftf_L1eEM26M', groups=SupportPhIGroup+EgammaJetGroup, l1SeedThresholds=['eEM26M','FSNOSEED']),
diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Physics_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Physics_pp_run3_v1.py
index e07e5f6bd3d8370c8e06eead305e392830814a72..66f07c9bd6b0df5d6187fb37b2ba3684c5819e44 100644
--- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Physics_pp_run3_v1.py
+++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLT/Menu/Physics_pp_run3_v1.py
@@ -72,6 +72,9 @@ EOFBeePhIGroup = ['EOF:BeePhaseI']
 EOFTLALegGroup = ['EOF:TLALegacy']
 EOFTLAPhIGroup = ['EOF:TLAPhaseI']
 EOFTauPhIGroup = ['EOF:TauPhaseI']
+EOFMultiBjetGroup = ['EOF:MultiBjetPhaseI']
+EOFTauBjetGroup = ['EOF:TauBjetPhaseI']
+
 # For unconventional tracking chains (ATR-23797)
 UnconvTrkGroup = ['RATE:UnconvTrk', 'BW:UnconvTrk'] 
 LowMuGroup = ['LowMu']
@@ -1350,7 +1353,7 @@ def setupMenu():
 
         # Support chain
         ChainProp(name='HLT_5j35c_nnJvtv1_j25c_nnJvtv1_SHARED_j25c_nnJvtv1_boffperf_pf_ftf_presel6c25_L14jJ40', l1SeedThresholds=['FSNOSEED']*3, stream=['VBFDelayed'], groups=SupportPhIGroup+MultiBjetGroup),
-        ChainProp(name='HLT_5j35c_020jvt_j25c_020jvt_SHARED_j25c_020jvt_boffperf_pf_ftf_presel6c25_L14jJ40', l1SeedThresholds=['FSNOSEED']*3, stream=['VBFDelayed'], groups=SupportPhIGroup+MultiBjetGroup),
+        ChainProp(name='HLT_5j35c_020jvt_j25c_020jvt_SHARED_j25c_020jvt_boffperf_pf_ftf_presel6c25_L14jJ40', l1SeedThresholds=['FSNOSEED']*3, stream=[PhysicsStream], groups=SupportPhIGroup+MultiBjetGroup),
 
         # Phase I inputs GN1
         #  Single b-jet
@@ -1499,6 +1502,17 @@ def setupMenu():
         ChainProp(name='HLT_5j35c_020jvt_j25c_020jvt_SHARED_j25c_020jvt_bgn260_pf_ftf_presel5c25XXc25bgtwo85_L14jJ40', l1SeedThresholds=['FSNOSEED']*3, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
         ChainProp(name='HLT_5j45c_020jvt_j25c_020jvt_SHARED_j25c_020jvt_bgn260_pf_ftf_presel5c25XXc25bgtwo85_L14jJ40', l1SeedThresholds=['FSNOSEED']*3, stream=[PhysicsStream], groups=PrimaryPhIGroup+MultiBjetGroup),
 
+        #HH4b EoF chains
+        #ATR-29523
+        ChainProp(name='HLT_2j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn177_pf_ftf_presel2c20XX2c20b85_L13jJ40p0ETA25'    , l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=EOFMultiBjetGroup+MultiBjetGroup),
+        ChainProp(name='HLT_2j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=EOFMultiBjetGroup+MultiBjetGroup),
+        ChainProp(name='HLT_2j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=EOFMultiBjetGroup+MultiBjetGroup),
+        ChainProp(name='HLT_2j50c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=EOFMultiBjetGroup+MultiBjetGroup),
+        ChainProp(name='HLT_2j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=EOFMultiBjetGroup+MultiBjetGroup),
+        ChainProp(name='HLT_j50c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=EOFMultiBjetGroup+MultiBjetGroup),
+        ChainProp(name='HLT_j40c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn277_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=EOFMultiBjetGroup+MultiBjetGroup),
+        ChainProp(name='HLT_j50c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=EOFMultiBjetGroup+MultiBjetGroup),
+        ChainProp(name='HLT_j40c_020jvt_2j25c_020jvt_j20c_020jvt_SHARED_2j20c_020jvt_bgn280_pf_ftf_presel2c20XX2c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['FSNOSEED']*4, stream=[PhysicsStream], groups=EOFMultiBjetGroup+MultiBjetGroup),
     ]
 
     chains['Tau'] += [
@@ -2221,6 +2235,13 @@ def setupMenu():
         ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo82XX1c20gntau80_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=[PhysicsStream], groups=PrimaryPhIGroup+TauBJetGroup),
         ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j65c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel2c20XX1c20bgtwo80XX1c20gntau80_L1jJ85p0ETA21_3jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=[PhysicsStream], groups=PrimaryPhIGroup+TauBJetGroup),
 
+        #EoF chains
+        #ATR-29523
+        ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_j50c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=[PhysicsStream], groups=EOFTauBjetGroup+TauBJetGroup),
+        ChainProp(name='HLT_tau20_mediumRNN_tracktwoMVA_probe_L1eTAU12_j50c_020jvt_j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+5*['FSNOSEED'], stream=[PhysicsStream], groups=EOFTauBjetGroup+TauBJetGroup),
+        ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_L1eTAU12_2j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+4*['FSNOSEED'], stream=[PhysicsStream], groups=EOFTauBjetGroup+TauBJetGroup),
+        ChainProp(name='HLT_tau20_mediumRNN_tracktwoMVA_probe_L1eTAU12_2j40c_020jvt_j25c_020jvt_j20c_020jvt_SHARED_j20c_020jvt_bgn285_pf_ftf_presel3c20XX1c20bgtwo85_L13jJ40p0ETA25', l1SeedThresholds=['PROBEeTAU12']+4*['FSNOSEED'], stream=[PhysicsStream], groups=EOFTauBjetGroup+TauBJetGroup),
+
         #ATR-28679 -jXE
         ChainProp(name='HLT_tau20_mediumRNN_tracktwoMVA_probe_xe65_cell_xe90_pfopufit_L1jXE110', l1SeedThresholds=['PROBEeTAU12','FSNOSEED','FSNOSEED'],  groups=TagAndProbePhIGroup+TauMETGroup),
         ChainProp(name='HLT_tau25_mediumRNN_tracktwoMVA_probe_xe65_cell_xe90_pfopufit_L1jXE110', l1SeedThresholds=['PROBEcTAU20M','FSNOSEED','FSNOSEED'],  groups=TagAndProbePhIGroup+TauMETGroup),
diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py
index 6a9bccef186e0d6e682536dc5a041ac04c522143..4591c3ec4c8c54b46270ef14023798e279d8eb79 100644
--- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py
+++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_MC_pp_run3_v1.py
@@ -96,9 +96,7 @@ def defineMenu():
         'L1_cTAU30M_2cTAU20M_DR-eTAU30eTAU20-jJ40',
         'L1_cTAU30M_2cTAU20M_DR-eTAU30eTAU20-jJ30',
         'L1_cTAU30M_2cTAU20M_3jJ30p0ETA25',
-        #ATR-29523
-        'L1_3jJ40p0ETA25',
-
+        
         # ATR-29651 - Tau+X chains using eTAU20M seeds
         'L1_eEM18M_2eTAU20M_4jJ30', 'L1_eTAU60_2eTAU20M_jXE80', 'L1_eEM18M_2eTAU20M_jXE70', 
 
diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1.py
index e9bde55599cc74c75aaea0e0e7fd8ff3b4e10e19..e1d7936b4a0437de98954b5863d8e558af6581b8 100644
--- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1.py
+++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Menu/Menu_Physics_pp_run3_v1.py
@@ -174,6 +174,8 @@ def defineMenu():
         'L1_2jJ40_jXE110',
         'L1_3jJ40p0ETA25_jXE80',
         
+        #ATR-29523
+        'L1_3jJ40p0ETA25',
         # new calo
         #'L1_gXERHO70', 'L1_gXERHO100',
         'L1_gXENC70', 'L1_gXENC100',