ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

/*
   Class to process/filter reconstruction information from ESD, ESD friends, MC and provide them for later reprocessing
   Filtering schema - low pt part is downscaled - to have flat pt specatra of selected topologies (tracks and V0s)
   Downscaling schema is controlled by downscaling factors
   Usage: 
     1.) Filtering on Lego train
     2.) expert QA for tracking (resolution efficnecy)
     3.) pt reoslution studies using V0s 
     4.) dEdx calibration using V0s
     5.) pt resolution and dEdx studies using cosmic
     +
     6.) Info used for later raw data OFFLINE triggering  (highPt, V0, laser, cosmic, high dEdx)

   Exported trees (with full objects and dereived variables):
   1.) "highPt"     - filtered trees with esd tracks, derived variables(propagated tracks), optional MC info +optional space points
   2.) "V0s" -      - filtered trees with selected V0s (rough KF chi2 cut), KF particle and corresponding esd tracks + optionla space points
   3.) "Laser"      - dump laser tracks with space points if exests 
   4.) "CosmicTree" - cosmic track candidate (random or triggered) + esdTracks(up/down)+ optional points
   5.) "dEdx"       - tree with high dEdx tpc tracks
*/

#include "iostream"
#include "TSystem.h"
#include <TPDGCode.h>
#include <TDatabasePDG.h>

#include "TChain.h"
#include "TTreeStream.h"
#include "TTree.h"
#include "TH1F.h"
#include "TH3.h"
#include "TCanvas.h"
#include "TList.h"
#include "TObjArray.h"
#include "TFile.h"
#include "TMatrixD.h"
#include "TRandom3.h"

#include "AliHeader.h"  
#include "AliGenEventHeader.h"  
#include "AliInputEventHandler.h"  
#include "AliStack.h"  
#include "AliTrackReference.h"  
#include "AliTrackPointArray.h"
#include "AliSysInfo.h"

#include "AliPhysicsSelection.h"
#include "AliAnalysisTask.h"
#include "AliAnalysisManager.h"
#include "AliESDEvent.h"
#include "AliESDfriend.h"
#include "AliMCEvent.h"
#include "AliESDInputHandler.h"
#include "AliESDVertex.h"
#include "AliTracker.h"
#include "AliVTrack.h"
#include "AliGeomManager.h"

#include "AliCentrality.h"
#include "AliESDVZERO.h"
#include "AliMultiplicity.h"

#include "AliESDtrackCuts.h"
#include "AliMCEventHandler.h"
#include "AliFilteredTreeEventCuts.h"
#include "AliFilteredTreeAcceptanceCuts.h"

#include "AliAnalysisTaskFilteredTree.h"
#include "AliKFParticle.h"
#include "AliESDv0.h"
#include "TVectorD.h"

using namespace std;

ClassImp(AliAnalysisTaskFilteredTree)

  //_____________________________________________________________________________
  AliAnalysisTaskFilteredTree::AliAnalysisTaskFilteredTree(const char *name) 
  : AliAnalysisTaskSE(name)
  , fESD(0)
  , fMC(0)
  , fESDfriend(0)
  , fOutput(0)
  , fPitList(0)
  , fUseMCInfo(kFALSE)
  , fUseESDfriends(kFALSE)
  , fReducePileUp(kTRUE)
  , fFillTree(kTRUE)
  , fFilteredTreeEventCuts(0)
  , fFilteredTreeAcceptanceCuts(0)
  , fFilteredTreeRecAcceptanceCuts(0)
  , fEsdTrackCuts(0)
  , fTrigger(AliTriggerAnalysis::kMB1) 
  , fAnalysisMode(kTPCAnalysisMode) 
  , fTreeSRedirector(0)
  , fCentralityEstimator(0)
  , fLowPtTrackDownscaligF(0)
  , fLowPtV0DownscaligF(0)
  , fFriendDownscaling(-3.)   
  , fProcessAll(kFALSE)
  , fProcessCosmics(kFALSE)
  , fProcessITSTPCmatchOut(kFALSE)  // swittch to process ITS/TPC standalone tracks
  , fHighPtTree(0)
  , fV0Tree(0)
  , fdEdxTree(0)
  , fLaserTree(0)
  , fMCEffTree(0)
  , fCosmicPairsTree(0)
  , fPtResPhiPtTPC(0)
  , fPtResPhiPtTPCc(0)
  , fPtResPhiPtTPCITS(0)
  , fPtResEtaPtTPC(0)
  , fPtResEtaPtTPCc(0)
  , fPtResEtaPtTPCITS(0)
  , fPtResCentPtTPC(0)
  , fPtResCentPtTPCc(0)
  , fPtResCentPtTPCITS(0)
  , fCurrentFileName("")
  , fDummyTrack(0)
{
  // Constructor

  // Define input and output slots here
  DefineOutput(1, TTree::Class());
  DefineOutput(2, TTree::Class());
  DefineOutput(3, TTree::Class());
  DefineOutput(4, TTree::Class());
  DefineOutput(5, TTree::Class());
  DefineOutput(6, TTree::Class());
  DefineOutput(7, TList::Class());
}

//_____________________________________________________________________________
AliAnalysisTaskFilteredTree::~AliAnalysisTaskFilteredTree()
{
  //
  // Destructor
  //
  delete fFilteredTreeEventCuts;
  delete fFilteredTreeAcceptanceCuts;
  delete fFilteredTreeRecAcceptanceCuts;
  delete fEsdTrackCuts;
}

//____________________________________________________________________________
Bool_t AliAnalysisTaskFilteredTree::Notify()
{
  //
  //
  static Int_t count = 0;
  count++;
  TTree *chain = (TChain*)GetInputData(0);
  if(chain){
    Printf("Processing %d. file: %s", count, chain->GetCurrentFile()->GetName());
  }  
  fCurrentFileName=chain->GetCurrentFile()->GetName();
  return kTRUE;
}

//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::UserCreateOutputObjects()
{
  // Create histograms
  // Called once

  //
  //get the output file to make sure the trees will be associated to it
  OpenFile(1);
  fTreeSRedirector = new TTreeSRedirector();

  //
  // Create trees
  fV0Tree = ((*fTreeSRedirector)<<"V0s").GetTree();
  fHighPtTree = ((*fTreeSRedirector)<<"highPt").GetTree();
  fdEdxTree = ((*fTreeSRedirector)<<"dEdx").GetTree();
  fLaserTree = ((*fTreeSRedirector)<<"Laser").GetTree();
  fMCEffTree = ((*fTreeSRedirector)<<"MCEffTree").GetTree();
  fCosmicPairsTree = ((*fTreeSRedirector)<<"CosmicPairs").GetTree();

  if (!fDummyTrack)  {
    fDummyTrack=new AliESDtrack();
  }

  // histogram booking

  Double_t minPt = 0.1; 
  Double_t maxPt = 100.; 
  Int_t nbinsPt = 30; 

  Double_t logminPt = TMath::Log10(minPt);
  Double_t logmaxPt = TMath::Log10(maxPt);
  Double_t binwidth = (logmaxPt-logminPt)/nbinsPt;
  Double_t *binsPt =  new Double_t[nbinsPt+1];
  binsPt[0] = minPt;
  for (Int_t i=1;i<=nbinsPt;i++) {
    binsPt[i] = minPt + TMath::Power(10,logminPt+i*binwidth);
  }

  // 1pT resol cov matrix bins
  Double_t min1PtRes = 0.; 
  Double_t max1PtRes = 0.3; 
  Int_t nbins1PtRes = 300; 
  Double_t bins1PtRes[301];
  for (Int_t i=0;i<=nbins1PtRes;i++) {
    bins1PtRes[i] = min1PtRes + i*(max1PtRes-min1PtRes)/nbins1PtRes;
  }

  // phi bins
  Double_t minPhi = 0.; 
  Double_t maxPhi = 6.5; 
  Int_t nbinsPhi = 100; 
  Double_t binsPhi[101];
  for (Int_t i=0;i<=nbinsPhi;i++) {
    binsPhi[i] = minPhi + i*(maxPhi-minPhi)/nbinsPhi;
  }

  // eta bins
  Double_t minEta = -1.;
  Double_t maxEta = 1.;
  Int_t nbinsEta = 20;
  Double_t binsEta[21];
  for (Int_t i=0;i<=nbinsEta;i++) {
    binsEta[i] = minEta + i*(maxEta-minEta)/nbinsEta;
  }

  // mult bins
  Double_t minCent = 0.;
  Double_t maxCent = 100;
  Int_t nbinsCent = 20;
  Double_t binsCent[101];
  for (Int_t i=0;i<=nbinsCent;i++) {
    binsCent[i] = minCent + i*(maxCent-minCent)/nbinsCent;
  }

  fPtResPhiPtTPC = new TH3D("fPtResPhiPtTPC","pt rel. resolution from cov. matrix TPC tracks",nbinsPt,binsPt,nbinsPhi,binsPhi,nbins1PtRes,bins1PtRes);
  fPtResPhiPtTPCc = new TH3D("fPtResPhiPtTPCc","pt rel. resolution from cov. matrix TPC constrained tracks",nbinsPt,binsPt,nbinsPhi,binsPhi,nbins1PtRes,bins1PtRes);
  fPtResPhiPtTPCITS = new TH3D("fPtResPhiPtTPCITS","pt rel. resolution from cov. matrix TPC+ITS tracks",nbinsPt,binsPt,nbinsPhi,binsPhi,nbins1PtRes,bins1PtRes);

  fPtResEtaPtTPC = new TH3D("fPtResEtaPtTPC","pt rel. resolution from cov. matrix TPC tracks",nbinsPt,binsPt,nbinsEta,binsEta,nbins1PtRes,bins1PtRes);
  fPtResEtaPtTPCc = new TH3D("fPtResEtaPtTPCc","pt rel. resolution from cov. matrix TPC constrained tracks",nbinsPt,binsPt,nbinsEta,binsEta,nbins1PtRes,bins1PtRes);
  fPtResEtaPtTPCITS = new TH3D("fPtResEtaPtTPCITS","pt rel. resolution from cov. matrix TPC+ITS tracks",nbinsPt,binsPt,nbinsEta,binsEta,nbins1PtRes,bins1PtRes);

  fPtResCentPtTPC = new TH3D("fPtResCentPtTPC","pt rel. resolution from cov. matrix TPC tracks",nbinsPt,binsPt,nbinsCent,binsCent,nbins1PtRes,bins1PtRes);
  fPtResCentPtTPCc = new TH3D("fPtResCentPtTPCc","pt rel. resolution from cov. matrix TPC constrained tracks",nbinsPt,binsPt,nbinsCent,binsCent,nbins1PtRes,bins1PtRes);
  fPtResCentPtTPCITS = new TH3D("fPtResCentPtTPCITS","pt rel. resolution from cov. matrix TPC+ITS tracks",nbinsPt,binsPt,nbinsCent,binsCent,nbins1PtRes,bins1PtRes);


  fOutput = new TList; 
  if(!fOutput) return;
  fOutput->SetOwner();

  fOutput->Add(fPtResPhiPtTPC);
  fOutput->Add(fPtResPhiPtTPCc);
  fOutput->Add(fPtResPhiPtTPCITS);
  fOutput->Add(fPtResEtaPtTPC);
  fOutput->Add(fPtResEtaPtTPCc);
  fOutput->Add(fPtResEtaPtTPCITS);
  fOutput->Add(fPtResCentPtTPC);
  fOutput->Add(fPtResCentPtTPCc);
  fOutput->Add(fPtResCentPtTPCITS);

  // post data to outputs

  PostData(1,fV0Tree);
  PostData(2,fHighPtTree);
  PostData(3,fdEdxTree);
  PostData(4,fLaserTree);
  PostData(5,fMCEffTree);
  PostData(6,fCosmicPairsTree);

  PostData(7,fOutput);
}

//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::UserExec(Option_t *) 
{
  //
  // Called for each event
  //

  // ESD event
  fESD = (AliESDEvent*) (InputEvent());
  if (!fESD) {
    Printf("ERROR: ESD event not available");
    return;
  }
  //if MC info available - use it.
  fMC = MCEvent();
  if(fUseESDfriends) {
    //fESDfriend = dynamic_cast<AliESDfriend*>(fESD->FindListObject("AliESDfriend"));
    fESDfriend = ESDfriend();
    if(!fESDfriend) {
      Printf("ERROR: ESD friends not available");
    }
  }
  AliInputEventHandler* inputHandler = (AliInputEventHandler*) AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler();
  if (!inputHandler){
    return;
  }

  //if set, use the environment variables to set the downscaling factors
  //AliAnalysisTaskFilteredTree_fLowPtTrackDownscaligF
  //AliAnalysisTaskFilteredTree_fLowPtV0DownscaligF
  //AliAnalysisTaskFilteredTree_fFriendDownscaling
  TString env;
  env = gSystem->Getenv("AliAnalysisTaskFilteredTree_fLowPtTrackDownscaligF");
  if (!env.IsNull()){
    fLowPtTrackDownscaligF=env.Atof();
    AliInfo(Form("fLowPtTrackDownscaligF=%f",fLowPtTrackDownscaligF));
  }
  env = gSystem->Getenv("AliAnalysisTaskFilteredTree_fLowPtV0DownscaligF");
  if (!env.IsNull()){
    fLowPtV0DownscaligF=env.Atof();
    AliInfo(Form("fLowPtV0DownscaligF=%f",fLowPtTrackDownscaligF));
  }
  env = gSystem->Getenv("AliAnalysisTaskFilteredTree_fFriendDownscaling");
  if (!env.IsNull()){
    fFriendDownscaling=env.Atof();
    AliInfo(Form(" fFriendDownscaling=%f",fFriendDownscaling));
  }
  //
  //
  //
  if(fProcessAll) { 
    ProcessAll(fESD,fMC,fESDfriend); // all track stages and MC
  }
  else {
    Process(fESD,fMC,fESDfriend);    // only global and TPC tracks
  }
  //
  ProcessV0(fESD,fMC,fESDfriend);
  ProcessLaser(fESD,fMC,fESDfriend);
  ProcessdEdx(fESD,fMC,fESDfriend);
  if (fProcessCosmics) { ProcessCosmics(fESD,fESDfriend); }
  if(fMC) { ProcessMCEff(fESD,fMC,fESDfriend);}
  if (fProcessITSTPCmatchOut) ProcessITSTPCmatchOut(fESD, fESDfriend);
  printf("processed event %d\n", Int_t(Entry()));
}

//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::ProcessCosmics(AliESDEvent *const event, AliESDfriend* esdFriend)
{
  //
  // Find cosmic pairs (triggered or random) 
  //
  //
  AliESDVertex *vertexSPD =  (AliESDVertex *)event->GetPrimaryVertexSPD();
  AliESDVertex *vertexTPC =  (AliESDVertex *)event->GetPrimaryVertexTPC(); 
  const Double_t kMinPt=0.8;
  const Double_t kMinPtMax=0.8;
  const Double_t kMinNcl=50;
  const Double_t kMaxDelta[5]={2,600,0.02,0.02,0.1};
  Int_t ntracks=event->GetNumberOfTracks(); 
  UInt_t specie = event->GetEventSpecie();  // skip laser events
  if (specie==AliRecoParam::kCalib) return;
  Int_t ntracksFriend = esdFriend ? esdFriend->GetNumberOfTracks() : 0;


  for (Int_t itrack0=0;itrack0<ntracks;itrack0++) {
    AliESDtrack *track0 = event->GetTrack(itrack0);
    if (!track0) continue;
    if (!track0->IsOn(AliESDtrack::kTPCrefit)) continue;

    if (TMath::Abs(AliTracker::GetBz())>1 && track0->Pt() < kMinPt) continue;
    if (track0->Pt() < kMinPt) continue;
    if (track0->GetTPCncls() < kMinNcl) continue;
    if (TMath::Abs(track0->GetY())<kMaxDelta[0]) continue; 
    if (track0->GetKinkIndex(0)>0) continue;
    const Double_t * par0=track0->GetParameter(); //track param at rhe DCA
    //rm primaries
    //
    //track0->GetImpactParametersTPC(dcaTPC,covTPC);
    //if (TMath::Abs(dcaTPC[0])<kMaxDelta[0]) continue;
    //if (TMath::Abs(dcaTPC[1])<kMaxDelta[0]*2) continue;
    //    const AliExternalTrackParam * trackIn0 = track0->GetInnerParam();
    AliESDfriendTrack* friendTrack0=NULL;
    if (esdFriend &&!esdFriend->TestSkipBit()){
      if (itrack0<ntracksFriend){
	friendTrack0 = esdFriend->GetTrack(itrack0);
      } //this guy can be NULL
    }

    for (Int_t itrack1=itrack0+1;itrack1<ntracks;itrack1++) {
      AliESDtrack *track1 = event->GetTrack(itrack1);
      if (!track1) continue;  
      if (!track1->IsOn(AliESDtrack::kTPCrefit)) continue;
      if (track1->GetKinkIndex(0)>0) continue;
      if ((TMath::Abs(AliTracker::GetBz())>1) && (track1->Pt() < kMinPt)) continue;
      if (track1->Pt() < kMinPt) continue;
      if (track1->GetTPCncls()<kMinNcl) continue;
      if (TMath::Abs(AliTracker::GetBz())>1 && TMath::Max(track1->Pt(), track0->Pt())<kMinPtMax) continue;
      if (TMath::Abs(track1->GetY())<kMaxDelta[0]) continue;
      //track1->GetImpactParametersTPC(dcaTPC,covTPC);
      //      if (TMath::Abs(dcaTPC[0])<kMaxDelta[0]) continue;
      //if (TMath::Abs(dcaTPC[1])<kMaxDelta[0]*2) continue;
      //
      const Double_t* par1=track1->GetParameter(); //track param at rhe DCA
      //
      Bool_t isPair=kTRUE;
      for (Int_t ipar=0; ipar<5; ipar++){
        if (ipar==4&&TMath::Abs(AliTracker::GetBz())<1) continue; // 1/pt not defined for B field off
        if (TMath::Abs(TMath::Abs(par0[ipar])-TMath::Abs(par1[ipar]))>kMaxDelta[ipar]) isPair=kFALSE;
      }
      if (!isPair) continue;
      if (TMath::Abs(TMath::Abs(track0->GetAlpha()-track1->GetAlpha())-TMath::Pi())>kMaxDelta[2]) isPair=kFALSE;
      //delta with correct sign
      /*
	TCut cut0="abs(t1.fP[0]+t0.fP[0])<2"
	TCut cut3="abs(t1.fP[3]+t0.fP[3])<0.02"
	TCut cut4="abs(t1.fP[4]+t0.fP[4])<0.2"
      */
      if  (TMath::Abs(par0[0]+par1[0])>kMaxDelta[0]) isPair=kFALSE; //delta y   opposite sign
      if  (TMath::Abs(par0[3]+par1[3])>kMaxDelta[3]) isPair=kFALSE; //delta tgl opposite sign
      if  (TMath::Abs(AliTracker::GetBz())>1 && TMath::Abs(par0[4]+par1[4])>kMaxDelta[4]) isPair=kFALSE; //delta 1/pt opposite sign
      if (!isPair) continue;
      TString filename(AliAnalysisManager::GetAnalysisManager()->GetTree()->GetCurrentFile()->GetName());
      Int_t eventNumber = event->GetEventNumberInFile(); 
      //
      //               
      Int_t ntracksSPD = vertexSPD->GetNContributors();
      Int_t ntracksTPC = vertexTPC->GetNContributors();        
      Int_t runNumber     = event->GetRunNumber();        
      Int_t timeStamp    = event->GetTimeStamp();
      ULong64_t triggerMask = event->GetTriggerMask();
      Float_t magField    = event->GetMagneticField();
      TObjString triggerClass = event->GetFiredTriggerClasses().Data();

      // Global event id calculation using orbitID, bunchCrossingID and periodID
      ULong64_t orbitID      = (ULong64_t)event->GetOrbitNumber();
      ULong64_t bunchCrossID = (ULong64_t)event->GetBunchCrossNumber();
      ULong64_t periodID     = (ULong64_t)event->GetPeriodNumber();
      ULong64_t gid          = ((periodID << 36) | (orbitID << 12) | bunchCrossID); 
      

      AliESDfriendTrack* friendTrack1=NULL;
      if (esdFriend &&!esdFriend->TestSkipBit()){
	if (itrack1<ntracksFriend){
	  friendTrack1 = esdFriend->GetTrack(itrack1);
	} //this guy can be NULL
      }

      //
      AliESDfriendTrack *friendTrackStore0=friendTrack0;    // store friend track0 for later processing
      AliESDfriendTrack *friendTrackStore1=friendTrack1;    // store friend track1 for later processing
      if (fFriendDownscaling>=1){  // downscaling number of friend tracks
	if (gRandom->Rndm()>1./fFriendDownscaling){
	  friendTrackStore0 = 0;
	  friendTrackStore1 = 0;
	}
      }
      if (fFriendDownscaling<=0){
	if (((*fTreeSRedirector)<<"CosmicPairs").GetTree()){
	  TTree * tree = ((*fTreeSRedirector)<<"CosmicPairs").GetTree();
	  if (tree){
	    Double_t sizeAll=tree->GetZipBytes();
	    TBranch * br= tree->GetBranch("friendTrack0.fPoints");
	    Double_t sizeFriend=(br!=NULL)?br->GetZipBytes():0;
	    br= tree->GetBranch("friendTrack0.fCalibContainer");
	    if (br) sizeFriend+=br->GetZipBytes();
	    if (sizeFriend*TMath::Abs(fFriendDownscaling)>sizeAll) {
	      friendTrackStore0=0;
	      friendTrackStore1=0;
	    }
	  }
	}
      }
      if(!fFillTree) return;
      if(!fTreeSRedirector) return;
      (*fTreeSRedirector)<<"CosmicPairs"<<
        "gid="<<gid<<                         // global id of track
        "fileName.="<<&fCurrentFileName<<     // file name
        "runNumber="<<runNumber<<             // run number	    
        "evtTimeStamp="<<timeStamp<<          // time stamp of event
        "evtNumberInFile="<<eventNumber<<     // event number	    
        "trigger="<<triggerMask<<             // trigger mask
        "triggerClass="<<&triggerClass<<      // trigger class
        "Bz="<<magField<<                     // magnetic field
        //
        "multSPD="<<ntracksSPD<<              // event ultiplicity
        "multTPC="<<ntracksTPC<<              //  
        "vertSPD.="<<vertexSPD<<              // primary vertex -SPD
        "vertTPC.="<<vertexTPC<<              // primary vertex -TPC
        "t0.="<<track0<<                      // first half of comsic trak
        "t1.="<<track1<<                      // second half of cosmic track
        "friendTrack0.="<<friendTrackStore0<< // friend information first track  + points
        "friendTrack1.="<<friendTrackStore1<< // frined information first track  + points 
        "\n";      
    }
  }
}


//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::Process(AliESDEvent *const esdEvent, AliMCEvent * const mcEvent, AliESDfriend *const /*esdFriend*/)
{
  //
  // Select real events with high-pT tracks 
  //

  // get selection cuts
  AliFilteredTreeEventCuts *evtCuts = GetEventCuts(); 
  AliFilteredTreeAcceptanceCuts *accCuts = GetAcceptanceCuts(); 
  AliESDtrackCuts *esdTrackCuts = GetTrackCuts(); 

  if(!evtCuts || !accCuts  || !esdTrackCuts) {
    Printf("ERROR cuts not available");
    return;
  }

  // trigger selection
  Bool_t isEventTriggered = kTRUE;
  AliPhysicsSelection *physicsSelection = NULL;
  AliTriggerAnalysis* triggerAnalysis = NULL;

  // 
  AliInputEventHandler* inputHandler = (AliInputEventHandler*) AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler();
  // trigger
  if(evtCuts->IsTriggerRequired())  
  {
    // always MB
    isEventTriggered = inputHandler->IsEventSelected() & AliVEvent::kMB;

    physicsSelection = static_cast<AliPhysicsSelection*> (inputHandler->GetEventSelection());
    if(!physicsSelection) return;
    //SetPhysicsTriggerSelection(physicsSelection);

    if (isEventTriggered && (GetTrigger() == AliTriggerAnalysis::kV0AND)) {
      // set trigger (V0AND)
      triggerAnalysis = physicsSelection->GetTriggerAnalysis();
      if(!triggerAnalysis) return;
      isEventTriggered = triggerAnalysis->IsOfflineTriggerFired(esdEvent, GetTrigger());
    }
  }

  // centrality determination
  Float_t centralityF = -1;
  AliCentrality *esdCentrality = esdEvent->GetCentrality();
  centralityF = esdCentrality->GetCentralityPercentile(fCentralityEstimator.Data());

  // use MC information
  AliHeader* header = 0;
  AliGenEventHeader* genHeader = 0;
  AliStack* stack = 0;
  TArrayF vtxMC(3);

  Int_t multMCTrueTracks = 0;
  if(mcEvent)
  {
    // get MC event header
    header = mcEvent->Header();
    if (!header) {
      AliDebug(AliLog::kError, "Header not available");
      return;
    }
    // MC particle stack
    stack = mcEvent->Stack();
    if (!stack) {
      AliDebug(AliLog::kError, "Stack not available");
      return;
    }

    // get MC vertex
    genHeader = header->GenEventHeader();
    if (!genHeader) {
      AliDebug(AliLog::kError, "Could not retrieve genHeader from Header");
      return;
    }
    genHeader->PrimaryVertex(vtxMC);

    // multipliticy of all MC primary tracks
    // in Zv, pt and eta ranges)
    multMCTrueTracks = GetMCTrueTrackMult(mcEvent,evtCuts,accCuts);
  } // end bUseMC

  // get reconstructed vertex  
  //const AliESDVertex* vtxESD = 0; 
  AliESDVertex* vtxESD = 0; 
  if(GetAnalysisMode() == kTPCAnalysisMode) {
    vtxESD = (AliESDVertex*)esdEvent->GetPrimaryVertexTPC();
  }
  else if(GetAnalysisMode() == kTPCITSAnalysisMode) {
    vtxESD = (AliESDVertex*)esdEvent->GetPrimaryVertexTracks();
  }
  else {
    return;
  }

  AliESDVertex* vtxTPC = (AliESDVertex*)esdEvent->GetPrimaryVertexTPC();
  AliESDVertex* vtxSPD = (AliESDVertex*)esdEvent->GetPrimaryVertexSPD();

  if(!vtxESD) return;
  if(!vtxTPC) return;
  if(!vtxSPD) return;

  Bool_t isEventOK = evtCuts->AcceptEvent(esdEvent,mcEvent,vtxESD); 
  //printf("isEventOK %d, isEventTriggered %d, status %d, vz %f \n",isEventOK, isEventTriggered, vtxESD->GetStatus(), vtxESD->GetZ());
  //printf("GetAnalysisMode() %d \n",GetAnalysisMode());
  Int_t ntracks = esdEvent->GetNumberOfTracks();

  // check event cuts
  if(isEventOK && isEventTriggered)
  {

    //
    // get IR information
    //
    AliESDHeader *esdHeader = 0;
    esdHeader = esdEvent->GetHeader();
    if(!esdHeader) return;
    //Int_t ir1 = esdHeader->GetTriggerIREntries(); //all ir-s
    //Int_t ir2 = esdHeader->GetTriggerIREntries(-1,1); // int2 set, 180 ms time interval

    // Use when Peter commit the changes in the header
    Int_t ir1 = 0;
    Int_t ir2 = 0;

    //
    //Double_t vert[3] = {0}; 
    //vert[0] = vtxESD->GetX();
    //vert[1] = vtxESD->GetY();
    //vert[2] = vtxESD->GetZ();
    Int_t mult = vtxESD->GetNContributors();
    Int_t multSPD = vtxSPD->GetNContributors();
    Int_t multTPC = vtxTPC->GetNContributors();

    Float_t bz = esdEvent->GetMagneticField();
    Int_t runNumber = esdEvent->GetRunNumber();
    Int_t evtTimeStamp = esdEvent->GetTimeStamp();
    Int_t evtNumberInFile = esdEvent->GetEventNumberInFile();
   
    // Global event id calculation using orbitID, bunchCrossingID and periodID 
    ULong64_t orbitID      = (ULong64_t)esdEvent->GetOrbitNumber();
    ULong64_t bunchCrossID = (ULong64_t)esdEvent->GetBunchCrossNumber();
    ULong64_t periodID     = (ULong64_t)esdEvent->GetPeriodNumber();
    ULong64_t gid          = ((periodID << 36) | (orbitID << 12) | bunchCrossID); 
    

    // high pT tracks
    for (Int_t iTrack = 0; iTrack < esdEvent->GetNumberOfTracks(); iTrack++)
    {
      AliESDtrack *track = esdEvent->GetTrack(iTrack);
      if(!track) continue;
      if(track->Charge()==0) continue;
      if(!esdTrackCuts->AcceptTrack(track)) continue;
      if(!accCuts->AcceptTrack(track)) continue;

      // downscale low-pT tracks
      Double_t scalempt= TMath::Min(track->Pt(),10.);
      Double_t downscaleF = gRandom->Rndm();
      downscaleF *= fLowPtTrackDownscaligF;
      if(TMath::Exp(2*scalempt)<downscaleF) continue;
      //printf("TMath::Exp(2*scalempt) %e, downscaleF %e \n",TMath::Exp(2*scalempt), downscaleF);

      AliExternalTrackParam * tpcInner = (AliExternalTrackParam *)(track->GetTPCInnerParam());
      if (!tpcInner) continue;
      // transform to the track reference frame 
      Bool_t isOK = kFALSE;
      isOK = tpcInner->Rotate(track->GetAlpha());
      isOK = tpcInner->PropagateTo(track->GetX(),esdEvent->GetMagneticField());
      if(!isOK) continue;

      // Dump to the tree 
      // vertex
      // TPC-ITS tracks
      //
      TObjString triggerClass = esdEvent->GetFiredTriggerClasses().Data();
      if(!fFillTree) return;
      if(!fTreeSRedirector) return;
      (*fTreeSRedirector)<<"highPt"<<
        "gid="<<gid<<
        "fileName.="<<&fCurrentFileName<<            
        "runNumber="<<runNumber<<
        "evtTimeStamp="<<evtTimeStamp<<
        "evtNumberInFile="<<evtNumberInFile<<
        "triggerClass="<<&triggerClass<<      //  trigger
        "Bz="<<bz<<                           //  magnetic field
        "vtxESD.="<<vtxESD<<
        "ntracksESD="<<ntracks<<              // number of tracks in the ESD
        "IRtot="<<ir1<<                      // interaction record history info
        "IRint2="<<ir2<<
        "mult="<<mult<<                      // multiplicity of tracks pointing to the primary vertex
        "multSPD="<<multSPD<<                // multiplicity of tracks pointing to the SPD primary vertex
        "multTPC="<<multTPC<<                // multiplicity of tracks pointing to the TPC primary vertex
        "esdTrack.="<<track<<
        "centralityF="<<centralityF<<       
        "\n";
    }
  }

}


//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::ProcessLaser(AliESDEvent *const esdEvent, AliMCEvent * const /*mcEvent*/, AliESDfriend *const esdFriend)
{
  //
  // Process laser events -> dump tracks and clusters  to the special tree
  //
  const Double_t kMinPt = 5; 
  if(!fFillTree) return;
  if(!fTreeSRedirector) return;
  const AliESDHeader* esdHeader = esdEvent->GetHeader();
  if(esdHeader && esdHeader->GetEventSpecie()==AliRecoParam::kCalib) {
    Int_t countLaserTracks = 0;
    Int_t runNumber = esdEvent->GetRunNumber();
    Int_t evtTimeStamp = esdEvent->GetTimeStamp();
    Int_t evtNumberInFile = esdEvent->GetEventNumberInFile();
    Float_t bz = esdEvent->GetMagneticField();
    TObjString triggerClass = esdEvent->GetFiredTriggerClasses().Data();    
    // Global event id calculation using orbitID, bunchCrossingID and periodID
    ULong64_t orbitID      = (ULong64_t)esdEvent->GetOrbitNumber();
    ULong64_t bunchCrossID = (ULong64_t)esdEvent->GetBunchCrossNumber();
    ULong64_t periodID     = (ULong64_t)esdEvent->GetPeriodNumber();
    ULong64_t gid          = ((periodID << 36) | (orbitID << 12) | bunchCrossID); 
    for (Int_t iTrack = 0; iTrack < esdEvent->GetNumberOfTracks(); iTrack++){
      AliESDtrack *track = esdEvent->GetTrack(iTrack);
      if(!track) continue;
      if(track->GetTPCInnerParam()) countLaserTracks++;      
      AliESDfriendTrack* friendTrack=NULL;
      // suppress beam background and CE random reacks
      if (track->GetInnerParam()->Pt()<kMinPt) continue;
      Bool_t skipTrack=gRandom->Rndm()>1/(1+TMath::Abs(fFriendDownscaling));
      if (skipTrack) continue;
      if (esdFriend) {if (!esdFriend->TestSkipBit()) friendTrack = esdFriend->GetTrack(iTrack);} //this guy can be NULL      
      (*fTreeSRedirector)<<"Laser"<<
        "gid="<<gid<<                          // global identifier of event
        "fileName.="<<&fCurrentFileName<<              //
        "runNumber="<<runNumber<<
        "evtTimeStamp="<<evtTimeStamp<<
        "evtNumberInFile="<<evtNumberInFile<<
        "triggerClass="<<&triggerClass<<        //  trigger
        "Bz="<<bz<<                             //  magnetic field
        "multTPCtracks="<<countLaserTracks<<    //  multiplicity of tracks
	"track.="<<track<<                      //  track parameters
        "friendTrack.="<<friendTrack<<          //  friend track information
        "\n";
    }
  }
}

