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

/////////////////////////////////////////////////////////////
//
// Class for cuts on AOD reconstructed D+->Kpipi
//
// Author: R. Bala, bala@to.infn.it
//         G. Ortona, ortona@to.infn.it
/////////////////////////////////////////////////////////////

#include <TDatabasePDG.h>
#include <Riostream.h>

#include "AliAODPidHF.h"
#include "AliRDHFCutsDplustoKpipi.h"
#include "AliAODRecoDecayHF3Prong.h"
#include "AliAODTrack.h"
#include "AliESDtrack.h"


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

ClassImp(AliRDHFCutsDplustoKpipi)

//--------------------------------------------------------------------------
AliRDHFCutsDplustoKpipi::AliRDHFCutsDplustoKpipi(const char* name) : 
AliRDHFCuts(name),
  fUseStrongPid(0),
  fMaxPtStrongPid(0.),
  fMaxPStrongPidK(0.),
  fMaxPStrongPidpi(0.),
  fUseImpParProdCorrCut(kFALSE)
{
  //
  // Default Constructor
  //
  Int_t nvars=14;
  SetNVars(nvars);
  TString varNames[14]={"inv. mass [GeV]",
			"pTK [GeV/c]",
			"pTPi [GeV/c]",
			"d0K [cm]   lower limit!",
			"d0Pi [cm]  lower limit!",
			"dist12 (cm)",
			"sigmavert (cm)",
			"dist prim-sec (cm)",
			"pM=Max{pT1,pT2,pT3} (GeV/c)",
			"cosThetaPoint",
			"Sum d0^2 (cm^2)",
			"dca cut (cm)",
			"dec len XY (cm)",
			"cosThetaPointXY"};
  Bool_t isUpperCut[14]={kTRUE,
			 kFALSE,
			 kFALSE,
			 kFALSE,
			 kFALSE,
			 kFALSE,
			 kTRUE,
			 kFALSE,
			 kFALSE,
			 kFALSE,
			 kFALSE,
			 kTRUE,
			 kFALSE,
			 kFALSE};
  SetVarNames(nvars,varNames,isUpperCut);
  Bool_t forOpt[14]={kFALSE,
		     kFALSE,
		     kFALSE,
		     kFALSE,
		     kFALSE,
		     kFALSE,
		     kTRUE,
		     kTRUE,
		     kTRUE,
		     kTRUE,
		     kTRUE,
		     kFALSE,
		     kTRUE,
		     kTRUE};
  SetVarsForOpt(7,forOpt);
  Float_t limits[2]={0,999999999.};
  SetPtBins(2,limits);
  if(fPidHF)delete fPidHF;
  fPidHF=new AliAODPidHF();
  Double_t plim[2]={0.6,0.8};
  Double_t nsigma[5]={2.,1.,2.,3.,0.};
  
  fPidHF->SetPLimit(plim);
  fPidHF->SetAsym(kTRUE);
  fPidHF->SetSigma(nsigma);
  fPidHF->SetMatch(1);
  fPidHF->SetTPC(1);
  fPidHF->SetTOF(1);
  fPidHF->SetITS(0);
  fPidHF->SetTRD(0);
  fPidHF->SetCompat(kTRUE);

  
}








//--------------------------------------------------------------------------
AliRDHFCutsDplustoKpipi::AliRDHFCutsDplustoKpipi(const AliRDHFCutsDplustoKpipi &source) :
  AliRDHFCuts(source),
  fUseStrongPid(source.fUseStrongPid),
  fMaxPtStrongPid(source.fMaxPtStrongPid),
  fMaxPStrongPidK(source.fMaxPStrongPidK),
  fMaxPStrongPidpi(source.fMaxPStrongPidpi),
  fUseImpParProdCorrCut(source.fUseImpParProdCorrCut)
{
  //
  // Copy constructor
  //

}
//--------------------------------------------------------------------------
AliRDHFCutsDplustoKpipi &AliRDHFCutsDplustoKpipi::operator=(const AliRDHFCutsDplustoKpipi &source)
{
  //
  // assignment operator
  //
  if(&source == this) return *this;

  AliRDHFCuts::operator=(source);

  fUseStrongPid=source.fUseStrongPid;
  fMaxPtStrongPid=source.fMaxPtStrongPid;
  fMaxPStrongPidK=source.fMaxPStrongPidK;
  fMaxPStrongPidpi=source.fMaxPStrongPidpi;
  fUseImpParProdCorrCut=source.fUseImpParProdCorrCut;

  return *this;
}
//


