diff --git a/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaFlags.py b/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaFlags.py
new file mode 100644
index 0000000000000000000000000000000000000000..b44c532b22f8e234da2af47d88181530f62963a4
--- /dev/null
+++ b/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaFlags.py
@@ -0,0 +1,53 @@
+#! /usr/bin/env python
+# -*- coding: utf-8 -*-
+# vim:fenc=utf-8
+#
+# Copyright 2016 Ryan Mackenzie White <ryan.white@cern.ch>
+#
+# Distributed under terms of the  license.
+
+"""
+Job properties for TrigEgamma
+Allows configuring PID, calibration, cluster corrections, etc...
+"""
+from AthenaCommon.JobProperties import JobProperty, JobPropertyContainer
+from AthenaCommon.JobProperties import jobproperties
+
+class ringerVersion (JobProperty):
+    """ Version ringer tunes """
+    statusOn=False
+    allowedTypes=['str','None']
+    StoreValues=None
+    
+class pidVersion (JobProperty):
+    """ Version of PID tunes
+    """
+    statusOn=True
+    allowedTypes=['str','None']
+    StoredValue='ElectronPhotonSelectorTools/trigger/rel21_20161021/'
+
+class clusterCorrectionVersion (JobProperty):
+    """
+    Cluster correction version for HLT Calo
+    """
+    statusOn=True
+    allowedTypes=['str','None']
+    allowedValues=['v12phiflip_noecorrnogap']
+    StoredValue=None
+
+class calibMVAVersion (JobProperty):
+    """
+    MVA calibration version
+    """
+    statusOn=True
+    allowedTypes=['str','None']
+    StoredValue='egammaMVACalib/online/v3'
+
+class TrigEgammaFlags(JobPropertyContainer):
+    """TrigEgamma information"""
+
+jobproperties.add_Container(TrigEgammaFlags)
+
+jobproperties.TrigEgammaFlags.add_JobProperty(pidVersion)
+jobproperties.TrigEgammaFlags.add_JobProperty(clusterCorrectionVersion)
+jobproperties.TrigEgammaFlags.add_JobProperty(calibMVAVersion)
diff --git a/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaRecConfig.py b/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaRecConfig.py
index 533d14d7ec9acc6117d1a820b46d1511546034a1..ca889397fe9dc132634d3f503497f4b661f24e32 100755
--- a/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaRecConfig.py
+++ b/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaRecConfig.py
@@ -7,11 +7,6 @@ from AthenaCommon.AppMgr import ToolSvc
 
 from TrigEgammaRec import TrigEgammaRecConf
 
-# PID -- selectors added via TrigEgammaPIDTools in TrigEgammaHypo
-from TrigEgammaHypo.TrigEgammaPidTools import ElectronPidTools
-from TrigEgammaHypo.TrigEgammaPidTools import PhotonPidTools
-ElectronPidTools()
-PhotonPidTools()
 
 from egammaRec.Factories import Factory, ToolFactory, FcnWrapper, getPropertyValue 
 # The following tools use the offline configuration
@@ -45,7 +40,7 @@ from TrigEgammaRec.TrigEgammaToolFactories import (TrigCaloIsolationTool,
         )
 
 def configureTrigEgammaMonitoring(tool):
-  from RecExConfig.RecFlags import rec
+  # from RecExConfig.RecFlags import rec
   # Configure monitoring tools
   from TrigEgammaRec.TrigEgammaRecMonitoring import TrigEgammaRecValidationMonitoring, TrigEgammaRecOnlineMonitoring, TrigEgammaRecCosmicMonitoring
   validation = TrigEgammaRecValidationMonitoring()
diff --git a/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaToolFactories.py b/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaToolFactories.py
index ed1cc361f1ee1e08f546235c28ba3ca602deead1..fac8084c78bf6e3cecec49b23262ebcd7a4998b0 100644
--- a/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaToolFactories.py
+++ b/Trigger/TrigAlgorithms/TrigEgammaRec/python/TrigEgammaToolFactories.py
@@ -14,6 +14,7 @@ __author__ = "Ryan Mackenzie White"
 import logging
 from AthenaCommon import CfgMgr
 from AthenaCommon.AppMgr import ToolSvc
+from AthenaCommon.SystemOfUnits import GeV,MeV,deg
 # New configuration for use in rel 19.X with xAOD
 # Adapted from egammaRec/egammaGetter.py
 # Factory tools, handles configuration of tools and dependencies