//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::ProcessAll(AliESDEvent *const esdEvent, AliMCEvent * const mcEvent, AliESDfriend *const esdFriend)
{
  //
  // Select real events with high-pT tracks
  // Calculate and stor in the output tree:
  //  TPC constrained tracks
  //  InnerParams constrained tracks
  //  TPC-ITS tracks
  //  ITSout-InnerParams tracks
  //  chi2 distance between TPC constrained and TPC-ITS tracks
  //  chi2 distance between TPC refitted constrained and TPC-ITS tracks
  //  chi2 distance between ITSout and InnerParams tracks
  //  MC information: 
  //   track references at ITSin, TPCin; InnerParam at first TPC track reference, 
  //   particle ID, mother ID, production mechanism ...
  // 
  // get selection cuts
  AliFilteredTreeEventCuts *evtCuts = GetEventCuts(); 
  AliFilteredTreeAcceptanceCuts *accCuts = GetAcceptanceCuts(); 
  AliESDtrackCuts *esdTrackCuts = GetTrackCuts(); 

  if(!evtCuts || !accCuts  || !esdTrackCuts) {
    AliDebug(AliLog::kError, "cuts not available");
    return;
  }

  // trigger selection
  Bool_t isEventTriggered = kTRUE;
  AliPhysicsSelection *physicsSelection = NULL;
  AliTriggerAnalysis* triggerAnalysis = NULL;

  // 
  AliInputEventHandler* inputHandler = (AliInputEventHandler*) AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler();


  // trigger
  if(evtCuts->IsTriggerRequired())  
  {
    // always MB
    isEventTriggered = inputHandler->IsEventSelected() & AliVEvent::kMB;

    physicsSelection = static_cast<AliPhysicsSelection*> (inputHandler->GetEventSelection());
    if(!physicsSelection) {AliInfo("no physics selection"); return;}
    //SetPhysicsTriggerSelection(physicsSelection);

    if (isEventTriggered && (GetTrigger() == AliTriggerAnalysis::kV0AND)) {
      // set trigger (V0AND)
      triggerAnalysis = physicsSelection->GetTriggerAnalysis();
      if(!triggerAnalysis) {AliInfo("no trigger analysis");return;}
      isEventTriggered = triggerAnalysis->IsOfflineTriggerFired(esdEvent, GetTrigger());
    }
  }

  // centrality determination
  Float_t centralityF = -1;
  AliCentrality *esdCentrality = esdEvent->GetCentrality();
  centralityF = esdCentrality->GetCentralityPercentile(fCentralityEstimator.Data());

  // use MC information
  AliHeader* header = 0;
  AliGenEventHeader* genHeader = 0;
  AliStack* stack = 0;
  TArrayF vtxMC(3);
  Int_t mcStackSize=0;

  Int_t multMCTrueTracks = 0;
  if(mcEvent)
  {
    // get MC event header
    header = mcEvent->Header();
    if (!header) {
      AliDebug(AliLog::kError, "Header not available");
      return;
    }
    // MC particle stack
    stack = mcEvent->Stack();
    if (!stack) {
      AliDebug(AliLog::kError, "Stack not available");
      return;
    }
    mcStackSize=stack->GetNtrack();

    // get MC vertex
    genHeader = header->GenEventHeader();
    if (!genHeader) {
      AliDebug(AliLog::kError, "Could not retrieve genHeader from Header");
      return;
    }
    genHeader->PrimaryVertex(vtxMC);

    // multipliticy of all MC primary tracks
    // in Zv, pt and eta ranges)
    multMCTrueTracks = GetMCTrueTrackMult(mcEvent,evtCuts,accCuts);

  } // end bUseMC

  // get reconstructed vertex  
  //const AliESDVertex* vtxESD = 0; 
  AliESDVertex* vtxESD = 0; 
  if(GetAnalysisMode() == kTPCAnalysisMode) {
    vtxESD = (AliESDVertex*)esdEvent->GetPrimaryVertexTPC();
  }
  else if(GetAnalysisMode() == kTPCITSAnalysisMode) {
    vtxESD = (AliESDVertex*)esdEvent->GetPrimaryVertexTracks();
  }
  else {
    AliInfo("no ESD vertex");
    return;
  }

  if(!vtxESD) return;

  Bool_t isEventOK = evtCuts->AcceptEvent(esdEvent,mcEvent,vtxESD); 

  //
  // Vertex info comparison and track multiplicity
  //
  AliESDVertex *vertexSPD =  (AliESDVertex *)esdEvent->GetPrimaryVertexSPD();
  AliESDVertex *vertexTPC =  (AliESDVertex *)esdEvent->GetPrimaryVertexTPC(); 
  Int_t contSPD = vertexSPD->GetNContributors();
  Int_t contTPC = vertexTPC->GetNContributors();        
  TVectorD vertexPosTPC(3), vertexPosSPD(3);
  vertexSPD->GetXYZ(vertexPosSPD.GetMatrixArray());
  vertexTPC->GetXYZ(vertexPosTPC.GetMatrixArray());
  Int_t ntracksTPC=0;
  Int_t ntracksITS=0;
  for (Int_t iTrack = 0; iTrack < esdEvent->GetNumberOfTracks(); iTrack++){
    AliESDtrack *track = esdEvent->GetTrack(iTrack);    
    if(!track) continue;
    if (track->IsOn(AliVTrack::kTPCrefit)) ntracksTPC++;
    if (track->IsOn(AliVTrack::kITSrefit)) ntracksITS++;
  }

  //printf("isEventOK %d, isEventTriggered %d \n",isEventOK, isEventTriggered);
  //printf("GetAnalysisMode() %d \n",GetAnalysisMode());


  // check event cuts
  if(isEventOK && isEventTriggered)
  {
    //
    // get IR information
    //
    AliESDHeader *esdHeader = 0;
    esdHeader = esdEvent->GetHeader();
    if(!esdHeader) {AliInfo("no esdHeader");return;}
    //Int_t ir1 = esdHeader->GetTriggerIREntries(); //all ir-s
    //Int_t ir2 = esdHeader->GetTriggerIREntries(-1,1); // int2 set, 180 ms time interval
    //
    Int_t ir1 = 0;
    Int_t ir2 = 0;

    //
    Double_t vert[3] = {0}; 
    vert[0] = vtxESD->GetX();
    vert[1] = vtxESD->GetY();
    vert[2] = vtxESD->GetZ();
    Int_t mult = vtxESD->GetNContributors();
    Float_t bz = esdEvent->GetMagneticField();
    Int_t runNumber = esdEvent->GetRunNumber();
    Int_t evtTimeStamp = esdEvent->GetTimeStamp();
    Int_t evtNumberInFile = esdEvent->GetEventNumberInFile();

    Int_t numberOfTracks=esdEvent->GetNumberOfTracks();
    // high pT tracks
    for (Int_t iTrack = 0; iTrack < numberOfTracks; iTrack++)
    {
      AliESDtrack *track = esdEvent->GetTrack(iTrack);
      AliESDfriendTrack* friendTrack=NULL;
      Int_t numberOfFriendTracks=0;
      if (esdFriend) numberOfFriendTracks=esdFriend->GetNumberOfTracks();
      if (esdFriend && iTrack<numberOfFriendTracks) {if (!esdFriend->TestSkipBit()) friendTrack = esdFriend->GetTrack(iTrack);} //this guy can be NULL
      if(!track) continue;
      if(track->Charge()==0) continue;
      if(!esdTrackCuts->AcceptTrack(track)) continue;
      if(!accCuts->AcceptTrack(track)) continue;

      // downscale low-pT tracks
      Double_t scalempt= TMath::Min(track->Pt(),10.);
      Double_t downscaleF = gRandom->Rndm();
      downscaleF *= fLowPtTrackDownscaligF;
      if(TMath::Exp(2*scalempt)<downscaleF) continue;
      //printf("TMath::Exp(2*scalempt) %e, downscaleF %e \n",TMath::Exp(2*scalempt), downscaleF);

      // Dump to the tree 
      // vertex
      // TPC constrained tracks
      // InnerParams constrained tracks
      // TPC-ITS tracks
      // ITSout-InnerParams tracks
      // chi2 distance between TPC constrained and TPC-ITS tracks
      // chi2 distance between TPC refitted constrained and TPC-ITS tracks
      // chi2 distance between ITSout and InnerParams tracks
      // MC information

      Double_t x[3]; track->GetXYZ(x);
      Double_t b[3]; AliTracker::GetBxByBz(x,b);

      //
      // Transform TPC inner params to track reference frame
      //
      Bool_t isOKtpcInner = kFALSE;
      AliExternalTrackParam * tpcInner = (AliExternalTrackParam *)(track->GetTPCInnerParam());
      if (tpcInner) {
        // transform to the track reference frame 
        isOKtpcInner = tpcInner->Rotate(track->GetAlpha());
        isOKtpcInner = tpcInner->PropagateTo(track->GetX(),esdEvent->GetMagneticField());
      }

      //
      // Constrain TPC inner to vertex
      // clone TPCinner has to be deleted
      //
      Bool_t isOKtpcInnerC = kFALSE;
      AliExternalTrackParam * tpcInnerC = new AliExternalTrackParam(*(track->GetTPCInnerParam()));
      if (tpcInnerC) {
        isOKtpcInnerC = ConstrainTPCInner(tpcInnerC,vtxESD,b);
        isOKtpcInnerC = tpcInnerC->Rotate(track->GetAlpha());
        isOKtpcInnerC = tpcInnerC->PropagateTo(track->GetX(),esdEvent->GetMagneticField());
      }

      //
      // Constrain TPC refitted tracks at inner TPC wall (InnerParams) to vertex  
      // Clone track InnerParams has to be deleted
      //
      Bool_t isOKtrackInnerC = kFALSE;
      AliExternalTrackParam * trackInnerC =  new AliExternalTrackParam(*(track->GetInnerParam()));
      if (trackInnerC) {
        isOKtrackInnerC = ConstrainTrackInner(trackInnerC,vtxESD,track->GetMass(),b);
        isOKtrackInnerC = trackInnerC->Rotate(track->GetAlpha());
        isOKtrackInnerC = trackInnerC->PropagateTo(track->GetX(),esdEvent->GetMagneticField());
      } 

      //
      // calculate chi2 between vi and vj vectors
      // with covi and covj covariance matrices
      // chi2ij = (vi-vj)^(T)*(covi+covj)^(-1)*(vi-vj)
      //
      TMatrixD deltaT(5,1), deltaTtrackC(5,1);
      TMatrixD delta(1,5),  deltatrackC(1,5);
      TMatrixD covarM(5,5), covarMtrackC(5,5);
      TMatrixD chi2(1,1);
      TMatrixD chi2trackC(1,1);

      if(isOKtpcInnerC && isOKtrackInnerC) 
      {
        for (Int_t ipar=0; ipar<5; ipar++) {
          deltaT(ipar,0)=tpcInnerC->GetParameter()[ipar]-track->GetParameter()[ipar];
          delta(0,ipar)=tpcInnerC->GetParameter()[ipar]-track->GetParameter()[ipar];

          deltaTtrackC(ipar,0)=trackInnerC->GetParameter()[ipar]-track->GetParameter()[ipar];
          deltatrackC(0,ipar)=trackInnerC->GetParameter()[ipar]-track->GetParameter()[ipar];

          for (Int_t jpar=0; jpar<5; jpar++) {
            Int_t index=track->GetIndex(ipar,jpar);
            covarM(ipar,jpar)=track->GetCovariance()[index]+tpcInnerC->GetCovariance()[index];
            covarMtrackC(ipar,jpar)=track->GetCovariance()[index]+trackInnerC->GetCovariance()[index];
          }
        }

        // chi2 distance TPC constrained and TPC+ITS
        TMatrixD covarMInv = covarM.Invert();
        TMatrixD mat2 = covarMInv*deltaT;
        chi2 = delta*mat2; 
        //chi2.Print();

        // chi2 distance TPC refitted constrained and TPC+ITS
        TMatrixD covarMInvtrackC = covarMtrackC.Invert();
        TMatrixD mat2trackC = covarMInvtrackC*deltaTtrackC;
        chi2trackC = deltatrackC*mat2trackC; 
        //chi2trackC.Print();
      }


      //
      // Propagate ITSout to TPC inner wall 
      // and calculate chi2 distance to track (InnerParams)
      //
      const Double_t kTPCRadius=85; 
      const Double_t kStep=3; 

      // clone track InnerParams has to be deleted
      Bool_t isOKtrackInnerC2 = kFALSE;
      AliExternalTrackParam *trackInnerC2 = new AliExternalTrackParam(*(track->GetInnerParam()));
      if (trackInnerC2) {
        isOKtrackInnerC2 = AliTracker::PropagateTrackToBxByBz(trackInnerC2,kTPCRadius,track->GetMass(),kStep,kFALSE);
      }

      Bool_t isOKouterITSc = kFALSE;
      AliExternalTrackParam *outerITSc = NULL;
      TMatrixD chi2OuterITS(1,1);

      if(esdFriend && !esdFriend->TestSkipBit()) 
      {
        // propagate ITSout to TPC inner wall
        if(friendTrack) 
        {

          outerITSc = NULL;
          if (friendTrack->GetITSOut()) outerITSc = new AliExternalTrackParam(*(friendTrack->GetITSOut()));
          if(outerITSc) 
          {
            isOKouterITSc = AliTracker::PropagateTrackToBxByBz(outerITSc,kTPCRadius,track->GetMass(),kStep,kFALSE);
            isOKouterITSc = outerITSc->Rotate(trackInnerC2->GetAlpha());
            isOKouterITSc = outerITSc->PropagateTo(trackInnerC2->GetX(),esdEvent->GetMagneticField());

            //
            // calculate chi2 between outerITS and innerParams
            // cov without z-coordinate at the moment
            //
            TMatrixD deltaTouterITS(4,1);
            TMatrixD deltaouterITS(1,4);
            TMatrixD covarMouterITS(4,4);

            if(isOKtrackInnerC2 && isOKouterITSc) {
              Int_t kipar = 0;
              Int_t kjpar = 0;
              for (Int_t ipar=0; ipar<5; ipar++) {
                if(ipar!=1) {
                  deltaTouterITS(kipar,0)=outerITSc->GetParameter()[ipar]-trackInnerC2->GetParameter()[ipar];
                  deltaouterITS(0,kipar)=outerITSc->GetParameter()[ipar]-trackInnerC2->GetParameter()[ipar];
                }

                kjpar=0;
                for (Int_t jpar=0; jpar<5; jpar++) {
                  Int_t index=outerITSc->GetIndex(ipar,jpar);
                  if(ipar !=1 || jpar!=1) {
                    covarMouterITS(kipar,kjpar)=outerITSc->GetCovariance()[index]+trackInnerC2->GetCovariance()[index];
                  }
                  if(jpar!=1)  kjpar++;
                }
                if(ipar!=1) kipar++;
              }

              // chi2 distance ITSout and InnerParams
              TMatrixD covarMInvouterITS = covarMouterITS.Invert();
              TMatrixD mat2outerITS = covarMInvouterITS*deltaTouterITS;
              chi2OuterITS = deltaouterITS*mat2outerITS; 
              //chi2OuterITS.Print();
            } 
          }
        }
      }

      //
      // MC info
      //
      TParticle *particle=NULL, *particleTPC=NULL, *particleITS=NULL;
      TParticle *particleMother=NULL, *particleMotherTPC=NULL, *particleMotherITS=NULL;
      Int_t mech=-1, mechTPC=-1, mechITS=-1;
      Bool_t isPrim=kFALSE, isPrimTPC=kFALSE, isPrimITS=kFALSE;
      Bool_t isFromStrangess=kFALSE, isFromStrangessTPC=kFALSE, isFromStrangessITS=kFALSE;
      Bool_t isFromConversion=kFALSE, isFromConversionTPC=kFALSE, isFromConversionITS=kFALSE;
      Bool_t isFromMaterial=kFALSE, isFromMaterialTPC=kFALSE, isFromMaterialITS=kFALSE;

      AliTrackReference *refTPCIn = NULL;
      AliTrackReference *refTPCOut = NULL;
      AliTrackReference *refITS = NULL;
      AliTrackReference *refTRD = NULL;
      AliTrackReference *refTOF = NULL;
      AliTrackReference *refEMCAL = NULL;
      AliTrackReference *refPHOS = NULL;
      Int_t nrefTPC=0, nrefTRD=0, nrefTOF=0, nrefITS=0, nrefEMCAL=0, nrefPHOS=0;

      Bool_t isOKtrackInnerC3 = kFALSE;
      AliExternalTrackParam *trackInnerC3 = new AliExternalTrackParam(*(track->GetInnerParam()));
      if(mcEvent && stack) 
      {
        do //artificial loop (once) to make the continue statements jump out of the MC part
        {
          multMCTrueTracks = GetMCTrueTrackMult(mcEvent,evtCuts,accCuts);
          //
          // global track
          //
          Int_t label = TMath::Abs(track->GetLabel()); 
          if (label >= mcStackSize) continue;
          particle = stack->Particle(label);
          if (!particle) continue;
          if(particle && particle->GetPDG() && particle->GetPDG()->Charge()!=0.)
          {
            particleMother = GetMother(particle,stack);
            mech = particle->GetUniqueID();
            isPrim = stack->IsPhysicalPrimary(label);
            isFromStrangess  = IsFromStrangeness(label,stack);
            isFromConversion = IsFromConversion(label,stack);
            isFromMaterial   = IsFromMaterial(label,stack);
          }

          //
          // TPC track
          //
          Int_t labelTPC = TMath::Abs(track->GetTPCLabel()); 
          if (labelTPC >= mcStackSize) continue;
          particleTPC = stack->Particle(labelTPC);
          if (!particleTPC) continue;
          if(particleTPC && particleTPC->GetPDG() && particleTPC->GetPDG()->Charge()!=0.)
          {
            particleMotherTPC = GetMother(particleTPC,stack);
            mechTPC = particleTPC->GetUniqueID();
            isPrimTPC = stack->IsPhysicalPrimary(labelTPC);
            isFromStrangessTPC  = IsFromStrangeness(labelTPC,stack);
            isFromConversionTPC = IsFromConversion(labelTPC,stack);
            isFromMaterialTPC   = IsFromMaterial(labelTPC,stack);
          }

          //
          // store first track reference
          // for TPC track
          //
          TParticle *part=0;
          TClonesArray *trefs=0;
          Int_t status = mcEvent->GetParticleAndTR(TMath::Abs(labelTPC), part, trefs);

          if(status>0 && part && trefs && part->GetPDG() && part->GetPDG()->Charge()!=0.) 
          {
            Int_t nTrackRef = trefs->GetEntries();
            //printf("nTrackRef %d \n",nTrackRef);

            Int_t countITS = 0;
            for (Int_t iref = 0; iref < nTrackRef; iref++) 
            {
              AliTrackReference *ref = (AliTrackReference *)trefs->At(iref);

              // Ref. in the middle ITS 
              if(ref && ref->Label()==label && ref->DetectorId()==AliTrackReference::kITS)
              {
                nrefITS++;
                if(!refITS && countITS==2) {
                  refITS = ref;
                  //printf("refITS %p \n",refITS);
                }
                countITS++;
              }

              // TPC
              if(ref && ref->Label()==label  && ref->DetectorId()==AliTrackReference::kTPC)
              {
                nrefTPC++;
                refTPCOut=ref;
                if(!refTPCIn) {
                  refTPCIn = ref;
                  //printf("refTPCIn %p \n",refTPCIn);
                  //break;
                }
              }
              // TRD
              if(ref && ref->Label()==label && ref->DetectorId()==AliTrackReference::kTRD)
              {
                nrefTRD++;
                if(!refTRD) {
                  refTRD = ref;
                }
              }
              // TOF
              if(ref && ref->Label()==label  && ref->DetectorId()==AliTrackReference::kTOF)
              {
                nrefTOF++;
                if(!refTOF) {
                  refTOF = ref;
                }
              }
              // EMCAL
              if(ref && ref->Label()==label  && ref->DetectorId()==AliTrackReference::kEMCAL)
              {
                nrefEMCAL++;
                if(!refEMCAL) {
                  refEMCAL = ref;
                }
              }
              // PHOS
              //            if(ref && ref->Label()==label  && ref->DetectorId()==AliTrackReference::kPHOS)
              //             {
              // 	      nrefPHOS++;
              // 	      if(!refPHOS) {
              // 	        refPHOS = ref;
              // 	      }
              //             }
            }

            // transform inner params to TrackRef
            // reference frame
            if(refTPCIn && trackInnerC3) 
            {
              Double_t kRefPhi = TMath::ATan2(refTPCIn->Y(),refTPCIn->X());
              isOKtrackInnerC3 = trackInnerC3->Rotate(kRefPhi);
              isOKtrackInnerC3 = AliTracker::PropagateTrackToBxByBz(trackInnerC3,refTPCIn->R(),track->GetMass(),kStep,kFALSE);
            }
          }

          //
          // ITS track
          //
          Int_t labelITS = TMath::Abs(track->GetITSLabel()); 
          if (labelITS >= mcStackSize) continue;
          particleITS = stack->Particle(labelITS);
          if (!particleITS) continue;
          if(particleITS && particleITS->GetPDG() && particleITS->GetPDG()->Charge()!=0.)
          {
            particleMotherITS = GetMother(particleITS,stack);
            mechITS = particleITS->GetUniqueID();
            isPrimITS = stack->IsPhysicalPrimary(labelITS);
            isFromStrangessITS  = IsFromStrangeness(labelITS,stack);
            isFromConversionITS = IsFromConversion(labelITS,stack);
            isFromMaterialITS   = IsFromMaterial(labelITS,stack);
          }
        }
        while (0);
      }

        //
        Bool_t dumpToTree=kFALSE;

        if(isOKtpcInnerC  && isOKtrackInnerC) dumpToTree = kTRUE;
        //if(fUseESDfriends && isOKtrackInnerC2 && isOKouterITSc) dumpToTree = kTRUE;
        if(isOKtrackInnerC2 && isOKouterITSc) dumpToTree = kTRUE;
        if(mcEvent && isOKtrackInnerC3) dumpToTree = kTRUE;
        TObjString triggerClass = esdEvent->GetFiredTriggerClasses().Data();
        if (fReducePileUp){  
          //
          // 18.03 - Reduce pile-up chunks, done outside of the ESDTrackCuts for 2012/2013 data pile-up about 95 % of tracks
          // Done only in case no MC info 
          //
          Float_t dcaTPC[2];
          track->GetImpactParametersTPC(dcaTPC[0],dcaTPC[1]);
          Bool_t isRoughPrimary = TMath::Abs(dcaTPC[1])<10;
          Bool_t hasOuter=(track->IsOn(AliVTrack::kITSin))||(track->IsOn(AliVTrack::kTOFout))||(track->IsOn(AliVTrack::kTRDin));
          Bool_t keepPileUp=gRandom->Rndm()<0.05;
          if ( (!hasOuter) && (!isRoughPrimary) && (!keepPileUp)){
            dumpToTree=kFALSE;
          }
        }

        //init dummy objects
        static AliESDVertex dummyvtxESD;
        //if (!dummyvtxESD) 
        //{
        //  dummyvtxESD=new AliESDVertex();
        //  //dummyvtxESD->SetNContributors(1);
        //  //UShort_t pindices[1]; pindices[0]=0;
        //  //dummyvtxESD->SetIndices(1,pindices);
        //  //dummyvtxESD->SetNContributors(0);
        //}
        static AliExternalTrackParam dummyexternaltrackparam;
        //if (!dummyexternaltrackparam) dummyexternaltrackparam=new AliExternalTrackParam();
        static AliTrackReference dummytrackreference;
        //if (!dummytrackreference) dummytrackreference=new AliTrackReference();
        static TParticle dummyparticle;
        //if (!dummyparticle) dummyparticle=new TParticle();

        //assign the dummy objects if needed
        if (!track) {track=fDummyTrack;}
	AliESDfriendTrack *friendTrackStore=friendTrack;    // store friend track for later processing
	if (fFriendDownscaling>=1){  // downscaling number of friend tracks
	  friendTrackStore = (gRandom->Rndm()<1./fFriendDownscaling)? friendTrack:0;
	}
	if (fFriendDownscaling<=0){
	  if (((*fTreeSRedirector)<<"highPt").GetTree()){
	    TTree * tree = ((*fTreeSRedirector)<<"highPt").GetTree();
	    if (tree){
	      Double_t sizeAll=tree->GetZipBytes();
	      TBranch * br= tree->GetBranch("friendTrack.fPoints");
	      Double_t sizeFriend=(br!=NULL)?br->GetZipBytes():0;
	      br= tree->GetBranch("friendTrack.fCalibContainer");
	      if (br) sizeFriend+=br->GetZipBytes();
	      if (sizeFriend*TMath::Abs(fFriendDownscaling)>sizeAll) friendTrackStore=0;
	    }
	  }
	}


	//        if (!friendTrackStore && fFriendDownscaling<=1) {friendTrack=fDummyFriendTrack;}
        if (!vtxESD) {vtxESD=&dummyvtxESD;}
        if (mcEvent)
        {
          if (!refTPCIn) {refTPCIn=&dummytrackreference;}
          if (!refITS) {refITS=&dummytrackreference;}
          if (!particle) {particle=&dummyparticle;}
          if (!particleMother) {particleMother=&dummyparticle;}
          if (!particleTPC) {particleTPC=&dummyparticle;}
          if (!particleMotherTPC) {particleMotherTPC=&dummyparticle;}
          if (!particleITS) {particleITS=&dummyparticle;}
          if (!particleMotherITS) {particleMotherITS=&dummyparticle;}
        }

        Int_t ntracks = esdEvent->GetNumberOfTracks();

        // Global event id calculation using orbitID, bunchCrossingID and periodID 
        ULong64_t orbitID      = (ULong64_t)esdEvent->GetOrbitNumber();
        ULong64_t bunchCrossID = (ULong64_t)esdEvent->GetBunchCrossNumber();
        ULong64_t periodID     = (ULong64_t)esdEvent->GetPeriodNumber();
        ULong64_t gid          = ((periodID << 36) | (orbitID << 12) | bunchCrossID); 

        // fill histograms
        FillHistograms(track, tpcInnerC, centralityF, (Double_t)chi2(0,0));

        if(fTreeSRedirector && dumpToTree && fFillTree) {
          (*fTreeSRedirector)<<"highPt"<<
            "gid="<<gid<<
            "fileName.="<<&fCurrentFileName<<                // name of the chunk file (hopefully full)
            "runNumber="<<runNumber<<                // runNumber
            "evtTimeStamp="<<evtTimeStamp<<          // time stamp of event (in seconds)
            "evtNumberInFile="<<evtNumberInFile<<    // event number
            "triggerClass="<<&triggerClass<<         // trigger class as a string
            "Bz="<<bz<<                              // solenoid magnetic field in the z direction (in kGaus)
            "vtxESD.="<<vtxESD<<                    // vertexer ESD tracks (can be biased by TPC pileup tracks)
            "IRtot="<<ir1<<                         // interaction record (trigger) counters - coutner 1
            "IRint2="<<ir2<<                        // interaction record (trigger) coutners - counter 2
            "mult="<<mult<<                         // multiplicity of tracks pointing to the primary vertex
            "ntracks="<<ntracks<<                   // number of the esd tracks (to take into account the pileup in the TPC)
            //                                           important variables for the pile-up studies
            "contTPC="<< contTPC<<                    // number of contributors to the TPC primary vertex candidate
            "contSPD="<< contSPD<<                    // number of contributors to the SPD primary vertex candidate
            "vertexPosTPC.="<<&vertexPosTPC<<          // TPC vertex position
            "vertexPosSPD.="<<&vertexPosSPD<<          // SPD vertex position
            "ntracksTPC="<<ntracksTPC<<               // total number of the TPC tracks which were refitted
            "ntracksITS="<<ntracksITS<<               // total number of the ITS tracks which were refitted
            //
            "esdTrack.="<<track<<                  // esdTrack as used in the physical analysis
	    //            "friendTrack.="<<friendTrack<<      // esdFriendTrack associated to the esdTrack
            "friendTrack.="<<friendTrackStore<<      // esdFriendTrack associated to the esdTrack
            "extTPCInnerC.="<<tpcInnerC<<          // ??? 
            "extInnerParamC.="<<trackInnerC<<      // ???
            "extInnerParam.="<<trackInnerC2<<      // ???
            "extOuterITS.="<<outerITSc<<           // ???
            "extInnerParamRef.="<<trackInnerC3<<   // ???
            "chi2TPCInnerC="<<chi2(0,0)<<           // chi2   of tracks ???
            "chi2InnerC="<<chi2trackC(0,0)<<        // chi2s  of tracks TPCinner to the combined
            "chi2OuterITS="<<chi2OuterITS(0,0)<<    // chi2s  of tracks TPC at inner wall to the ITSout
            "centralityF="<<centralityF;
          if (mcEvent){
            static AliTrackReference refDummy;
            if (!refITS) refITS = &refDummy;
            if (!refTRD) refTRD = &refDummy;
            if (!refTOF) refTOF = &refDummy;
            if (!refEMCAL) refEMCAL = &refDummy;
            if (!refPHOS) refPHOS = &refDummy;
            (*fTreeSRedirector)<<"highPt"<<	
              "multMCTrueTracks="<<multMCTrueTracks<<   // mC track multiplicities
              "nrefITS="<<nrefITS<<              // number of track references in the ITS
              "nrefTPC="<<nrefTPC<<              // number of track references in the TPC
              "nrefTRD="<<nrefTRD<<              // number of track references in the TRD
              "nrefTOF="<<nrefTOF<<              // number of track references in the TOF
              "nrefEMCAL="<<nrefEMCAL<<              // number of track references in the TOF
              "nrefPHOS="<<nrefPHOS<<              // number of track references in the TOF
              "refTPCIn.="<<refTPCIn<<
              "refTPCOut.="<<refTPCOut<<
              "refITS.="<<refITS<<	    
              "refTRD.="<<refTRD<<	    
              "refTOF.="<<refTOF<<	    
              "refEMCAL.="<<refEMCAL<<	    
              "refPHOS.="<<refPHOS<<	    
              "particle.="<<particle<<
              "particleMother.="<<particleMother<<
              "mech="<<mech<<
              "isPrim="<<isPrim<<
              "isFromStrangess="<<isFromStrangess<<
              "isFromConversion="<<isFromConversion<<
              "isFromMaterial="<<isFromMaterial<<
              "particleTPC.="<<particleTPC<<
              "particleMotherTPC.="<<particleMotherTPC<<
              "mechTPC="<<mechTPC<<
              "isPrimTPC="<<isPrimTPC<<
              "isFromStrangessTPC="<<isFromStrangessTPC<<
              "isFromConversionTPC="<<isFromConversionTPC<<
              "isFromMaterialTPC="<<isFromMaterialTPC<<
              "particleITS.="<<particleITS<<
              "particleMotherITS.="<<particleMotherITS<<
              "mechITS="<<mechITS<<
              "isPrimITS="<<isPrimITS<<
              "isFromStrangessITS="<<isFromStrangessITS<<
              "isFromConversionITS="<<isFromConversionITS<<
              "isFromMaterialITS="<<isFromMaterialITS;
          }
          //finish writing the entry
          AliInfo("writing tree highPt");
          (*fTreeSRedirector)<<"highPt"<<"\n";
        }
        AliSysInfo::AddStamp("filteringTask",iTrack,numberOfTracks,numberOfFriendTracks,(friendTrackStore)?0:1);
        delete tpcInnerC;
        delete trackInnerC;
        delete trackInnerC2;
        delete outerITSc;
        delete trackInnerC3;
      }
  }
}


//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::ProcessMCEff(AliESDEvent *const esdEvent, AliMCEvent * const mcEvent, AliESDfriend *const /*esdFriend*/)
{
  //
  // Fill tree for efficiency studies MC only
  AliInfo("we start!");
  if(!mcEvent) {
    AliDebug(AliLog::kError, "mcEvent not available");
    return;
  }

  // get selection cuts
  AliFilteredTreeEventCuts *evtCuts = GetEventCuts(); 
  AliFilteredTreeAcceptanceCuts *accCuts = GetAcceptanceCuts(); 
  AliESDtrackCuts *esdTrackCuts = GetTrackCuts(); 

  if(!evtCuts || !accCuts  || !esdTrackCuts) {
    AliDebug(AliLog::kError, "cuts not available");
    return;
  }

  // trigger selection
  Bool_t isEventTriggered = kTRUE;
  AliPhysicsSelection *physicsSelection = NULL;
  AliTriggerAnalysis* triggerAnalysis = NULL;

  // 
  AliInputEventHandler* inputHandler = (AliInputEventHandler*) AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler();


  // trigger
  if(evtCuts->IsTriggerRequired())  
  {
    // always MB
    isEventTriggered = inputHandler->IsEventSelected() & AliVEvent::kMB;
    physicsSelection = static_cast<AliPhysicsSelection*> (inputHandler->GetEventSelection());
    if(!physicsSelection) return;

    if (isEventTriggered && (GetTrigger() == AliTriggerAnalysis::kV0AND)) {
      // set trigger (V0AND)
      triggerAnalysis = physicsSelection->GetTriggerAnalysis();
      if(!triggerAnalysis) return;
      isEventTriggered = triggerAnalysis->IsOfflineTriggerFired(esdEvent, GetTrigger());
    }
  }

  // centrality determination
  Float_t centralityF = -1;
  AliCentrality *esdCentrality = esdEvent->GetCentrality();
  centralityF = esdCentrality->GetCentralityPercentile(fCentralityEstimator.Data());

  // use MC information
  AliHeader* header = 0;
  AliGenEventHeader* genHeader = 0;
  AliStack* stack = 0;
  Int_t mcStackSize=0;
  TArrayF vtxMC(3);

  Int_t multMCTrueTracks = 0;
  //
  if(!mcEvent) {
    AliDebug(AliLog::kError, "mcEvent not available");
    return;
  }
  // get MC event header
  header = mcEvent->Header();
  if (!header) {
    AliDebug(AliLog::kError, "Header not available");
    return;
  }
  // MC particle stack
  stack = mcEvent->Stack();
  if (!stack) {
    AliDebug(AliLog::kError, "Stack not available");
    return;
  }
  mcStackSize=stack->GetNtrack();

  // get MC vertex
  genHeader = header->GenEventHeader();
  if (!genHeader) {
    AliDebug(AliLog::kError, "Could not retrieve genHeader from Header");
    return;
  }
  genHeader->PrimaryVertex(vtxMC);

  // multipliticy of all MC primary tracks
  // in Zv, pt and eta ranges)
  multMCTrueTracks = GetMCTrueTrackMult(mcEvent,evtCuts,accCuts);


  // get reconstructed vertex  
  //const AliESDVertex* vtxESD = 0; 
  AliESDVertex* vtxESD = 0; 
  if(GetAnalysisMode() == kTPCAnalysisMode) {
    vtxESD = (AliESDVertex*)esdEvent->GetPrimaryVertexTPC();
  }
  else if(GetAnalysisMode() == kTPCITSAnalysisMode) {
    vtxESD = (AliESDVertex*)esdEvent->GetPrimaryVertexTracks();
  }
  else {
    return;
  }

  if(!vtxESD) return;   
  //
  // Vertex info comparison and track multiplicity
  //
  AliESDVertex *vertexSPD =  (AliESDVertex *)esdEvent->GetPrimaryVertexSPD();
  AliESDVertex *vertexTPC =  (AliESDVertex *)esdEvent->GetPrimaryVertexTPC(); 
  Int_t contSPD = vertexSPD->GetNContributors();
  Int_t contTPC = vertexTPC->GetNContributors();        
  TVectorD vertexPosTPC(3), vertexPosSPD(3);
  vertexSPD->GetXYZ(vertexPosSPD.GetMatrixArray());
  vertexTPC->GetXYZ(vertexPosTPC.GetMatrixArray());
  Int_t ntracksTPC=0;
  Int_t ntracksITS=0;
  for (Int_t iTrack = 0; iTrack < esdEvent->GetNumberOfTracks(); iTrack++){
    AliESDtrack *track = esdEvent->GetTrack(iTrack);    
    if(!track) continue;
    if (track->IsOn(AliVTrack::kTPCrefit)) ntracksTPC++;
    if (track->IsOn(AliVTrack::kITSrefit)) ntracksITS++;
  }

  Bool_t isEventOK = evtCuts->AcceptEvent(esdEvent,mcEvent,vtxESD); 
  //printf("isEventOK %d, isEventTriggered %d \n",isEventOK, isEventTriggered);
  //printf("GetAnalysisMode() %d \n",GetAnalysisMode());

  TObjString triggerClass = esdEvent->GetFiredTriggerClasses().Data();

  // check event cuts
  if(isEventOK && isEventTriggered)
  {
    //if(!stack) return;

    //
    // MC info
    //
    TParticle *particle=NULL;
    TParticle *particleMother=NULL;
    Int_t mech=-1;

    // reco event info
    Double_t vert[3] = {0}; 
    vert[0] = vtxESD->GetX();
    vert[1] = vtxESD->GetY();
    vert[2] = vtxESD->GetZ();
    Int_t mult = vtxESD->GetNContributors();
    Double_t bz = esdEvent->GetMagneticField();
    Double_t runNumber = esdEvent->GetRunNumber();
    Double_t evtTimeStamp = esdEvent->GetTimeStamp();
    Int_t evtNumberInFile = esdEvent->GetEventNumberInFile();
    // loop over MC stack
    for (Int_t iMc = 0; iMc < mcStackSize; ++iMc) 
    {
      particle = stack->Particle(iMc);
      if (!particle)
        continue;

      // only charged particles
      if(!particle->GetPDG()) continue;
      Double_t charge = particle->GetPDG()->Charge()/3.;
      if (TMath::Abs(charge) < 0.001)
        continue;

      // only primary particles
      Bool_t prim = stack->IsPhysicalPrimary(iMc);
      if(!prim) continue;

      // downscale low-pT particles
      Double_t scalempt= TMath::Min(particle->Pt(),10.);
      Double_t downscaleF = gRandom->Rndm();
      downscaleF *= fLowPtTrackDownscaligF;
      if(TMath::Exp(2*scalempt)<downscaleF) continue;

      // is particle in acceptance
      if(!accCuts->AcceptTrack(particle)) continue;

      // check if particle reconstructed
      Bool_t isRec = kFALSE;
      Int_t trackIndex = -1;  
      Int_t trackLoopIndex = -1;  
      Int_t isESDtrackCut= 0;
      Int_t isAccCuts    = 0;
      Int_t nRec = 0;    // how many times reconstructed 
      Int_t nFakes = 0;  // how many times reconstructed as a fake track
      AliESDtrack *recTrack = NULL; 

      for (Int_t iTrack = 0; iTrack < esdEvent->GetNumberOfTracks(); iTrack++)
      {
        AliESDtrack *track = esdEvent->GetTrack(iTrack);
        if(!track) continue;
        if(track->Charge()==0) continue;
        //
        Int_t label =  TMath::Abs(track->GetLabel());
        if (label >= mcStackSize) continue;
        if(label == iMc) {	  
          Bool_t isAcc=esdTrackCuts->AcceptTrack(track);
          if (isAcc) isESDtrackCut=1;
          if (accCuts->AcceptTrack(track)) isAccCuts=1;
          isRec = kTRUE;
          trackIndex = iTrack;

          if (recTrack){
            if (track->GetTPCncls()<recTrack->GetTPCncls()) continue; // in case looper tracks use longer track
            if (!isAcc) continue;
            trackLoopIndex = iTrack;
          }
          recTrack = esdEvent->GetTrack(trackIndex); 
          nRec++;
          if(track->GetLabel()<0) nFakes++;

          continue;
        }        
      }

      // Store information in the output tree
      if (trackLoopIndex>-1)  { 
        recTrack = esdEvent->GetTrack(trackLoopIndex); 
      } else if (trackIndex >-1) {
        recTrack = esdEvent->GetTrack(trackIndex); 
      } else {
        recTrack = fDummyTrack; 
      } 

      particleMother = GetMother(particle,stack);
      mech = particle->GetUniqueID();

      //MC particle track length
      Double_t tpcTrackLength = 0.;
      AliMCParticle *mcParticle = (AliMCParticle*) mcEvent->GetTrack(iMc);
      if(mcParticle) {
        Int_t counter;
        tpcTrackLength = mcParticle->GetTPCTrackLength(bz,0.05,counter,3.0);
      } 


      //
      if(fTreeSRedirector && fFillTree) {
        (*fTreeSRedirector)<<"MCEffTree"<<
          "fileName.="<<&fCurrentFileName<<
          "triggerClass.="<<&triggerClass<<
          "runNumber="<<runNumber<<
          "evtTimeStamp="<<evtTimeStamp<<
          "evtNumberInFile="<<evtNumberInFile<<     // 
          "Bz="<<bz<<                               // magnetic field
          "vtxESD.="<<vtxESD<<                      // vertex info
          //
          "mult="<<mult<<                           // primary vertex 9whatewe found) multiplicity
          "multMCTrueTracks="<<multMCTrueTracks<<   // mC track multiplicities
          //                                           important variables for the pile-up studies
          "contTPC="<< contTPC<<                    // number of contributors to the TPC primary vertex candidate
          "contSPD="<< contSPD<<                    // number of contributors to the SPD primary vertex candidate
          "vertexPosTPC.="<<&vertexPosTPC<<          // TPC vertex position
          "vertexPosSPD.="<<&vertexPosSPD<<          // SPD vertex position
          "ntracksTPC="<<ntracksTPC<<               // total number of the TPC tracks which were refitted
          "ntracksITS="<<ntracksITS<<               // total number of the ITS tracks which were refitted
          //
          //
          "isAcc0="<<isESDtrackCut<<                // track accepted by ESD track cuts
          "isAcc1="<<isAccCuts<<                    // track accepted by acceptance cuts flag
          "esdTrack.="<<recTrack<<                  // reconstructed track (only the longest from the loopers)
          "isRec="<<isRec<<                         // track was reconstructed
          "tpcTrackLength="<<tpcTrackLength<<       // track length in the TPC r projection
          "particle.="<<particle<<                  // particle properties
          "particleMother.="<<particleMother<<      // particle mother
          "mech="<<mech<<                           // production mechanizm
          "nRec="<<nRec<<                           // how many times reconstruted
          "nFakes="<<nFakes<<                       // how many times reconstructed as a fake track
          "\n";
      }

      //if(trackIndex <0 && recTrack) delete recTrack; recTrack=0;
    }
  }

}

