diff --git a/Trigger/TrigTools/TrigInDetConfig/python/ConfigSettings.py b/Trigger/TrigTools/TrigInDetConfig/python/ConfigSettings.py
index f04f5f3328831c2d306795bec2ceda0e972f8ddc..468b35ef7a542f3b5f48a116df8cb5bbf330dc67 100644
--- a/Trigger/TrigTools/TrigInDetConfig/python/ConfigSettings.py
+++ b/Trigger/TrigTools/TrigInDetConfig/python/ConfigSettings.py
@@ -502,6 +502,8 @@ class _GlobalSettings() :
       self._doRecord  = False #Allow recording of track collections
       self._isLRT     = False
       self._adaptiveVertex = False
+      self._vertex    = None
+
 
    @property
    def FT(self):
@@ -531,6 +533,10 @@ class _GlobalSettings() :
    def adaptiveVertex(self):
        return self._adaptiveVertex
 
+   @property
+   def vertex(self):
+       return self._vertex
+
 
 
 class _Settings_electron( _GlobalSettings ):
@@ -597,7 +603,9 @@ class _Settings_tauTau( _GlobalSettings ):
       #There should not be a need for tauCore PT!
       self._configPT =   _PrecisionTracking( signatureType = 'tau', nameSuffix = 'Tau' )
       self._doRecord = True #Allow recording of track collections
-
+      self._vertex   = "HLT_IDVertex_Tau"
+      self._adaptiveVertexing = True
+      
 class _Settings_tauCore( _GlobalSettings ):
    def __init__( self ):
       _GlobalSettings.__init__(self)
@@ -616,6 +624,8 @@ class _Settings_tauIso( _GlobalSettings ):
       self._configFT = _FastTracking(      signatureType = 'tauIso', nameSuffix = 'TauIso' )
       self._configPT = _PrecisionTracking( signatureType = 'tauIso', nameSuffix = 'Tau' ) #Final collection is being renamed to just tau apparently...
       self._doRecord = True #Allow recording of track collections
+      self._vertex  = "HLT_IDVertex_Tau"
+      self._adaptiveVertex = True
 
 #This might be redundant but lets keep them for the time being...
 class _Settings_tauIsoBDT( _GlobalSettings ):
@@ -626,6 +636,9 @@ class _Settings_tauIsoBDT( _GlobalSettings ):
       self._configFT = _FastTracking(      signatureType = 'tauIso', nameSuffix = 'TauIso' ) #
       self._configPT = _PrecisionTracking( signatureType = 'tauIso',    nameSuffix = 'Tau' ) #Final collection is being renamed to just tau apparently...
       self._doRecord = False #FIXME: Do I need to record these?
+      self._vertex   = "HLT_IDVertex_Tau"
+      self._adaptiveVertexing = True
+
 
 class _Settings_bjet( _GlobalSettings ):
    def __init__( self ):
@@ -644,6 +657,7 @@ class _Settings_jet( _GlobalSettings ):
       self._configFT = _FastTracking(      signatureType = 'fullScan',  nameSuffix = 'FS' ) #
       self._configPT = _PrecisionTracking( signatureType = 'fullScan',  nameSuffix = 'FS' ) #Final collection is being renamed to just tau apparently...
       self._doRecord = True
+      self._vertex   = "HLT_IDVertex_FS"
       self._adaptiveVertex = False
 
 class _Settings_minBias( _GlobalSettings ):
