ROOT logo
/**************************************************************************
 * Copyright(c) 1998-2008, 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.                  *
 **************************************************************************/

/* $Id$ */

/////////////////////////////////////////////////////////////
//
// AliAnalysisTaskSESignificane to calculate effects on 
// significance of D mesons  cut 
// Authors: G. Ortona, ortona@to.infn.it
// F. Prino, prino@to.infn.it
// Renu Bala, bala@to.infn.it
// Chiara Bianchin, cbianchi@pd.infn.it
/////////////////////////////////////////////////////////////

#include <Riostream.h>
#include <TClonesArray.h>
#include <TCanvas.h>
#include <TList.h>
#include <TFile.h>
#include <TString.h>
#include <TH1F.h>
#include <TDatabasePDG.h>

#include <AliLog.h>
#include "AliAnalysisManager.h"
#include "AliAODHandler.h"
#include "AliAODEvent.h"
#include "AliAODVertex.h"
#include "AliAODTrack.h"
#include "AliAODMCHeader.h"
#include "AliAODMCParticle.h"
#include "AliAODRecoDecayHF3Prong.h"
#include "AliAODRecoDecayHF.h"
#include "AliAODRecoDecayHF2Prong.h"
#include "AliAODRecoDecayHF4Prong.h"
#include "AliAODRecoCascadeHF.h"

#include "AliAnalysisTaskSE.h"
#include "AliRDHFCutsDplustoKpipi.h"
#include "AliRDHFCutsD0toKpipipi.h"
#include "AliRDHFCutsDstoKKpi.h"
#include "AliRDHFCutsDStartoKpipi.h"
#include "AliRDHFCutsD0toKpi.h"
#include "AliRDHFCutsLctopKpi.h"
#include "AliMultiDimVector.h"

#include "AliAnalysisTaskSESignificance.h"

using std::cout;
using std::endl;

ClassImp(AliAnalysisTaskSESignificance)


//________________________________________________________________________
AliAnalysisTaskSESignificance::AliAnalysisTaskSESignificance():
  AliAnalysisTaskSE(),
  fOutput(0),
  fCutList(0),
  fHistNEvents(0),
  fUpmasslimit(1.965),
  fLowmasslimit(1.765),
  fRDCuts(0),
  fNPtBins(0),
  fReadMC(kFALSE),
  fUseSelBit(kFALSE),
  fBFeedDown(kBoth),
  fDecChannel(0),
  fPDGmother(0),
  fNProngs(0),
  fBranchName(""),
  fSelectionlevel(0),
  fNVars(0),
  fNBins(100),
  fPartOrAndAntiPart(0),
  fDsChannel(0)
{
  // Default constructor
  SetPDGCodes();
  SetDsChannel(kPhi);

  for(Int_t i=0;i<4;i++) fPDGdaughters[i]=0;
  for(Int_t i=0;i<2;i++) {fPDGD0ToKpi[i]=0;fPDGDStarToD0pi[i]=0;}
  for(Int_t i=0;i<kMaxCutVar;i++) fVars[i]=0.;
  for(Int_t i=0;i<kMaxNHist;i++) {
    fMassHist[i]=0;
    fSigHist[i]=0;
    fBkgHist[i]=0;
    fRflHist[i]=0;
  }

}

//________________________________________________________________________
AliAnalysisTaskSESignificance::AliAnalysisTaskSESignificance(const char *name, TList* listMDV,AliRDHFCuts *rdCuts,Int_t decaychannel,Int_t selectionlevel):
  AliAnalysisTaskSE(name),
  fOutput(0),
  fCutList(listMDV),
  fHistNEvents(0),
  fUpmasslimit(0),
  fLowmasslimit(0),
  fRDCuts(rdCuts),
  fNPtBins(0),
  fReadMC(kFALSE),
  fUseSelBit(kFALSE),
  fBFeedDown(kBoth),
  fDecChannel(decaychannel),
  fPDGmother(0),
  fNProngs(0),
  fBranchName(""),
  fSelectionlevel(selectionlevel),
  fNVars(0),
  fNBins(100),
  fPartOrAndAntiPart(0),
  fDsChannel(0)
{

  SetPDGCodes();
  SetDsChannel(kPhi);
  if (fDecChannel!=2) SetMassLimits(0.15,fPDGmother); //check range
  else {
    Float_t min = 0.13;
    Float_t max = 0.19;
    SetMassLimits(min, max);
  }
  fNPtBins=fRDCuts->GetNPtBins();

  fNVars=fRDCuts->GetNVarsForOpt();
  if(fNVars>kMaxCutVar) AliFatal(Form("Too large number of cut variables, maximum is %d",kMaxCutVar));
  
  if(fDebug>1)fRDCuts->PrintAll();
   // Output slot #1 writes into a TList container
  DefineOutput(1,TList::Class());  //My private output
  DefineOutput(2,TList::Class());
  DefineOutput(3,AliRDHFCuts::Class()); //class of the cuts
  CheckConsistency();
}

 //________________________________________________________________________
AliAnalysisTaskSESignificance::~AliAnalysisTaskSESignificance()
{
  // Destructor
  if (fOutput) {
    delete fOutput;
    fOutput = 0;
  }
  if (fCutList) {
    delete fCutList;
    fCutList = 0;
  }
  if(fHistNEvents){
    delete fHistNEvents;
    fHistNEvents=0;
  }
/*
  if(fRDCuts) {
    delete fRDCuts;
    fRDCuts= 0;
  } 
*/
  
}
//_________________________________________________________________
void AliAnalysisTaskSESignificance::SetPDGCodes(){
  // sets channel dependent quantities
 
  switch(fDecChannel){
  case 0:
    //D+
    fPDGmother=411;
    fNProngs=3;
    fPDGdaughters[0]=211;//pi
    fPDGdaughters[1]=321;//K
    fPDGdaughters[2]=211;//pi
    fPDGdaughters[3]=0; //empty
    fBranchName="Charm3Prong";
    break;
  case 1:
    //D0
    fPDGmother=421;
    fNProngs=2;
    fPDGdaughters[0]=211;//pi 
    fPDGdaughters[1]=321;//K
    fPDGdaughters[2]=0; //empty
    fPDGdaughters[3]=0; //empty
    fBranchName="D0toKpi";
    break;
  case 2:
    //D*
    fPDGmother=413;
    fNProngs=3;
    fPDGdaughters[1]=211;//pi
    fPDGdaughters[0]=321;//K
    fPDGdaughters[2]=211;//pi (soft?)
    fPDGdaughters[3]=0; //empty
    fBranchName="Dstar";
    break;
  case 3:
    //Ds
    fPDGmother=431;
    fNProngs=3;
    fPDGdaughters[0]=321;//K
    fPDGdaughters[1]=321;//K
    fPDGdaughters[2]=211;//pi
    fPDGdaughters[3]=0; //empty
    fBranchName="Charm3Prong";
    break;
  case 4:
    //D0 in 4 prongs
    fPDGmother=421;
    fNProngs=4;
    fPDGdaughters[0]=321;
    fPDGdaughters[1]=211;
    fPDGdaughters[2]=211;
    fPDGdaughters[3]=211;
    fBranchName="Charm4Prong";
    break;
  case 5:
    //Lambda_c
    fPDGmother=4122;
    fNProngs=3;
    fPDGdaughters[0]=2212;//p
    fPDGdaughters[1]=321;//K
    fPDGdaughters[2]=211;//pi
    fPDGdaughters[3]=0; //empty
    fBranchName="Charm3Prong";
    break;
  }
}

//_________________________________________________________________
Bool_t AliAnalysisTaskSESignificance::CheckConsistency(){

  Bool_t result = kTRUE;

  const Int_t nvars=fRDCuts->GetNVars();//ForOpt();
  //Float_t *vars = new Float_t[nvars];
  Bool_t *varsforopt = fRDCuts->GetVarsForOpt();
  Bool_t *uppervars = fRDCuts->GetIsUpperCut();
  TString *names = fRDCuts->GetVarNames();

  for(Int_t i=0;i<fNPtBins;i++){
    TString mdvname=Form("multiDimVectorPtBin%d",i);
    Int_t ic=0;
 
    for(Int_t ivar=0;ivar<nvars;ivar++){
      if(varsforopt[ivar]){
	Float_t min = ((AliMultiDimVector*)fCutList->FindObject(mdvname.Data()))->GetMinLimit(ic);
	Float_t max = ((AliMultiDimVector*)fCutList->FindObject(mdvname.Data()))->GetMaxLimit(ic);
	if(min==max){
	  AliFatal(Form("tight and loose cut for optimization variable number %d are the same in ptbin %d\n",ic,i));
	  return kFALSE;
	}
	Bool_t lowermdv = ((AliMultiDimVector*)fCutList->FindObject(mdvname.Data()))->GetGreaterThan(ic);
	if(uppervars[ivar]&&lowermdv){
	  AliFatal(Form("%s is declared as uppercut, but as been given tighter cut larger then loose cut in ptbin %d \n ---please check your cuts \n ",names[ivar].Data(),i));
	  return kFALSE;
	}
	if(!uppervars[ivar]&&!lowermdv){
	  AliFatal(Form("%s is declared as lower cut, but as been given tighter cut smaller then loose cut in ptbin %d \n ---please check your cuts \n",names[ivar].Data(),i));
	  return kFALSE;
	}
	ic++;
      }
    }
  }
  return result;
}
//_________________________________________________________________
void AliAnalysisTaskSESignificance::SetBFeedDown(FeedDownEnum flagB){
  if(fReadMC)fBFeedDown=flagB;
  else {
    AliInfo("B feed down not allowed without MC info\n");
    fBFeedDown=kBoth;
  }
}
//_________________________________________________________________
void  AliAnalysisTaskSESignificance::SetMassLimits(Float_t range, Int_t pdg){
  Float_t mass=0;
  Int_t abspdg=TMath::Abs(pdg);
  mass=TDatabasePDG::Instance()->GetParticle(abspdg)->Mass();
  fUpmasslimit = mass+range;
  fLowmasslimit = mass-range;
}
//_________________________________________________________________
void  AliAnalysisTaskSESignificance::SetMassLimits(Float_t lowlimit, Float_t uplimit){
  if(uplimit>lowlimit)
    {
      fUpmasslimit = uplimit;
      fLowmasslimit = lowlimit;
    }
}



