diff --git a/PhysicsAnalysis/D3PDMaker/D3PDMakerConfig/python/D3PDProdFlags.py b/PhysicsAnalysis/D3PDMaker/D3PDMakerConfig/python/D3PDProdFlags.py
index 2d44f76640e08a74e8ba019c582363f1e919823d..54fe344c13615cebf3efb528ad2d2085fa221c75 100644
--- a/PhysicsAnalysis/D3PDMaker/D3PDMakerConfig/python/D3PDProdFlags.py
+++ b/PhysicsAnalysis/D3PDMaker/D3PDMakerConfig/python/D3PDProdFlags.py
@@ -1,6 +1,5 @@
-# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
 
-# $Id$
 #
 # @file D3PDMakerConfig/python/D3PDProdFlags.py
 # @author scott snyder <snyder@bnl.gov>
@@ -97,31 +96,6 @@ jobproperties.D3PDProdFlags.add_JobProperty (WriteMuonD3PD)
 listAllKnownD3PD.append (prodFlags.WriteMuonD3PD)
 
 
-#######################################################
-#
-#                     Trigger D3PDs
-
-class WriteTriggerD3PD (JobProperty):
-    """Produce the Trigger D3PD."""
-    statusOn = True
-    allowedTypes = ['bool']
-    StoredValue = False
-    StreamName = 'StreamNTUP_TRIG'
-    FileName = ''
-    isVirtual = False
-    DPDMakerScript = "TriggerD3PDMaker/TriggerD3PD_prodJobOFragment.py"
-    TreeNames = ['trigger']
-    SubSteps = ['e2d', 'a2d']
-jobproperties.D3PDProdFlags.add_JobProperty (WriteTriggerD3PD)
-listAllKnownD3PD.append (prodFlags.WriteTriggerD3PD)
-
-
-
-#
-#
-#######################################################
-
-
 # Jet tag D3PDs
 _importFlagsFromModule ('JetTagD3PDMaker.JetTagD3PDProdFlags')
 