@@ -26,6 +27,12 @@ from egammaRec.Factories import Factory, ToolFactory, FcnWrapper, getPropertyVal
 # egammaOQFlagsBuilder
 # EMVertexBuilder
 
+mlog = logging.getLogger ('TrigEgammaToolFactories')
+# PID -- selectors added via TrigEgammaPIDTools in TrigEgammaHypo
+from TrigEgammaHypo.TrigEgammaPidTools import ElectronPidTools
+from TrigEgammaHypo.TrigEgammaPidTools import PhotonPidTools
+ElectronPidTools()
+PhotonPidTools()
 # Following tools have TrigEgamma factories
 from egammaTools.egammaToolsFactories import EMTrackMatchBuilder, EMFourMomBuilder, EMShowerBuilder
 from egammaTrackTools.egammaTrackToolsFactories import EMExtrapolationTools
@@ -125,3 +132,58 @@ TrigEMShowerBuilder = EMShowerBuilder.copy(
   Print = True,
 )
 
+from TrigEgammaRec.TrigEgammaFlags import jobproperties
+from egammaMVACalib import egammaMVACalibConf 
+mlog.info("MVA version version %s"%jobproperties.TrigEgammaFlags.calibMVAVersion() )
+mlog.info("Cluster Correction version %s"%jobproperties.TrigEgammaFlags.clusterCorrectionVersion() )
+TrigEgammaMVACalibTool = ToolFactory(egammaMVACalibConf.egammaMVATool,name="TrigEgammaMVACalibTool",
+        folder=jobproperties.TrigEgammaFlags.calibMVAVersion(),use_layer_corrected = False)
+
+from TrigCaloRec.TrigCaloRecConf import TrigCaloClusterMaker
+
+def configureTrigCaloClusterMonitoring(tool):
+    from TrigCaloRec.TrigCaloClusterMakerMonitoring import TrigCaloClusterMakerValidationMonitoring, TrigCaloClusterMakerOnlineMonitoring, TrigCaloClusterMakerCosmicMonitoring
+    from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig
+    clvalidation = TrigCaloClusterMakerValidationMonitoring()
+    clonline = TrigCaloClusterMakerOnlineMonitoring()
+    clcosmic = TrigCaloClusterMakerCosmicMonitoring()
+    cltime = TrigTimeHistToolConfig("TrigCaloClusterMaker_Time")
+    tool.AthenaMonTools = [ clvalidation, clonline, cltime, clcosmic]
+
+def configureClusterBuilder(slwAlg):
+    slwName="trigslw"
+    if hasattr(slwAlg,slwName): 
+        return
+    from CaloRec.CaloRecMakers import make_CaloClusterBuilderSW
+    trigslw= make_CaloClusterBuilderSW (slwName,
+            tower_container = "LArTowerEM",
+            eta_size = 3,
+            phi_size = 5,
+            e_threshold = 2.5 * GeV,
+            FillClusterCells = False,
+            eta_Duplicate = 5,
+            phi_Duplicate = 5
+            )
+    #mlog.info("TrigCaloClusterMaker adding slw tool %s"%trigslw.getFullName())
+    slwAlg += trigslw
+    slwAlg.ClusterMakerTools=[ trigslw.getFullName() ]
+
+def configureClusterCorrections(slwAlg):
+    '''Add attributes ClusterCorrectionToolsXX to egammaSwTool object'''
+    if not hasattr(slwAlg,"ClusterCorrectionTools"):
+        return
+    from CaloClusterCorrection.CaloSwCorrections import  make_CaloSwCorrections
+    clusterTypes = ("ele37","ele55")
+    for cl in clusterTypes:
+        clName = "CaloRunClusterCorrections"+cl
+        if hasattr(slwAlg,clName):
+            continue
+        for tool in make_CaloSwCorrections (cl,version=jobproperties.TrigEgammaFlags.clusterCorrectionVersion()):
+            #mlog.info("Correction tool %s"%tool.getFullName())
+            slwAlg += tool
+            slwAlg.ClusterCorrectionTools += [tool.getFullName()]
+
+TrigCaloClusterMaker_slw = Factory(TrigCaloClusterMaker,name='TrigCaloClusterMaker_slw',ClustersOutputName="TriggerClustersegSW",
+        postInit=[configureClusterBuilder,configureClusterCorrections,configureTrigCaloClusterMonitoring])
+
+del mlog