//________________________________________________________________________
void AliAnalysisTaskSESignificance::LocalInit()
{
  // Initialization

  if(fDebug > 1) printf("AnalysisTaskSESignificance::Init() \n");

  switch(fDecChannel){
  case 0:
    {
      AliRDHFCutsDplustoKpipi* copycut=new AliRDHFCutsDplustoKpipi(*(static_cast<AliRDHFCutsDplustoKpipi*>(fRDCuts)));
      // Post the data
      PostData(3,copycut);
    }
    break;
  case 1:
    {
      AliRDHFCutsD0toKpi* copycut=new AliRDHFCutsD0toKpi(*(static_cast<AliRDHFCutsD0toKpi*>(fRDCuts)));
      // Post the data
      PostData(3,copycut);
    }
    break;
  case 2:
    {
      AliRDHFCutsDStartoKpipi* copycut=new AliRDHFCutsDStartoKpipi(*(static_cast<AliRDHFCutsDStartoKpipi*>(fRDCuts)));
      // Post the data
      PostData(3,copycut);
    }
    break;
  case 3:
    {
      AliRDHFCutsDstoKKpi* copycut=new AliRDHFCutsDstoKKpi(*(static_cast<AliRDHFCutsDstoKKpi*>(fRDCuts)));
      // Post the data
      PostData(3,copycut);
    }
    break;
  case 4:
    {
      AliRDHFCutsD0toKpipipi* copycut=new AliRDHFCutsD0toKpipipi(*(static_cast<AliRDHFCutsD0toKpipipi*>(fRDCuts)));
      // Post the data
      PostData(3,copycut);
    }
    break;
  case 5:
    {
      AliRDHFCutsLctopKpi* copycut=new AliRDHFCutsLctopKpi(*(static_cast<AliRDHFCutsLctopKpi*>(fRDCuts)));
      // Post the data
      PostData(3,copycut);
    }
    break;

  default:
    return;
  }

  TList *mdvList =  new TList();
  mdvList->SetOwner();
  mdvList = fCutList;
  
  PostData(2,mdvList);


}
//________________________________________________________________________
void AliAnalysisTaskSESignificance::UserCreateOutputObjects()
{
  // Create the output container
 
  if(fDebug > 1) printf("AnalysisTaskSESignificance::UserCreateOutputObjects() \n");

  // Several histograms are more conveniently managed in a TList
  fOutput = new TList();
  fOutput->SetOwner();
  fOutput->SetName("OutputHistos");

  //same number of steps in each multiDimVectorPtBin%d !
  Int_t nHist=((AliMultiDimVector*)fCutList->FindObject("multiDimVectorPtBin0"))->GetNTotCells();
  cout<<"ncells = "<<nHist<<" n ptbins = "<<fNPtBins<<endl;
  nHist=nHist*fNPtBins;
  cout<<"Total = "<<nHist<<endl;
  for(Int_t i=0;i<nHist;i++){

    TString hisname;
    TString signame;
    TString bkgname;
    TString rflname;
    TString title;
    
    hisname.Form("hMass_%d",i);
    signame.Form("hSig_%d",i);
    bkgname.Form("hBkg_%d",i);
    rflname.Form("hRfl_%d",i);
    
    title.Form("Invariant mass;M[GeV/c^{2}];Entries");

    fMassHist[i]=new TH1F(hisname.Data(),title.Data(),fNBins,fLowmasslimit,fUpmasslimit);
    fMassHist[i]->Sumw2();
    fOutput->Add(fMassHist[i]);

    if(fReadMC){
      fSigHist[i]=new TH1F(signame.Data(),title.Data(),fNBins,fLowmasslimit,fUpmasslimit);
      fSigHist[i]->Sumw2();
      fOutput->Add(fSigHist[i]);
      
      fBkgHist[i]=new TH1F(bkgname.Data(),title.Data(),fNBins,fLowmasslimit,fUpmasslimit);
      fBkgHist[i]->Sumw2();
      fOutput->Add(fBkgHist[i]);

      if(fDecChannel != AliAnalysisTaskSESignificance::kDplustoKpipi){
	fRflHist[i]=new TH1F(rflname.Data(),title.Data(),fNBins,fLowmasslimit,fUpmasslimit);
	fRflHist[i]->Sumw2();
	fOutput->Add(fRflHist[i]);
      }
    }
  }

  fHistNEvents=new TH1F("fHistNEvents","Number of AODs scanned",8,-0.5,7.5);
  fHistNEvents->GetXaxis()->SetBinLabel(1,"nEventsAnal");
  fHistNEvents->GetXaxis()->SetBinLabel(2,"nEvSelected (vtx)");
  fHistNEvents->GetXaxis()->SetBinLabel(3,"nCandidatesSelected");
  fHistNEvents->GetXaxis()->SetBinLabel(4,"nTotEntries Mass hists");
  fHistNEvents->GetXaxis()->SetBinLabel(5,"Pile-up Rej");
  fHistNEvents->GetXaxis()->SetBinLabel(6,"N. of 0SMH");
  if(fReadMC){
    fHistNEvents->GetXaxis()->SetBinLabel(7,"MC Cand from c");
    fHistNEvents->GetXaxis()->SetBinLabel(8,"MC Cand from b");
  } else{
    fHistNEvents->GetXaxis()->SetBinLabel(7,"N candidates");
  }
  fHistNEvents->GetXaxis()->SetNdivisions(1,kFALSE);
  fOutput->Add(fHistNEvents);

 
  PostData(1,fOutput);    
  return;
}

//________________________________________________________________________
void AliAnalysisTaskSESignificance::UserExec(Option_t */*option*/)
{
  // Execute analysis for current event:
  // heavy flavor candidates association to MC truth
   
  AliAODEvent *aod = dynamic_cast<AliAODEvent*> (InputEvent());
  if(fDebug>2) printf("Analysing decay %d\n",fDecChannel);
  // Post the data already here
  PostData(1,fOutput);
  TClonesArray *arrayProng =0;

  if(!aod && AODEvent() && IsStandardAOD()) { 
    // In case there is an AOD handler writing a standard AOD, use the AOD 
    // event in memory rather than the input (ESD) event.    
    aod = dynamic_cast<AliAODEvent*> (AODEvent());
    // in this case the braches in the deltaAOD (AliAOD.VertexingHF.root)
    // have to taken from the AOD event hold by the AliAODExtension
    AliAODHandler* aodHandler = (AliAODHandler*) 
      ((AliAnalysisManager::GetAnalysisManager())->GetOutputEventHandler());
    if(aodHandler->GetExtensions()) {
      
      AliAODExtension *ext = (AliAODExtension*)aodHandler->GetExtensions()->FindObject("AliAOD.VertexingHF.root");
      AliAODEvent *aodFromExt = ext->GetAOD();
      arrayProng=(TClonesArray*)aodFromExt->GetList()->FindObject(fBranchName.Data());
      
   }
  } else if(aod) {
    arrayProng=(TClonesArray*)aod->GetList()->FindObject(fBranchName.Data());
  }
  if(!aod || !arrayProng) {
    AliError("AliAnalysisTaskSESignificance::UserExec:Branch not found!\n");
    return;
  }
  
  // fix for temporary bug in ESDfilter 
  // the AODs with null vertex pointer didn't pass the PhysSel
  if(!aod->GetPrimaryVertex() || TMath::Abs(aod->GetMagneticField())<0.001) return;
  TClonesArray *arrayMC=0;
  AliAODMCHeader *mcHeader=0;

  // load MC particles
  if(fReadMC){
    
    arrayMC =  (TClonesArray*)aod->GetList()->FindObject(AliAODMCParticle::StdBranchName());
    if(!arrayMC) {
      AliError("AliAnalysisTaskSESignificance::UserExec:MC particles branch not found!\n");
      return;
    }
    
    // load MC header
    mcHeader =  (AliAODMCHeader*)aod->GetList()->FindObject(AliAODMCHeader::StdBranchName());
    if(!mcHeader) {
      AliError("AliAnalysisTaskSESignificance::UserExec:MC header branch not found!\n");
      return;
    }
  }

  fHistNEvents->Fill(0); // count event

  AliAODRecoDecayHF *d=0;
  


  Int_t nHistpermv=((AliMultiDimVector*)fCutList->FindObject("multiDimVectorPtBin0"))->GetNTotCells();
  Int_t nProng = arrayProng->GetEntriesFast();
  if(fDebug>1) printf("Number of D2H: %d\n",nProng);

  // trigger class for PbPb C0SMH-B-NOPF-ALLNOTRD, C0SMH-B-NOPF-ALL
  TString trigclass=aod->GetFiredTriggerClasses();
  if(trigclass.Contains("C0SMH-B-NOPF-ALLNOTRD") || trigclass.Contains("C0SMH-B-NOPF-ALL")) fHistNEvents->Fill(5);

  if(fRDCuts->IsEventSelected(aod)) {
    fHistNEvents->Fill(1);
  }else{
    if(fRDCuts->GetWhyRejection()==1) // rejected for pileup
      fHistNEvents->Fill(4);
    return;
  }
  
  for (Int_t iProng = 0; iProng < nProng; iProng++) {
    fHistNEvents->Fill(6);
    d=(AliAODRecoDecayHF*)arrayProng->UncheckedAt(iProng);

    AliAODRecoCascadeHF* DStarToD0pi = NULL;
    AliAODRecoDecayHF2Prong* D0Particle = NULL;
    fPDGDStarToD0pi[0] = 421; fPDGDStarToD0pi[1] = 211;
    fPDGD0ToKpi[0] = 321; fPDGD0ToKpi[1] = 211;

    Bool_t isSelBit=kTRUE;
    if(fUseSelBit){
      if(fDecChannel==0) {
	isSelBit=d->HasSelectionBit(AliRDHFCuts::kDplusCuts);
      }else{ 
	if(fDecChannel==1) {
	  isSelBit=d->HasSelectionBit(AliRDHFCuts::kD0toKpiCuts);
	}else{
	  if(fDecChannel==2) {
	    isSelBit=d->HasSelectionBit(AliRDHFCuts::kDstarCuts);
	  }else{
	    if(fDecChannel==3) {
	      isSelBit=d->HasSelectionBit(AliRDHFCuts::kDsCuts);
	    }else{
	      if(fDecChannel==5) isSelBit=d->HasSelectionBit(AliRDHFCuts::kLcCuts);
	    }
	  }
	}
      }
    }
    if(!isSelBit) continue; 

    if (fDecChannel==2) {
      DStarToD0pi = (AliAODRecoCascadeHF*)arrayProng->At(iProng);
      if (!DStarToD0pi->GetSecondaryVtx()) continue;
      D0Particle = (AliAODRecoDecayHF2Prong*)DStarToD0pi->Get2Prong();
      if (!D0Particle) continue;
    }
    
    Bool_t isFidAcc = fRDCuts->IsInFiducialAcceptance(d->Pt(),d->Y(fPDGmother));
    Int_t isSelected=fRDCuts->IsSelected(d,fSelectionlevel,aod);

    if(fReadMC && fBFeedDown!=kBoth && isSelected){
      Int_t labD = d->MatchToMC(fPDGmother,arrayMC,fNProngs,fPDGdaughters);
      if(labD>=0){
	AliAODMCParticle *partD = (AliAODMCParticle*)arrayMC->At(labD);
	Int_t pdgGranma = CheckOrigin(partD, arrayMC);
	Int_t abspdgGranma = TMath::Abs(pdgGranma);
	if ((abspdgGranma > 500 && abspdgGranma < 600) || (abspdgGranma > 5000 && abspdgGranma < 6000)) {
	  //feed down particle
	  AliDebug(2,Form("Particle has a b-meson, or b-baryon mother (pdg code mother = %d )--> not coming from a c-quark, skipping...", pdgGranma));
	  fHistNEvents->Fill(7);
	  if(fBFeedDown==kCharmOnly) isSelected=kFALSE; //from beauty
	}
	else { 
	  //prompt particle
	  fHistNEvents->Fill(6);
	  if(fBFeedDown==kBeautyOnly)isSelected=kFALSE;
	} 
      }
    }
    
    if(isSelected&&isFidAcc) {
      fHistNEvents->Fill(2); // count selected with loosest cuts
      if(fDebug>1) printf("+++++++Is Selected\n");
    
      Int_t nVals=0;
      if(fDecChannel==3) SetPDGdaughterDstoKKpi();
      fRDCuts->GetCutVarsForOpt(d,fVars,fNVars,fPDGdaughters,aod);
      Int_t ptbin=fRDCuts->PtBin(d->Pt());
      if(ptbin==-1) continue;
      TString mdvname=Form("multiDimVectorPtBin%d",ptbin);
      AliMultiDimVector* muvec=(AliMultiDimVector*)fCutList->FindObject(mdvname.Data());

      ULong64_t *addresses = muvec->GetGlobalAddressesAboveCuts(fVars,(Float_t)d->Pt(),nVals);
      if(fDebug>1)printf("nvals = %d\n",nVals);
      for(Int_t ivals=0;ivals<nVals;ivals++){
	if(addresses[ivals]>=muvec->GetNTotCells()){
	  if (fDebug>1) printf("Overflow!!\n");
	  delete [] addresses;
	  return;
	}
	
	fHistNEvents->Fill(3);
	
	//fill the histograms with the appropriate method
	switch (fDecChannel){
	case 0:
	  FillDplus(d,arrayMC,(Int_t)(ptbin*nHistpermv+addresses[ivals]),isSelected);
	  break;
	case 1:
	  FillD02p(d,arrayMC,(Int_t)(ptbin*nHistpermv+addresses[ivals]),isSelected);
	  break;
	case 2:
	  FillDstar(DStarToD0pi,arrayMC,(Int_t)(ptbin*nHistpermv+addresses[ivals]),isSelected);
	  break;
	case 3:
	  if(isSelected&1){
	    FillDs(d,arrayMC,(Int_t)(ptbin*nHistpermv+addresses[ivals]),isSelected,1);
	  }
	  break;
	case 4:
	  FillD04p(d,arrayMC,(Int_t)(ptbin*nHistpermv+addresses[ivals]),isSelected);
	  break;
	case 5:
	  FillLambdac(d,arrayMC,(Int_t)(ptbin*nHistpermv+addresses[ivals]),isSelected);
	  break;
	default:
	  break;
	}
	
      }
      
      if (fDecChannel==3 && isSelected&2){
	SetPDGdaughterDstopiKK();
	nVals=0;
	fRDCuts->GetCutVarsForOpt(d,fVars,fNVars,fPDGdaughters,aod);
	delete [] addresses;
	addresses = muvec->GetGlobalAddressesAboveCuts(fVars,(Float_t)d->Pt(),nVals);
	if(fDebug>1)printf("nvals = %d\n",nVals);
	for(Int_t ivals=0;ivals<nVals;ivals++){
	  if(addresses[ivals]>=muvec->GetNTotCells()){
	    if (fDebug>1) printf("Overflow!!\n");
	    delete [] addresses;	    
	    return;
	  }
	  FillDs(d,arrayMC,(Int_t)(ptbin*nHistpermv+addresses[ivals]),isSelected,0);	  
	  
	}

      }
      
      delete [] addresses;
    }// end if selected
    
  }
  

  PostData(1,fOutput);    
  return;
}