diff --git a/PhysicsAnalysis/D3PDMaker/TriggerD3PDMaker/share/ESDToTriggerD3PD.py b/PhysicsAnalysis/D3PDMaker/TriggerD3PDMaker/share/ESDToTriggerD3PD.py
deleted file mode 100644
index 5995c28b3fda5a6bd299faaa27064f7d54c71544..0000000000000000000000000000000000000000
--- a/PhysicsAnalysis/D3PDMaker/TriggerD3PDMaker/share/ESDToTriggerD3PD.py
+++ /dev/null
@@ -1,42 +0,0 @@
-# $Id: ESDToTriggerD3PD.py 481363 2012-02-07 16:36:15Z krasznaa $
-#
-# A simple jobOption to produce a Trigger D3PD using vanilla
-# athena.py. Used mostly for (performance) testing.
-
-###################################################################3
-# Define the input file here.
-#
-from AthenaCommon.AthenaCommonFlags import athenaCommonFlags
-athenaCommonFlags.FilesInput= [ "ESD.pool.root" ]
-
-
-###################################################################3
-# Define the output file here.
-#
-if not globals().get('tupleFileOutput'):
-    tupleFileOutput = 'trigger.root'
-    pass
-
-from D3PDMakerConfig.D3PDProdFlags import prodFlags
-prodFlags.WriteTriggerD3PD = True
-prodFlags.WriteTriggerD3PD.FileName = tupleFileOutput
-prodFlags.WriteTriggerD3PD.lock()
-
-
-###################################################################3
-# Define other job options here.
-#
-athenaCommonFlags.EvtMax = 100
-
-
-###################################################################
-# Configure RecExCommon.
-#
-from RecExConfig.RecFlags import rec
-rec.DPDMakerScripts.append( "TriggerD3PDMaker/TriggerD3PD_prodJobOFragment.py" )
-rec.doCBNT.set_Value_and_Lock( False )
-rec.doWriteTAG.set_Value_and_Lock( False )
-rec.doAOD.set_Value_and_Lock( False )
-rec.doWriteAOD.set_Value_and_Lock( False )
-
-include( "RecExCommon/RecExCommon_topOptions.py" )
diff --git a/PhysicsAnalysis/D3PDMaker/TriggerD3PDMaker/share/TriggerD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/TriggerD3PDMaker/share/TriggerD3PD_prodJobOFragment.py
deleted file mode 100644
index 715ca2b9dc2d3790e19ac97fd4b0acf6a029c2d0..0000000000000000000000000000000000000000
--- a/PhysicsAnalysis/D3PDMaker/TriggerD3PDMaker/share/TriggerD3PD_prodJobOFragment.py
+++ /dev/null
@@ -1,283 +0,0 @@
-# $Id: TriggerD3PD_prodJobOFragment.py 593763 2014-04-22 15:03:09Z fpastore $
-#
-# Top jobO fragment setting up the common Trigger D3PD (NTUP_TRIG).
-#
-# @author Attila Krasznahorkay <Attila.Krasznahorkay@cern.ch>
-
-# This jobO should not be included more than once:
-include.block( "TriggerD3PDMaker/TriggerD3PD_prodJobOFragment.py" )
-
-# Common import(s):
-from AthenaCommon.JobProperties import jobproperties
-prodFlags = jobproperties.D3PDProdFlags
-from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName
-from RecExConfig.ObjKeyStore import cfgKeyStore
-from RecExConfig.RecFlags import rec
-from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags
-
-# Set up a logger:
-from AthenaCommon.Logging import logging
-TriggerD3PDStream_msg = logging.getLogger( 'TriggerD3PD_prodJobOFragment' )
-
-# Check if the configuration makes sense:
-if prodFlags.WriteTriggerD3PD.isVirtual:
-    TriggerD3PDStream_msg.error( "The Trigger D3PD stream can't be virtual! " +
-                                 "It's a configuration error!" )
-    raise NameError( "Trigger D3PD set to be a virtual stream" )
-
-# Construct the stream and file names for the Trigger D3PD:
-streamName = prodFlags.WriteTriggerD3PD.StreamName
-fileName   = buildFileName( prodFlags.WriteTriggerD3PD )
-TriggerD3PDStream_msg.info( "Configuring Trigger D3PD with streamName '%s' and " \
-                            "fileName '%s'" % ( streamName, fileName ) )
-
-# Check if we will get trigger information:
-triggerAvailable = ( rec.doTrigger() and ( not rec.noESDTrigger() ) )
-
-# Print a warning if the trigger is not used:
-if not triggerAvailable:
-    TriggerD3PDStream_msg.warning( "Running without trigger information on the input. "
-                                   "Most information will not be available/saved." )
-    pass
-
-# Set global D3PDMaker flags:
-from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags
-D3PDMakerFlags.DoPAU     = False
-D3PDMakerFlags.DoTrigger = True
-#FPP: patch to run D3PD with the merged L2EF (must add new flags in D3PDMakerConfig/python/D3PDMakerFlags.py)
-D3PDMakerFlags.ElectronEFTrigPattern = "EF_[0-9]?e[0-9]+.*|HLT_[0-9]?e[0-9]+.*"
-D3PDMakerFlags.ElectronL2TrigPattern = "L2_[0-9]?e[0-9]+.*"
-D3PDMakerFlags.PhotonEFTrigPattern   = "EF_[0-9]?g[0-9]+.*|HLT_[0-9]?e[0-9]+.*"
-D3PDMakerFlags.PhotonL2TrigPattern   = "L2_[0-9]?g[0-9]+.*"
-D3PDMakerFlags.egammaL1TrigPattern   = ""
-D3PDMakerFlags.MuonEFTrigPattern   = 'EF_2?mu.*|EF_L1ItemStreamer_L1_2?MU.*|HLT_2?mu.*|HLT_L1ItemStreamer_L1_2?MU.*'
-
-from PhotonAnalysisUtils.PhotonAnalysisUtilsFlags import PAUflags
-PAUflags.DoReRunJetFinding = False
-
-# Create the D3PD stream(s):
-from OutputStreamAthenaPool.MultipleStreamManager import MSMgr
-d3pdalg = MSMgr.NewRootStream( streamName, fileName, "trigger" )
-#trigalg = MSMgr.NewRootStream( streamName + ":" + streamName + "TrigDec",
-#                               fileName, "triggerDec" )
-#d3pdalg.Stream.trigDecisionTree = trigalg
-
-##
-## Basic event information:
-##
-from EventCommonD3PDMaker.EventInfoD3PDObject import EventInfoD3PDObject
-d3pdalg += EventInfoD3PDObject( 2 )
-#trigalg += EventInfoD3PDObject( 0, exclude = [ "eventMu", "eventType" ] )
-if triggerAvailable:
-    from TriggerD3PDMaker.BGCodeD3PDObject import BGCodeD3PDObject
-    d3pdalg += BGCodeD3PDObject( 0 )
-    pass
-
-##
-## Add the encoded trigger decision. It has to be done at the beginning,
-## because some of the following functions would add it with a lower
-## detail level.
-##
-if triggerAvailable:
-    from TriggerD3PDMaker.TrigDecisionD3PDObject import TrigDecisionD3PDObject
-    d3pdalg += TrigDecisionD3PDObject( 10 )
-    pass
-
-##
-## Offline e/gamma information:
-##
-oflEgammaIncludes = [ 'ClusterKin' ]
-from egammaD3PDMaker.ElectronD3PDObject import ElectronD3PDObject
-added = False
-for sgkey in D3PDMakerFlags.ElectronSGKey().split( "," ):
-    if cfgKeyStore.isInInput( "ElectronContainer", sgkey ):
-        d3pdalg += ElectronD3PDObject( 1, include=oflEgammaIncludes )
-        added = True
-        break
-    pass
-if not added:
-    TriggerD3PDStream_msg.warning( "Offline electrons not found in input" )
-    pass
-from egammaD3PDMaker.PhotonD3PDObject import PhotonD3PDObject
-added = False
-for sgkey in D3PDMakerFlags.PhotonSGKey().split( "," ):
-    if cfgKeyStore.isInInput( "PhotonContainer", sgkey ):
-        d3pdalg += PhotonD3PDObject( 1, include=oflEgammaIncludes+['Samplings'],
-                                     Samplings_Samplings=[2],
-                                     Samplings_WriteEnergy=False,
-                                     Samplings_WritePhi=False)
-        added = True
-        break
-    pass
-if not added:
-    TriggerD3PDStream_msg.warning( "Offline photons not found in input" )
-    pass
-
-##
-## E/gamma trigger information:
-##
-if triggerAvailable:
-    from TrigEgammaD3PDMaker.TrigEgammaD3PD import TrigEgammaD3PDObjects
-    TrigEgammaD3PDObjects( d3pdalg, level = 1, EmTauROI_include = [ "RoIWord" ],
-                           TrigEMCluster_include = [ "Details", "Details1" ] )
-    pass
-
-##
-## Offline muon information:
-##
-from MuonD3PDMaker.MuonD3PDObject import MuonD3PDObject
-oflMuonIncludes = [ 'EFCBInfoIndex',
-                    'EFMGInfoIndex', 'EFMEInfoIndex', 'L2CBInfoIndex', 'L1InfoIndex' ]
-oflMuonExcludes = [ 'EFCBInfo', 'EFMGInfo', 'EFMEInfo', 'L2CBInfo', 'L1Info',
-                    'TruthInfoIndex' ]
-if not cfgKeyStore.isInInput( "VxContainer",
-                              "VxPrimaryCandidate" ):
-    oflMuonExcludes += [ "ParametersAtPV", "PrimaryTrackDiagonalCovarianceAtPV",
-                         "PrimaryTrackOffDiagonalCovarianceAtPV",
-                         "TrkInfoInDet" ]
-    pass
-if cfgKeyStore.isInInput( "Analysis::MuonContainer",
-                          "StacoMuonCollection" ):
-    d3pdalg += MuonD3PDObject( 1, sgkey='StacoMuonCollection', prefix='mu_staco_',
-                               include=oflMuonIncludes, exclude=oflMuonExcludes )
-else:
-    TriggerD3PDStream_msg.warning( "Offline muons not found in input" )
-    pass
-
-##
-## Muon trigger information:
-##
-if triggerAvailable:
-    from TrigMuonD3PDMaker.TrigMuonD3PD import TrigMuonD3PDObjects
-    TrigMuonD3PDObjects( d3pdalg, level = 1, addNaviInfo = True,
-                         addConfigInfo = False )
-    pass
-
-from TriggerD3PDMaker.MuCTPID3PDObject import MuCTPID3PDObject
-d3pdalg += MuCTPID3PDObject( 1 )
-
-##
-## Offline tau information:
-##
-from TauD3PDMaker.TauD3PDObject import TauD3PDObject
-if cfgKeyStore.isInInput( "Analysis::TauJetContainer",
-                          D3PDMakerFlags.TauSGKey() ):
-    d3pdalg += TauD3PDObject( 1 )
-else:
-    TriggerD3PDStream_msg.warning( "Offline taus not found in input" )
-    pass
-
-##
-## Tau trigger information:
-##
-if triggerAvailable:
-    from TrigTauD3PDMaker.TrigTauD3PD import TrigTauD3PDObjects
-    TrigTauD3PDObjects( d3pdalg, level = 1, addNavInfo = True,
-                        addConfigInfo = False )
-    pass
-
-##
-## Offline jet information with b-tag info:
-##
-from JetTagD3PDMaker.JetTagD3PDMakerFlags import JetTagD3PDFlags
-from JetTagD3PDMaker.JetTagD3PDMakerFlags import JetTagD3PDKeys
-JetTagD3PDFlags.Taggers = [ "IP1D","IP2D","IP3D",
-                            "SV0","SV1", "SV2" ]
-jet_includes = [ JetTagD3PDKeys.BTagWeightsBlockName(),
-                 JetTagD3PDKeys.SVInfoPlusBlockName(),
-                 JetTagD3PDKeys.SV0InfoPlusBlockName(),
-                 'JetVertexFraction',
-                 'JVtx'
-                 ]
-
-from JetD3PDMaker.JetD3PDObject import getJetD3PDObject
-if cfgKeyStore.isInInput( "JetCollection",
-                          "AntiKt4TopoEMJets" ):
-    JetD3PDObject = getJetD3PDObject()
-    d3pdalg += JetD3PDObject( 1, sgkey = "AntiKt4TopoEMJets",
-                              prefix = "jet_AntiKt4TopoEMJets_",
-                              include = jet_includes,
-                              JetTag_SoftMuonChi2InfoMuonAssoc_target = "mu_staco_" )
-else:
-    TriggerD3PDStream_msg.warning( "Offline jets not found in input" )
-    pass
-
-##
-## Jet trigger information:
-##
-if triggerAvailable:
-    from TrigJetD3PDMaker.TrigJetD3PD import TrigJetD3PDObjects
-    TrigJetD3PDObjects( d3pdalg, level = 1, addNaviInfo = True,
-                        addConfigInfo = False )
-    pass
-
-##
-## B-Jet trigger information:
-##
-if triggerAvailable:
-    from TrigBJetD3PDMaker.TrigBJetD3PD import TrigBJetD3PDObjects
-    TrigBJetD3PDObjects( d3pdalg, level = 1, addNaviInfo = True,
-                         addConfigInfo = False )
-    pass
-
-##
-## Offline MET information:
-##
-from MissingETD3PDMaker.MissingETD3PDObject import MissingETD3PDObject
-d3pdalg += MissingETD3PDObject( 3, allowMissing = True )
-
-##
-## MET trigger information:
-##
-if triggerAvailable:
-    from TrigMissingETD3PDMaker.TrigMETD3PD import TrigMETD3PDObjects
-    TrigMETD3PDObjects( d3pdalg )
-    pass
-
-##
-## Additional offline information:
-##
-from TrackD3PDMaker.TrackD3PDMakerFlags import TrackD3PDFlags
-TrackD3PDFlags.vertexPositionLevelOfDetails = 1
-TrackD3PDFlags.storeVertexTrackIndexAssociation = False
-TrackD3PDFlags.storeVertexFitQuality = True
-TrackD3PDFlags.storeVertexKinematics = True
-
-from TrackD3PDMaker.xAODVertexD3PDObject import PrimaryxAODVertexD3PDObject
-if cfgKeyStore.isInInput( "VxContainer",
-                          "VxPrimaryCandidate",
-                          "PrimaryVertices"):
-    d3pdalg += PrimaryxAODVertexD3PDObject( 0, prefix = "vxp_" )
-else:
-    TriggerD3PDStream_msg.warning( "Offline primary vertices not found in input" )
-    pass
-
-##
-## Add the different sorts of metadata:
-##
-from EventCommonD3PDMaker.LBMetadataConfig import LBMetadataConfig
-d3pdalg.MetadataTools += [ LBMetadataConfig() ]
-if triggerAvailable:
-    from TriggerD3PDMaker.TrigConfMetadata import addTrigConfMetadata
-    addTrigConfMetadata( d3pdalg )
-    pass
-from TriggerD3PDMaker.BunchStructureMetadata import addBunchStructureMetadata
-addBunchStructureMetadata( d3pdalg )
-
-##
-## Turn on all the simple trigger decision branches:
-##
-bitFiller = getattr( d3pdalg, "TriggerBitsFiller", None )
-if bitFiller:
-    bitFiller.TriggerBitsFiller_TriggerBits.Triggers = [ "L1_.*", "L2_.*", "EF_.*", "HLT_.*" ]
-    pass
-
-##
-## Silence the trigger navigation warnings about missing containers:
-##
-from AthenaCommon.AppMgr import ToolSvc
-if not hasattr( ToolSvc, "TrigDecisionTool" ):
-    from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool
-    ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" )
-    pass
-ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR
diff --git a/Reconstruction/RecJobTransforms/share/skeleton.ESDtoAOD_tf.py b/Reconstruction/RecJobTransforms/share/skeleton.ESDtoAOD_tf.py
index e2f339cc77c45283f4c724b286516d208ae2a06f..cf970032d376eef544aecc626a646b6547a57a5b 100644
--- a/Reconstruction/RecJobTransforms/share/skeleton.ESDtoAOD_tf.py
+++ b/Reconstruction/RecJobTransforms/share/skeleton.ESDtoAOD_tf.py
@@ -6,7 +6,6 @@ from __future__ import print_function
 #
 # New version for revamped job transforms
 #
-# $Id: skeleton.ESDtoAOD_tf.py 700697 2015-10-15 09:48:11Z lerrenst $
 #
 #==============================================================
 
@@ -117,13 +116,6 @@ if hasattr(runArgs,"outputNTUP_MINBIASFile"):
     include( prodFlags.WriteMinBiasD3PD.DPDMakerScript )
     pass
 
-if hasattr(runArgs,"outputNTUP_TRIGFile"):
-    from D3PDMakerConfig.D3PDProdFlags import prodFlags
-    prodFlags.WriteTriggerD3PD.FileName = runArgs.outputNTUP_TRIGFile
-    prodFlags.WriteTriggerD3PD.set_Value_and_Lock( True )
-    include( prodFlags.WriteTriggerD3PD.DPDMakerScript )
-    pass
-
 if hasattr(runArgs,"outputDESDM_BEAMSPOTFile"):
     #needs to be used with: preInclude=InDetBeamSpotFinder/BeamSpotRecoPreInclude_standard.py
     from InDetBeamSpotFinder import BeamSpotDPDFlags