ROOT logo
void InitHistograms(AliDielectron *die, Int_t cutDefinition);
void InitCF(AliDielectron* die, Int_t cutDefinition);
void EnableMC();
void SetSignals(AliDielectron *die);

TString names=("noPairing;TPCTOFCentnoRej;TPCTOFSemiCentnoRej;TPCTOFPerinoRej;TPCTOFCent;TPCTOFSemiCent;TPCTOFPeri;TPCTOFCentnoRejTight;TPCTOFCentTight");
TObjArray *arrNames=names.Tokenize(";");
const Int_t nDie=arrNames->GetEntries();

Bool_t MCenabled=kFALSE;


AliDielectron* ConfigLMEEPbPb2011MC(Int_t cutDefinition, Bool_t withMC=kTRUE, Bool_t CFenable=kTRUE)
{

  Int_t selectedPID=-1;
  Int_t selectedCentrality=-1;
  Bool_t rejectionStep=kFALSE;
  LMEECutLib*  LMCL = new LMEECutLib();

  //
  // Setup the instance of AliDielectron
  //

  MCenabled=withMC;
  // create the actual framework object

  TString name=Form("%02d",cutDefinition);
  if ((cutDefinition)<arrNames->GetEntriesFast()){
	name=arrNames->At((cutDefinition))->GetName();
  }

  //thisCut only relevant for MC:
  AliDielectron *die =
	new AliDielectron(Form
		("%s",name.Data()),
		Form("Track cuts: %s",name.Data()));


  if (MCenabled)
	  die->SetHasMC(kTRUE);


  //Setup AnalysisSelection:
  if (cutDefinition==0) {
	//not yet implemented
  }
  else if (cutDefinition==1) {
	selectedPID = LMEECutLib::kPbPb2011TPCandTOFwide;
	selectedCentrality = LMEECutLib::kPbPb2011Central;
	rejectionStep = kFALSE;
  }
  else if (cutDefinition==2) {
	selectedPID = LMEECutLib::kPbPb2011TPCandTOFwide;
	selectedCentrality = LMEECutLib::kPbPb2011SemiCentral;
	rejectionStep = kFALSE;
  }
  else if (cutDefinition==3) {
	selectedPID = LMEECutLib::kPbPb2011TPCandTOFwide;
	selectedCentrality = LMEECutLib::kPbPb2011Peripheral;
	rejectionStep = kFALSE;
  }
  else if (cutDefinition==4) {
	selectedPID = LMEECutLib::kPbPb2011TPCandTOFwide;
	selectedCentrality = LMEECutLib::kPbPb2011Central;
	rejectionStep = kTRUE;
  }
  else if (cutDefinition==5) {
	selectedPID = LMEECutLib::kPbPb2011TPCandTOFwide;
	selectedCentrality = LMEECutLib::kPbPb2011SemiCentral;
	rejectionStep = kTRUE;
  }
  else if (cutDefinition==6) {
	selectedPID = LMEECutLib::kPbPb2011TPCandTOFwide;
	selectedCentrality = LMEECutLib::kPbPb2011Peripheral;
	rejectionStep = kTRUE;
  }

//Legacy cuts, check consistence w/ 1 & 4, then remove
  else if (cutDefinition==7) {
	selectedPID = LMEECutLib::kPbPb2011TPCandTOF;
	selectedCentrality = LMEECutLib::kPbPb2011Central;
	rejectionStep = kFALSE;
  }
  else if (cutDefinition==8) {
	selectedPID = LMEECutLib::kPbPb2011TPCandTOF;
	selectedCentrality = LMEECutLib::kPbPb2011Central;
	rejectionStep = kTRUE;
  }

  else Semi{
	cout << " =============================== " << endl;
	cout << " ==== INVALID CONFIGURATION ==== " << endl;
	cout << " =============================== " << endl;
  }


  //Now configure task

  //Apply correct Pre-Filter Scheme, if necessary
  die->SetPreFilterAllSigns();

	if (rejectionStep) {
		die->GetTrackFilter().AddCuts(LMCL->GetPIDCutsPre(selectedPID) );
		die->GetPairPreFilterLegs().AddCuts(LMCL->GetPIDCutsAna(selectedPID) );
		die->GetPairPreFilter().AddCuts(LMCL->GetPairCuts(selectedPID) );
	}
	else { //No Prefilter, no Pairfilter
		die->GetTrackFilter().AddCuts( LMCL->GetPIDCutsAna(selectedPID) );
	}
	//Introduce NULL-check for pp?
	die->GetEventFilter().AddCuts(LMCL->GetCentralityCuts(selectedCentrality));




  AliDielectronTrackRotator *rot= 0x0;
  /*AliDielectronTrackRotator *rot= LMCL->GetTrackRotator(selectedPID);
  die->SetTrackRotator(rot);
   */
  AliDielectronMixingHandler *mix=LMCL->GetMixingHandler(selectedPID);
  die->SetMixingHandler(mix);

  // histogram setup
  // only if an AliDielectronHistos object is attached to the
  // dielectron framework histograms will be filled
  //
  InitHistograms(die,cutDefinition);

  // the last definition uses no cuts and only the QA histograms should be filled!
  if (CFenable) {
    SetSignals(die);
    InitCF(die,cutDefinition);
  }
  return die;
}

//______________________________________________________________________________________