//---------------------------------------------------------------------------
void AliRDHFCutsDplustoKpipi::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters,AliAODEvent *aod) {
  // 
  // Fills in vars the values of the variables 
  //


  if(nvars!=fnVarsForOpt) {
    printf("AliRDHFCutsDplustoKpipi::GetCutsVarsForOpt: wrong number of variables\n");
    return;
  }

  AliAODRecoDecayHF3Prong *dd = (AliAODRecoDecayHF3Prong*)d;
 
  //recalculate vertex w/o daughters
  Bool_t cleanvtx=kFALSE;
  AliAODVertex *origownvtx=0x0;
  if(fRemoveDaughtersFromPrimary) {
    if(dd->GetOwnPrimaryVtx()) origownvtx=new AliAODVertex(*dd->GetOwnPrimaryVtx());
    cleanvtx=kTRUE;
    if(!RecalcOwnPrimaryVtx(dd,aod)) {
      CleanOwnPrimaryVtx(dd,aod,origownvtx);
      cleanvtx=kFALSE;
    }
  }

  Int_t iter=-1;
  if(fVarsForOpt[0]){
    iter++;
    vars[iter]=dd->InvMassDplus();
  }
  if(fVarsForOpt[1]){
    iter++;
    for(Int_t iprong=0;iprong<3;iprong++){
      if(TMath::Abs(pdgdaughters[iprong])==321) {
	vars[iter]=dd->PtProng(iprong);
      }
    }
  }
  if(fVarsForOpt[2]){
    iter++;
    Float_t minPtDau=1000000.0;
    for(Int_t iprong=0;iprong<3;iprong++){
      if(TMath::Abs(pdgdaughters[iprong])==211) {
	if(dd->PtProng(iprong)<minPtDau){
	  minPtDau=dd->PtProng(iprong);
	}
      }
    }
    vars[iter]=minPtDau;
  }
  if(fVarsForOpt[3]){
    iter++;
    for(Int_t iprong=0;iprong<3;iprong++){
      if(TMath::Abs(pdgdaughters[iprong])==321) {
	vars[iter]=dd->Getd0Prong(iprong);
      }
    }
  }
  if(fVarsForOpt[4]){
    iter++;
    Float_t minImpParDau=1000000.0;
    for(Int_t iprong=0;iprong<3;iprong++){
      if(TMath::Abs(pdgdaughters[iprong])==211) {
	if(dd->Getd0Prong(iprong)<minImpParDau){
	  minImpParDau=dd->Getd0Prong(iprong);
	}
      }
    }
   vars[iter]=minImpParDau;
  }
  if(fVarsForOpt[5]){
    iter++;
    Float_t dist12 = dd->GetDist12toPrim();
    Float_t dist23 = dd->GetDist23toPrim();
    if(dist12<dist23)vars[iter]=dist12;
    else vars[iter]=dist23;
  }
  if(fVarsForOpt[6]){
    iter++;
    vars[iter]=dd->GetSigmaVert(aod);
  }
  if(fVarsForOpt[7]){
    iter++;
    vars[iter] = dd->DecayLength();
  }
  if(fVarsForOpt[8]){
    iter++;
    Float_t ptmax=0;
    for(Int_t i=0;i<3;i++){
      if(dd->PtProng(i)>ptmax)ptmax=dd->PtProng(i);
    }
    vars[iter]=ptmax;
  }
  if(fVarsForOpt[9]){
    iter++;
    vars[iter]=dd->CosPointingAngle();
  }
  if(fVarsForOpt[10]){
    iter++;
    vars[iter]=dd->Getd0Prong(0)*dd->Getd0Prong(0)+dd->Getd0Prong(1)*dd->Getd0Prong(1)+dd->Getd0Prong(2)*dd->Getd0Prong(2);
  }
  if(fVarsForOpt[11]){
    iter++;
    Float_t maxDCA=0;
    for(Int_t iprong=0;iprong<3;iprong++){
      if(dd->GetDCA(iprong)<maxDCA){
	maxDCA=dd->GetDCA(iprong);
      }
    }
    vars[iter]=maxDCA;
  }
  if(fVarsForOpt[12]){
    iter++;
    vars[iter]=dd->NormalizedDecayLengthXY()*dd->P()/dd->Pt();
  }
  if(fVarsForOpt[13]){
    iter++;
    vars[iter]=dd->CosPointingAngleXY();
  }

  if(cleanvtx)CleanOwnPrimaryVtx(dd,aod,origownvtx);

  return;
}
//---------------------------------------------------------------------------
Bool_t AliRDHFCutsDplustoKpipi::IsInFiducialAcceptance(Double_t pt, Double_t y) const
{
  //
  // Checking if Dplus is in fiducial acceptance region 
  //

  if(fMaxRapidityCand>-998.){
    if(TMath::Abs(y) > fMaxRapidityCand) return kFALSE;
    else return kTRUE;
  }

  if(pt > 5.) {
    // applying cut for pt > 5 GeV
    AliDebug(2,Form("pt of D+ = %f (> 5), cutting at |y| < 0.8",pt)); 
    if (TMath::Abs(y) > 0.8) return kFALSE;
    
  } else {
    // appliying smooth cut for pt < 5 GeV
    Double_t maxFiducialY = -0.2/15*pt*pt+1.9/15*pt+0.5; 
    Double_t minFiducialY = 0.2/15*pt*pt-1.9/15*pt-0.5;		
    AliDebug(2,Form("pt of D+ = %f (< 5), cutting  according to the fiducial zone [%f, %f]\n",pt,minFiducialY,maxFiducialY)); 
    if (y < minFiducialY || y > maxFiducialY) return kFALSE;    
  }

  return kTRUE;
}