//_____________________________________________________________________________
Bool_t AliAnalysisTaskFilteredTree::IsHighDeDxParticle(AliESDtrack * track) {
  //
  // check if particle is Z > 1 
  //
  if (track->GetTPCNcls() < 60) return kFALSE;
  Double_t mom = track->GetInnerParam()->GetP();
  if (mom < 0.2) return kFALSE; // protection against unexpected behavior of Aleph parameterization
  Float_t dca[2], bCov[3];
  track->GetImpactParameters(dca,bCov);
  //

  Double_t triggerDeDx = 4*AliExternalTrackParam::BetheBlochAleph((mom*2)/(0.938*3),1.0288,31.9806,5.04114e-11,2.13096,2.38541);

  if (track->GetTPCsignal() > triggerDeDx && track->GetTPCsignal()<1000 && TMath::Abs(dca[0])<3.) return kTRUE;

  return kFALSE;
}

//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::ProcessV0(AliESDEvent *const esdEvent, AliMCEvent * const mcEvent, AliESDfriend *const esdFriend)
{
  //
  // Select real events with V0 (K0s and Lambda and Gamma) high-pT candidates
  //
  if(!esdEvent) {
    AliDebug(AliLog::kError, "esdEvent not available");
    return;
  }

  // get selection cuts
  AliFilteredTreeEventCuts *evtCuts = GetEventCuts(); 
  AliFilteredTreeAcceptanceCuts *accCuts = GetAcceptanceCuts(); 
  AliESDtrackCuts *esdTrackCuts = GetTrackCuts(); 

  if(!evtCuts || !accCuts  || !esdTrackCuts) {
    AliDebug(AliLog::kError, "cuts not available");
    return;
  }

  // trigger selection
  Bool_t isEventTriggered = kTRUE;
  AliPhysicsSelection *physicsSelection = NULL;
  AliTriggerAnalysis* triggerAnalysis = NULL;

  // 
  AliInputEventHandler* inputHandler = (AliInputEventHandler*) AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler();

  // trigger
  if(evtCuts->IsTriggerRequired())  
  {
    // always MB
    isEventTriggered = inputHandler->IsEventSelected() & AliVEvent::kMB;

    physicsSelection = static_cast<AliPhysicsSelection*> (inputHandler->GetEventSelection());
    if(!physicsSelection) return;
    //SetPhysicsTriggerSelection(physicsSelection);

    if (isEventTriggered && (GetTrigger() == AliTriggerAnalysis::kV0AND)) {
      // set trigger (V0AND)
      triggerAnalysis = physicsSelection->GetTriggerAnalysis();
      if(!triggerAnalysis) return;
      isEventTriggered = triggerAnalysis->IsOfflineTriggerFired(esdEvent, GetTrigger());
    }
  }

  // centrality determination
  Float_t centralityF = -1;
  AliCentrality *esdCentrality = esdEvent->GetCentrality();
  centralityF = esdCentrality->GetCentralityPercentile(fCentralityEstimator.Data());


  // get reconstructed vertex  
  //const AliESDVertex* vtxESD = 0; 
  AliESDVertex* vtxESD = 0; 
  if(GetAnalysisMode() == kTPCAnalysisMode) {
    vtxESD = (AliESDVertex*)esdEvent->GetPrimaryVertexTPC();
  }
  else if(GetAnalysisMode() == kTPCITSAnalysisMode) {
    vtxESD = (AliESDVertex*)esdEvent->GetPrimaryVertexTracks();
  }
  else {
    return;
  }

  if(!vtxESD) return;

  Bool_t isEventOK = evtCuts->AcceptEvent(esdEvent,mcEvent,vtxESD); 
  //printf("isEventOK %d, isEventTriggered %d \n",isEventOK, isEventTriggered);
  //printf("GetAnalysisMode() %d \n",GetAnalysisMode());

  // check event cuts
  if(isEventOK && isEventTriggered) {
    //
    // Dump the pt downscaled V0 into the tree
    // 
    Int_t ntracks = esdEvent->GetNumberOfTracks();
    Int_t nV0s = esdEvent->GetNumberOfV0s();
    Int_t run = esdEvent->GetRunNumber();
    Int_t time= esdEvent->GetTimeStamp();
    Int_t evNr=esdEvent->GetEventNumberInFile();
    Double_t bz = esdEvent->GetMagneticField();

    // Global event id calculation using orbitID, bunchCrossingID and periodID
    ULong64_t orbitID      = (ULong64_t)esdEvent->GetOrbitNumber();
    ULong64_t bunchCrossID = (ULong64_t)esdEvent->GetBunchCrossNumber();
    ULong64_t periodID     = (ULong64_t)esdEvent->GetPeriodNumber();
    ULong64_t gid          = ((periodID << 36) | (orbitID << 12) | bunchCrossID);


    for (Int_t iv0=0; iv0<nV0s; iv0++){
 
      AliESDv0 * v0 = esdEvent->GetV0(iv0);
      if (!v0) continue;
      AliESDtrack * track0 = esdEvent->GetTrack(v0->GetIndex(0));
      AliESDtrack * track1 = esdEvent->GetTrack(v0->GetIndex(1));
      if (!track0) continue;
      if (!track1) continue;
      AliESDfriendTrack* friendTrack0=NULL;
      AliESDfriendTrack* friendTrack1=NULL;
      if (esdFriend)       {
        if (!esdFriend->TestSkipBit()){
	  Int_t ntracksFriend = esdFriend->GetNumberOfTracks();
	  if (v0->GetIndex(0)<ntracksFriend){
	    friendTrack0 = esdFriend->GetTrack(v0->GetIndex(0)); //this guy can be NULL
	  }
	  if (v0->GetIndex(1)<ntracksFriend){
	    friendTrack1 = esdFriend->GetTrack(v0->GetIndex(1)); //this guy can be NULL
	  }
        }
      }
      if (track0->GetSign()<0) {
        track1 = esdEvent->GetTrack(v0->GetIndex(0));
        track0 = esdEvent->GetTrack(v0->GetIndex(1));
      }

      //
      AliESDfriendTrack *friendTrackStore0=friendTrack0;    // store friend track0 for later processing
      AliESDfriendTrack *friendTrackStore1=friendTrack1;    // store friend track1 for later processing
      if (fFriendDownscaling>=1){  // downscaling number of friend tracks
	if (gRandom->Rndm()>1./fFriendDownscaling){
	  friendTrackStore0 = 0;
	  friendTrackStore1 = 0;
	}
      }
      if (fFriendDownscaling<=0){
	if (((*fTreeSRedirector)<<"V0s").GetTree()){
	  TTree * tree = ((*fTreeSRedirector)<<"V0s").GetTree();
	  if (tree){
	    Double_t sizeAll=tree->GetZipBytes();
	    TBranch * br= tree->GetBranch("friendTrack0.fPoints");
	    Double_t sizeFriend=(br!=NULL)?br->GetZipBytes():0;
	    br= tree->GetBranch("friendTrack0.fCalibContainer");
	    if (br) sizeFriend+=br->GetZipBytes();
	    if (sizeFriend*TMath::Abs(fFriendDownscaling)>sizeAll) {
	      friendTrackStore0=0;
	      friendTrackStore1=0;
	    }
	  }
	}
      }

      //
      Bool_t isDownscaled = IsV0Downscaled(v0);
      if (isDownscaled) continue;
      AliKFParticle kfparticle; //
      Int_t type=GetKFParticle(v0,esdEvent,kfparticle);
      if (type==0) continue;   
      TObjString triggerClass = esdEvent->GetFiredTriggerClasses().Data();

      if(!fFillTree) return;
      if(!fTreeSRedirector) return;
      (*fTreeSRedirector)<<"V0s"<<
        "gid="<<gid<<                         //  global id of event
        "isDownscaled="<<isDownscaled<<       //  
        "triggerClass="<<&triggerClass<<      //  trigger
        "Bz="<<bz<<                           //
        "fileName.="<<&fCurrentFileName<<     //  full path - file name with ESD
        "runNumber="<<run<<                   //
        "evtTimeStamp="<<time<<               //  time stamp of event in secons
        "evtNumberInFile="<<evNr<<            //  
        "type="<<type<<                       // type of V0-
        "ntracks="<<ntracks<<
        "v0.="<<v0<<
        "kf.="<<&kfparticle<<
        "track0.="<<track0<<                  // track
        "track1.="<<track1<<
        "friendTrack0.="<<friendTrackStore0<<
        "friendTrack1.="<<friendTrackStore1<<
        "centralityF="<<centralityF<<
        "\n";
    }
  }
}

//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::ProcessdEdx(AliESDEvent *const esdEvent, AliMCEvent * const mcEvent, AliESDfriend *const esdFriend)
{
  //
  // Select real events with large TPC dEdx signal
  //
  if(!esdEvent) {
    AliDebug(AliLog::kError, "esdEvent not available");
    return;
  }

  // get selection cuts
  AliFilteredTreeEventCuts *evtCuts = GetEventCuts(); 
  AliFilteredTreeAcceptanceCuts *accCuts = GetAcceptanceCuts(); 
  AliESDtrackCuts *esdTrackCuts = GetTrackCuts(); 

  if(!evtCuts || !accCuts  || !esdTrackCuts) {
    AliDebug(AliLog::kError, "cuts not available");
    return;
  }


  // trigger
  Bool_t isEventTriggered = kTRUE;
  AliPhysicsSelection *physicsSelection = NULL;
  AliTriggerAnalysis* triggerAnalysis = NULL;

  // 
  AliInputEventHandler* inputHandler = (AliInputEventHandler*) AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler();

  if(evtCuts->IsTriggerRequired())  
  {
    // always MB
    isEventTriggered = inputHandler->IsEventSelected() & AliVEvent::kMB;

    physicsSelection = static_cast<AliPhysicsSelection*> (inputHandler->GetEventSelection());
    if(!physicsSelection) return;

    if (isEventTriggered && (GetTrigger() == AliTriggerAnalysis::kV0AND)) {
      // set trigger (V0AND)
      triggerAnalysis = physicsSelection->GetTriggerAnalysis();
      if(!triggerAnalysis) return;
      isEventTriggered = triggerAnalysis->IsOfflineTriggerFired(esdEvent, GetTrigger());
    }
  }

  // get reconstructed vertex  
  AliESDVertex* vtxESD = 0; 
  if(GetAnalysisMode() == kTPCAnalysisMode) {
    vtxESD = (AliESDVertex*)esdEvent->GetPrimaryVertexTPC();
  }
  else if(GetAnalysisMode() == kTPCITSAnalysisMode) {
    vtxESD = (AliESDVertex*)esdEvent->GetPrimaryVertexTracks();
  }
  else {
    return;
  }
  if(!vtxESD) return;

  Bool_t isEventOK = evtCuts->AcceptEvent(esdEvent,mcEvent,vtxESD); 
  //printf("isEventOK %d, isEventTriggered %d \n",isEventOK, isEventTriggered);
  //printf("GetAnalysisMode() %d \n",GetAnalysisMode());


  // check event cuts
  if(isEventOK && isEventTriggered)
  {
    Double_t vert[3] = {0}; 
    vert[0] = vtxESD->GetX();
    vert[1] = vtxESD->GetY();
    vert[2] = vtxESD->GetZ();
    Int_t mult = vtxESD->GetNContributors();
    Double_t bz = esdEvent->GetMagneticField();
    Double_t runNumber = esdEvent->GetRunNumber();
    Double_t evtTimeStamp = esdEvent->GetTimeStamp();
    Int_t evtNumberInFile = esdEvent->GetEventNumberInFile();
   
    // Global event id calculation using orbitID, bunchCrossingID and periodID 
    ULong64_t orbitID      = (ULong64_t)esdEvent->GetOrbitNumber();
    ULong64_t bunchCrossID = (ULong64_t)esdEvent->GetBunchCrossNumber();
    ULong64_t periodID     = (ULong64_t)esdEvent->GetPeriodNumber();
    ULong64_t gid          = ((periodID << 36) | (orbitID << 12) | bunchCrossID); 
    
    // large dEdx
    for (Int_t iTrack = 0; iTrack < esdEvent->GetNumberOfTracks(); iTrack++)
    {
      AliESDtrack *track = esdEvent->GetTrack(iTrack);
      if(!track) continue;
      AliESDfriendTrack* friendTrack=NULL;
      if (esdFriend && !esdFriend->TestSkipBit()) {
	Int_t ntracksFriend = esdFriend->GetNumberOfTracks();
	if (iTrack<ntracksFriend){
	  friendTrack = esdFriend->GetTrack(iTrack);
	} //this guy can be NULL	
      }
      
      if(track->Charge()==0) continue;
      if(!esdTrackCuts->AcceptTrack(track)) continue;
      if(!accCuts->AcceptTrack(track)) continue;

      if(!IsHighDeDxParticle(track)) continue;
      TObjString triggerClass = esdEvent->GetFiredTriggerClasses().Data();

      if(!fFillTree) return;
      if(!fTreeSRedirector) return;
      (*fTreeSRedirector)<<"dEdx"<<           // high dEdx tree
        "gid="<<gid<<                         // global id
        "fileName.="<<&fCurrentFileName<<     // file name
        "runNumber="<<runNumber<<
        "evtTimeStamp="<<evtTimeStamp<<
        "evtNumberInFile="<<evtNumberInFile<<
        "triggerClass="<<&triggerClass<<      //  trigger
        "Bz="<<bz<<
        "vtxESD.="<<vtxESD<<                  // 
        "mult="<<mult<<
        "esdTrack.="<<track<<
        "friendTrack.="<<friendTrack<<
        "\n";
    }
  }
}

//_____________________________________________________________________________
Int_t   AliAnalysisTaskFilteredTree::GetKFParticle(AliESDv0 *const v0, AliESDEvent * const event, AliKFParticle & kfparticle)
{
  //
  // Create KF particle in case the V0 fullfill selection criteria
  //
  // Selection criteria
  //  0. algorithm cut
  //  1. track cut
  //  3. chi2 cut
  //  4. rough mass cut
  //  5. Normalized pointing angle cut
  //
  const Double_t cutMass=0.2;
  const Double_t kSigmaDCACut=3;
  //
  // 0.) algo cut - accept only on the fly
  //
  if (v0->GetOnFlyStatus() ==kFALSE) return 0;     
  //
  // 1.) track cut
  // 
  AliESDtrack * track0 = event->GetTrack(v0->GetIndex(0));
  AliESDtrack * track1 = event->GetTrack(v0->GetIndex(1));
  /*
     TCut cutD="abs(track0.fD/sqrt(track0.fCdd))>2&&abs(track1.fD/sqrt(track1.fCdd))>2";
     TCut cutTheta="abs(track0.fP[3])<1&&abs(track1.fP[3])<1";
     TCut cutNcl="track0.GetTPCClusterInfo(2,1)>100&&track1.GetTPCClusterInfo(2,1)>100";
     */  
  if (TMath::Abs(track0->GetTgl())>1) return 0;
  if (TMath::Abs(track1->GetTgl())>1) return 0;
  if ((track0->GetTPCClusterInfo(2,1))<100) return 0;
  if ((track1->GetTPCClusterInfo(2,1))<100) return 0;
  Float_t pos0[2]={0}, cov0[3]={0};
  Float_t pos1[2]={0}, cov1[3]={0};
  track0->GetImpactParameters(pos0,cov0);
  track0->GetImpactParameters(pos1,cov1);
  //
  if (TMath::Abs(pos0[0])<kSigmaDCACut*TMath::Sqrt(cov0[0])) return 0;
  if (TMath::Abs(pos1[0])<kSigmaDCACut*TMath::Sqrt(cov1[0])) return 0;
  // 
  //
  // 3.) Chi2 cut
  //
  Double_t chi2KF = v0->GetKFInfo(2,2,2);
  if (chi2KF>25) return 0;
  //
  // 4.) Rough mass cut - 0.200 GeV
  //
  static Double_t masses[2]={-1};
  if (masses[0]<0){
    masses[0] = TDatabasePDG::Instance()->GetParticle("K_S0")->Mass();
    masses[1] = TDatabasePDG::Instance()->GetParticle("Lambda0")->Mass();
  }
  Double_t mass00=  v0->GetEffMass(0,0);
  Double_t mass22=  v0->GetEffMass(2,2);
  Double_t mass42=  v0->GetEffMass(4,2);
  Double_t mass24=  v0->GetEffMass(2,4);
  Bool_t massOK=kFALSE;
  Int_t type=0;
  Int_t ptype=0;
  Double_t dmass=1;
  Int_t p1=0, p2=0;
  if (TMath::Abs(mass00-0)<cutMass) {
    massOK=kTRUE; type+=1; 
    if (TMath::Abs(mass00-0)<dmass) {
      ptype=1;
      dmass=TMath::Abs(mass00-0);      
      p1=0; p2=0;
    } 
  }
  if (TMath::Abs(mass24-masses[1])<cutMass) {
    massOK=kTRUE; type+=2; 
    if (TMath::Abs(mass24-masses[1])<dmass){
      dmass = TMath::Abs(mass24-masses[1]);
      ptype=2;
      p1=2; p2=4;
    }
  }
  if (TMath::Abs(mass42-masses[1])<cutMass) {
    massOK=kTRUE; type+=4;
    if (TMath::Abs(mass42-masses[1])<dmass){
      dmass = TMath::Abs(mass42-masses[1]);
      ptype=4;
      p1=4; p2=2;
    }
  }
  if (TMath::Abs(mass22-masses[0])<cutMass) {
    massOK=kTRUE; type+=8;
    if (TMath::Abs(mass22-masses[0])<dmass){
      dmass = TMath::Abs(mass22-masses[0]);
      ptype=8;
      p1=2; p2=2;
    }
  }
  if (type==0) return 0;
  //
  const Int_t spdg[5]={kPositron,kMuonPlus,kPiPlus, kKPlus, kProton};
  const AliExternalTrackParam *paramP = v0->GetParamP();
  const AliExternalTrackParam *paramN = v0->GetParamN();
  if (paramP->GetSign()<0){
    paramP=v0->GetParamP();
    paramN=v0->GetParamN();
  }
  //Double_t *pparam1 = (Double_t*)paramP->GetParameter();
  //Double_t *pparam2 = (Double_t*)paramN->GetParameter();
  //
  AliKFParticle kfp1( *paramP, spdg[p1]  );
  AliKFParticle kfp2( *paramN, -1 *spdg[p2]  );
  AliKFParticle V0KF;
  (V0KF)+=kfp1;
  (V0KF)+=kfp2;
  kfparticle=V0KF;
  //
  // Pointing angle
  //
  Double_t  errPhi    = V0KF.GetErrPhi();
  Double_t  pointAngle= TMath::ACos(v0->GetV0CosineOfPointingAngle());
  if (pointAngle/errPhi>10) return 0;  
  //
  return ptype;  
}

//_____________________________________________________________________________
Bool_t AliAnalysisTaskFilteredTree::IsV0Downscaled(AliESDv0 *const v0)
{
  //
  // Downscale randomly low pt V0
  //
  //return kFALSE;
  Double_t maxPt= TMath::Max(v0->GetParamP()->Pt(), v0->GetParamN()->Pt());
  Double_t scalempt= TMath::Min(maxPt,10.);
  Double_t downscaleF = gRandom->Rndm();
  downscaleF *= fLowPtV0DownscaligF;
  //
  // Special treatment of the gamma conversion pt spectra is softer - 
  Double_t mass00=  v0->GetEffMass(0,0);
  const Double_t cutMass=0.2;
  if (TMath::Abs(mass00-0)<cutMass){
    downscaleF/=10.;  // 10 times smaller downscaling for the gamma concersion candidate
  }
  //printf("V0 TMath::Exp(2*scalempt) %e, downscaleF %e \n",TMath::Exp(2*scalempt), downscaleF);
  if (TMath::Exp(2*scalempt)<downscaleF) return kTRUE;
  return kFALSE;

  /*
     TH1F his1("his1","his1",100,0,10);
     TH1F his2("his2","his2",100,0,10);
     {for (Int_t i=0; i<10000; i++){
     Double_t rnd=gRandom->Exp(1);
     Bool_t isDownscaled =TMath::Exp(rnd)<100*gRandom->Rndm();
     his1->Fill(rnd); 
     if (!isDownscaled) his2->Fill(rnd); 
     }}

*/

}



//_____________________________________________________________________________
Bool_t AliAnalysisTaskFilteredTree::ConstrainTPCInner(AliExternalTrackParam *const tpcInnerC, const AliESDVertex* vtx, Double_t b[3])
{
  // Constrain TPC inner params constrained
  //
  if(!tpcInnerC) return kFALSE; 
  if(!vtx) return kFALSE;

  Double_t dz[2],cov[3];
  //AliESDVertex *vtx= (AliESDVertex *)esdEvent->GetPrimaryVertex();
  //if(!tpcInnerC->PropagateToDCA(vtx, esdEvent->GetMagneticField(), 3, dz, cov)) return kFALSE; 
  //if(!tpcInnerC->PropagateToDCA(vtx, Bz, 3, dz, cov)) return kFALSE; 
  if(!tpcInnerC->PropagateToDCABxByBz(vtx, b, 3, dz, cov)) return kFALSE; 


  Double_t covar[6]; vtx->GetCovMatrix(covar);
  Double_t p[2]={tpcInnerC->GetParameter()[0]-dz[0],tpcInnerC->GetParameter()[1]-dz[1]};
  Double_t c[3]={covar[2],0.,covar[5]};
  Double_t chi2C=tpcInnerC->GetPredictedChi2(p,c);
  if (chi2C>kVeryBig) return kFALSE; 

  if(!tpcInnerC->Update(p,c)) return kFALSE;

  return kTRUE;
}

//_____________________________________________________________________________
Bool_t AliAnalysisTaskFilteredTree::ConstrainTrackInner(AliExternalTrackParam *const trackInnerC, const AliESDVertex* vtx, Double_t mass, Double_t b[3])
{
  // Constrain TPC inner params constrained
  //
  if(!trackInnerC) return kFALSE; 
  if(!vtx) return kFALSE;

  const Double_t kRadius  = 2.8; 
  const Double_t kMaxStep = 1.0; 

  Double_t dz[2],cov[3];

  //AliESDVertex *vtx= (AliESDVertex *)esdEvent->GetPrimaryVertex();
  //if(!trackInnerC->PropagateToDCA(vtx, esdEvent->GetMagneticField(), 3, dz, cov)) return kFALSE; 
  //if(!trackInnerC->PropagateToDCA(vtx, Bz, 3, dz, cov)) return kFALSE; 

  if(!AliTracker::PropagateTrackToBxByBz(trackInnerC,kRadius,mass,kMaxStep,kFALSE)) return kFALSE;
  if(!trackInnerC->PropagateToDCABxByBz(vtx, b, 3, dz, cov)) return kFALSE; 

  //
  Double_t covar[6]; vtx->GetCovMatrix(covar);
  Double_t p[2]={trackInnerC->GetParameter()[0]-dz[0],trackInnerC->GetParameter()[1]-dz[1]};
  Double_t c[3]={covar[2],0.,covar[5]};
  Double_t chi2C=trackInnerC->GetPredictedChi2(p,c);
  if (chi2C>kVeryBig) return kFALSE; 

  if(!trackInnerC->Update(p,c)) return kFALSE;

  return kTRUE;
}


//_____________________________________________________________________________
TParticle *AliAnalysisTaskFilteredTree::GetMother(TParticle *const particle, AliStack *const stack) 
{
  if(!particle) return NULL;
  if(!stack) return NULL;

  Int_t motherLabel = TMath::Abs(particle->GetMother(0));  
  TParticle* mother = NULL; 
  Int_t mcStackSize=stack->GetNtrack();
  if (motherLabel>=mcStackSize) return NULL;
  mother = stack->Particle(motherLabel); 

  return mother;
}

//_____________________________________________________________________________
Bool_t AliAnalysisTaskFilteredTree::IsFromConversion(Int_t label, AliStack *const stack) 
{
  Bool_t isFromConversion = kFALSE;

  if(stack) {
    Int_t mcStackSize=stack->GetNtrack();
    if (label>=mcStackSize) return kFALSE;
    TParticle* particle = stack->Particle(label);
    if (!particle) return kFALSE;

    if(particle && particle->GetPDG() && particle->GetPDG()->Charge()!=0) 
    {
      Int_t mech = particle->GetUniqueID(); // production mechanism 
      Bool_t isPrim = stack->IsPhysicalPrimary(label);

      Int_t motherLabel = TMath::Abs(particle->GetMother(0));  
      if (motherLabel>=mcStackSize) return kFALSE;
      TParticle* mother = stack->Particle(motherLabel); 
      if(mother) {
        Int_t motherPdg = mother->GetPdgCode();

        if(!isPrim && mech==5 && motherPdg==kGamma) { 
          isFromConversion=kTRUE; 
        }
      }
    } 
  } 

  return isFromConversion;
}

//_____________________________________________________________________________
Bool_t AliAnalysisTaskFilteredTree::IsFromMaterial(Int_t label, AliStack *const stack) 
{
  Bool_t isFromMaterial = kFALSE;

  if(stack) {
    Int_t mcStackSize=stack->GetNtrack();
    if (label>=mcStackSize) return kFALSE;
    TParticle* particle = stack->Particle(label);
    if (!particle) return kFALSE;

    if(particle && particle->GetPDG() && particle->GetPDG()->Charge()!=0) 
    {
      Int_t mech = particle->GetUniqueID(); // production mechanism 
      Bool_t isPrim = stack->IsPhysicalPrimary(label);

      Int_t motherLabel = TMath::Abs(particle->GetMother(0));  
      if (motherLabel>=mcStackSize) return kFALSE;
      TParticle* mother = stack->Particle(motherLabel); 
      if(mother) {
        if(!isPrim && mech==13) { 
          isFromMaterial=kTRUE; 
        }
      }
    } 
  } 

  return isFromMaterial;
}

//_____________________________________________________________________________
Bool_t AliAnalysisTaskFilteredTree::IsFromStrangeness(Int_t label, AliStack *const stack) 
{
  Bool_t isFromStrangeness = kFALSE;

  if(stack) {
    Int_t mcStackSize=stack->GetNtrack();
    if (label>=mcStackSize) return kFALSE;
    TParticle* particle = stack->Particle(label);
    if (!particle) return kFALSE;

    if(particle && particle->GetPDG() && particle->GetPDG()->Charge()!=0) 
    {
      Int_t mech = particle->GetUniqueID(); // production mechanism 
      Bool_t isPrim = stack->IsPhysicalPrimary(label);

      Int_t motherLabel = TMath::Abs(particle->GetMother(0));  
      if (motherLabel>=mcStackSize) return kFALSE;
      TParticle* mother = stack->Particle(motherLabel); 
      if(mother) {
        Int_t motherPdg = mother->GetPdgCode();

        // K+-, lambda, antilambda, K0s decays
        if(!isPrim && mech==4 && 
            (TMath::Abs(motherPdg)==kKPlus || TMath::Abs(motherPdg)==kLambda0 || motherPdg==kK0Short))
        {
          isFromStrangeness = kTRUE;
        } 
      }
    } 
  } 

  return isFromStrangeness;
}


//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::FinishTaskOutput() 
{
  //
  // Called one at the end 
  // locally on working node
  //
  Bool_t deleteTrees=kTRUE;
  if ((AliAnalysisManager::GetAnalysisManager()))
  {
    if (AliAnalysisManager::GetAnalysisManager()->GetAnalysisType() == 
        AliAnalysisManager::kProofAnalysis)
      deleteTrees=kFALSE;
  }
  if (deleteTrees) delete fTreeSRedirector;
  fTreeSRedirector=NULL;
}

//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::Terminate(Option_t *) 
{
  //
  // Called one at the end 
  //
}

//_____________________________________________________________________________
Int_t AliAnalysisTaskFilteredTree::GetMCTrueTrackMult(AliMCEvent *const mcEvent, AliFilteredTreeEventCuts *const evtCuts, AliFilteredTreeAcceptanceCuts *const accCuts)
{
  //
  // calculate mc event true track multiplicity
  //
  if(!mcEvent) return 0;

  AliStack* stack = 0;
  Int_t mult = 0;

  // MC particle stack
  stack = mcEvent->Stack();
  if (!stack) return 0;

  //
  //printf("minZv %f, maxZv %f \n", evtCuts->GetMinZv(), evtCuts->GetMaxZv());
  //

  Bool_t isEventOK = evtCuts->AcceptMCEvent(mcEvent);
  if(!isEventOK) return 0; 

  Int_t nPart  = stack->GetNtrack();
  for (Int_t iMc = 0; iMc < nPart; ++iMc) 
  {
    TParticle* particle = stack->Particle(iMc);
    if (!particle)
      continue;

    // only charged particles
    if(!particle->GetPDG()) continue;
    Double_t charge = particle->GetPDG()->Charge()/3.;
    if (TMath::Abs(charge) < 0.001)
      continue;

    // physical primary
    Bool_t prim = stack->IsPhysicalPrimary(iMc);
    if(!prim) continue;

    // checked accepted without pt cut
    //if(accCuts->AcceptTrack(particle)) 
    if( particle->Eta() > accCuts->GetMinEta() && particle->Eta() < accCuts->GetMaxEta() ) 
    {
      mult++;
    }
  }

  return mult;  
}

