ROOT logo
//
// This class contains the acceptance correction due to dead channels 
// 
//
#include "AliFMDCorrAcceptance.h"
#include <TBrowser.h>
#include <TH2D.h>
#include <AliLog.h>
#include <AliForwardUtil.h>
#include <TPad.h>
#include <TCanvas.h>
#include <TLatex.h>
#include <TMath.h>
#include <THStack.h>
#include <TROOT.h>
#include <iostream>

//____________________________________________________________________
AliFMDCorrAcceptance::AliFMDCorrAcceptance()
  : fRingArray(), 
    fCache(0),
    fVertexAxis(0,0,0),
    fHasOverflow(false)
{
  // 
  // Default constructor 
  //
  fRingArray.SetOwner(kTRUE);
  fRingArray.SetName("rings");
  fVertexAxis.SetName("vtxAxis");
  fVertexAxis.SetTitle("v_{z} [cm]");
  
}
//____________________________________________________________________
AliFMDCorrAcceptance::AliFMDCorrAcceptance(const 
					       AliFMDCorrAcceptance& o)
  : TObject(o), 
    fRingArray(o.fRingArray), 
    fCache(o.fCache),
    fVertexAxis(o.fVertexAxis.GetNbins(), o.fVertexAxis.GetXmin(), 
		o.fVertexAxis.GetXmax()),
    fHasOverflow(o.fHasOverflow)
{
  // 
  // Copy constructor 
  // 
  // Parameters:
  //    o Object to copy from 
  //
  fVertexAxis.SetName("vtxAxis");
  fVertexAxis.SetTitle("v_{z} [cm]");
}
//____________________________________________________________________
AliFMDCorrAcceptance::~AliFMDCorrAcceptance()
{
  //
  // Destructor 
  // 
  //
  fRingArray.Clear();
  if (fCache) fCache->Clear();
}
//____________________________________________________________________
AliFMDCorrAcceptance&
AliFMDCorrAcceptance::operator=(const AliFMDCorrAcceptance& o)
{
  // 
  // Assignment operator 
  // 
  // Parameters:
  //    o Object to assign from 
  // 
  // Return:
  //    Reference to this object 
  //
  if (&o == this) return *this;

  fRingArray        = o.fRingArray;
  fCache            = o.fCache;
  fHasOverflow      = o.fHasOverflow;
  SetVertexAxis(o.fVertexAxis);

  return *this;
}
//____________________________________________________________________
TH2D*
AliFMDCorrAcceptance::GetCorrection(UShort_t d, Char_t r, Double_t v) const
{
  // 
  // Get the acceptance correction @f$ a_{r,v}@f$ 
  // 
  // Parameters:
  //    d  Detector number (1-3)
  //    r  Ring identifier (I or O)
  //    v  Primary interaction point @f$z@f$ coordinate
  // 
  // Return:
  //    The correction @f$ a_{r,v}@f$ 
  //
  Int_t b = FindVertexBin(v);
  if (b <= 0) return 0;
  return GetCorrection(d, r, UShort_t(b));
}
//____________________________________________________________________
TH2D*
AliFMDCorrAcceptance::GetCorrection(UShort_t d, Char_t r, UShort_t b) const
{
  // 
  // Get the acceptance correction @f$ a_{r,v}@f$ 
  // 
  // Parameters:
  //    d  Detector number (1-3)
  //    r  Ring identifier (I or O)
  //    b  Bin corresponding to the primary interaction point 
  //           @f$z@f$ coordinate (1 based)
  // 
  // Return:
  //    The correction @f$ a_{r,v}@f$ 
  //
  return static_cast<TH2D*>(GetObject(fRingArray, d, r, b));
}
//____________________________________________________________________
TH1D*
AliFMDCorrAcceptance::GetPhiAcceptance(UShort_t d, Char_t r, Double_t v) const
{
  // 
  // Get the acceptance correction @f$ a_{r,v}@f$ 
  // 
  // Parameters:
  //    d  Detector number (1-3)
  //    r  Ring identifier (I or O)
  //    v  Primary interaction point @f$z@f$ coordinate
  // 
  // Return:
  //    The correction @f$ a_{r,v}@f$ 
  //
  Int_t b = FindVertexBin(v);
  if (b <= 0) return 0;
  return GetPhiAcceptance(d, r, UShort_t(b));
}
//____________________________________________________________________
TH1D*
AliFMDCorrAcceptance::GetPhiAcceptance(UShort_t d, Char_t r, UShort_t b) const
{
  // 
  // Get the acceptance correction @f$ a_{r,v}@f$ 
  // 
  // Parameters:
  //    d  Detector number (1-3)
  //    r  Ring identifier (I or O)
  //    b  Bin corresponding to the primary interaction point 
  //           @f$z@f$ coordinate (1 based)
  // 
  // Return:
  //    The correction @f$ a_{r,v}@f$ 
  //
  if (!fHasOverflow) return 0;
  if (!fCache) FillCache();
  return static_cast<TH1D*>(GetObject(*fCache, d, r, b));
}
  
