diff --git a/Control/AthenaCommon/python/CFElements.py b/Control/AthenaCommon/python/CFElements.py
index 815c30237151f64d720de1d92b08416f5c0f50b9..c638273b3cb3c1d477862c608944f82eb50c1a95 100644
--- a/Control/AthenaCommon/python/CFElements.py
+++ b/Control/AthenaCommon/python/CFElements.py
@@ -21,8 +21,20 @@ def seqAND(name, subs=[]):
         seq += s
     return seq
 
+def seqOR(name, subs=[]):
+    """ sequential OR sequencer, used when a barier needs to be set but all subs reached irresepectively of the decision """
+    seq = AthSequencer( name )
+    seq.ModeOR = True
+    seq.Sequential = True
+    seq.StopOverride = True
+    for s in subs:
+        seq += s
+    return seq
+
 def stepSeq(name, filterAlg, rest):
     """ elementary HLT step sequencer, filterAlg is gating, rest is anything that needs to happe within the step """
     stepReco = parOR(name+"_reco", rest)
     stepAnd = seqAND(name, [ filterAlg, stepReco ])
     return stepAnd
+
+    
diff --git a/Trigger/TrigSteer/DecisionHandling/src/TriggerSummaryAlg.h b/Trigger/TrigSteer/DecisionHandling/src/TriggerSummaryAlg.h
index a6bef5084b44f1e3716e6a220607d5d5c0c4468d..446e7204e63560ab47c4b28d701f9f56f53e2463 100644
--- a/Trigger/TrigSteer/DecisionHandling/src/TriggerSummaryAlg.h
+++ b/Trigger/TrigSteer/DecisionHandling/src/TriggerSummaryAlg.h
@@ -31,8 +31,11 @@ class TriggerSummaryAlg : public ::AthReentrantAlgorithm {
   //      "Chain names maping to counters. In the form of: name counter" };
   SG::ReadHandleKey<TrigCompositeUtils::DecisionContainer> m_l1decisionKey{ this, "L1Decision", "", 
       "Partial decisions from the last stage of chains processing, they nay be missing from event to event"};
+
+  
   SG::ReadHandleKeyArray<TrigCompositeUtils::DecisionContainer> m_finalDecisionKeys{ this, "FinalDecisions", {}, 
       "Object ontaining all the HLT input and outpu decision sets"};
+
   SG::WriteHandleKey<TrigCompositeUtils::DecisionContainer> m_summaryKey { this, "HLTSummary", "HLTSummary", "Output summary" };
   //  SG::WriteHandleKey m_hltResultKey{ this, "HLTResult", "", "Output HLT Result" };
 
diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py b/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py
index bac3917e15c9d805d1fd9c23d56ab7676b117af1..2aaa6575f25ca3393463fc0ba2d50f79c701dea9 100644
--- a/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py
+++ b/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py
@@ -51,7 +51,7 @@ theFastCaloAlgo.OutputLevel=VERBOSE
 theFastCaloAlgo.ClustersName="L2CaloClusters"
 svcMgr.ToolSvc.TrigDataAccess.ApplyOffsetCorrection=False
 
-from AthenaCommon.CFElements import parOR, seqAND, stepSeq
+from AthenaCommon.CFElements import parOR, seqOR, seqAND, stepSeq
 
 from DecisionHandling.DecisionHandlingConf import RoRSeqFilter
 
@@ -325,15 +325,24 @@ else:
 
 # CF construction
 
+
+
 step0 = parOR("step0", [ egammaCaloStep ] )
 step1 = parOR("step1", [ egammaIDStep ] )
 
 from DecisionHandling.DecisionHandlingConf import TriggerSummaryAlg
-summary = TriggerSummaryAlg("TriggerSummaryAlg")
+summary = TriggerSummaryAlg( "TriggerSummaryAlg" )
 summary.L1Decision = "HLTChains"
 summary.FinalDecisions = [ "ElectronL2Decisions", "MuonL2Decisions" ]
 summary.OutputLevel = DEBUG
 
 steps = seqAND("HLTSteps", [ step0, step1, summary ]  )
-topSequence += steps
+
+mon = TriggerSummaryAlg( "TriggerMonitoringAlg" )
+mon.L1Decision = "HLTChains"
+mon.FinalDecisions = [ "ElectronL2Decisions", "MuonL2Decisions", "WhateverElse" ]
+mon.OutputLevel = DEBUG
+
+hltTop = seqOR( "hltTop", [ steps ] )
+topSequence += hltTop