//_____________________________________________________________________________
void AliAnalysisTaskFilteredTree::FillHistograms(AliESDtrack* const ptrack, AliExternalTrackParam* const ptpcInnerC, Double_t centralityF, Double_t chi2TPCInnerC) 
{
  //
  // Fill pT relative resolution histograms for 
  // TPC only, TPC only constrained to vertex and TPC+ITS tracking
  //
  if(!ptrack) return;    
  if(!ptpcInnerC) return;    

  const AliExternalTrackParam * innerParam = (AliExternalTrackParam *) ptrack->GetInnerParam();
  if(!innerParam) return;

  Float_t dxy, dz;
  ptrack->GetImpactParameters(dxy,dz);

  // TPC+ITS primary tracks 
  if( abs(ptrack->Eta())<0.8 && 
      ptrack->GetTPCClusterInfo(3,1)>120 && 
      ptrack->IsOn(0x40) && 
      ptrack->GetTPCclusters(0)>0.0 &&  
      ptrack->GetTPCnclsS()/ptrack->GetTPCclusters(0)<0.4 && 
      //abs(innerParam->GetX())>0.0 && 
      //abs(innerParam->GetY()/innerParam->GetX())<0.14 && 
      //abs(innerParam->GetTgl())<0.85 && 
      ptrack->IsOn(0x0004) && 
      ptrack->GetNcls(0)>0 &&
      ptrack->GetITSchi2()>0 && 
      sqrt(ptrack->GetITSchi2()/ptrack->GetNcls(0))<6 &&
      sqrt(chi2TPCInnerC)<6 &&
      (ptrack->HasPointOnITSLayer(0) || ptrack->HasPointOnITSLayer(1)) &&
      abs(dz)<2.0 && 
      abs(dxy)<(0.018+0.035*abs(ptrack->GetSigned1Pt())) )
  {
    fPtResPhiPtTPCITS->Fill(ptrack->Pt(),ptrack->Phi(),1./abs(ptrack->GetSigned1Pt())*TMath::Sqrt(ptrack->GetSigma1Pt2()));
    fPtResEtaPtTPCITS->Fill(ptrack->Pt(),ptrack->Eta(),1./abs(ptrack->GetSigned1Pt())*TMath::Sqrt(ptrack->GetSigma1Pt2()));
    fPtResCentPtTPCITS->Fill(ptrack->Pt(),centralityF,1./abs(ptrack->GetSigned1Pt())*TMath::Sqrt(ptrack->GetSigma1Pt2()));
  }

  // TPC primary tracks 
  // and TPC constrained primary tracks 

  AliExternalTrackParam *ptpcInner  = (AliExternalTrackParam *) ptrack->GetTPCInnerParam(); 
  if(!ptpcInner) return;


  Float_t dxyTPC, dzTPC;
  ptrack->GetImpactParametersTPC(dxyTPC,dzTPC);

  if( abs(ptrack->Eta())<0.8 && 
      ptrack->GetTPCClusterInfo(3,1)>120 && 
      ptrack->IsOn(0x40)&& 
      ptrack->GetTPCclusters(0)>0.0 &&  
      ptrack->GetTPCnclsS()/ptrack->GetTPCclusters(0)<0.4 && 
      //abs(innerParam->GetX())>0.0 && 
      //abs(innerParam->GetY()/innerParam->GetX())<0.14 && 
      //abs(innerParam->GetTgl())<0.85 && 
      abs(dzTPC)<3.2 && 
      abs(dxyTPC)<2.4 )
  {
    // TPC only
    fPtResPhiPtTPC->Fill(ptpcInner->Pt(),ptpcInner->Phi(),1./abs(ptpcInner->GetSigned1Pt())*TMath::Sqrt(ptpcInner->GetSigma1Pt2()));
    fPtResEtaPtTPC->Fill(ptpcInner->Pt(),ptpcInner->Eta(),1./abs(ptpcInner->GetSigned1Pt())*TMath::Sqrt(ptpcInner->GetSigma1Pt2()));
    fPtResCentPtTPC->Fill(ptpcInner->Pt(),centralityF,1./abs(ptpcInner->GetSigned1Pt())*TMath::Sqrt(ptpcInner->GetSigma1Pt2()));

    // TPC constrained to vertex 
    fPtResPhiPtTPCc->Fill(ptpcInnerC->Pt(),ptpcInnerC->Phi(),1./abs(ptpcInnerC->GetSigned1Pt())*TMath::Sqrt(ptpcInnerC->GetSigma1Pt2()));
    fPtResEtaPtTPCc->Fill(ptpcInnerC->Pt(),ptpcInnerC->Eta(),1./abs(ptpcInnerC->GetSigned1Pt())*TMath::Sqrt(ptpcInnerC->GetSigma1Pt2()));
    fPtResCentPtTPCc->Fill(ptpcInnerC->Pt(),centralityF,1./abs(ptpcInnerC->GetSigned1Pt())*TMath::Sqrt(ptpcInnerC->GetSigma1Pt2()));
  }
}


void AliAnalysisTaskFilteredTree::ProcessITSTPCmatchOut(AliESDEvent *const esdEvent, AliESDfriend *const esdFriend){
  //
  // Process ITS standalone tracks find match with closest TPC(or combined tracks) tracks 
  // marian.ivanov@cern.ch
  // 0.) Init variables
  // 1.) GetTrack parameters at TPC inner wall
  // 2.) Match closest TPC  track  (STANDALONE/global) - chi2 match criteria
  //
  // Logic to be used in reco:
  // 1.) Find matching ITSalone->TPCalone
  // 2.) if (!TPCalone.FindClose(TPCother))  TPCalone.Addopt(ITSalone)
  // 3.) ff ((ITSalone.FindClose(Global)==0) CreateGlobaltrack
  const Double_t radiusMatch=84.;    // redius to propagate
  //
  const Double_t dFastPhiCut=0.2;        // 6 sigma (200 MeV) fast angular cut
  const Double_t dFastThetaCut=0.12;     // 6 sigma (200 MeV) fast angular cut
  const Double_t dFastPosPhiCut=0.06;    // 6 sigma (200 MeV) fast angular cut
  const Double_t dFastZCut=6;            // 6 sigma (200 MeV) fast  z difference cut
  const Double_t dFastPtCut=2.;          // 6 sigma (200 MeV) fast 1/pt cut 
  const Double_t chi2Cut=100;            // chi2 matching cut
  //
  if (!esdFriend) return;  // not ITS standalone track
  if (esdFriend->TestSkipBit()) return; // friends tracks  not stored
  Int_t ntracks=esdEvent->GetNumberOfTracks();
  Float_t bz = esdEvent->GetMagneticField();
  //
  // 0.) Get parameters in reference radius TPC Inner wall
  //
  //
  TMatrixD vecPosR0(ntracks,6);   // possition and  momentum estimate at reference radius  
  TMatrixD vecMomR0(ntracks,6);   //
  TMatrixD vecPosR1(ntracks,6);   // possition and  momentum estimate at reference radius TPC track  
  TMatrixD vecMomR1(ntracks,6);   //
  Double_t xyz[3], pxyz[3];      //
  for (Int_t iTrack=0; iTrack<ntracks; iTrack++){
    AliESDtrack *track = esdEvent->GetTrack(iTrack);   
    if(!track) continue;
    if (track->GetInnerParam()){
      const AliExternalTrackParam *trackTPC=track->GetInnerParam();
      trackTPC->GetXYZAt(radiusMatch,bz,xyz);
      trackTPC->GetPxPyPzAt(radiusMatch,bz,pxyz);
      for (Int_t i=0; i<3; i++){
	vecPosR1(iTrack,i)=xyz[i];
	vecMomR1(iTrack,i)=pxyz[i];
      }
      vecPosR1(iTrack,3)= TMath::ATan2(xyz[1],xyz[0]);    // phi pos angle
      vecMomR1(iTrack,3)= TMath::ATan2(pxyz[1],pxyz[0]);  // phi mom angle
      vecMomR1(iTrack,4)= trackTPC->GetSigned1Pt();;    
      vecMomR1(iTrack,5)= trackTPC->GetTgl();;    
    }
    AliESDfriendTrack* friendTrack=esdFriend->GetTrack(iTrack);
    if(!friendTrack) continue;
    if (friendTrack->GetITSOut()){
      const AliExternalTrackParam *trackITS=friendTrack->GetITSOut();
      trackITS->GetXYZAt(radiusMatch,bz,xyz);
      trackITS->GetPxPyPzAt(radiusMatch,bz,pxyz);
      for (Int_t i=0; i<3; i++){
	vecPosR0(iTrack,i)=xyz[i];
	vecMomR0(iTrack,i)=pxyz[i];
      }
      vecPosR0(iTrack,3)= TMath::ATan2(xyz[1],xyz[0]);
      vecMomR0(iTrack,3)= TMath::ATan2(pxyz[1],pxyz[0]);
      vecMomR0(iTrack,4)= trackITS->GetSigned1Pt();;    
      vecMomR0(iTrack,5)= trackITS->GetTgl();;    
    }
  }
  //  
  // 1.) Find closest matching tracks, between the ITS standalone track 
  // and  the all other tracks
  //  a.) caltegory  - All
  //  b.) category   - without ITS 
  //      
  //
  Int_t ntracksPropagated=0;
  AliExternalTrackParam extTrackDummy;
  AliESDtrack           esdTrackDummy; 
  AliExternalTrackParam itsAtTPC;
  AliExternalTrackParam itsAtITSTPC;
  for (Int_t iTrack0=0; iTrack0<ntracks; iTrack0++){
    AliESDtrack *track0 = esdEvent->GetTrack(iTrack0);   
    if(!track0) continue;
    if (track0->IsOn(AliVTrack::kTPCin)) continue;
    AliESDfriendTrack* friendTrack0=esdFriend->GetTrack(iTrack0); 
    if (!friendTrack0) continue;
    //if (!track0->IsOn(AliVTrack::kITSpureSA)) continue;
    //if (!friendTrack0->GetITSOut()) continue;  // is there flag for ITS standalone?
    ntracksPropagated++;
    // 
    // 2.) find clostest TPCtrack
    //     a.) all tracks
    Double_t minChi2All=10000000;
    Double_t minChi2TPC=10000000;
    Double_t minChi2TPCITS=10000000;
    Int_t indexAll=-1;
    Int_t indexTPC=-1;
    Int_t indexTPCITS=-1;
    Int_t ncandidates0=0; // n candidates - rough cut
    Int_t ncandidates1=0; // n candidates - rough + chi2 cut
    itsAtTPC=*(friendTrack0->GetITSOut());
    itsAtITSTPC=*(friendTrack0->GetITSOut());
    for (Int_t iTrack1=0; iTrack1<ntracks; iTrack1++){
      AliESDtrack *track1 = esdEvent->GetTrack(iTrack1);   
      if(!track1) continue;
      if (!track1->IsOn(AliVTrack::kTPCin)) continue;
      // fast checks
      //
      if (TMath::Abs(vecPosR1(iTrack1,2)-vecPosR0(iTrack0,2))>dFastZCut) continue;
      if (TMath::Abs(vecPosR1(iTrack1,3)-vecPosR0(iTrack0,3))>dFastPosPhiCut) continue;
      if (TMath::Abs(vecMomR1(iTrack1,3)-vecMomR0(iTrack0,3))>dFastPhiCut) continue;
      if (TMath::Abs(vecMomR1(iTrack1,5)-vecMomR0(iTrack0,5))>dFastThetaCut) continue;
      if (TMath::Abs(vecMomR1(iTrack1,4)-vecMomR0(iTrack0,4))>dFastPtCut) continue;
      ncandidates0++;
      //
      const AliExternalTrackParam * param1= track1->GetInnerParam();
      if (!friendTrack0->GetITSOut()) continue;
      AliExternalTrackParam outerITS = *(friendTrack0->GetITSOut());
      if (!outerITS.Rotate(param1->GetAlpha())) continue;
      if (!outerITS.PropagateTo(param1->GetX(),bz)) continue; // assume track close to the TPC inner wall
      Double_t chi2 =  outerITS.GetPredictedChi2(param1);
      if (chi2>chi2Cut) continue;
      ncandidates1++;
      if (chi2<minChi2All){
	minChi2All=chi2;
	indexAll=iTrack1;
      }
      if (chi2<minChi2TPC && track1->IsOn(AliVTrack::kITSin)==0){
	minChi2TPC=chi2;
	indexTPC=iTrack1;
	itsAtTPC=outerITS;
      }
      if (chi2<minChi2TPCITS && track1->IsOn(AliVTrack::kITSin)){
	minChi2TPCITS=chi2;
	indexTPCITS=iTrack1;
	itsAtITSTPC=outerITS;
      }
    }
    //
    AliESDtrack * trackAll= (indexAll>=0)? esdEvent->GetTrack(indexAll):&esdTrackDummy;
    AliESDtrack * trackTPC= (indexTPC>=0)? esdEvent->GetTrack(indexTPC):&esdTrackDummy;
    AliESDtrack * trackTPCITS= (indexTPCITS>=0)? esdEvent->GetTrack(indexTPCITS):&esdTrackDummy;
    (*fTreeSRedirector)<<"itsTPC"<<
      "indexAll="<<indexAll<<          // index of closest track (chi2)
      "indexTPC="<<indexTPC<<          // index of closest TPCalone tracks
      "indexTPCITS="<<indexTPCITS<<    // index of closest cobined tracks
      "ncandidates0="<<ncandidates0<<  // number of candidates
      "ncandidates1="<<ncandidates1<<
      //
      "chi2All="<<minChi2All<<         // chi2 of closest  tracks
      "chi2TPC="<<minChi2TPC<<         
      "chi2TPCITS="<<minChi2TPCITS<<
      //
      "track0.="<<track0<<             // ITS standalone tracks
      "trackAll.="<<trackAll<<         // Closets other track
      "trackTPC.="<<trackTPC<<         // Closest TPC only track
      "trackTPCITS.="<<trackTPCITS<<   // closest combined track
      //
      "itsAtTPC.="<<&itsAtTPC<<        // ITS track parameters at the TPC alone track  frame
      "itsAtITSTPC.="<<&itsAtITSTPC<<  // ITS track parameters at the TPC combeined track  frame
      "\n"; 
  }
}