//***************************************************************************

// Methods used in the UserExec


//********************************************************************************************

//Methods to fill the istograms with MC information, one for each candidate
//NB: the implementation for each candidate is responsibility of the corresponding developer

void AliAnalysisTaskSESignificance::FillDplus(AliAODRecoDecayHF* d,TClonesArray *arrayMC,Int_t index,Int_t isSel){
    //D+ channel
  if(!isSel){
    AliError("Candidate not selected\n");
    return;
  }

  if(fPartOrAndAntiPart*d->GetCharge()<0)return;
  Int_t pdgdaughters[3] = {211,321,211};
  Double_t mass=d->InvMass(3,(UInt_t*)pdgdaughters);

  fMassHist[index]->Fill(mass);


  if(fReadMC){
    Int_t lab=-1;
    lab = d->MatchToMC(411,arrayMC,3,pdgdaughters);
    if(lab>=0){ //signal
      fSigHist[index]->Fill(mass);
    } else{ //background
      fBkgHist[index]->Fill(mass);
    } 
  }   
}


void AliAnalysisTaskSESignificance::FillD02p(AliAODRecoDecayHF* d,TClonesArray *arrayMC,Int_t index,Int_t isSel){

  //D0->Kpi channel

  //mass histograms
  Int_t pdgdaughtersD0[2]={211,321};//pi,K 
  Int_t pdgdaughtersD0bar[2]={321,211};//K,pi 
  Double_t masses[2];
  masses[0]=d->InvMass(fNProngs,(UInt_t*)pdgdaughtersD0); //D0
  masses[1]=d->InvMass(fNProngs,(UInt_t*)pdgdaughtersD0bar); //D0bar

  if((isSel==1 || isSel==3) && fPartOrAndAntiPart>=0) fMassHist[index]->Fill(masses[0]);
  if(isSel>=2 && fPartOrAndAntiPart<=0) fMassHist[index]->Fill(masses[1]);



  //MC histograms
  if(fReadMC){

    Int_t matchtoMC=-1;

    //D0
    Int_t pdgdaughters[2];
    pdgdaughters[0]=211;//pi 
    pdgdaughters[1]=321;//K

    matchtoMC = d->MatchToMC(fPDGmother,arrayMC,fNProngs,pdgdaughters);

    Int_t prongPdgPlus=421,prongPdgMinus=(-1)*421;
    if((isSel==1 || isSel==3) && fPartOrAndAntiPart>=0){ //D0
      if(matchtoMC>=0){
	AliAODMCParticle *dMC = (AliAODMCParticle*)arrayMC->At(matchtoMC);
	Int_t pdgMC = dMC->GetPdgCode();
	
	if(pdgMC==prongPdgPlus) fSigHist[index]->Fill(masses[0]);
	else fRflHist[index]->Fill(masses[0]);
	
      } else fBkgHist[index]->Fill(masses[0]);
      
    }
    if(isSel>=2 && fPartOrAndAntiPart<=0){ //D0bar
      if(matchtoMC>=0){
	AliAODMCParticle *dMC = (AliAODMCParticle*)arrayMC->At(matchtoMC);
	Int_t pdgMC = dMC->GetPdgCode();
	
	if(pdgMC==prongPdgMinus) fSigHist[index]->Fill(masses[1]);
	else fRflHist[index]->Fill(masses[1]);
      } else fBkgHist[index]->Fill(masses[1]);
    }
  }
}

void AliAnalysisTaskSESignificance::FillDstar(AliAODRecoCascadeHF* dstarD0pi,TClonesArray *arrayMC,Int_t index,Int_t isSel){
    //D* channel

    AliInfo("Dstar selected\n");
    
    Double_t mass = dstarD0pi->DeltaInvMass();

    if((isSel>0) && TMath::Abs(fPartOrAndAntiPart)>=0) fMassHist[index]->Fill(mass);
	
    if(fReadMC) {
       Int_t matchtoMC = -1; 
       matchtoMC = dstarD0pi->MatchToMC(413,421,fPDGDStarToD0pi, fPDGD0ToKpi, arrayMC);

       Int_t prongPdgDStarPlus=413;//,prongPdgDStarMinus=(-1)*413;
	
       if ((isSel>1) && TMath::Abs(fPartOrAndAntiPart)>=0) { 
          //D*+
      	  if(matchtoMC>=0) {
             AliAODMCParticle *dMC = (AliAODMCParticle*)arrayMC->At(matchtoMC);
	     Int_t pdgMC = dMC->GetPdgCode();
	
	     if (pdgMC==prongPdgDStarPlus) fSigHist[index]->Fill(mass);
	     else {
	        dstarD0pi->SetCharge(-1*dstarD0pi->GetCharge());
		mass =	dstarD0pi->DeltaInvMass();
		fRflHist[index]->Fill(mass);
		dstarD0pi->SetCharge(-1*dstarD0pi->GetCharge());
	      }	
      	    } 
	  else fBkgHist[index]->Fill(mass);
        }
    }
}


void AliAnalysisTaskSESignificance::FillDs(AliAODRecoDecayHF* d,TClonesArray *arrayMC,Int_t index,Int_t isSel,Int_t optDecay){

  // Fill Ds histos


  Int_t pdgDsKKpi[3]={321,321,211};//K,K,pi 
  Int_t pdgDspiKK[3]={211,321,321};//pi,K,K 
  Double_t masses[2];  
  masses[0]=d->InvMass(fNProngs,(UInt_t*)pdgDsKKpi); //Ds
  masses[1]=d->InvMass(fNProngs,(UInt_t*)pdgDspiKK); //Dsbar 

  Int_t labDs=-1;
  if(fReadMC){
    labDs = d->MatchToMC(431,arrayMC,3,pdgDsKKpi);
  }

  Int_t isKKpi=isSel&1;
  Int_t ispiKK=isSel&2;
  Int_t isPhiKKpi=isSel&4;
  Int_t isPhipiKK=isSel&8;
  Int_t isK0starKKpi=isSel&16;
  Int_t isK0starpiKK=isSel&32;


  if(fDsChannel==kPhi && (isPhiKKpi==0 && isPhipiKK==0)) return;
  if(fDsChannel==kK0star && (isK0starKKpi==0 && isK0starpiKK==0)) return;
   
  if (optDecay==1){ 
    if(isKKpi  && fPartOrAndAntiPart*d->GetCharge()>=0) {
      if(fDsChannel==kPhi && isPhiKKpi==0) return;
      if(fDsChannel==kK0star && isK0starKKpi==0) return;
      
      fMassHist[index]->Fill(masses[0]); 
      
      if(fReadMC){
	if(labDs>=0){
	  Int_t labDau0=((AliAODTrack*)d->GetDaughter(0))->GetLabel();
	  AliAODMCParticle* p=(AliAODMCParticle*)arrayMC->UncheckedAt(labDau0);
	  Int_t pdgCode0=TMath::Abs(p->GetPdgCode());
	  if(pdgCode0==321) {
	    fSigHist[index]->Fill(masses[0]); //signal
	  }else{
	    fRflHist[index]->Fill(masses[0]); //Reflected signal
	  }
	}else{
	  fBkgHist[index]->Fill(masses[0]); // Background
	}
      }
    }
  }
  
  if (optDecay==0){ 
    if(ispiKK && fPartOrAndAntiPart*d->GetCharge()>=0){
      if(fDsChannel==kPhi && isPhipiKK==0) return;
      if(fDsChannel==kK0star && isK0starpiKK==0) return;
      
      fMassHist[index]->Fill(masses[1]);
      
      if(fReadMC){
	if(labDs>=0){
	  Int_t labDau0=((AliAODTrack*)d->GetDaughter(0))->GetLabel();
	  AliAODMCParticle* p=(AliAODMCParticle*)arrayMC->UncheckedAt(labDau0);
	  Int_t pdgCode0=TMath::Abs(p->GetPdgCode());	
	  if(pdgCode0==211) {	  	  
	    fSigHist[index]->Fill(masses[1]);
	  }else{
	    fRflHist[index]->Fill(masses[1]);
	  }
	}else{
	  fBkgHist[index]->Fill(masses[1]);
	}
      }
    }
  }
}

void AliAnalysisTaskSESignificance::FillD04p(AliAODRecoDecayHF* /*d*/,TClonesArray */*arrayMC*/,Int_t /*index*/,Int_t /*matchtoMC*/){
  //D0->Kpipipi channel
  AliInfo("D0 in 4 prongs channel not implemented\n");

}

void AliAnalysisTaskSESignificance::FillLambdac(AliAODRecoDecayHF* d,TClonesArray* arrayMC,Int_t index,Int_t isSel){

  // Mass hypothesis
  Double_t masses[2];
  Int_t pdgdaughtersLc[3]={2212,321,211}; //p,K,pi
  masses[0]=d->InvMass(fNProngs,(UInt_t*)pdgdaughtersLc);
  Int_t pdgdaughtersLc2[3]={211,321,2212}; //pi,K,p
  masses[1]=d->InvMass(fNProngs,(UInt_t*)pdgdaughtersLc2);


  if(fPartOrAndAntiPart==0 || fPartOrAndAntiPart==d->GetCharge()) {
    
    // isSel=1 : p K pi ; isSel=2 : pi K p ;
    if(isSel==1 || isSel==3) fMassHist[index]->Fill(masses[0]);
    if(isSel>=2) fMassHist[index]->Fill(masses[1]);
    
    // Check the MC truth
    if(fReadMC){

      Int_t ispKpi = 0;
      Int_t ispiKp = 0;
      ispKpi = isSel&1;
      ispiKp = isSel&2;
      Int_t matchtoMC = -1;
      //
      Int_t pPDG = 2212; // p 
      Int_t kPDG = 321;  // K
      Int_t piPDG = 211; // pi
      Int_t absPdgMom = 4122;
      matchtoMC = d->MatchToMC(absPdgMom,arrayMC,fNProngs,pdgdaughtersLc);

      if(matchtoMC>=0){

	AliAODMCParticle *dMC = (AliAODMCParticle*)arrayMC->At(matchtoMC);
	Int_t pdgMC = dMC->GetPdgCode();
	if (TMath::Abs(pdgMC)!=absPdgMom) AliInfo("What's up, isn't it a lambdac ?!");
	Int_t labDau0 = ((AliAODTrack*)d->GetDaughter(0))->GetLabel();
	AliAODMCParticle* p0 = (AliAODMCParticle*)arrayMC->UncheckedAt(labDau0);
	Int_t pdgCode0 = TMath::Abs(p0->GetPdgCode());
	Int_t labDau1 = ((AliAODTrack*)d->GetDaughter(1))->GetLabel();
	AliAODMCParticle* p1 = (AliAODMCParticle*)arrayMC->UncheckedAt(labDau1);
	Int_t pdgCode1 = TMath::Abs(p1->GetPdgCode());
	Int_t labDau2 = ((AliAODTrack*)d->GetDaughter(2))->GetLabel();
	AliAODMCParticle* p2 = (AliAODMCParticle*)arrayMC->UncheckedAt(labDau2);
	Int_t pdgCode2 = TMath::Abs(p2->GetPdgCode());

	// Fill in the histograms in case of p K pi decays
	if(ispKpi==1){
	  if(pdgCode0==pPDG && pdgCode1==kPDG && pdgCode2==piPDG){
	    fSigHist[index]->Fill(masses[0]);
	  } else {
	    fRflHist[index]->Fill(masses[0]);
	  }
	}
	// Fill in the histograms in case of pi K p decays
	if(ispiKp==2){
	  if(pdgCode0==piPDG && pdgCode1==kPDG && pdgCode2==pPDG){
	    fSigHist[index]->Fill(masses[1]);
	  } else {
	    fRflHist[index]->Fill(masses[1]);
	  }
	}
      } else {
	if(ispKpi==1) fBkgHist[index]->Fill(masses[0]);
	if(ispiKp==2) fBkgHist[index]->Fill(masses[1]);
      }
    }
  }


}