//---------------------------------------------------------------------------
Int_t AliRDHFCutsDplustoKpipi::GetPIDBitMask(AliAODRecoDecayHF *rd)
{
  if(!fUsePID || !rd) return -1;
  //if(fUsePID)printf("i am inside the pid \n");
  Int_t mask=0;
  Int_t sign=rd->GetCharge(); 
  for(Int_t daught=0;daught<3;daught++){
    AliAODTrack *track=(AliAODTrack*)rd->GetDaughter(daught);

    if(sign==track->Charge()){//pions
      Int_t isPion=fPidHF->MakeRawPid(track,AliPID::kPion);
      if(isPion==0)mask+=1;
      else if(isPion>0)mask+=3;
      mask=mask<<2;
    }
    else{//kaons
      Int_t isKaon=fPidHF->MakeRawPid(track,AliPID::kKaon);
      if(isKaon==0)mask+=1;
      else if(isKaon>0)mask+=3;
      mask=mask<<2;
    }
  }
  mask=mask>>2;
  return mask;   
}
//---------------------------------------------------------------------------
Int_t AliRDHFCutsDplustoKpipi::IsSelectedPID(AliAODRecoDecayHF *rd)
{
  //
  // PID selection, returns 3 if accepted, 0 if not accepted
  // 
  if(!fUsePID || !rd) return 3;
  //if(fUsePID)printf("i am inside the pid \n");
  Int_t nkaons=0;
  Int_t nNotKaons=0;
  Int_t sign= rd->GetCharge(); 
  for(Int_t daught=0;daught<3;daught++){
    AliAODTrack *track=(AliAODTrack*)rd->GetDaughter(daught);
    Int_t isPion=fPidHF->MakeRawPid(track,AliPID::kPion);
    Int_t isKaon=fPidHF->MakeRawPid(track,AliPID::kKaon);
    Int_t isProton=fPidHF->MakeRawPid(track,AliPID::kProton);
    
    if(isProton>0 &&  isKaon<0  && isPion<0) return 0;
    if(isKaon>0 && isPion<0) nkaons++;
    if(isKaon<0) nNotKaons++;  
    if(sign==track->Charge()){//pions
      if(isPion<0)return 0;
      if(rd->Pt()<fMaxPtStrongPid && isPion<=0 && fUseStrongPid&2 && track->P()<fMaxPStrongPidpi)return 0;
    }
    else{//kaons
      if(isKaon<0)return 0;
	if(rd->Pt()<fMaxPtStrongPid && isKaon<=0 && fUseStrongPid&1&& track->P()<fMaxPStrongPidK)return 0;
    }
  }
  
  if(nkaons>1)return 0;
  if(nNotKaons==3)return 0;
  
  return 3;   
}