void AliAnalysisTaskFilteredTree::ProcessTrackMatch(AliESDEvent *const /*esdEvent*/, AliESDfriend *const /*esdFriend*/){
/*
    Use TPC standalone, ITS standalone and combined tracks to categorize/resp. recover track information.

    Track categories:
       -TPC+ITS
       -TPC only 
       -ITS only
    Topology categories:
       -Nice isolated tracks with full information 
       -Overlapped tracks - Refit and sign them
       -Multiple found (check overlap factor) - Merge and sign
       -Charge particle (kink) decays - Change of direction - Sign them) 
    Info:
       -Array  of indexes of closest tracks in each individual category
       -Chi2  distance to the closest tracks at reference radius of TPCin
       -Overlap factors  - fraction of shared clusters or missing  region
       -Chi2 distance at DCA
    Information matrix:   
       -matrix closest tracks from each categories
       -characterization - chi2, index,chi2,  overlap ratio
    
    Decissions:
       0.) Kink decay or catastophic multiple scaterring 
           (combining all track categories)
              - small chi2 at the DCA
              - significantly large deflection angle
              - Combinatorial algorithm - to decrease CPU time restriction of investigation to tracks with small DCA at  refernce radius

       1.) if (TPConly && !(TPC+ITS) && ITSonly match ) {
             if (!kink) TPCOnly.addoptITS
             if (kink) TPConly sign
           }

       2.) Overlap tracks - Refit with doUnfold

*/
}
 AliAnalysisTaskFilteredTree.cxx:1
 AliAnalysisTaskFilteredTree.cxx:2
 AliAnalysisTaskFilteredTree.cxx:3
 AliAnalysisTaskFilteredTree.cxx:4
 AliAnalysisTaskFilteredTree.cxx:5
 AliAnalysisTaskFilteredTree.cxx:6
 AliAnalysisTaskFilteredTree.cxx:7
 AliAnalysisTaskFilteredTree.cxx:8
 AliAnalysisTaskFilteredTree.cxx:9
 AliAnalysisTaskFilteredTree.cxx:10
 AliAnalysisTaskFilteredTree.cxx:11
 AliAnalysisTaskFilteredTree.cxx:12
 AliAnalysisTaskFilteredTree.cxx:13
 AliAnalysisTaskFilteredTree.cxx:14
 AliAnalysisTaskFilteredTree.cxx:15
 AliAnalysisTaskFilteredTree.cxx:16
 AliAnalysisTaskFilteredTree.cxx:17
 AliAnalysisTaskFilteredTree.cxx:18
 AliAnalysisTaskFilteredTree.cxx:19
 AliAnalysisTaskFilteredTree.cxx:20
 AliAnalysisTaskFilteredTree.cxx:21
 AliAnalysisTaskFilteredTree.cxx:22
 AliAnalysisTaskFilteredTree.cxx:23
 AliAnalysisTaskFilteredTree.cxx:24
 AliAnalysisTaskFilteredTree.cxx:25
 AliAnalysisTaskFilteredTree.cxx:26
 AliAnalysisTaskFilteredTree.cxx:27
 AliAnalysisTaskFilteredTree.cxx:28
 AliAnalysisTaskFilteredTree.cxx:29
 AliAnalysisTaskFilteredTree.cxx:30
 AliAnalysisTaskFilteredTree.cxx:31
 AliAnalysisTaskFilteredTree.cxx:32
 AliAnalysisTaskFilteredTree.cxx:33
 AliAnalysisTaskFilteredTree.cxx:34
 AliAnalysisTaskFilteredTree.cxx:35
 AliAnalysisTaskFilteredTree.cxx:36
 AliAnalysisTaskFilteredTree.cxx:37
 AliAnalysisTaskFilteredTree.cxx:38
 AliAnalysisTaskFilteredTree.cxx:39
 AliAnalysisTaskFilteredTree.cxx:40
 AliAnalysisTaskFilteredTree.cxx:41
 AliAnalysisTaskFilteredTree.cxx:42
 AliAnalysisTaskFilteredTree.cxx:43
 AliAnalysisTaskFilteredTree.cxx:44
 AliAnalysisTaskFilteredTree.cxx:45
 AliAnalysisTaskFilteredTree.cxx:46
 AliAnalysisTaskFilteredTree.cxx:47
 AliAnalysisTaskFilteredTree.cxx:48
 AliAnalysisTaskFilteredTree.cxx:49
 AliAnalysisTaskFilteredTree.cxx:50
 AliAnalysisTaskFilteredTree.cxx:51
 AliAnalysisTaskFilteredTree.cxx:52
 AliAnalysisTaskFilteredTree.cxx:53
 AliAnalysisTaskFilteredTree.cxx:54
 AliAnalysisTaskFilteredTree.cxx:55
 AliAnalysisTaskFilteredTree.cxx:56
 AliAnalysisTaskFilteredTree.cxx:57
 AliAnalysisTaskFilteredTree.cxx:58
 AliAnalysisTaskFilteredTree.cxx:59
 AliAnalysisTaskFilteredTree.cxx:60
 AliAnalysisTaskFilteredTree.cxx:61
 AliAnalysisTaskFilteredTree.cxx:62
 AliAnalysisTaskFilteredTree.cxx:63
 AliAnalysisTaskFilteredTree.cxx:64
 AliAnalysisTaskFilteredTree.cxx:65
 AliAnalysisTaskFilteredTree.cxx:66
 AliAnalysisTaskFilteredTree.cxx:67
 AliAnalysisTaskFilteredTree.cxx:68
 AliAnalysisTaskFilteredTree.cxx:69
 AliAnalysisTaskFilteredTree.cxx:70
 AliAnalysisTaskFilteredTree.cxx:71
 AliAnalysisTaskFilteredTree.cxx:72
 AliAnalysisTaskFilteredTree.cxx:73
 AliAnalysisTaskFilteredTree.cxx:74
 AliAnalysisTaskFilteredTree.cxx:75
 AliAnalysisTaskFilteredTree.cxx:76
 AliAnalysisTaskFilteredTree.cxx:77
 AliAnalysisTaskFilteredTree.cxx:78
 AliAnalysisTaskFilteredTree.cxx:79
 AliAnalysisTaskFilteredTree.cxx:80
 AliAnalysisTaskFilteredTree.cxx:81
 AliAnalysisTaskFilteredTree.cxx:82
 AliAnalysisTaskFilteredTree.cxx:83
 AliAnalysisTaskFilteredTree.cxx:84
 AliAnalysisTaskFilteredTree.cxx:85
 AliAnalysisTaskFilteredTree.cxx:86
 AliAnalysisTaskFilteredTree.cxx:87
 AliAnalysisTaskFilteredTree.cxx:88
 AliAnalysisTaskFilteredTree.cxx:89
 AliAnalysisTaskFilteredTree.cxx:90
 AliAnalysisTaskFilteredTree.cxx:91
 AliAnalysisTaskFilteredTree.cxx:92
 AliAnalysisTaskFilteredTree.cxx:93
 AliAnalysisTaskFilteredTree.cxx:94
 AliAnalysisTaskFilteredTree.cxx:95
 AliAnalysisTaskFilteredTree.cxx:96
 AliAnalysisTaskFilteredTree.cxx:97
 AliAnalysisTaskFilteredTree.cxx:98
 AliAnalysisTaskFilteredTree.cxx:99
 AliAnalysisTaskFilteredTree.cxx:100
 AliAnalysisTaskFilteredTree.cxx:101
 AliAnalysisTaskFilteredTree.cxx:102
 AliAnalysisTaskFilteredTree.cxx:103
 AliAnalysisTaskFilteredTree.cxx:104
 AliAnalysisTaskFilteredTree.cxx:105
 AliAnalysisTaskFilteredTree.cxx:106
 AliAnalysisTaskFilteredTree.cxx:107
 AliAnalysisTaskFilteredTree.cxx:108
 AliAnalysisTaskFilteredTree.cxx:109
 AliAnalysisTaskFilteredTree.cxx:110
 AliAnalysisTaskFilteredTree.cxx:111
 AliAnalysisTaskFilteredTree.cxx:112
 AliAnalysisTaskFilteredTree.cxx:113
 AliAnalysisTaskFilteredTree.cxx:114
 AliAnalysisTaskFilteredTree.cxx:115
 AliAnalysisTaskFilteredTree.cxx:116
 AliAnalysisTaskFilteredTree.cxx:117
 AliAnalysisTaskFilteredTree.cxx:118
 AliAnalysisTaskFilteredTree.cxx:119
 AliAnalysisTaskFilteredTree.cxx:120
 AliAnalysisTaskFilteredTree.cxx:121
 AliAnalysisTaskFilteredTree.cxx:122
 AliAnalysisTaskFilteredTree.cxx:123
 AliAnalysisTaskFilteredTree.cxx:124
 AliAnalysisTaskFilteredTree.cxx:125
 AliAnalysisTaskFilteredTree.cxx:126
 AliAnalysisTaskFilteredTree.cxx:127
 AliAnalysisTaskFilteredTree.cxx:128
 AliAnalysisTaskFilteredTree.cxx:129
 AliAnalysisTaskFilteredTree.cxx:130
 AliAnalysisTaskFilteredTree.cxx:131
 AliAnalysisTaskFilteredTree.cxx:132
 AliAnalysisTaskFilteredTree.cxx:133
 AliAnalysisTaskFilteredTree.cxx:134
 AliAnalysisTaskFilteredTree.cxx:135
 AliAnalysisTaskFilteredTree.cxx:136
 AliAnalysisTaskFilteredTree.cxx:137
 AliAnalysisTaskFilteredTree.cxx:138
 AliAnalysisTaskFilteredTree.cxx:139
 AliAnalysisTaskFilteredTree.cxx:140
 AliAnalysisTaskFilteredTree.cxx:141
 AliAnalysisTaskFilteredTree.cxx:142
 AliAnalysisTaskFilteredTree.cxx:143
 AliAnalysisTaskFilteredTree.cxx:144
 AliAnalysisTaskFilteredTree.cxx:145
 AliAnalysisTaskFilteredTree.cxx:146
 AliAnalysisTaskFilteredTree.cxx:147
 AliAnalysisTaskFilteredTree.cxx:148
 AliAnalysisTaskFilteredTree.cxx:149
 AliAnalysisTaskFilteredTree.cxx:150
 AliAnalysisTaskFilteredTree.cxx:151
 AliAnalysisTaskFilteredTree.cxx:152
 AliAnalysisTaskFilteredTree.cxx:153
 AliAnalysisTaskFilteredTree.cxx:154
 AliAnalysisTaskFilteredTree.cxx:155
 AliAnalysisTaskFilteredTree.cxx:156
 AliAnalysisTaskFilteredTree.cxx:157
 AliAnalysisTaskFilteredTree.cxx:158
 AliAnalysisTaskFilteredTree.cxx:159
 AliAnalysisTaskFilteredTree.cxx:160
 AliAnalysisTaskFilteredTree.cxx:161
 AliAnalysisTaskFilteredTree.cxx:162
 AliAnalysisTaskFilteredTree.cxx:163
 AliAnalysisTaskFilteredTree.cxx:164
 AliAnalysisTaskFilteredTree.cxx:165
 AliAnalysisTaskFilteredTree.cxx:166
 AliAnalysisTaskFilteredTree.cxx:167
 AliAnalysisTaskFilteredTree.cxx:168
 AliAnalysisTaskFilteredTree.cxx:169
 AliAnalysisTaskFilteredTree.cxx:170
 AliAnalysisTaskFilteredTree.cxx:171
 AliAnalysisTaskFilteredTree.cxx:172
 AliAnalysisTaskFilteredTree.cxx:173
 AliAnalysisTaskFilteredTree.cxx:174
 AliAnalysisTaskFilteredTree.cxx:175
 AliAnalysisTaskFilteredTree.cxx:176
 AliAnalysisTaskFilteredTree.cxx:177
 AliAnalysisTaskFilteredTree.cxx:178
 AliAnalysisTaskFilteredTree.cxx:179
 AliAnalysisTaskFilteredTree.cxx:180
 AliAnalysisTaskFilteredTree.cxx:181
 AliAnalysisTaskFilteredTree.cxx:182
 AliAnalysisTaskFilteredTree.cxx:183
 AliAnalysisTaskFilteredTree.cxx:184
 AliAnalysisTaskFilteredTree.cxx:185
 AliAnalysisTaskFilteredTree.cxx:186
 AliAnalysisTaskFilteredTree.cxx:187
 AliAnalysisTaskFilteredTree.cxx:188
 AliAnalysisTaskFilteredTree.cxx:189
 AliAnalysisTaskFilteredTree.cxx:190
 AliAnalysisTaskFilteredTree.cxx:191
 AliAnalysisTaskFilteredTree.cxx:192
 AliAnalysisTaskFilteredTree.cxx:193
 AliAnalysisTaskFilteredTree.cxx:194
 AliAnalysisTaskFilteredTree.cxx:195
 AliAnalysisTaskFilteredTree.cxx:196
 AliAnalysisTaskFilteredTree.cxx:197
 AliAnalysisTaskFilteredTree.cxx:198
 AliAnalysisTaskFilteredTree.cxx:199
 AliAnalysisTaskFilteredTree.cxx:200
 AliAnalysisTaskFilteredTree.cxx:201
 AliAnalysisTaskFilteredTree.cxx:202
 AliAnalysisTaskFilteredTree.cxx:203
 AliAnalysisTaskFilteredTree.cxx:204
 AliAnalysisTaskFilteredTree.cxx:205
 AliAnalysisTaskFilteredTree.cxx:206
 AliAnalysisTaskFilteredTree.cxx:207
 AliAnalysisTaskFilteredTree.cxx:208
 AliAnalysisTaskFilteredTree.cxx:209
 AliAnalysisTaskFilteredTree.cxx:210
 AliAnalysisTaskFilteredTree.cxx:211
 AliAnalysisTaskFilteredTree.cxx:212
 AliAnalysisTaskFilteredTree.cxx:213
 AliAnalysisTaskFilteredTree.cxx:214
 AliAnalysisTaskFilteredTree.cxx:215
 AliAnalysisTaskFilteredTree.cxx:216
 AliAnalysisTaskFilteredTree.cxx:217
 AliAnalysisTaskFilteredTree.cxx:218
 AliAnalysisTaskFilteredTree.cxx:219
 AliAnalysisTaskFilteredTree.cxx:220
 AliAnalysisTaskFilteredTree.cxx:221
 AliAnalysisTaskFilteredTree.cxx:222
 AliAnalysisTaskFilteredTree.cxx:223
 AliAnalysisTaskFilteredTree.cxx:224
 AliAnalysisTaskFilteredTree.cxx:225
 AliAnalysisTaskFilteredTree.cxx:226
 AliAnalysisTaskFilteredTree.cxx:227
 AliAnalysisTaskFilteredTree.cxx:228
 AliAnalysisTaskFilteredTree.cxx:229
 AliAnalysisTaskFilteredTree.cxx:230
 AliAnalysisTaskFilteredTree.cxx:231
 AliAnalysisTaskFilteredTree.cxx:232
 AliAnalysisTaskFilteredTree.cxx:233
 AliAnalysisTaskFilteredTree.cxx:234
 AliAnalysisTaskFilteredTree.cxx:235
 AliAnalysisTaskFilteredTree.cxx:236
 AliAnalysisTaskFilteredTree.cxx:237
 AliAnalysisTaskFilteredTree.cxx:238
 AliAnalysisTaskFilteredTree.cxx:239
 AliAnalysisTaskFilteredTree.cxx:240
 AliAnalysisTaskFilteredTree.cxx:241
 AliAnalysisTaskFilteredTree.cxx:242
 AliAnalysisTaskFilteredTree.cxx:243
 AliAnalysisTaskFilteredTree.cxx:244
 AliAnalysisTaskFilteredTree.cxx:245
 AliAnalysisTaskFilteredTree.cxx:246
 AliAnalysisTaskFilteredTree.cxx:247
 AliAnalysisTaskFilteredTree.cxx:248
 AliAnalysisTaskFilteredTree.cxx:249
 AliAnalysisTaskFilteredTree.cxx:250
 AliAnalysisTaskFilteredTree.cxx:251
 AliAnalysisTaskFilteredTree.cxx:252
 AliAnalysisTaskFilteredTree.cxx:253
 AliAnalysisTaskFilteredTree.cxx:254
 AliAnalysisTaskFilteredTree.cxx:255
 AliAnalysisTaskFilteredTree.cxx:256
 AliAnalysisTaskFilteredTree.cxx:257
 AliAnalysisTaskFilteredTree.cxx:258
 AliAnalysisTaskFilteredTree.cxx:259
 AliAnalysisTaskFilteredTree.cxx:260
 AliAnalysisTaskFilteredTree.cxx:261
 AliAnalysisTaskFilteredTree.cxx:262
 AliAnalysisTaskFilteredTree.cxx:263
 AliAnalysisTaskFilteredTree.cxx:264
 AliAnalysisTaskFilteredTree.cxx:265
 AliAnalysisTaskFilteredTree.cxx:266
 AliAnalysisTaskFilteredTree.cxx:267
 AliAnalysisTaskFilteredTree.cxx:268
 AliAnalysisTaskFilteredTree.cxx:269
 AliAnalysisTaskFilteredTree.cxx:270
 AliAnalysisTaskFilteredTree.cxx:271
 AliAnalysisTaskFilteredTree.cxx:272
 AliAnalysisTaskFilteredTree.cxx:273
 AliAnalysisTaskFilteredTree.cxx:274
 AliAnalysisTaskFilteredTree.cxx:275
 AliAnalysisTaskFilteredTree.cxx:276
 AliAnalysisTaskFilteredTree.cxx:277
 AliAnalysisTaskFilteredTree.cxx:278
 AliAnalysisTaskFilteredTree.cxx:279
 AliAnalysisTaskFilteredTree.cxx:280
 AliAnalysisTaskFilteredTree.cxx:281
 AliAnalysisTaskFilteredTree.cxx:282
 AliAnalysisTaskFilteredTree.cxx:283
 AliAnalysisTaskFilteredTree.cxx:284
 AliAnalysisTaskFilteredTree.cxx:285
 AliAnalysisTaskFilteredTree.cxx:286
 AliAnalysisTaskFilteredTree.cxx:287
 AliAnalysisTaskFilteredTree.cxx:288
 AliAnalysisTaskFilteredTree.cxx:289
 AliAnalysisTaskFilteredTree.cxx:290
 AliAnalysisTaskFilteredTree.cxx:291
 AliAnalysisTaskFilteredTree.cxx:292
 AliAnalysisTaskFilteredTree.cxx:293
 AliAnalysisTaskFilteredTree.cxx:294
 AliAnalysisTaskFilteredTree.cxx:295
 AliAnalysisTaskFilteredTree.cxx:296
 AliAnalysisTaskFilteredTree.cxx:297
 AliAnalysisTaskFilteredTree.cxx:298
 AliAnalysisTaskFilteredTree.cxx:299
 AliAnalysisTaskFilteredTree.cxx:300
 AliAnalysisTaskFilteredTree.cxx:301
 AliAnalysisTaskFilteredTree.cxx:302
 AliAnalysisTaskFilteredTree.cxx:303
 AliAnalysisTaskFilteredTree.cxx:304
 AliAnalysisTaskFilteredTree.cxx:305
 AliAnalysisTaskFilteredTree.cxx:306
 AliAnalysisTaskFilteredTree.cxx:307
 AliAnalysisTaskFilteredTree.cxx:308
 AliAnalysisTaskFilteredTree.cxx:309
 AliAnalysisTaskFilteredTree.cxx:310
 AliAnalysisTaskFilteredTree.cxx:311
 AliAnalysisTaskFilteredTree.cxx:312
 AliAnalysisTaskFilteredTree.cxx:313
 AliAnalysisTaskFilteredTree.cxx:314
 AliAnalysisTaskFilteredTree.cxx:315
 AliAnalysisTaskFilteredTree.cxx:316
 AliAnalysisTaskFilteredTree.cxx:317
 AliAnalysisTaskFilteredTree.cxx:318
 AliAnalysisTaskFilteredTree.cxx:319
 AliAnalysisTaskFilteredTree.cxx:320
 AliAnalysisTaskFilteredTree.cxx:321
 AliAnalysisTaskFilteredTree.cxx:322
 AliAnalysisTaskFilteredTree.cxx:323
 AliAnalysisTaskFilteredTree.cxx:324
 AliAnalysisTaskFilteredTree.cxx:325
 AliAnalysisTaskFilteredTree.cxx:326
 AliAnalysisTaskFilteredTree.cxx:327
 AliAnalysisTaskFilteredTree.cxx:328
 AliAnalysisTaskFilteredTree.cxx:329
 AliAnalysisTaskFilteredTree.cxx:330
 AliAnalysisTaskFilteredTree.cxx:331
 AliAnalysisTaskFilteredTree.cxx:332
 AliAnalysisTaskFilteredTree.cxx:333
 AliAnalysisTaskFilteredTree.cxx:334
 AliAnalysisTaskFilteredTree.cxx:335
 AliAnalysisTaskFilteredTree.cxx:336
 AliAnalysisTaskFilteredTree.cxx:337
 AliAnalysisTaskFilteredTree.cxx:338
 AliAnalysisTaskFilteredTree.cxx:339
 AliAnalysisTaskFilteredTree.cxx:340
 AliAnalysisTaskFilteredTree.cxx:341
 AliAnalysisTaskFilteredTree.cxx:342
 AliAnalysisTaskFilteredTree.cxx:343
 AliAnalysisTaskFilteredTree.cxx:344
 AliAnalysisTaskFilteredTree.cxx:345
 AliAnalysisTaskFilteredTree.cxx:346
 AliAnalysisTaskFilteredTree.cxx:347
 AliAnalysisTaskFilteredTree.cxx:348
 AliAnalysisTaskFilteredTree.cxx:349
 AliAnalysisTaskFilteredTree.cxx:350
 AliAnalysisTaskFilteredTree.cxx:351
 AliAnalysisTaskFilteredTree.cxx:352
 AliAnalysisTaskFilteredTree.cxx:353
 AliAnalysisTaskFilteredTree.cxx:354
 AliAnalysisTaskFilteredTree.cxx:355
 AliAnalysisTaskFilteredTree.cxx:356
 AliAnalysisTaskFilteredTree.cxx:357
 AliAnalysisTaskFilteredTree.cxx:358
 AliAnalysisTaskFilteredTree.cxx:359
 AliAnalysisTaskFilteredTree.cxx:360
 AliAnalysisTaskFilteredTree.cxx:361
 AliAnalysisTaskFilteredTree.cxx:362
 AliAnalysisTaskFilteredTree.cxx:363
 AliAnalysisTaskFilteredTree.cxx:364
 AliAnalysisTaskFilteredTree.cxx:365
 AliAnalysisTaskFilteredTree.cxx:366
 AliAnalysisTaskFilteredTree.cxx:367
 AliAnalysisTaskFilteredTree.cxx:368
 AliAnalysisTaskFilteredTree.cxx:369
 AliAnalysisTaskFilteredTree.cxx:370
 AliAnalysisTaskFilteredTree.cxx:371
 AliAnalysisTaskFilteredTree.cxx:372
 AliAnalysisTaskFilteredTree.cxx:373
 AliAnalysisTaskFilteredTree.cxx:374
 AliAnalysisTaskFilteredTree.cxx:375
 AliAnalysisTaskFilteredTree.cxx:376
 AliAnalysisTaskFilteredTree.cxx:377
 AliAnalysisTaskFilteredTree.cxx:378
 AliAnalysisTaskFilteredTree.cxx:379
 AliAnalysisTaskFilteredTree.cxx:380
 AliAnalysisTaskFilteredTree.cxx:381
 AliAnalysisTaskFilteredTree.cxx:382
 AliAnalysisTaskFilteredTree.cxx:383
 AliAnalysisTaskFilteredTree.cxx:384
 AliAnalysisTaskFilteredTree.cxx:385
 AliAnalysisTaskFilteredTree.cxx:386
 AliAnalysisTaskFilteredTree.cxx:387
 AliAnalysisTaskFilteredTree.cxx:388
 AliAnalysisTaskFilteredTree.cxx:389
 AliAnalysisTaskFilteredTree.cxx:390
 AliAnalysisTaskFilteredTree.cxx:391
 AliAnalysisTaskFilteredTree.cxx:392
 AliAnalysisTaskFilteredTree.cxx:393
 AliAnalysisTaskFilteredTree.cxx:394
 AliAnalysisTaskFilteredTree.cxx:395
 AliAnalysisTaskFilteredTree.cxx:396
 AliAnalysisTaskFilteredTree.cxx:397
 AliAnalysisTaskFilteredTree.cxx:398
 AliAnalysisTaskFilteredTree.cxx:399
 AliAnalysisTaskFilteredTree.cxx:400
 AliAnalysisTaskFilteredTree.cxx:401
 AliAnalysisTaskFilteredTree.cxx:402
 AliAnalysisTaskFilteredTree.cxx:403
 AliAnalysisTaskFilteredTree.cxx:404
 AliAnalysisTaskFilteredTree.cxx:405
 AliAnalysisTaskFilteredTree.cxx:406
 AliAnalysisTaskFilteredTree.cxx:407
 AliAnalysisTaskFilteredTree.cxx:408
 AliAnalysisTaskFilteredTree.cxx:409
 AliAnalysisTaskFilteredTree.cxx:410
 AliAnalysisTaskFilteredTree.cxx:411
 AliAnalysisTaskFilteredTree.cxx:412
 AliAnalysisTaskFilteredTree.cxx:413
 AliAnalysisTaskFilteredTree.cxx:414
 AliAnalysisTaskFilteredTree.cxx:415
 AliAnalysisTaskFilteredTree.cxx:416
 AliAnalysisTaskFilteredTree.cxx:417
 AliAnalysisTaskFilteredTree.cxx:418
 AliAnalysisTaskFilteredTree.cxx:419
 AliAnalysisTaskFilteredTree.cxx:420
 AliAnalysisTaskFilteredTree.cxx:421
 AliAnalysisTaskFilteredTree.cxx:422
 AliAnalysisTaskFilteredTree.cxx:423
 AliAnalysisTaskFilteredTree.cxx:424
 AliAnalysisTaskFilteredTree.cxx:425
 AliAnalysisTaskFilteredTree.cxx:426
 AliAnalysisTaskFilteredTree.cxx:427
 AliAnalysisTaskFilteredTree.cxx:428
 AliAnalysisTaskFilteredTree.cxx:429
 AliAnalysisTaskFilteredTree.cxx:430
 AliAnalysisTaskFilteredTree.cxx:431
 AliAnalysisTaskFilteredTree.cxx:432
 AliAnalysisTaskFilteredTree.cxx:433
 AliAnalysisTaskFilteredTree.cxx:434
 AliAnalysisTaskFilteredTree.cxx:435
 AliAnalysisTaskFilteredTree.cxx:436
 AliAnalysisTaskFilteredTree.cxx:437
 AliAnalysisTaskFilteredTree.cxx:438
 AliAnalysisTaskFilteredTree.cxx:439
 AliAnalysisTaskFilteredTree.cxx:440
 AliAnalysisTaskFilteredTree.cxx:441
 AliAnalysisTaskFilteredTree.cxx:442
 AliAnalysisTaskFilteredTree.cxx:443
 AliAnalysisTaskFilteredTree.cxx:444
 AliAnalysisTaskFilteredTree.cxx:445
 AliAnalysisTaskFilteredTree.cxx:446
 AliAnalysisTaskFilteredTree.cxx:447
 AliAnalysisTaskFilteredTree.cxx:448
 AliAnalysisTaskFilteredTree.cxx:449
 AliAnalysisTaskFilteredTree.cxx:450
 AliAnalysisTaskFilteredTree.cxx:451
 AliAnalysisTaskFilteredTree.cxx:452
 AliAnalysisTaskFilteredTree.cxx:453
 AliAnalysisTaskFilteredTree.cxx:454
 AliAnalysisTaskFilteredTree.cxx:455
 AliAnalysisTaskFilteredTree.cxx:456
 AliAnalysisTaskFilteredTree.cxx:457
 AliAnalysisTaskFilteredTree.cxx:458
 AliAnalysisTaskFilteredTree.cxx:459
 AliAnalysisTaskFilteredTree.cxx:460
 AliAnalysisTaskFilteredTree.cxx:461
 AliAnalysisTaskFilteredTree.cxx:462
 AliAnalysisTaskFilteredTree.cxx:463
 AliAnalysisTaskFilteredTree.cxx:464
 AliAnalysisTaskFilteredTree.cxx:465
 AliAnalysisTaskFilteredTree.cxx:466
 AliAnalysisTaskFilteredTree.cxx:467
 AliAnalysisTaskFilteredTree.cxx:468
 AliAnalysisTaskFilteredTree.cxx:469
 AliAnalysisTaskFilteredTree.cxx:470
 AliAnalysisTaskFilteredTree.cxx:471
 AliAnalysisTaskFilteredTree.cxx:472
 AliAnalysisTaskFilteredTree.cxx:473
 AliAnalysisTaskFilteredTree.cxx:474
 AliAnalysisTaskFilteredTree.cxx:475
 AliAnalysisTaskFilteredTree.cxx:476
 AliAnalysisTaskFilteredTree.cxx:477
 AliAnalysisTaskFilteredTree.cxx:478
 AliAnalysisTaskFilteredTree.cxx:479
 AliAnalysisTaskFilteredTree.cxx:480
 AliAnalysisTaskFilteredTree.cxx:481
 AliAnalysisTaskFilteredTree.cxx:482
 AliAnalysisTaskFilteredTree.cxx:483
 AliAnalysisTaskFilteredTree.cxx:484
 AliAnalysisTaskFilteredTree.cxx:485
 AliAnalysisTaskFilteredTree.cxx:486
 AliAnalysisTaskFilteredTree.cxx:487
 AliAnalysisTaskFilteredTree.cxx:488
 AliAnalysisTaskFilteredTree.cxx:489
 AliAnalysisTaskFilteredTree.cxx:490
 AliAnalysisTaskFilteredTree.cxx:491
 AliAnalysisTaskFilteredTree.cxx:492
 AliAnalysisTaskFilteredTree.cxx:493
 AliAnalysisTaskFilteredTree.cxx:494
 AliAnalysisTaskFilteredTree.cxx:495
 AliAnalysisTaskFilteredTree.cxx:496
 AliAnalysisTaskFilteredTree.cxx:497
 AliAnalysisTaskFilteredTree.cxx:498
 AliAnalysisTaskFilteredTree.cxx:499
 AliAnalysisTaskFilteredTree.cxx:500
 AliAnalysisTaskFilteredTree.cxx:501
 AliAnalysisTaskFilteredTree.cxx:502
 AliAnalysisTaskFilteredTree.cxx:503
 AliAnalysisTaskFilteredTree.cxx:504
 AliAnalysisTaskFilteredTree.cxx:505
 AliAnalysisTaskFilteredTree.cxx:506
 AliAnalysisTaskFilteredTree.cxx:507
 AliAnalysisTaskFilteredTree.cxx:508
 AliAnalysisTaskFilteredTree.cxx:509
 AliAnalysisTaskFilteredTree.cxx:510
 AliAnalysisTaskFilteredTree.cxx:511
 AliAnalysisTaskFilteredTree.cxx:512
 AliAnalysisTaskFilteredTree.cxx:513
 AliAnalysisTaskFilteredTree.cxx:514
 AliAnalysisTaskFilteredTree.cxx:515
 AliAnalysisTaskFilteredTree.cxx:516
 AliAnalysisTaskFilteredTree.cxx:517
 AliAnalysisTaskFilteredTree.cxx:518
 AliAnalysisTaskFilteredTree.cxx:519
 AliAnalysisTaskFilteredTree.cxx:520
 AliAnalysisTaskFilteredTree.cxx:521
 AliAnalysisTaskFilteredTree.cxx:522
 AliAnalysisTaskFilteredTree.cxx:523
 AliAnalysisTaskFilteredTree.cxx:524
 AliAnalysisTaskFilteredTree.cxx:525
 AliAnalysisTaskFilteredTree.cxx:526
 AliAnalysisTaskFilteredTree.cxx:527
 AliAnalysisTaskFilteredTree.cxx:528
 AliAnalysisTaskFilteredTree.cxx:529
 AliAnalysisTaskFilteredTree.cxx:530
 AliAnalysisTaskFilteredTree.cxx:531
 AliAnalysisTaskFilteredTree.cxx:532
 AliAnalysisTaskFilteredTree.cxx:533
 AliAnalysisTaskFilteredTree.cxx:534
 AliAnalysisTaskFilteredTree.cxx:535
 AliAnalysisTaskFilteredTree.cxx:536
 AliAnalysisTaskFilteredTree.cxx:537
 AliAnalysisTaskFilteredTree.cxx:538
 AliAnalysisTaskFilteredTree.cxx:539
 AliAnalysisTaskFilteredTree.cxx:540
 AliAnalysisTaskFilteredTree.cxx:541
 AliAnalysisTaskFilteredTree.cxx:542
 AliAnalysisTaskFilteredTree.cxx:543
 AliAnalysisTaskFilteredTree.cxx:544
 AliAnalysisTaskFilteredTree.cxx:545
 AliAnalysisTaskFilteredTree.cxx:546
 AliAnalysisTaskFilteredTree.cxx:547
 AliAnalysisTaskFilteredTree.cxx:548
 AliAnalysisTaskFilteredTree.cxx:549
 AliAnalysisTaskFilteredTree.cxx:550
 AliAnalysisTaskFilteredTree.cxx:551
 AliAnalysisTaskFilteredTree.cxx:552
 AliAnalysisTaskFilteredTree.cxx:553
 AliAnalysisTaskFilteredTree.cxx:554
 AliAnalysisTaskFilteredTree.cxx:555
 AliAnalysisTaskFilteredTree.cxx:556
 AliAnalysisTaskFilteredTree.cxx:557
 AliAnalysisTaskFilteredTree.cxx:558
 AliAnalysisTaskFilteredTree.cxx:559
 AliAnalysisTaskFilteredTree.cxx:560
 AliAnalysisTaskFilteredTree.cxx:561
 AliAnalysisTaskFilteredTree.cxx:562
 AliAnalysisTaskFilteredTree.cxx:563
 AliAnalysisTaskFilteredTree.cxx:564
 AliAnalysisTaskFilteredTree.cxx:565
 AliAnalysisTaskFilteredTree.cxx:566
 AliAnalysisTaskFilteredTree.cxx:567
 AliAnalysisTaskFilteredTree.cxx:568
 AliAnalysisTaskFilteredTree.cxx:569
 AliAnalysisTaskFilteredTree.cxx:570
 AliAnalysisTaskFilteredTree.cxx:571
 AliAnalysisTaskFilteredTree.cxx:572
 AliAnalysisTaskFilteredTree.cxx:573
 AliAnalysisTaskFilteredTree.cxx:574
 AliAnalysisTaskFilteredTree.cxx:575
 AliAnalysisTaskFilteredTree.cxx:576
 AliAnalysisTaskFilteredTree.cxx:577
 AliAnalysisTaskFilteredTree.cxx:578
 AliAnalysisTaskFilteredTree.cxx:579
 AliAnalysisTaskFilteredTree.cxx:580
 AliAnalysisTaskFilteredTree.cxx:581
 AliAnalysisTaskFilteredTree.cxx:582
 AliAnalysisTaskFilteredTree.cxx:583
 AliAnalysisTaskFilteredTree.cxx:584
 AliAnalysisTaskFilteredTree.cxx:585
 AliAnalysisTaskFilteredTree.cxx:586
 AliAnalysisTaskFilteredTree.cxx:587
 AliAnalysisTaskFilteredTree.cxx:588
 AliAnalysisTaskFilteredTree.cxx:589
 AliAnalysisTaskFilteredTree.cxx:590
 AliAnalysisTaskFilteredTree.cxx:591
 AliAnalysisTaskFilteredTree.cxx:592
 AliAnalysisTaskFilteredTree.cxx:593
 AliAnalysisTaskFilteredTree.cxx:594
 AliAnalysisTaskFilteredTree.cxx:595
 AliAnalysisTaskFilteredTree.cxx:596
 AliAnalysisTaskFilteredTree.cxx:597
 AliAnalysisTaskFilteredTree.cxx:598
 AliAnalysisTaskFilteredTree.cxx:599
 AliAnalysisTaskFilteredTree.cxx:600
 AliAnalysisTaskFilteredTree.cxx:601
 AliAnalysisTaskFilteredTree.cxx:602
 AliAnalysisTaskFilteredTree.cxx:603
 AliAnalysisTaskFilteredTree.cxx:604
 AliAnalysisTaskFilteredTree.cxx:605
 AliAnalysisTaskFilteredTree.cxx:606
 AliAnalysisTaskFilteredTree.cxx:607
 AliAnalysisTaskFilteredTree.cxx:608
 AliAnalysisTaskFilteredTree.cxx:609
 AliAnalysisTaskFilteredTree.cxx:610
 AliAnalysisTaskFilteredTree.cxx:611
 AliAnalysisTaskFilteredTree.cxx:612
 AliAnalysisTaskFilteredTree.cxx:613
 AliAnalysisTaskFilteredTree.cxx:614
 AliAnalysisTaskFilteredTree.cxx:615
 AliAnalysisTaskFilteredTree.cxx:616
 AliAnalysisTaskFilteredTree.cxx:617
 AliAnalysisTaskFilteredTree.cxx:618
 AliAnalysisTaskFilteredTree.cxx:619
 AliAnalysisTaskFilteredTree.cxx:620
 AliAnalysisTaskFilteredTree.cxx:621
 AliAnalysisTaskFilteredTree.cxx:622
 AliAnalysisTaskFilteredTree.cxx:623
 AliAnalysisTaskFilteredTree.cxx:624
 AliAnalysisTaskFilteredTree.cxx:625
 AliAnalysisTaskFilteredTree.cxx:626
 AliAnalysisTaskFilteredTree.cxx:627
 AliAnalysisTaskFilteredTree.cxx:628
 AliAnalysisTaskFilteredTree.cxx:629
 AliAnalysisTaskFilteredTree.cxx:630
 AliAnalysisTaskFilteredTree.cxx:631
 AliAnalysisTaskFilteredTree.cxx:632
 AliAnalysisTaskFilteredTree.cxx:633
 AliAnalysisTaskFilteredTree.cxx:634
 AliAnalysisTaskFilteredTree.cxx:635
 AliAnalysisTaskFilteredTree.cxx:636
 AliAnalysisTaskFilteredTree.cxx:637
 AliAnalysisTaskFilteredTree.cxx:638
 AliAnalysisTaskFilteredTree.cxx:639
 AliAnalysisTaskFilteredTree.cxx:640
 AliAnalysisTaskFilteredTree.cxx:641
 AliAnalysisTaskFilteredTree.cxx:642
 AliAnalysisTaskFilteredTree.cxx:643
 AliAnalysisTaskFilteredTree.cxx:644
 AliAnalysisTaskFilteredTree.cxx:645
 AliAnalysisTaskFilteredTree.cxx:646
 AliAnalysisTaskFilteredTree.cxx:647
 AliAnalysisTaskFilteredTree.cxx:648
 AliAnalysisTaskFilteredTree.cxx:649
 AliAnalysisTaskFilteredTree.cxx:650
 AliAnalysisTaskFilteredTree.cxx:651
 AliAnalysisTaskFilteredTree.cxx:652
 AliAnalysisTaskFilteredTree.cxx:653
 AliAnalysisTaskFilteredTree.cxx:654
 AliAnalysisTaskFilteredTree.cxx:655
 AliAnalysisTaskFilteredTree.cxx:656
 AliAnalysisTaskFilteredTree.cxx:657
 AliAnalysisTaskFilteredTree.cxx:658
 AliAnalysisTaskFilteredTree.cxx:659
 AliAnalysisTaskFilteredTree.cxx:660
 AliAnalysisTaskFilteredTree.cxx:661
 AliAnalysisTaskFilteredTree.cxx:662
 AliAnalysisTaskFilteredTree.cxx:663
 AliAnalysisTaskFilteredTree.cxx:664
 AliAnalysisTaskFilteredTree.cxx:665
 AliAnalysisTaskFilteredTree.cxx:666
 AliAnalysisTaskFilteredTree.cxx:667
 AliAnalysisTaskFilteredTree.cxx:668
 AliAnalysisTaskFilteredTree.cxx:669
 AliAnalysisTaskFilteredTree.cxx:670
 AliAnalysisTaskFilteredTree.cxx:671
 AliAnalysisTaskFilteredTree.cxx:672
 AliAnalysisTaskFilteredTree.cxx:673
 AliAnalysisTaskFilteredTree.cxx:674
 AliAnalysisTaskFilteredTree.cxx:675
 AliAnalysisTaskFilteredTree.cxx:676
 AliAnalysisTaskFilteredTree.cxx:677
 AliAnalysisTaskFilteredTree.cxx:678
 AliAnalysisTaskFilteredTree.cxx:679
 AliAnalysisTaskFilteredTree.cxx:680
 AliAnalysisTaskFilteredTree.cxx:681
 AliAnalysisTaskFilteredTree.cxx:682
 AliAnalysisTaskFilteredTree.cxx:683
 AliAnalysisTaskFilteredTree.cxx:684
 AliAnalysisTaskFilteredTree.cxx:685
 AliAnalysisTaskFilteredTree.cxx:686
 AliAnalysisTaskFilteredTree.cxx:687
 AliAnalysisTaskFilteredTree.cxx:688
 AliAnalysisTaskFilteredTree.cxx:689
 AliAnalysisTaskFilteredTree.cxx:690
 AliAnalysisTaskFilteredTree.cxx:691
 AliAnalysisTaskFilteredTree.cxx:692
 AliAnalysisTaskFilteredTree.cxx:693
 AliAnalysisTaskFilteredTree.cxx:694
 AliAnalysisTaskFilteredTree.cxx:695
 AliAnalysisTaskFilteredTree.cxx:696
 AliAnalysisTaskFilteredTree.cxx:697
 AliAnalysisTaskFilteredTree.cxx:698
 AliAnalysisTaskFilteredTree.cxx:699
 AliAnalysisTaskFilteredTree.cxx:700
 AliAnalysisTaskFilteredTree.cxx:701
 AliAnalysisTaskFilteredTree.cxx:702
 AliAnalysisTaskFilteredTree.cxx:703
 AliAnalysisTaskFilteredTree.cxx:704
 AliAnalysisTaskFilteredTree.cxx:705
 AliAnalysisTaskFilteredTree.cxx:706
 AliAnalysisTaskFilteredTree.cxx:707
 AliAnalysisTaskFilteredTree.cxx:708
 AliAnalysisTaskFilteredTree.cxx:709
 AliAnalysisTaskFilteredTree.cxx:710
 AliAnalysisTaskFilteredTree.cxx:711
 AliAnalysisTaskFilteredTree.cxx:712
 AliAnalysisTaskFilteredTree.cxx:713
 AliAnalysisTaskFilteredTree.cxx:714
 AliAnalysisTaskFilteredTree.cxx:715
 AliAnalysisTaskFilteredTree.cxx:716
 AliAnalysisTaskFilteredTree.cxx:717
 AliAnalysisTaskFilteredTree.cxx:718
 AliAnalysisTaskFilteredTree.cxx:719
 AliAnalysisTaskFilteredTree.cxx:720
 AliAnalysisTaskFilteredTree.cxx:721
 AliAnalysisTaskFilteredTree.cxx:722
 AliAnalysisTaskFilteredTree.cxx:723
 AliAnalysisTaskFilteredTree.cxx:724
 AliAnalysisTaskFilteredTree.cxx:725
 AliAnalysisTaskFilteredTree.cxx:726
 AliAnalysisTaskFilteredTree.cxx:727
 AliAnalysisTaskFilteredTree.cxx:728
 AliAnalysisTaskFilteredTree.cxx:729
 AliAnalysisTaskFilteredTree.cxx:730
 AliAnalysisTaskFilteredTree.cxx:731
 AliAnalysisTaskFilteredTree.cxx:732
 AliAnalysisTaskFilteredTree.cxx:733
 AliAnalysisTaskFilteredTree.cxx:734
 AliAnalysisTaskFilteredTree.cxx:735
 AliAnalysisTaskFilteredTree.cxx:736
 AliAnalysisTaskFilteredTree.cxx:737
 AliAnalysisTaskFilteredTree.cxx:738
 AliAnalysisTaskFilteredTree.cxx:739
 AliAnalysisTaskFilteredTree.cxx:740
 AliAnalysisTaskFilteredTree.cxx:741
 AliAnalysisTaskFilteredTree.cxx:742
 AliAnalysisTaskFilteredTree.cxx:743
 AliAnalysisTaskFilteredTree.cxx:744
 AliAnalysisTaskFilteredTree.cxx:745
 AliAnalysisTaskFilteredTree.cxx:746
 AliAnalysisTaskFilteredTree.cxx:747
 AliAnalysisTaskFilteredTree.cxx:748
 AliAnalysisTaskFilteredTree.cxx:749
 AliAnalysisTaskFilteredTree.cxx:750
 AliAnalysisTaskFilteredTree.cxx:751
 AliAnalysisTaskFilteredTree.cxx:752
 AliAnalysisTaskFilteredTree.cxx:753
 AliAnalysisTaskFilteredTree.cxx:754
 AliAnalysisTaskFilteredTree.cxx:755
 AliAnalysisTaskFilteredTree.cxx:756
 AliAnalysisTaskFilteredTree.cxx:757
 AliAnalysisTaskFilteredTree.cxx:758
 AliAnalysisTaskFilteredTree.cxx:759
 AliAnalysisTaskFilteredTree.cxx:760
 AliAnalysisTaskFilteredTree.cxx:761
 AliAnalysisTaskFilteredTree.cxx:762
 AliAnalysisTaskFilteredTree.cxx:763
 AliAnalysisTaskFilteredTree.cxx:764
 AliAnalysisTaskFilteredTree.cxx:765
 AliAnalysisTaskFilteredTree.cxx:766
 AliAnalysisTaskFilteredTree.cxx:767
 AliAnalysisTaskFilteredTree.cxx:768
 AliAnalysisTaskFilteredTree.cxx:769
 AliAnalysisTaskFilteredTree.cxx:770
 AliAnalysisTaskFilteredTree.cxx:771
 AliAnalysisTaskFilteredTree.cxx:772
 AliAnalysisTaskFilteredTree.cxx:773
 AliAnalysisTaskFilteredTree.cxx:774
 AliAnalysisTaskFilteredTree.cxx:775
 AliAnalysisTaskFilteredTree.cxx:776
 AliAnalysisTaskFilteredTree.cxx:777
 AliAnalysisTaskFilteredTree.cxx:778
 AliAnalysisTaskFilteredTree.cxx:779
 AliAnalysisTaskFilteredTree.cxx:780
 AliAnalysisTaskFilteredTree.cxx:781
 AliAnalysisTaskFilteredTree.cxx:782
 AliAnalysisTaskFilteredTree.cxx:783
 AliAnalysisTaskFilteredTree.cxx:784
 AliAnalysisTaskFilteredTree.cxx:785
 AliAnalysisTaskFilteredTree.cxx:786
 AliAnalysisTaskFilteredTree.cxx:787
 AliAnalysisTaskFilteredTree.cxx:788
 AliAnalysisTaskFilteredTree.cxx:789
 AliAnalysisTaskFilteredTree.cxx:790
 AliAnalysisTaskFilteredTree.cxx:791
 AliAnalysisTaskFilteredTree.cxx:792
 AliAnalysisTaskFilteredTree.cxx:793
 AliAnalysisTaskFilteredTree.cxx:794
 AliAnalysisTaskFilteredTree.cxx:795
 AliAnalysisTaskFilteredTree.cxx:796
 AliAnalysisTaskFilteredTree.cxx:797
 AliAnalysisTaskFilteredTree.cxx:798
 AliAnalysisTaskFilteredTree.cxx:799
 AliAnalysisTaskFilteredTree.cxx:800
 AliAnalysisTaskFilteredTree.cxx:801
 AliAnalysisTaskFilteredTree.cxx:802
 AliAnalysisTaskFilteredTree.cxx:803
 AliAnalysisTaskFilteredTree.cxx:804
 AliAnalysisTaskFilteredTree.cxx:805
 AliAnalysisTaskFilteredTree.cxx:806
 AliAnalysisTaskFilteredTree.cxx:807
 AliAnalysisTaskFilteredTree.cxx:808
 AliAnalysisTaskFilteredTree.cxx:809
 AliAnalysisTaskFilteredTree.cxx:810
 AliAnalysisTaskFilteredTree.cxx:811
 AliAnalysisTaskFilteredTree.cxx:812
 AliAnalysisTaskFilteredTree.cxx:813
 AliAnalysisTaskFilteredTree.cxx:814
 AliAnalysisTaskFilteredTree.cxx:815
 AliAnalysisTaskFilteredTree.cxx:816
 AliAnalysisTaskFilteredTree.cxx:817
 AliAnalysisTaskFilteredTree.cxx:818
 AliAnalysisTaskFilteredTree.cxx:819
 AliAnalysisTaskFilteredTree.cxx:820
 AliAnalysisTaskFilteredTree.cxx:821
 AliAnalysisTaskFilteredTree.cxx:822
 AliAnalysisTaskFilteredTree.cxx:823
 AliAnalysisTaskFilteredTree.cxx:824
 AliAnalysisTaskFilteredTree.cxx:825
 AliAnalysisTaskFilteredTree.cxx:826
 AliAnalysisTaskFilteredTree.cxx:827
 AliAnalysisTaskFilteredTree.cxx:828
 AliAnalysisTaskFilteredTree.cxx:829
 AliAnalysisTaskFilteredTree.cxx:830
 AliAnalysisTaskFilteredTree.cxx:831
 AliAnalysisTaskFilteredTree.cxx:832
 AliAnalysisTaskFilteredTree.cxx:833
 AliAnalysisTaskFilteredTree.cxx:834
 AliAnalysisTaskFilteredTree.cxx:835
 AliAnalysisTaskFilteredTree.cxx:836
 AliAnalysisTaskFilteredTree.cxx:837
 AliAnalysisTaskFilteredTree.cxx:838
 AliAnalysisTaskFilteredTree.cxx:839
 AliAnalysisTaskFilteredTree.cxx:840
 AliAnalysisTaskFilteredTree.cxx:841
 AliAnalysisTaskFilteredTree.cxx:842
 AliAnalysisTaskFilteredTree.cxx:843
 AliAnalysisTaskFilteredTree.cxx:844
 AliAnalysisTaskFilteredTree.cxx:845
 AliAnalysisTaskFilteredTree.cxx:846
 AliAnalysisTaskFilteredTree.cxx:847
 AliAnalysisTaskFilteredTree.cxx:848
 AliAnalysisTaskFilteredTree.cxx:849
 AliAnalysisTaskFilteredTree.cxx:850
 AliAnalysisTaskFilteredTree.cxx:851
 AliAnalysisTaskFilteredTree.cxx:852
 AliAnalysisTaskFilteredTree.cxx:853
 AliAnalysisTaskFilteredTree.cxx:854
 AliAnalysisTaskFilteredTree.cxx:855
 AliAnalysisTaskFilteredTree.cxx:856
 AliAnalysisTaskFilteredTree.cxx:857
 AliAnalysisTaskFilteredTree.cxx:858
 AliAnalysisTaskFilteredTree.cxx:859
 AliAnalysisTaskFilteredTree.cxx:860
 AliAnalysisTaskFilteredTree.cxx:861
 AliAnalysisTaskFilteredTree.cxx:862
 AliAnalysisTaskFilteredTree.cxx:863
 AliAnalysisTaskFilteredTree.cxx:864
 AliAnalysisTaskFilteredTree.cxx:865
 AliAnalysisTaskFilteredTree.cxx:866
 AliAnalysisTaskFilteredTree.cxx:867
 AliAnalysisTaskFilteredTree.cxx:868
 AliAnalysisTaskFilteredTree.cxx:869
 AliAnalysisTaskFilteredTree.cxx:870
 AliAnalysisTaskFilteredTree.cxx:871
 AliAnalysisTaskFilteredTree.cxx:872
 AliAnalysisTaskFilteredTree.cxx:873
 AliAnalysisTaskFilteredTree.cxx:874
 AliAnalysisTaskFilteredTree.cxx:875
 AliAnalysisTaskFilteredTree.cxx:876
 AliAnalysisTaskFilteredTree.cxx:877
 AliAnalysisTaskFilteredTree.cxx:878
 AliAnalysisTaskFilteredTree.cxx:879
 AliAnalysisTaskFilteredTree.cxx:880
 AliAnalysisTaskFilteredTree.cxx:881
 AliAnalysisTaskFilteredTree.cxx:882
 AliAnalysisTaskFilteredTree.cxx:883
 AliAnalysisTaskFilteredTree.cxx:884
 AliAnalysisTaskFilteredTree.cxx:885
 AliAnalysisTaskFilteredTree.cxx:886
 AliAnalysisTaskFilteredTree.cxx:887
 AliAnalysisTaskFilteredTree.cxx:888
 AliAnalysisTaskFilteredTree.cxx:889
 AliAnalysisTaskFilteredTree.cxx:890
 AliAnalysisTaskFilteredTree.cxx:891
 AliAnalysisTaskFilteredTree.cxx:892
 AliAnalysisTaskFilteredTree.cxx:893
 AliAnalysisTaskFilteredTree.cxx:894
 AliAnalysisTaskFilteredTree.cxx:895
 AliAnalysisTaskFilteredTree.cxx:896
 AliAnalysisTaskFilteredTree.cxx:897
 AliAnalysisTaskFilteredTree.cxx:898
 AliAnalysisTaskFilteredTree.cxx:899
 AliAnalysisTaskFilteredTree.cxx:900
 AliAnalysisTaskFilteredTree.cxx:901
 AliAnalysisTaskFilteredTree.cxx:902
 AliAnalysisTaskFilteredTree.cxx:903
 AliAnalysisTaskFilteredTree.cxx:904
 AliAnalysisTaskFilteredTree.cxx:905
 AliAnalysisTaskFilteredTree.cxx:906
 AliAnalysisTaskFilteredTree.cxx:907
 AliAnalysisTaskFilteredTree.cxx:908
 AliAnalysisTaskFilteredTree.cxx:909
 AliAnalysisTaskFilteredTree.cxx:910
 AliAnalysisTaskFilteredTree.cxx:911
 AliAnalysisTaskFilteredTree.cxx:912
 AliAnalysisTaskFilteredTree.cxx:913
 AliAnalysisTaskFilteredTree.cxx:914
 AliAnalysisTaskFilteredTree.cxx:915
 AliAnalysisTaskFilteredTree.cxx:916
 AliAnalysisTaskFilteredTree.cxx:917
 AliAnalysisTaskFilteredTree.cxx:918
 AliAnalysisTaskFilteredTree.cxx:919
 AliAnalysisTaskFilteredTree.cxx:920
 AliAnalysisTaskFilteredTree.cxx:921
 AliAnalysisTaskFilteredTree.cxx:922
 AliAnalysisTaskFilteredTree.cxx:923
 AliAnalysisTaskFilteredTree.cxx:924
 AliAnalysisTaskFilteredTree.cxx:925
 AliAnalysisTaskFilteredTree.cxx:926
 AliAnalysisTaskFilteredTree.cxx:927
 AliAnalysisTaskFilteredTree.cxx:928
 AliAnalysisTaskFilteredTree.cxx:929
 AliAnalysisTaskFilteredTree.cxx:930
 AliAnalysisTaskFilteredTree.cxx:931
 AliAnalysisTaskFilteredTree.cxx:932
 AliAnalysisTaskFilteredTree.cxx:933
 AliAnalysisTaskFilteredTree.cxx:934
 AliAnalysisTaskFilteredTree.cxx:935
 AliAnalysisTaskFilteredTree.cxx:936
 AliAnalysisTaskFilteredTree.cxx:937
 AliAnalysisTaskFilteredTree.cxx:938
 AliAnalysisTaskFilteredTree.cxx:939
 AliAnalysisTaskFilteredTree.cxx:940
 AliAnalysisTaskFilteredTree.cxx:941
 AliAnalysisTaskFilteredTree.cxx:942
 AliAnalysisTaskFilteredTree.cxx:943
 AliAnalysisTaskFilteredTree.cxx:944
 AliAnalysisTaskFilteredTree.cxx:945
 AliAnalysisTaskFilteredTree.cxx:946
 AliAnalysisTaskFilteredTree.cxx:947
 AliAnalysisTaskFilteredTree.cxx:948
 AliAnalysisTaskFilteredTree.cxx:949
 AliAnalysisTaskFilteredTree.cxx:950
 AliAnalysisTaskFilteredTree.cxx:951
 AliAnalysisTaskFilteredTree.cxx:952
 AliAnalysisTaskFilteredTree.cxx:953
 AliAnalysisTaskFilteredTree.cxx:954
 AliAnalysisTaskFilteredTree.cxx:955
 AliAnalysisTaskFilteredTree.cxx:956
 AliAnalysisTaskFilteredTree.cxx:957
 AliAnalysisTaskFilteredTree.cxx:958
 AliAnalysisTaskFilteredTree.cxx:959
 AliAnalysisTaskFilteredTree.cxx:960
 AliAnalysisTaskFilteredTree.cxx:961
 AliAnalysisTaskFilteredTree.cxx:962
 AliAnalysisTaskFilteredTree.cxx:963
 AliAnalysisTaskFilteredTree.cxx:964
 AliAnalysisTaskFilteredTree.cxx:965
 AliAnalysisTaskFilteredTree.cxx:966
 AliAnalysisTaskFilteredTree.cxx:967
 AliAnalysisTaskFilteredTree.cxx:968
 AliAnalysisTaskFilteredTree.cxx:969
 AliAnalysisTaskFilteredTree.cxx:970
 AliAnalysisTaskFilteredTree.cxx:971
 AliAnalysisTaskFilteredTree.cxx:972
 AliAnalysisTaskFilteredTree.cxx:973
 AliAnalysisTaskFilteredTree.cxx:974
 AliAnalysisTaskFilteredTree.cxx:975
 AliAnalysisTaskFilteredTree.cxx:976
 AliAnalysisTaskFilteredTree.cxx:977
 AliAnalysisTaskFilteredTree.cxx:978
 AliAnalysisTaskFilteredTree.cxx:979
 AliAnalysisTaskFilteredTree.cxx:980
 AliAnalysisTaskFilteredTree.cxx:981
 AliAnalysisTaskFilteredTree.cxx:982
 AliAnalysisTaskFilteredTree.cxx:983
 AliAnalysisTaskFilteredTree.cxx:984
 AliAnalysisTaskFilteredTree.cxx:985
 AliAnalysisTaskFilteredTree.cxx:986
 AliAnalysisTaskFilteredTree.cxx:987
 AliAnalysisTaskFilteredTree.cxx:988
 AliAnalysisTaskFilteredTree.cxx:989
 AliAnalysisTaskFilteredTree.cxx:990
 AliAnalysisTaskFilteredTree.cxx:991
 AliAnalysisTaskFilteredTree.cxx:992
 AliAnalysisTaskFilteredTree.cxx:993
 AliAnalysisTaskFilteredTree.cxx:994
 AliAnalysisTaskFilteredTree.cxx:995
 AliAnalysisTaskFilteredTree.cxx:996
 AliAnalysisTaskFilteredTree.cxx:997
 AliAnalysisTaskFilteredTree.cxx:998
 AliAnalysisTaskFilteredTree.cxx:999
 AliAnalysisTaskFilteredTree.cxx:1000
 AliAnalysisTaskFilteredTree.cxx:1001
 AliAnalysisTaskFilteredTree.cxx:1002
 AliAnalysisTaskFilteredTree.cxx:1003
 AliAnalysisTaskFilteredTree.cxx:1004
 AliAnalysisTaskFilteredTree.cxx:1005
 AliAnalysisTaskFilteredTree.cxx:1006
 AliAnalysisTaskFilteredTree.cxx:1007
 AliAnalysisTaskFilteredTree.cxx:1008
 AliAnalysisTaskFilteredTree.cxx:1009
 AliAnalysisTaskFilteredTree.cxx:1010
 AliAnalysisTaskFilteredTree.cxx:1011
 AliAnalysisTaskFilteredTree.cxx:1012
 AliAnalysisTaskFilteredTree.cxx:1013
 AliAnalysisTaskFilteredTree.cxx:1014
 AliAnalysisTaskFilteredTree.cxx:1015
 AliAnalysisTaskFilteredTree.cxx:1016
 AliAnalysisTaskFilteredTree.cxx:1017
 AliAnalysisTaskFilteredTree.cxx:1018
 AliAnalysisTaskFilteredTree.cxx:1019
 AliAnalysisTaskFilteredTree.cxx:1020
 AliAnalysisTaskFilteredTree.cxx:1021
 AliAnalysisTaskFilteredTree.cxx:1022
 AliAnalysisTaskFilteredTree.cxx:1023
 AliAnalysisTaskFilteredTree.cxx:1024
 AliAnalysisTaskFilteredTree.cxx:1025
 AliAnalysisTaskFilteredTree.cxx:1026
 AliAnalysisTaskFilteredTree.cxx:1027
 AliAnalysisTaskFilteredTree.cxx:1028
 AliAnalysisTaskFilteredTree.cxx:1029
 AliAnalysisTaskFilteredTree.cxx:1030
 AliAnalysisTaskFilteredTree.cxx:1031
 AliAnalysisTaskFilteredTree.cxx:1032
 AliAnalysisTaskFilteredTree.cxx:1033
 AliAnalysisTaskFilteredTree.cxx:1034
 AliAnalysisTaskFilteredTree.cxx:1035
 AliAnalysisTaskFilteredTree.cxx:1036
 AliAnalysisTaskFilteredTree.cxx:1037
 AliAnalysisTaskFilteredTree.cxx:1038
 AliAnalysisTaskFilteredTree.cxx:1039
 AliAnalysisTaskFilteredTree.cxx:1040
 AliAnalysisTaskFilteredTree.cxx:1041
 AliAnalysisTaskFilteredTree.cxx:1042
 AliAnalysisTaskFilteredTree.cxx:1043
 AliAnalysisTaskFilteredTree.cxx:1044
 AliAnalysisTaskFilteredTree.cxx:1045
 AliAnalysisTaskFilteredTree.cxx:1046
 AliAnalysisTaskFilteredTree.cxx:1047
 AliAnalysisTaskFilteredTree.cxx:1048
 AliAnalysisTaskFilteredTree.cxx:1049
 AliAnalysisTaskFilteredTree.cxx:1050
 AliAnalysisTaskFilteredTree.cxx:1051
 AliAnalysisTaskFilteredTree.cxx:1052
 AliAnalysisTaskFilteredTree.cxx:1053
 AliAnalysisTaskFilteredTree.cxx:1054
 AliAnalysisTaskFilteredTree.cxx:1055
 AliAnalysisTaskFilteredTree.cxx:1056
 AliAnalysisTaskFilteredTree.cxx:1057
 AliAnalysisTaskFilteredTree.cxx:1058
 AliAnalysisTaskFilteredTree.cxx:1059
 AliAnalysisTaskFilteredTree.cxx:1060
 AliAnalysisTaskFilteredTree.cxx:1061
 AliAnalysisTaskFilteredTree.cxx:1062
 AliAnalysisTaskFilteredTree.cxx:1063
 AliAnalysisTaskFilteredTree.cxx:1064
 AliAnalysisTaskFilteredTree.cxx:1065
 AliAnalysisTaskFilteredTree.cxx:1066
 AliAnalysisTaskFilteredTree.cxx:1067
 AliAnalysisTaskFilteredTree.cxx:1068
 AliAnalysisTaskFilteredTree.cxx:1069
 AliAnalysisTaskFilteredTree.cxx:1070
 AliAnalysisTaskFilteredTree.cxx:1071
 AliAnalysisTaskFilteredTree.cxx:1072
 AliAnalysisTaskFilteredTree.cxx:1073
 AliAnalysisTaskFilteredTree.cxx:1074
 AliAnalysisTaskFilteredTree.cxx:1075
 AliAnalysisTaskFilteredTree.cxx:1076
 AliAnalysisTaskFilteredTree.cxx:1077
 AliAnalysisTaskFilteredTree.cxx:1078
 AliAnalysisTaskFilteredTree.cxx:1079
 AliAnalysisTaskFilteredTree.cxx:1080
 AliAnalysisTaskFilteredTree.cxx:1081
 AliAnalysisTaskFilteredTree.cxx:1082
 AliAnalysisTaskFilteredTree.cxx:1083
 AliAnalysisTaskFilteredTree.cxx:1084
 AliAnalysisTaskFilteredTree.cxx:1085
 AliAnalysisTaskFilteredTree.cxx:1086
 AliAnalysisTaskFilteredTree.cxx:1087
 AliAnalysisTaskFilteredTree.cxx:1088
 AliAnalysisTaskFilteredTree.cxx:1089
 AliAnalysisTaskFilteredTree.cxx:1090
 AliAnalysisTaskFilteredTree.cxx:1091
 AliAnalysisTaskFilteredTree.cxx:1092
 AliAnalysisTaskFilteredTree.cxx:1093
 AliAnalysisTaskFilteredTree.cxx:1094
 AliAnalysisTaskFilteredTree.cxx:1095
 AliAnalysisTaskFilteredTree.cxx:1096
 AliAnalysisTaskFilteredTree.cxx:1097
 AliAnalysisTaskFilteredTree.cxx:1098
 AliAnalysisTaskFilteredTree.cxx:1099
 AliAnalysisTaskFilteredTree.cxx:1100
 AliAnalysisTaskFilteredTree.cxx:1101
 AliAnalysisTaskFilteredTree.cxx:1102
 AliAnalysisTaskFilteredTree.cxx:1103
 AliAnalysisTaskFilteredTree.cxx:1104
 AliAnalysisTaskFilteredTree.cxx:1105
 AliAnalysisTaskFilteredTree.cxx:1106
 AliAnalysisTaskFilteredTree.cxx:1107
 AliAnalysisTaskFilteredTree.cxx:1108
 AliAnalysisTaskFilteredTree.cxx:1109
 AliAnalysisTaskFilteredTree.cxx:1110
 AliAnalysisTaskFilteredTree.cxx:1111
 AliAnalysisTaskFilteredTree.cxx:1112
 AliAnalysisTaskFilteredTree.cxx:1113
 AliAnalysisTaskFilteredTree.cxx:1114
 AliAnalysisTaskFilteredTree.cxx:1115
 AliAnalysisTaskFilteredTree.cxx:1116
 AliAnalysisTaskFilteredTree.cxx:1117
 AliAnalysisTaskFilteredTree.cxx:1118
 AliAnalysisTaskFilteredTree.cxx:1119
 AliAnalysisTaskFilteredTree.cxx:1120
 AliAnalysisTaskFilteredTree.cxx:1121
 AliAnalysisTaskFilteredTree.cxx:1122
 AliAnalysisTaskFilteredTree.cxx:1123
 AliAnalysisTaskFilteredTree.cxx:1124
 AliAnalysisTaskFilteredTree.cxx:1125
 AliAnalysisTaskFilteredTree.cxx:1126
 AliAnalysisTaskFilteredTree.cxx:1127
 AliAnalysisTaskFilteredTree.cxx:1128
 AliAnalysisTaskFilteredTree.cxx:1129
 AliAnalysisTaskFilteredTree.cxx:1130
 AliAnalysisTaskFilteredTree.cxx:1131
 AliAnalysisTaskFilteredTree.cxx:1132
 AliAnalysisTaskFilteredTree.cxx:1133
 AliAnalysisTaskFilteredTree.cxx:1134
 AliAnalysisTaskFilteredTree.cxx:1135
 AliAnalysisTaskFilteredTree.cxx:1136
 AliAnalysisTaskFilteredTree.cxx:1137
 AliAnalysisTaskFilteredTree.cxx:1138
 AliAnalysisTaskFilteredTree.cxx:1139
 AliAnalysisTaskFilteredTree.cxx:1140
 AliAnalysisTaskFilteredTree.cxx:1141
 AliAnalysisTaskFilteredTree.cxx:1142
 AliAnalysisTaskFilteredTree.cxx:1143
 AliAnalysisTaskFilteredTree.cxx:1144
 AliAnalysisTaskFilteredTree.cxx:1145
 AliAnalysisTaskFilteredTree.cxx:1146
 AliAnalysisTaskFilteredTree.cxx:1147
 AliAnalysisTaskFilteredTree.cxx:1148
 AliAnalysisTaskFilteredTree.cxx:1149
 AliAnalysisTaskFilteredTree.cxx:1150
 AliAnalysisTaskFilteredTree.cxx:1151
 AliAnalysisTaskFilteredTree.cxx:1152
 AliAnalysisTaskFilteredTree.cxx:1153
 AliAnalysisTaskFilteredTree.cxx:1154
 AliAnalysisTaskFilteredTree.cxx:1155
 AliAnalysisTaskFilteredTree.cxx:1156
 AliAnalysisTaskFilteredTree.cxx:1157
 AliAnalysisTaskFilteredTree.cxx:1158
 AliAnalysisTaskFilteredTree.cxx:1159
 AliAnalysisTaskFilteredTree.cxx:1160
 AliAnalysisTaskFilteredTree.cxx:1161
 AliAnalysisTaskFilteredTree.cxx:1162
 AliAnalysisTaskFilteredTree.cxx:1163
 AliAnalysisTaskFilteredTree.cxx:1164
 AliAnalysisTaskFilteredTree.cxx:1165
 AliAnalysisTaskFilteredTree.cxx:1166
 AliAnalysisTaskFilteredTree.cxx:1167
 AliAnalysisTaskFilteredTree.cxx:1168
 AliAnalysisTaskFilteredTree.cxx:1169
 AliAnalysisTaskFilteredTree.cxx:1170
 AliAnalysisTaskFilteredTree.cxx:1171
 AliAnalysisTaskFilteredTree.cxx:1172
 AliAnalysisTaskFilteredTree.cxx:1173
 AliAnalysisTaskFilteredTree.cxx:1174
 AliAnalysisTaskFilteredTree.cxx:1175
 AliAnalysisTaskFilteredTree.cxx:1176
 AliAnalysisTaskFilteredTree.cxx:1177
 AliAnalysisTaskFilteredTree.cxx:1178
 AliAnalysisTaskFilteredTree.cxx:1179
 AliAnalysisTaskFilteredTree.cxx:1180
 AliAnalysisTaskFilteredTree.cxx:1181
 AliAnalysisTaskFilteredTree.cxx:1182
 AliAnalysisTaskFilteredTree.cxx:1183
 AliAnalysisTaskFilteredTree.cxx:1184
 AliAnalysisTaskFilteredTree.cxx:1185
 AliAnalysisTaskFilteredTree.cxx:1186
 AliAnalysisTaskFilteredTree.cxx:1187
 AliAnalysisTaskFilteredTree.cxx:1188
 AliAnalysisTaskFilteredTree.cxx:1189
 AliAnalysisTaskFilteredTree.cxx:1190
 AliAnalysisTaskFilteredTree.cxx:1191
 AliAnalysisTaskFilteredTree.cxx:1192
 AliAnalysisTaskFilteredTree.cxx:1193
 AliAnalysisTaskFilteredTree.cxx:1194
 AliAnalysisTaskFilteredTree.cxx:1195
 AliAnalysisTaskFilteredTree.cxx:1196
 AliAnalysisTaskFilteredTree.cxx:1197
 AliAnalysisTaskFilteredTree.cxx:1198
 AliAnalysisTaskFilteredTree.cxx:1199
 AliAnalysisTaskFilteredTree.cxx:1200
 AliAnalysisTaskFilteredTree.cxx:1201
 AliAnalysisTaskFilteredTree.cxx:1202
 AliAnalysisTaskFilteredTree.cxx:1203
 AliAnalysisTaskFilteredTree.cxx:1204
 AliAnalysisTaskFilteredTree.cxx:1205
 AliAnalysisTaskFilteredTree.cxx:1206
 AliAnalysisTaskFilteredTree.cxx:1207
 AliAnalysisTaskFilteredTree.cxx:1208
 AliAnalysisTaskFilteredTree.cxx:1209
 AliAnalysisTaskFilteredTree.cxx:1210
 AliAnalysisTaskFilteredTree.cxx:1211
 AliAnalysisTaskFilteredTree.cxx:1212
 AliAnalysisTaskFilteredTree.cxx:1213
 AliAnalysisTaskFilteredTree.cxx:1214
 AliAnalysisTaskFilteredTree.cxx:1215
 AliAnalysisTaskFilteredTree.cxx:1216
 AliAnalysisTaskFilteredTree.cxx:1217
 AliAnalysisTaskFilteredTree.cxx:1218
 AliAnalysisTaskFilteredTree.cxx:1219
 AliAnalysisTaskFilteredTree.cxx:1220
 AliAnalysisTaskFilteredTree.cxx:1221
 AliAnalysisTaskFilteredTree.cxx:1222
 AliAnalysisTaskFilteredTree.cxx:1223
 AliAnalysisTaskFilteredTree.cxx:1224
 AliAnalysisTaskFilteredTree.cxx:1225
 AliAnalysisTaskFilteredTree.cxx:1226
 AliAnalysisTaskFilteredTree.cxx:1227
 AliAnalysisTaskFilteredTree.cxx:1228
 AliAnalysisTaskFilteredTree.cxx:1229
 AliAnalysisTaskFilteredTree.cxx:1230
 AliAnalysisTaskFilteredTree.cxx:1231
 AliAnalysisTaskFilteredTree.cxx:1232
 AliAnalysisTaskFilteredTree.cxx:1233
 AliAnalysisTaskFilteredTree.cxx:1234
 AliAnalysisTaskFilteredTree.cxx:1235
 AliAnalysisTaskFilteredTree.cxx:1236
 AliAnalysisTaskFilteredTree.cxx:1237
 AliAnalysisTaskFilteredTree.cxx:1238
 AliAnalysisTaskFilteredTree.cxx:1239
 AliAnalysisTaskFilteredTree.cxx:1240
 AliAnalysisTaskFilteredTree.cxx:1241
 AliAnalysisTaskFilteredTree.cxx:1242
 AliAnalysisTaskFilteredTree.cxx:1243
 AliAnalysisTaskFilteredTree.cxx:1244
 AliAnalysisTaskFilteredTree.cxx:1245
 AliAnalysisTaskFilteredTree.cxx:1246
 AliAnalysisTaskFilteredTree.cxx:1247
 AliAnalysisTaskFilteredTree.cxx:1248
 AliAnalysisTaskFilteredTree.cxx:1249
 AliAnalysisTaskFilteredTree.cxx:1250
 AliAnalysisTaskFilteredTree.cxx:1251
 AliAnalysisTaskFilteredTree.cxx:1252
 AliAnalysisTaskFilteredTree.cxx:1253
 AliAnalysisTaskFilteredTree.cxx:1254
 AliAnalysisTaskFilteredTree.cxx:1255
 AliAnalysisTaskFilteredTree.cxx:1256
 AliAnalysisTaskFilteredTree.cxx:1257
 AliAnalysisTaskFilteredTree.cxx:1258
 AliAnalysisTaskFilteredTree.cxx:1259
 AliAnalysisTaskFilteredTree.cxx:1260
 AliAnalysisTaskFilteredTree.cxx:1261
 AliAnalysisTaskFilteredTree.cxx:1262
 AliAnalysisTaskFilteredTree.cxx:1263
 AliAnalysisTaskFilteredTree.cxx:1264
 AliAnalysisTaskFilteredTree.cxx:1265
 AliAnalysisTaskFilteredTree.cxx:1266
 AliAnalysisTaskFilteredTree.cxx:1267
 AliAnalysisTaskFilteredTree.cxx:1268
 AliAnalysisTaskFilteredTree.cxx:1269
 AliAnalysisTaskFilteredTree.cxx:1270
 AliAnalysisTaskFilteredTree.cxx:1271
 AliAnalysisTaskFilteredTree.cxx:1272
 AliAnalysisTaskFilteredTree.cxx:1273
 AliAnalysisTaskFilteredTree.cxx:1274
 AliAnalysisTaskFilteredTree.cxx:1275
 AliAnalysisTaskFilteredTree.cxx:1276
 AliAnalysisTaskFilteredTree.cxx:1277
 AliAnalysisTaskFilteredTree.cxx:1278
 AliAnalysisTaskFilteredTree.cxx:1279
 AliAnalysisTaskFilteredTree.cxx:1280
 AliAnalysisTaskFilteredTree.cxx:1281
 AliAnalysisTaskFilteredTree.cxx:1282
 AliAnalysisTaskFilteredTree.cxx:1283
 AliAnalysisTaskFilteredTree.cxx:1284
 AliAnalysisTaskFilteredTree.cxx:1285
 AliAnalysisTaskFilteredTree.cxx:1286
 AliAnalysisTaskFilteredTree.cxx:1287
 AliAnalysisTaskFilteredTree.cxx:1288
 AliAnalysisTaskFilteredTree.cxx:1289
 AliAnalysisTaskFilteredTree.cxx:1290
 AliAnalysisTaskFilteredTree.cxx:1291
 AliAnalysisTaskFilteredTree.cxx:1292
 AliAnalysisTaskFilteredTree.cxx:1293
 AliAnalysisTaskFilteredTree.cxx:1294
 AliAnalysisTaskFilteredTree.cxx:1295
 AliAnalysisTaskFilteredTree.cxx:1296
 AliAnalysisTaskFilteredTree.cxx:1297
 AliAnalysisTaskFilteredTree.cxx:1298
 AliAnalysisTaskFilteredTree.cxx:1299
 AliAnalysisTaskFilteredTree.cxx:1300
 AliAnalysisTaskFilteredTree.cxx:1301
 AliAnalysisTaskFilteredTree.cxx:1302
 AliAnalysisTaskFilteredTree.cxx:1303
 AliAnalysisTaskFilteredTree.cxx:1304
 AliAnalysisTaskFilteredTree.cxx:1305
 AliAnalysisTaskFilteredTree.cxx:1306
 AliAnalysisTaskFilteredTree.cxx:1307
 AliAnalysisTaskFilteredTree.cxx:1308
 AliAnalysisTaskFilteredTree.cxx:1309
 AliAnalysisTaskFilteredTree.cxx:1310
 AliAnalysisTaskFilteredTree.cxx:1311
 AliAnalysisTaskFilteredTree.cxx:1312
 AliAnalysisTaskFilteredTree.cxx:1313
 AliAnalysisTaskFilteredTree.cxx:1314
 AliAnalysisTaskFilteredTree.cxx:1315
 AliAnalysisTaskFilteredTree.cxx:1316
 AliAnalysisTaskFilteredTree.cxx:1317
 AliAnalysisTaskFilteredTree.cxx:1318
 AliAnalysisTaskFilteredTree.cxx:1319
 AliAnalysisTaskFilteredTree.cxx:1320
 AliAnalysisTaskFilteredTree.cxx:1321
 AliAnalysisTaskFilteredTree.cxx:1322
 AliAnalysisTaskFilteredTree.cxx:1323
 AliAnalysisTaskFilteredTree.cxx:1324
 AliAnalysisTaskFilteredTree.cxx:1325
 AliAnalysisTaskFilteredTree.cxx:1326
 AliAnalysisTaskFilteredTree.cxx:1327
 AliAnalysisTaskFilteredTree.cxx:1328
 AliAnalysisTaskFilteredTree.cxx:1329
 AliAnalysisTaskFilteredTree.cxx:1330
 AliAnalysisTaskFilteredTree.cxx:1331
 AliAnalysisTaskFilteredTree.cxx:1332
 AliAnalysisTaskFilteredTree.cxx:1333
 AliAnalysisTaskFilteredTree.cxx:1334
 AliAnalysisTaskFilteredTree.cxx:1335
 AliAnalysisTaskFilteredTree.cxx:1336
 AliAnalysisTaskFilteredTree.cxx:1337
 AliAnalysisTaskFilteredTree.cxx:1338
 AliAnalysisTaskFilteredTree.cxx:1339
 AliAnalysisTaskFilteredTree.cxx:1340
 AliAnalysisTaskFilteredTree.cxx:1341
 AliAnalysisTaskFilteredTree.cxx:1342
 AliAnalysisTaskFilteredTree.cxx:1343
 AliAnalysisTaskFilteredTree.cxx:1344
 AliAnalysisTaskFilteredTree.cxx:1345
 AliAnalysisTaskFilteredTree.cxx:1346
 AliAnalysisTaskFilteredTree.cxx:1347
 AliAnalysisTaskFilteredTree.cxx:1348
 AliAnalysisTaskFilteredTree.cxx:1349
 AliAnalysisTaskFilteredTree.cxx:1350
 AliAnalysisTaskFilteredTree.cxx:1351
 AliAnalysisTaskFilteredTree.cxx:1352
 AliAnalysisTaskFilteredTree.cxx:1353
 AliAnalysisTaskFilteredTree.cxx:1354
 AliAnalysisTaskFilteredTree.cxx:1355
 AliAnalysisTaskFilteredTree.cxx:1356
 AliAnalysisTaskFilteredTree.cxx:1357
 AliAnalysisTaskFilteredTree.cxx:1358
 AliAnalysisTaskFilteredTree.cxx:1359
 AliAnalysisTaskFilteredTree.cxx:1360
 AliAnalysisTaskFilteredTree.cxx:1361
 AliAnalysisTaskFilteredTree.cxx:1362
 AliAnalysisTaskFilteredTree.cxx:1363
 AliAnalysisTaskFilteredTree.cxx:1364
 AliAnalysisTaskFilteredTree.cxx:1365
 AliAnalysisTaskFilteredTree.cxx:1366
 AliAnalysisTaskFilteredTree.cxx:1367
 AliAnalysisTaskFilteredTree.cxx:1368
 AliAnalysisTaskFilteredTree.cxx:1369
 AliAnalysisTaskFilteredTree.cxx:1370
 AliAnalysisTaskFilteredTree.cxx:1371
 AliAnalysisTaskFilteredTree.cxx:1372
 AliAnalysisTaskFilteredTree.cxx:1373
 AliAnalysisTaskFilteredTree.cxx:1374
 AliAnalysisTaskFilteredTree.cxx:1375
 AliAnalysisTaskFilteredTree.cxx:1376
 AliAnalysisTaskFilteredTree.cxx:1377
 AliAnalysisTaskFilteredTree.cxx:1378
 AliAnalysisTaskFilteredTree.cxx:1379
 AliAnalysisTaskFilteredTree.cxx:1380
 AliAnalysisTaskFilteredTree.cxx:1381
 AliAnalysisTaskFilteredTree.cxx:1382
 AliAnalysisTaskFilteredTree.cxx:1383
 AliAnalysisTaskFilteredTree.cxx:1384
 AliAnalysisTaskFilteredTree.cxx:1385
 AliAnalysisTaskFilteredTree.cxx:1386
 AliAnalysisTaskFilteredTree.cxx:1387
 AliAnalysisTaskFilteredTree.cxx:1388
 AliAnalysisTaskFilteredTree.cxx:1389
 AliAnalysisTaskFilteredTree.cxx:1390
 AliAnalysisTaskFilteredTree.cxx:1391
 AliAnalysisTaskFilteredTree.cxx:1392
 AliAnalysisTaskFilteredTree.cxx:1393
 AliAnalysisTaskFilteredTree.cxx:1394
 AliAnalysisTaskFilteredTree.cxx:1395
 AliAnalysisTaskFilteredTree.cxx:1396
 AliAnalysisTaskFilteredTree.cxx:1397
 AliAnalysisTaskFilteredTree.cxx:1398
 AliAnalysisTaskFilteredTree.cxx:1399
 AliAnalysisTaskFilteredTree.cxx:1400
 AliAnalysisTaskFilteredTree.cxx:1401
 AliAnalysisTaskFilteredTree.cxx:1402
 AliAnalysisTaskFilteredTree.cxx:1403
 AliAnalysisTaskFilteredTree.cxx:1404
 AliAnalysisTaskFilteredTree.cxx:1405
 AliAnalysisTaskFilteredTree.cxx:1406
 AliAnalysisTaskFilteredTree.cxx:1407
 AliAnalysisTaskFilteredTree.cxx:1408
 AliAnalysisTaskFilteredTree.cxx:1409
 AliAnalysisTaskFilteredTree.cxx:1410
 AliAnalysisTaskFilteredTree.cxx:1411
 AliAnalysisTaskFilteredTree.cxx:1412
 AliAnalysisTaskFilteredTree.cxx:1413
 AliAnalysisTaskFilteredTree.cxx:1414
 AliAnalysisTaskFilteredTree.cxx:1415
 AliAnalysisTaskFilteredTree.cxx:1416
 AliAnalysisTaskFilteredTree.cxx:1417
 AliAnalysisTaskFilteredTree.cxx:1418
 AliAnalysisTaskFilteredTree.cxx:1419
 AliAnalysisTaskFilteredTree.cxx:1420
 AliAnalysisTaskFilteredTree.cxx:1421
 AliAnalysisTaskFilteredTree.cxx:1422
 AliAnalysisTaskFilteredTree.cxx:1423
 AliAnalysisTaskFilteredTree.cxx:1424
 AliAnalysisTaskFilteredTree.cxx:1425
 AliAnalysisTaskFilteredTree.cxx:1426
 AliAnalysisTaskFilteredTree.cxx:1427
 AliAnalysisTaskFilteredTree.cxx:1428
 AliAnalysisTaskFilteredTree.cxx:1429
 AliAnalysisTaskFilteredTree.cxx:1430
 AliAnalysisTaskFilteredTree.cxx:1431
 AliAnalysisTaskFilteredTree.cxx:1432
 AliAnalysisTaskFilteredTree.cxx:1433
 AliAnalysisTaskFilteredTree.cxx:1434
 AliAnalysisTaskFilteredTree.cxx:1435
 AliAnalysisTaskFilteredTree.cxx:1436
 AliAnalysisTaskFilteredTree.cxx:1437
 AliAnalysisTaskFilteredTree.cxx:1438
 AliAnalysisTaskFilteredTree.cxx:1439
 AliAnalysisTaskFilteredTree.cxx:1440
 AliAnalysisTaskFilteredTree.cxx:1441
 AliAnalysisTaskFilteredTree.cxx:1442
 AliAnalysisTaskFilteredTree.cxx:1443
 AliAnalysisTaskFilteredTree.cxx:1444
 AliAnalysisTaskFilteredTree.cxx:1445
 AliAnalysisTaskFilteredTree.cxx:1446
 AliAnalysisTaskFilteredTree.cxx:1447
 AliAnalysisTaskFilteredTree.cxx:1448
 AliAnalysisTaskFilteredTree.cxx:1449
 AliAnalysisTaskFilteredTree.cxx:1450
 AliAnalysisTaskFilteredTree.cxx:1451
 AliAnalysisTaskFilteredTree.cxx:1452
 AliAnalysisTaskFilteredTree.cxx:1453
 AliAnalysisTaskFilteredTree.cxx:1454
 AliAnalysisTaskFilteredTree.cxx:1455
 AliAnalysisTaskFilteredTree.cxx:1456
 AliAnalysisTaskFilteredTree.cxx:1457
 AliAnalysisTaskFilteredTree.cxx:1458
 AliAnalysisTaskFilteredTree.cxx:1459
 AliAnalysisTaskFilteredTree.cxx:1460
 AliAnalysisTaskFilteredTree.cxx:1461
 AliAnalysisTaskFilteredTree.cxx:1462
 AliAnalysisTaskFilteredTree.cxx:1463
 AliAnalysisTaskFilteredTree.cxx:1464
 AliAnalysisTaskFilteredTree.cxx:1465
 AliAnalysisTaskFilteredTree.cxx:1466
 AliAnalysisTaskFilteredTree.cxx:1467
 AliAnalysisTaskFilteredTree.cxx:1468
 AliAnalysisTaskFilteredTree.cxx:1469
 AliAnalysisTaskFilteredTree.cxx:1470
 AliAnalysisTaskFilteredTree.cxx:1471
 AliAnalysisTaskFilteredTree.cxx:1472
 AliAnalysisTaskFilteredTree.cxx:1473
 AliAnalysisTaskFilteredTree.cxx:1474
 AliAnalysisTaskFilteredTree.cxx:1475
 AliAnalysisTaskFilteredTree.cxx:1476
 AliAnalysisTaskFilteredTree.cxx:1477
 AliAnalysisTaskFilteredTree.cxx:1478
 AliAnalysisTaskFilteredTree.cxx:1479
 AliAnalysisTaskFilteredTree.cxx:1480
 AliAnalysisTaskFilteredTree.cxx:1481
 AliAnalysisTaskFilteredTree.cxx:1482
 AliAnalysisTaskFilteredTree.cxx:1483
 AliAnalysisTaskFilteredTree.cxx:1484
 AliAnalysisTaskFilteredTree.cxx:1485
 AliAnalysisTaskFilteredTree.cxx:1486
 AliAnalysisTaskFilteredTree.cxx:1487
 AliAnalysisTaskFilteredTree.cxx:1488
 AliAnalysisTaskFilteredTree.cxx:1489
 AliAnalysisTaskFilteredTree.cxx:1490
 AliAnalysisTaskFilteredTree.cxx:1491
 AliAnalysisTaskFilteredTree.cxx:1492
 AliAnalysisTaskFilteredTree.cxx:1493
 AliAnalysisTaskFilteredTree.cxx:1494
 AliAnalysisTaskFilteredTree.cxx:1495
 AliAnalysisTaskFilteredTree.cxx:1496
 AliAnalysisTaskFilteredTree.cxx:1497
 AliAnalysisTaskFilteredTree.cxx:1498
 AliAnalysisTaskFilteredTree.cxx:1499
 AliAnalysisTaskFilteredTree.cxx:1500
 AliAnalysisTaskFilteredTree.cxx:1501
 AliAnalysisTaskFilteredTree.cxx:1502
 AliAnalysisTaskFilteredTree.cxx:1503
 AliAnalysisTaskFilteredTree.cxx:1504
 AliAnalysisTaskFilteredTree.cxx:1505
 AliAnalysisTaskFilteredTree.cxx:1506
 AliAnalysisTaskFilteredTree.cxx:1507
 AliAnalysisTaskFilteredTree.cxx:1508
 AliAnalysisTaskFilteredTree.cxx:1509
 AliAnalysisTaskFilteredTree.cxx:1510
 AliAnalysisTaskFilteredTree.cxx:1511
 AliAnalysisTaskFilteredTree.cxx:1512
 AliAnalysisTaskFilteredTree.cxx:1513
 AliAnalysisTaskFilteredTree.cxx:1514
 AliAnalysisTaskFilteredTree.cxx:1515
 AliAnalysisTaskFilteredTree.cxx:1516
 AliAnalysisTaskFilteredTree.cxx:1517
 AliAnalysisTaskFilteredTree.cxx:1518
 AliAnalysisTaskFilteredTree.cxx:1519
 AliAnalysisTaskFilteredTree.cxx:1520
 AliAnalysisTaskFilteredTree.cxx:1521
 AliAnalysisTaskFilteredTree.cxx:1522
 AliAnalysisTaskFilteredTree.cxx:1523
 AliAnalysisTaskFilteredTree.cxx:1524
 AliAnalysisTaskFilteredTree.cxx:1525
 AliAnalysisTaskFilteredTree.cxx:1526
 AliAnalysisTaskFilteredTree.cxx:1527
 AliAnalysisTaskFilteredTree.cxx:1528
 AliAnalysisTaskFilteredTree.cxx:1529
 AliAnalysisTaskFilteredTree.cxx:1530
 AliAnalysisTaskFilteredTree.cxx:1531
 AliAnalysisTaskFilteredTree.cxx:1532
 AliAnalysisTaskFilteredTree.cxx:1533
 AliAnalysisTaskFilteredTree.cxx:1534
 AliAnalysisTaskFilteredTree.cxx:1535
 AliAnalysisTaskFilteredTree.cxx:1536
 AliAnalysisTaskFilteredTree.cxx:1537
 AliAnalysisTaskFilteredTree.cxx:1538
 AliAnalysisTaskFilteredTree.cxx:1539
 AliAnalysisTaskFilteredTree.cxx:1540
 AliAnalysisTaskFilteredTree.cxx:1541
 AliAnalysisTaskFilteredTree.cxx:1542
 AliAnalysisTaskFilteredTree.cxx:1543
 AliAnalysisTaskFilteredTree.cxx:1544
 AliAnalysisTaskFilteredTree.cxx:1545
 AliAnalysisTaskFilteredTree.cxx:1546
 AliAnalysisTaskFilteredTree.cxx:1547
 AliAnalysisTaskFilteredTree.cxx:1548
 AliAnalysisTaskFilteredTree.cxx:1549
 AliAnalysisTaskFilteredTree.cxx:1550
 AliAnalysisTaskFilteredTree.cxx:1551
 AliAnalysisTaskFilteredTree.cxx:1552
 AliAnalysisTaskFilteredTree.cxx:1553
 AliAnalysisTaskFilteredTree.cxx:1554
 AliAnalysisTaskFilteredTree.cxx:1555
 AliAnalysisTaskFilteredTree.cxx:1556
 AliAnalysisTaskFilteredTree.cxx:1557
 AliAnalysisTaskFilteredTree.cxx:1558
 AliAnalysisTaskFilteredTree.cxx:1559
 AliAnalysisTaskFilteredTree.cxx:1560
 AliAnalysisTaskFilteredTree.cxx:1561
 AliAnalysisTaskFilteredTree.cxx:1562
 AliAnalysisTaskFilteredTree.cxx:1563
 AliAnalysisTaskFilteredTree.cxx:1564
 AliAnalysisTaskFilteredTree.cxx:1565
 AliAnalysisTaskFilteredTree.cxx:1566
 AliAnalysisTaskFilteredTree.cxx:1567
 AliAnalysisTaskFilteredTree.cxx:1568
 AliAnalysisTaskFilteredTree.cxx:1569
 AliAnalysisTaskFilteredTree.cxx:1570
 AliAnalysisTaskFilteredTree.cxx:1571
 AliAnalysisTaskFilteredTree.cxx:1572
 AliAnalysisTaskFilteredTree.cxx:1573
 AliAnalysisTaskFilteredTree.cxx:1574
 AliAnalysisTaskFilteredTree.cxx:1575
 AliAnalysisTaskFilteredTree.cxx:1576
 AliAnalysisTaskFilteredTree.cxx:1577
 AliAnalysisTaskFilteredTree.cxx:1578
 AliAnalysisTaskFilteredTree.cxx:1579
 AliAnalysisTaskFilteredTree.cxx:1580
 AliAnalysisTaskFilteredTree.cxx:1581
 AliAnalysisTaskFilteredTree.cxx:1582
 AliAnalysisTaskFilteredTree.cxx:1583
 AliAnalysisTaskFilteredTree.cxx:1584
 AliAnalysisTaskFilteredTree.cxx:1585
 AliAnalysisTaskFilteredTree.cxx:1586
 AliAnalysisTaskFilteredTree.cxx:1587
 AliAnalysisTaskFilteredTree.cxx:1588
 AliAnalysisTaskFilteredTree.cxx:1589
 AliAnalysisTaskFilteredTree.cxx:1590
 AliAnalysisTaskFilteredTree.cxx:1591
 AliAnalysisTaskFilteredTree.cxx:1592
 AliAnalysisTaskFilteredTree.cxx:1593
 AliAnalysisTaskFilteredTree.cxx:1594
 AliAnalysisTaskFilteredTree.cxx:1595
 AliAnalysisTaskFilteredTree.cxx:1596
 AliAnalysisTaskFilteredTree.cxx:1597
 AliAnalysisTaskFilteredTree.cxx:1598
 AliAnalysisTaskFilteredTree.cxx:1599
 AliAnalysisTaskFilteredTree.cxx:1600
 AliAnalysisTaskFilteredTree.cxx:1601
 AliAnalysisTaskFilteredTree.cxx:1602
 AliAnalysisTaskFilteredTree.cxx:1603
 AliAnalysisTaskFilteredTree.cxx:1604
 AliAnalysisTaskFilteredTree.cxx:1605
 AliAnalysisTaskFilteredTree.cxx:1606
 AliAnalysisTaskFilteredTree.cxx:1607
 AliAnalysisTaskFilteredTree.cxx:1608
 AliAnalysisTaskFilteredTree.cxx:1609
 AliAnalysisTaskFilteredTree.cxx:1610
 AliAnalysisTaskFilteredTree.cxx:1611
 AliAnalysisTaskFilteredTree.cxx:1612
 AliAnalysisTaskFilteredTree.cxx:1613
 AliAnalysisTaskFilteredTree.cxx:1614
 AliAnalysisTaskFilteredTree.cxx:1615
 AliAnalysisTaskFilteredTree.cxx:1616
 AliAnalysisTaskFilteredTree.cxx:1617
 AliAnalysisTaskFilteredTree.cxx:1618
 AliAnalysisTaskFilteredTree.cxx:1619
 AliAnalysisTaskFilteredTree.cxx:1620
 AliAnalysisTaskFilteredTree.cxx:1621
 AliAnalysisTaskFilteredTree.cxx:1622
 AliAnalysisTaskFilteredTree.cxx:1623
 AliAnalysisTaskFilteredTree.cxx:1624
 AliAnalysisTaskFilteredTree.cxx:1625
 AliAnalysisTaskFilteredTree.cxx:1626
 AliAnalysisTaskFilteredTree.cxx:1627
 AliAnalysisTaskFilteredTree.cxx:1628
 AliAnalysisTaskFilteredTree.cxx:1629
 AliAnalysisTaskFilteredTree.cxx:1630
 AliAnalysisTaskFilteredTree.cxx:1631
 AliAnalysisTaskFilteredTree.cxx:1632
 AliAnalysisTaskFilteredTree.cxx:1633
 AliAnalysisTaskFilteredTree.cxx:1634
 AliAnalysisTaskFilteredTree.cxx:1635
 AliAnalysisTaskFilteredTree.cxx:1636
 AliAnalysisTaskFilteredTree.cxx:1637
 AliAnalysisTaskFilteredTree.cxx:1638
 AliAnalysisTaskFilteredTree.cxx:1639
 AliAnalysisTaskFilteredTree.cxx:1640
 AliAnalysisTaskFilteredTree.cxx:1641
 AliAnalysisTaskFilteredTree.cxx:1642
 AliAnalysisTaskFilteredTree.cxx:1643
 AliAnalysisTaskFilteredTree.cxx:1644
 AliAnalysisTaskFilteredTree.cxx:1645
 AliAnalysisTaskFilteredTree.cxx:1646
 AliAnalysisTaskFilteredTree.cxx:1647
 AliAnalysisTaskFilteredTree.cxx:1648
 AliAnalysisTaskFilteredTree.cxx:1649
 AliAnalysisTaskFilteredTree.cxx:1650
 AliAnalysisTaskFilteredTree.cxx:1651
 AliAnalysisTaskFilteredTree.cxx:1652
 AliAnalysisTaskFilteredTree.cxx:1653
 AliAnalysisTaskFilteredTree.cxx:1654
 AliAnalysisTaskFilteredTree.cxx:1655
 AliAnalysisTaskFilteredTree.cxx:1656
 AliAnalysisTaskFilteredTree.cxx:1657
 AliAnalysisTaskFilteredTree.cxx:1658
 AliAnalysisTaskFilteredTree.cxx:1659
 AliAnalysisTaskFilteredTree.cxx:1660
 AliAnalysisTaskFilteredTree.cxx:1661
 AliAnalysisTaskFilteredTree.cxx:1662
 AliAnalysisTaskFilteredTree.cxx:1663
 AliAnalysisTaskFilteredTree.cxx:1664
 AliAnalysisTaskFilteredTree.cxx:1665
 AliAnalysisTaskFilteredTree.cxx:1666
 AliAnalysisTaskFilteredTree.cxx:1667
 AliAnalysisTaskFilteredTree.cxx:1668
 AliAnalysisTaskFilteredTree.cxx:1669
 AliAnalysisTaskFilteredTree.cxx:1670
 AliAnalysisTaskFilteredTree.cxx:1671
 AliAnalysisTaskFilteredTree.cxx:1672
 AliAnalysisTaskFilteredTree.cxx:1673
 AliAnalysisTaskFilteredTree.cxx:1674
 AliAnalysisTaskFilteredTree.cxx:1675
 AliAnalysisTaskFilteredTree.cxx:1676
 AliAnalysisTaskFilteredTree.cxx:1677
 AliAnalysisTaskFilteredTree.cxx:1678
 AliAnalysisTaskFilteredTree.cxx:1679
 AliAnalysisTaskFilteredTree.cxx:1680
 AliAnalysisTaskFilteredTree.cxx:1681
 AliAnalysisTaskFilteredTree.cxx:1682
 AliAnalysisTaskFilteredTree.cxx:1683
 AliAnalysisTaskFilteredTree.cxx:1684
 AliAnalysisTaskFilteredTree.cxx:1685
 AliAnalysisTaskFilteredTree.cxx:1686
 AliAnalysisTaskFilteredTree.cxx:1687
 AliAnalysisTaskFilteredTree.cxx:1688
 AliAnalysisTaskFilteredTree.cxx:1689
 AliAnalysisTaskFilteredTree.cxx:1690
 AliAnalysisTaskFilteredTree.cxx:1691
 AliAnalysisTaskFilteredTree.cxx:1692
 AliAnalysisTaskFilteredTree.cxx:1693
 AliAnalysisTaskFilteredTree.cxx:1694
 AliAnalysisTaskFilteredTree.cxx:1695
 AliAnalysisTaskFilteredTree.cxx:1696
 AliAnalysisTaskFilteredTree.cxx:1697
 AliAnalysisTaskFilteredTree.cxx:1698
 AliAnalysisTaskFilteredTree.cxx:1699
 AliAnalysisTaskFilteredTree.cxx:1700
 AliAnalysisTaskFilteredTree.cxx:1701
 AliAnalysisTaskFilteredTree.cxx:1702
 AliAnalysisTaskFilteredTree.cxx:1703
 AliAnalysisTaskFilteredTree.cxx:1704
 AliAnalysisTaskFilteredTree.cxx:1705
 AliAnalysisTaskFilteredTree.cxx:1706
 AliAnalysisTaskFilteredTree.cxx:1707
 AliAnalysisTaskFilteredTree.cxx:1708
 AliAnalysisTaskFilteredTree.cxx:1709
 AliAnalysisTaskFilteredTree.cxx:1710
 AliAnalysisTaskFilteredTree.cxx:1711
 AliAnalysisTaskFilteredTree.cxx:1712
 AliAnalysisTaskFilteredTree.cxx:1713
 AliAnalysisTaskFilteredTree.cxx:1714
 AliAnalysisTaskFilteredTree.cxx:1715
 AliAnalysisTaskFilteredTree.cxx:1716
 AliAnalysisTaskFilteredTree.cxx:1717
 AliAnalysisTaskFilteredTree.cxx:1718
 AliAnalysisTaskFilteredTree.cxx:1719
 AliAnalysisTaskFilteredTree.cxx:1720
 AliAnalysisTaskFilteredTree.cxx:1721
 AliAnalysisTaskFilteredTree.cxx:1722
 AliAnalysisTaskFilteredTree.cxx:1723
 AliAnalysisTaskFilteredTree.cxx:1724
 AliAnalysisTaskFilteredTree.cxx:1725
 AliAnalysisTaskFilteredTree.cxx:1726
 AliAnalysisTaskFilteredTree.cxx:1727
 AliAnalysisTaskFilteredTree.cxx:1728
 AliAnalysisTaskFilteredTree.cxx:1729
 AliAnalysisTaskFilteredTree.cxx:1730
 AliAnalysisTaskFilteredTree.cxx:1731
 AliAnalysisTaskFilteredTree.cxx:1732
 AliAnalysisTaskFilteredTree.cxx:1733
 AliAnalysisTaskFilteredTree.cxx:1734
 AliAnalysisTaskFilteredTree.cxx:1735
 AliAnalysisTaskFilteredTree.cxx:1736
 AliAnalysisTaskFilteredTree.cxx:1737
 AliAnalysisTaskFilteredTree.cxx:1738
 AliAnalysisTaskFilteredTree.cxx:1739
 AliAnalysisTaskFilteredTree.cxx:1740
 AliAnalysisTaskFilteredTree.cxx:1741
 AliAnalysisTaskFilteredTree.cxx:1742
 AliAnalysisTaskFilteredTree.cxx:1743
 AliAnalysisTaskFilteredTree.cxx:1744
 AliAnalysisTaskFilteredTree.cxx:1745
 AliAnalysisTaskFilteredTree.cxx:1746
 AliAnalysisTaskFilteredTree.cxx:1747
 AliAnalysisTaskFilteredTree.cxx:1748
 AliAnalysisTaskFilteredTree.cxx:1749
 AliAnalysisTaskFilteredTree.cxx:1750
 AliAnalysisTaskFilteredTree.cxx:1751
 AliAnalysisTaskFilteredTree.cxx:1752
 AliAnalysisTaskFilteredTree.cxx:1753
 AliAnalysisTaskFilteredTree.cxx:1754
 AliAnalysisTaskFilteredTree.cxx:1755
 AliAnalysisTaskFilteredTree.cxx:1756
 AliAnalysisTaskFilteredTree.cxx:1757
 AliAnalysisTaskFilteredTree.cxx:1758
 AliAnalysisTaskFilteredTree.cxx:1759
 AliAnalysisTaskFilteredTree.cxx:1760
 AliAnalysisTaskFilteredTree.cxx:1761
 AliAnalysisTaskFilteredTree.cxx:1762
 AliAnalysisTaskFilteredTree.cxx:1763
 AliAnalysisTaskFilteredTree.cxx:1764
 AliAnalysisTaskFilteredTree.cxx:1765
 AliAnalysisTaskFilteredTree.cxx:1766
 AliAnalysisTaskFilteredTree.cxx:1767
 AliAnalysisTaskFilteredTree.cxx:1768
 AliAnalysisTaskFilteredTree.cxx:1769
 AliAnalysisTaskFilteredTree.cxx:1770
 AliAnalysisTaskFilteredTree.cxx:1771
 AliAnalysisTaskFilteredTree.cxx:1772
 AliAnalysisTaskFilteredTree.cxx:1773
 AliAnalysisTaskFilteredTree.cxx:1774
 AliAnalysisTaskFilteredTree.cxx:1775
 AliAnalysisTaskFilteredTree.cxx:1776
 AliAnalysisTaskFilteredTree.cxx:1777
 AliAnalysisTaskFilteredTree.cxx:1778
 AliAnalysisTaskFilteredTree.cxx:1779
 AliAnalysisTaskFilteredTree.cxx:1780
 AliAnalysisTaskFilteredTree.cxx:1781
 AliAnalysisTaskFilteredTree.cxx:1782
 AliAnalysisTaskFilteredTree.cxx:1783
 AliAnalysisTaskFilteredTree.cxx:1784
 AliAnalysisTaskFilteredTree.cxx:1785
 AliAnalysisTaskFilteredTree.cxx:1786
 AliAnalysisTaskFilteredTree.cxx:1787
 AliAnalysisTaskFilteredTree.cxx:1788
 AliAnalysisTaskFilteredTree.cxx:1789
 AliAnalysisTaskFilteredTree.cxx:1790
 AliAnalysisTaskFilteredTree.cxx:1791
 AliAnalysisTaskFilteredTree.cxx:1792
 AliAnalysisTaskFilteredTree.cxx:1793
 AliAnalysisTaskFilteredTree.cxx:1794
 AliAnalysisTaskFilteredTree.cxx:1795
 AliAnalysisTaskFilteredTree.cxx:1796
 AliAnalysisTaskFilteredTree.cxx:1797
 AliAnalysisTaskFilteredTree.cxx:1798
 AliAnalysisTaskFilteredTree.cxx:1799
 AliAnalysisTaskFilteredTree.cxx:1800
 AliAnalysisTaskFilteredTree.cxx:1801
 AliAnalysisTaskFilteredTree.cxx:1802
 AliAnalysisTaskFilteredTree.cxx:1803
 AliAnalysisTaskFilteredTree.cxx:1804
 AliAnalysisTaskFilteredTree.cxx:1805
 AliAnalysisTaskFilteredTree.cxx:1806
 AliAnalysisTaskFilteredTree.cxx:1807
 AliAnalysisTaskFilteredTree.cxx:1808
 AliAnalysisTaskFilteredTree.cxx:1809
 AliAnalysisTaskFilteredTree.cxx:1810
 AliAnalysisTaskFilteredTree.cxx:1811
 AliAnalysisTaskFilteredTree.cxx:1812
 AliAnalysisTaskFilteredTree.cxx:1813
 AliAnalysisTaskFilteredTree.cxx:1814
 AliAnalysisTaskFilteredTree.cxx:1815
 AliAnalysisTaskFilteredTree.cxx:1816
 AliAnalysisTaskFilteredTree.cxx:1817
 AliAnalysisTaskFilteredTree.cxx:1818
 AliAnalysisTaskFilteredTree.cxx:1819
 AliAnalysisTaskFilteredTree.cxx:1820
 AliAnalysisTaskFilteredTree.cxx:1821
 AliAnalysisTaskFilteredTree.cxx:1822
 AliAnalysisTaskFilteredTree.cxx:1823
 AliAnalysisTaskFilteredTree.cxx:1824
 AliAnalysisTaskFilteredTree.cxx:1825
 AliAnalysisTaskFilteredTree.cxx:1826
 AliAnalysisTaskFilteredTree.cxx:1827
 AliAnalysisTaskFilteredTree.cxx:1828
 AliAnalysisTaskFilteredTree.cxx:1829
 AliAnalysisTaskFilteredTree.cxx:1830
 AliAnalysisTaskFilteredTree.cxx:1831
 AliAnalysisTaskFilteredTree.cxx:1832
 AliAnalysisTaskFilteredTree.cxx:1833
 AliAnalysisTaskFilteredTree.cxx:1834
 AliAnalysisTaskFilteredTree.cxx:1835
 AliAnalysisTaskFilteredTree.cxx:1836
 AliAnalysisTaskFilteredTree.cxx:1837
 AliAnalysisTaskFilteredTree.cxx:1838
 AliAnalysisTaskFilteredTree.cxx:1839
 AliAnalysisTaskFilteredTree.cxx:1840
 AliAnalysisTaskFilteredTree.cxx:1841
 AliAnalysisTaskFilteredTree.cxx:1842
 AliAnalysisTaskFilteredTree.cxx:1843
 AliAnalysisTaskFilteredTree.cxx:1844
 AliAnalysisTaskFilteredTree.cxx:1845
 AliAnalysisTaskFilteredTree.cxx:1846
 AliAnalysisTaskFilteredTree.cxx:1847
 AliAnalysisTaskFilteredTree.cxx:1848
 AliAnalysisTaskFilteredTree.cxx:1849
 AliAnalysisTaskFilteredTree.cxx:1850
 AliAnalysisTaskFilteredTree.cxx:1851
 AliAnalysisTaskFilteredTree.cxx:1852
 AliAnalysisTaskFilteredTree.cxx:1853
 AliAnalysisTaskFilteredTree.cxx:1854
 AliAnalysisTaskFilteredTree.cxx:1855
 AliAnalysisTaskFilteredTree.cxx:1856
 AliAnalysisTaskFilteredTree.cxx:1857
 AliAnalysisTaskFilteredTree.cxx:1858
 AliAnalysisTaskFilteredTree.cxx:1859
 AliAnalysisTaskFilteredTree.cxx:1860
 AliAnalysisTaskFilteredTree.cxx:1861
 AliAnalysisTaskFilteredTree.cxx:1862
 AliAnalysisTaskFilteredTree.cxx:1863
 AliAnalysisTaskFilteredTree.cxx:1864
 AliAnalysisTaskFilteredTree.cxx:1865
 AliAnalysisTaskFilteredTree.cxx:1866
 AliAnalysisTaskFilteredTree.cxx:1867
 AliAnalysisTaskFilteredTree.cxx:1868
 AliAnalysisTaskFilteredTree.cxx:1869
 AliAnalysisTaskFilteredTree.cxx:1870
 AliAnalysisTaskFilteredTree.cxx:1871
 AliAnalysisTaskFilteredTree.cxx:1872
 AliAnalysisTaskFilteredTree.cxx:1873
 AliAnalysisTaskFilteredTree.cxx:1874
 AliAnalysisTaskFilteredTree.cxx:1875
 AliAnalysisTaskFilteredTree.cxx:1876
 AliAnalysisTaskFilteredTree.cxx:1877
 AliAnalysisTaskFilteredTree.cxx:1878
 AliAnalysisTaskFilteredTree.cxx:1879
 AliAnalysisTaskFilteredTree.cxx:1880
 AliAnalysisTaskFilteredTree.cxx:1881
 AliAnalysisTaskFilteredTree.cxx:1882
 AliAnalysisTaskFilteredTree.cxx:1883
 AliAnalysisTaskFilteredTree.cxx:1884
 AliAnalysisTaskFilteredTree.cxx:1885
 AliAnalysisTaskFilteredTree.cxx:1886
 AliAnalysisTaskFilteredTree.cxx:1887
 AliAnalysisTaskFilteredTree.cxx:1888
 AliAnalysisTaskFilteredTree.cxx:1889
 AliAnalysisTaskFilteredTree.cxx:1890
 AliAnalysisTaskFilteredTree.cxx:1891
 AliAnalysisTaskFilteredTree.cxx:1892
 AliAnalysisTaskFilteredTree.cxx:1893
 AliAnalysisTaskFilteredTree.cxx:1894
 AliAnalysisTaskFilteredTree.cxx:1895
 AliAnalysisTaskFilteredTree.cxx:1896
 AliAnalysisTaskFilteredTree.cxx:1897
 AliAnalysisTaskFilteredTree.cxx:1898
 AliAnalysisTaskFilteredTree.cxx:1899
 AliAnalysisTaskFilteredTree.cxx:1900
 AliAnalysisTaskFilteredTree.cxx:1901
 AliAnalysisTaskFilteredTree.cxx:1902
 AliAnalysisTaskFilteredTree.cxx:1903
 AliAnalysisTaskFilteredTree.cxx:1904
 AliAnalysisTaskFilteredTree.cxx:1905
 AliAnalysisTaskFilteredTree.cxx:1906
 AliAnalysisTaskFilteredTree.cxx:1907
 AliAnalysisTaskFilteredTree.cxx:1908
 AliAnalysisTaskFilteredTree.cxx:1909
 AliAnalysisTaskFilteredTree.cxx:1910
 AliAnalysisTaskFilteredTree.cxx:1911
 AliAnalysisTaskFilteredTree.cxx:1912
 AliAnalysisTaskFilteredTree.cxx:1913
 AliAnalysisTaskFilteredTree.cxx:1914
 AliAnalysisTaskFilteredTree.cxx:1915
 AliAnalysisTaskFilteredTree.cxx:1916
 AliAnalysisTaskFilteredTree.cxx:1917
 AliAnalysisTaskFilteredTree.cxx:1918
 AliAnalysisTaskFilteredTree.cxx:1919
 AliAnalysisTaskFilteredTree.cxx:1920
 AliAnalysisTaskFilteredTree.cxx:1921
 AliAnalysisTaskFilteredTree.cxx:1922
 AliAnalysisTaskFilteredTree.cxx:1923
 AliAnalysisTaskFilteredTree.cxx:1924
 AliAnalysisTaskFilteredTree.cxx:1925
 AliAnalysisTaskFilteredTree.cxx:1926
 AliAnalysisTaskFilteredTree.cxx:1927
 AliAnalysisTaskFilteredTree.cxx:1928
 AliAnalysisTaskFilteredTree.cxx:1929
 AliAnalysisTaskFilteredTree.cxx:1930
 AliAnalysisTaskFilteredTree.cxx:1931
 AliAnalysisTaskFilteredTree.cxx:1932
 AliAnalysisTaskFilteredTree.cxx:1933
 AliAnalysisTaskFilteredTree.cxx:1934
 AliAnalysisTaskFilteredTree.cxx:1935
 AliAnalysisTaskFilteredTree.cxx:1936
 AliAnalysisTaskFilteredTree.cxx:1937
 AliAnalysisTaskFilteredTree.cxx:1938
 AliAnalysisTaskFilteredTree.cxx:1939
 AliAnalysisTaskFilteredTree.cxx:1940
 AliAnalysisTaskFilteredTree.cxx:1941
 AliAnalysisTaskFilteredTree.cxx:1942
 AliAnalysisTaskFilteredTree.cxx:1943
 AliAnalysisTaskFilteredTree.cxx:1944
 AliAnalysisTaskFilteredTree.cxx:1945
 AliAnalysisTaskFilteredTree.cxx:1946
 AliAnalysisTaskFilteredTree.cxx:1947
 AliAnalysisTaskFilteredTree.cxx:1948
 AliAnalysisTaskFilteredTree.cxx:1949
 AliAnalysisTaskFilteredTree.cxx:1950
 AliAnalysisTaskFilteredTree.cxx:1951
 AliAnalysisTaskFilteredTree.cxx:1952
 AliAnalysisTaskFilteredTree.cxx:1953
 AliAnalysisTaskFilteredTree.cxx:1954
 AliAnalysisTaskFilteredTree.cxx:1955
 AliAnalysisTaskFilteredTree.cxx:1956
 AliAnalysisTaskFilteredTree.cxx:1957
 AliAnalysisTaskFilteredTree.cxx:1958
 AliAnalysisTaskFilteredTree.cxx:1959
 AliAnalysisTaskFilteredTree.cxx:1960
 AliAnalysisTaskFilteredTree.cxx:1961
 AliAnalysisTaskFilteredTree.cxx:1962
 AliAnalysisTaskFilteredTree.cxx:1963
 AliAnalysisTaskFilteredTree.cxx:1964
 AliAnalysisTaskFilteredTree.cxx:1965
 AliAnalysisTaskFilteredTree.cxx:1966
 AliAnalysisTaskFilteredTree.cxx:1967
 AliAnalysisTaskFilteredTree.cxx:1968
 AliAnalysisTaskFilteredTree.cxx:1969
 AliAnalysisTaskFilteredTree.cxx:1970
 AliAnalysisTaskFilteredTree.cxx:1971
 AliAnalysisTaskFilteredTree.cxx:1972
 AliAnalysisTaskFilteredTree.cxx:1973
 AliAnalysisTaskFilteredTree.cxx:1974
 AliAnalysisTaskFilteredTree.cxx:1975
 AliAnalysisTaskFilteredTree.cxx:1976
 AliAnalysisTaskFilteredTree.cxx:1977
 AliAnalysisTaskFilteredTree.cxx:1978
 AliAnalysisTaskFilteredTree.cxx:1979
 AliAnalysisTaskFilteredTree.cxx:1980
 AliAnalysisTaskFilteredTree.cxx:1981
 AliAnalysisTaskFilteredTree.cxx:1982
 AliAnalysisTaskFilteredTree.cxx:1983
 AliAnalysisTaskFilteredTree.cxx:1984
 AliAnalysisTaskFilteredTree.cxx:1985
 AliAnalysisTaskFilteredTree.cxx:1986
 AliAnalysisTaskFilteredTree.cxx:1987
 AliAnalysisTaskFilteredTree.cxx:1988
 AliAnalysisTaskFilteredTree.cxx:1989
 AliAnalysisTaskFilteredTree.cxx:1990
 AliAnalysisTaskFilteredTree.cxx:1991
 AliAnalysisTaskFilteredTree.cxx:1992
 AliAnalysisTaskFilteredTree.cxx:1993
 AliAnalysisTaskFilteredTree.cxx:1994
 AliAnalysisTaskFilteredTree.cxx:1995
 AliAnalysisTaskFilteredTree.cxx:1996
 AliAnalysisTaskFilteredTree.cxx:1997
 AliAnalysisTaskFilteredTree.cxx:1998
 AliAnalysisTaskFilteredTree.cxx:1999
 AliAnalysisTaskFilteredTree.cxx:2000
 AliAnalysisTaskFilteredTree.cxx:2001
 AliAnalysisTaskFilteredTree.cxx:2002
 AliAnalysisTaskFilteredTree.cxx:2003
 AliAnalysisTaskFilteredTree.cxx:2004
 AliAnalysisTaskFilteredTree.cxx:2005
 AliAnalysisTaskFilteredTree.cxx:2006
 AliAnalysisTaskFilteredTree.cxx:2007
 AliAnalysisTaskFilteredTree.cxx:2008
 AliAnalysisTaskFilteredTree.cxx:2009
 AliAnalysisTaskFilteredTree.cxx:2010
 AliAnalysisTaskFilteredTree.cxx:2011
 AliAnalysisTaskFilteredTree.cxx:2012
 AliAnalysisTaskFilteredTree.cxx:2013
 AliAnalysisTaskFilteredTree.cxx:2014
 AliAnalysisTaskFilteredTree.cxx:2015
 AliAnalysisTaskFilteredTree.cxx:2016
 AliAnalysisTaskFilteredTree.cxx:2017
 AliAnalysisTaskFilteredTree.cxx:2018
 AliAnalysisTaskFilteredTree.cxx:2019
 AliAnalysisTaskFilteredTree.cxx:2020
 AliAnalysisTaskFilteredTree.cxx:2021
 AliAnalysisTaskFilteredTree.cxx:2022
 AliAnalysisTaskFilteredTree.cxx:2023
 AliAnalysisTaskFilteredTree.cxx:2024
 AliAnalysisTaskFilteredTree.cxx:2025
 AliAnalysisTaskFilteredTree.cxx:2026
 AliAnalysisTaskFilteredTree.cxx:2027
 AliAnalysisTaskFilteredTree.cxx:2028
 AliAnalysisTaskFilteredTree.cxx:2029
 AliAnalysisTaskFilteredTree.cxx:2030
 AliAnalysisTaskFilteredTree.cxx:2031
 AliAnalysisTaskFilteredTree.cxx:2032
 AliAnalysisTaskFilteredTree.cxx:2033
 AliAnalysisTaskFilteredTree.cxx:2034
 AliAnalysisTaskFilteredTree.cxx:2035
 AliAnalysisTaskFilteredTree.cxx:2036
 AliAnalysisTaskFilteredTree.cxx:2037
 AliAnalysisTaskFilteredTree.cxx:2038
 AliAnalysisTaskFilteredTree.cxx:2039
 AliAnalysisTaskFilteredTree.cxx:2040
 AliAnalysisTaskFilteredTree.cxx:2041
 AliAnalysisTaskFilteredTree.cxx:2042
 AliAnalysisTaskFilteredTree.cxx:2043
 AliAnalysisTaskFilteredTree.cxx:2044
 AliAnalysisTaskFilteredTree.cxx:2045
 AliAnalysisTaskFilteredTree.cxx:2046
 AliAnalysisTaskFilteredTree.cxx:2047
 AliAnalysisTaskFilteredTree.cxx:2048
 AliAnalysisTaskFilteredTree.cxx:2049
 AliAnalysisTaskFilteredTree.cxx:2050
 AliAnalysisTaskFilteredTree.cxx:2051
 AliAnalysisTaskFilteredTree.cxx:2052
 AliAnalysisTaskFilteredTree.cxx:2053
 AliAnalysisTaskFilteredTree.cxx:2054
 AliAnalysisTaskFilteredTree.cxx:2055
 AliAnalysisTaskFilteredTree.cxx:2056
 AliAnalysisTaskFilteredTree.cxx:2057
 AliAnalysisTaskFilteredTree.cxx:2058
 AliAnalysisTaskFilteredTree.cxx:2059
 AliAnalysisTaskFilteredTree.cxx:2060
 AliAnalysisTaskFilteredTree.cxx:2061
 AliAnalysisTaskFilteredTree.cxx:2062
 AliAnalysisTaskFilteredTree.cxx:2063
 AliAnalysisTaskFilteredTree.cxx:2064
 AliAnalysisTaskFilteredTree.cxx:2065
 AliAnalysisTaskFilteredTree.cxx:2066
 AliAnalysisTaskFilteredTree.cxx:2067
 AliAnalysisTaskFilteredTree.cxx:2068
 AliAnalysisTaskFilteredTree.cxx:2069
 AliAnalysisTaskFilteredTree.cxx:2070
 AliAnalysisTaskFilteredTree.cxx:2071
 AliAnalysisTaskFilteredTree.cxx:2072
 AliAnalysisTaskFilteredTree.cxx:2073
 AliAnalysisTaskFilteredTree.cxx:2074
 AliAnalysisTaskFilteredTree.cxx:2075
 AliAnalysisTaskFilteredTree.cxx:2076
 AliAnalysisTaskFilteredTree.cxx:2077
 AliAnalysisTaskFilteredTree.cxx:2078
 AliAnalysisTaskFilteredTree.cxx:2079
 AliAnalysisTaskFilteredTree.cxx:2080
 AliAnalysisTaskFilteredTree.cxx:2081
 AliAnalysisTaskFilteredTree.cxx:2082
 AliAnalysisTaskFilteredTree.cxx:2083
 AliAnalysisTaskFilteredTree.cxx:2084
 AliAnalysisTaskFilteredTree.cxx:2085
 AliAnalysisTaskFilteredTree.cxx:2086
 AliAnalysisTaskFilteredTree.cxx:2087
 AliAnalysisTaskFilteredTree.cxx:2088
 AliAnalysisTaskFilteredTree.cxx:2089
 AliAnalysisTaskFilteredTree.cxx:2090
 AliAnalysisTaskFilteredTree.cxx:2091
 AliAnalysisTaskFilteredTree.cxx:2092
 AliAnalysisTaskFilteredTree.cxx:2093
 AliAnalysisTaskFilteredTree.cxx:2094
 AliAnalysisTaskFilteredTree.cxx:2095
 AliAnalysisTaskFilteredTree.cxx:2096
 AliAnalysisTaskFilteredTree.cxx:2097
 AliAnalysisTaskFilteredTree.cxx:2098
 AliAnalysisTaskFilteredTree.cxx:2099
 AliAnalysisTaskFilteredTree.cxx:2100
 AliAnalysisTaskFilteredTree.cxx:2101
 AliAnalysisTaskFilteredTree.cxx:2102
 AliAnalysisTaskFilteredTree.cxx:2103
 AliAnalysisTaskFilteredTree.cxx:2104
 AliAnalysisTaskFilteredTree.cxx:2105
 AliAnalysisTaskFilteredTree.cxx:2106
 AliAnalysisTaskFilteredTree.cxx:2107
 AliAnalysisTaskFilteredTree.cxx:2108
 AliAnalysisTaskFilteredTree.cxx:2109
 AliAnalysisTaskFilteredTree.cxx:2110
 AliAnalysisTaskFilteredTree.cxx:2111
 AliAnalysisTaskFilteredTree.cxx:2112
 AliAnalysisTaskFilteredTree.cxx:2113
 AliAnalysisTaskFilteredTree.cxx:2114
 AliAnalysisTaskFilteredTree.cxx:2115
 AliAnalysisTaskFilteredTree.cxx:2116
 AliAnalysisTaskFilteredTree.cxx:2117
 AliAnalysisTaskFilteredTree.cxx:2118
 AliAnalysisTaskFilteredTree.cxx:2119
 AliAnalysisTaskFilteredTree.cxx:2120
 AliAnalysisTaskFilteredTree.cxx:2121
 AliAnalysisTaskFilteredTree.cxx:2122
 AliAnalysisTaskFilteredTree.cxx:2123
 AliAnalysisTaskFilteredTree.cxx:2124
 AliAnalysisTaskFilteredTree.cxx:2125
 AliAnalysisTaskFilteredTree.cxx:2126
 AliAnalysisTaskFilteredTree.cxx:2127
 AliAnalysisTaskFilteredTree.cxx:2128
 AliAnalysisTaskFilteredTree.cxx:2129
 AliAnalysisTaskFilteredTree.cxx:2130
 AliAnalysisTaskFilteredTree.cxx:2131
 AliAnalysisTaskFilteredTree.cxx:2132
 AliAnalysisTaskFilteredTree.cxx:2133
 AliAnalysisTaskFilteredTree.cxx:2134
 AliAnalysisTaskFilteredTree.cxx:2135
 AliAnalysisTaskFilteredTree.cxx:2136
 AliAnalysisTaskFilteredTree.cxx:2137
 AliAnalysisTaskFilteredTree.cxx:2138
 AliAnalysisTaskFilteredTree.cxx:2139
 AliAnalysisTaskFilteredTree.cxx:2140
 AliAnalysisTaskFilteredTree.cxx:2141
 AliAnalysisTaskFilteredTree.cxx:2142
 AliAnalysisTaskFilteredTree.cxx:2143
 AliAnalysisTaskFilteredTree.cxx:2144
 AliAnalysisTaskFilteredTree.cxx:2145
 AliAnalysisTaskFilteredTree.cxx:2146
 AliAnalysisTaskFilteredTree.cxx:2147
 AliAnalysisTaskFilteredTree.cxx:2148
 AliAnalysisTaskFilteredTree.cxx:2149
 AliAnalysisTaskFilteredTree.cxx:2150
 AliAnalysisTaskFilteredTree.cxx:2151
 AliAnalysisTaskFilteredTree.cxx:2152
 AliAnalysisTaskFilteredTree.cxx:2153
 AliAnalysisTaskFilteredTree.cxx:2154
 AliAnalysisTaskFilteredTree.cxx:2155
 AliAnalysisTaskFilteredTree.cxx:2156
 AliAnalysisTaskFilteredTree.cxx:2157
 AliAnalysisTaskFilteredTree.cxx:2158
 AliAnalysisTaskFilteredTree.cxx:2159
 AliAnalysisTaskFilteredTree.cxx:2160
 AliAnalysisTaskFilteredTree.cxx:2161
 AliAnalysisTaskFilteredTree.cxx:2162
 AliAnalysisTaskFilteredTree.cxx:2163
 AliAnalysisTaskFilteredTree.cxx:2164
 AliAnalysisTaskFilteredTree.cxx:2165
 AliAnalysisTaskFilteredTree.cxx:2166
 AliAnalysisTaskFilteredTree.cxx:2167
 AliAnalysisTaskFilteredTree.cxx:2168
 AliAnalysisTaskFilteredTree.cxx:2169
 AliAnalysisTaskFilteredTree.cxx:2170
 AliAnalysisTaskFilteredTree.cxx:2171
 AliAnalysisTaskFilteredTree.cxx:2172
 AliAnalysisTaskFilteredTree.cxx:2173
 AliAnalysisTaskFilteredTree.cxx:2174
 AliAnalysisTaskFilteredTree.cxx:2175
 AliAnalysisTaskFilteredTree.cxx:2176
 AliAnalysisTaskFilteredTree.cxx:2177
 AliAnalysisTaskFilteredTree.cxx:2178
 AliAnalysisTaskFilteredTree.cxx:2179
 AliAnalysisTaskFilteredTree.cxx:2180
 AliAnalysisTaskFilteredTree.cxx:2181
 AliAnalysisTaskFilteredTree.cxx:2182
 AliAnalysisTaskFilteredTree.cxx:2183
 AliAnalysisTaskFilteredTree.cxx:2184
 AliAnalysisTaskFilteredTree.cxx:2185
 AliAnalysisTaskFilteredTree.cxx:2186
 AliAnalysisTaskFilteredTree.cxx:2187
 AliAnalysisTaskFilteredTree.cxx:2188
 AliAnalysisTaskFilteredTree.cxx:2189
 AliAnalysisTaskFilteredTree.cxx:2190
 AliAnalysisTaskFilteredTree.cxx:2191
 AliAnalysisTaskFilteredTree.cxx:2192
 AliAnalysisTaskFilteredTree.cxx:2193
 AliAnalysisTaskFilteredTree.cxx:2194
 AliAnalysisTaskFilteredTree.cxx:2195
 AliAnalysisTaskFilteredTree.cxx:2196
 AliAnalysisTaskFilteredTree.cxx:2197
 AliAnalysisTaskFilteredTree.cxx:2198
 AliAnalysisTaskFilteredTree.cxx:2199
 AliAnalysisTaskFilteredTree.cxx:2200
 AliAnalysisTaskFilteredTree.cxx:2201
 AliAnalysisTaskFilteredTree.cxx:2202
 AliAnalysisTaskFilteredTree.cxx:2203
 AliAnalysisTaskFilteredTree.cxx:2204
 AliAnalysisTaskFilteredTree.cxx:2205
 AliAnalysisTaskFilteredTree.cxx:2206
 AliAnalysisTaskFilteredTree.cxx:2207
 AliAnalysisTaskFilteredTree.cxx:2208
 AliAnalysisTaskFilteredTree.cxx:2209
 AliAnalysisTaskFilteredTree.cxx:2210
 AliAnalysisTaskFilteredTree.cxx:2211
 AliAnalysisTaskFilteredTree.cxx:2212
 AliAnalysisTaskFilteredTree.cxx:2213
 AliAnalysisTaskFilteredTree.cxx:2214
 AliAnalysisTaskFilteredTree.cxx:2215
 AliAnalysisTaskFilteredTree.cxx:2216
 AliAnalysisTaskFilteredTree.cxx:2217
 AliAnalysisTaskFilteredTree.cxx:2218
 AliAnalysisTaskFilteredTree.cxx:2219
 AliAnalysisTaskFilteredTree.cxx:2220
 AliAnalysisTaskFilteredTree.cxx:2221
 AliAnalysisTaskFilteredTree.cxx:2222
 AliAnalysisTaskFilteredTree.cxx:2223
 AliAnalysisTaskFilteredTree.cxx:2224
 AliAnalysisTaskFilteredTree.cxx:2225
 AliAnalysisTaskFilteredTree.cxx:2226
 AliAnalysisTaskFilteredTree.cxx:2227
 AliAnalysisTaskFilteredTree.cxx:2228
 AliAnalysisTaskFilteredTree.cxx:2229
 AliAnalysisTaskFilteredTree.cxx:2230
 AliAnalysisTaskFilteredTree.cxx:2231
 AliAnalysisTaskFilteredTree.cxx:2232
 AliAnalysisTaskFilteredTree.cxx:2233
 AliAnalysisTaskFilteredTree.cxx:2234
 AliAnalysisTaskFilteredTree.cxx:2235
 AliAnalysisTaskFilteredTree.cxx:2236
 AliAnalysisTaskFilteredTree.cxx:2237
 AliAnalysisTaskFilteredTree.cxx:2238
 AliAnalysisTaskFilteredTree.cxx:2239
 AliAnalysisTaskFilteredTree.cxx:2240
 AliAnalysisTaskFilteredTree.cxx:2241
 AliAnalysisTaskFilteredTree.cxx:2242
 AliAnalysisTaskFilteredTree.cxx:2243
 AliAnalysisTaskFilteredTree.cxx:2244
 AliAnalysisTaskFilteredTree.cxx:2245
 AliAnalysisTaskFilteredTree.cxx:2246
 AliAnalysisTaskFilteredTree.cxx:2247
 AliAnalysisTaskFilteredTree.cxx:2248
 AliAnalysisTaskFilteredTree.cxx:2249
 AliAnalysisTaskFilteredTree.cxx:2250
 AliAnalysisTaskFilteredTree.cxx:2251
 AliAnalysisTaskFilteredTree.cxx:2252
 AliAnalysisTaskFilteredTree.cxx:2253
 AliAnalysisTaskFilteredTree.cxx:2254
 AliAnalysisTaskFilteredTree.cxx:2255
 AliAnalysisTaskFilteredTree.cxx:2256
 AliAnalysisTaskFilteredTree.cxx:2257
 AliAnalysisTaskFilteredTree.cxx:2258
 AliAnalysisTaskFilteredTree.cxx:2259
 AliAnalysisTaskFilteredTree.cxx:2260
 AliAnalysisTaskFilteredTree.cxx:2261
 AliAnalysisTaskFilteredTree.cxx:2262
 AliAnalysisTaskFilteredTree.cxx:2263
 AliAnalysisTaskFilteredTree.cxx:2264
 AliAnalysisTaskFilteredTree.cxx:2265
 AliAnalysisTaskFilteredTree.cxx:2266
 AliAnalysisTaskFilteredTree.cxx:2267
 AliAnalysisTaskFilteredTree.cxx:2268
 AliAnalysisTaskFilteredTree.cxx:2269
 AliAnalysisTaskFilteredTree.cxx:2270
 AliAnalysisTaskFilteredTree.cxx:2271
 AliAnalysisTaskFilteredTree.cxx:2272
 AliAnalysisTaskFilteredTree.cxx:2273
 AliAnalysisTaskFilteredTree.cxx:2274
 AliAnalysisTaskFilteredTree.cxx:2275
 AliAnalysisTaskFilteredTree.cxx:2276
 AliAnalysisTaskFilteredTree.cxx:2277
 AliAnalysisTaskFilteredTree.cxx:2278
 AliAnalysisTaskFilteredTree.cxx:2279
 AliAnalysisTaskFilteredTree.cxx:2280
 AliAnalysisTaskFilteredTree.cxx:2281
 AliAnalysisTaskFilteredTree.cxx:2282
 AliAnalysisTaskFilteredTree.cxx:2283
 AliAnalysisTaskFilteredTree.cxx:2284
 AliAnalysisTaskFilteredTree.cxx:2285
 AliAnalysisTaskFilteredTree.cxx:2286
 AliAnalysisTaskFilteredTree.cxx:2287
 AliAnalysisTaskFilteredTree.cxx:2288
 AliAnalysisTaskFilteredTree.cxx:2289
 AliAnalysisTaskFilteredTree.cxx:2290
 AliAnalysisTaskFilteredTree.cxx:2291
 AliAnalysisTaskFilteredTree.cxx:2292
 AliAnalysisTaskFilteredTree.cxx:2293
 AliAnalysisTaskFilteredTree.cxx:2294
 AliAnalysisTaskFilteredTree.cxx:2295
 AliAnalysisTaskFilteredTree.cxx:2296
 AliAnalysisTaskFilteredTree.cxx:2297
 AliAnalysisTaskFilteredTree.cxx:2298
 AliAnalysisTaskFilteredTree.cxx:2299
 AliAnalysisTaskFilteredTree.cxx:2300
 AliAnalysisTaskFilteredTree.cxx:2301
 AliAnalysisTaskFilteredTree.cxx:2302
 AliAnalysisTaskFilteredTree.cxx:2303
 AliAnalysisTaskFilteredTree.cxx:2304
 AliAnalysisTaskFilteredTree.cxx:2305
 AliAnalysisTaskFilteredTree.cxx:2306
 AliAnalysisTaskFilteredTree.cxx:2307
 AliAnalysisTaskFilteredTree.cxx:2308
 AliAnalysisTaskFilteredTree.cxx:2309
 AliAnalysisTaskFilteredTree.cxx:2310
 AliAnalysisTaskFilteredTree.cxx:2311
 AliAnalysisTaskFilteredTree.cxx:2312
 AliAnalysisTaskFilteredTree.cxx:2313
 AliAnalysisTaskFilteredTree.cxx:2314
 AliAnalysisTaskFilteredTree.cxx:2315
 AliAnalysisTaskFilteredTree.cxx:2316
 AliAnalysisTaskFilteredTree.cxx:2317
 AliAnalysisTaskFilteredTree.cxx:2318
 AliAnalysisTaskFilteredTree.cxx:2319
 AliAnalysisTaskFilteredTree.cxx:2320
 AliAnalysisTaskFilteredTree.cxx:2321
 AliAnalysisTaskFilteredTree.cxx:2322
 AliAnalysisTaskFilteredTree.cxx:2323
 AliAnalysisTaskFilteredTree.cxx:2324
 AliAnalysisTaskFilteredTree.cxx:2325
 AliAnalysisTaskFilteredTree.cxx:2326
 AliAnalysisTaskFilteredTree.cxx:2327
 AliAnalysisTaskFilteredTree.cxx:2328
 AliAnalysisTaskFilteredTree.cxx:2329
 AliAnalysisTaskFilteredTree.cxx:2330
 AliAnalysisTaskFilteredTree.cxx:2331
 AliAnalysisTaskFilteredTree.cxx:2332
 AliAnalysisTaskFilteredTree.cxx:2333
 AliAnalysisTaskFilteredTree.cxx:2334
 AliAnalysisTaskFilteredTree.cxx:2335
 AliAnalysisTaskFilteredTree.cxx:2336
 AliAnalysisTaskFilteredTree.cxx:2337
 AliAnalysisTaskFilteredTree.cxx:2338
 AliAnalysisTaskFilteredTree.cxx:2339
 AliAnalysisTaskFilteredTree.cxx:2340
 AliAnalysisTaskFilteredTree.cxx:2341
 AliAnalysisTaskFilteredTree.cxx:2342
 AliAnalysisTaskFilteredTree.cxx:2343
 AliAnalysisTaskFilteredTree.cxx:2344
 AliAnalysisTaskFilteredTree.cxx:2345
 AliAnalysisTaskFilteredTree.cxx:2346
 AliAnalysisTaskFilteredTree.cxx:2347
 AliAnalysisTaskFilteredTree.cxx:2348
 AliAnalysisTaskFilteredTree.cxx:2349
 AliAnalysisTaskFilteredTree.cxx:2350
 AliAnalysisTaskFilteredTree.cxx:2351
 AliAnalysisTaskFilteredTree.cxx:2352
 AliAnalysisTaskFilteredTree.cxx:2353
 AliAnalysisTaskFilteredTree.cxx:2354
 AliAnalysisTaskFilteredTree.cxx:2355
 AliAnalysisTaskFilteredTree.cxx:2356
 AliAnalysisTaskFilteredTree.cxx:2357
 AliAnalysisTaskFilteredTree.cxx:2358
 AliAnalysisTaskFilteredTree.cxx:2359
 AliAnalysisTaskFilteredTree.cxx:2360
 AliAnalysisTaskFilteredTree.cxx:2361
 AliAnalysisTaskFilteredTree.cxx:2362
 AliAnalysisTaskFilteredTree.cxx:2363
 AliAnalysisTaskFilteredTree.cxx:2364
 AliAnalysisTaskFilteredTree.cxx:2365
 AliAnalysisTaskFilteredTree.cxx:2366
 AliAnalysisTaskFilteredTree.cxx:2367
 AliAnalysisTaskFilteredTree.cxx:2368
 AliAnalysisTaskFilteredTree.cxx:2369
 AliAnalysisTaskFilteredTree.cxx:2370
 AliAnalysisTaskFilteredTree.cxx:2371
 AliAnalysisTaskFilteredTree.cxx:2372
 AliAnalysisTaskFilteredTree.cxx:2373
 AliAnalysisTaskFilteredTree.cxx:2374
 AliAnalysisTaskFilteredTree.cxx:2375
 AliAnalysisTaskFilteredTree.cxx:2376
 AliAnalysisTaskFilteredTree.cxx:2377
 AliAnalysisTaskFilteredTree.cxx:2378
 AliAnalysisTaskFilteredTree.cxx:2379
 AliAnalysisTaskFilteredTree.cxx:2380
 AliAnalysisTaskFilteredTree.cxx:2381
 AliAnalysisTaskFilteredTree.cxx:2382
 AliAnalysisTaskFilteredTree.cxx:2383
 AliAnalysisTaskFilteredTree.cxx:2384
 AliAnalysisTaskFilteredTree.cxx:2385
 AliAnalysisTaskFilteredTree.cxx:2386
 AliAnalysisTaskFilteredTree.cxx:2387
 AliAnalysisTaskFilteredTree.cxx:2388
 AliAnalysisTaskFilteredTree.cxx:2389
 AliAnalysisTaskFilteredTree.cxx:2390
 AliAnalysisTaskFilteredTree.cxx:2391
 AliAnalysisTaskFilteredTree.cxx:2392
 AliAnalysisTaskFilteredTree.cxx:2393
 AliAnalysisTaskFilteredTree.cxx:2394
 AliAnalysisTaskFilteredTree.cxx:2395
 AliAnalysisTaskFilteredTree.cxx:2396
 AliAnalysisTaskFilteredTree.cxx:2397
 AliAnalysisTaskFilteredTree.cxx:2398
 AliAnalysisTaskFilteredTree.cxx:2399
 AliAnalysisTaskFilteredTree.cxx:2400
 AliAnalysisTaskFilteredTree.cxx:2401
 AliAnalysisTaskFilteredTree.cxx:2402
 AliAnalysisTaskFilteredTree.cxx:2403
 AliAnalysisTaskFilteredTree.cxx:2404
 AliAnalysisTaskFilteredTree.cxx:2405
 AliAnalysisTaskFilteredTree.cxx:2406
 AliAnalysisTaskFilteredTree.cxx:2407
 AliAnalysisTaskFilteredTree.cxx:2408
 AliAnalysisTaskFilteredTree.cxx:2409
 AliAnalysisTaskFilteredTree.cxx:2410
 AliAnalysisTaskFilteredTree.cxx:2411
 AliAnalysisTaskFilteredTree.cxx:2412
 AliAnalysisTaskFilteredTree.cxx:2413
 AliAnalysisTaskFilteredTree.cxx:2414
 AliAnalysisTaskFilteredTree.cxx:2415
 AliAnalysisTaskFilteredTree.cxx:2416
 AliAnalysisTaskFilteredTree.cxx:2417
 AliAnalysisTaskFilteredTree.cxx:2418
 AliAnalysisTaskFilteredTree.cxx:2419
 AliAnalysisTaskFilteredTree.cxx:2420
 AliAnalysisTaskFilteredTree.cxx:2421
 AliAnalysisTaskFilteredTree.cxx:2422
 AliAnalysisTaskFilteredTree.cxx:2423
 AliAnalysisTaskFilteredTree.cxx:2424
 AliAnalysisTaskFilteredTree.cxx:2425
 AliAnalysisTaskFilteredTree.cxx:2426
 AliAnalysisTaskFilteredTree.cxx:2427
 AliAnalysisTaskFilteredTree.cxx:2428
 AliAnalysisTaskFilteredTree.cxx:2429
 AliAnalysisTaskFilteredTree.cxx:2430
 AliAnalysisTaskFilteredTree.cxx:2431
 AliAnalysisTaskFilteredTree.cxx:2432
 AliAnalysisTaskFilteredTree.cxx:2433
 AliAnalysisTaskFilteredTree.cxx:2434
 AliAnalysisTaskFilteredTree.cxx:2435
 AliAnalysisTaskFilteredTree.cxx:2436
 AliAnalysisTaskFilteredTree.cxx:2437
 AliAnalysisTaskFilteredTree.cxx:2438
 AliAnalysisTaskFilteredTree.cxx:2439
 AliAnalysisTaskFilteredTree.cxx:2440
 AliAnalysisTaskFilteredTree.cxx:2441
 AliAnalysisTaskFilteredTree.cxx:2442
 AliAnalysisTaskFilteredTree.cxx:2443
 AliAnalysisTaskFilteredTree.cxx:2444
 AliAnalysisTaskFilteredTree.cxx:2445
 AliAnalysisTaskFilteredTree.cxx:2446
 AliAnalysisTaskFilteredTree.cxx:2447
 AliAnalysisTaskFilteredTree.cxx:2448
 AliAnalysisTaskFilteredTree.cxx:2449
 AliAnalysisTaskFilteredTree.cxx:2450
 AliAnalysisTaskFilteredTree.cxx:2451
 AliAnalysisTaskFilteredTree.cxx:2452
 AliAnalysisTaskFilteredTree.cxx:2453
 AliAnalysisTaskFilteredTree.cxx:2454
 AliAnalysisTaskFilteredTree.cxx:2455
 AliAnalysisTaskFilteredTree.cxx:2456
 AliAnalysisTaskFilteredTree.cxx:2457
 AliAnalysisTaskFilteredTree.cxx:2458
 AliAnalysisTaskFilteredTree.cxx:2459
 AliAnalysisTaskFilteredTree.cxx:2460
 AliAnalysisTaskFilteredTree.cxx:2461
 AliAnalysisTaskFilteredTree.cxx:2462
 AliAnalysisTaskFilteredTree.cxx:2463
 AliAnalysisTaskFilteredTree.cxx:2464
 AliAnalysisTaskFilteredTree.cxx:2465
 AliAnalysisTaskFilteredTree.cxx:2466
 AliAnalysisTaskFilteredTree.cxx:2467
 AliAnalysisTaskFilteredTree.cxx:2468
 AliAnalysisTaskFilteredTree.cxx:2469
 AliAnalysisTaskFilteredTree.cxx:2470
 AliAnalysisTaskFilteredTree.cxx:2471
 AliAnalysisTaskFilteredTree.cxx:2472
 AliAnalysisTaskFilteredTree.cxx:2473
 AliAnalysisTaskFilteredTree.cxx:2474
 AliAnalysisTaskFilteredTree.cxx:2475
 AliAnalysisTaskFilteredTree.cxx:2476
 AliAnalysisTaskFilteredTree.cxx:2477
 AliAnalysisTaskFilteredTree.cxx:2478
 AliAnalysisTaskFilteredTree.cxx:2479
 AliAnalysisTaskFilteredTree.cxx:2480
 AliAnalysisTaskFilteredTree.cxx:2481
 AliAnalysisTaskFilteredTree.cxx:2482
 AliAnalysisTaskFilteredTree.cxx:2483
 AliAnalysisTaskFilteredTree.cxx:2484
 AliAnalysisTaskFilteredTree.cxx:2485
 AliAnalysisTaskFilteredTree.cxx:2486
 AliAnalysisTaskFilteredTree.cxx:2487
 AliAnalysisTaskFilteredTree.cxx:2488
 AliAnalysisTaskFilteredTree.cxx:2489
 AliAnalysisTaskFilteredTree.cxx:2490
 AliAnalysisTaskFilteredTree.cxx:2491
 AliAnalysisTaskFilteredTree.cxx:2492
 AliAnalysisTaskFilteredTree.cxx:2493
 AliAnalysisTaskFilteredTree.cxx:2494
 AliAnalysisTaskFilteredTree.cxx:2495
 AliAnalysisTaskFilteredTree.cxx:2496
 AliAnalysisTaskFilteredTree.cxx:2497
 AliAnalysisTaskFilteredTree.cxx:2498
 AliAnalysisTaskFilteredTree.cxx:2499
 AliAnalysisTaskFilteredTree.cxx:2500
 AliAnalysisTaskFilteredTree.cxx:2501
 AliAnalysisTaskFilteredTree.cxx:2502
 AliAnalysisTaskFilteredTree.cxx:2503
 AliAnalysisTaskFilteredTree.cxx:2504
 AliAnalysisTaskFilteredTree.cxx:2505
 AliAnalysisTaskFilteredTree.cxx:2506
 AliAnalysisTaskFilteredTree.cxx:2507
 AliAnalysisTaskFilteredTree.cxx:2508
 AliAnalysisTaskFilteredTree.cxx:2509
 AliAnalysisTaskFilteredTree.cxx:2510
 AliAnalysisTaskFilteredTree.cxx:2511
 AliAnalysisTaskFilteredTree.cxx:2512
 AliAnalysisTaskFilteredTree.cxx:2513
 AliAnalysisTaskFilteredTree.cxx:2514
 AliAnalysisTaskFilteredTree.cxx:2515
 AliAnalysisTaskFilteredTree.cxx:2516
 AliAnalysisTaskFilteredTree.cxx:2517
 AliAnalysisTaskFilteredTree.cxx:2518
 AliAnalysisTaskFilteredTree.cxx:2519
 AliAnalysisTaskFilteredTree.cxx:2520
 AliAnalysisTaskFilteredTree.cxx:2521
 AliAnalysisTaskFilteredTree.cxx:2522
 AliAnalysisTaskFilteredTree.cxx:2523
 AliAnalysisTaskFilteredTree.cxx:2524
 AliAnalysisTaskFilteredTree.cxx:2525
 AliAnalysisTaskFilteredTree.cxx:2526
 AliAnalysisTaskFilteredTree.cxx:2527
 AliAnalysisTaskFilteredTree.cxx:2528
 AliAnalysisTaskFilteredTree.cxx:2529
 AliAnalysisTaskFilteredTree.cxx:2530
 AliAnalysisTaskFilteredTree.cxx:2531
 AliAnalysisTaskFilteredTree.cxx:2532
 AliAnalysisTaskFilteredTree.cxx:2533
 AliAnalysisTaskFilteredTree.cxx:2534
 AliAnalysisTaskFilteredTree.cxx:2535
 AliAnalysisTaskFilteredTree.cxx:2536
 AliAnalysisTaskFilteredTree.cxx:2537
 AliAnalysisTaskFilteredTree.cxx:2538
 AliAnalysisTaskFilteredTree.cxx:2539
 AliAnalysisTaskFilteredTree.cxx:2540
 AliAnalysisTaskFilteredTree.cxx:2541
 AliAnalysisTaskFilteredTree.cxx:2542
 AliAnalysisTaskFilteredTree.cxx:2543
 AliAnalysisTaskFilteredTree.cxx:2544
 AliAnalysisTaskFilteredTree.cxx:2545
 AliAnalysisTaskFilteredTree.cxx:2546
 AliAnalysisTaskFilteredTree.cxx:2547
 AliAnalysisTaskFilteredTree.cxx:2548
 AliAnalysisTaskFilteredTree.cxx:2549
 AliAnalysisTaskFilteredTree.cxx:2550
 AliAnalysisTaskFilteredTree.cxx:2551
 AliAnalysisTaskFilteredTree.cxx:2552
 AliAnalysisTaskFilteredTree.cxx:2553
 AliAnalysisTaskFilteredTree.cxx:2554
 AliAnalysisTaskFilteredTree.cxx:2555
 AliAnalysisTaskFilteredTree.cxx:2556
 AliAnalysisTaskFilteredTree.cxx:2557
 AliAnalysisTaskFilteredTree.cxx:2558
 AliAnalysisTaskFilteredTree.cxx:2559
 AliAnalysisTaskFilteredTree.cxx:2560
 AliAnalysisTaskFilteredTree.cxx:2561
 AliAnalysisTaskFilteredTree.cxx:2562
 AliAnalysisTaskFilteredTree.cxx:2563
 AliAnalysisTaskFilteredTree.cxx:2564
 AliAnalysisTaskFilteredTree.cxx:2565
 AliAnalysisTaskFilteredTree.cxx:2566
 AliAnalysisTaskFilteredTree.cxx:2567
 AliAnalysisTaskFilteredTree.cxx:2568
 AliAnalysisTaskFilteredTree.cxx:2569
 AliAnalysisTaskFilteredTree.cxx:2570
 AliAnalysisTaskFilteredTree.cxx:2571
 AliAnalysisTaskFilteredTree.cxx:2572
 AliAnalysisTaskFilteredTree.cxx:2573
 AliAnalysisTaskFilteredTree.cxx:2574
 AliAnalysisTaskFilteredTree.cxx:2575
 AliAnalysisTaskFilteredTree.cxx:2576
 AliAnalysisTaskFilteredTree.cxx:2577
 AliAnalysisTaskFilteredTree.cxx:2578
 AliAnalysisTaskFilteredTree.cxx:2579
 AliAnalysisTaskFilteredTree.cxx:2580
 AliAnalysisTaskFilteredTree.cxx:2581
 AliAnalysisTaskFilteredTree.cxx:2582
 AliAnalysisTaskFilteredTree.cxx:2583
 AliAnalysisTaskFilteredTree.cxx:2584
 AliAnalysisTaskFilteredTree.cxx:2585
 AliAnalysisTaskFilteredTree.cxx:2586
 AliAnalysisTaskFilteredTree.cxx:2587
 AliAnalysisTaskFilteredTree.cxx:2588
 AliAnalysisTaskFilteredTree.cxx:2589
 AliAnalysisTaskFilteredTree.cxx:2590
 AliAnalysisTaskFilteredTree.cxx:2591
 AliAnalysisTaskFilteredTree.cxx:2592
 AliAnalysisTaskFilteredTree.cxx:2593
 AliAnalysisTaskFilteredTree.cxx:2594
 AliAnalysisTaskFilteredTree.cxx:2595
 AliAnalysisTaskFilteredTree.cxx:2596
 AliAnalysisTaskFilteredTree.cxx:2597
 AliAnalysisTaskFilteredTree.cxx:2598
 AliAnalysisTaskFilteredTree.cxx:2599
 AliAnalysisTaskFilteredTree.cxx:2600
 AliAnalysisTaskFilteredTree.cxx:2601
 AliAnalysisTaskFilteredTree.cxx:2602
 AliAnalysisTaskFilteredTree.cxx:2603
 AliAnalysisTaskFilteredTree.cxx:2604
 AliAnalysisTaskFilteredTree.cxx:2605
 AliAnalysisTaskFilteredTree.cxx:2606
 AliAnalysisTaskFilteredTree.cxx:2607
 AliAnalysisTaskFilteredTree.cxx:2608
 AliAnalysisTaskFilteredTree.cxx:2609
 AliAnalysisTaskFilteredTree.cxx:2610
 AliAnalysisTaskFilteredTree.cxx:2611
 AliAnalysisTaskFilteredTree.cxx:2612
 AliAnalysisTaskFilteredTree.cxx:2613
 AliAnalysisTaskFilteredTree.cxx:2614
 AliAnalysisTaskFilteredTree.cxx:2615
 AliAnalysisTaskFilteredTree.cxx:2616
 AliAnalysisTaskFilteredTree.cxx:2617
 AliAnalysisTaskFilteredTree.cxx:2618
 AliAnalysisTaskFilteredTree.cxx:2619
 AliAnalysisTaskFilteredTree.cxx:2620
 AliAnalysisTaskFilteredTree.cxx:2621
 AliAnalysisTaskFilteredTree.cxx:2622
 AliAnalysisTaskFilteredTree.cxx:2623
 AliAnalysisTaskFilteredTree.cxx:2624
 AliAnalysisTaskFilteredTree.cxx:2625
 AliAnalysisTaskFilteredTree.cxx:2626
 AliAnalysisTaskFilteredTree.cxx:2627
 AliAnalysisTaskFilteredTree.cxx:2628
 AliAnalysisTaskFilteredTree.cxx:2629
 AliAnalysisTaskFilteredTree.cxx:2630
 AliAnalysisTaskFilteredTree.cxx:2631
 AliAnalysisTaskFilteredTree.cxx:2632
 AliAnalysisTaskFilteredTree.cxx:2633
 AliAnalysisTaskFilteredTree.cxx:2634
 AliAnalysisTaskFilteredTree.cxx:2635
 AliAnalysisTaskFilteredTree.cxx:2636
 AliAnalysisTaskFilteredTree.cxx:2637
 AliAnalysisTaskFilteredTree.cxx:2638
 AliAnalysisTaskFilteredTree.cxx:2639
 AliAnalysisTaskFilteredTree.cxx:2640
 AliAnalysisTaskFilteredTree.cxx:2641
 AliAnalysisTaskFilteredTree.cxx:2642
 AliAnalysisTaskFilteredTree.cxx:2643
 AliAnalysisTaskFilteredTree.cxx:2644
 AliAnalysisTaskFilteredTree.cxx:2645
 AliAnalysisTaskFilteredTree.cxx:2646
 AliAnalysisTaskFilteredTree.cxx:2647
 AliAnalysisTaskFilteredTree.cxx:2648
 AliAnalysisTaskFilteredTree.cxx:2649
 AliAnalysisTaskFilteredTree.cxx:2650
 AliAnalysisTaskFilteredTree.cxx:2651
 AliAnalysisTaskFilteredTree.cxx:2652
 AliAnalysisTaskFilteredTree.cxx:2653
 AliAnalysisTaskFilteredTree.cxx:2654
 AliAnalysisTaskFilteredTree.cxx:2655
 AliAnalysisTaskFilteredTree.cxx:2656
 AliAnalysisTaskFilteredTree.cxx:2657
 AliAnalysisTaskFilteredTree.cxx:2658
 AliAnalysisTaskFilteredTree.cxx:2659
 AliAnalysisTaskFilteredTree.cxx:2660
 AliAnalysisTaskFilteredTree.cxx:2661
 AliAnalysisTaskFilteredTree.cxx:2662
 AliAnalysisTaskFilteredTree.cxx:2663
 AliAnalysisTaskFilteredTree.cxx:2664
 AliAnalysisTaskFilteredTree.cxx:2665
 AliAnalysisTaskFilteredTree.cxx:2666
 AliAnalysisTaskFilteredTree.cxx:2667
 AliAnalysisTaskFilteredTree.cxx:2668
 AliAnalysisTaskFilteredTree.cxx:2669
 AliAnalysisTaskFilteredTree.cxx:2670
 AliAnalysisTaskFilteredTree.cxx:2671
 AliAnalysisTaskFilteredTree.cxx:2672
 AliAnalysisTaskFilteredTree.cxx:2673
 AliAnalysisTaskFilteredTree.cxx:2674
 AliAnalysisTaskFilteredTree.cxx:2675
 AliAnalysisTaskFilteredTree.cxx:2676
 AliAnalysisTaskFilteredTree.cxx:2677
 AliAnalysisTaskFilteredTree.cxx:2678
 AliAnalysisTaskFilteredTree.cxx:2679
 AliAnalysisTaskFilteredTree.cxx:2680
 AliAnalysisTaskFilteredTree.cxx:2681
 AliAnalysisTaskFilteredTree.cxx:2682
 AliAnalysisTaskFilteredTree.cxx:2683
 AliAnalysisTaskFilteredTree.cxx:2684
 AliAnalysisTaskFilteredTree.cxx:2685
 AliAnalysisTaskFilteredTree.cxx:2686
 AliAnalysisTaskFilteredTree.cxx:2687
 AliAnalysisTaskFilteredTree.cxx:2688
 AliAnalysisTaskFilteredTree.cxx:2689
 AliAnalysisTaskFilteredTree.cxx:2690
 AliAnalysisTaskFilteredTree.cxx:2691
 AliAnalysisTaskFilteredTree.cxx:2692
 AliAnalysisTaskFilteredTree.cxx:2693
 AliAnalysisTaskFilteredTree.cxx:2694
 AliAnalysisTaskFilteredTree.cxx:2695
 AliAnalysisTaskFilteredTree.cxx:2696
 AliAnalysisTaskFilteredTree.cxx:2697
 AliAnalysisTaskFilteredTree.cxx:2698
 AliAnalysisTaskFilteredTree.cxx:2699
 AliAnalysisTaskFilteredTree.cxx:2700
 AliAnalysisTaskFilteredTree.cxx:2701
 AliAnalysisTaskFilteredTree.cxx:2702
 AliAnalysisTaskFilteredTree.cxx:2703
 AliAnalysisTaskFilteredTree.cxx:2704
 AliAnalysisTaskFilteredTree.cxx:2705
 AliAnalysisTaskFilteredTree.cxx:2706
 AliAnalysisTaskFilteredTree.cxx:2707
 AliAnalysisTaskFilteredTree.cxx:2708
 AliAnalysisTaskFilteredTree.cxx:2709
 AliAnalysisTaskFilteredTree.cxx:2710
 AliAnalysisTaskFilteredTree.cxx:2711
 AliAnalysisTaskFilteredTree.cxx:2712
 AliAnalysisTaskFilteredTree.cxx:2713
 AliAnalysisTaskFilteredTree.cxx:2714
 AliAnalysisTaskFilteredTree.cxx:2715
 AliAnalysisTaskFilteredTree.cxx:2716
 AliAnalysisTaskFilteredTree.cxx:2717
 AliAnalysisTaskFilteredTree.cxx:2718
 AliAnalysisTaskFilteredTree.cxx:2719
 AliAnalysisTaskFilteredTree.cxx:2720
 AliAnalysisTaskFilteredTree.cxx:2721