diff --git a/Rich/Panoptes/python/Panoptes/alignment.py b/Rich/Panoptes/python/Panoptes/alignment.py
index 4426807a4ffd7a4cd54de6794369712cebaef4bd..9b74e33e44796db89989a421f9aa967e97885d9c 100644
--- a/Rich/Panoptes/python/Panoptes/alignment.py
+++ b/Rich/Panoptes/python/Panoptes/alignment.py
@@ -215,6 +215,7 @@ def standalone_rich_panel_align_reco(
             MaxGhostProbCut=tight_sel["MaxGhostProb"],
         ),
         CKResHistoRange=moni_opts["CKResHistoRange"],
+        RichSIMDPixelSummariesLocation=conf["RichSIMDPixels"],
         TracksLocation=conf["InputTracks"],
         TrackSegmentsLocation=conf["TrackSegments"],
         CherenkovPhotonLocation=conf["CherenkovPhotons"],
@@ -328,6 +329,7 @@ def standalone_rich_online_align_reco(
             MaxGhostProbCut=tight_sel["MaxGhostProb"],
         ),
         CKResHistoRange=moni_opts["CKResHistoRange"],
+        RichSIMDPixelSummariesLocation=conf["RichSIMDPixels"],
         TracksLocation=conf["InputTracks"],
         TrackSegmentsLocation=conf["TrackSegments"],
         CherenkovPhotonLocation=conf["CherenkovPhotons"],
diff --git a/Rich/Panoptes/tests/options/2024-data.py b/Rich/Panoptes/tests/options/2024-data.py
index 3d7480b61113d0edfd351ea33391b9bd63242124..ccab7f0bbe8402d1d5ceea332490f7a3f7768735 100644
--- a/Rich/Panoptes/tests/options/2024-data.py
+++ b/Rich/Panoptes/tests/options/2024-data.py
@@ -19,19 +19,26 @@ myName = os.getenv("QMTTEST_NAME")
 # Start with config from TestFileDB
 options.set_input_and_conds_from_testfiledb("rich-decode-2024-panoptes")
 # If in Cambridge, use local PFNs
-jonPath = "/usera/jonesc/NFS/data/RunIII/Hlt2/LHCb/RefIndexCalib/2024/"
-if not myName and os.path.exists(jonPath):
-    options.input_files = [
-        jonPath + "data-{i:04d}.mdf".format(i=i) for i in range(0, 4)
-    ]
-print("Data :-", options.input_files)
+# jonPath = "/usera/jonesc/NFS/data/RunIII/Hlt2/LHCb/RefIndexCalib/2024/"
+# if not myName and os.path.exists(jonPath):
+#     options.input_files = [
+#         jonPath + "data-{i:04d}.mdf".format(i=i) for i in range(0, 4)
+#     ]
+# print("Data :-", options.input_files)
+
+import glob
+path = "/calib/align/LHCb/Rich1/0000307065/*.mdf"
+files = glob.glob(path)
+# options.input_files = files[:4]
+options.input_files = files
 
 options.evt_max = 1000
 options.print_freq = 100
 
 # If required force use of trunk geom
-if myName and "trunk_geom" in myName:
-    options.geometry_version = "run3/trunk"
+# if myName and "trunk_geom" in myName:
+options.geometry_version = "run3/trunk"
+options.conditions_version = "RICH_alignment_2025"
 
 # Due to issues with hit sorting in FT disable Mat corrections
 # See for more details https://gitlab.cern.ch/lhcb/Panoptes/-/issues/7
diff --git a/Rich/RichMirrorAlignmentOnline/files/OfflineScripts/PanelAlignment/surveys/hlt2_reco_rich2_noUT_survey_dd4hep_survey.py b/Rich/RichMirrorAlignmentOnline/files/OfflineScripts/PanelAlignment/surveys/hlt2_reco_rich2_noUT_survey_dd4hep_survey.py
index 314c5a701334ac53f3509a2d00511fc38f81943f..7e5992b42375db4b167dc3eefdee196afbb5d0b1 100644
--- a/Rich/RichMirrorAlignmentOnline/files/OfflineScripts/PanelAlignment/surveys/hlt2_reco_rich2_noUT_survey_dd4hep_survey.py
+++ b/Rich/RichMirrorAlignmentOnline/files/OfflineScripts/PanelAlignment/surveys/hlt2_reco_rich2_noUT_survey_dd4hep_survey.py
@@ -18,8 +18,10 @@ import sys
 from GaudiKernel.SystemOfUnits import GeV, MeV, mm, mrad
 from Moore import (
     options,
-    run_reconstruction,
+    # run_reconstruction, # 2024 script
 )