void InitHistograms(AliDielectron *die, Int_t cutDefinition)
{
  //
  // Initialise the histograms
  //

  //Setup histogram Manager
  AliDielectronHistos *histos=
	new AliDielectronHistos(die->GetName(),
		die->GetTitle());
  //Initialise histogram classes
  histos->SetReservedWords("Track;Pair;Pre;RejTrack;RejPair");

  //Event class
//  if (cutDefinition==nDie-1) 
  histos->AddClass("Event");

  //Track classes
  //to fill also track info from 2nd event loop until 2
  for (Int_t i=0; i<2; ++i){
	histos->AddClass(Form("Track_%s",AliDielectron::TrackClassName(i)));
  }

  //Pair classes
  // to fill also mixed event histograms loop until 10
  for (Int_t i=0; i<3; ++i){
	histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(i)));
  }

  //ME and track rot
  if (die->GetMixingHandler()) {
	histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(3)));
	histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(4)));
	histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(6)));
	histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(7)));
  }
  if (die->GetTrackRotator()) {
	histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(10)));
  }

  //PreFilter Classes
  //to fill also track info from 2nd event loop until 2
  for (Int_t i=0; i<2; ++i){
	histos->AddClass(Form("Pre_%s",AliDielectron::TrackClassName(i)));
  }


  //Create Classes for Rejected Tracks/Pairs:
  for (Int_t i=0; i<2; ++i){
	histos->AddClass(Form("RejTrack_%s",AliDielectron::TrackClassName(i)));
  }
  for (Int_t i=0; i<3; ++i){
	histos->AddClass(Form("RejPair_%s",AliDielectron::PairClassName(i)));
  }

  /*
  //track rotation

  histos->AddClass(Form("Pair_%s",AliDielectron::PairClassName(AliDielectron::kEv1PMRot)));
  histos->AddClass(Form("Track_Legs_%s",AliDielectron::PairClassName(AliDielectron::kEv1PMRot)));
  */
	//add histograms to event class
	histos->UserHistogram("Event","nEvents","Number of processed events after cuts;Number events",
		1,0.,1.,AliDielectronVarManager::kNevents);
	histos->UserHistogram("Event","Centrality","Centrality;Centrality [%]","0,10,20,40,80,100,101",
		AliDielectronVarManager::kCentrality);


  //add histograms to Track classes, also fills RejTrack
  histos->UserHistogram("Track","Pt","Pt;Pt [GeV];#tracks",200,0,20.,AliDielectronVarManager::kPt);
  histos->UserHistogram("Track","NclsSFracTPC","NclsSFracTPC; NclsSFracTPC;#tracks",200,0,10.,AliDielectronVarManager::kNclsSFracTPC);
  histos->UserHistogram("Track","TPCclsDiff","TPCclsDiff; TPCclsDiff;#tracks",200,0,10.,AliDielectronVarManager::kTPCclsDiff);

  histos->UserHistogram("Track","ITS_dEdx_P","ITS_dEdx;P [GeV];ITS signal (arb units);#tracks",
	  400,0.0,20.,1000,0.,1000.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kITSsignal,kTRUE);

  histos->UserHistogram("Track","dEdx_P","dEdx;P [GeV];TPC signal (arb units);#tracks",
	  400,0.0,20.,200,0.,200.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCsignal,kTRUE);

  histos->UserHistogram("Track","TPCnSigmaEle_P","TPC number of sigmas Electrons;P [GeV];TPC number of sigmas Electrons;#tracks",
	  400,0.0,20.,100,-5.,5.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCnSigmaEle,kTRUE);
  histos->UserHistogram("Track","TPCnSigmaKao_P","TPC number of sigmas Kaons;P [GeV];TPC number of sigmas Kaons;#tracks",
	  400,0.0,20.,100,-5.,5.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCnSigmaKao,kTRUE);
  histos->UserHistogram("Track","TPCnSigmaPio_P","TPC number of sigmas Pions;P [GeV];TPC number of sigmas Pions;#tracks",
	  400,0.0,20.,100,-5.,5.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCnSigmaPio,kTRUE);

  histos->UserHistogram("Track","TRDpidPobEle_P","TRD PID probability Electrons;P [GeV];TRD prob Electrons;#tracks",
	  400,0.0,20.,100,0.,1.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTRDprobEle,kTRUE);
  histos->UserHistogram("Track","TRDpidPobPio_P","TRD PID probability Pions;P [GeV];TRD prob Pions;#tracks",
	  400,0.0,20.,100,0.,1.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTRDprobPio,kTRUE);

  histos->UserHistogram("Track","TOFnSigmaKao_P","TOF number of sigmas Kaons;P [GeV];TOF number of sigmas Kaons;#tracks",
	  400,0.0,20.,100,-5.,5.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTOFnSigmaKao,kTRUE);
  histos->UserHistogram("Track","TOFnSigmaPro_P","TOF number of sigmas Protons;P [GeV];TOF number of sigmas Protons;#tracks",
	  400,0.0,20.,100,-5.,5.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTOFnSigmaPro,kTRUE);

  histos->UserHistogram("Track","Eta_Phi","Eta Phi Map; Eta; Phi;#tracks",
	  200,-2,2,200,0,3.15,AliDielectronVarManager::kEta,AliDielectronVarManager::kPhi);

  histos->UserHistogram("Track","dXY","dXY;dXY [cm];#tracks",200,-2.,2.,AliDielectronVarManager::kImpactParXY);

  histos->UserHistogram("Track","TPCnCls","Number of Clusters TPC;TPC number clusteres;#tracks",159,0.,159.,AliDielectronVarManager::kNclsTPC);

  histos->UserHistogram("Track","TPCnCls_kNFclsTPCr","nTPC vs nTPCr;nTPC vs nTPCr;#tracks",159,0.,159.,159,0.,159.,AliDielectronVarManager::kNclsTPC,AliDielectronVarManager::kNFclsTPCr);

  histos->UserHistogram("Track","kNFclsTPCr_pT","nTPCr vs pt;nTPCr vs pt;#tracks",159,0.,159.,200,0.,20.,AliDielectronVarManager::kNFclsTPCr,AliDielectronVarManager::kPt);

  //add histograms to Pair classes, also fills RejPair
  histos->UserHistogram("Pair","InvMass","Inv.Mass;Inv. Mass [GeV];#pairs",
	  500,0.0,5.00,AliDielectronVarManager::kM);
  histos->UserHistogram("Pair","Rapidity","Rapidity;Rapidity;#pairs",
	  100,-2.,2.,AliDielectronVarManager::kY);
  histos->UserHistogram("Pair","OpeningAngle","Opening angle;angle",
	  100,0.,3.15,AliDielectronVarManager::kOpeningAngle);
  //2D Histo Plot
  histos->UserHistogram("Pair","InvMassPairPt","Inv.Mass vs PairPt;Inv. Mass [GeV], pT [GeV];#pairs",
	  500,0.0,5.0,500,0.,50.,AliDielectronVarManager::kM,AliDielectronVarManager::kPt);

  histos->UserHistogram("Pair","InvMassOpeningAngle","Opening Angle vs Inv.Mass;Inv. Mass [GeV];#pairs",
	  500,0.0,5.0,200,0.,6.3,AliDielectronVarManager::kM,AliDielectronVarManager::kOpeningAngle);

  //add histograms to Track classes
  histos->UserHistogram("Pre","Pt","Pt;Pt [GeV];#tracks",200,0,20.,AliDielectronVarManager::kPt);

  histos->UserHistogram("Pre","ITS_dEdx_P","ITS_dEdx;P [GeV];ITS signal (arb units);#tracks",
	  400,0.0,20.,1000,0.,1000.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kITSsignal,kTRUE);

  histos->UserHistogram("Pre","dEdx_P","dEdx;P [GeV];TPC signal (arb units);#tracks",
	  400,0.0,20.,200,0.,200.,AliDielectronVarManager::kPIn,AliDielectronVarManager::kTPCsignal,kTRUE);

  histos->UserHistogram("Pre","Eta_Phi","Eta Phi Map; Eta; Phi;#tracks",
	  200,-2,2,200,0,3.15,AliDielectronVarManager::kEta,AliDielectronVarManager::kPhi);

  histos->UserHistogram("Pre","dXY","dXY;dXY [cm];#tracks",200,-2.,2.,AliDielectronVarManager::kImpactParXY);

  histos->UserHistogram("Pre","ZVertex ","ZVertex ;ZVertex[cm];#tracks",20,-20,20,AliDielectronVarManager::kZv);
  histos->UserHistogram("Pre","XVertex ","XVertex ;XVertex[cm];#tracks",20,-20,20,AliDielectronVarManager::kXv);
  histos->UserHistogram("Pre","YVertex ","YVertex ;YVertex[cm];#tracks",20,-20,20,AliDielectronVarManager::kYv);

//  histos->UserHistogram("Pre","TPCnCls","Number of Clusters TPC;TPC number clusteres;#tracks",159,0.,159.,AliDielectronVarManager::kNclsTPC);


  die->SetHistogramManager(histos);
}