//________________________________________________________________________
void AliAnalysisTaskSESignificance::Terminate(Option_t */*option*/)
{
  // Terminate analysis
  //
  if(fDebug > 1) printf("AnalysisTaskSESignificance: Terminate() \n");


  fOutput = dynamic_cast<TList*> (GetOutputData(1));
  if (!fOutput) {     
    printf("ERROR: fOutput not available\n");
    return;
  }
 
  fCutList = dynamic_cast<TList*> (GetOutputData(2));
  if (!fCutList) {     
    printf("ERROR: fCutList not available\n");
    return;
  }

  AliMultiDimVector* mdvtmp=(AliMultiDimVector*)fCutList->FindObject("multiDimVectorPtBin0");
  if (!mdvtmp){
    cout<<"multidimvec not found in TList"<<endl;
    fCutList->ls();
    return;
  }
  Int_t nHist=mdvtmp->GetNTotCells();
  TCanvas *c1=new TCanvas("c1","Invariant mass distribution - loose cuts",500,500);
  Bool_t drawn=kFALSE;
  for(Int_t i=0;i<nHist;i++){

    TString hisname;
    TString signame;
    TString bkgname;
    TString rflname;
    
    hisname.Form("hMass_%d",i);
    signame.Form("hSig_%d",i);
    bkgname.Form("hBkg_%d",i);
    rflname.Form("hRfl_%d",i);

    fMassHist[i]=dynamic_cast<TH1F*>(fOutput->FindObject(hisname.Data()));

    if (!drawn && fMassHist[i]->GetEntries() > 0){
      c1->cd();
      fMassHist[i]->Draw();
      drawn=kTRUE;
    }
    
    if(fReadMC){
      fSigHist[i]=dynamic_cast<TH1F*>(fOutput->FindObject(signame.Data()));
      fBkgHist[i]=dynamic_cast<TH1F*>(fOutput->FindObject(bkgname.Data()));
      if(fDecChannel != AliAnalysisTaskSESignificance::kDplustoKpipi) fRflHist[i]=dynamic_cast<TH1F*>(fOutput->FindObject(rflname.Data()));
    }
    
  }
  

 
  
  return;
}
//_________________________________________________________________________________________________
Int_t AliAnalysisTaskSESignificance::CheckOrigin(const AliAODMCParticle* mcPart, const TClonesArray* mcArray)const{

	//
	// checking whether the very mother of the D0 is a charm or a bottom quark
	//

	Int_t pdgGranma = 0;
	Int_t mother = 0;
	mother = mcPart->GetMother();
	Int_t istep = 0;
	while (mother >0 ){
		istep++;
		AliDebug(2,Form("mother at step %d = %d", istep, mother));
		AliAODMCParticle* mcGranma = dynamic_cast<AliAODMCParticle*>(mcArray->At(mother));
		if(!mcGranma) break;
		pdgGranma = mcGranma->GetPdgCode();
		AliDebug(2,Form("Pdg mother at step %d = %d", istep, pdgGranma));
		Int_t abspdgGranma = TMath::Abs(pdgGranma);
		if ((abspdgGranma > 500 && abspdgGranma < 600) || (abspdgGranma > 5000 && abspdgGranma < 6000)) {
			break;
		}
		mother = mcGranma->GetMother();
	}
	return pdgGranma;
}
//_________________________________________________________________________________________________
 AliAnalysisTaskSESignificance.cxx:1
 AliAnalysisTaskSESignificance.cxx:2
 AliAnalysisTaskSESignificance.cxx:3
 AliAnalysisTaskSESignificance.cxx:4
 AliAnalysisTaskSESignificance.cxx:5
 AliAnalysisTaskSESignificance.cxx:6
 AliAnalysisTaskSESignificance.cxx:7
 AliAnalysisTaskSESignificance.cxx:8
 AliAnalysisTaskSESignificance.cxx:9
 AliAnalysisTaskSESignificance.cxx:10
 AliAnalysisTaskSESignificance.cxx:11
 AliAnalysisTaskSESignificance.cxx:12
 AliAnalysisTaskSESignificance.cxx:13
 AliAnalysisTaskSESignificance.cxx:14
 AliAnalysisTaskSESignificance.cxx:15
 AliAnalysisTaskSESignificance.cxx:16
 AliAnalysisTaskSESignificance.cxx:17
 AliAnalysisTaskSESignificance.cxx:18
 AliAnalysisTaskSESignificance.cxx:19
 AliAnalysisTaskSESignificance.cxx:20
 AliAnalysisTaskSESignificance.cxx:21
 AliAnalysisTaskSESignificance.cxx:22
 AliAnalysisTaskSESignificance.cxx:23
 AliAnalysisTaskSESignificance.cxx:24
 AliAnalysisTaskSESignificance.cxx:25
 AliAnalysisTaskSESignificance.cxx:26
 AliAnalysisTaskSESignificance.cxx:27
 AliAnalysisTaskSESignificance.cxx:28
 AliAnalysisTaskSESignificance.cxx:29
 AliAnalysisTaskSESignificance.cxx:30
 AliAnalysisTaskSESignificance.cxx:31
 AliAnalysisTaskSESignificance.cxx:32
 AliAnalysisTaskSESignificance.cxx:33
 AliAnalysisTaskSESignificance.cxx:34
 AliAnalysisTaskSESignificance.cxx:35
 AliAnalysisTaskSESignificance.cxx:36
 AliAnalysisTaskSESignificance.cxx:37
 AliAnalysisTaskSESignificance.cxx:38
 AliAnalysisTaskSESignificance.cxx:39
 AliAnalysisTaskSESignificance.cxx:40
 AliAnalysisTaskSESignificance.cxx:41
 AliAnalysisTaskSESignificance.cxx:42
 AliAnalysisTaskSESignificance.cxx:43
 AliAnalysisTaskSESignificance.cxx:44
 AliAnalysisTaskSESignificance.cxx:45
 AliAnalysisTaskSESignificance.cxx:46
 AliAnalysisTaskSESignificance.cxx:47
 AliAnalysisTaskSESignificance.cxx:48
 AliAnalysisTaskSESignificance.cxx:49
 AliAnalysisTaskSESignificance.cxx:50
 AliAnalysisTaskSESignificance.cxx:51
 AliAnalysisTaskSESignificance.cxx:52
 AliAnalysisTaskSESignificance.cxx:53
 AliAnalysisTaskSESignificance.cxx:54
 AliAnalysisTaskSESignificance.cxx:55
 AliAnalysisTaskSESignificance.cxx:56
 AliAnalysisTaskSESignificance.cxx:57
 AliAnalysisTaskSESignificance.cxx:58
 AliAnalysisTaskSESignificance.cxx:59
 AliAnalysisTaskSESignificance.cxx:60
 AliAnalysisTaskSESignificance.cxx:61
 AliAnalysisTaskSESignificance.cxx:62
 AliAnalysisTaskSESignificance.cxx:63
 AliAnalysisTaskSESignificance.cxx:64
 AliAnalysisTaskSESignificance.cxx:65
 AliAnalysisTaskSESignificance.cxx:66
 AliAnalysisTaskSESignificance.cxx:67
 AliAnalysisTaskSESignificance.cxx:68
 AliAnalysisTaskSESignificance.cxx:69
 AliAnalysisTaskSESignificance.cxx:70
 AliAnalysisTaskSESignificance.cxx:71
 AliAnalysisTaskSESignificance.cxx:72
 AliAnalysisTaskSESignificance.cxx:73
 AliAnalysisTaskSESignificance.cxx:74
 AliAnalysisTaskSESignificance.cxx:75
 AliAnalysisTaskSESignificance.cxx:76
 AliAnalysisTaskSESignificance.cxx:77
 AliAnalysisTaskSESignificance.cxx:78
 AliAnalysisTaskSESignificance.cxx:79
 AliAnalysisTaskSESignificance.cxx:80
 AliAnalysisTaskSESignificance.cxx:81
 AliAnalysisTaskSESignificance.cxx:82
 AliAnalysisTaskSESignificance.cxx:83
 AliAnalysisTaskSESignificance.cxx:84
 AliAnalysisTaskSESignificance.cxx:85
 AliAnalysisTaskSESignificance.cxx:86
 AliAnalysisTaskSESignificance.cxx:87
 AliAnalysisTaskSESignificance.cxx:88
 AliAnalysisTaskSESignificance.cxx:89
 AliAnalysisTaskSESignificance.cxx:90
 AliAnalysisTaskSESignificance.cxx:91
 AliAnalysisTaskSESignificance.cxx:92
 AliAnalysisTaskSESignificance.cxx:93
 AliAnalysisTaskSESignificance.cxx:94
 AliAnalysisTaskSESignificance.cxx:95
 AliAnalysisTaskSESignificance.cxx:96
 AliAnalysisTaskSESignificance.cxx:97
 AliAnalysisTaskSESignificance.cxx:98
 AliAnalysisTaskSESignificance.cxx:99
 AliAnalysisTaskSESignificance.cxx:100
 AliAnalysisTaskSESignificance.cxx:101
 AliAnalysisTaskSESignificance.cxx:102
 AliAnalysisTaskSESignificance.cxx:103
 AliAnalysisTaskSESignificance.cxx:104
 AliAnalysisTaskSESignificance.cxx:105
 AliAnalysisTaskSESignificance.cxx:106
 AliAnalysisTaskSESignificance.cxx:107
 AliAnalysisTaskSESignificance.cxx:108
 AliAnalysisTaskSESignificance.cxx:109
 AliAnalysisTaskSESignificance.cxx:110
 AliAnalysisTaskSESignificance.cxx:111
 AliAnalysisTaskSESignificance.cxx:112
 AliAnalysisTaskSESignificance.cxx:113
 AliAnalysisTaskSESignificance.cxx:114
 AliAnalysisTaskSESignificance.cxx:115
 AliAnalysisTaskSESignificance.cxx:116
 AliAnalysisTaskSESignificance.cxx:117
 AliAnalysisTaskSESignificance.cxx:118
 AliAnalysisTaskSESignificance.cxx:119
 AliAnalysisTaskSESignificance.cxx:120
 AliAnalysisTaskSESignificance.cxx:121
 AliAnalysisTaskSESignificance.cxx:122
 AliAnalysisTaskSESignificance.cxx:123
 AliAnalysisTaskSESignificance.cxx:124
 AliAnalysisTaskSESignificance.cxx:125
 AliAnalysisTaskSESignificance.cxx:126
 AliAnalysisTaskSESignificance.cxx:127
 AliAnalysisTaskSESignificance.cxx:128
 AliAnalysisTaskSESignificance.cxx:129
 AliAnalysisTaskSESignificance.cxx:130
 AliAnalysisTaskSESignificance.cxx:131
 AliAnalysisTaskSESignificance.cxx:132
 AliAnalysisTaskSESignificance.cxx:133
 AliAnalysisTaskSESignificance.cxx:134
 AliAnalysisTaskSESignificance.cxx:135
 AliAnalysisTaskSESignificance.cxx:136
 AliAnalysisTaskSESignificance.cxx:137
 AliAnalysisTaskSESignificance.cxx:138
 AliAnalysisTaskSESignificance.cxx:139
 AliAnalysisTaskSESignificance.cxx:140
 AliAnalysisTaskSESignificance.cxx:141
 AliAnalysisTaskSESignificance.cxx:142
 AliAnalysisTaskSESignificance.cxx:143
 AliAnalysisTaskSESignificance.cxx:144
 AliAnalysisTaskSESignificance.cxx:145
 AliAnalysisTaskSESignificance.cxx:146
 AliAnalysisTaskSESignificance.cxx:147
 AliAnalysisTaskSESignificance.cxx:148
 AliAnalysisTaskSESignificance.cxx:149
 AliAnalysisTaskSESignificance.cxx:150
 AliAnalysisTaskSESignificance.cxx:151
 AliAnalysisTaskSESignificance.cxx:152
 AliAnalysisTaskSESignificance.cxx:153
 AliAnalysisTaskSESignificance.cxx:154
 AliAnalysisTaskSESignificance.cxx:155
 AliAnalysisTaskSESignificance.cxx:156
 AliAnalysisTaskSESignificance.cxx:157
 AliAnalysisTaskSESignificance.cxx:158
 AliAnalysisTaskSESignificance.cxx:159
 AliAnalysisTaskSESignificance.cxx:160
 AliAnalysisTaskSESignificance.cxx:161
 AliAnalysisTaskSESignificance.cxx:162
 AliAnalysisTaskSESignificance.cxx:163
 AliAnalysisTaskSESignificance.cxx:164
 AliAnalysisTaskSESignificance.cxx:165
 AliAnalysisTaskSESignificance.cxx:166
 AliAnalysisTaskSESignificance.cxx:167
 AliAnalysisTaskSESignificance.cxx:168
 AliAnalysisTaskSESignificance.cxx:169
 AliAnalysisTaskSESignificance.cxx:170
 AliAnalysisTaskSESignificance.cxx:171
 AliAnalysisTaskSESignificance.cxx:172
 AliAnalysisTaskSESignificance.cxx:173
 AliAnalysisTaskSESignificance.cxx:174
 AliAnalysisTaskSESignificance.cxx:175
 AliAnalysisTaskSESignificance.cxx:176
 AliAnalysisTaskSESignificance.cxx:177
 AliAnalysisTaskSESignificance.cxx:178
 AliAnalysisTaskSESignificance.cxx:179
 AliAnalysisTaskSESignificance.cxx:180
 AliAnalysisTaskSESignificance.cxx:181
 AliAnalysisTaskSESignificance.cxx:182
 AliAnalysisTaskSESignificance.cxx:183
 AliAnalysisTaskSESignificance.cxx:184
 AliAnalysisTaskSESignificance.cxx:185
 AliAnalysisTaskSESignificance.cxx:186
 AliAnalysisTaskSESignificance.cxx:187
 AliAnalysisTaskSESignificance.cxx:188
 AliAnalysisTaskSESignificance.cxx:189
 AliAnalysisTaskSESignificance.cxx:190
 AliAnalysisTaskSESignificance.cxx:191
 AliAnalysisTaskSESignificance.cxx:192
 AliAnalysisTaskSESignificance.cxx:193
 AliAnalysisTaskSESignificance.cxx:194
 AliAnalysisTaskSESignificance.cxx:195
 AliAnalysisTaskSESignificance.cxx:196
 AliAnalysisTaskSESignificance.cxx:197
 AliAnalysisTaskSESignificance.cxx:198
 AliAnalysisTaskSESignificance.cxx:199
 AliAnalysisTaskSESignificance.cxx:200
 AliAnalysisTaskSESignificance.cxx:201
 AliAnalysisTaskSESignificance.cxx:202
 AliAnalysisTaskSESignificance.cxx:203
 AliAnalysisTaskSESignificance.cxx:204
 AliAnalysisTaskSESignificance.cxx:205
 AliAnalysisTaskSESignificance.cxx:206
 AliAnalysisTaskSESignificance.cxx:207
 AliAnalysisTaskSESignificance.cxx:208
 AliAnalysisTaskSESignificance.cxx:209
 AliAnalysisTaskSESignificance.cxx:210
 AliAnalysisTaskSESignificance.cxx:211
 AliAnalysisTaskSESignificance.cxx:212
 AliAnalysisTaskSESignificance.cxx:213
 AliAnalysisTaskSESignificance.cxx:214
 AliAnalysisTaskSESignificance.cxx:215
 AliAnalysisTaskSESignificance.cxx:216
 AliAnalysisTaskSESignificance.cxx:217
 AliAnalysisTaskSESignificance.cxx:218
 AliAnalysisTaskSESignificance.cxx:219
 AliAnalysisTaskSESignificance.cxx:220
 AliAnalysisTaskSESignificance.cxx:221
 AliAnalysisTaskSESignificance.cxx:222
 AliAnalysisTaskSESignificance.cxx:223
 AliAnalysisTaskSESignificance.cxx:224
 AliAnalysisTaskSESignificance.cxx:225
 AliAnalysisTaskSESignificance.cxx:226
 AliAnalysisTaskSESignificance.cxx:227
 AliAnalysisTaskSESignificance.cxx:228
 AliAnalysisTaskSESignificance.cxx:229
 AliAnalysisTaskSESignificance.cxx:230
 AliAnalysisTaskSESignificance.cxx:231
 AliAnalysisTaskSESignificance.cxx:232
 AliAnalysisTaskSESignificance.cxx:233
 AliAnalysisTaskSESignificance.cxx:234
 AliAnalysisTaskSESignificance.cxx:235
 AliAnalysisTaskSESignificance.cxx:236
 AliAnalysisTaskSESignificance.cxx:237
 AliAnalysisTaskSESignificance.cxx:238
 AliAnalysisTaskSESignificance.cxx:239
 AliAnalysisTaskSESignificance.cxx:240
 AliAnalysisTaskSESignificance.cxx:241
 AliAnalysisTaskSESignificance.cxx:242
 AliAnalysisTaskSESignificance.cxx:243
 AliAnalysisTaskSESignificance.cxx:244
 AliAnalysisTaskSESignificance.cxx:245
 AliAnalysisTaskSESignificance.cxx:246
 AliAnalysisTaskSESignificance.cxx:247
 AliAnalysisTaskSESignificance.cxx:248
 AliAnalysisTaskSESignificance.cxx:249
 AliAnalysisTaskSESignificance.cxx:250
 AliAnalysisTaskSESignificance.cxx:251
 AliAnalysisTaskSESignificance.cxx:252
 AliAnalysisTaskSESignificance.cxx:253
 AliAnalysisTaskSESignificance.cxx:254
 AliAnalysisTaskSESignificance.cxx:255
 AliAnalysisTaskSESignificance.cxx:256
 AliAnalysisTaskSESignificance.cxx:257
 AliAnalysisTaskSESignificance.cxx:258
 AliAnalysisTaskSESignificance.cxx:259
 AliAnalysisTaskSESignificance.cxx:260
 AliAnalysisTaskSESignificance.cxx:261
 AliAnalysisTaskSESignificance.cxx:262
 AliAnalysisTaskSESignificance.cxx:263
 AliAnalysisTaskSESignificance.cxx:264
 AliAnalysisTaskSESignificance.cxx:265
 AliAnalysisTaskSESignificance.cxx:266
 AliAnalysisTaskSESignificance.cxx:267
 AliAnalysisTaskSESignificance.cxx:268
 AliAnalysisTaskSESignificance.cxx:269
 AliAnalysisTaskSESignificance.cxx:270
 AliAnalysisTaskSESignificance.cxx:271
 AliAnalysisTaskSESignificance.cxx:272
 AliAnalysisTaskSESignificance.cxx:273
 AliAnalysisTaskSESignificance.cxx:274
 AliAnalysisTaskSESignificance.cxx:275
 AliAnalysisTaskSESignificance.cxx:276
 AliAnalysisTaskSESignificance.cxx:277
 AliAnalysisTaskSESignificance.cxx:278
 AliAnalysisTaskSESignificance.cxx:279
 AliAnalysisTaskSESignificance.cxx:280
 AliAnalysisTaskSESignificance.cxx:281
 AliAnalysisTaskSESignificance.cxx:282
 AliAnalysisTaskSESignificance.cxx:283
 AliAnalysisTaskSESignificance.cxx:284
 AliAnalysisTaskSESignificance.cxx:285
 AliAnalysisTaskSESignificance.cxx:286
 AliAnalysisTaskSESignificance.cxx:287
 AliAnalysisTaskSESignificance.cxx:288
 AliAnalysisTaskSESignificance.cxx:289
 AliAnalysisTaskSESignificance.cxx:290
 AliAnalysisTaskSESignificance.cxx:291
 AliAnalysisTaskSESignificance.cxx:292
 AliAnalysisTaskSESignificance.cxx:293
 AliAnalysisTaskSESignificance.cxx:294
 AliAnalysisTaskSESignificance.cxx:295
 AliAnalysisTaskSESignificance.cxx:296
 AliAnalysisTaskSESignificance.cxx:297
 AliAnalysisTaskSESignificance.cxx:298
 AliAnalysisTaskSESignificance.cxx:299
 AliAnalysisTaskSESignificance.cxx:300
 AliAnalysisTaskSESignificance.cxx:301
 AliAnalysisTaskSESignificance.cxx:302
 AliAnalysisTaskSESignificance.cxx:303
 AliAnalysisTaskSESignificance.cxx:304
 AliAnalysisTaskSESignificance.cxx:305
 AliAnalysisTaskSESignificance.cxx:306
 AliAnalysisTaskSESignificance.cxx:307
 AliAnalysisTaskSESignificance.cxx:308
 AliAnalysisTaskSESignificance.cxx:309
 AliAnalysisTaskSESignificance.cxx:310
 AliAnalysisTaskSESignificance.cxx:311
 AliAnalysisTaskSESignificance.cxx:312
 AliAnalysisTaskSESignificance.cxx:313
 AliAnalysisTaskSESignificance.cxx:314
 AliAnalysisTaskSESignificance.cxx:315
 AliAnalysisTaskSESignificance.cxx:316
 AliAnalysisTaskSESignificance.cxx:317
 AliAnalysisTaskSESignificance.cxx:318
 AliAnalysisTaskSESignificance.cxx:319
 AliAnalysisTaskSESignificance.cxx:320
 AliAnalysisTaskSESignificance.cxx:321
 AliAnalysisTaskSESignificance.cxx:322
 AliAnalysisTaskSESignificance.cxx:323
 AliAnalysisTaskSESignificance.cxx:324
 AliAnalysisTaskSESignificance.cxx:325
 AliAnalysisTaskSESignificance.cxx:326
 AliAnalysisTaskSESignificance.cxx:327
 AliAnalysisTaskSESignificance.cxx:328
 AliAnalysisTaskSESignificance.cxx:329
 AliAnalysisTaskSESignificance.cxx:330
 AliAnalysisTaskSESignificance.cxx:331
 AliAnalysisTaskSESignificance.cxx:332
 AliAnalysisTaskSESignificance.cxx:333
 AliAnalysisTaskSESignificance.cxx:334
 AliAnalysisTaskSESignificance.cxx:335
 AliAnalysisTaskSESignificance.cxx:336
 AliAnalysisTaskSESignificance.cxx:337
 AliAnalysisTaskSESignificance.cxx:338
 AliAnalysisTaskSESignificance.cxx:339
 AliAnalysisTaskSESignificance.cxx:340
 AliAnalysisTaskSESignificance.cxx:341
 AliAnalysisTaskSESignificance.cxx:342
 AliAnalysisTaskSESignificance.cxx:343
 AliAnalysisTaskSESignificance.cxx:344
 AliAnalysisTaskSESignificance.cxx:345
 AliAnalysisTaskSESignificance.cxx:346
 AliAnalysisTaskSESignificance.cxx:347
 AliAnalysisTaskSESignificance.cxx:348
 AliAnalysisTaskSESignificance.cxx:349
 AliAnalysisTaskSESignificance.cxx:350
 AliAnalysisTaskSESignificance.cxx:351
 AliAnalysisTaskSESignificance.cxx:352
 AliAnalysisTaskSESignificance.cxx:353
 AliAnalysisTaskSESignificance.cxx:354
 AliAnalysisTaskSESignificance.cxx:355
 AliAnalysisTaskSESignificance.cxx:356
 AliAnalysisTaskSESignificance.cxx:357
 AliAnalysisTaskSESignificance.cxx:358
 AliAnalysisTaskSESignificance.cxx:359
 AliAnalysisTaskSESignificance.cxx:360
 AliAnalysisTaskSESignificance.cxx:361
 AliAnalysisTaskSESignificance.cxx:362
 AliAnalysisTaskSESignificance.cxx:363
 AliAnalysisTaskSESignificance.cxx:364
 AliAnalysisTaskSESignificance.cxx:365
 AliAnalysisTaskSESignificance.cxx:366
 AliAnalysisTaskSESignificance.cxx:367
 AliAnalysisTaskSESignificance.cxx:368
 AliAnalysisTaskSESignificance.cxx:369
 AliAnalysisTaskSESignificance.cxx:370
 AliAnalysisTaskSESignificance.cxx:371
 AliAnalysisTaskSESignificance.cxx:372
 AliAnalysisTaskSESignificance.cxx:373
 AliAnalysisTaskSESignificance.cxx:374
 AliAnalysisTaskSESignificance.cxx:375
 AliAnalysisTaskSESignificance.cxx:376
 AliAnalysisTaskSESignificance.cxx:377
 AliAnalysisTaskSESignificance.cxx:378
 AliAnalysisTaskSESignificance.cxx:379
 AliAnalysisTaskSESignificance.cxx:380
 AliAnalysisTaskSESignificance.cxx:381
 AliAnalysisTaskSESignificance.cxx:382
 AliAnalysisTaskSESignificance.cxx:383
 AliAnalysisTaskSESignificance.cxx:384
 AliAnalysisTaskSESignificance.cxx:385
 AliAnalysisTaskSESignificance.cxx:386
 AliAnalysisTaskSESignificance.cxx:387
 AliAnalysisTaskSESignificance.cxx:388
 AliAnalysisTaskSESignificance.cxx:389
 AliAnalysisTaskSESignificance.cxx:390
 AliAnalysisTaskSESignificance.cxx:391
 AliAnalysisTaskSESignificance.cxx:392
 AliAnalysisTaskSESignificance.cxx:393
 AliAnalysisTaskSESignificance.cxx:394
 AliAnalysisTaskSESignificance.cxx:395
 AliAnalysisTaskSESignificance.cxx:396
 AliAnalysisTaskSESignificance.cxx:397
 AliAnalysisTaskSESignificance.cxx:398
 AliAnalysisTaskSESignificance.cxx:399
 AliAnalysisTaskSESignificance.cxx:400
 AliAnalysisTaskSESignificance.cxx:401
 AliAnalysisTaskSESignificance.cxx:402
 AliAnalysisTaskSESignificance.cxx:403
 AliAnalysisTaskSESignificance.cxx:404
 AliAnalysisTaskSESignificance.cxx:405
 AliAnalysisTaskSESignificance.cxx:406
 AliAnalysisTaskSESignificance.cxx:407
 AliAnalysisTaskSESignificance.cxx:408
 AliAnalysisTaskSESignificance.cxx:409
 AliAnalysisTaskSESignificance.cxx:410
 AliAnalysisTaskSESignificance.cxx:411
 AliAnalysisTaskSESignificance.cxx:412
 AliAnalysisTaskSESignificance.cxx:413
 AliAnalysisTaskSESignificance.cxx:414
 AliAnalysisTaskSESignificance.cxx:415
 AliAnalysisTaskSESignificance.cxx:416
 AliAnalysisTaskSESignificance.cxx:417
 AliAnalysisTaskSESignificance.cxx:418
 AliAnalysisTaskSESignificance.cxx:419
 AliAnalysisTaskSESignificance.cxx:420
 AliAnalysisTaskSESignificance.cxx:421
 AliAnalysisTaskSESignificance.cxx:422
 AliAnalysisTaskSESignificance.cxx:423
 AliAnalysisTaskSESignificance.cxx:424
 AliAnalysisTaskSESignificance.cxx:425
 AliAnalysisTaskSESignificance.cxx:426
 AliAnalysisTaskSESignificance.cxx:427
 AliAnalysisTaskSESignificance.cxx:428
 AliAnalysisTaskSESignificance.cxx:429
 AliAnalysisTaskSESignificance.cxx:430
 AliAnalysisTaskSESignificance.cxx:431
 AliAnalysisTaskSESignificance.cxx:432
 AliAnalysisTaskSESignificance.cxx:433
 AliAnalysisTaskSESignificance.cxx:434
 AliAnalysisTaskSESignificance.cxx:435
 AliAnalysisTaskSESignificance.cxx:436
 AliAnalysisTaskSESignificance.cxx:437
 AliAnalysisTaskSESignificance.cxx:438
 AliAnalysisTaskSESignificance.cxx:439
 AliAnalysisTaskSESignificance.cxx:440
 AliAnalysisTaskSESignificance.cxx:441
 AliAnalysisTaskSESignificance.cxx:442
 AliAnalysisTaskSESignificance.cxx:443
 AliAnalysisTaskSESignificance.cxx:444
 AliAnalysisTaskSESignificance.cxx:445
 AliAnalysisTaskSESignificance.cxx:446
 AliAnalysisTaskSESignificance.cxx:447
 AliAnalysisTaskSESignificance.cxx:448
 AliAnalysisTaskSESignificance.cxx:449
 AliAnalysisTaskSESignificance.cxx:450
 AliAnalysisTaskSESignificance.cxx:451
 AliAnalysisTaskSESignificance.cxx:452
 AliAnalysisTaskSESignificance.cxx:453
 AliAnalysisTaskSESignificance.cxx:454
 AliAnalysisTaskSESignificance.cxx:455
 AliAnalysisTaskSESignificance.cxx:456
 AliAnalysisTaskSESignificance.cxx:457
 AliAnalysisTaskSESignificance.cxx:458
 AliAnalysisTaskSESignificance.cxx:459
 AliAnalysisTaskSESignificance.cxx:460
 AliAnalysisTaskSESignificance.cxx:461
 AliAnalysisTaskSESignificance.cxx:462
 AliAnalysisTaskSESignificance.cxx:463
 AliAnalysisTaskSESignificance.cxx:464
 AliAnalysisTaskSESignificance.cxx:465
 AliAnalysisTaskSESignificance.cxx:466
 AliAnalysisTaskSESignificance.cxx:467
 AliAnalysisTaskSESignificance.cxx:468
 AliAnalysisTaskSESignificance.cxx:469
 AliAnalysisTaskSESignificance.cxx:470
 AliAnalysisTaskSESignificance.cxx:471
 AliAnalysisTaskSESignificance.cxx:472
 AliAnalysisTaskSESignificance.cxx:473
 AliAnalysisTaskSESignificance.cxx:474
 AliAnalysisTaskSESignificance.cxx:475
 AliAnalysisTaskSESignificance.cxx:476
 AliAnalysisTaskSESignificance.cxx:477
 AliAnalysisTaskSESignificance.cxx:478
 AliAnalysisTaskSESignificance.cxx:479
 AliAnalysisTaskSESignificance.cxx:480
 AliAnalysisTaskSESignificance.cxx:481
 AliAnalysisTaskSESignificance.cxx:482
 AliAnalysisTaskSESignificance.cxx:483
 AliAnalysisTaskSESignificance.cxx:484
 AliAnalysisTaskSESignificance.cxx:485
 AliAnalysisTaskSESignificance.cxx:486
 AliAnalysisTaskSESignificance.cxx:487
 AliAnalysisTaskSESignificance.cxx:488
 AliAnalysisTaskSESignificance.cxx:489
 AliAnalysisTaskSESignificance.cxx:490
 AliAnalysisTaskSESignificance.cxx:491
 AliAnalysisTaskSESignificance.cxx:492
 AliAnalysisTaskSESignificance.cxx:493
 AliAnalysisTaskSESignificance.cxx:494
 AliAnalysisTaskSESignificance.cxx:495
 AliAnalysisTaskSESignificance.cxx:496
 AliAnalysisTaskSESignificance.cxx:497
 AliAnalysisTaskSESignificance.cxx:498
 AliAnalysisTaskSESignificance.cxx:499
 AliAnalysisTaskSESignificance.cxx:500
 AliAnalysisTaskSESignificance.cxx:501
 AliAnalysisTaskSESignificance.cxx:502
 AliAnalysisTaskSESignificance.cxx:503
 AliAnalysisTaskSESignificance.cxx:504
 AliAnalysisTaskSESignificance.cxx:505
 AliAnalysisTaskSESignificance.cxx:506
 AliAnalysisTaskSESignificance.cxx:507
 AliAnalysisTaskSESignificance.cxx:508
 AliAnalysisTaskSESignificance.cxx:509
 AliAnalysisTaskSESignificance.cxx:510
 AliAnalysisTaskSESignificance.cxx:511
 AliAnalysisTaskSESignificance.cxx:512
 AliAnalysisTaskSESignificance.cxx:513
 AliAnalysisTaskSESignificance.cxx:514
 AliAnalysisTaskSESignificance.cxx:515
 AliAnalysisTaskSESignificance.cxx:516
 AliAnalysisTaskSESignificance.cxx:517
 AliAnalysisTaskSESignificance.cxx:518
 AliAnalysisTaskSESignificance.cxx:519
 AliAnalysisTaskSESignificance.cxx:520
 AliAnalysisTaskSESignificance.cxx:521
 AliAnalysisTaskSESignificance.cxx:522
 AliAnalysisTaskSESignificance.cxx:523
 AliAnalysisTaskSESignificance.cxx:524
 AliAnalysisTaskSESignificance.cxx:525
 AliAnalysisTaskSESignificance.cxx:526
 AliAnalysisTaskSESignificance.cxx:527
 AliAnalysisTaskSESignificance.cxx:528
 AliAnalysisTaskSESignificance.cxx:529
 AliAnalysisTaskSESignificance.cxx:530
 AliAnalysisTaskSESignificance.cxx:531
 AliAnalysisTaskSESignificance.cxx:532
 AliAnalysisTaskSESignificance.cxx:533
 AliAnalysisTaskSESignificance.cxx:534
 AliAnalysisTaskSESignificance.cxx:535
 AliAnalysisTaskSESignificance.cxx:536
 AliAnalysisTaskSESignificance.cxx:537
 AliAnalysisTaskSESignificance.cxx:538
 AliAnalysisTaskSESignificance.cxx:539
 AliAnalysisTaskSESignificance.cxx:540
 AliAnalysisTaskSESignificance.cxx:541
 AliAnalysisTaskSESignificance.cxx:542
 AliAnalysisTaskSESignificance.cxx:543
 AliAnalysisTaskSESignificance.cxx:544
 AliAnalysisTaskSESignificance.cxx:545
 AliAnalysisTaskSESignificance.cxx:546
 AliAnalysisTaskSESignificance.cxx:547
 AliAnalysisTaskSESignificance.cxx:548
 AliAnalysisTaskSESignificance.cxx:549
 AliAnalysisTaskSESignificance.cxx:550
 AliAnalysisTaskSESignificance.cxx:551
 AliAnalysisTaskSESignificance.cxx:552
 AliAnalysisTaskSESignificance.cxx:553
 AliAnalysisTaskSESignificance.cxx:554
 AliAnalysisTaskSESignificance.cxx:555
 AliAnalysisTaskSESignificance.cxx:556
 AliAnalysisTaskSESignificance.cxx:557
 AliAnalysisTaskSESignificance.cxx:558
 AliAnalysisTaskSESignificance.cxx:559
 AliAnalysisTaskSESignificance.cxx:560
 AliAnalysisTaskSESignificance.cxx:561
 AliAnalysisTaskSESignificance.cxx:562
 AliAnalysisTaskSESignificance.cxx:563
 AliAnalysisTaskSESignificance.cxx:564
 AliAnalysisTaskSESignificance.cxx:565
 AliAnalysisTaskSESignificance.cxx:566
 AliAnalysisTaskSESignificance.cxx:567
 AliAnalysisTaskSESignificance.cxx:568
 AliAnalysisTaskSESignificance.cxx:569
 AliAnalysisTaskSESignificance.cxx:570
 AliAnalysisTaskSESignificance.cxx:571
 AliAnalysisTaskSESignificance.cxx:572
 AliAnalysisTaskSESignificance.cxx:573
 AliAnalysisTaskSESignificance.cxx:574
 AliAnalysisTaskSESignificance.cxx:575
 AliAnalysisTaskSESignificance.cxx:576
 AliAnalysisTaskSESignificance.cxx:577
 AliAnalysisTaskSESignificance.cxx:578
 AliAnalysisTaskSESignificance.cxx:579
 AliAnalysisTaskSESignificance.cxx:580
 AliAnalysisTaskSESignificance.cxx:581
 AliAnalysisTaskSESignificance.cxx:582
 AliAnalysisTaskSESignificance.cxx:583
 AliAnalysisTaskSESignificance.cxx:584
 AliAnalysisTaskSESignificance.cxx:585
 AliAnalysisTaskSESignificance.cxx:586
 AliAnalysisTaskSESignificance.cxx:587
 AliAnalysisTaskSESignificance.cxx:588
 AliAnalysisTaskSESignificance.cxx:589
 AliAnalysisTaskSESignificance.cxx:590
 AliAnalysisTaskSESignificance.cxx:591
 AliAnalysisTaskSESignificance.cxx:592
 AliAnalysisTaskSESignificance.cxx:593
 AliAnalysisTaskSESignificance.cxx:594
 AliAnalysisTaskSESignificance.cxx:595
 AliAnalysisTaskSESignificance.cxx:596
 AliAnalysisTaskSESignificance.cxx:597
 AliAnalysisTaskSESignificance.cxx:598
 AliAnalysisTaskSESignificance.cxx:599
 AliAnalysisTaskSESignificance.cxx:600
 AliAnalysisTaskSESignificance.cxx:601
 AliAnalysisTaskSESignificance.cxx:602
 AliAnalysisTaskSESignificance.cxx:603
 AliAnalysisTaskSESignificance.cxx:604
 AliAnalysisTaskSESignificance.cxx:605
 AliAnalysisTaskSESignificance.cxx:606
 AliAnalysisTaskSESignificance.cxx:607
 AliAnalysisTaskSESignificance.cxx:608
 AliAnalysisTaskSESignificance.cxx:609
 AliAnalysisTaskSESignificance.cxx:610
 AliAnalysisTaskSESignificance.cxx:611
 AliAnalysisTaskSESignificance.cxx:612
 AliAnalysisTaskSESignificance.cxx:613
 AliAnalysisTaskSESignificance.cxx:614
 AliAnalysisTaskSESignificance.cxx:615
 AliAnalysisTaskSESignificance.cxx:616
 AliAnalysisTaskSESignificance.cxx:617
 AliAnalysisTaskSESignificance.cxx:618
 AliAnalysisTaskSESignificance.cxx:619
 AliAnalysisTaskSESignificance.cxx:620
 AliAnalysisTaskSESignificance.cxx:621
 AliAnalysisTaskSESignificance.cxx:622
 AliAnalysisTaskSESignificance.cxx:623
 AliAnalysisTaskSESignificance.cxx:624
 AliAnalysisTaskSESignificance.cxx:625
 AliAnalysisTaskSESignificance.cxx:626
 AliAnalysisTaskSESignificance.cxx:627
 AliAnalysisTaskSESignificance.cxx:628
 AliAnalysisTaskSESignificance.cxx:629
 AliAnalysisTaskSESignificance.cxx:630
 AliAnalysisTaskSESignificance.cxx:631
 AliAnalysisTaskSESignificance.cxx:632
 AliAnalysisTaskSESignificance.cxx:633
 AliAnalysisTaskSESignificance.cxx:634
 AliAnalysisTaskSESignificance.cxx:635
 AliAnalysisTaskSESignificance.cxx:636
 AliAnalysisTaskSESignificance.cxx:637
 AliAnalysisTaskSESignificance.cxx:638
 AliAnalysisTaskSESignificance.cxx:639
 AliAnalysisTaskSESignificance.cxx:640
 AliAnalysisTaskSESignificance.cxx:641
 AliAnalysisTaskSESignificance.cxx:642
 AliAnalysisTaskSESignificance.cxx:643
 AliAnalysisTaskSESignificance.cxx:644
 AliAnalysisTaskSESignificance.cxx:645
 AliAnalysisTaskSESignificance.cxx:646
 AliAnalysisTaskSESignificance.cxx:647
 AliAnalysisTaskSESignificance.cxx:648
 AliAnalysisTaskSESignificance.cxx:649
 AliAnalysisTaskSESignificance.cxx:650
 AliAnalysisTaskSESignificance.cxx:651
 AliAnalysisTaskSESignificance.cxx:652
 AliAnalysisTaskSESignificance.cxx:653
 AliAnalysisTaskSESignificance.cxx:654
 AliAnalysisTaskSESignificance.cxx:655
 AliAnalysisTaskSESignificance.cxx:656
 AliAnalysisTaskSESignificance.cxx:657
 AliAnalysisTaskSESignificance.cxx:658
 AliAnalysisTaskSESignificance.cxx:659
 AliAnalysisTaskSESignificance.cxx:660
 AliAnalysisTaskSESignificance.cxx:661
 AliAnalysisTaskSESignificance.cxx:662
 AliAnalysisTaskSESignificance.cxx:663
 AliAnalysisTaskSESignificance.cxx:664
 AliAnalysisTaskSESignificance.cxx:665
 AliAnalysisTaskSESignificance.cxx:666
 AliAnalysisTaskSESignificance.cxx:667
 AliAnalysisTaskSESignificance.cxx:668
 AliAnalysisTaskSESignificance.cxx:669
 AliAnalysisTaskSESignificance.cxx:670
 AliAnalysisTaskSESignificance.cxx:671
 AliAnalysisTaskSESignificance.cxx:672
 AliAnalysisTaskSESignificance.cxx:673
 AliAnalysisTaskSESignificance.cxx:674
 AliAnalysisTaskSESignificance.cxx:675
 AliAnalysisTaskSESignificance.cxx:676
 AliAnalysisTaskSESignificance.cxx:677
 AliAnalysisTaskSESignificance.cxx:678
 AliAnalysisTaskSESignificance.cxx:679
 AliAnalysisTaskSESignificance.cxx:680
 AliAnalysisTaskSESignificance.cxx:681
 AliAnalysisTaskSESignificance.cxx:682
 AliAnalysisTaskSESignificance.cxx:683
 AliAnalysisTaskSESignificance.cxx:684
 AliAnalysisTaskSESignificance.cxx:685
 AliAnalysisTaskSESignificance.cxx:686
 AliAnalysisTaskSESignificance.cxx:687
 AliAnalysisTaskSESignificance.cxx:688
 AliAnalysisTaskSESignificance.cxx:689
 AliAnalysisTaskSESignificance.cxx:690
 AliAnalysisTaskSESignificance.cxx:691
 AliAnalysisTaskSESignificance.cxx:692
 AliAnalysisTaskSESignificance.cxx:693
 AliAnalysisTaskSESignificance.cxx:694
 AliAnalysisTaskSESignificance.cxx:695
 AliAnalysisTaskSESignificance.cxx:696
 AliAnalysisTaskSESignificance.cxx:697
 AliAnalysisTaskSESignificance.cxx:698
 AliAnalysisTaskSESignificance.cxx:699
 AliAnalysisTaskSESignificance.cxx:700
 AliAnalysisTaskSESignificance.cxx:701
 AliAnalysisTaskSESignificance.cxx:702
 AliAnalysisTaskSESignificance.cxx:703
 AliAnalysisTaskSESignificance.cxx:704
 AliAnalysisTaskSESignificance.cxx:705
 AliAnalysisTaskSESignificance.cxx:706
 AliAnalysisTaskSESignificance.cxx:707
 AliAnalysisTaskSESignificance.cxx:708
 AliAnalysisTaskSESignificance.cxx:709
 AliAnalysisTaskSESignificance.cxx:710
 AliAnalysisTaskSESignificance.cxx:711
 AliAnalysisTaskSESignificance.cxx:712
 AliAnalysisTaskSESignificance.cxx:713
 AliAnalysisTaskSESignificance.cxx:714
 AliAnalysisTaskSESignificance.cxx:715
 AliAnalysisTaskSESignificance.cxx:716
 AliAnalysisTaskSESignificance.cxx:717
 AliAnalysisTaskSESignificance.cxx:718
 AliAnalysisTaskSESignificance.cxx:719
 AliAnalysisTaskSESignificance.cxx:720
 AliAnalysisTaskSESignificance.cxx:721
 AliAnalysisTaskSESignificance.cxx:722
 AliAnalysisTaskSESignificance.cxx:723
 AliAnalysisTaskSESignificance.cxx:724
 AliAnalysisTaskSESignificance.cxx:725
 AliAnalysisTaskSESignificance.cxx:726
 AliAnalysisTaskSESignificance.cxx:727
 AliAnalysisTaskSESignificance.cxx:728
 AliAnalysisTaskSESignificance.cxx:729
 AliAnalysisTaskSESignificance.cxx:730
 AliAnalysisTaskSESignificance.cxx:731
 AliAnalysisTaskSESignificance.cxx:732
 AliAnalysisTaskSESignificance.cxx:733
 AliAnalysisTaskSESignificance.cxx:734
 AliAnalysisTaskSESignificance.cxx:735
 AliAnalysisTaskSESignificance.cxx:736
 AliAnalysisTaskSESignificance.cxx:737
 AliAnalysisTaskSESignificance.cxx:738
 AliAnalysisTaskSESignificance.cxx:739
 AliAnalysisTaskSESignificance.cxx:740
 AliAnalysisTaskSESignificance.cxx:741
 AliAnalysisTaskSESignificance.cxx:742
 AliAnalysisTaskSESignificance.cxx:743
 AliAnalysisTaskSESignificance.cxx:744
 AliAnalysisTaskSESignificance.cxx:745
 AliAnalysisTaskSESignificance.cxx:746
 AliAnalysisTaskSESignificance.cxx:747
 AliAnalysisTaskSESignificance.cxx:748
 AliAnalysisTaskSESignificance.cxx:749
 AliAnalysisTaskSESignificance.cxx:750
 AliAnalysisTaskSESignificance.cxx:751
 AliAnalysisTaskSESignificance.cxx:752
 AliAnalysisTaskSESignificance.cxx:753
 AliAnalysisTaskSESignificance.cxx:754
 AliAnalysisTaskSESignificance.cxx:755
 AliAnalysisTaskSESignificance.cxx:756
 AliAnalysisTaskSESignificance.cxx:757
 AliAnalysisTaskSESignificance.cxx:758
 AliAnalysisTaskSESignificance.cxx:759
 AliAnalysisTaskSESignificance.cxx:760
 AliAnalysisTaskSESignificance.cxx:761
 AliAnalysisTaskSESignificance.cxx:762
 AliAnalysisTaskSESignificance.cxx:763
 AliAnalysisTaskSESignificance.cxx:764
 AliAnalysisTaskSESignificance.cxx:765
 AliAnalysisTaskSESignificance.cxx:766
 AliAnalysisTaskSESignificance.cxx:767
 AliAnalysisTaskSESignificance.cxx:768
 AliAnalysisTaskSESignificance.cxx:769
 AliAnalysisTaskSESignificance.cxx:770
 AliAnalysisTaskSESignificance.cxx:771
 AliAnalysisTaskSESignificance.cxx:772
 AliAnalysisTaskSESignificance.cxx:773
 AliAnalysisTaskSESignificance.cxx:774
 AliAnalysisTaskSESignificance.cxx:775
 AliAnalysisTaskSESignificance.cxx:776
 AliAnalysisTaskSESignificance.cxx:777
 AliAnalysisTaskSESignificance.cxx:778
 AliAnalysisTaskSESignificance.cxx:779
 AliAnalysisTaskSESignificance.cxx:780
 AliAnalysisTaskSESignificance.cxx:781
 AliAnalysisTaskSESignificance.cxx:782
 AliAnalysisTaskSESignificance.cxx:783
 AliAnalysisTaskSESignificance.cxx:784
 AliAnalysisTaskSESignificance.cxx:785
 AliAnalysisTaskSESignificance.cxx:786
 AliAnalysisTaskSESignificance.cxx:787
 AliAnalysisTaskSESignificance.cxx:788
 AliAnalysisTaskSESignificance.cxx:789
 AliAnalysisTaskSESignificance.cxx:790
 AliAnalysisTaskSESignificance.cxx:791
 AliAnalysisTaskSESignificance.cxx:792
 AliAnalysisTaskSESignificance.cxx:793
 AliAnalysisTaskSESignificance.cxx:794
 AliAnalysisTaskSESignificance.cxx:795
 AliAnalysisTaskSESignificance.cxx:796
 AliAnalysisTaskSESignificance.cxx:797
 AliAnalysisTaskSESignificance.cxx:798
 AliAnalysisTaskSESignificance.cxx:799
 AliAnalysisTaskSESignificance.cxx:800
 AliAnalysisTaskSESignificance.cxx:801
 AliAnalysisTaskSESignificance.cxx:802
 AliAnalysisTaskSESignificance.cxx:803
 AliAnalysisTaskSESignificance.cxx:804
 AliAnalysisTaskSESignificance.cxx:805
 AliAnalysisTaskSESignificance.cxx:806
 AliAnalysisTaskSESignificance.cxx:807
 AliAnalysisTaskSESignificance.cxx:808
 AliAnalysisTaskSESignificance.cxx:809
 AliAnalysisTaskSESignificance.cxx:810
 AliAnalysisTaskSESignificance.cxx:811
 AliAnalysisTaskSESignificance.cxx:812
 AliAnalysisTaskSESignificance.cxx:813
 AliAnalysisTaskSESignificance.cxx:814
 AliAnalysisTaskSESignificance.cxx:815
 AliAnalysisTaskSESignificance.cxx:816
 AliAnalysisTaskSESignificance.cxx:817
 AliAnalysisTaskSESignificance.cxx:818
 AliAnalysisTaskSESignificance.cxx:819
 AliAnalysisTaskSESignificance.cxx:820
 AliAnalysisTaskSESignificance.cxx:821
 AliAnalysisTaskSESignificance.cxx:822
 AliAnalysisTaskSESignificance.cxx:823
 AliAnalysisTaskSESignificance.cxx:824
 AliAnalysisTaskSESignificance.cxx:825
 AliAnalysisTaskSESignificance.cxx:826
 AliAnalysisTaskSESignificance.cxx:827
 AliAnalysisTaskSESignificance.cxx:828
 AliAnalysisTaskSESignificance.cxx:829
 AliAnalysisTaskSESignificance.cxx:830
 AliAnalysisTaskSESignificance.cxx:831
 AliAnalysisTaskSESignificance.cxx:832
 AliAnalysisTaskSESignificance.cxx:833
 AliAnalysisTaskSESignificance.cxx:834
 AliAnalysisTaskSESignificance.cxx:835
 AliAnalysisTaskSESignificance.cxx:836
 AliAnalysisTaskSESignificance.cxx:837
 AliAnalysisTaskSESignificance.cxx:838
 AliAnalysisTaskSESignificance.cxx:839
 AliAnalysisTaskSESignificance.cxx:840
 AliAnalysisTaskSESignificance.cxx:841
 AliAnalysisTaskSESignificance.cxx:842
 AliAnalysisTaskSESignificance.cxx:843
 AliAnalysisTaskSESignificance.cxx:844
 AliAnalysisTaskSESignificance.cxx:845
 AliAnalysisTaskSESignificance.cxx:846
 AliAnalysisTaskSESignificance.cxx:847
 AliAnalysisTaskSESignificance.cxx:848
 AliAnalysisTaskSESignificance.cxx:849
 AliAnalysisTaskSESignificance.cxx:850
 AliAnalysisTaskSESignificance.cxx:851
 AliAnalysisTaskSESignificance.cxx:852
 AliAnalysisTaskSESignificance.cxx:853
 AliAnalysisTaskSESignificance.cxx:854
 AliAnalysisTaskSESignificance.cxx:855
 AliAnalysisTaskSESignificance.cxx:856
 AliAnalysisTaskSESignificance.cxx:857
 AliAnalysisTaskSESignificance.cxx:858
 AliAnalysisTaskSESignificance.cxx:859
 AliAnalysisTaskSESignificance.cxx:860
 AliAnalysisTaskSESignificance.cxx:861
 AliAnalysisTaskSESignificance.cxx:862
 AliAnalysisTaskSESignificance.cxx:863
 AliAnalysisTaskSESignificance.cxx:864
 AliAnalysisTaskSESignificance.cxx:865
 AliAnalysisTaskSESignificance.cxx:866
 AliAnalysisTaskSESignificance.cxx:867
 AliAnalysisTaskSESignificance.cxx:868
 AliAnalysisTaskSESignificance.cxx:869
 AliAnalysisTaskSESignificance.cxx:870
 AliAnalysisTaskSESignificance.cxx:871
 AliAnalysisTaskSESignificance.cxx:872
 AliAnalysisTaskSESignificance.cxx:873
 AliAnalysisTaskSESignificance.cxx:874
 AliAnalysisTaskSESignificance.cxx:875
 AliAnalysisTaskSESignificance.cxx:876
 AliAnalysisTaskSESignificance.cxx:877
 AliAnalysisTaskSESignificance.cxx:878
 AliAnalysisTaskSESignificance.cxx:879
 AliAnalysisTaskSESignificance.cxx:880
 AliAnalysisTaskSESignificance.cxx:881
 AliAnalysisTaskSESignificance.cxx:882
 AliAnalysisTaskSESignificance.cxx:883
 AliAnalysisTaskSESignificance.cxx:884
 AliAnalysisTaskSESignificance.cxx:885
 AliAnalysisTaskSESignificance.cxx:886
 AliAnalysisTaskSESignificance.cxx:887
 AliAnalysisTaskSESignificance.cxx:888
 AliAnalysisTaskSESignificance.cxx:889
 AliAnalysisTaskSESignificance.cxx:890
 AliAnalysisTaskSESignificance.cxx:891
 AliAnalysisTaskSESignificance.cxx:892
 AliAnalysisTaskSESignificance.cxx:893
 AliAnalysisTaskSESignificance.cxx:894
 AliAnalysisTaskSESignificance.cxx:895
 AliAnalysisTaskSESignificance.cxx:896
 AliAnalysisTaskSESignificance.cxx:897
 AliAnalysisTaskSESignificance.cxx:898
 AliAnalysisTaskSESignificance.cxx:899
 AliAnalysisTaskSESignificance.cxx:900
 AliAnalysisTaskSESignificance.cxx:901
 AliAnalysisTaskSESignificance.cxx:902
 AliAnalysisTaskSESignificance.cxx:903
 AliAnalysisTaskSESignificance.cxx:904
 AliAnalysisTaskSESignificance.cxx:905
 AliAnalysisTaskSESignificance.cxx:906
 AliAnalysisTaskSESignificance.cxx:907
 AliAnalysisTaskSESignificance.cxx:908
 AliAnalysisTaskSESignificance.cxx:909
 AliAnalysisTaskSESignificance.cxx:910
 AliAnalysisTaskSESignificance.cxx:911
 AliAnalysisTaskSESignificance.cxx:912
 AliAnalysisTaskSESignificance.cxx:913
 AliAnalysisTaskSESignificance.cxx:914
 AliAnalysisTaskSESignificance.cxx:915
 AliAnalysisTaskSESignificance.cxx:916
 AliAnalysisTaskSESignificance.cxx:917
 AliAnalysisTaskSESignificance.cxx:918
 AliAnalysisTaskSESignificance.cxx:919
 AliAnalysisTaskSESignificance.cxx:920
 AliAnalysisTaskSESignificance.cxx:921
 AliAnalysisTaskSESignificance.cxx:922
 AliAnalysisTaskSESignificance.cxx:923
 AliAnalysisTaskSESignificance.cxx:924
 AliAnalysisTaskSESignificance.cxx:925
 AliAnalysisTaskSESignificance.cxx:926
 AliAnalysisTaskSESignificance.cxx:927
 AliAnalysisTaskSESignificance.cxx:928
 AliAnalysisTaskSESignificance.cxx:929
 AliAnalysisTaskSESignificance.cxx:930
 AliAnalysisTaskSESignificance.cxx:931
 AliAnalysisTaskSESignificance.cxx:932
 AliAnalysisTaskSESignificance.cxx:933
 AliAnalysisTaskSESignificance.cxx:934
 AliAnalysisTaskSESignificance.cxx:935
 AliAnalysisTaskSESignificance.cxx:936
 AliAnalysisTaskSESignificance.cxx:937
 AliAnalysisTaskSESignificance.cxx:938
 AliAnalysisTaskSESignificance.cxx:939
 AliAnalysisTaskSESignificance.cxx:940
 AliAnalysisTaskSESignificance.cxx:941
 AliAnalysisTaskSESignificance.cxx:942
 AliAnalysisTaskSESignificance.cxx:943
 AliAnalysisTaskSESignificance.cxx:944
 AliAnalysisTaskSESignificance.cxx:945
 AliAnalysisTaskSESignificance.cxx:946
 AliAnalysisTaskSESignificance.cxx:947
 AliAnalysisTaskSESignificance.cxx:948
 AliAnalysisTaskSESignificance.cxx:949
 AliAnalysisTaskSESignificance.cxx:950
 AliAnalysisTaskSESignificance.cxx:951
 AliAnalysisTaskSESignificance.cxx:952
 AliAnalysisTaskSESignificance.cxx:953
 AliAnalysisTaskSESignificance.cxx:954
 AliAnalysisTaskSESignificance.cxx:955
 AliAnalysisTaskSESignificance.cxx:956
 AliAnalysisTaskSESignificance.cxx:957
 AliAnalysisTaskSESignificance.cxx:958
 AliAnalysisTaskSESignificance.cxx:959
 AliAnalysisTaskSESignificance.cxx:960
 AliAnalysisTaskSESignificance.cxx:961
 AliAnalysisTaskSESignificance.cxx:962
 AliAnalysisTaskSESignificance.cxx:963
 AliAnalysisTaskSESignificance.cxx:964
 AliAnalysisTaskSESignificance.cxx:965
 AliAnalysisTaskSESignificance.cxx:966
 AliAnalysisTaskSESignificance.cxx:967
 AliAnalysisTaskSESignificance.cxx:968
 AliAnalysisTaskSESignificance.cxx:969
 AliAnalysisTaskSESignificance.cxx:970
 AliAnalysisTaskSESignificance.cxx:971
 AliAnalysisTaskSESignificance.cxx:972
 AliAnalysisTaskSESignificance.cxx:973
 AliAnalysisTaskSESignificance.cxx:974
 AliAnalysisTaskSESignificance.cxx:975
 AliAnalysisTaskSESignificance.cxx:976
 AliAnalysisTaskSESignificance.cxx:977
 AliAnalysisTaskSESignificance.cxx:978
 AliAnalysisTaskSESignificance.cxx:979
 AliAnalysisTaskSESignificance.cxx:980
 AliAnalysisTaskSESignificance.cxx:981
 AliAnalysisTaskSESignificance.cxx:982
 AliAnalysisTaskSESignificance.cxx:983
 AliAnalysisTaskSESignificance.cxx:984
 AliAnalysisTaskSESignificance.cxx:985
 AliAnalysisTaskSESignificance.cxx:986
 AliAnalysisTaskSESignificance.cxx:987
 AliAnalysisTaskSESignificance.cxx:988
 AliAnalysisTaskSESignificance.cxx:989
 AliAnalysisTaskSESignificance.cxx:990
 AliAnalysisTaskSESignificance.cxx:991
 AliAnalysisTaskSESignificance.cxx:992
 AliAnalysisTaskSESignificance.cxx:993
 AliAnalysisTaskSESignificance.cxx:994
 AliAnalysisTaskSESignificance.cxx:995
 AliAnalysisTaskSESignificance.cxx:996
 AliAnalysisTaskSESignificance.cxx:997
 AliAnalysisTaskSESignificance.cxx:998
 AliAnalysisTaskSESignificance.cxx:999
 AliAnalysisTaskSESignificance.cxx:1000
 AliAnalysisTaskSESignificance.cxx:1001
 AliAnalysisTaskSESignificance.cxx:1002
 AliAnalysisTaskSESignificance.cxx:1003
 AliAnalysisTaskSESignificance.cxx:1004
 AliAnalysisTaskSESignificance.cxx:1005
 AliAnalysisTaskSESignificance.cxx:1006
 AliAnalysisTaskSESignificance.cxx:1007
 AliAnalysisTaskSESignificance.cxx:1008
 AliAnalysisTaskSESignificance.cxx:1009
 AliAnalysisTaskSESignificance.cxx:1010
 AliAnalysisTaskSESignificance.cxx:1011
 AliAnalysisTaskSESignificance.cxx:1012
 AliAnalysisTaskSESignificance.cxx:1013
 AliAnalysisTaskSESignificance.cxx:1014
 AliAnalysisTaskSESignificance.cxx:1015
 AliAnalysisTaskSESignificance.cxx:1016
 AliAnalysisTaskSESignificance.cxx:1017
 AliAnalysisTaskSESignificance.cxx:1018
 AliAnalysisTaskSESignificance.cxx:1019
 AliAnalysisTaskSESignificance.cxx:1020
 AliAnalysisTaskSESignificance.cxx:1021
 AliAnalysisTaskSESignificance.cxx:1022
 AliAnalysisTaskSESignificance.cxx:1023
 AliAnalysisTaskSESignificance.cxx:1024
 AliAnalysisTaskSESignificance.cxx:1025
 AliAnalysisTaskSESignificance.cxx:1026
 AliAnalysisTaskSESignificance.cxx:1027
 AliAnalysisTaskSESignificance.cxx:1028
 AliAnalysisTaskSESignificance.cxx:1029
 AliAnalysisTaskSESignificance.cxx:1030
 AliAnalysisTaskSESignificance.cxx:1031
 AliAnalysisTaskSESignificance.cxx:1032
 AliAnalysisTaskSESignificance.cxx:1033