diff --git a/PhysicsAnalysis/TauID/TauHistUtils/TauHistUtils/RecoTauPlots.h b/PhysicsAnalysis/TauID/TauHistUtils/TauHistUtils/RecoTauPlots.h
index 514df2351995c110928547dea7e7df3d06f23571..261e18e73bc3e14b9c8c27eb22328717ab74b9cb 100644
--- a/PhysicsAnalysis/TauID/TauHistUtils/TauHistUtils/RecoTauPlots.h
+++ b/PhysicsAnalysis/TauID/TauHistUtils/TauHistUtils/RecoTauPlots.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef TAUHISTUTILS_RECOTAUPLOTS_H
@@ -23,11 +23,6 @@ class RecoTauPlots: public PlotBase {
     Tau::ParamPlots m_oParamPlots;
 
     //Here I try to include CellBased substructure variables, from the Particle FLow Object (PFO), begining with basic charged and neutral PFO 4-vector.
-    TH1* m_cellBased_charPFO_Pt;
-    TH1* m_cellBased_charPFO_Eta;
-    TH1* m_cellBased_charPFO_Phi;
-    TH1* m_cellBased_charPFO_E;
-
     TH1* m_cellBased_neuPFO_Pt;
     TH1* m_cellBased_neuPFO_Eta;
     TH1* m_cellBased_neuPFO_Phi;
diff --git a/PhysicsAnalysis/TauID/TauHistUtils/src/Migration.cxx b/PhysicsAnalysis/TauID/TauHistUtils/src/Migration.cxx
index 8aff22a1adf797dfd1b71af1c111653708de03d0..339915de29da2e5c9a0f4c421a14655a825a7c40 100644
--- a/PhysicsAnalysis/TauID/TauHistUtils/src/Migration.cxx
+++ b/PhysicsAnalysis/TauID/TauHistUtils/src/Migration.cxx
@@ -1,196 +1,186 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "TauHistUtils/Migration.h"
 
 namespace Tau{
 
-Migration::Migration(PlotBase* pParent, std::string sDir, std::string sTauJetContainerName):
-   PlotBase(pParent, sDir),
-   m_migration_panTau(nullptr),
-   m_migration_panTauProto(nullptr),
-   m_migration_cellBased(nullptr),
-   m_sTauJetContainerName(sTauJetContainerName)
-{
-}
+  Migration::Migration(PlotBase* pParent, std::string sDir, std::string sTauJetContainerName):
+    PlotBase(pParent, sDir),
+    m_migration_panTau(nullptr),
+    m_migration_panTauProto(nullptr),
+    m_migration_cellBased(nullptr),
+    m_sTauJetContainerName(sTauJetContainerName)
+  {
+  }
 
-Migration::~Migration()
-{
-}
+  Migration::~Migration()
+  {
+  }
 
-void Migration::initializePlots()
-{
-   m_migration_panTau = Book1D("panTau_migration",m_sTauJetContainerName + " panTau migration",DECAYSIZE,0,DECAYSIZE);
-   m_migration_panTauProto = Book1D("panTauProto_migration",m_sTauJetContainerName + " panTau proto migration",DECAYSIZE,0,DECAYSIZE);
-   m_migration_cellBased = Book1D("cellBased_migration",m_sTauJetContainerName + " cellBased migration",DECAYSIZE,0,DECAYSIZE);
-   m_migration_panTau->GetXaxis()->SetLabelSize(0.05);
-   m_migration_panTauProto->GetXaxis()->SetLabelSize(0.05);
-   m_migration_cellBased->GetXaxis()->SetLabelSize(0.05);
-   for(int i=1; i<= DECAYSIZE;i++){
+  void Migration::initializePlots()
+  {
+    m_migration_panTau = Book1D("panTau_migration",m_sTauJetContainerName + " panTau migration",DECAYSIZE,0,DECAYSIZE);
+    m_migration_panTauProto = Book1D("panTauProto_migration",m_sTauJetContainerName + " panTau proto migration",DECAYSIZE,0,DECAYSIZE);
+    m_migration_cellBased = Book1D("cellBased_migration",m_sTauJetContainerName + " cellBased migration",DECAYSIZE,0,DECAYSIZE);
+    m_migration_panTau->GetXaxis()->SetLabelSize(0.05);
+    m_migration_panTauProto->GetXaxis()->SetLabelSize(0.05);
+    m_migration_cellBased->GetXaxis()->SetLabelSize(0.05);
+    for(int i=1; i<= DECAYSIZE;i++){
       m_migration_panTauProto->GetXaxis()->SetBinLabel(i,m_lable[i-1]);
       m_migration_panTau->GetXaxis()->SetBinLabel(i,m_lable[i-1]);
       m_migration_cellBased->GetXaxis()->SetBinLabel(i,m_lable[i-1]);
-   }
-}
+    }
+  }
 
 
-void Migration::fill(
-   const xAOD::TauJet& thisTau,
-   xAOD::TauJetParameters::DecayMode trueMode)
-{
+  void Migration::fill(const xAOD::TauJet& thisTau,
+		       xAOD::TauJetParameters::DecayMode trueMode)
+  {
 
-   int isPanTauCandidate = 0;
-   bool foundDetail = thisTau.panTauDetail(
-      xAOD::TauJetParameters::PanTauDetails::PanTau_isPanTauCandidate,
-      isPanTauCandidate);
-   if ( !foundDetail || !isPanTauCandidate ) return;
+    int isPanTauCandidate = 0;
+    bool foundDetail = thisTau.panTauDetail(xAOD::TauJetParameters::PanTauDetails::PanTau_isPanTauCandidate, isPanTauCandidate);
+    if ( !foundDetail || !isPanTauCandidate ) return;
 
-   // panTau
-   int recMode = xAOD::TauJetParameters::DecayMode::Mode_Error;
-   foundDetail = thisTau.panTauDetail(
-      xAOD::TauJetParameters::PanTauDetails::PanTau_DecayMode,
-      recMode);
-   if ( foundDetail ) decayModeFill(trueMode, recMode, m_migration_panTau);
+    // panTau
+    int recMode = xAOD::TauJetParameters::DecayMode::Mode_Error;
+    foundDetail = thisTau.panTauDetail(xAOD::TauJetParameters::PanTauDetails::PanTau_DecayMode, recMode);
+    if ( foundDetail ) decayModeFill(trueMode, recMode, m_migration_panTau);
 
-   // panTauProto
-   recMode = xAOD::TauJetParameters::DecayMode::Mode_Error;
-   foundDetail = thisTau.panTauDetail(
-      xAOD::TauJetParameters::PanTauDetails::PanTau_DecayModeProto,
-      recMode);
-   if ( foundDetail ) {
+    // panTauProto
+    recMode = xAOD::TauJetParameters::DecayMode::Mode_Error;
+    foundDetail = thisTau.panTauDetail(xAOD::TauJetParameters::PanTauDetails::PanTau_DecayModeProto, recMode);
+    if ( foundDetail ) {
       decayModeFill(trueMode, recMode, m_migration_panTauProto);
-   }
+    }
+
+    int cellP = thisTau.nTracks();
 
-   // Cellbased
-   // Get number of charged pions
-   std::vector<ElementLink<xAOD::PFOContainer>> cellBased_chargedPFO
-      = thisTau.protoChargedPFOLinks();
-   int cellP = cellBased_chargedPFO.size();
-   // Get number of neutral pions
-   int nPi0_tau = 0;
-   std::vector<ElementLink<xAOD::PFOContainer>> cellBased_neutralPFO
+    // Get number of neutral pions
+    int nPi0_tau = 0;
+    std::vector<ElementLink<xAOD::PFOContainer>> cellBased_neutralPFO
       = thisTau.protoNeutralPFOLinks();
-   std::vector<ElementLink<xAOD::PFOContainer>>::iterator
+    std::vector<ElementLink<xAOD::PFOContainer>>::iterator
       first_cellBased_neutralPFO = cellBased_neutralPFO.begin();
-   std::vector<ElementLink<xAOD::PFOContainer>>::iterator
+    std::vector<ElementLink<xAOD::PFOContainer>>::iterator
       last_cellBased_neutralPFO = cellBased_neutralPFO.end();
-   for ( ; first_cellBased_neutralPFO != last_cellBased_neutralPFO;
-	 ++first_cellBased_neutralPFO ) {
+    for ( ; first_cellBased_neutralPFO != last_cellBased_neutralPFO;
+	  ++first_cellBased_neutralPFO ) {
       ElementLink<xAOD::PFOContainer> thisLink = *first_cellBased_neutralPFO;
       const xAOD::PFO* thisPFO = *thisLink;
       int myNPi0Proto = 0;
       if ( thisPFO->attribute(xAOD::PFODetails::nPi0Proto, myNPi0Proto) ) {
-	 nPi0_tau+=myNPi0Proto;
+	nPi0_tau+=myNPi0Proto;
       }
-   }
-   decayModeFill(trueMode, cellP, nPi0_tau, m_migration_cellBased);
-}
+    }
+    decayModeFill(trueMode, cellP, nPi0_tau, m_migration_cellBased);
+  }
 
-void Migration::decayModeFill(int trueMode, int recMode, TH1 *histo)
-{
-   if ( recMode >= xAOD::TauJetParameters::DecayMode::Mode_Other
-	|| trueMode >= xAOD::TauJetParameters::DecayMode::Mode_Other ) return;
+  void Migration::decayModeFill(int trueMode, int recMode, TH1 *histo)
+  {
+    if ( recMode >= xAOD::TauJetParameters::DecayMode::Mode_Other
+	 || trueMode >= xAOD::TauJetParameters::DecayMode::Mode_Other ) return;
    
-   switch ( trueMode ) {
-   case xAOD::TauJetParameters::DecayMode::Mode_1p0n:
+    switch ( trueMode ) {
+    case xAOD::TauJetParameters::DecayMode::Mode_1p0n:
       switch ( recMode ) {
       case xAOD::TauJetParameters::DecayMode::Mode_1p0n:
-	 histo->Fill(t10r10 + 0.5);
-	 break;
+	histo->Fill(t10r10 + 0.5);
+	break;
       case xAOD::TauJetParameters::DecayMode::Mode_1p1n:
-	 histo->Fill(t10r11 + 0.5);
-	 break;
+	histo->Fill(t10r11 + 0.5);
+	break;
       case xAOD::TauJetParameters::DecayMode::Mode_1pXn:
-	 histo->Fill(t10r1x + 0.5);
-	 break;
+	histo->Fill(t10r1x + 0.5);
+	break;
       default:
-	 histo->Fill(t1r3 + 0.5);
-	 break;
+	histo->Fill(t1r3 + 0.5);
+	break;
       }
       break;
-   case xAOD::TauJetParameters::DecayMode::Mode_1p1n:
+    case xAOD::TauJetParameters::DecayMode::Mode_1p1n:
       switch ( recMode ) {
       case xAOD::TauJetParameters::DecayMode::Mode_1p0n:
-	 histo->Fill(t11r10 + 0.5);
-	 break;
+	histo->Fill(t11r10 + 0.5);
+	break;
       case xAOD::TauJetParameters::DecayMode::Mode_1p1n:
-	 histo->Fill(t11r11 + 0.5);
-	 break;
+	histo->Fill(t11r11 + 0.5);
+	break;
       case xAOD::TauJetParameters::DecayMode::Mode_1pXn:
-	 histo->Fill(t11r1x + 0.5);
-	 break;
+	histo->Fill(t11r1x + 0.5);
+	break;
       default:
-	 histo->Fill(t1r3 + 0.5);
-	 break;
+	histo->Fill(t1r3 + 0.5);
+	break;
       }
       break;
-   case xAOD::TauJetParameters::DecayMode::Mode_1pXn:
+    case xAOD::TauJetParameters::DecayMode::Mode_1pXn:
       switch ( recMode ) {
       case xAOD::TauJetParameters::DecayMode::Mode_1p0n:
-	 histo->Fill(t1xr10 + 0.5);
-	 break;
+	histo->Fill(t1xr10 + 0.5);
+	break;
       case xAOD::TauJetParameters::DecayMode::Mode_1p1n:
-	 histo->Fill(t1xr11 + 0.5);
-	 break;
+	histo->Fill(t1xr11 + 0.5);
+	break;
       case xAOD::TauJetParameters::DecayMode::Mode_1pXn:
-	 histo->Fill(t1xr1x + 0.5);
-	 break;
+	histo->Fill(t1xr1x + 0.5);
+	break;
       default:
-	 histo->Fill(t1r3 + 0.5);
-	 break;
+	histo->Fill(t1r3 + 0.5);
+	break;
       }
       break;
-   case xAOD::TauJetParameters::DecayMode::Mode_3p0n:
+    case xAOD::TauJetParameters::DecayMode::Mode_3p0n:
       switch ( recMode ) {
       case xAOD::TauJetParameters::DecayMode::Mode_3p0n:
-	 histo->Fill(t30r30 + 0.5);
-	 break;
+	histo->Fill(t30r30 + 0.5);
+	break;
       case xAOD::TauJetParameters::DecayMode::Mode_3pXn:
-	 histo->Fill(t30r3x + 0.5);
-	 break;
+	histo->Fill(t30r3x + 0.5);
+	break;
       default:
-	 histo->Fill(t3r1 + 0.5);
-	 break;
+	histo->Fill(t3r1 + 0.5);
+	break;
       }
       break;
-   case xAOD::TauJetParameters::DecayMode::Mode_3pXn:
+    case xAOD::TauJetParameters::DecayMode::Mode_3pXn:
       switch ( recMode ) {
       case xAOD::TauJetParameters::DecayMode::Mode_3p0n:
-	 histo->Fill(t3xr30 + 0.5);
-	 break;
+	histo->Fill(t3xr30 + 0.5);
+	break;
       case xAOD::TauJetParameters::DecayMode::Mode_3pXn:
-	 histo->Fill(t3xr3x + 0.5);
-	 break;
+	histo->Fill(t3xr3x + 0.5);
+	break;
       default:
-	 histo->Fill(t3r1 + 0.5);
-	 break;
+	histo->Fill(t3r1 + 0.5);
+	break;
       }
       break;
-   }
-   return;
-}
+    }
+    return;
+  }
 
-void Migration::decayModeFill(int trueMode, int recP, int recN, TH1 *histo)
-{
-   xAOD::TauJetParameters::DecayMode recMode
+  void Migration::decayModeFill(int trueMode, int recP, int recN, TH1 *histo)
+  {
+    xAOD::TauJetParameters::DecayMode recMode
       = xAOD::TauJetParameters::DecayMode::Mode_Error;
-   if ( recP == 1 && recN == 0 ) {
+    if ( recP == 1 && recN == 0 ) {
       recMode = xAOD::TauJetParameters::DecayMode::Mode_1p0n;
-   }
-   if ( recP == 1 && recN == 1 ) {
+    }
+    if ( recP == 1 && recN == 1 ) {
       recMode = xAOD::TauJetParameters::DecayMode::Mode_1p1n;
-   }
-   if ( recP == 1 && recN > 1 ) {
+    }
+    if ( recP == 1 && recN > 1 ) {
       recMode = xAOD::TauJetParameters::DecayMode::Mode_1pXn;
-   }
-   if ( recP == 3 && recN == 0 ) {
+    }
+    if ( recP == 3 && recN == 0 ) {
       recMode = xAOD::TauJetParameters::DecayMode::Mode_3p0n;
-   }
-   if ( recP == 3 && recN >= 1 ){
+    }
+    if ( recP == 3 && recN >= 1 ){
       recMode = xAOD::TauJetParameters::DecayMode::Mode_3pXn;
-   }
-   this->decayModeFill(trueMode, recMode, histo);
-}
+    }
+    this->decayModeFill(trueMode, recMode, histo);
+  }
       
 }
diff --git a/PhysicsAnalysis/TauID/TauHistUtils/src/RecoTauPlots.cxx b/PhysicsAnalysis/TauID/TauHistUtils/src/RecoTauPlots.cxx
index 59e1469235a7bd07599ff5040e71b23b2a6d318c..d95f0ebd73ee969ef2d9e2eafd49f79571fb4d9a 100644
--- a/PhysicsAnalysis/TauID/TauHistUtils/src/RecoTauPlots.cxx
+++ b/PhysicsAnalysis/TauID/TauHistUtils/src/RecoTauPlots.cxx
@@ -1,50 +1,46 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "TauHistUtils/RecoTauPlots.h"
 
 namespace Tau{
 
-RecoTauPlots::RecoTauPlots(PlotBase* pParent, std::string sDir, std::string sTauJetContainerName):
-   PlotBase(pParent, sDir),
-   m_oParamPlots(this, "", sTauJetContainerName),
-   m_cellBased_charPFO_Pt(nullptr),
-   m_cellBased_charPFO_Eta(nullptr),
-   m_cellBased_charPFO_Phi(nullptr),
-   m_cellBased_charPFO_E(nullptr),
-   m_cellBased_neuPFO_Pt(nullptr),
-   m_cellBased_neuPFO_Eta(nullptr),
-   m_cellBased_neuPFO_Phi(nullptr),
-   m_cellBased_neuPFO_E(nullptr),
-   m_cellBased_neuPFO_bdtPi0Score(nullptr),
-   m_pantau_CellBasedInput_isPanTauCandidate(nullptr),
-   m_pantau_CellBasedInput_DecayMode(nullptr),
-   m_pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n(nullptr),
-   m_pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn(nullptr),
-   m_pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Charged_HLV_SumM(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed(nullptr),
-   m_pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged(nullptr),
-   m_id_BDTJetScore(nullptr),
-   m_id_BDTEleScore(nullptr),
-   m_sTauJetContainerName(sTauJetContainerName)
-{
-}
+  RecoTauPlots::RecoTauPlots(PlotBase* pParent, std::string sDir, std::string sTauJetContainerName):
+    PlotBase(pParent, sDir),
+    m_oParamPlots(this, "", sTauJetContainerName),
+    m_cellBased_neuPFO_Pt(nullptr),
+    m_cellBased_neuPFO_Eta(nullptr),
+    m_cellBased_neuPFO_Phi(nullptr),
+    m_cellBased_neuPFO_E(nullptr),
+    m_cellBased_neuPFO_bdtPi0Score(nullptr),
+    m_pantau_CellBasedInput_isPanTauCandidate(nullptr),
+    m_pantau_CellBasedInput_DecayMode(nullptr),
+    m_pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n(nullptr),
+    m_pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn(nullptr),
+    m_pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Charged_HLV_SumM(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed(nullptr),
+    m_pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged(nullptr),
+    m_id_BDTJetScore(nullptr),
+    m_id_BDTEleScore(nullptr),
+    m_sTauJetContainerName(sTauJetContainerName)
+  {
+  }
 	
-RecoTauPlots::~RecoTauPlots()
-{
-}
+  RecoTauPlots::~RecoTauPlots()
+  {
+  }
 
-void RecoTauPlots::initializePlots(){
+  void RecoTauPlots::initializePlots(){
     
     //  m_oParamPlots.initialize();
 
@@ -53,62 +49,44 @@ void RecoTauPlots::initializePlots(){
       +++++++++++++++++++CellBased+++++++++++++++++++++
       +++++++++++++++++++++++++++++++++++++++++++++++++*/
 
-	m_cellBased_charPFO_Pt      = Book1D("cellBased_PFO_c_Pt",m_sTauJetContainerName + " Charged PFO pt; pt; # PFO",200,0.,200000.);
-	m_cellBased_charPFO_Eta      = Book1D("cellBased_PFO_c_Eta",m_sTauJetContainerName + " Charged PFO eta; eta; # PFO",128,-3.2,3.2);
-	m_cellBased_charPFO_Phi      = Book1D("cellBased_PFO_c_Phi",m_sTauJetContainerName + " Charged PFO phi; phi; # PFO",128,-3.2,3.2);
-	m_cellBased_charPFO_E      = Book1D("cellBased_PFO_c_E",m_sTauJetContainerName + " Charged PFO E; E; # PFO",200,0.,200000.);
-	m_cellBased_neuPFO_Pt      = Book1D("cellBased_PFO_n_Pt",m_sTauJetContainerName + " Neutral PFO pt; pt; # PFO",200,0.,200000.);
-	m_cellBased_neuPFO_Eta      = Book1D("cellBased_PFO_n_Eta",m_sTauJetContainerName + " Neutral PFO eta; eta; # PFO",128,-3.2,3.2);
-	m_cellBased_neuPFO_Phi      = Book1D("cellBased_PFO_n_Phi",m_sTauJetContainerName + " Neutral PFO phi; phi; # PFO",64,-3.2,3.2);
-	m_cellBased_neuPFO_E      = Book1D("cellBased_PFO_n_E",m_sTauJetContainerName + " Neutral PFO E; E; # PFO",200,0.,200000.);
-	m_cellBased_neuPFO_bdtPi0Score = Book1D("cellBased_PFO_n_bdtPi0Score",m_sTauJetContainerName + " Neutral PFO BDT Pi0 Score; Score; # PFO",60,-1.0,1.0);
+    m_cellBased_neuPFO_Pt      = Book1D("cellBased_PFO_n_Pt",m_sTauJetContainerName + " Neutral PFO pt; pt; # PFO",200,0.,200000.);
+    m_cellBased_neuPFO_Eta      = Book1D("cellBased_PFO_n_Eta",m_sTauJetContainerName + " Neutral PFO eta; eta; # PFO",128,-3.2,3.2);
+    m_cellBased_neuPFO_Phi      = Book1D("cellBased_PFO_n_Phi",m_sTauJetContainerName + " Neutral PFO phi; phi; # PFO",64,-3.2,3.2);
+    m_cellBased_neuPFO_E      = Book1D("cellBased_PFO_n_E",m_sTauJetContainerName + " Neutral PFO E; E; # PFO",200,0.,200000.);
+    m_cellBased_neuPFO_bdtPi0Score = Book1D("cellBased_PFO_n_bdtPi0Score",m_sTauJetContainerName + " Neutral PFO BDT Pi0 Score; Score; # PFO",60,-1.0,1.0);
 
 
     /*+++++++++++++++++++++++++++++++++++++++++++++++++
       +++++++++++++++++++PANTAU++++++++++++++++++++++++
       +++++++++++++++++++++++++++++++++++++++++++++++++*/
-	m_pantau_CellBasedInput_isPanTauCandidate   = Book1D("pantau_CellBasedInput_isPanTauCandidate",m_sTauJetContainerName +"pantau_CellBasedInput_isPanTauCandidate", 2 ,0 ,2);
-	m_pantau_CellBasedInput_DecayMode   = Book1D("pantau_CellBasedInput_DecayMode",m_sTauJetContainerName +"pantau_CellBasedInput_DecayMode", 6, -0.5, 5.5);
-	m_pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n = Book1D("pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n",m_sTauJetContainerName + "pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n",30,-1.,1.);
-	m_pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn = Book1D("pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn",m_sTauJetContainerName + "pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn",30,-1.,1.);
-	m_pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn = Book1D("pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn",m_sTauJetContainerName + "pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn",30,-1.,1.);
-	m_pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts = Book1D("pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts",10.,-0.5,9.5);
-	m_pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt = Book1D("pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt", 30, 0.0, 4000.0);
-	m_pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts = Book1D("pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts",30,0.,0.6);
-	m_pantau_CellBasedInput_BDTVar_Charged_HLV_SumM = Book1D("pantau_CellBasedInput_BDTVar_Charged_HLV_SumM",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Charged_HLV_SumM", 30, 0.0, 4000.0);
-	m_pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM = Book1D("pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM", 30, 0.0, 4000.0);
-	m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1 = Book1D("pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1",30,-1.5,1.5);
-	m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2 = Book1D("pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2",30,-1.5,1.5);
-	m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts = Book1D("pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts",30,0.,1.);
-	m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts = Book1D("pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts",30,-0.5,1.2);
-	m_pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed = Book1D("pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed",10,-0.5,9.5);
-	m_pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged = Book1D("pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged",30,0.,0.6);
+    m_pantau_CellBasedInput_isPanTauCandidate   = Book1D("pantau_CellBasedInput_isPanTauCandidate",m_sTauJetContainerName +"pantau_CellBasedInput_isPanTauCandidate", 2 ,0 ,2);
+    m_pantau_CellBasedInput_DecayMode   = Book1D("pantau_CellBasedInput_DecayMode",m_sTauJetContainerName +"pantau_CellBasedInput_DecayMode", 6, -0.5, 5.5);
+    m_pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n = Book1D("pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n",m_sTauJetContainerName + "pantau_CellBasedInput_BDTValue_1p0n_vs_1p1n",30,-1.,1.);
+    m_pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn = Book1D("pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn",m_sTauJetContainerName + "pantau_CellBasedInput_BDTValue_1p1n_vs_1pXn",30,-1.,1.);
+    m_pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn = Book1D("pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn",m_sTauJetContainerName + "pantau_CellBasedInput_BDTValue_3p0n_vs_3pXn",30,-1.,1.);
+    m_pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts = Book1D("pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Basic_NNeutralConsts",10.,-0.5,9.5);
+    m_pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt = Book1D("pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Charged_JetMoment_EtDRxTotalEt", 30, 0.0, 4000.0);
+    m_pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts = Book1D("pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Charged_StdDev_Et_WrtEtAllConsts",30,0.,0.6);
+    m_pantau_CellBasedInput_BDTVar_Charged_HLV_SumM = Book1D("pantau_CellBasedInput_BDTVar_Charged_HLV_SumM",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Charged_HLV_SumM", 30, 0.0, 4000.0);
+    m_pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM = Book1D("pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_HLV_SumM", 30, 0.0, 4000.0);
+    m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1 = Book1D("pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_1",30,-1.5,1.5);
+    m_pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2 = Book1D("pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_PID_BDTValues_BDTSort_2",30,-1.5,1.5);
+    m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts = Book1D("pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts",30,0.,1.);
+    m_pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts = Book1D("pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_Ratio_EtOverEtAllConsts",30,-0.5,1.2);
+    m_pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed = Book1D("pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Neutral_Shots_NPhotonsInSeed",10,-0.5,9.5);
+    m_pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged = Book1D("pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged",m_sTauJetContainerName + "pantau_CellBasedInput_BDTVar_Combined_DeltaR1stNeutralTo1stCharged",30,0.,0.6);
 
   }
     
-    void RecoTauPlots::fill(const xAOD::TauJet& thisTau) {
+  void RecoTauPlots::fill(const xAOD::TauJet& thisTau) {
 
-	//Access Particle Flow Object
+    //Access Particle Flow Object
 
 
     /*+++++++++++++++++++++++++++++++++++++++++++++++++
       +++++++++++++++++++CellBased+++++++++++++++++++++
       +++++++++++++++++++++++++++++++++++++++++++++++++*/
 
-    //Charged Pions
-    std::vector< ElementLink< xAOD::PFOContainer > > cellBased_chargedPFO = thisTau.protoChargedPFOLinks();
-    std::vector< ElementLink< xAOD::PFOContainer > >::iterator first_cellBased_chargedPFO = cellBased_chargedPFO.begin();
-    std::vector< ElementLink< xAOD::PFOContainer > >::iterator last_cellBased_chargedPFO = cellBased_chargedPFO.end();
-
-    for (; first_cellBased_chargedPFO != last_cellBased_chargedPFO; ++first_cellBased_chargedPFO){
-      ElementLink<xAOD::PFOContainer> thisLink = *first_cellBased_chargedPFO;
-      const xAOD::PFO* thisPFO = *thisLink;
-      m_cellBased_charPFO_Pt->Fill( thisPFO->pt()); 
-      m_cellBased_charPFO_Eta->Fill( thisPFO->eta()); 
-      m_cellBased_charPFO_Phi->Fill( thisPFO->phi()); 
-      m_cellBased_charPFO_E->Fill( thisPFO->e());  
-    } 
-    
     //Neutral Pions
     std::vector< ElementLink< xAOD::PFOContainer > > cellBased_neutralPFO = thisTau.protoNeutralPFOLinks();
     std::vector< ElementLink< xAOD::PFOContainer > >::iterator first_cellBased_neutralPFO = cellBased_neutralPFO.begin();