void InitCF(AliDielectron* die, Int_t cutDefinition)
{
  //
  // Setupd the CF Manager if needed
  //
  AliDielectronCF *cf=new AliDielectronCF(die->GetName(),die->GetTitle());

  //pair variables
  cf->AddVariable(AliDielectronVarManager::kP,200,0,20);
  cf->AddVariable(AliDielectronVarManager::kPt,200,0,20);
  cf->AddVariable(AliDielectronVarManager::kM,2001,-0.01,4.01); //2Mev Steps
  cf->AddVariable(AliDielectronVarManager::kY,100,-2.,2.);
  cf->AddVariable(AliDielectronVarManager::kPairType,10,0,10);

  cf->AddVariable(AliDielectronVarManager::kCentrality,"0.,10.0,30.0,40.0,60.,80.,100.");
  cf->AddVariable(AliDielectronVarManager::kOpeningAngle,320,0.,3.2);
  cf->AddVariable(AliDielectronVarManager::kPsiPair,320,0.,3.2);
  //leg variables
  cf->AddVariable(AliDielectronVarManager::kP,200,0.,20.,kTRUE);
  cf->AddVariable(AliDielectronVarManager::kPt,200,0.,20.,kTRUE);
  cf->AddVariable(AliDielectronVarManager::kITSsignal,1000,0.0.,1000.,kTRUE);
  cf->AddVariable(AliDielectronVarManager::kTPCsignal,500,0.0.,500.,kTRUE);
  cf->AddVariable(AliDielectronVarManager::kTPCnSigmaEle,100,-10.0.,10.,kTRUE);
  cf->AddVariable(AliDielectronVarManager::kITSnSigmaEle,100,-10.0.,10.,kTRUE);
  cf->AddVariable(AliDielectronVarManager::kY,100,-2.,2.,kTRUE);
  //only in this case write MC truth info
  if (MCenabled) {
    cf->SetStepForMCtruth();
    //cf->SetStepsForMCtruthOnly();
    cf->SetStepForAfterAllCuts();
    cf->AddVariable(AliDielectronVarManager::kHaveSameMother,5,-2,2);
    //cf->AddVariable(AliDielectronVarManager::kPdgCode,10000,-5000.5,4999.5,kTRUE);
    //cf->AddVariable(AliDielectronVarManager::kPdgCodeMother,10000,-5000.5,4999.5,kTRUE);
  }

  cf->SetStepsForSignal();
  die->SetCFManagerPair(cf);


  /*
 AliDielectronSignalMC* lowMassDiele=new
    AliDielectronSignalMC("lowMassDiele","low mass dielectron pairs");
  lowMassDiele->SetLegPDGs(11,-11);
  lowMassDiele->SetCheckBothChargesLegs(kTRUE,kTRUE);
  lowMassDiele->SetLegSources(AliDielectronSignalMC::kPrimary,
      AliDielectronSignalMC::kPrimary);
  lowMassDiele->SetFillPureMCStep(kTRUE);
  die->AddSignalMC(lowMassDiele);

  AliDielectronSignalMC* secondary=new
    AliDielectronSignalMC("secondary","secondary electrons pairs");
  secondary->SetLegPDGs(11,-11);
  secondary->SetCheckBothChargesLegs(kTRUE,kTRUE);
  secondary->SetLegSources(AliDielectronSignalMC::kSecondary,
      AliDielectronSignalMC::kSecondary);
  die->AddSignalMC(secondary);


  AliDielectronSignalMC* finalState=new
    AliDielectronSignalMC("finalState","finalState electrons pairs");
  finalState->SetLegPDGs(11,-11);
  finalState->SetCheckBothChargesLegs(kTRUE,kTRUE);
  finalState->SetLegSources(AliDielectronSignalMC::kFinalState,
      AliDielectronSignalMC::kFinalState);
  die->AddSignalMC(finalState);
  */

}

//--------------------------------------
void EnableMC() {
  MCenabled=kTRUE;
}