//---------------------------------------------------------------------------
Int_t AliRDHFCutsDplustoKpipi::IsSelected(TObject* obj,Int_t selectionLevel, AliAODEvent* aod) {
  //
  // Apply selection, returns 3 if accepted, 0 if not accepted
  //


  fIsSelectedCuts=0;
  fIsSelectedPID=0;

  if(!fCutsRD){
    cout<<"Cut matrix not inizialized. Exit..."<<endl;
    return 0;
  }
  //PrintAll();
  AliAODRecoDecayHF3Prong* d=(AliAODRecoDecayHF3Prong*)obj; 

  
  if(!d){
    cout<<"AliAODRecoDecayHF3Prong null"<<endl;
    return 0;
  }

  if(fKeepSignalMC) if(IsSignalMC(d,aod,411)) return 3;

  // PID selection
  Int_t returnvaluePID=3;
  Int_t returnvalueCuts=3;

  Double_t pt=d->Pt();
  if(pt<fMinPtCand) return 0;
  if(pt>fMaxPtCand) return 0;

  if(fUseTrackSelectionWithFilterBits && d->HasBadDaughters()) return 0;
  
  // selection on candidate
  if(selectionLevel==AliRDHFCuts::kAll || 
     selectionLevel==AliRDHFCuts::kCandidate) {
    
    //recalculate vertex w/o daughters
    AliAODVertex *origownvtx=0x0;
    if(fRemoveDaughtersFromPrimary && !fUseMCVertex) {
      if(d->GetOwnPrimaryVtx()) origownvtx=new AliAODVertex(*d->GetOwnPrimaryVtx());
      if(!RecalcOwnPrimaryVtx(d,aod)) {
	CleanOwnPrimaryVtx(d,aod,origownvtx);
	return 0;
      }
    }

    if(fUseMCVertex) {
      if(d->GetOwnPrimaryVtx()) origownvtx=new AliAODVertex(*d->GetOwnPrimaryVtx());
      if(!SetMCPrimaryVtx(d,aod)) {
	CleanOwnPrimaryVtx(d,aod,origownvtx);
	return 0;
      }
    }

    Int_t ptbin=PtBin(pt);
    if (ptbin==-1) {
      CleanOwnPrimaryVtx(d,aod,origownvtx);
      return 0;
    }
    
    Double_t mDplusPDG = TDatabasePDG::Instance()->GetParticle(411)->Mass();
    Double_t mDplus=d->InvMassDplus();
    if(TMath::Abs(mDplus-mDplusPDG)>fCutsRD[GetGlobalIndex(0,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}

    //2track cuts
    if(d->GetDist12toPrim()<fCutsRD[GetGlobalIndex(5,ptbin)]|| d->GetDist23toPrim()<fCutsRD[GetGlobalIndex(5,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}

    Double_t sum2=d->Getd0Prong(0)*d->Getd0Prong(0)+d->Getd0Prong(1)*d->Getd0Prong(1)+d->Getd0Prong(2)*d->Getd0Prong(2);
    if(sum2<fCutsRD[GetGlobalIndex(10,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}

    if(fUseImpParProdCorrCut){
      if(d->Getd0Prong(0)*d->Getd0Prong(1)<0. && d->Getd0Prong(2)*d->Getd0Prong(1)<0.) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}
    }


    //DCA
    for(Int_t i=0;i<3;i++) if(d->GetDCA(i)>fCutsRD[GetGlobalIndex(11,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}

    if(d->Pt2Prong(1) < fCutsRD[GetGlobalIndex(1,ptbin)]*fCutsRD[GetGlobalIndex(1,ptbin)] || TMath::Abs(d->Getd0Prong(1))<fCutsRD[GetGlobalIndex(3,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}//Kaon

    if(d->Pt2Prong(0) < fCutsRD[GetGlobalIndex(2,ptbin)]*fCutsRD[GetGlobalIndex(2,ptbin)] || TMath::Abs(d->Getd0Prong(0))<fCutsRD[GetGlobalIndex(4,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}//Pion1

    if(d->Pt2Prong(2) < fCutsRD[GetGlobalIndex(2,ptbin)]*fCutsRD[GetGlobalIndex(2,ptbin)] || TMath::Abs(d->Getd0Prong(2))<fCutsRD[GetGlobalIndex(4,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}//Pion2
    
    if(d->Pt2Prong(0)<fCutsRD[GetGlobalIndex(8,ptbin)]*fCutsRD[GetGlobalIndex(8,ptbin)] && d->Pt2Prong(1)<fCutsRD[GetGlobalIndex(8,ptbin)]*fCutsRD[GetGlobalIndex(8,ptbin)] && d->Pt2Prong(2)<fCutsRD[GetGlobalIndex(8,ptbin)]*fCutsRD[GetGlobalIndex(8,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}

    if(d->DecayLength2()<fCutsRD[GetGlobalIndex(7,ptbin)]*fCutsRD[GetGlobalIndex(7,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}

    if(d->CosPointingAngle()< fCutsRD[GetGlobalIndex(9,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}

    if(d->NormalizedDecayLengthXY()*d->P()/pt<fCutsRD[GetGlobalIndex(12,ptbin)]){CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}

    if(d->CosPointingAngleXY()<fCutsRD[GetGlobalIndex(13,ptbin)]){CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}

    //sec vert
    Double_t sigmavert=d->GetSigmaVert(aod);
    if(sigmavert>fCutsRD[GetGlobalIndex(6,ptbin)]) {CleanOwnPrimaryVtx(d,aod,origownvtx); return 0;}

    // unset recalculated primary vertex when not needed any more
    CleanOwnPrimaryVtx(d,aod,origownvtx);
    
    fIsSelectedCuts=returnvalueCuts;

    //if(!returnvalueCuts) return 0; // returnvalueCuts cannot be 0 here
  }
  
  if(selectionLevel==AliRDHFCuts::kAll || 
     selectionLevel==AliRDHFCuts::kCandidate ||     
     selectionLevel==AliRDHFCuts::kPID) {
    returnvaluePID = IsSelectedPID(d);
    fIsSelectedPID=returnvaluePID;
  }
  if(returnvaluePID==0)return 0;

  // selection on daughter tracks 
  if(selectionLevel==AliRDHFCuts::kAll || 
     selectionLevel==AliRDHFCuts::kTracks) {
    if(!AreDaughtersSelected(d)) return 0;
  }
  
 


  return 3;
}




//---------------------------------------------------------------------------


void AliRDHFCutsDplustoKpipi::SetStandardCutsPP2010() {
  //
  //STANDARD CUTS USED FOR 2010 pp analysis 
  //                                            
  
  SetName("DplustoKpipiCutsStandard");
  SetTitle("Standard Cuts for D+ analysis");
  
  // PILE UP REJECTION
  SetOptPileup(AliRDHFCuts::kRejectPileupEvent);

  // EVENT CUTS
  SetMinVtxContr(1);

  AliESDtrackCuts* esdTrackCuts=new AliESDtrackCuts();
  esdTrackCuts->SetRequireSigmaToVertex(kFALSE);
  //default
  esdTrackCuts->SetRequireTPCRefit(kTRUE);
  esdTrackCuts->SetRequireITSRefit(kTRUE);
  //esdTrackCuts->SetMinNClustersITS(4); // default is 5
  esdTrackCuts->SetMinNClustersTPC(70);
  esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD,
					 AliESDtrackCuts::kAny); 
  // default is kBoth, otherwise kAny
  esdTrackCuts->SetMinDCAToVertexXY(0.);
  esdTrackCuts->SetPtRange(0.3,1.e10);
  
  AddTrackCuts(esdTrackCuts);
  
 
  const Int_t nptbins =15;
  const Int_t nvars=14;
  Float_t ptbins[nptbins+1];
  ptbins[0]=0.;
  ptbins[1]=1;	
  ptbins[2]=2.;
  ptbins[3]=3.;
  ptbins[4]=4.;
  ptbins[5]=5.;
  ptbins[6]=6.;
  ptbins[7]=7.;
  ptbins[8]=8.;
  ptbins[9]=9.;
  ptbins[10]=10.;
  ptbins[11]=12.;
  ptbins[12]=14.;
  ptbins[13]=16.;
  ptbins[14]=24.;
  ptbins[15]=99999.;
      
    
  Float_t** anacutsval;
  anacutsval=new Float_t*[nvars];
  
  for(Int_t ic=0;ic<nvars;ic++){anacutsval[ic]=new Float_t[nptbins];}

  //Double_t cutsDplus[12]={0.2,0.4,0.4,0.,0.,0.01,0.06,0.02,0.,0.85,0.,10000000000.};
  for(Int_t ipt=0;ipt<nptbins;ipt++){
    anacutsval[0][ipt]=0.2;
    anacutsval[3][ipt]=0.;
    anacutsval[4][ipt]=0.;
    anacutsval[5][ipt]=0.01;
    anacutsval[11][ipt]=10000000000.;
    }

  anacutsval[1][0]=0.3;
  anacutsval[1][1]=0.4;
  anacutsval[1][2]=0.4; 
  anacutsval[2][0]=0.3;
  anacutsval[2][1]=0.3;
  anacutsval[2][2]=0.4;  
  for(Int_t ipt=3;ipt<nptbins;ipt++){
    anacutsval[1][ipt]=0.4;
    anacutsval[2][ipt]=0.4;
  }
  
  anacutsval[6][0]=0.022100;
  anacutsval[6][1]=0.022100;
  anacutsval[6][2]=0.034;
  anacutsval[6][3]=0.020667;
  anacutsval[6][4]=0.020667;
  anacutsval[6][5]=0.023333;
    
  
  anacutsval[7][0]=0.08;
  anacutsval[7][1]=0.08;
  anacutsval[7][2]=0.09;  
  anacutsval[7][3]=0.095;
  anacutsval[7][4]=0.095;
   
  anacutsval[8][0]=0.5;
  anacutsval[8][1]=0.5;
  anacutsval[8][2]=1.0;
  anacutsval[8][3]=0.5;
  anacutsval[8][4]=0.5;
     
    
  anacutsval[9][0]=0.97;
  anacutsval[9][1]=0.936;
  anacutsval[9][2]=0.95; 
  anacutsval[9][3]=0.95; 
  anacutsval[9][4]= 0.95;
  anacutsval[9][5]=0.92;
  anacutsval[9][6]=0.92;
  anacutsval[9][7]=0.92;
  anacutsval[9][8]=0.92;
  anacutsval[9][9]=0.90;
 for(Int_t ipt=10;ipt<nptbins;ipt++){
   anacutsval[9][ipt]=0.90; 
 }
  
  
  anacutsval[10][0]=0.0055;
  anacutsval[10][1]=0.0055;
  anacutsval[10][2]= 0.0028;
  anacutsval[10][3]=0.000883;
  anacutsval[10][4]=0.000883;

  
  for(Int_t ipt=5;ipt<nptbins;ipt++){
    anacutsval[6][ipt]=0.02333;
    anacutsval[7][ipt]=0.115;
    anacutsval[8][ipt]=0.5;
    anacutsval[10][ipt]=0.000883;
    }   

  anacutsval[12][0]=8;
  anacutsval[12][1]=8;
  
  anacutsval[13][0]=0.98;
  anacutsval[13][1]=0.98;
  for(Int_t ipt=2;ipt<nptbins;ipt++){
    anacutsval[12][ipt]=0.;
    anacutsval[13][ipt]=0.;
 }
  
  
  
  SetGlobalIndex(nvars,nptbins);
  SetPtBins(nptbins+1,ptbins);
  SetCuts(nvars,nptbins,anacutsval);
  SetUsePID(kTRUE);
  fPidHF->SetOldPid(kTRUE);
  SetRemoveDaughtersFromPrim(kTRUE);
  
  PrintAll();

  for(Int_t iic=0;iic<nvars;iic++){delete [] anacutsval[iic];}
  delete [] anacutsval;
  anacutsval=NULL;

  delete esdTrackCuts;
  esdTrackCuts=NULL;

  return;
}


void AliRDHFCutsDplustoKpipi::SetStandardCutsPbPb2010() {
  //
  //STANDARD CUTS USED FOR 2010 Pb Pb analysis.... not optimized yet 
  //                                              
  
  SetName("DplustoKpipiCutsStandard");
  SetTitle("Standard Cuts for D+ analysis in PbPb2010 run");
  
  // PILE UP REJECTION
  //SetOptPileup(AliRDHFCuts::kRejectPileupEvent);

  // EVENT CUTS
  SetMinVtxContr(1);

  
  AliESDtrackCuts* esdTrackCuts=new AliESDtrackCuts();
  esdTrackCuts->SetRequireSigmaToVertex(kFALSE);
  //default
  esdTrackCuts->SetRequireTPCRefit(kTRUE);
  esdTrackCuts->SetRequireITSRefit(kTRUE);
  //esdTrackCuts->SetMinNClustersITS(4); // default is 5
  esdTrackCuts->SetMinNClustersTPC(70);
  esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD,
					 AliESDtrackCuts::kAny); 
  // default is kBoth, otherwise kAny
  esdTrackCuts->SetMinDCAToVertexXY(0.);
  esdTrackCuts->SetPtRange(0.8,1.e10);
    
  AddTrackCuts(esdTrackCuts);
    
  const Int_t nptbins=10;
  Float_t* ptbins;
  ptbins=new Float_t[nptbins+1];

  ptbins[0]=0.;
  ptbins[1]=1.;
  ptbins[2]=2.;
  ptbins[3]=3.;
  ptbins[4]=4.;
  ptbins[5]=5.;
  ptbins[6]=6.;
  ptbins[7]=8.;
  ptbins[8]=12.;
  ptbins[9]=16.;
  ptbins[10]=24.;
  const Int_t nvars=14;
    
  Float_t** anacutsval;
  anacutsval=new Float_t*[nvars];
  
  for(Int_t ic=0;ic<nvars;ic++){anacutsval[ic]=new Float_t[nptbins];}
  //Double_t cutsDplus[12]={0.2,0.4,0.4,0.,0.,0.01,0.06,0.02,0.,0.85,0.,10000000000.};

  for(Int_t ipt=0;ipt<nptbins;ipt++){
    anacutsval[0][ipt]=0.2;
    anacutsval[1][ipt]=0.8;
    anacutsval[2][ipt]=0.8;
    anacutsval[3][ipt]=0.;
    anacutsval[4][ipt]=0.;
    anacutsval[5][ipt]=0.01;
    anacutsval[11][ipt]=10000000000.;
    anacutsval[12][ipt]=0.;
    anacutsval[13][ipt]=0.;
  }
  anacutsval[1][5]=0.9;

  anacutsval[6][0]=0.022100;
  anacutsval[6][1]=0.022100;
  anacutsval[6][2]=0.034;
  anacutsval[6][3]=0.020667;
  anacutsval[6][4]=0.020667;
  anacutsval[6][5]=0.023333;
  
  anacutsval[7][0]=0.08;
  anacutsval[7][1]=0.08;
  anacutsval[7][2]=0.17;  
  anacutsval[7][3]=0.14;
  anacutsval[7][4]=0.14;
  anacutsval[7][5]=0.19;
  
  anacutsval[8][0]=0.8;
  anacutsval[8][1]=0.8;
  anacutsval[8][2]=1.1;
  anacutsval[8][3]=0.5;
  anacutsval[8][4]=0.5;
  anacutsval[8][5]=0.5;
  
  anacutsval[9][0]=0.995;
  anacutsval[9][1]=0.995;
  anacutsval[9][2]=0.997; 
  anacutsval[9][3]=0.998; 
  anacutsval[9][4]=0.998;
  anacutsval[9][5]=0.995;
  
  anacutsval[10][0]=0.0055;
  anacutsval[10][1]=0.0055;
  anacutsval[10][2]= 0.0028;
  anacutsval[10][3]=0.000883;
  anacutsval[10][4]=0.000883;
  anacutsval[10][5]=0.000883;

  anacutsval[12][5]=12.;
  anacutsval[13][5]=0.998571;
  anacutsval[12][6]=10.;
  anacutsval[13][6]=0.997143;

  for(Int_t ipt=6;ipt<nptbins;ipt++){
    anacutsval[6][ipt]=0.02333;
    anacutsval[7][ipt]=0.19;
    anacutsval[8][ipt]=2.0;
    anacutsval[9][ipt]=0.997;
    anacutsval[10][ipt]=0.000883;
  }   
  anacutsval[7][6]=0.14;
  anacutsval[9][6]=0.995;

  SetPtBins(nptbins+1,ptbins);
  SetCuts(nvars,nptbins,anacutsval);
  SetUsePID(kTRUE);
  fPidHF->SetOldPid(kTRUE);
  SetMinCentrality(1E-10);
  SetMaxCentrality(20.);
  SetUseCentrality(AliRDHFCuts::kCentV0M);
  SetRemoveDaughtersFromPrim(kFALSE);
    
  PrintAll();

  for(Int_t iic=0;iic<nvars;iic++){delete [] anacutsval[iic];}
  delete [] anacutsval;
  anacutsval=NULL;

  delete [] ptbins;
  ptbins=NULL;

  delete esdTrackCuts;
  esdTrackCuts=NULL;

  return;
}


void AliRDHFCutsDplustoKpipi::SetStandardCutsPbPb2011() {

  // Default 2010 PbPb cut object
  SetStandardCutsPbPb2010();

  // Enable all 2011 PbPb run triggers
  //  
  SetTriggerClass("");
  ResetMaskAndEnableMBTrigger();
  EnableCentralTrigger();
  EnableSemiCentralTrigger();

  // new PID
  fPidHF->SetOldPid(kFALSE);

} 
//--------------------------------------------------------------------------

UInt_t AliRDHFCutsDplustoKpipi::GetPIDTrackTPCTOFBitMap(AliAODTrack *track) const{

  UInt_t bitmap=0;

  Double_t sigmaTPCPionHyp=-999.;
  Double_t sigmaTPCKaonHyp=-999.;
  Double_t sigmaTPCProtonHyp=-999.;
  Double_t sigmaTOFPionHyp=-999.;
  Double_t sigmaTOFKaonHyp=-999.;
  Double_t sigmaTOFProtonHyp=-999.;
  
  Int_t oksigmaTPCPionHyp=fPidHF->GetnSigmaTPC(track,2,sigmaTPCPionHyp);
  Int_t oksigmaTPCKaonHyp=fPidHF->GetnSigmaTPC(track,3,sigmaTPCKaonHyp);
  Int_t oksigmaTPCProtonHyp=fPidHF->GetnSigmaTPC(track,4,sigmaTPCProtonHyp);
  Int_t oksigmaTOFPionHyp=fPidHF->GetnSigmaTOF(track,2,sigmaTOFPionHyp);
  Int_t oksigmaTOFKaonHyp=fPidHF->GetnSigmaTOF(track,3,sigmaTOFKaonHyp);
  Int_t oksigmaTOFProtonHyp=fPidHF->GetnSigmaTOF(track,4,sigmaTOFProtonHyp);

  sigmaTPCPionHyp=TMath::Abs(sigmaTPCPionHyp);
  sigmaTPCKaonHyp=TMath::Abs(sigmaTPCKaonHyp);
  sigmaTPCProtonHyp=TMath::Abs(sigmaTPCProtonHyp);
  sigmaTOFPionHyp=TMath::Abs(sigmaTOFPionHyp);
  sigmaTOFKaonHyp=TMath::Abs(sigmaTOFKaonHyp);
  sigmaTOFProtonHyp=TMath::Abs(sigmaTOFProtonHyp);

  if (oksigmaTPCPionHyp && sigmaTPCPionHyp>0.){
    if (sigmaTPCPionHyp<1.) bitmap+=1<<kTPCPionLess1;
    else{
      if (sigmaTPCPionHyp<2.) bitmap+=1<<kTPCPionMore1Less2;
      else { 
        if (sigmaTPCPionHyp<3.) bitmap+=1<<kTPCPionMore2Less3; 
        else bitmap+=1<<kTPCPionMore3;
      }
    }
  }
  
  if (oksigmaTPCKaonHyp && sigmaTPCKaonHyp>0.){
    if (sigmaTPCKaonHyp<1.) bitmap+=1<<kTPCKaonLess1;
    else{
      if (sigmaTPCKaonHyp<2.) bitmap+=1<<kTPCKaonMore1Less2;
      else { 
        if (sigmaTPCKaonHyp<3.) bitmap+=1<<kTPCKaonMore2Less3; 
        else bitmap+=1<<kTPCKaonMore3;
      }
    }
  }
  
  if (oksigmaTPCProtonHyp && sigmaTPCProtonHyp>0.){
    if (sigmaTPCProtonHyp<1.) bitmap+=1<<kTPCProtonLess1;
    else{
      if (sigmaTPCProtonHyp<2.) bitmap+=1<<kTPCProtonMore1Less2;
      else { 
        if (sigmaTPCProtonHyp<3.) bitmap+=1<<kTPCProtonMore2Less3; 
        else bitmap+=1<<kTPCProtonMore3;
      }
    }
  }
  
  if (oksigmaTOFPionHyp && sigmaTOFPionHyp>0.){
    if (sigmaTOFPionHyp<1.) bitmap+=1<<kTOFPionLess1;
    else{
      if (sigmaTOFPionHyp<2.) bitmap+=1<<kTOFPionMore1Less2;
      else { 
        if (sigmaTOFPionHyp<3.) bitmap+=1<<kTOFPionMore2Less3; 
        else bitmap+=1<<kTOFPionMore3;
      }
    }
  }
  
  if (oksigmaTOFKaonHyp && sigmaTOFKaonHyp>0.){
    if (sigmaTOFKaonHyp<1.) bitmap+=1<<kTOFKaonLess1;
    else{
      if (sigmaTOFKaonHyp<2.) bitmap+=1<<kTOFKaonMore1Less2;
      else { 
        if (sigmaTOFKaonHyp<3.) bitmap+=1<<kTOFKaonMore2Less3; 
        else bitmap+=1<<kTOFKaonMore3;
      }
    }
  }
  
  if (oksigmaTOFProtonHyp && sigmaTOFProtonHyp>0.){
    if (sigmaTOFProtonHyp<1.) bitmap+=1<<kTOFProtonLess1;
    else{
      if (sigmaTOFProtonHyp<2.) bitmap+=1<<kTOFProtonMore1Less2;
      else { 
        if (sigmaTOFProtonHyp<3.) bitmap+=1<<kTOFProtonMore2Less3; 
        else bitmap+=1<<kTOFProtonMore3;
      }
    }
  }
  
  
  
  return bitmap;

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