//____________________________________________________________________
Int_t
AliFMDCorrAcceptance::FindVertexBin(Double_t v) const
{
  // 
  // Find the vertex bin that corresponds to the passed vertex 
  // 
  // Parameters:
  //    vertex The interaction points @f$z@f$-coordinate 
  // 
  // Return:
  //    Vertex bin in @f$[1,N_{\mbox{vertex}}]@f$ or negative if 
  // out of range 
  //
  if (fVertexAxis.GetNbins() <= 0) { 
    AliWarning("No vertex array defined");
    return 0;
  }
  Int_t bin = const_cast<TAxis&>(fVertexAxis).FindBin(v);
  if (bin <= 0 || bin > fVertexAxis.GetNbins()) { 
    AliWarning(Form("vertex %+8.4f out of range [%+8.4f,%+8.4f]",
		    v, fVertexAxis.GetXmin(), fVertexAxis.GetXmax()));
    return 0;
  }
  return bin;
}
//____________________________________________________________________
Int_t
AliFMDCorrAcceptance::GetRingIndex(UShort_t d, Char_t r) const
{
  // Get the index corresponding to the given ring 
  // 
  // Parameters:
  //    d Detector
  //    r Ring 
  // 
  // Return:
  //    Index (0 based) or negative in case of errors
  //
  switch (d) {
  case 1:  return 0;
  case 2:  return (r == 'I' || r == 'i' ? 1 : 2); break;  
  case 3:  return (r == 'I' || r == 'i' ? 3 : 4); break;  

  }
  AliWarning(Form("Index for FMD%d%c not found", d, r));
  return -1;
}
//____________________________________________________________________
TObject*
AliFMDCorrAcceptance::GetObject(const TObjArray& m, UShort_t d, 
				Char_t r, UShort_t b) const
{
  // 
  // Get the object @f$ a_{r,v}@f$ 
  // 
  // Parameters:
  //    m  Mother list
  //    d  Detector number (1-3)
  //    r  Ring identifier (I or O)
  //    b  Bin corresponding to the primary interaction point 
  //           @f$z@f$ coordinate (1 based)
  // 
  // Return:
  //    The correction @f$ a_{r,v}@f$ 
  //
  TObjArray* ringArray = GetRingArray(m, d, r);
  if (!ringArray) return 0;

  if (b <= 0 || b > ringArray->GetEntriesFast()) {
    AliWarning(Form("vertex bin %d out of range [1,%d]", 
		    b, ringArray->GetEntriesFast()));
    return 0;
  }

  TObject* o = ringArray->At(b-1);
  if (o) return o;

  AliWarning(Form("No dead channels map found for FMD%d%c in vertex bin %d",
		    d,r,b));
  return 0;
}
//____________________________________________________________________
TObjArray*
AliFMDCorrAcceptance::GetRingArray(const TObjArray& m, 
				   UShort_t d, Char_t r) const
{
  // 
  // Get the ring array corresponding to the specified ring
  // 
  // Parameters:
  //    d Detector 
  //    r Ring 
  // 
  // Return:
  //    Pointer to ring array, or null in case of problems
  //
  Int_t idx = GetRingIndex(d,r);
  if (idx < 0) return 0;
  
  TObject* o = m.At(idx);
  if (!o) { 
    AliWarning(Form("No array found for FMD%d%c", d, r));
    return 0;
  }

  return static_cast<TObjArray*>(o);
}
//____________________________________________________________________
TObjArray*
AliFMDCorrAcceptance::GetOrMakeRingArray(TObjArray& m, 
					 UShort_t d, Char_t r) const
{
  // 
  // Get the ring array corresponding to the specified ring
  // 
  // Parameters:
  //    d Detector 
  //    r Ring 
  // 
  // Return:
  //    Pointer to ring array, or newly created container 
  //
  Int_t idx = GetRingIndex(d,r);
  if (idx < 0) return 0;
  
  TObject* o = m.At(idx);
  if (!o) { 
    TObjArray* a = new TObjArray(fVertexAxis.GetNbins());
    a->SetName(Form("FMD%d%c", d, r));
    a->SetOwner(kTRUE);
    m.AddAtAndExpand(a, idx);
    return a;
  }

  return static_cast<TObjArray*>(m.At(idx));
}