//--------------------------------------
void SetSignals(AliDielectron *die)
{


  AliDielectronSignalMC* promptJpsi = new AliDielectronSignalMC("promptJpsi","Prompt J/psi");   // prompt J/psi (not from beauty decays)
  promptJpsi->SetLegPDGs(11,-11);
  promptJpsi->SetMotherPDGs(443,443);
  promptJpsi->SetGrandMotherPDGs(503,503,kTRUE,kTRUE);   // not from beauty hadrons
  promptJpsi->SetMothersRelation(AliDielectronSignalMC::kSame);
  promptJpsi->SetFillPureMCStep(kTRUE);
  promptJpsi->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
  promptJpsi->SetCheckBothChargesLegs(kTRUE,kTRUE);
  promptJpsi->SetCheckBothChargesMothers(kTRUE,kTRUE);
  promptJpsi->SetCheckBothChargesGrandMothers(kTRUE,kTRUE);
  die->AddSignalMC(promptJpsi);

  // physical backgrounds (electrons from other sources)
  AliDielectronSignalMC* diEleContinuum = new AliDielectronSignalMC("diEleContinuum","di-electron continuum");     // all di-electrons originating in the collision
  diEleContinuum->SetLegPDGs(11,-11);
  diEleContinuum->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
  diEleContinuum->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(diEleContinuum);
  
  AliDielectronSignalMC* diEleCharm = new AliDielectronSignalMC("diEleCharm","di-electrons from charm");  // dielectrons originating from charm hadrons (not neccessary from same mother)
  diEleCharm->SetLegPDGs(11,-11);
  diEleCharm->SetMotherPDGs(403,403);
  diEleCharm->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
  diEleCharm->SetCheckBothChargesLegs(kTRUE,kTRUE);
  diEleCharm->SetCheckBothChargesMothers(kTRUE,kTRUE);
  die->AddSignalMC(diEleCharm);

  AliDielectronSignalMC* diEleOpenCharm = new AliDielectronSignalMC("diEleOpenCharm","di-electrons from open charm");  // dielectrons originating from open charm hadrons
  diEleOpenCharm->SetLegPDGs(11,-11);
  diEleOpenCharm->SetMotherPDGs(402,402);
  diEleOpenCharm->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
  diEleOpenCharm->SetCheckBothChargesLegs(kTRUE,kTRUE);
  diEleOpenCharm->SetCheckBothChargesMothers(kTRUE,kTRUE);
  die->AddSignalMC(diEleOpenCharm);


  // background from secondary electrons
  AliDielectronSignalMC* secondaryElectrons = new AliDielectronSignalMC("secondaryElectrons","Secondary electrons");   // all di-electrons from secondary electrons (interaction with detector)
  secondaryElectrons->SetLegPDGs(11,-11);
  secondaryElectrons->SetLegSources(AliDielectronSignalMC::kSecondary, AliDielectronSignalMC::kSecondary);
  secondaryElectrons->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(secondaryElectrons);

  /*
  AliDielectronSignalMC* primarySecElePairs = new AliDielectronSignalMC("primarySecElePairs","Primary+Secondary electron pairs");  // primary-secondary pairs
  primarySecElePairs->SetLegPDGs(11,-11);
  primarySecElePairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  primarySecElePairs->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kSecondary);
  die->AddSignalMC(primarySecElePairs);
  */

  AliDielectronSignalMC* conversionElePairs = new AliDielectronSignalMC("conversionElePairs","conversion electron pairs");      // pairs made from conversion (may be also from 2 different conversions)
  conversionElePairs->SetLegPDGs(11,-11);
  conversionElePairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  conversionElePairs->SetLegSources(AliDielectronSignalMC::kSecondary, AliDielectronSignalMC::kSecondary);
  conversionElePairs->SetMotherPDGs(22,22);
  die->AddSignalMC(conversionElePairs);

  // misidentification
  /*
  AliDielectronSignalMC* allEleMisIdPairs = new AliDielectronSignalMC("allEleMisIdPairs","all electron+misid. pairs");  // one true electron + a mis-id electron (all sources included)
  allEleMisIdPairs->SetLegPDGs(11,11,kFALSE,kTRUE);
  allEleMisIdPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(allEleMisIdPairs);

  AliDielectronSignalMC* allMisIdMisIdPairs = new AliDielectronSignalMC("allMisIdMisIdPairs","all misid.+misid. pairs");  // mis-id + mis-id
  allMisIdMisIdPairs->SetLegPDGs(11,11,kTRUE,kTRUE);
  allMisIdMisIdPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(allMisIdMisIdPairs);

  AliDielectronSignalMC* elePionPairs = new AliDielectronSignalMC("elePionPairs","electron+pion pairs");    // true electron + mis-id pion
  elePionPairs->SetLegPDGs(11,211);
  elePionPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(elePionPairs);

  AliDielectronSignalMC* eleKaonPairs = new AliDielectronSignalMC("eleKaonPairs","electron+kaon pairs");   // true electron + mis-id kaon
  eleKaonPairs->SetLegPDGs(11,321);
  eleKaonPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(eleKaonPairs);

  AliDielectronSignalMC* eleProtonPairs = new AliDielectronSignalMC("eleProtonPairs","Electron+proton pairs");  // true electron + mis-id proton
  eleProtonPairs->SetLegPDGs(11,2212);
  eleProtonPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(eleProtonPairs);

  AliDielectronSignalMC* piPiPairs = new AliDielectronSignalMC("piPiPairs","pion+pion pairs");    // mis-id pion + mis-id pion
  piPiPairs->SetLegPDGs(211,211);
  piPiPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(piPiPairs);

  AliDielectronSignalMC* piKaonPairs = new AliDielectronSignalMC("piKaonPairs","pion+kaon pairs");  // mis-id pion + mis-id kaon
  piKaonPairs->SetLegPDGs(211,321);
  piKaonPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(piKaonPairs);

  AliDielectronSignalMC* piProtonPairs = new AliDielectronSignalMC("piProtonPairs","pion+proton pairs");  // mis-id pion + mis-id proton
  piProtonPairs->SetLegPDGs(211,2212);
  piProtonPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(piProtonPairs);

  AliDielectronSignalMC* kaonKaonPairs = new AliDielectronSignalMC("kaonKaonPairs","kaon+kaon pairs");  // mis-id kaon + mis-id kaon
  kaonKaonPairs->SetLegPDGs(321,321);
  kaonKaonPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(kaonKaonPairs);

  AliDielectronSignalMC* kaonProtonPairs = new AliDielectronSignalMC("kaonProtonPairs","kaon+proton pairs");   // mis-id kaon + mis-id proton
  kaonProtonPairs->SetLegPDGs(321,2212);
  kaonProtonPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(kaonProtonPairs);

  AliDielectronSignalMC* protonProtonPairs = new AliDielectronSignalMC("protonProtonPairs","proton+proton pairs");  // mis-id proton + mis-id proton
  protonProtonPairs->SetLegPDGs(2212,2212);
  protonProtonPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(protonProtonPairs);

  AliDielectronSignalMC* muonAllPairs = new AliDielectronSignalMC("muonAllPairs","muon+everything pairs");        // mis-id muon + something else (electron, pion, kaon, proton)
  muonAllPairs->SetLegPDGs(13,13,kFALSE,kTRUE);
  muonAllPairs->SetCheckBothChargesLegs(kTRUE,kTRUE);
  die->AddSignalMC(muonAllPairs);
  */


  AliDielectronSignalMC* pi0Sig = new AliDielectronSignalMC("pi0", "pi0Signal"); ///pi0 dalitz pairs 
  pi0Sig->SetLegPDGs(11,-11);
  pi0Sig->SetMotherPDGs(111,111);
  pi0Sig->SetMothersRelation(AliDielectronSignalMC::kSame);
  pi0Sig->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
  pi0Sig->SetMotherSources(AliDielectronSignalMC::kPrimary, AliDielectronSignalMC::kPrimary);
  pi0Sig->SetCheckBothChargesLegs(kFALSE,kFALSE);
  pi0Sig->SetCheckBothChargesMothers(kTRUE,kTRUE);
  pi0Sig->SetFillPureMCStep(kTRUE);
  die->AddSignalMC(pi0Sig);


  AliDielectronSignalMC* etaSig = new AliDielectronSignalMC("Eta", "etaSignal"); ///eta dalitz pairs 
  etaSig->SetLegPDGs(11,-11);
  etaSig->SetMotherPDGs(221,221);
  etaSig->SetMothersRelation(AliDielectronSignalMC::kSame);
  etaSig->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
  etaSig->SetMotherSources(AliDielectronSignalMC::kPrimary, AliDielectronSignalMC::kPrimary);
  etaSig->SetCheckBothChargesLegs(kFALSE,kFALSE);
  etaSig->SetCheckBothChargesMothers(kTRUE,kTRUE);
  etaSig->SetFillPureMCStep(kTRUE);
  die->AddSignalMC(etaSig);


  AliDielectronSignalMC* etaprimeSig = new AliDielectronSignalMC("Etaprime", "etaprimeSignal"); ///etaprime pairs 
  etaprimeSig->SetLegPDGs(11,-11);
  etaprimeSig->SetMotherPDGs(331,331);
  etaprimeSig->SetMothersRelation(AliDielectronSignalMC::kSame);
  etaprimeSig->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
  etaprimeSig->SetMotherSources(AliDielectronSignalMC::kPrimary, AliDielectronSignalMC::kPrimary);
  etaprimeSig->SetCheckBothChargesLegs(kFALSE,kFALSE);
  etaprimeSig->SetCheckBothChargesMothers(kTRUE,kTRUE);
  etaprimeSig->SetFillPureMCStep(kTRUE);
  die->AddSignalMC(etaprimeSig);


  AliDielectronSignalMC* rhoSig = new AliDielectronSignalMC("Rho", "rhoSignal"); ///rho pairs 
  rhoSig->SetLegPDGs(11,-11);
  rhoSig->SetMotherPDGs(113,113);
  rhoSig->SetMothersRelation(AliDielectronSignalMC::kSame);
  rhoSig->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
  rhoSig->SetMotherSources(AliDielectronSignalMC::kPrimary, AliDielectronSignalMC::kPrimary);
  rhoSig->SetCheckBothChargesLegs(kFALSE,kFALSE);
  rhoSig->SetCheckBothChargesMothers(kTRUE,kTRUE);
  rhoSig->SetFillPureMCStep(kTRUE);
  die->AddSignalMC(rhoSig);

  AliDielectronSignalMC* omegaSig = new AliDielectronSignalMC("Omega", "omegaSignal"); ///omega pairs 
  omegaSig->SetLegPDGs(11,-11);
  omegaSig->SetMotherPDGs(223,223);
  omegaSig->SetMothersRelation(AliDielectronSignalMC::kSame);
  omegaSig->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
  omegaSig->SetMotherSources(AliDielectronSignalMC::kPrimary, AliDielectronSignalMC::kPrimary);
  omegaSig->SetCheckBothChargesLegs(kFALSE,kFALSE);
  omegaSig->SetCheckBothChargesMothers(kTRUE,kTRUE);
  omegaSig->SetFillPureMCStep(kTRUE);
  die->AddSignalMC(omegaSig);
  
  AliDielectronSignalMC* phiSig = new AliDielectronSignalMC("Phi", "phiSignal"); ///phi pairs 
  phiSig->SetLegPDGs(11,-11);
  phiSig->SetMotherPDGs(333,333);
  phiSig->SetMothersRelation(AliDielectronSignalMC::kSame);
  phiSig->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState);
  phiSig->SetMotherSources(AliDielectronSignalMC::kPrimary, AliDielectronSignalMC::kPrimary);
  phiSig->SetCheckBothChargesLegs(kFALSE,kFALSE);
  phiSig->SetCheckBothChargesMothers(kTRUE,kTRUE);
  phiSig->SetFillPureMCStep(kTRUE);
  die->AddSignalMC(phiSig);

  /*
  AliDielectronSignalMC* convSig = new AliDielectronSignalMC("conv", "convSignal");
  convSig->SetLegPDGs(11,-11);
  convSig->SetMothersRelation(AliDielectronSignalMC::kSame);
  convSig->SetLegSources(AliDielectronSignalMC::kFinalState, AliDielectronSignalMC::kFinalState); //in this case, ee needs to be true=IsPhysicalPrimary(label)
  convSig->SetCheckBothChargesLegs(kFALSE,kFALSE);
  die->AddSignalMC(convSig);
  */
}
 ConfigLMEEPbPb2011MC.C:1
 ConfigLMEEPbPb2011MC.C:2
 ConfigLMEEPbPb2011MC.C:3
 ConfigLMEEPbPb2011MC.C:4
 ConfigLMEEPbPb2011MC.C:5
 ConfigLMEEPbPb2011MC.C:6
 ConfigLMEEPbPb2011MC.C:7
 ConfigLMEEPbPb2011MC.C:8
 ConfigLMEEPbPb2011MC.C:9
 ConfigLMEEPbPb2011MC.C:10
 ConfigLMEEPbPb2011MC.C:11
 ConfigLMEEPbPb2011MC.C:12
 ConfigLMEEPbPb2011MC.C:13
 ConfigLMEEPbPb2011MC.C:14
 ConfigLMEEPbPb2011MC.C:15
 ConfigLMEEPbPb2011MC.C:16
 ConfigLMEEPbPb2011MC.C:17
 ConfigLMEEPbPb2011MC.C:18
 ConfigLMEEPbPb2011MC.C:19
 ConfigLMEEPbPb2011MC.C:20
 ConfigLMEEPbPb2011MC.C:21
 ConfigLMEEPbPb2011MC.C:22
 ConfigLMEEPbPb2011MC.C:23
 ConfigLMEEPbPb2011MC.C:24
 ConfigLMEEPbPb2011MC.C:25
 ConfigLMEEPbPb2011MC.C:26
 ConfigLMEEPbPb2011MC.C:27
 ConfigLMEEPbPb2011MC.C:28
 ConfigLMEEPbPb2011MC.C:29
 ConfigLMEEPbPb2011MC.C:30
 ConfigLMEEPbPb2011MC.C:31
 ConfigLMEEPbPb2011MC.C:32
 ConfigLMEEPbPb2011MC.C:33
 ConfigLMEEPbPb2011MC.C:34
 ConfigLMEEPbPb2011MC.C:35
 ConfigLMEEPbPb2011MC.C:36
 ConfigLMEEPbPb2011MC.C:37
 ConfigLMEEPbPb2011MC.C:38
 ConfigLMEEPbPb2011MC.C:39
 ConfigLMEEPbPb2011MC.C:40
 ConfigLMEEPbPb2011MC.C:41
 ConfigLMEEPbPb2011MC.C:42
 ConfigLMEEPbPb2011MC.C:43
 ConfigLMEEPbPb2011MC.C:44
 ConfigLMEEPbPb2011MC.C:45
 ConfigLMEEPbPb2011MC.C:46
 ConfigLMEEPbPb2011MC.C:47
 ConfigLMEEPbPb2011MC.C:48
 ConfigLMEEPbPb2011MC.C:49
 ConfigLMEEPbPb2011MC.C:50
 ConfigLMEEPbPb2011MC.C:51
 ConfigLMEEPbPb2011MC.C:52
 ConfigLMEEPbPb2011MC.C:53
 ConfigLMEEPbPb2011MC.C:54
 ConfigLMEEPbPb2011MC.C:55
 ConfigLMEEPbPb2011MC.C:56
 ConfigLMEEPbPb2011MC.C:57
 ConfigLMEEPbPb2011MC.C:58
 ConfigLMEEPbPb2011MC.C:59
 ConfigLMEEPbPb2011MC.C:60
 ConfigLMEEPbPb2011MC.C:61
 ConfigLMEEPbPb2011MC.C:62
 ConfigLMEEPbPb2011MC.C:63
 ConfigLMEEPbPb2011MC.C:64
 ConfigLMEEPbPb2011MC.C:65
 ConfigLMEEPbPb2011MC.C:66
 ConfigLMEEPbPb2011MC.C:67
 ConfigLMEEPbPb2011MC.C:68
 ConfigLMEEPbPb2011MC.C:69
 ConfigLMEEPbPb2011MC.C:70
 ConfigLMEEPbPb2011MC.C:71
 ConfigLMEEPbPb2011MC.C:72
 ConfigLMEEPbPb2011MC.C:73
 ConfigLMEEPbPb2011MC.C:74
 ConfigLMEEPbPb2011MC.C:75
 ConfigLMEEPbPb2011MC.C:76
 ConfigLMEEPbPb2011MC.C:77
 ConfigLMEEPbPb2011MC.C:78
 ConfigLMEEPbPb2011MC.C:79
 ConfigLMEEPbPb2011MC.C:80
 ConfigLMEEPbPb2011MC.C:81
 ConfigLMEEPbPb2011MC.C:82
 ConfigLMEEPbPb2011MC.C:83
 ConfigLMEEPbPb2011MC.C:84
 ConfigLMEEPbPb2011MC.C:85
 ConfigLMEEPbPb2011MC.C:86
 ConfigLMEEPbPb2011MC.C:87
 ConfigLMEEPbPb2011MC.C:88
 ConfigLMEEPbPb2011MC.C:89
 ConfigLMEEPbPb2011MC.C:90
 ConfigLMEEPbPb2011MC.C:91
 ConfigLMEEPbPb2011MC.C:92
 ConfigLMEEPbPb2011MC.C:93
 ConfigLMEEPbPb2011MC.C:94
 ConfigLMEEPbPb2011MC.C:95
 ConfigLMEEPbPb2011MC.C:96
 ConfigLMEEPbPb2011MC.C:97
 ConfigLMEEPbPb2011MC.C:98
 ConfigLMEEPbPb2011MC.C:99
 ConfigLMEEPbPb2011MC.C:100
 ConfigLMEEPbPb2011MC.C:101
 ConfigLMEEPbPb2011MC.C:102
 ConfigLMEEPbPb2011MC.C:103
 ConfigLMEEPbPb2011MC.C:104
 ConfigLMEEPbPb2011MC.C:105
 ConfigLMEEPbPb2011MC.C:106
 ConfigLMEEPbPb2011MC.C:107
 ConfigLMEEPbPb2011MC.C:108
 ConfigLMEEPbPb2011MC.C:109
 ConfigLMEEPbPb2011MC.C:110
 ConfigLMEEPbPb2011MC.C:111
 ConfigLMEEPbPb2011MC.C:112
 ConfigLMEEPbPb2011MC.C:113
 ConfigLMEEPbPb2011MC.C:114
 ConfigLMEEPbPb2011MC.C:115
 ConfigLMEEPbPb2011MC.C:116
 ConfigLMEEPbPb2011MC.C:117
 ConfigLMEEPbPb2011MC.C:118
 ConfigLMEEPbPb2011MC.C:119
 ConfigLMEEPbPb2011MC.C:120
 ConfigLMEEPbPb2011MC.C:121
 ConfigLMEEPbPb2011MC.C:122
 ConfigLMEEPbPb2011MC.C:123
 ConfigLMEEPbPb2011MC.C:124
 ConfigLMEEPbPb2011MC.C:125
 ConfigLMEEPbPb2011MC.C:126
 ConfigLMEEPbPb2011MC.C:127
 ConfigLMEEPbPb2011MC.C:128
 ConfigLMEEPbPb2011MC.C:129
 ConfigLMEEPbPb2011MC.C:130
 ConfigLMEEPbPb2011MC.C:131
 ConfigLMEEPbPb2011MC.C:132
 ConfigLMEEPbPb2011MC.C:133
 ConfigLMEEPbPb2011MC.C:134
 ConfigLMEEPbPb2011MC.C:135
 ConfigLMEEPbPb2011MC.C:136
 ConfigLMEEPbPb2011MC.C:137
 ConfigLMEEPbPb2011MC.C:138
 ConfigLMEEPbPb2011MC.C:139
 ConfigLMEEPbPb2011MC.C:140
 ConfigLMEEPbPb2011MC.C:141
 ConfigLMEEPbPb2011MC.C:142
 ConfigLMEEPbPb2011MC.C:143
 ConfigLMEEPbPb2011MC.C:144
 ConfigLMEEPbPb2011MC.C:145
 ConfigLMEEPbPb2011MC.C:146
 ConfigLMEEPbPb2011MC.C:147
 ConfigLMEEPbPb2011MC.C:148
 ConfigLMEEPbPb2011MC.C:149
 ConfigLMEEPbPb2011MC.C:150
 ConfigLMEEPbPb2011MC.C:151
 ConfigLMEEPbPb2011MC.C:152
 ConfigLMEEPbPb2011MC.C:153
 ConfigLMEEPbPb2011MC.C:154
 ConfigLMEEPbPb2011MC.C:155
 ConfigLMEEPbPb2011MC.C:156
 ConfigLMEEPbPb2011MC.C:157
 ConfigLMEEPbPb2011MC.C:158
 ConfigLMEEPbPb2011MC.C:159
 ConfigLMEEPbPb2011MC.C:160
 ConfigLMEEPbPb2011MC.C:161
 ConfigLMEEPbPb2011MC.C:162
 ConfigLMEEPbPb2011MC.C:163
 ConfigLMEEPbPb2011MC.C:164
 ConfigLMEEPbPb2011MC.C:165
 ConfigLMEEPbPb2011MC.C:166
 ConfigLMEEPbPb2011MC.C:167
 ConfigLMEEPbPb2011MC.C:168
 ConfigLMEEPbPb2011MC.C:169
 ConfigLMEEPbPb2011MC.C:170
 ConfigLMEEPbPb2011MC.C:171
 ConfigLMEEPbPb2011MC.C:172
 ConfigLMEEPbPb2011MC.C:173
 ConfigLMEEPbPb2011MC.C:174
 ConfigLMEEPbPb2011MC.C:175
 ConfigLMEEPbPb2011MC.C:176
 ConfigLMEEPbPb2011MC.C:177
 ConfigLMEEPbPb2011MC.C:178
 ConfigLMEEPbPb2011MC.C:179
 ConfigLMEEPbPb2011MC.C:180
 ConfigLMEEPbPb2011MC.C:181
 ConfigLMEEPbPb2011MC.C:182
 ConfigLMEEPbPb2011MC.C:183
 ConfigLMEEPbPb2011MC.C:184
 ConfigLMEEPbPb2011MC.C:185
 ConfigLMEEPbPb2011MC.C:186
 ConfigLMEEPbPb2011MC.C:187
 ConfigLMEEPbPb2011MC.C:188
 ConfigLMEEPbPb2011MC.C:189
 ConfigLMEEPbPb2011MC.C:190
 ConfigLMEEPbPb2011MC.C:191
 ConfigLMEEPbPb2011MC.C:192
 ConfigLMEEPbPb2011MC.C:193
 ConfigLMEEPbPb2011MC.C:194
 ConfigLMEEPbPb2011MC.C:195
 ConfigLMEEPbPb2011MC.C:196
 ConfigLMEEPbPb2011MC.C:197
 ConfigLMEEPbPb2011MC.C:198
 ConfigLMEEPbPb2011MC.C:199
 ConfigLMEEPbPb2011MC.C:200
 ConfigLMEEPbPb2011MC.C:201
 ConfigLMEEPbPb2011MC.C:202
 ConfigLMEEPbPb2011MC.C:203
 ConfigLMEEPbPb2011MC.C:204
 ConfigLMEEPbPb2011MC.C:205
 ConfigLMEEPbPb2011MC.C:206
 ConfigLMEEPbPb2011MC.C:207
 ConfigLMEEPbPb2011MC.C:208
 ConfigLMEEPbPb2011MC.C:209
 ConfigLMEEPbPb2011MC.C:210
 ConfigLMEEPbPb2011MC.C:211
 ConfigLMEEPbPb2011MC.C:212
 ConfigLMEEPbPb2011MC.C:213
 ConfigLMEEPbPb2011MC.C:214
 ConfigLMEEPbPb2011MC.C:215
 ConfigLMEEPbPb2011MC.C:216
 ConfigLMEEPbPb2011MC.C:217
 ConfigLMEEPbPb2011MC.C:218
 ConfigLMEEPbPb2011MC.C:219
 ConfigLMEEPbPb2011MC.C:220
 ConfigLMEEPbPb2011MC.C:221
 ConfigLMEEPbPb2011MC.C:222
 ConfigLMEEPbPb2011MC.C:223
 ConfigLMEEPbPb2011MC.C:224
 ConfigLMEEPbPb2011MC.C:225
 ConfigLMEEPbPb2011MC.C:226
 ConfigLMEEPbPb2011MC.C:227
 ConfigLMEEPbPb2011MC.C:228
 ConfigLMEEPbPb2011MC.C:229
 ConfigLMEEPbPb2011MC.C:230
 ConfigLMEEPbPb2011MC.C:231
 ConfigLMEEPbPb2011MC.C:232
 ConfigLMEEPbPb2011MC.C:233
 ConfigLMEEPbPb2011MC.C:234
 ConfigLMEEPbPb2011MC.C:235
 ConfigLMEEPbPb2011MC.C:236
 ConfigLMEEPbPb2011MC.C:237
 ConfigLMEEPbPb2011MC.C:238
 ConfigLMEEPbPb2011MC.C:239
 ConfigLMEEPbPb2011MC.C:240
 ConfigLMEEPbPb2011MC.C:241
 ConfigLMEEPbPb2011MC.C:242
 ConfigLMEEPbPb2011MC.C:243
 ConfigLMEEPbPb2011MC.C:244
 ConfigLMEEPbPb2011MC.C:245
 ConfigLMEEPbPb2011MC.C:246
 ConfigLMEEPbPb2011MC.C:247
 ConfigLMEEPbPb2011MC.C:248
 ConfigLMEEPbPb2011MC.C:249
 ConfigLMEEPbPb2011MC.C:250
 ConfigLMEEPbPb2011MC.C:251
 ConfigLMEEPbPb2011MC.C:252
 ConfigLMEEPbPb2011MC.C:253
 ConfigLMEEPbPb2011MC.C:254
 ConfigLMEEPbPb2011MC.C:255
 ConfigLMEEPbPb2011MC.C:256
 ConfigLMEEPbPb2011MC.C:257
 ConfigLMEEPbPb2011MC.C:258
 ConfigLMEEPbPb2011MC.C:259
 ConfigLMEEPbPb2011MC.C:260
 ConfigLMEEPbPb2011MC.C:261
 ConfigLMEEPbPb2011MC.C:262
 ConfigLMEEPbPb2011MC.C:263
 ConfigLMEEPbPb2011MC.C:264
 ConfigLMEEPbPb2011MC.C:265
 ConfigLMEEPbPb2011MC.C:266
 ConfigLMEEPbPb2011MC.C:267
 ConfigLMEEPbPb2011MC.C:268
 ConfigLMEEPbPb2011MC.C:269
 ConfigLMEEPbPb2011MC.C:270
 ConfigLMEEPbPb2011MC.C:271
 ConfigLMEEPbPb2011MC.C:272
 ConfigLMEEPbPb2011MC.C:273
 ConfigLMEEPbPb2011MC.C:274
 ConfigLMEEPbPb2011MC.C:275
 ConfigLMEEPbPb2011MC.C:276
 ConfigLMEEPbPb2011MC.C:277
 ConfigLMEEPbPb2011MC.C:278
 ConfigLMEEPbPb2011MC.C:279
 ConfigLMEEPbPb2011MC.C:280
 ConfigLMEEPbPb2011MC.C:281
 ConfigLMEEPbPb2011MC.C:282
 ConfigLMEEPbPb2011MC.C:283
 ConfigLMEEPbPb2011MC.C:284
 ConfigLMEEPbPb2011MC.C:285
 ConfigLMEEPbPb2011MC.C:286
 ConfigLMEEPbPb2011MC.C:287
 ConfigLMEEPbPb2011MC.C:288
 ConfigLMEEPbPb2011MC.C:289
 ConfigLMEEPbPb2011MC.C:290
 ConfigLMEEPbPb2011MC.C:291
 ConfigLMEEPbPb2011MC.C:292
 ConfigLMEEPbPb2011MC.C:293
 ConfigLMEEPbPb2011MC.C:294
 ConfigLMEEPbPb2011MC.C:295
 ConfigLMEEPbPb2011MC.C:296
 ConfigLMEEPbPb2011MC.C:297
 ConfigLMEEPbPb2011MC.C:298
 ConfigLMEEPbPb2011MC.C:299
 ConfigLMEEPbPb2011MC.C:300
 ConfigLMEEPbPb2011MC.C:301
 ConfigLMEEPbPb2011MC.C:302
 ConfigLMEEPbPb2011MC.C:303
 ConfigLMEEPbPb2011MC.C:304
 ConfigLMEEPbPb2011MC.C:305
 ConfigLMEEPbPb2011MC.C:306
 ConfigLMEEPbPb2011MC.C:307
 ConfigLMEEPbPb2011MC.C:308
 ConfigLMEEPbPb2011MC.C:309
 ConfigLMEEPbPb2011MC.C:310
 ConfigLMEEPbPb2011MC.C:311
 ConfigLMEEPbPb2011MC.C:312
 ConfigLMEEPbPb2011MC.C:313
 ConfigLMEEPbPb2011MC.C:314
 ConfigLMEEPbPb2011MC.C:315
 ConfigLMEEPbPb2011MC.C:316
 ConfigLMEEPbPb2011MC.C:317
 ConfigLMEEPbPb2011MC.C:318
 ConfigLMEEPbPb2011MC.C:319
 ConfigLMEEPbPb2011MC.C:320
 ConfigLMEEPbPb2011MC.C:321
 ConfigLMEEPbPb2011MC.C:322
 ConfigLMEEPbPb2011MC.C:323
 ConfigLMEEPbPb2011MC.C:324
 ConfigLMEEPbPb2011MC.C:325
 ConfigLMEEPbPb2011MC.C:326
 ConfigLMEEPbPb2011MC.C:327
 ConfigLMEEPbPb2011MC.C:328
 ConfigLMEEPbPb2011MC.C:329
 ConfigLMEEPbPb2011MC.C:330
 ConfigLMEEPbPb2011MC.C:331
 ConfigLMEEPbPb2011MC.C:332
 ConfigLMEEPbPb2011MC.C:333
 ConfigLMEEPbPb2011MC.C:334
 ConfigLMEEPbPb2011MC.C:335
 ConfigLMEEPbPb2011MC.C:336
 ConfigLMEEPbPb2011MC.C:337
 ConfigLMEEPbPb2011MC.C:338
 ConfigLMEEPbPb2011MC.C:339
 ConfigLMEEPbPb2011MC.C:340
 ConfigLMEEPbPb2011MC.C:341
 ConfigLMEEPbPb2011MC.C:342
 ConfigLMEEPbPb2011MC.C:343
 ConfigLMEEPbPb2011MC.C:344
 ConfigLMEEPbPb2011MC.C:345
 ConfigLMEEPbPb2011MC.C:346
 ConfigLMEEPbPb2011MC.C:347
 ConfigLMEEPbPb2011MC.C:348
 ConfigLMEEPbPb2011MC.C:349
 ConfigLMEEPbPb2011MC.C:350
 ConfigLMEEPbPb2011MC.C:351
 ConfigLMEEPbPb2011MC.C:352
 ConfigLMEEPbPb2011MC.C:353
 ConfigLMEEPbPb2011MC.C:354
 ConfigLMEEPbPb2011MC.C:355
 ConfigLMEEPbPb2011MC.C:356
 ConfigLMEEPbPb2011MC.C:357
 ConfigLMEEPbPb2011MC.C:358
 ConfigLMEEPbPb2011MC.C:359
 ConfigLMEEPbPb2011MC.C:360
 ConfigLMEEPbPb2011MC.C:361
 ConfigLMEEPbPb2011MC.C:362
 ConfigLMEEPbPb2011MC.C:363
 ConfigLMEEPbPb2011MC.C:364
 ConfigLMEEPbPb2011MC.C:365
 ConfigLMEEPbPb2011MC.C:366
 ConfigLMEEPbPb2011MC.C:367
 ConfigLMEEPbPb2011MC.C:368
 ConfigLMEEPbPb2011MC.C:369
 ConfigLMEEPbPb2011MC.C:370
 ConfigLMEEPbPb2011MC.C:371
 ConfigLMEEPbPb2011MC.C:372
 ConfigLMEEPbPb2011MC.C:373
 ConfigLMEEPbPb2011MC.C:374
 ConfigLMEEPbPb2011MC.C:375
 ConfigLMEEPbPb2011MC.C:376
 ConfigLMEEPbPb2011MC.C:377
 ConfigLMEEPbPb2011MC.C:378
 ConfigLMEEPbPb2011MC.C:379
 ConfigLMEEPbPb2011MC.C:380
 ConfigLMEEPbPb2011MC.C:381
 ConfigLMEEPbPb2011MC.C:382
 ConfigLMEEPbPb2011MC.C:383
 ConfigLMEEPbPb2011MC.C:384
 ConfigLMEEPbPb2011MC.C:385
 ConfigLMEEPbPb2011MC.C:386
 ConfigLMEEPbPb2011MC.C:387
 ConfigLMEEPbPb2011MC.C:388
 ConfigLMEEPbPb2011MC.C:389
 ConfigLMEEPbPb2011MC.C:390
 ConfigLMEEPbPb2011MC.C:391
 ConfigLMEEPbPb2011MC.C:392
 ConfigLMEEPbPb2011MC.C:393
 ConfigLMEEPbPb2011MC.C:394
 ConfigLMEEPbPb2011MC.C:395
 ConfigLMEEPbPb2011MC.C:396
 ConfigLMEEPbPb2011MC.C:397
 ConfigLMEEPbPb2011MC.C:398
 ConfigLMEEPbPb2011MC.C:399
 ConfigLMEEPbPb2011MC.C:400
 ConfigLMEEPbPb2011MC.C:401
 ConfigLMEEPbPb2011MC.C:402
 ConfigLMEEPbPb2011MC.C:403
 ConfigLMEEPbPb2011MC.C:404
 ConfigLMEEPbPb2011MC.C:405
 ConfigLMEEPbPb2011MC.C:406
 ConfigLMEEPbPb2011MC.C:407
 ConfigLMEEPbPb2011MC.C:408
 ConfigLMEEPbPb2011MC.C:409
 ConfigLMEEPbPb2011MC.C:410
 ConfigLMEEPbPb2011MC.C:411
 ConfigLMEEPbPb2011MC.C:412
 ConfigLMEEPbPb2011MC.C:413
 ConfigLMEEPbPb2011MC.C:414
 ConfigLMEEPbPb2011MC.C:415
 ConfigLMEEPbPb2011MC.C:416
 ConfigLMEEPbPb2011MC.C:417
 ConfigLMEEPbPb2011MC.C:418
 ConfigLMEEPbPb2011MC.C:419
 ConfigLMEEPbPb2011MC.C:420
 ConfigLMEEPbPb2011MC.C:421
 ConfigLMEEPbPb2011MC.C:422
 ConfigLMEEPbPb2011MC.C:423
 ConfigLMEEPbPb2011MC.C:424
 ConfigLMEEPbPb2011MC.C:425
 ConfigLMEEPbPb2011MC.C:426
 ConfigLMEEPbPb2011MC.C:427
 ConfigLMEEPbPb2011MC.C:428
 ConfigLMEEPbPb2011MC.C:429
 ConfigLMEEPbPb2011MC.C:430
 ConfigLMEEPbPb2011MC.C:431
 ConfigLMEEPbPb2011MC.C:432
 ConfigLMEEPbPb2011MC.C:433
 ConfigLMEEPbPb2011MC.C:434
 ConfigLMEEPbPb2011MC.C:435
 ConfigLMEEPbPb2011MC.C:436
 ConfigLMEEPbPb2011MC.C:437
 ConfigLMEEPbPb2011MC.C:438
 ConfigLMEEPbPb2011MC.C:439
 ConfigLMEEPbPb2011MC.C:440
 ConfigLMEEPbPb2011MC.C:441
 ConfigLMEEPbPb2011MC.C:442
 ConfigLMEEPbPb2011MC.C:443
 ConfigLMEEPbPb2011MC.C:444
 ConfigLMEEPbPb2011MC.C:445
 ConfigLMEEPbPb2011MC.C:446
 ConfigLMEEPbPb2011MC.C:447
 ConfigLMEEPbPb2011MC.C:448
 ConfigLMEEPbPb2011MC.C:449
 ConfigLMEEPbPb2011MC.C:450
 ConfigLMEEPbPb2011MC.C:451
 ConfigLMEEPbPb2011MC.C:452
 ConfigLMEEPbPb2011MC.C:453
 ConfigLMEEPbPb2011MC.C:454
 ConfigLMEEPbPb2011MC.C:455
 ConfigLMEEPbPb2011MC.C:456
 ConfigLMEEPbPb2011MC.C:457
 ConfigLMEEPbPb2011MC.C:458
 ConfigLMEEPbPb2011MC.C:459
 ConfigLMEEPbPb2011MC.C:460
 ConfigLMEEPbPb2011MC.C:461
 ConfigLMEEPbPb2011MC.C:462
 ConfigLMEEPbPb2011MC.C:463
 ConfigLMEEPbPb2011MC.C:464
 ConfigLMEEPbPb2011MC.C:465
 ConfigLMEEPbPb2011MC.C:466
 ConfigLMEEPbPb2011MC.C:467
 ConfigLMEEPbPb2011MC.C:468
 ConfigLMEEPbPb2011MC.C:469
 ConfigLMEEPbPb2011MC.C:470
 ConfigLMEEPbPb2011MC.C:471
 ConfigLMEEPbPb2011MC.C:472
 ConfigLMEEPbPb2011MC.C:473
 ConfigLMEEPbPb2011MC.C:474
 ConfigLMEEPbPb2011MC.C:475
 ConfigLMEEPbPb2011MC.C:476
 ConfigLMEEPbPb2011MC.C:477
 ConfigLMEEPbPb2011MC.C:478
 ConfigLMEEPbPb2011MC.C:479
 ConfigLMEEPbPb2011MC.C:480
 ConfigLMEEPbPb2011MC.C:481
 ConfigLMEEPbPb2011MC.C:482
 ConfigLMEEPbPb2011MC.C:483
 ConfigLMEEPbPb2011MC.C:484
 ConfigLMEEPbPb2011MC.C:485
 ConfigLMEEPbPb2011MC.C:486
 ConfigLMEEPbPb2011MC.C:487
 ConfigLMEEPbPb2011MC.C:488
 ConfigLMEEPbPb2011MC.C:489
 ConfigLMEEPbPb2011MC.C:490
 ConfigLMEEPbPb2011MC.C:491
 ConfigLMEEPbPb2011MC.C:492
 ConfigLMEEPbPb2011MC.C:493
 ConfigLMEEPbPb2011MC.C:494
 ConfigLMEEPbPb2011MC.C:495
 ConfigLMEEPbPb2011MC.C:496
 ConfigLMEEPbPb2011MC.C:497
 ConfigLMEEPbPb2011MC.C:498
 ConfigLMEEPbPb2011MC.C:499
 ConfigLMEEPbPb2011MC.C:500
 ConfigLMEEPbPb2011MC.C:501
 ConfigLMEEPbPb2011MC.C:502
 ConfigLMEEPbPb2011MC.C:503
 ConfigLMEEPbPb2011MC.C:504
 ConfigLMEEPbPb2011MC.C:505
 ConfigLMEEPbPb2011MC.C:506
 ConfigLMEEPbPb2011MC.C:507
 ConfigLMEEPbPb2011MC.C:508
 ConfigLMEEPbPb2011MC.C:509
 ConfigLMEEPbPb2011MC.C:510
 ConfigLMEEPbPb2011MC.C:511
 ConfigLMEEPbPb2011MC.C:512
 ConfigLMEEPbPb2011MC.C:513
 ConfigLMEEPbPb2011MC.C:514
 ConfigLMEEPbPb2011MC.C:515
 ConfigLMEEPbPb2011MC.C:516
 ConfigLMEEPbPb2011MC.C:517
 ConfigLMEEPbPb2011MC.C:518
 ConfigLMEEPbPb2011MC.C:519
 ConfigLMEEPbPb2011MC.C:520
 ConfigLMEEPbPb2011MC.C:521
 ConfigLMEEPbPb2011MC.C:522
 ConfigLMEEPbPb2011MC.C:523
 ConfigLMEEPbPb2011MC.C:524
 ConfigLMEEPbPb2011MC.C:525
 ConfigLMEEPbPb2011MC.C:526
 ConfigLMEEPbPb2011MC.C:527
 ConfigLMEEPbPb2011MC.C:528
 ConfigLMEEPbPb2011MC.C:529
 ConfigLMEEPbPb2011MC.C:530
 ConfigLMEEPbPb2011MC.C:531
 ConfigLMEEPbPb2011MC.C:532
 ConfigLMEEPbPb2011MC.C:533
 ConfigLMEEPbPb2011MC.C:534
 ConfigLMEEPbPb2011MC.C:535
 ConfigLMEEPbPb2011MC.C:536
 ConfigLMEEPbPb2011MC.C:537
 ConfigLMEEPbPb2011MC.C:538
 ConfigLMEEPbPb2011MC.C:539
 ConfigLMEEPbPb2011MC.C:540
 ConfigLMEEPbPb2011MC.C:541
 ConfigLMEEPbPb2011MC.C:542
 ConfigLMEEPbPb2011MC.C:543
 ConfigLMEEPbPb2011MC.C:544
 ConfigLMEEPbPb2011MC.C:545
 ConfigLMEEPbPb2011MC.C:546
 ConfigLMEEPbPb2011MC.C:547
 ConfigLMEEPbPb2011MC.C:548
 ConfigLMEEPbPb2011MC.C:549
 ConfigLMEEPbPb2011MC.C:550
 ConfigLMEEPbPb2011MC.C:551
 ConfigLMEEPbPb2011MC.C:552
 ConfigLMEEPbPb2011MC.C:553
 ConfigLMEEPbPb2011MC.C:554
 ConfigLMEEPbPb2011MC.C:555
 ConfigLMEEPbPb2011MC.C:556
 ConfigLMEEPbPb2011MC.C:557
 ConfigLMEEPbPb2011MC.C:558
 ConfigLMEEPbPb2011MC.C:559
 ConfigLMEEPbPb2011MC.C:560
 ConfigLMEEPbPb2011MC.C:561
 ConfigLMEEPbPb2011MC.C:562
 ConfigLMEEPbPb2011MC.C:563
 ConfigLMEEPbPb2011MC.C:564
 ConfigLMEEPbPb2011MC.C:565