+from RecoConf.config import run_reconstruction # 2025 script??
+
 from Panoptes.alignment import (
     standalone_rich_online_align_reco,
     standalone_rich_panel_align_reco,
@@ -46,6 +48,13 @@ from RecoConf.rich_reconstruction import default_rich_reco_options
 # from Configurables import (
 #      UpdateManagerSvc
 # )
+
+from PyConf.application import (
+    configure,
+    configure_input,
+)
+
+
 """Options for running over data with FT raw bank version 6."""
 from RecoConf.decoders import (
     default_ft_decoding_version,
@@ -74,7 +83,8 @@ options.evt_max = yml_opts["evt_max"]
 options.n_threads = yml_opts["n_threads"]
 # options.n_event_slots = options.n_threads * 3
 options.scheduler_legacy_mode = False
-options.use_iosvc = True
+# options.use_iosvc = True # 2024 script
+
 
 if useRealData is not True:
     options.set_input_and_conds_from_testfiledb("upgrade_Sept2022_minbias_0fb_md_xdigi")
@@ -134,9 +144,13 @@ else:
 
             return files
 
+        # options.input_files = obtain_files_from_many_runs(
+            # base_dir_files, 299618, 299683
+        # )
         options.input_files = obtain_files_from_many_runs(
-            base_dir_files, 299618, 299683
+            base_dir_files, 307065, 307075
         )
+
         # base_dir_files, 298656, 300124)
 
         # base_dir = "/calib/align/LHCb/Rich/0000255353/"
@@ -181,8 +195,8 @@ if UseDD4Hep:
         dd4hep.ConditionsVersion = "master"
 
         # needed for when reconstruction changed to SuperPixels (change was at run 289434)
-        DDDBConf().GeometryVersion = "run3/2024.Q1.2-v00.00"
-        options.geometry_version = "run3/2024.Q1.2-v00.00"
+        DDDBConf().GeometryVersion = "run3/trunk"
+        options.geometry_version = "run3/trunk"
     else:
         options.conddb_tag = (
             "jonrob/all-pmts-active"  # used for DetDesc MC samples with DD4Hep
@@ -210,6 +224,10 @@ else:
     options.conddb_tag = "upgrade/sim-20220612-vc-md100-RICHcustomFTv6"
     options.simulation = True
 
+# configure input
+config = configure_input(options)
+
+
 rich = f"rich{whichRich}"
 radiator = f"Rich{whichRich}Gas"
 
@@ -319,13 +337,13 @@ else:
 # dd4hep.ConditionsOverride = {"/world/BeforeMagnetRegion/VP:alignment_delta": condval}
 # # ####### 2nd July 2024 overlay
 
-# ####### 4th July 2024 overlay
-## NB: these overlays already included in /group/rich/sw/alignment/ConditionsOverlayForPanels/
-# dd4hep.UseConditionsOverlay = True
-# dd4hep.ConditionsOverlayInitPath = '/group/online/alignment/prelim_align_2024/07_01_Run3Map_withUT_0207'
-condval = "!alignment{ position: [0 * mm, 0 * mm, 0 * mm],  rotation: [-0.000511080865103135 * rad, -0.00021828767680766154 * rad, -0.000866016317444813 * rad]}"
-dd4hep.ConditionsOverride = {"/world/BeforeMagnetRegion/VP:alignment_delta": condval}
-# ####### 4th July 2024 overlay
+# # ####### 4th July 2024 overlay
+# ## NB: these overlays already included in /group/rich/sw/alignment/ConditionsOverlayForPanels/
+# # dd4hep.UseConditionsOverlay = True
+# # dd4hep.ConditionsOverlayInitPath = '/group/online/alignment/prelim_align_2024/07_01_Run3Map_withUT_0207'
+# condval = "!alignment{ position: [0 * mm, 0 * mm, 0 * mm],  rotation: [-0.000511080865103135 * rad, -0.00021828767680766154 * rad, -0.000866016317444813 * rad]}"
+# dd4hep.ConditionsOverride = {"/world/BeforeMagnetRegion/VP:alignment_delta": condval}
+# # ####### 4th July 2024 overlay
 
 default_moni_opts = {}
 default_reco_opts = {}
@@ -367,7 +385,10 @@ if whichRich == 2:
 default_moni_opts.update(tighter_minp)
 
 # wider_histo = {'CKResHistoRange': (0.025, 0.005, 0.004)}
-wider_histo = {"CKResHistoRange": (0.025, 0.0055, 0.0055)}
+# wider_histo = {"CKResHistoRange": (0.025, 0.0055, 0.0055)} # 2024 script
+# wider_histo = {"CKResHistoRange": (0.025, 0.0055)} 
+wider_histo = {"CKResHistoRange": (0.0055, 0.0055)} 
+
 default_moni_opts.update(wider_histo)
 useUT = {"UseUT": useUT_bool}
 default_moni_opts.update(useUT)
@@ -428,9 +449,9 @@ selDec = HltSelReportsDecoder(
     RawBanks=unpacker.RawBankLocations[1],
 )
 
-app = ApplicationMgr(
-    TopAlg=[unpacker, decDec, selDec], ExtSvc=[configured_ann_svc(name="HltANNSvc")]
-)
+# app = ApplicationMgr(
+#     TopAlg=[unpacker, decDec, selDec], ExtSvc=[configured_ann_svc(name="HltANNSvc")]
+# )
 
 # by default, no additional filtering of the events
 event_filter = []
@@ -498,3 +519,46 @@ with (
     default_rich_monitoring_options.bind(init_override_opts=default_moni_opts),
 ):
     run_reconstruction(options, standalone_rich_panel_align_reco)
+
+
+
+
+# noUT = True
+# if useUT_bool:
+#     noUT = False
+#     from RecoConf.hlt2_tracking import make_hlt2_tracks as track_maker
+# else:
+#     from RecoConf.hlt2_tracking import make_hlt2_tracks_without_UT as track_maker
+
+# tasks = [
+#     "Produce",  #    # fill the production set of histograms
+#     #'Monitor',      # add various checking histograms
+#     #'MapExlore',    # explore tracks and photons for the HLT1 pre-selection line "map"
+#     #'MapConstruct', # construct exploratory data structure for the HLT1 pre-selection line "map"
+#     #'Map',          # create data structure to be used in the HLT1 selection line with entire contents
+#     #'MapUse',       # use the "map" data structure a la in the HLT1 pre-selection line "map"
+#     #'AllFillCount', # add counters for optimization of the RICH2 mirror combinations subset
+#     #'AllFillPhi',   # fill 1D phi histos for optimization of the RICH2 mirror combinations subset
+#     #'MapPhi',       # create data structure to be used in the HLT1 selection line with contents in quantiles
+#     #'MapPhiUse',    # use the "mapPhi" data structure in the HLT1 pre-selection line "mapPhi"
+#     #'CheckRestFill',# check filling the rest of RICH2 mirror combinations along with 8 poorest
+#     #'SkipFilled',   # check filling all RICH2 mirror combinations with skipping when filled
+# ]
+
+
+# with (
+#     # PrForwardTrackingVelo.bind(MinP=min_p),
+#     # PrMatchNN.bind(MinP=min_p),
+#     # PrHybridSeeding.bind(MinP=min_p),
+#     track_maker.bind(use_pr_kf=True, light_reco=True, fast_reco=True),
+#     default_rich_reco_options.bind(init_override_opts=default_reco_opts),
+#     default_rich_monitoring_options.bind(init_override_opts=default_moni_opts),
+#     alignment_rich_monitoring_options.bind(
+#         radiator="Rich1Gas", init_override_opts=align_opts
+#     ),
+# ):
+#     reconstruction = standalone_rich_panel_align_reco(
+#         # RichGas="Rich1Gas", MirrorAlignTasks=tasks, EventFilter=event_filter, noUT=noUT
+#         RichGas="Rich1Gas", EventFilter=event_filter, noUT=noUT
+#     )
+#     config.update(configure(options, reconstruction.node))
\ No newline at end of file
diff --git a/Rich/RichMirrorAlignmentOnline/files/OfflineScripts/PanelAlignment/surveys/survey_opts.yml b/Rich/RichMirrorAlignmentOnline/files/OfflineScripts/PanelAlignment/surveys/survey_opts.yml
index 8f693ca5970a8b6e6174ea054659521a45da8994..399bf383ffe9dbc1b5b00feca34e45d23b1ceefe 100644
--- a/Rich/RichMirrorAlignmentOnline/files/OfflineScripts/PanelAlignment/surveys/survey_opts.yml
+++ b/Rich/RichMirrorAlignmentOnline/files/OfflineScripts/PanelAlignment/surveys/survey_opts.yml
@@ -187,10 +187,10 @@ stack_path: /group/rich/sw/alignment/stack/
 
 
 R1:
-  P0:
+  P0: # top
     perf_trans:
-      x: 0.75
-      y: -4.2
+      x: 0.8999999999999999
+      y: -5.95
       z: 0.0
     perf_rot:
       x: 0.0
@@ -198,8 +198,8 @@ R1:
       z: 0.0
   P1:
     perf_trans:
-      x: -3.6984375000000016
-      y: 8.4015625
+      x: -4.398437500000002
+      y: 6.0515625
       z: 0.0
     perf_rot:
       x: 0.0
diff --git a/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/Iterator.py b/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/Iterator.py
index b0266abe81e7e45e4bd95034e7b39b96ea968037..fa5b4ac893bed8154f76f005492423d09fde3aaa 100644
--- a/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/Iterator.py
+++ b/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/Iterator.py
@@ -172,6 +172,7 @@ def run(whichRich, offline=False, runInlineReco=False):
     else:
         lastAlignSuccessLine = "UNKNOWN\n"
 
+    print("testbench: are we here AA")
     ### Now that we have the lastAlignSuccessLine, Reset lastAlignSuccessFile to default
     try:
         lastAlignSuccessFile = open(lastAlignSuccess, "w")
@@ -200,7 +201,7 @@ def run(whichRich, offline=False, runInlineReco=False):
 
     logProcess.stdout.close()
     logProcess.stderr.close()
-    sys.stdout.flush()
+    sys.stdout.flush() # hanging in the testbench
     print("INFO: Logger Initializing (8 second pause).")
     sleep(8)  # wait long enough for logger to initialize
 
diff --git a/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/RichAnalyzer.py b/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/RichAnalyzer.py
index 101262b48d5a699b92fe81e4b81004e0c6391545..bd18d49204be09ec0192de557fde7edb2d943a10 100755
--- a/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/RichAnalyzer.py
+++ b/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/RichAnalyzer.py
@@ -194,8 +194,9 @@ class hlt2_reco_rich_noUT_panoptes_dd4hep_both:
         from GaudiKernel.SystemOfUnits import GeV, MeV, mm, mrad
         from Moore import (
             options,
-            run_reconstruction,
+            # run_reconstruction,
         )
+        from RecoConf.config import run_reconstruction
         from Panoptes.alignment import (
             standalone_rich_online_align_reco,
             standalone_rich_panel_align_reco,
@@ -219,6 +220,11 @@ class hlt2_reco_rich_noUT_panoptes_dd4hep_both:
         )
         from RecoConf.rich_reconstruction import default_rich_reco_options
 
+        from PyConf.application import (
+            configure,
+            configure_input,
+        )
+
         """Options for running over data with FT raw bank version 6."""
         from RecoConf.decoders import (
             default_ft_decoding_version,
@@ -338,7 +344,41 @@ class hlt2_reco_rich_noUT_panoptes_dd4hep_both:
                         "alignment2022"  # need alignment2022 for 2022 data
                     )
                 elif "Collision24" in dataVariant:
-                    dd4hep.ConditionsVersion = OnlineEnv.CondDBTag
+                    # dd4hep.ConditionsVersion = OnlineEnv.CondDBTag
+                    # dd4hep.ConditionsVersion = "RICH_alignment_2025"
+                    dd4hep.ConditionsVersion = "RICH_alignment_2025_Mar2"
+
+                if "overrideGeom" in dataVariant:
+                    print("INFO: overrideGeom ON")
+                    dd4hep.ConditionsVersion = "master"
+                    dd4hep.ConditionsLocation = (
+                        "git:/cvmfs/lhcb.cern.ch/lib/lhcb/git-conddb/lhcb-conditions-database.git"
+                    )
+                    # conddb_path = (
+                    #         "/group/rich/sw/alignment/ConditionsNewPanels/lhcb-conditions-database"
+                    #     )
+                    # dd4hep.ConditionsLocation = f"file://{conddb_path}"
+
+                    options.conddb_tag = OnlineEnv.CondDBTag  # used for real data
+                    options.dddb_tag = OnlineEnv.DDDBTag
+                    DDDBConf().GeometryVersion = OnlineEnv.DDDBTag
+                    options.geometry_version = OnlineEnv.DDDBTag
+
+                    options.conddb_tag = "master"  # used for real data
+                    options.dddb_tag = "run3/trunk"
+
+                    dd4hep.UseConditionsOverlay = True
+                    dd4hep.ConditionsVersion = "master"
+
+                    # needed for when reconstruction changed to SuperPixels (change was at run 289434)
+                    DDDBConf().GeometryVersion = "run3/trunk"
+                    options.geometry_version = "run3/trunk"
+
+                    # temporary
+                    options.conddb_tag = "RICH_alignment_2025"  # used for real data
+                    options.conditions_version = "RICH_alignment_2025"  # used for real data
+                    dd4hep.ConditionsVersion = "RICH_alignment_2025"
+                    
 
                 if useCondDBPath:
                     # PN - Here we only want to replace the
@@ -433,33 +473,76 @@ class hlt2_reco_rich_noUT_panoptes_dd4hep_both:
 
                     shutil.copyfile(fromFile, toFile)
                     sys.stdout.flush()
+
+                # elif useConditionsOverlay:
+                #     doCondOverlay = False
+                #     if n_it == 0:
+                #         dd4hep.UseConditionsOverlay = False
+
+                #         # only change conditions on it0 if there is a starting yaml defined
+                #         yamlCondUpdate = alignConf.getProp("startYAMLFile")
+                #         if yamlCondUpdate != "":
+                #             fromFile = yamlCondUpdate
+                #             doCondOverlay = True
+
+                #     if n_it >= 1:  # always update conditions for n_it >= 1
+                #         fromFile = f"{workdir}" + f"CondDB_Rich{whichRich}.yml"
+                #         doCondOverlay = True
+
+                #     if doCondOverlay:
+                #         dd4hep.UseConditionsOverlay = True
+                #         dd4hep.ConditionsOverlayInitPath = (
+                #             "/group/rich/sw/alignment/ConditionsOverlay"
+                #         )
+
+                #         toFile = f"/group/rich/sw/alignment/ConditionsOverlay/Conditions/Rich{whichRich}/Alignment/Mirrors.yml"
+
+                #         if tiltName != "":
+                #             print(f"TILTING: {tiltName}")
+                #             tilt_file = glob.glob(f'{workdir}/*{tiltName}_i{n_it}.yml')[0]
+                #             fromFile = tilt_file
+
+                #         print(f"INFO: Copying (useConditionsOverlay) (n_it: {n_it}, tiltName: {tiltName}) {fromFile} to {toFile}")
+                        
+                #         shutil.copyfile(fromFile, toFile)
+                #         sys.stdout.flush()
+
+                # ALEX CHANGES
                 elif useConditionsOverlay:
-                    doCondOverlay = False
+
+                    toFile = f"/group/rich/sw/alignment/ConditionsOverlay/Conditions/Rich{whichRich}/Alignment/Mirrors.yml"
+
+                    print('INFO: useConditionsOverlay n_it',n_it)
                     if n_it == 0:
-                        dd4hep.UseConditionsOverlay = False
 
-                        # only change conditions on it0 if there is a starting yaml defined
                         yamlCondUpdate = alignConf.getProp("startYAMLFile")
                         if yamlCondUpdate != "":
                             fromFile = yamlCondUpdate
-                            doCondOverlay = True
-
-                    if n_it >= 1:  # always update conditions for n_it >= 1
+                            print("START YAML", fromFile)
+                        else: # no overlay
+                            print("NO START YAML")
+                            try: os.remove(toFile)
+                            except Exception as e: print(toFile, "already blank")
+                            fromFile = None
+
+                    elif n_it >= 1:  # always update conditions for n_it >= 1
                         fromFile = f"{workdir}" + f"CondDB_Rich{whichRich}.yml"
-                        doCondOverlay = True
 
-                    if doCondOverlay:
-                        dd4hep.UseConditionsOverlay = True
-                        dd4hep.ConditionsOverlayInitPath = (
-                            "/group/rich/sw/alignment/ConditionsOverlay"
-                        )
+                    dd4hep.UseConditionsOverlay = True
+                    dd4hep.ConditionsOverlayInitPath = (
+                        "/group/rich/sw/alignment/ConditionsOverlay"
+                    )
 
-                        toFile = f"/group/rich/sw/alignment/ConditionsOverlay/Conditions/Rich{whichRich}/Alignment/Mirrors.yml"
+                    if tiltName != "":
+                        print(f"TILTING: {tiltName}")
+                        tilt_file = glob.glob(f'{workdir}/*{tiltName}_i{n_it}.yml')[0]
+                        fromFile = tilt_file
 
+                    if fromFile is not None:
                         print(f"INFO: Copying {fromFile} to {toFile}")
-
+                        print(getpass.getuser())
                         shutil.copyfile(fromFile, toFile)
-                        sys.stdout.flush()
+                    sys.stdout.flush()
 
             else:
                 options.conddb_tag = (
@@ -505,6 +588,8 @@ class hlt2_reco_rich_noUT_panoptes_dd4hep_both:
             options.conddb_tag = "upgrade/sim-20220612-vc-md100-RICHcustomFTv6"
             options.simulation = True
 
+        config = configure_input(options)
+
         param_list = ["p0_x", "p1_x", "p0_y", "p1_y", "p0_z", "p1_z"]
         param_dict = dict.fromkeys(param_list)
 
@@ -644,7 +729,8 @@ class hlt2_reco_rich_noUT_panoptes_dd4hep_both:
             }
         }
         default_moni_opts.update(tighter_minp)
-        wider_histo = {"CKResHistoRange": (0.025, 0.005, 0.004)}
+        # wider_histo = {"CKResHistoRange": (0.025, 0.005, 0.004)}
+        wider_histo = {"CKResHistoRange": (0.005, 0.005)}
         default_moni_opts.update(wider_histo)
         useUT = {"UseUT": useUT_bool}
         default_moni_opts.update(useUT)
diff --git a/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/RichAnalyzerControl.py b/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/RichAnalyzerControl.py
index 93baf0e9024af73f592ab091833a1a8e8751c4da..7fe08369815a2cf8ac2ff85b2af3980bcf254238 100644
--- a/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/RichAnalyzerControl.py
+++ b/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/RichAnalyzerControl.py
@@ -141,7 +141,7 @@ class RichAnalyzerControl:
                 myStdErr = open(analyzerStdErrFile, "w")
 
                 self.dataVariant = alignConf.getProp("dataVariant")
-                if self.dataVariant == "Collision24":
+                if self.dataVariant == "Collision24" or self.dataVariant == "Collision24_overrideGeom":
                     if self.whichRich == 1:
                         which_data_online = "data_online_Rich1.py"
                     elif self.whichRich == 2:
@@ -149,7 +149,7 @@ class RichAnalyzerControl:
                 else:
                     which_data_online = "data_online.py"
 
-                cmd = f"cd {self.workdir} ; `which gaudirun.py` $RICHMIRRORALIGNMENTONLINEROOT/python/PyMirrAlignOnline/{which_data_online} $RICHMIRRORALIGNMENTONLINEROOT/python/PyMirrAlignOnline/RichAnalyzer.py > {richAnalyzerOutFile} ; cd - "
+                cmd = f"cd {self.workdir} ; `which gaudirun.py` $RICHMIRRORALIGNMENTONLINEROOT/python/PyMirrAlignOnline/{which_data_online} $RICHMIRRORALIGNMENTONLINEROOT/python/PyMirrAlignOnline/RichAnalyzer.py | head -n 500 > {richAnalyzerOutFile} ; cd - " # only keep first 1000 lines, rest is useless anyway
                 print(f"INFO: Starting RichAnalyzer.")
                 print(f"INFO: cmd = {cmd}")
                 sys.stdout.flush()
diff --git a/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/data_online_Rich1.py b/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/data_online_Rich1.py
index ab391eb02df6ae0730a8404be3d1b8c5cfe87e12..1ca3c5f171c4893915051d19adc75ada85468321 100644
--- a/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/data_online_Rich1.py
+++ b/Rich/RichMirrorAlignmentOnline/python/PyMirrAlignOnline/data_online_Rich1.py
@@ -146,7 +146,8 @@ if select_runs_TESTBENCH and "online" not in getpass.getuser():
     # select_run_numbers = [28985, 28986, 28987]
     # select_run_numbers = "290034"
     # select_run_numbers = [299620,299673,299681]
-    select_run_numbers = [299620]
+    # select_run_numbers = [307065, 307066, 307067]
+    select_run_numbers = [307065]
     if not isinstance(select_run_numbers, list):
         select_run_numbers = [select_run_numbers]
     options.input_files = [
@@ -154,6 +155,25 @@ if select_runs_TESTBENCH and "online" not in getpass.getuser():
         for x in options.input_files
         if any(str(run_number) in x for run_number in select_run_numbers)
     ]
+    options.input_files = options.input_files[:10]
+
+
+#### HACKKKK
+base_dir = "/calib/align/LHCb/Rich1/*/"
+dirs = glob.glob(base_dir, recursive=True)
+files = []
+for dir_i in dirs:
+    files += glob.glob(dir_i + "*")
+files_HACK = []
+for file in files:
+    file_id = file.split("/")[-2]
+    # if int(file_id[4:]) >= 306402 and int(file_id[4:]) <= 306707: # large set
+    if int(file_id[4:]) >= 306402 and int(file_id[4:]) <= 306405:
+        files_HACK.append(file)
+files = files_HACK
+files = sorted(files, reverse=True)
+options.input_files = files
+print("HACKKKK")
 
 print(f"{len(options.input_files)} .mdf files...")
 
diff --git a/Rich/RichMirrorAlignmentOnline/python/RichMirrorAlignmentOnline/Configuration.py b/Rich/RichMirrorAlignmentOnline/python/RichMirrorAlignmentOnline/Configuration.py
index f00cc43ac5c9265fdb52d083729c78f48151cbf6..50a33d7f8a136c1c206d19af4882d50e86254e03 100644
--- a/Rich/RichMirrorAlignmentOnline/python/RichMirrorAlignmentOnline/Configuration.py
+++ b/Rich/RichMirrorAlignmentOnline/python/RichMirrorAlignmentOnline/Configuration.py
@@ -51,20 +51,24 @@ class Rich1MirrAlignOnConf(LHCbConfigurableUser):
         "MinItStart":  # will be automatically forced to be MajItStart multiplied by the length of tiltNames, if magnFactorModes = 0
         0,  # 18
         ### Better not change these, only for very very VERY good reasons
-        "dataVariant": "Collision24",
+        "dataVariant": "Collision24_overrideGeom",
+        # "dataVariant": "Collision24",
         "useHltDecisions": False,
         "useReducedSubset": False,
         "stackDir": "/group/rich/sw/alignment/stack/",
-        "magnFactorsMode": 0,  # 0,
+        "magnFactorsMode": 0,  # 0, # 2 doesnt exist
         "magnifDir":  # relative to stackDir (i.e. remove /group/rich/sw/alignment/stack/)
-        # "Panoptes/Rich/RichMirrorAlignmentOnline/files/MagnifFactors/Rich1/2024-03-13T11-26/", # use for sajans detector branch
-        "Panoptes/Rich/RichMirrorAlignmentOnline/files/MagnifFactors/Rich1/20230514_202521/",
+        "Panoptes/Rich/RichMirrorAlignmentOnline/files/MagnifFactors/Rich1/2024-03-13T11-26/", # use for sajans detector branch
+        # "Panoptes/Rich/RichMirrorAlignmentOnline/files/MagnifFactors/Rich1/2025-02-08T21-21/", # 2025 run3/trunk - mental values
+        # "Panoptes/Rich/RichMirrorAlignmentOnline/files/MagnifFactors/Rich1/20230514_202521/",
         "richFiles": "/group/online/AligWork/tempAlignmentFiles",  # "/group/rich/AlignmentFiles/",
         "maxIterations": 8,  # 8,
         "testing": True,  # False,
-        "WorkDir": "/group/online/AligWork/Rich1/",
+        "WorkDir": 
+        "/group/online/AligWork/Rich1/",
         # "/home/marshall/Bristol_RICH/testbench/Rich1/", # If running in the testbench this path must be changed
-        "SaveDir": "/group/online/AligWork/MirrorAlignments/",
+        "SaveDir": 
+        "/group/online/AligWork/MirrorAlignments/",
         # "/home/marshall/Bristol_RICH/testbench/MirrorAlignments/", # If running in the testbench this path must be changed
         "ItNrFile": "/group/online/dataflow/options/LHCbA/Rich1_Alignment_Reference_File.txt",
         "thisCase": "online",
@@ -86,15 +90,14 @@ class Rich1MirrAlignOnConf(LHCbConfigurableUser):
         ### May be changed if you know what you are doing, explanations below
         "startXMLFile": "",  # "/group/rich/sw/alignment/stack/Panoptes/Rich/RichMirrorAlignmentOnline/files/ZeroDB/Rich1_Zeroed.xml" # if testing is not True OR this is blank, it automatically uses the DB XML file
         "compareXMLFile": "",  # "/group/rich/sw/alignment/stack/Panoptes/Rich/RichMirrorAlignmentOnline/files/ZeroDB/Rich1_Zeroed.xml" # if this is blank, it automatically uses the DB XML file
-        "startYAMLFile": "",
-        # "/group/rich/sw/alignment/lhcb-conditions-database-new/Conditions/Rich1/Alignment/Mirrors.yml/.pool/v10" # if testing is not True OR this is blank, it automatically uses the DB XML file
+        "startYAMLFile": "/group/rich/sw/alignment/lhcb-conditions-database-new/Conditions/Rich1/Alignment/Mirrors.yml/.pool/vTest", # if testing is not True OR this is blank, it automatically uses the DB XML file
         # "/group/rich/sw/alignment/yaml_files/starting_points/v4_altered.yml" # if testing is not True OR this is blank, it automatically uses the DB XML file
-        "compareYAMLFile": "",
-        # "/group/rich/sw/alignment/lhcb-conditions-database-new/Conditions/Rich1/Alignment/Mirrors.yml/.pool/v10" # if this is blank, it automatically uses the DB YAML file
+        "compareYAMLFile": "/group/rich/sw/alignment/lhcb-conditions-database-new/Conditions/Rich1/Alignment/Mirrors.yml/.pool/vTest", # if this is blank, it automatically uses the DB YAML file
         # "/group/rich/sw/alignment/yaml_files/starting_points/v4_altered.yml" # if this is blank, it automatically uses the DB YAML file
         "YAMLio": True,
         "useDD4hep": True,
-        "minP": 30.0,
+        # "minP": 30.0,
+        "minP": 10.0,
         "coeffCalibTilt": 0.7,
         "minAverageBinPop": 6.0,
         "phiBinFactor": 3,