//____________________________________________________________________
Bool_t
AliFMDCorrAcceptance::SetCorrection(UShort_t d, Char_t r, 
				    UShort_t b, TH2D*  h) 
{
  // 
  // Set the acceptance correction @f$ a_{r,v}(\eta)@f$ 
  // Note, that the object takes ownership of the passed pointer.
  // 
  // Parameters:
  //    d    Detector number (1-3)
  //    r    Ring identifier (I or O)
  //    b    Bin corresponding to the primary interaction point 
  //             @f$z@f$ coordinate  (1 based)
  //    h    @f$ a_{r,v}(\eta)@f$ 
  // 
  // Return:
  //    true if operation succeeded 
  //
  TObjArray* ringArray = GetOrMakeRingArray(fRingArray, d, r);
  if (!ringArray) return false;
  
  if (b <= 0 || b > fVertexAxis.GetNbins()) { 
    AliWarning(Form("Vertex bin %3d out of range [1,%3d]", 
		    b, fVertexAxis.GetNbins()));
    return false;
  }
  h->SetName(Form("FMD%d%c_vtxbin%03d", d, r, b));
  h->SetTitle(Form("Acceptance correction for FMD%d%c "
		   "in vertex bin %d [%+8.4f,%+8.4f]", 
		   d, r, b, fVertexAxis.GetBinLowEdge(b), 
		   fVertexAxis.GetBinUpEdge(b)));
  h->SetXTitle("#eta");
  h->SetYTitle("N_{strips,OK}/N_{strips}");
  h->SetFillStyle(3001);
  h->SetDirectory(0);
  h->SetStats(0);
  ringArray->AddAtAndExpand(h, b-1);
  return kTRUE;
}
//____________________________________________________________________
Bool_t
AliFMDCorrAcceptance::SetCorrection(UShort_t d, Char_t r, 
				    Double_t v, TH2D*  h) 
{
  // 
  // Set the acceptance correction @f$ a_{r,v}(\eta)@f$.
  // Note, that the object takes ownership of the passed pointer.
  // 
  // Parameters:
  //    d    Detector number (1-3)
  //    r    Ring identifier (I or O)
  //    v    Primary interaction point @f$z@f$ coordinate  
  //    h    @f$ a_{r,v}(\eta)@f$ 
  // 
  // Return:
  //    true if operation succeeded 
  //
  Int_t b = FindVertexBin(v);
  if (b <= 0 || b > fVertexAxis.GetNbins()) { 
    AliWarning(Form("Vertex %+8.4f out of range [%+8.4f,%+8.4f]", 
		    v, fVertexAxis.GetXmin(), fVertexAxis.GetXmax()));
    return false;
  }
  return SetCorrection(d, r, UShort_t(b), h);
}