diff --git a/Trigger/TrigTools/TrigInDetConfig/python/InDetPT.py b/Trigger/TrigTools/TrigInDetConfig/python/InDetPT.py
index 698ea2e8e8d55ee4fc9f43bfc354bdf15ff4038f..3d289dbc5005dead242873969053240ec07f0ac9 100644
--- a/Trigger/TrigTools/TrigInDetConfig/python/InDetPT.py
+++ b/Trigger/TrigTools/TrigInDetConfig/python/InDetPT.py
@@ -30,7 +30,6 @@ def makeInDetPrecisionTracking( config = None,
   #Add suffix to the algorithms
   signature =  "_{}".format( config.name )
 
-
   #Name settings for output Tracks/TrackParticles
   outTrkTracks        = config.PT.trkTracksPT() #Final output Track collection
   outTrackParticles   = config.PT.tracksPT( doRecord = config.isRecordable ) #Final output xAOD::TrackParticle collection
@@ -101,6 +100,8 @@ def makeInDetPrecisionTracking( config = None,
   #Loading the alg to the sequence
   ptAlgs.extend( ambSolvingStageAlgs )
 
+  TRT_RDO_Key = "TRT_RDOs"
+
   from InDetTrigRecExample.InDetTrigConfigRecLoadTools import  InDetTrigExtrapolator
   #TODO:implement builders and getters for TRT (WIP)
   if doTRT:
@@ -109,7 +110,6 @@ def makeInDetPrecisionTracking( config = None,
             #                        TRT data preparation
             from AthenaCommon.GlobalFlags import globalflags
             #Only add raw data decoders if we're running over raw data
-            TRT_RDO_Key = "TRT_RDOs"
             if globalflags.InputFormat.is_bytestream():
                 TRT_RDO_Key = TrigTRTKeys.RDOs
                 from TRT_RawDataByteStreamCnv.TRT_RawDataByteStreamCnvConf import TRT_RodDecoder
@@ -122,7 +122,6 @@ def makeInDetPrecisionTracking( config = None,
                                                                       Decoder = InDetTRTRodDecoder )
 
                 ToolSvc += InDetTRTRawDataProviderTool
-             
 
 
 
@@ -139,8 +138,6 @@ def makeInDetPrecisionTracking( config = None,
                 InDetTRTRawDataProvider.RoIs = rois
 
                 ptAlgs.append( InDetTRTRawDataProvider )
-             
-             
 
             #-----------------------------------------------------------------------------
             #                        TRT extension
diff --git a/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetPriVtxConfig.py b/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetPriVtxConfig.py
index 85c579648f88d3c6dcf7180487797ecf41fce678..a8f4b51852a74f3a2a724f29faf08c35adeb7053 100644
--- a/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetPriVtxConfig.py
+++ b/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetPriVtxConfig.py
@@ -26,7 +26,7 @@ def makeVertices( whichSignature, inputTrackCollection, outputVtxCollection, con
     adaptiveVertexing = getInDetTrigConfig( whichSignature ).adaptiveVertex 
 
     return vertexFinder_builder( signature         = whichSignature, 
-                                 inputTracks       = config.FT.tracksFTF(),
+                                 inputTracks       = inputTrackCollection,
                                  outputVertices    = outputVtxCollection,
                                  adaptiveVertexing = adaptiveVertexing )
 
@@ -64,7 +64,8 @@ def vertexFinder_builder( signature, inputTracks, outputVertices, adaptiveVertex
 
     vertexFinder = InDet__InDetPriVxFinder( name                        = "InDetTrigPriVxFinder" + signature,
                                             VertexFinderTool            = vertexFinderTool,
-                                            TracksName                  = recordable(inputTracks), 
+                                            # TracksName                = recordable(inputTracks), 
+                                            TracksName                  = inputTracks, 
                                             VxCandidatesOutputName      = recordable(outputVertices), 
                                             VertexCollectionSortingTool = vertexSortingTool,
                                             doVertexSorting             = True,
diff --git a/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py b/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py
index 587f1c42d489454dcfadc425872ee1e877e1ea05..b8f374c8283809853a5fdde909834b770c656d4f 100644
--- a/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py
+++ b/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py
@@ -328,6 +328,9 @@ TriggerHLTListRun3 = [
     ('xAOD::TrackParticleContainer#HLT_IDTrack_Tau_IDTrig',                 'BS ESD AODFULL', 'Tau', 'inViews:TAUFTFIdViews,TAUPrecIsoViews'),
     ('xAOD::TrackParticleAuxContainer#HLT_IDTrack_Tau_IDTrigAux.',          'BS ESD AODFULL', 'Tau'),
 
+    ('xAOD::VertexContainer#HLT_IDVertex_Tau',                  'BS ESD AODFULL', 'Tau', 'inViews:TAUFTFIdViews,TAUPrecIsoViews'),
+    ('xAOD::VertexAuxContainer#HLT_IDVertex_TauAux.',           'BS ESD AODFULL', 'Tau'),
+
     ('TrigRoiDescriptorCollection#HLT_Roi_Tau',              'BS ESD AODFULL AODSLIM',  'Steer'),
     ('TrigRoiDescriptorCollection#HLT_Roi_TauCore',             'BS ESD AODFULL AODSLIM',  'Steer'),
     ('TrigRoiDescriptorCollection#HLT_Roi_TauIso',             'BS ESD AODFULL AODSLIM',  'Steer'),
diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Bjet/BjetSequenceSetup.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Bjet/BjetSequenceSetup.py
index e530ebad4636f0e7c888029d5c3b157b8b6cf458..508185c2711153582a797c93d54df3610a6f7a9e 100644
--- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Bjet/BjetSequenceSetup.py
+++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Bjet/BjetSequenceSetup.py
@@ -25,7 +25,12 @@ def getBJetSequence():
 # ====================================================================================================  
 
 def bJetStep2Sequence():
-    prmVtxKey = "HLT_IDVertex_FS"
+
+    from TrigInDetConfig.ConfigSettings import getInDetTrigConfig
+    
+    config=getInDetTrigConfig('jet')
+    #    prmVtxKey = "HLT_IDVertex_FS"
+    prmVtxKey = config.vertex
     outputRoIName = "HLT_Roi_Bjet"
 
     from ViewAlgs.ViewAlgsConf import EventViewCreatorAlgorithm
diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetRecoConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetRecoConfiguration.py
index aa621a6db495183a0ed75106cf1d4b299d6fd318..82c1943696198fff3b2feb9ba5eef9068637da6c 100644
--- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetRecoConfiguration.py
+++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetRecoConfiguration.py
@@ -227,6 +227,10 @@ def getFilterCut(recoAlg):
 # the calibration config helper
 def defineCalibMods(jetRecoDict,dataSource,rhoKey="auto"):
 
+    from TrigInDetConfig.ConfigSettings import getInDetTrigConfig
+
+    config = getInDetTrigConfig( 'jet' )
+
     # Minimum modifier set for calibration w/o track GSC
     # Should eventually build in more mods, depend on track info etc
     jetalg = jetRecoDict["recoAlg"]
@@ -255,7 +259,8 @@ def defineCalibMods(jetRecoDict,dataSource,rhoKey="auto"):
             gscDepth = "EM3"
             if "gsc" in jetRecoDict["jetCalib"]:
                 gscDepth = "trackWIDTH"
-                pvname = "HLT_IDVertex_FS"
+                # pvname = "HLT_IDVertex_FS"
+                pvname = config.vertex
 
         elif jetRecoDict["constitType"] == "pf":
             gscDepth = "auto"
@@ -269,7 +274,8 @@ def defineCalibMods(jetRecoDict,dataSource,rhoKey="auto"):
                   ("a4","subjesgscIS"): ("TrigLS2","JetArea_EtaJES_GSC"),             # w/o pu residual  + calo+trk GSC
                   ("a4","subresjesgscIS"): ("TrigLS2","JetArea_Residual_EtaJES_GSC"), # pu residual + calo+trk GSC
                   }[(jetRecoDict["recoAlg"],jetRecoDict["jetCalib"])]
-            pvname = "HLT_IDVertex_FS"
+            # pvname = "HLT_IDVertex_FS"
+            pvname = config.vertex
 
         if jetRecoDict["jetCalib"].endswith("IS") and (dataSource=="data"):
             calibSeq += "_Insitu"
diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetTrackingConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetTrackingConfig.py
index 258c418acd9b036648ec0e19ecb361d19721121c..4aee716c433b804f2fdb939440fbb9e1d128a9dc 100644
--- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetTrackingConfig.py
+++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/JetTrackingConfig.py
@@ -24,8 +24,11 @@ def JetTrackingSequence(dummyFlags,trkopt,RoIs):
         viewAlgs = makeInDetAlgsNoView( config = IDTrigConfig, rois=RoIs)
         jetTrkSeq += viewAlgs
         tracksname =  IDTrigConfig.FT.tracksFTF( doRecord = IDTrigConfig.isRecordable ) 
-        verticesname = recordable("HLT_IDVertex_FS")
+        if IDTrigConfig.vertex is not None: 
+            verticesname = recordable(IDTrigConfig.vertex)
 
+    # hmmm, why is all this vertex stuff being set up if the vertex collection has not been 
+    # set ? This should be fixed
     from TrigInDetConfig.TrigInDetPriVtxConfig import makeVertices
     vtxAlgs = makeVertices( "jet", tracksname, verticesname, IDTrigConfig )
     prmVtx = vtxAlgs[-1]
diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py
index fa06e9188cb3cc24d3f8d588b011b9fdd4fd1b65..090b1103cf8efceb0d29c79be8f29484f0d1b751 100644
--- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py
+++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py
@@ -303,7 +303,6 @@ def precTrackSequence( RoIs , name):
     from TrigInDetConfig.ConfigSettings import getInDetTrigConfig
     IDTrigConfig = getInDetTrigConfig( signatureNameID )
 
-
     ViewVerifyTrk = CfgMgr.AthViews__ViewDataVerifier("tauViewDataVerifier_"+signatureName)
     ViewVerifyTrk.DataObjects = [( 'xAOD::TrackParticleContainer' , 'StoreGateSvc+%s' % IDTrigConfig.FT.tracksFTF() ),
                                  ( 'SG::AuxElement' , 'StoreGateSvc+EventInfo.averageInteractionsPerCrossing' ),
@@ -334,12 +333,20 @@ def precTrackSequence( RoIs , name):
     #When run in a different view than FTF some data dependencies needs to be loaded through verifier
     #Pass verifier as an argument and it will automatically append necessary DataObjects@NOTE: Don't provide any verifier if loaded in the same view as FTF
     PTTracks, PTTrackParticles, PTAlgs = makeInDetPrecisionTracking( config = IDTrigConfig, verifier = ViewVerifyTrk, rois = RoIs )
-    precTrackSequence = parOR(name, [ViewVerifyTrk] + PTAlgs  )
+
+    from TrigInDetConfig.TrigInDetPriVtxConfig import makeVertices
+    vtxAlg = makeVertices( whichSignature       = signatureName, 
+                           inputTrackCollection = IDTrigConfig.PT.tracksPT(), 
+                           outputVtxCollection  = IDTrigConfig.vertex, 
+                           config               = IDTrigConfig, 
+                           adaptiveVertexing    = True )
+
+    trackSequence = parOR(name, [ViewVerifyTrk] + PTAlgs + vtxAlg )
 
     #Get last tracks from the list as input for other alg       
     sequenceOut = PTTrackParticles[-1]
 
-    return precTrackSequence, sequenceOut
+    return trackSequence, sequenceOut
 
 def tauFTFSequence( RoIs, name ):