//____________________________________________________________________
void
AliFMDCorrAcceptance::FillCache() const
{
  if (fCache) return;

  fCache = new TObjArray;
  fCache->SetOwner(kTRUE);
  fCache->SetName("cache");

  Int_t nV = fVertexAxis.GetNbins();
  for (UShort_t v = 1; v <= nV; v++) {
    for(UShort_t d = 1; d <= 3;d++) { 
      UShort_t nR = (d == 1 ? 1 : 2);
      for (UShort_t q = 0; q < nR; q++) { 
	Char_t   r  = (q == 0 ? 'I' : 'O');

	TObjArray* a = GetOrMakeRingArray(*fCache, d, r);

	TH2D* corr = GetCorrection(d, r, v);
	if (!corr) continue;

	Int_t nY = corr->GetNbinsY();
	TH1D* h  = corr->ProjectionX("tmp", nY+1, nY+1, "");
	h->SetName(Form("FMD%d%c_vtxbin%03d", d, r, v));
	h->SetTitle(Form("#phi acceptance correction for FMD%d%c "
			   "in vertex bin %d [%+8.4f,%+8.4f]", 
			   d, r, v, fVertexAxis.GetBinLowEdge(v), 
			   fVertexAxis.GetBinUpEdge(v)));
	h->SetXTitle("#eta");
	h->SetYTitle("N_{strips}/N_{strips,OK}");
	h->SetFillStyle(3001);
	h->SetDirectory(0);
	h->SetStats(0);
	a->AddAtAndExpand(h,v-1);

	if (fHasOverflow) continue;

	// Construct the overflow bin from 
	Int_t nX = corr->GetNbinsX();
	for (Int_t eta = 1; eta <= nX; eta++) { 
	  Double_t sum = 0;
	  for (Int_t phi = 1; phi <= nY; phi++) 
	    sum += corr->GetBinContent(eta, phi);
	  if (nY <= 0) continue;
	  h->SetBinContent(eta, nY/sum);
	} // for eta 
      } // for q 
    } // for d 
  } // for v 
}
//____________________________________________________________________
void
AliFMDCorrAcceptance::Browse(TBrowser* b)
{
  // 
  // Browse this object in the browser
  // 
  // Parameters:
  //    b 
  //
  b->Add(&fRingArray);
  if (fCache) b->Add(fCache);
  b->Add(&fVertexAxis);
}
//____________________________________________________________________
void
AliFMDCorrAcceptance::Print(Option_t* option) const
{
  // 
  // Print this object 
  // 
  // Parameters:
  //    option 
  //  
  std::cout << "Acceptance correction due to dead channels" << std::endl;
  fRingArray.Print(option);
  fVertexAxis.Print(option);
}
//____________________________________________________________________
void
AliFMDCorrAcceptance::ls(Option_t* option) const
{
  // 
  // Print this object 
  // 
  // Parameters:
  //    option 
  //  
  TObject::ls(option);
  gROOT->IncreaseDirLevel();
  fVertexAxis.ls(option);
  fRingArray.ls(option);
  gROOT->DecreaseDirLevel();
}

#if 0
namespace {
  void ClearCanvas(TVirtualPad* c)
  {
    c->SetLeftMargin(.1);
    c->SetRightMargin(.05);
    c->SetBottomMargin(.1);
    c->SetTopMargin(.05);
    c->Clear();
  }
}

//____________________________________________________________________
void
AliFMDCorrAcceptance::SaveAs(const Char_t* filename, Option_t* option) const
{
  // 
  // Override to allow saving to a PDF 
  // 
  TString fileName(filename);
  if (!fileName.EndsWith(".pdf")) {
    TObject::SaveAs(fileName, option);
    return;
  }
  
  TVirtualPad* c = new TCanvas(filename, GetTitle(), 800/TMath::Sqrt(2), 800);
  c->SetFillColor(0);
  c->SetBorderSize(0);
  c->SetBorderMode(0);
  c->Print(Form("%s[", filename));

  //__________________________________________________________________
  // Create a title page 
  TLatex* ll = new TLatex(.5,.8, filename);
  ll->SetTextAlign(22);
  ll->SetTextSize(0.03);
  ll->SetNDC();
  ll->Draw();

  TLatex* l = new TLatex(.5,.8, filename);
  l->SetNDC();
  l->SetTextSize(0.03);
  l->SetTextFont(132);
  l->SetTextAlign(12);
  l->DrawLatex(0.2, 0.70, "Acceptance due to dead channels");
  l->SetTextAlign(22);
  l->DrawLatex(0.5, 0.60, "c_{v,r}(#eta,#phi)=#frac{"
	       "#sum active strips#in(#eta,#phi)}{"
	       "#sum strips#in(#eta,#phi)}");
  
  c->Print(filename, "Title:Title page");
  
  //__________________________________________________________________
  // Draw all corrections
  const TAxis& vtxAxis = GetVertexAxis();
  Int_t        nVtx    = vtxAxis.GetNbins();

  // --- Loop over detectors -----------------------------------------
  for (UShort_t d = 1; d <= 3; d++) {
    UShort_t     nQ = (d == 1 ? 1 : 2);
    for (UShort_t q = 0; q < nQ; q++) { 
      Char_t r = (q == 0 ? 'I' : 'O');

      ClearCanvas(c);
      c->Divide(2, (nVtx+1)/2);
      for (UShort_t v=1; v <= nVtx; v++) { 
	TVirtualPad* p = c->cd(v);
	p->SetFillColor(kWhite);
      
	TH2* h2 = GetCorrection(d, r, v);
	if (!h2) { 
	  Warning("DrawCorrAcc", "No correction for r=%c, v=%d", r, v);
	  continue;
	}
	h2->Draw(option);
      }
      c->Print(filename, Form("Title:FMD%d%c", d, r));
    }
  }
  if (HasOverflow()){
    const_cast<AliFMDCorrAcceptance*>(this)->Draw(Form("%s phi", option));
    c->Print(filename, "Title:Phi Acceptance");
  }
  const_cast<AliFMDCorrAcceptance*>(this)->Draw(option);
  c->Print(filename, "Title:Summary");
  c->Print(Form("%s]", filename));
}
//____________________________________________________________________
void
AliFMDCorrAcceptance::Draw(Option_t* option)
{
  //
  // Draw this object 
  // 
  // Parameters: 
  //   option 
  // 
  TString opt(option);
  opt.ToLower();
  Bool_t over = opt.Contains("phi");
  opt.ReplaceAll("phi", "");

  TVirtualPad* c = gPad;
  if (!c) c = new TCanvas(GetName(), GetTitle());
  
  const TAxis& vtxAxis = fVertexAxis;
  Int_t        nVtx    = vtxAxis.GetNbins();
  Int_t        ipad    = 0;
  c->SetLeftMargin(.1);
  c->SetRightMargin(.05);
  c->SetBottomMargin(.1);
  c->SetTopMargin(.05);
  c->Clear();
  c->Divide((nVtx+2)/3, 3, 0, 0);

  // Draw all corrections
  for (UShort_t v = 1; v <= nVtx; v++) { 
    ipad++;
    if (ipad == 1 || ipad == 12) ipad++;

    TVirtualPad* p = c->cd(ipad);
    p->SetFillColor(kWhite);
        
    THStack* stack = new THStack(Form("vtx%02d", v),
				 Form("%+5.1f<v_{z}<%+5.1f",
				      vtxAxis.GetBinLowEdge(v),
				      vtxAxis.GetBinUpEdge(v)));
    for (UShort_t d = 1; d <= 3; d++) {
      UShort_t     nQ = (d == 1 ? 1 : 2);
      for (UShort_t q = 0; q < nQ; q++) { 
	Char_t r = (q == 0 ? 'I' : 'O');
	
	if (over) { 
	  TH1* hp = GetPhiAcceptance(d, r, v);
	  if (!hp) { 
	    Error("", "No phi acceptance at v=%d", v-1);
	    continue;
	  }
	  hp->SetDirectory(0);
	  hp->SetMarkerColor(AliForwardUtil::RingColor(d, r));
	  hp->SetLineColor(AliForwardUtil::RingColor(d, r));
	  hp->SetFillColor(AliForwardUtil::RingColor(d, r));
	  hp->SetFillStyle(3001);
	  // Info("", "Adding phi acceptance plot %d", int(hp->GetEntries()));
	  stack->Add(hp);
	  continue;
	}
	  
	TH2* h1 = GetCorrection(d, r, v);
	if (!h1) { 
	  Warning("Draw", "No correction for r=%c, v=%d", r, v);
	  continue;
	}
	Int_t nY = h1->GetNbinsY();
	TH1* hh = h1->ProjectionX(Form("FMD%d%c", d, r), 1, nY);
	hh->Scale(1. / nY);
	hh->SetDirectory(0);
	hh->SetMarkerColor(AliForwardUtil::RingColor(d, r));
	hh->SetLineColor(AliForwardUtil::RingColor(d, r));
	hh->SetFillColor(AliForwardUtil::RingColor(d, r));
	hh->SetFillStyle(3004);

	stack->Add(hh);
      }
    }
    stack->SetMaximum(1.2);
    stack->Draw(Form("nostack %s", opt.Data()));
  }
}
#endif

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