#include "AliAnalysisMuMuBinning.h"
#include "AliLog.h"
#include "Riostream.h"
#include "TMap.h"
#include "TMath.h"
#include "TObjArray.h"
#include "TObjString.h"
#include <cassert>
ClassImp(AliAnalysisMuMuBinning::Range)
ClassImp(AliAnalysisMuMuBinning)
AliAnalysisMuMuBinning::AliAnalysisMuMuBinning(const char* name, const char* title)
: TNamed(name,title), fBins(0x0)
{
}
AliAnalysisMuMuBinning::AliAnalysisMuMuBinning(const AliAnalysisMuMuBinning& rhs)
: TNamed(), fBins(0x0)
{
TObjArray* bins = rhs.CreateBinObjArray();
TIter next(bins);
AliAnalysisMuMuBinning::Range* b;
while ( ( b = static_cast<AliAnalysisMuMuBinning::Range*>(next()) ) )
{
AddBin(*b);
}
}
AliAnalysisMuMuBinning& AliAnalysisMuMuBinning::operator=(const AliAnalysisMuMuBinning& rhs)
{
if ( this != &rhs )
{
delete fBins;
fBins = 0x0;
TObjArray* bins = rhs.CreateBinObjArray();
TIter next(bins);
AliAnalysisMuMuBinning::Range* b;
while ( ( b = static_cast<AliAnalysisMuMuBinning::Range*>(next()) ) )
{
AddBin(*b);
}
}
return *this;
}
AliAnalysisMuMuBinning::~AliAnalysisMuMuBinning()
{
delete fBins;
}
void AliAnalysisMuMuBinning::AddBin(const AliAnalysisMuMuBinning::Range& bin)
{
AddBin(bin.What().Data(),bin.Quantity().Data(),
bin.Xmin(),bin.Xmax(),
bin.Ymin(),bin.Ymax(),bin.Flavour());
}
void AliAnalysisMuMuBinning::AddBin(const char* what, const char* quantity,
Double_t xmin, Double_t xmax,
Double_t ymin, Double_t ymax,
const char* flavour)
{
if (!fBins)
{
fBins = new TMap;
fBins->SetOwnerKeyValue(kTRUE,kTRUE);
}
TString swhat(what);
swhat.ToUpper();
TString sQuantity(quantity);
sQuantity.ToUpper();
TObjArray* b = static_cast<TObjArray*>(fBins->GetValue(swhat.Data()));
if (!b)
{
b = new TObjArray;
b->SetOwner(kTRUE);
fBins->Add(new TObjString(swhat),b);
}
Range* r = new Range(swhat.Data(),sQuantity.Data(),xmin,xmax,ymin,ymax,flavour);
if ( b->FindObject(r) )
{
AliDebug(1,Form("Trying to add an already existing bin : %s. Not doing it.",r->AsString().Data()));
delete r;
}
else
{
b->Add(r);
TString bQuantity(Form("%s-%s",swhat.Data(),sQuantity.Data()));
TString name(GetName());
if ( !name.Contains(bQuantity) )
{
if (name.Length()>0)
{
name += " ";
}
name += bQuantity;
SetName(name);
}
}
b->Sort();
}
Double_t* AliAnalysisMuMuBinning::CreateBinArray() const
{
TObjArray* binArray = CreateBinObjArray();
if (!binArray) return 0x0;
Double_t* bins = new Double_t[binArray->GetEntries()+1];
TIter next(binArray);
AliAnalysisMuMuBinning::Range* b;
Int_t i(0);
while ( ( b = static_cast<AliAnalysisMuMuBinning::Range*>(next()) ) )
{
bins[i] = b->Xmin();
++i;
}
b = static_cast<AliAnalysisMuMuBinning::Range*>(binArray->At(binArray->GetEntries()-1));
bins[i] = b->Xmax();
delete binArray;
return bins;
}
TObjArray* AliAnalysisMuMuBinning::CreateBinObjArray() const
{
TObjArray* a = new TObjArray;
a->SetOwner(kTRUE);
TIter nextwhat(fBins);
TObjString* what;
while ( ( what = static_cast<TObjString*>(nextwhat()) ) )
{
TObjArray* b = static_cast<TObjArray*>(fBins->GetValue(what->String().Data()));
TIter next(b);
Range* r;
while ( ( r = static_cast<Range*>(next()) ) )
{
a->Add(r->Clone());
}
}
if ( a->GetLast() < 0 )
{
delete a;
a = 0x0;
}
return a;
}
TObjArray* AliAnalysisMuMuBinning::CreateBinObjArray(const char* what) const
{
if (!fBins) return 0x0;
TObjArray* a = new TObjArray;
a->SetOwner(kTRUE);
TString swhat(what);
swhat.ToUpper();
TObjArray* b = static_cast<TObjArray*>(fBins->GetValue(swhat.Data()));
if (!b) return 0x0;
TIter next(b);
Range* r;
while ( ( r = static_cast<Range*>(next()) ) )
{
a->Add(r->Clone());
}
if ( a->GetLast() < 0 )
{
delete a;
a = 0x0;
}
return a;
}
TObjArray* AliAnalysisMuMuBinning::CreateBinObjArray(const char* what, const char* quantity, const char* flavour) const
{
TObjArray* a = new TObjArray;
a->SetOwner(kTRUE);
TString swhat(what);
swhat.ToUpper();
TObjArray* b = static_cast<TObjArray*>(fBins->GetValue(swhat.Data()));
if (!b) return 0x0;
TIter next(b);
Range* r;
TString sQuantity(quantity);
sQuantity.ToUpper();
TString sflavour(flavour);
TObjArray* Quantitys = sQuantity.Tokenize(",");
TObjString* oneQuantity;
TIter nextQuantity(Quantitys);
while ( ( r = static_cast<Range*>(next()) ) )
{
nextQuantity.Reset();
while ( ( oneQuantity = static_cast<TObjString*>(nextQuantity()) ) )
{
if ( r->Quantity() == oneQuantity->String() &&
( ( sflavour.Length() > 0 && r->Flavour() == sflavour.Data() ) || sflavour.Length()==0 ) )
{
a->Add(r->Clone());
}
}
}
if ( a->GetLast() < 0 )
{
delete a;
a = 0x0;
}
delete Quantitys;
return a;
}
Double_t* AliAnalysisMuMuBinning::CreateBinArrayY() const
{
TObjArray* binArray = CreateBinObjArray();
if (!binArray) return 0x0;
AliAnalysisMuMuBinning::Range* firstBin = static_cast<AliAnalysisMuMuBinning::Range*>(binArray->First());
Double_t* binsY = new Double_t[binArray->GetEntries()+1];
Double_t minY = firstBin->Ymin();
Double_t maxY = firstBin->Ymax();
if ( !(minY < maxY))
{
std::cout << "No 2D binning" << std::endl;
delete binsY;
delete binArray;
return 0x0;
}
TIter next(binArray);
AliAnalysisMuMuBinning::Range* b;
Int_t i(0);
while ( ( b = static_cast<AliAnalysisMuMuBinning::Range*>(next()) ) )
{
if ( (i != 0) && (minY == b->Ymin()) ) break;
binsY[i] = b->Ymin();
++i;
}
b = static_cast<AliAnalysisMuMuBinning::Range*>(binArray->At(i-1));
binsY[i] = b->Ymax();
Double_t* bins = new Double_t[i + 1];
for (Int_t j = 0 ; j < (i+1) ; j++)
{
bins[j] = binsY[j];
}
delete binArray;
delete[] binsY;
return bins;
}
Int_t AliAnalysisMuMuBinning::GetNBinsX() const
{
TObjArray* binArray = CreateBinObjArray();
if (!binArray) return 0;
Double_t binsX(0);
TIter next(binArray);
AliAnalysisMuMuBinning::Range* b;
Int_t i(0);
while ( ( b = static_cast<AliAnalysisMuMuBinning::Range*>(next()) ) )
{
if ( (i != 0) && (binsX == b->Xmin()) ) continue;
binsX = b->Xmin();
++i;
}
delete binArray;
return i;
}
Int_t AliAnalysisMuMuBinning::GetNBinsY() const
{
TObjArray* binArray = CreateBinObjArray();
if (!binArray) return 0x0;
Double_t binsY(0);
AliAnalysisMuMuBinning::Range* firstBin = static_cast<AliAnalysisMuMuBinning::Range*>(binArray->First());
Double_t minY = firstBin->Ymin();
Double_t maxY = firstBin->Ymax();
if ( !(minY < maxY))
{
std::cout << "No 2D binning" << std::endl;
delete binArray;
return 0;
}
TIter next(binArray);
AliAnalysisMuMuBinning::Range* b;
Int_t i(0);
while ( ( b = static_cast<AliAnalysisMuMuBinning::Range*>(next()) ) )
{
if ( (i != 0) && (minY == b->Ymin()) ) break;
binsY = b->Ymin();
++i;
}
delete binArray;
return i;
}
Double_t* AliAnalysisMuMuBinning::CreateBinArrayX() const
{
TObjArray* binArray = CreateBinObjArray();
if (!binArray) return 0x0;
Double_t* binsX = new Double_t[binArray->GetEntries()+1];
TIter next(binArray);
AliAnalysisMuMuBinning::Range* b;
Int_t i(0);
while ( ( b = static_cast<AliAnalysisMuMuBinning::Range*>(next()) ) )
{
if ( (i != 0) && (binsX[i-1] == b->Xmin()) ) continue;
binsX[i] = b->Xmin();
++i;
}
b = static_cast<AliAnalysisMuMuBinning::Range*>(binArray->At(binArray->GetEntries()-1));
binsX[i] = b->Xmax();
Double_t* bins = new Double_t[i + 1];
for (Int_t j = 0 ; j < (i+1) ; j++)
{
bins[j] = binsX[j];
}
delete binArray;
delete[] binsX;
return bins;
}
void AliAnalysisMuMuBinning::CreateMesh(const char* what,
const char* quantity1, const char* quantity2,
const char* flavour,
Bool_t remove12)
{
TObjArray* a1 = CreateBinObjArray(what,quantity1,flavour);
if (!a1)
{
AliError(Form("No bin for Quantity %s. Done nothing.",quantity1));
return;
}
TObjArray* a2 = CreateBinObjArray(what,quantity2,flavour);
if (!a2)
{
AliError(Form("No bin for Quantity %s. Done nothing.",quantity2));
return;
}
TString meshQuantity(Form("%s VS %s - %s",quantity1,quantity2,flavour));
for ( Int_t i1 = 0; i1 <= a1->GetLast(); ++i1 )
{
Range* r1 = static_cast<Range*>(a1->At(i1));
for ( Int_t i2 = 0; i2 <= a2->GetLast(); ++i2 )
{
Range* r2 = static_cast<Range*>(a2->At(i2));
AddBin(what,meshQuantity,r2->Xmin(),r2->Xmax(),r1->Xmin(),r1->Xmax(),Form("%s VS %s",r1->Flavour().Data(),r2->Flavour().Data()));
}
}
delete a1;
delete a2;
if ( remove12 )
{
TObjArray* b = static_cast<TObjArray*>(fBins->GetValue(what));
TIter next(b);
Range* r;
TString sQuantity1(quantity1);
TString sQuantity2(quantity2);
sQuantity1.ToUpper();
sQuantity2.ToUpper();
while ( ( r = static_cast<Range*>(next())) )
{
if ( r->Quantity() == quantity1 ||
r->Quantity() == quantity2 )
{
b->Remove(r);
}
}
}
}
TObjArray* AliAnalysisMuMuBinning::CreateWhatArray() const
{
TObjArray* whatArray(0x0);
TIter nextwhat(fBins);
TObjString* what;
while ( ( what = static_cast<TObjString*>(nextwhat()) ) )
{
if (!whatArray)
{
whatArray = new TObjArray;
whatArray->SetOwner(kTRUE);
}
whatArray->Add(new TObjString(*what));
}
return whatArray;
}
TObjArray* AliAnalysisMuMuBinning::CreateQuantityArray() const
{
TObjArray* QuantityArray(0x0);
TIter nextwhat(fBins);
TObjString* what;
while ( ( what = static_cast<TObjString*>(nextwhat()) ) )
{
TObjArray* whats = static_cast<TObjArray*>(fBins->GetValue(what->String()));
TIter next(whats);
Range* r;
while ( ( r = static_cast<Range*>(next())) )
{
if (!QuantityArray)
{
QuantityArray = new TObjArray;
QuantityArray->SetOwner(kTRUE);
}
if ( !QuantityArray->FindObject(r->Quantity()) )
{
QuantityArray->Add(new TObjString(r->Quantity()));
}
}
}
return QuantityArray;
}
Bool_t AliAnalysisMuMuBinning::IsEqual(const TObject* obj) const
{
if ( obj->IsA() == AliAnalysisMuMuBinning::Class() )
{
const AliAnalysisMuMuBinning* other = static_cast<const AliAnalysisMuMuBinning*>(obj);
TIter nextOther(other->fBins);
TObjString* str;
while ( ( str = static_cast<TObjString*>(nextOther()) ) )
{
TObject* o = fBins->GetValue(str->String());
if (!o) return kFALSE;
if (o->IsA() != TObjArray::Class()) return kFALSE;
TObjArray* thisArray = static_cast<TObjArray*>(o);
o = other->fBins->GetValue(str->String());
if (!o) return kFALSE;
if (o->IsA() != TObjArray::Class()) return kFALSE;
TObjArray* otherArray = static_cast<TObjArray*>(o);
Int_t n = thisArray->GetEntries();
if ( n != otherArray->GetEntries() ) return kFALSE;
for ( Int_t i = 0; i < n; ++i )
{
Range* thisRange = static_cast<Range*>(thisArray->At(i));
Range* otherRange = static_cast<Range*>(otherArray->At(i));
if ( !thisRange->IsEqual(otherRange) ) return kFALSE;
}
}
return kTRUE;
}
return kFALSE;
}
Long64_t AliAnalysisMuMuBinning::Merge(TCollection* list)
{
if (!list) return 0;
if (list->IsEmpty()) return 1;
TIter next(list);
TObject* currObj;
Int_t count(0);
while ( ( currObj = next() ) )
{
AliAnalysisMuMuBinning* binning = dynamic_cast<AliAnalysisMuMuBinning*>(currObj);
if (!binning)
{
AliFatal(Form("object named \"%s\" is a %s instead of an AliAnalysisMuMuBinning!", currObj->GetName(), currObj->ClassName()));
continue;
}
if ( IsEqual(binning) )
{
}
else
{
AliWarning("Implement me!");
std::cout << ">>>> this=" << std::endl;
Print();
std::cout << ">>>> other=" << std::endl;
binning->Print();
}
++count;
}
return count+1;
}
AliAnalysisMuMuBinning*
AliAnalysisMuMuBinning::Project(const char* what, const char* quantity, const char* flavour) const
{
TObjArray* bins = CreateBinObjArray(what,quantity,flavour);
if (!bins) return 0x0;
AliAnalysisMuMuBinning* p = new AliAnalysisMuMuBinning;
TIter next(bins);
AliAnalysisMuMuBinning::Range* bin;
TString sQuantity(quantity);
sQuantity.ToUpper();
while ( ( bin = static_cast<AliAnalysisMuMuBinning::Range*>(next())) )
{
if (bin->Quantity()!=sQuantity || bin->Flavour()!=flavour)
{
AliDebug(1,Form("sQuantity=%s flavour=%s bin=%s => skip",sQuantity.Data(),flavour,bin->AsString().Data()));
continue;
}
{
p->AddBin(what,bin->Quantity(),bin->Xmin(),bin->Xmax(),bin->Ymin(),bin->Ymax(),bin->Flavour().Data());
}
}
delete bins;
return p;
}
void AliAnalysisMuMuBinning::Print(Option_t* ) const
{
if (!fBins)
{
std::cout << "Empty object. No bin defined. " << std::endl;
return;
}
TIter nextwhat(fBins);
TObjString* str;
while ( ( str = static_cast<TObjString*>(nextwhat()) ) )
{
std::cout << "what : " << str->String().Data() << std::endl;
TObjArray* b = static_cast<TObjArray*>(fBins->GetValue(str->String()));
TIter next(b);
Range* r(0x0);
next.Reset();
Int_t i(1);
while ( ( r = static_cast<Range*>(next()) ) )
{
std::cout << Form("BIN %3d ",i++);
r->Print();
}
}
}
AliAnalysisMuMuBinning::Range::Range(const char* what, const char* quantity,
Double_t xmin, Double_t xmax,
Double_t ymin, Double_t ymax,
const char* flavour)
: TObject(), fWhat(what), fQuantity(quantity),
fXmin(xmin), fXmax(xmax), fYmin(ymin), fYmax(ymax),
fFlavour(flavour)
{
fWhat.ToUpper();
fQuantity.ToUpper();
}
TString AliAnalysisMuMuBinning::Range::AsString() const
{
if ( IsIntegrated()) return Quantity().Data();
TString s;
if ( fFlavour.Length() > 0 )
{
s.Form("%s_%s_%05.2f_%05.2f",Quantity().Data(),Flavour().Data(),Xmin(),Xmax());
}
else
{
s.Form("%s_%05.2f_%05.2f",Quantity().Data(),Xmin(),Xmax());
}
if (Is2D())
{
s += TString::Format("_%06.2f_%06.2f",Ymin(),Ymax());
}
s.ReplaceAll(" ","");
s.ReplaceAll("+","");
s.ReplaceAll("-","m");
return s;
}
Int_t AliAnalysisMuMuBinning::Range::Compare(const TObject* obj) const
{
const Range* other = static_cast<const Range*>(obj);
int s = strcmp(What().Data(),other->What().Data());
if ( s ) return s;
s = strcmp(Quantity().Data(),other->Quantity().Data());
if (s) return s;
s = strcmp(Flavour().Data(),other->Flavour().Data());
if (s) return s;
if ( Xmin() < other->Xmin() )
{
return -1;
}
else if ( Xmin() > other->Xmin() )
{
return 1;
}
else
{
if ( Xmax() < other->Xmax() )
{
return -1;
}
else if ( Xmax() > other->Xmax() )
{
return 1;
}
else {
if ( Ymin() < other->Ymin() )
{
return -1;
}
else if ( Ymin() > other->Ymin() )
{
return 1;
}
else
{
if ( Ymax() < other->Ymax() )
{
return -1;
}
else if ( Ymax() > other->Ymax() )
{
return 1;
}
}
}
}
return 0;
}
Bool_t AliAnalysisMuMuBinning::Range::IsInRange(Double_t x, Double_t y) const
{
if ( IsIntegrated() )
{
return kTRUE;
}
else
{
if ( Is2D() )
{
return ( x >= Xmin() && x < Xmax() && y >= Ymin() && y < Ymax());
}
else
{
return ( x >= Xmin() && x < Xmax() );
}
}
}
Bool_t AliAnalysisMuMuBinning::Range::IsIntegrated() const
{
return
Xmin() >= TMath::Limits<Double_t>::Max() &&
Ymin() >= TMath::Limits<Double_t>::Max() &&
Xmax() >= TMath::Limits<Double_t>::Max() &&
Ymax() >= TMath::Limits<Double_t>::Max() ;
}
void AliAnalysisMuMuBinning::Range::Print(Option_t* ) const
{
if (IsIntegrated())
{
std::cout << Form("%s : %s : INTEGRATED",What().Data(),Quantity().Data()) << std::endl;
return;
}
std::cout << Form("%s : %s : %5.2f : %5.2f",What().Data(),Quantity().Data(),Xmin(),Xmax());
if (Is2D())
{
std::cout << Form(" ; %5.2f : %5.2f",Ymin(),Ymax());
}
if (Flavour().Length()>0)
{
std::cout << " - " << Flavour().Data();
}
std::cout << "->" << AsString().Data() << std::endl;
}
AliAnalysisMuMuBinning.cxx:1 AliAnalysisMuMuBinning.cxx:2 AliAnalysisMuMuBinning.cxx:3 AliAnalysisMuMuBinning.cxx:4 AliAnalysisMuMuBinning.cxx:5 AliAnalysisMuMuBinning.cxx:6 AliAnalysisMuMuBinning.cxx:7 AliAnalysisMuMuBinning.cxx:8 AliAnalysisMuMuBinning.cxx:9 AliAnalysisMuMuBinning.cxx:10 AliAnalysisMuMuBinning.cxx:11 AliAnalysisMuMuBinning.cxx:12 AliAnalysisMuMuBinning.cxx:13 AliAnalysisMuMuBinning.cxx:14 AliAnalysisMuMuBinning.cxx:15 AliAnalysisMuMuBinning.cxx:16 AliAnalysisMuMuBinning.cxx:17 AliAnalysisMuMuBinning.cxx:18 AliAnalysisMuMuBinning.cxx:19 AliAnalysisMuMuBinning.cxx:20 AliAnalysisMuMuBinning.cxx:21 AliAnalysisMuMuBinning.cxx:22 AliAnalysisMuMuBinning.cxx:23 AliAnalysisMuMuBinning.cxx:24 AliAnalysisMuMuBinning.cxx:25 AliAnalysisMuMuBinning.cxx:26 AliAnalysisMuMuBinning.cxx:27 AliAnalysisMuMuBinning.cxx:28 AliAnalysisMuMuBinning.cxx:29 AliAnalysisMuMuBinning.cxx:30 AliAnalysisMuMuBinning.cxx:31 AliAnalysisMuMuBinning.cxx:32 AliAnalysisMuMuBinning.cxx:33 AliAnalysisMuMuBinning.cxx:34 AliAnalysisMuMuBinning.cxx:35 AliAnalysisMuMuBinning.cxx:36 AliAnalysisMuMuBinning.cxx:37 AliAnalysisMuMuBinning.cxx:38 AliAnalysisMuMuBinning.cxx:39 AliAnalysisMuMuBinning.cxx:40 AliAnalysisMuMuBinning.cxx:41 AliAnalysisMuMuBinning.cxx:42 AliAnalysisMuMuBinning.cxx:43 AliAnalysisMuMuBinning.cxx:44 AliAnalysisMuMuBinning.cxx:45 AliAnalysisMuMuBinning.cxx:46 AliAnalysisMuMuBinning.cxx:47 AliAnalysisMuMuBinning.cxx:48 AliAnalysisMuMuBinning.cxx:49 AliAnalysisMuMuBinning.cxx:50 AliAnalysisMuMuBinning.cxx:51 AliAnalysisMuMuBinning.cxx:52 AliAnalysisMuMuBinning.cxx:53 AliAnalysisMuMuBinning.cxx:54 AliAnalysisMuMuBinning.cxx:55 AliAnalysisMuMuBinning.cxx:56 AliAnalysisMuMuBinning.cxx:57 AliAnalysisMuMuBinning.cxx:58 AliAnalysisMuMuBinning.cxx:59 AliAnalysisMuMuBinning.cxx:60 AliAnalysisMuMuBinning.cxx:61 AliAnalysisMuMuBinning.cxx:62 AliAnalysisMuMuBinning.cxx:63 AliAnalysisMuMuBinning.cxx:64 AliAnalysisMuMuBinning.cxx:65 AliAnalysisMuMuBinning.cxx:66 AliAnalysisMuMuBinning.cxx:67 AliAnalysisMuMuBinning.cxx:68 AliAnalysisMuMuBinning.cxx:69 AliAnalysisMuMuBinning.cxx:70 AliAnalysisMuMuBinning.cxx:71 AliAnalysisMuMuBinning.cxx:72 AliAnalysisMuMuBinning.cxx:73 AliAnalysisMuMuBinning.cxx:74 AliAnalysisMuMuBinning.cxx:75 AliAnalysisMuMuBinning.cxx:76 AliAnalysisMuMuBinning.cxx:77 AliAnalysisMuMuBinning.cxx:78 AliAnalysisMuMuBinning.cxx:79 AliAnalysisMuMuBinning.cxx:80 AliAnalysisMuMuBinning.cxx:81 AliAnalysisMuMuBinning.cxx:82 AliAnalysisMuMuBinning.cxx:83 AliAnalysisMuMuBinning.cxx:84 AliAnalysisMuMuBinning.cxx:85 AliAnalysisMuMuBinning.cxx:86 AliAnalysisMuMuBinning.cxx:87 AliAnalysisMuMuBinning.cxx:88 AliAnalysisMuMuBinning.cxx:89 AliAnalysisMuMuBinning.cxx:90 AliAnalysisMuMuBinning.cxx:91 AliAnalysisMuMuBinning.cxx:92 AliAnalysisMuMuBinning.cxx:93 AliAnalysisMuMuBinning.cxx:94 AliAnalysisMuMuBinning.cxx:95 AliAnalysisMuMuBinning.cxx:96 AliAnalysisMuMuBinning.cxx:97 AliAnalysisMuMuBinning.cxx:98 AliAnalysisMuMuBinning.cxx:99 AliAnalysisMuMuBinning.cxx:100 AliAnalysisMuMuBinning.cxx:101 AliAnalysisMuMuBinning.cxx:102 AliAnalysisMuMuBinning.cxx:103 AliAnalysisMuMuBinning.cxx:104 AliAnalysisMuMuBinning.cxx:105 AliAnalysisMuMuBinning.cxx:106 AliAnalysisMuMuBinning.cxx:107 AliAnalysisMuMuBinning.cxx:108 AliAnalysisMuMuBinning.cxx:109 AliAnalysisMuMuBinning.cxx:110 AliAnalysisMuMuBinning.cxx:111 AliAnalysisMuMuBinning.cxx:112 AliAnalysisMuMuBinning.cxx:113 AliAnalysisMuMuBinning.cxx:114 AliAnalysisMuMuBinning.cxx:115 AliAnalysisMuMuBinning.cxx:116 AliAnalysisMuMuBinning.cxx:117 AliAnalysisMuMuBinning.cxx:118 AliAnalysisMuMuBinning.cxx:119 AliAnalysisMuMuBinning.cxx:120 AliAnalysisMuMuBinning.cxx:121 AliAnalysisMuMuBinning.cxx:122 AliAnalysisMuMuBinning.cxx:123 AliAnalysisMuMuBinning.cxx:124 AliAnalysisMuMuBinning.cxx:125 AliAnalysisMuMuBinning.cxx:126 AliAnalysisMuMuBinning.cxx:127 AliAnalysisMuMuBinning.cxx:128 AliAnalysisMuMuBinning.cxx:129 AliAnalysisMuMuBinning.cxx:130 AliAnalysisMuMuBinning.cxx:131 AliAnalysisMuMuBinning.cxx:132 AliAnalysisMuMuBinning.cxx:133 AliAnalysisMuMuBinning.cxx:134 AliAnalysisMuMuBinning.cxx:135 AliAnalysisMuMuBinning.cxx:136 AliAnalysisMuMuBinning.cxx:137 AliAnalysisMuMuBinning.cxx:138 AliAnalysisMuMuBinning.cxx:139 AliAnalysisMuMuBinning.cxx:140 AliAnalysisMuMuBinning.cxx:141 AliAnalysisMuMuBinning.cxx:142 AliAnalysisMuMuBinning.cxx:143 AliAnalysisMuMuBinning.cxx:144 AliAnalysisMuMuBinning.cxx:145 AliAnalysisMuMuBinning.cxx:146 AliAnalysisMuMuBinning.cxx:147 AliAnalysisMuMuBinning.cxx:148 AliAnalysisMuMuBinning.cxx:149 AliAnalysisMuMuBinning.cxx:150 AliAnalysisMuMuBinning.cxx:151 AliAnalysisMuMuBinning.cxx:152 AliAnalysisMuMuBinning.cxx:153 AliAnalysisMuMuBinning.cxx:154 AliAnalysisMuMuBinning.cxx:155 AliAnalysisMuMuBinning.cxx:156 AliAnalysisMuMuBinning.cxx:157 AliAnalysisMuMuBinning.cxx:158 AliAnalysisMuMuBinning.cxx:159 AliAnalysisMuMuBinning.cxx:160 AliAnalysisMuMuBinning.cxx:161 AliAnalysisMuMuBinning.cxx:162 AliAnalysisMuMuBinning.cxx:163 AliAnalysisMuMuBinning.cxx:164 AliAnalysisMuMuBinning.cxx:165 AliAnalysisMuMuBinning.cxx:166 AliAnalysisMuMuBinning.cxx:167 AliAnalysisMuMuBinning.cxx:168 AliAnalysisMuMuBinning.cxx:169 AliAnalysisMuMuBinning.cxx:170 AliAnalysisMuMuBinning.cxx:171 AliAnalysisMuMuBinning.cxx:172 AliAnalysisMuMuBinning.cxx:173 AliAnalysisMuMuBinning.cxx:174 AliAnalysisMuMuBinning.cxx:175 AliAnalysisMuMuBinning.cxx:176 AliAnalysisMuMuBinning.cxx:177 AliAnalysisMuMuBinning.cxx:178 AliAnalysisMuMuBinning.cxx:179 AliAnalysisMuMuBinning.cxx:180 AliAnalysisMuMuBinning.cxx:181 AliAnalysisMuMuBinning.cxx:182 AliAnalysisMuMuBinning.cxx:183 AliAnalysisMuMuBinning.cxx:184 AliAnalysisMuMuBinning.cxx:185 AliAnalysisMuMuBinning.cxx:186 AliAnalysisMuMuBinning.cxx:187 AliAnalysisMuMuBinning.cxx:188 AliAnalysisMuMuBinning.cxx:189 AliAnalysisMuMuBinning.cxx:190 AliAnalysisMuMuBinning.cxx:191 AliAnalysisMuMuBinning.cxx:192 AliAnalysisMuMuBinning.cxx:193 AliAnalysisMuMuBinning.cxx:194 AliAnalysisMuMuBinning.cxx:195 AliAnalysisMuMuBinning.cxx:196 AliAnalysisMuMuBinning.cxx:197 AliAnalysisMuMuBinning.cxx:198 AliAnalysisMuMuBinning.cxx:199 AliAnalysisMuMuBinning.cxx:200 AliAnalysisMuMuBinning.cxx:201 AliAnalysisMuMuBinning.cxx:202 AliAnalysisMuMuBinning.cxx:203 AliAnalysisMuMuBinning.cxx:204 AliAnalysisMuMuBinning.cxx:205 AliAnalysisMuMuBinning.cxx:206 AliAnalysisMuMuBinning.cxx:207 AliAnalysisMuMuBinning.cxx:208 AliAnalysisMuMuBinning.cxx:209 AliAnalysisMuMuBinning.cxx:210 AliAnalysisMuMuBinning.cxx:211 AliAnalysisMuMuBinning.cxx:212 AliAnalysisMuMuBinning.cxx:213 AliAnalysisMuMuBinning.cxx:214 AliAnalysisMuMuBinning.cxx:215 AliAnalysisMuMuBinning.cxx:216 AliAnalysisMuMuBinning.cxx:217 AliAnalysisMuMuBinning.cxx:218 AliAnalysisMuMuBinning.cxx:219 AliAnalysisMuMuBinning.cxx:220 AliAnalysisMuMuBinning.cxx:221 AliAnalysisMuMuBinning.cxx:222 AliAnalysisMuMuBinning.cxx:223 AliAnalysisMuMuBinning.cxx:224 AliAnalysisMuMuBinning.cxx:225 AliAnalysisMuMuBinning.cxx:226 AliAnalysisMuMuBinning.cxx:227 AliAnalysisMuMuBinning.cxx:228 AliAnalysisMuMuBinning.cxx:229 AliAnalysisMuMuBinning.cxx:230 AliAnalysisMuMuBinning.cxx:231 AliAnalysisMuMuBinning.cxx:232 AliAnalysisMuMuBinning.cxx:233 AliAnalysisMuMuBinning.cxx:234 AliAnalysisMuMuBinning.cxx:235 AliAnalysisMuMuBinning.cxx:236 AliAnalysisMuMuBinning.cxx:237 AliAnalysisMuMuBinning.cxx:238 AliAnalysisMuMuBinning.cxx:239 AliAnalysisMuMuBinning.cxx:240 AliAnalysisMuMuBinning.cxx:241 AliAnalysisMuMuBinning.cxx:242 AliAnalysisMuMuBinning.cxx:243 AliAnalysisMuMuBinning.cxx:244 AliAnalysisMuMuBinning.cxx:245 AliAnalysisMuMuBinning.cxx:246 AliAnalysisMuMuBinning.cxx:247 AliAnalysisMuMuBinning.cxx:248 AliAnalysisMuMuBinning.cxx:249 AliAnalysisMuMuBinning.cxx:250 AliAnalysisMuMuBinning.cxx:251 AliAnalysisMuMuBinning.cxx:252 AliAnalysisMuMuBinning.cxx:253 AliAnalysisMuMuBinning.cxx:254 AliAnalysisMuMuBinning.cxx:255 AliAnalysisMuMuBinning.cxx:256 AliAnalysisMuMuBinning.cxx:257 AliAnalysisMuMuBinning.cxx:258 AliAnalysisMuMuBinning.cxx:259 AliAnalysisMuMuBinning.cxx:260 AliAnalysisMuMuBinning.cxx:261 AliAnalysisMuMuBinning.cxx:262 AliAnalysisMuMuBinning.cxx:263 AliAnalysisMuMuBinning.cxx:264 AliAnalysisMuMuBinning.cxx:265 AliAnalysisMuMuBinning.cxx:266 AliAnalysisMuMuBinning.cxx:267 AliAnalysisMuMuBinning.cxx:268 AliAnalysisMuMuBinning.cxx:269 AliAnalysisMuMuBinning.cxx:270 AliAnalysisMuMuBinning.cxx:271 AliAnalysisMuMuBinning.cxx:272 AliAnalysisMuMuBinning.cxx:273 AliAnalysisMuMuBinning.cxx:274 AliAnalysisMuMuBinning.cxx:275 AliAnalysisMuMuBinning.cxx:276 AliAnalysisMuMuBinning.cxx:277 AliAnalysisMuMuBinning.cxx:278 AliAnalysisMuMuBinning.cxx:279 AliAnalysisMuMuBinning.cxx:280 AliAnalysisMuMuBinning.cxx:281 AliAnalysisMuMuBinning.cxx:282 AliAnalysisMuMuBinning.cxx:283 AliAnalysisMuMuBinning.cxx:284 AliAnalysisMuMuBinning.cxx:285 AliAnalysisMuMuBinning.cxx:286 AliAnalysisMuMuBinning.cxx:287 AliAnalysisMuMuBinning.cxx:288 AliAnalysisMuMuBinning.cxx:289 AliAnalysisMuMuBinning.cxx:290 AliAnalysisMuMuBinning.cxx:291 AliAnalysisMuMuBinning.cxx:292 AliAnalysisMuMuBinning.cxx:293 AliAnalysisMuMuBinning.cxx:294 AliAnalysisMuMuBinning.cxx:295 AliAnalysisMuMuBinning.cxx:296 AliAnalysisMuMuBinning.cxx:297 AliAnalysisMuMuBinning.cxx:298 AliAnalysisMuMuBinning.cxx:299 AliAnalysisMuMuBinning.cxx:300 AliAnalysisMuMuBinning.cxx:301 AliAnalysisMuMuBinning.cxx:302 AliAnalysisMuMuBinning.cxx:303 AliAnalysisMuMuBinning.cxx:304 AliAnalysisMuMuBinning.cxx:305 AliAnalysisMuMuBinning.cxx:306 AliAnalysisMuMuBinning.cxx:307 AliAnalysisMuMuBinning.cxx:308 AliAnalysisMuMuBinning.cxx:309 AliAnalysisMuMuBinning.cxx:310 AliAnalysisMuMuBinning.cxx:311 AliAnalysisMuMuBinning.cxx:312 AliAnalysisMuMuBinning.cxx:313 AliAnalysisMuMuBinning.cxx:314 AliAnalysisMuMuBinning.cxx:315 AliAnalysisMuMuBinning.cxx:316 AliAnalysisMuMuBinning.cxx:317 AliAnalysisMuMuBinning.cxx:318 AliAnalysisMuMuBinning.cxx:319 AliAnalysisMuMuBinning.cxx:320 AliAnalysisMuMuBinning.cxx:321 AliAnalysisMuMuBinning.cxx:322 AliAnalysisMuMuBinning.cxx:323 AliAnalysisMuMuBinning.cxx:324 AliAnalysisMuMuBinning.cxx:325 AliAnalysisMuMuBinning.cxx:326 AliAnalysisMuMuBinning.cxx:327 AliAnalysisMuMuBinning.cxx:328 AliAnalysisMuMuBinning.cxx:329 AliAnalysisMuMuBinning.cxx:330 AliAnalysisMuMuBinning.cxx:331 AliAnalysisMuMuBinning.cxx:332 AliAnalysisMuMuBinning.cxx:333 AliAnalysisMuMuBinning.cxx:334 AliAnalysisMuMuBinning.cxx:335 AliAnalysisMuMuBinning.cxx:336 AliAnalysisMuMuBinning.cxx:337 AliAnalysisMuMuBinning.cxx:338 AliAnalysisMuMuBinning.cxx:339 AliAnalysisMuMuBinning.cxx:340 AliAnalysisMuMuBinning.cxx:341 AliAnalysisMuMuBinning.cxx:342 AliAnalysisMuMuBinning.cxx:343 AliAnalysisMuMuBinning.cxx:344 AliAnalysisMuMuBinning.cxx:345 AliAnalysisMuMuBinning.cxx:346 AliAnalysisMuMuBinning.cxx:347 AliAnalysisMuMuBinning.cxx:348 AliAnalysisMuMuBinning.cxx:349 AliAnalysisMuMuBinning.cxx:350 AliAnalysisMuMuBinning.cxx:351 AliAnalysisMuMuBinning.cxx:352 AliAnalysisMuMuBinning.cxx:353 AliAnalysisMuMuBinning.cxx:354 AliAnalysisMuMuBinning.cxx:355 AliAnalysisMuMuBinning.cxx:356 AliAnalysisMuMuBinning.cxx:357 AliAnalysisMuMuBinning.cxx:358 AliAnalysisMuMuBinning.cxx:359 AliAnalysisMuMuBinning.cxx:360 AliAnalysisMuMuBinning.cxx:361 AliAnalysisMuMuBinning.cxx:362 AliAnalysisMuMuBinning.cxx:363 AliAnalysisMuMuBinning.cxx:364 AliAnalysisMuMuBinning.cxx:365 AliAnalysisMuMuBinning.cxx:366 AliAnalysisMuMuBinning.cxx:367 AliAnalysisMuMuBinning.cxx:368 AliAnalysisMuMuBinning.cxx:369 AliAnalysisMuMuBinning.cxx:370 AliAnalysisMuMuBinning.cxx:371 AliAnalysisMuMuBinning.cxx:372 AliAnalysisMuMuBinning.cxx:373 AliAnalysisMuMuBinning.cxx:374 AliAnalysisMuMuBinning.cxx:375 AliAnalysisMuMuBinning.cxx:376 AliAnalysisMuMuBinning.cxx:377 AliAnalysisMuMuBinning.cxx:378 AliAnalysisMuMuBinning.cxx:379 AliAnalysisMuMuBinning.cxx:380 AliAnalysisMuMuBinning.cxx:381 AliAnalysisMuMuBinning.cxx:382 AliAnalysisMuMuBinning.cxx:383 AliAnalysisMuMuBinning.cxx:384 AliAnalysisMuMuBinning.cxx:385 AliAnalysisMuMuBinning.cxx:386 AliAnalysisMuMuBinning.cxx:387 AliAnalysisMuMuBinning.cxx:388 AliAnalysisMuMuBinning.cxx:389 AliAnalysisMuMuBinning.cxx:390 AliAnalysisMuMuBinning.cxx:391 AliAnalysisMuMuBinning.cxx:392 AliAnalysisMuMuBinning.cxx:393 AliAnalysisMuMuBinning.cxx:394 AliAnalysisMuMuBinning.cxx:395 AliAnalysisMuMuBinning.cxx:396 AliAnalysisMuMuBinning.cxx:397 AliAnalysisMuMuBinning.cxx:398 AliAnalysisMuMuBinning.cxx:399 AliAnalysisMuMuBinning.cxx:400 AliAnalysisMuMuBinning.cxx:401 AliAnalysisMuMuBinning.cxx:402 AliAnalysisMuMuBinning.cxx:403 AliAnalysisMuMuBinning.cxx:404 AliAnalysisMuMuBinning.cxx:405 AliAnalysisMuMuBinning.cxx:406 AliAnalysisMuMuBinning.cxx:407 AliAnalysisMuMuBinning.cxx:408 AliAnalysisMuMuBinning.cxx:409 AliAnalysisMuMuBinning.cxx:410 AliAnalysisMuMuBinning.cxx:411 AliAnalysisMuMuBinning.cxx:412 AliAnalysisMuMuBinning.cxx:413 AliAnalysisMuMuBinning.cxx:414 AliAnalysisMuMuBinning.cxx:415 AliAnalysisMuMuBinning.cxx:416 AliAnalysisMuMuBinning.cxx:417 AliAnalysisMuMuBinning.cxx:418 AliAnalysisMuMuBinning.cxx:419 AliAnalysisMuMuBinning.cxx:420 AliAnalysisMuMuBinning.cxx:421 AliAnalysisMuMuBinning.cxx:422 AliAnalysisMuMuBinning.cxx:423 AliAnalysisMuMuBinning.cxx:424 AliAnalysisMuMuBinning.cxx:425 AliAnalysisMuMuBinning.cxx:426 AliAnalysisMuMuBinning.cxx:427 AliAnalysisMuMuBinning.cxx:428 AliAnalysisMuMuBinning.cxx:429 AliAnalysisMuMuBinning.cxx:430 AliAnalysisMuMuBinning.cxx:431 AliAnalysisMuMuBinning.cxx:432 AliAnalysisMuMuBinning.cxx:433 AliAnalysisMuMuBinning.cxx:434 AliAnalysisMuMuBinning.cxx:435 AliAnalysisMuMuBinning.cxx:436 AliAnalysisMuMuBinning.cxx:437 AliAnalysisMuMuBinning.cxx:438 AliAnalysisMuMuBinning.cxx:439 AliAnalysisMuMuBinning.cxx:440 AliAnalysisMuMuBinning.cxx:441 AliAnalysisMuMuBinning.cxx:442 AliAnalysisMuMuBinning.cxx:443 AliAnalysisMuMuBinning.cxx:444 AliAnalysisMuMuBinning.cxx:445 AliAnalysisMuMuBinning.cxx:446 AliAnalysisMuMuBinning.cxx:447 AliAnalysisMuMuBinning.cxx:448 AliAnalysisMuMuBinning.cxx:449 AliAnalysisMuMuBinning.cxx:450 AliAnalysisMuMuBinning.cxx:451 AliAnalysisMuMuBinning.cxx:452 AliAnalysisMuMuBinning.cxx:453 AliAnalysisMuMuBinning.cxx:454 AliAnalysisMuMuBinning.cxx:455 AliAnalysisMuMuBinning.cxx:456 AliAnalysisMuMuBinning.cxx:457 AliAnalysisMuMuBinning.cxx:458 AliAnalysisMuMuBinning.cxx:459 AliAnalysisMuMuBinning.cxx:460 AliAnalysisMuMuBinning.cxx:461 AliAnalysisMuMuBinning.cxx:462 AliAnalysisMuMuBinning.cxx:463 AliAnalysisMuMuBinning.cxx:464 AliAnalysisMuMuBinning.cxx:465 AliAnalysisMuMuBinning.cxx:466 AliAnalysisMuMuBinning.cxx:467 AliAnalysisMuMuBinning.cxx:468 AliAnalysisMuMuBinning.cxx:469 AliAnalysisMuMuBinning.cxx:470 AliAnalysisMuMuBinning.cxx:471 AliAnalysisMuMuBinning.cxx:472 AliAnalysisMuMuBinning.cxx:473 AliAnalysisMuMuBinning.cxx:474 AliAnalysisMuMuBinning.cxx:475 AliAnalysisMuMuBinning.cxx:476 AliAnalysisMuMuBinning.cxx:477 AliAnalysisMuMuBinning.cxx:478 AliAnalysisMuMuBinning.cxx:479 AliAnalysisMuMuBinning.cxx:480 AliAnalysisMuMuBinning.cxx:481 AliAnalysisMuMuBinning.cxx:482 AliAnalysisMuMuBinning.cxx:483 AliAnalysisMuMuBinning.cxx:484 AliAnalysisMuMuBinning.cxx:485 AliAnalysisMuMuBinning.cxx:486 AliAnalysisMuMuBinning.cxx:487 AliAnalysisMuMuBinning.cxx:488 AliAnalysisMuMuBinning.cxx:489 AliAnalysisMuMuBinning.cxx:490 AliAnalysisMuMuBinning.cxx:491 AliAnalysisMuMuBinning.cxx:492 AliAnalysisMuMuBinning.cxx:493 AliAnalysisMuMuBinning.cxx:494 AliAnalysisMuMuBinning.cxx:495 AliAnalysisMuMuBinning.cxx:496 AliAnalysisMuMuBinning.cxx:497 AliAnalysisMuMuBinning.cxx:498 AliAnalysisMuMuBinning.cxx:499 AliAnalysisMuMuBinning.cxx:500 AliAnalysisMuMuBinning.cxx:501 AliAnalysisMuMuBinning.cxx:502 AliAnalysisMuMuBinning.cxx:503 AliAnalysisMuMuBinning.cxx:504 AliAnalysisMuMuBinning.cxx:505 AliAnalysisMuMuBinning.cxx:506 AliAnalysisMuMuBinning.cxx:507 AliAnalysisMuMuBinning.cxx:508 AliAnalysisMuMuBinning.cxx:509 AliAnalysisMuMuBinning.cxx:510 AliAnalysisMuMuBinning.cxx:511 AliAnalysisMuMuBinning.cxx:512 AliAnalysisMuMuBinning.cxx:513 AliAnalysisMuMuBinning.cxx:514 AliAnalysisMuMuBinning.cxx:515 AliAnalysisMuMuBinning.cxx:516 AliAnalysisMuMuBinning.cxx:517 AliAnalysisMuMuBinning.cxx:518 AliAnalysisMuMuBinning.cxx:519 AliAnalysisMuMuBinning.cxx:520 AliAnalysisMuMuBinning.cxx:521 AliAnalysisMuMuBinning.cxx:522 AliAnalysisMuMuBinning.cxx:523 AliAnalysisMuMuBinning.cxx:524 AliAnalysisMuMuBinning.cxx:525 AliAnalysisMuMuBinning.cxx:526 AliAnalysisMuMuBinning.cxx:527 AliAnalysisMuMuBinning.cxx:528 AliAnalysisMuMuBinning.cxx:529 AliAnalysisMuMuBinning.cxx:530 AliAnalysisMuMuBinning.cxx:531 AliAnalysisMuMuBinning.cxx:532 AliAnalysisMuMuBinning.cxx:533 AliAnalysisMuMuBinning.cxx:534 AliAnalysisMuMuBinning.cxx:535 AliAnalysisMuMuBinning.cxx:536 AliAnalysisMuMuBinning.cxx:537 AliAnalysisMuMuBinning.cxx:538 AliAnalysisMuMuBinning.cxx:539 AliAnalysisMuMuBinning.cxx:540 AliAnalysisMuMuBinning.cxx:541 AliAnalysisMuMuBinning.cxx:542 AliAnalysisMuMuBinning.cxx:543 AliAnalysisMuMuBinning.cxx:544 AliAnalysisMuMuBinning.cxx:545 AliAnalysisMuMuBinning.cxx:546 AliAnalysisMuMuBinning.cxx:547 AliAnalysisMuMuBinning.cxx:548 AliAnalysisMuMuBinning.cxx:549 AliAnalysisMuMuBinning.cxx:550 AliAnalysisMuMuBinning.cxx:551 AliAnalysisMuMuBinning.cxx:552 AliAnalysisMuMuBinning.cxx:553 AliAnalysisMuMuBinning.cxx:554 AliAnalysisMuMuBinning.cxx:555 AliAnalysisMuMuBinning.cxx:556 AliAnalysisMuMuBinning.cxx:557 AliAnalysisMuMuBinning.cxx:558 AliAnalysisMuMuBinning.cxx:559 AliAnalysisMuMuBinning.cxx:560 AliAnalysisMuMuBinning.cxx:561 AliAnalysisMuMuBinning.cxx:562 AliAnalysisMuMuBinning.cxx:563 AliAnalysisMuMuBinning.cxx:564 AliAnalysisMuMuBinning.cxx:565 AliAnalysisMuMuBinning.cxx:566 AliAnalysisMuMuBinning.cxx:567 AliAnalysisMuMuBinning.cxx:568 AliAnalysisMuMuBinning.cxx:569 AliAnalysisMuMuBinning.cxx:570 AliAnalysisMuMuBinning.cxx:571 AliAnalysisMuMuBinning.cxx:572 AliAnalysisMuMuBinning.cxx:573 AliAnalysisMuMuBinning.cxx:574 AliAnalysisMuMuBinning.cxx:575 AliAnalysisMuMuBinning.cxx:576 AliAnalysisMuMuBinning.cxx:577 AliAnalysisMuMuBinning.cxx:578 AliAnalysisMuMuBinning.cxx:579 AliAnalysisMuMuBinning.cxx:580 AliAnalysisMuMuBinning.cxx:581 AliAnalysisMuMuBinning.cxx:582 AliAnalysisMuMuBinning.cxx:583 AliAnalysisMuMuBinning.cxx:584 AliAnalysisMuMuBinning.cxx:585 AliAnalysisMuMuBinning.cxx:586 AliAnalysisMuMuBinning.cxx:587 AliAnalysisMuMuBinning.cxx:588 AliAnalysisMuMuBinning.cxx:589 AliAnalysisMuMuBinning.cxx:590 AliAnalysisMuMuBinning.cxx:591 AliAnalysisMuMuBinning.cxx:592 AliAnalysisMuMuBinning.cxx:593 AliAnalysisMuMuBinning.cxx:594 AliAnalysisMuMuBinning.cxx:595 AliAnalysisMuMuBinning.cxx:596 AliAnalysisMuMuBinning.cxx:597 AliAnalysisMuMuBinning.cxx:598 AliAnalysisMuMuBinning.cxx:599 AliAnalysisMuMuBinning.cxx:600 AliAnalysisMuMuBinning.cxx:601 AliAnalysisMuMuBinning.cxx:602 AliAnalysisMuMuBinning.cxx:603 AliAnalysisMuMuBinning.cxx:604 AliAnalysisMuMuBinning.cxx:605 AliAnalysisMuMuBinning.cxx:606 AliAnalysisMuMuBinning.cxx:607 AliAnalysisMuMuBinning.cxx:608 AliAnalysisMuMuBinning.cxx:609 AliAnalysisMuMuBinning.cxx:610 AliAnalysisMuMuBinning.cxx:611 AliAnalysisMuMuBinning.cxx:612 AliAnalysisMuMuBinning.cxx:613 AliAnalysisMuMuBinning.cxx:614 AliAnalysisMuMuBinning.cxx:615 AliAnalysisMuMuBinning.cxx:616 AliAnalysisMuMuBinning.cxx:617 AliAnalysisMuMuBinning.cxx:618 AliAnalysisMuMuBinning.cxx:619 AliAnalysisMuMuBinning.cxx:620 AliAnalysisMuMuBinning.cxx:621 AliAnalysisMuMuBinning.cxx:622 AliAnalysisMuMuBinning.cxx:623 AliAnalysisMuMuBinning.cxx:624 AliAnalysisMuMuBinning.cxx:625 AliAnalysisMuMuBinning.cxx:626 AliAnalysisMuMuBinning.cxx:627 AliAnalysisMuMuBinning.cxx:628 AliAnalysisMuMuBinning.cxx:629 AliAnalysisMuMuBinning.cxx:630 AliAnalysisMuMuBinning.cxx:631 AliAnalysisMuMuBinning.cxx:632 AliAnalysisMuMuBinning.cxx:633 AliAnalysisMuMuBinning.cxx:634 AliAnalysisMuMuBinning.cxx:635 AliAnalysisMuMuBinning.cxx:636 AliAnalysisMuMuBinning.cxx:637 AliAnalysisMuMuBinning.cxx:638 AliAnalysisMuMuBinning.cxx:639 AliAnalysisMuMuBinning.cxx:640 AliAnalysisMuMuBinning.cxx:641 AliAnalysisMuMuBinning.cxx:642 AliAnalysisMuMuBinning.cxx:643 AliAnalysisMuMuBinning.cxx:644 AliAnalysisMuMuBinning.cxx:645 AliAnalysisMuMuBinning.cxx:646 AliAnalysisMuMuBinning.cxx:647 AliAnalysisMuMuBinning.cxx:648 AliAnalysisMuMuBinning.cxx:649 AliAnalysisMuMuBinning.cxx:650 AliAnalysisMuMuBinning.cxx:651 AliAnalysisMuMuBinning.cxx:652 AliAnalysisMuMuBinning.cxx:653 AliAnalysisMuMuBinning.cxx:654 AliAnalysisMuMuBinning.cxx:655 AliAnalysisMuMuBinning.cxx:656 AliAnalysisMuMuBinning.cxx:657 AliAnalysisMuMuBinning.cxx:658 AliAnalysisMuMuBinning.cxx:659 AliAnalysisMuMuBinning.cxx:660 AliAnalysisMuMuBinning.cxx:661 AliAnalysisMuMuBinning.cxx:662 AliAnalysisMuMuBinning.cxx:663 AliAnalysisMuMuBinning.cxx:664 AliAnalysisMuMuBinning.cxx:665 AliAnalysisMuMuBinning.cxx:666 AliAnalysisMuMuBinning.cxx:667 AliAnalysisMuMuBinning.cxx:668 AliAnalysisMuMuBinning.cxx:669 AliAnalysisMuMuBinning.cxx:670 AliAnalysisMuMuBinning.cxx:671 AliAnalysisMuMuBinning.cxx:672 AliAnalysisMuMuBinning.cxx:673 AliAnalysisMuMuBinning.cxx:674 AliAnalysisMuMuBinning.cxx:675 AliAnalysisMuMuBinning.cxx:676 AliAnalysisMuMuBinning.cxx:677 AliAnalysisMuMuBinning.cxx:678 AliAnalysisMuMuBinning.cxx:679 AliAnalysisMuMuBinning.cxx:680 AliAnalysisMuMuBinning.cxx:681 AliAnalysisMuMuBinning.cxx:682 AliAnalysisMuMuBinning.cxx:683 AliAnalysisMuMuBinning.cxx:684 AliAnalysisMuMuBinning.cxx:685 AliAnalysisMuMuBinning.cxx:686 AliAnalysisMuMuBinning.cxx:687 AliAnalysisMuMuBinning.cxx:688 AliAnalysisMuMuBinning.cxx:689 AliAnalysisMuMuBinning.cxx:690 AliAnalysisMuMuBinning.cxx:691 AliAnalysisMuMuBinning.cxx:692 AliAnalysisMuMuBinning.cxx:693 AliAnalysisMuMuBinning.cxx:694 AliAnalysisMuMuBinning.cxx:695 AliAnalysisMuMuBinning.cxx:696 AliAnalysisMuMuBinning.cxx:697 AliAnalysisMuMuBinning.cxx:698 AliAnalysisMuMuBinning.cxx:699 AliAnalysisMuMuBinning.cxx:700 AliAnalysisMuMuBinning.cxx:701 AliAnalysisMuMuBinning.cxx:702 AliAnalysisMuMuBinning.cxx:703 AliAnalysisMuMuBinning.cxx:704 AliAnalysisMuMuBinning.cxx:705 AliAnalysisMuMuBinning.cxx:706 AliAnalysisMuMuBinning.cxx:707 AliAnalysisMuMuBinning.cxx:708 AliAnalysisMuMuBinning.cxx:709 AliAnalysisMuMuBinning.cxx:710 AliAnalysisMuMuBinning.cxx:711 AliAnalysisMuMuBinning.cxx:712 AliAnalysisMuMuBinning.cxx:713 AliAnalysisMuMuBinning.cxx:714 AliAnalysisMuMuBinning.cxx:715 AliAnalysisMuMuBinning.cxx:716 AliAnalysisMuMuBinning.cxx:717 AliAnalysisMuMuBinning.cxx:718 AliAnalysisMuMuBinning.cxx:719 AliAnalysisMuMuBinning.cxx:720 AliAnalysisMuMuBinning.cxx:721 AliAnalysisMuMuBinning.cxx:722 AliAnalysisMuMuBinning.cxx:723 AliAnalysisMuMuBinning.cxx:724 AliAnalysisMuMuBinning.cxx:725 AliAnalysisMuMuBinning.cxx:726 AliAnalysisMuMuBinning.cxx:727 AliAnalysisMuMuBinning.cxx:728 AliAnalysisMuMuBinning.cxx:729 AliAnalysisMuMuBinning.cxx:730 AliAnalysisMuMuBinning.cxx:731 AliAnalysisMuMuBinning.cxx:732 AliAnalysisMuMuBinning.cxx:733 AliAnalysisMuMuBinning.cxx:734 AliAnalysisMuMuBinning.cxx:735 AliAnalysisMuMuBinning.cxx:736 AliAnalysisMuMuBinning.cxx:737 AliAnalysisMuMuBinning.cxx:738 AliAnalysisMuMuBinning.cxx:739 AliAnalysisMuMuBinning.cxx:740 AliAnalysisMuMuBinning.cxx:741 AliAnalysisMuMuBinning.cxx:742 AliAnalysisMuMuBinning.cxx:743 AliAnalysisMuMuBinning.cxx:744 AliAnalysisMuMuBinning.cxx:745 AliAnalysisMuMuBinning.cxx:746 AliAnalysisMuMuBinning.cxx:747 AliAnalysisMuMuBinning.cxx:748 AliAnalysisMuMuBinning.cxx:749 AliAnalysisMuMuBinning.cxx:750 AliAnalysisMuMuBinning.cxx:751 AliAnalysisMuMuBinning.cxx:752 AliAnalysisMuMuBinning.cxx:753 AliAnalysisMuMuBinning.cxx:754 AliAnalysisMuMuBinning.cxx:755 AliAnalysisMuMuBinning.cxx:756 AliAnalysisMuMuBinning.cxx:757 AliAnalysisMuMuBinning.cxx:758 AliAnalysisMuMuBinning.cxx:759 AliAnalysisMuMuBinning.cxx:760 AliAnalysisMuMuBinning.cxx:761 AliAnalysisMuMuBinning.cxx:762 AliAnalysisMuMuBinning.cxx:763 AliAnalysisMuMuBinning.cxx:764 AliAnalysisMuMuBinning.cxx:765 AliAnalysisMuMuBinning.cxx:766 AliAnalysisMuMuBinning.cxx:767 AliAnalysisMuMuBinning.cxx:768 AliAnalysisMuMuBinning.cxx:769 AliAnalysisMuMuBinning.cxx:770 AliAnalysisMuMuBinning.cxx:771 AliAnalysisMuMuBinning.cxx:772 AliAnalysisMuMuBinning.cxx:773 AliAnalysisMuMuBinning.cxx:774 AliAnalysisMuMuBinning.cxx:775 AliAnalysisMuMuBinning.cxx:776 AliAnalysisMuMuBinning.cxx:777 AliAnalysisMuMuBinning.cxx:778 AliAnalysisMuMuBinning.cxx:779 AliAnalysisMuMuBinning.cxx:780 AliAnalysisMuMuBinning.cxx:781 AliAnalysisMuMuBinning.cxx:782 AliAnalysisMuMuBinning.cxx:783 AliAnalysisMuMuBinning.cxx:784 AliAnalysisMuMuBinning.cxx:785 AliAnalysisMuMuBinning.cxx:786 AliAnalysisMuMuBinning.cxx:787 AliAnalysisMuMuBinning.cxx:788 AliAnalysisMuMuBinning.cxx:789 AliAnalysisMuMuBinning.cxx:790 AliAnalysisMuMuBinning.cxx:791 AliAnalysisMuMuBinning.cxx:792 AliAnalysisMuMuBinning.cxx:793 AliAnalysisMuMuBinning.cxx:794 AliAnalysisMuMuBinning.cxx:795 AliAnalysisMuMuBinning.cxx:796 AliAnalysisMuMuBinning.cxx:797 AliAnalysisMuMuBinning.cxx:798 AliAnalysisMuMuBinning.cxx:799 AliAnalysisMuMuBinning.cxx:800 AliAnalysisMuMuBinning.cxx:801 AliAnalysisMuMuBinning.cxx:802 AliAnalysisMuMuBinning.cxx:803 AliAnalysisMuMuBinning.cxx:804 AliAnalysisMuMuBinning.cxx:805 AliAnalysisMuMuBinning.cxx:806 AliAnalysisMuMuBinning.cxx:807 AliAnalysisMuMuBinning.cxx:808 AliAnalysisMuMuBinning.cxx:809 AliAnalysisMuMuBinning.cxx:810 AliAnalysisMuMuBinning.cxx:811 AliAnalysisMuMuBinning.cxx:812 AliAnalysisMuMuBinning.cxx:813 AliAnalysisMuMuBinning.cxx:814 AliAnalysisMuMuBinning.cxx:815 AliAnalysisMuMuBinning.cxx:816 AliAnalysisMuMuBinning.cxx:817 AliAnalysisMuMuBinning.cxx:818 AliAnalysisMuMuBinning.cxx:819 AliAnalysisMuMuBinning.cxx:820 AliAnalysisMuMuBinning.cxx:821 AliAnalysisMuMuBinning.cxx:822 AliAnalysisMuMuBinning.cxx:823 AliAnalysisMuMuBinning.cxx:824 AliAnalysisMuMuBinning.cxx:825 AliAnalysisMuMuBinning.cxx:826 AliAnalysisMuMuBinning.cxx:827 AliAnalysisMuMuBinning.cxx:828 AliAnalysisMuMuBinning.cxx:829 AliAnalysisMuMuBinning.cxx:830 AliAnalysisMuMuBinning.cxx:831 AliAnalysisMuMuBinning.cxx:832 AliAnalysisMuMuBinning.cxx:833 AliAnalysisMuMuBinning.cxx:834 AliAnalysisMuMuBinning.cxx:835 AliAnalysisMuMuBinning.cxx:836 AliAnalysisMuMuBinning.cxx:837 AliAnalysisMuMuBinning.cxx:838 AliAnalysisMuMuBinning.cxx:839 AliAnalysisMuMuBinning.cxx:840 AliAnalysisMuMuBinning.cxx:841 AliAnalysisMuMuBinning.cxx:842 AliAnalysisMuMuBinning.cxx:843 AliAnalysisMuMuBinning.cxx:844 AliAnalysisMuMuBinning.cxx:845 AliAnalysisMuMuBinning.cxx:846 AliAnalysisMuMuBinning.cxx:847 AliAnalysisMuMuBinning.cxx:848 AliAnalysisMuMuBinning.cxx:849 AliAnalysisMuMuBinning.cxx:850 AliAnalysisMuMuBinning.cxx:851 AliAnalysisMuMuBinning.cxx:852 AliAnalysisMuMuBinning.cxx:853 AliAnalysisMuMuBinning.cxx:854 AliAnalysisMuMuBinning.cxx:855 AliAnalysisMuMuBinning.cxx:856 AliAnalysisMuMuBinning.cxx:857 AliAnalysisMuMuBinning.cxx:858 AliAnalysisMuMuBinning.cxx:859 AliAnalysisMuMuBinning.cxx:860 AliAnalysisMuMuBinning.cxx:861 AliAnalysisMuMuBinning.cxx:862 AliAnalysisMuMuBinning.cxx:863 AliAnalysisMuMuBinning.cxx:864 AliAnalysisMuMuBinning.cxx:865 AliAnalysisMuMuBinning.cxx:866 AliAnalysisMuMuBinning.cxx:867 AliAnalysisMuMuBinning.cxx:868 AliAnalysisMuMuBinning.cxx:869 AliAnalysisMuMuBinning.cxx:870 AliAnalysisMuMuBinning.cxx:871 AliAnalysisMuMuBinning.cxx:872 AliAnalysisMuMuBinning.cxx:873 AliAnalysisMuMuBinning.cxx:874 AliAnalysisMuMuBinning.cxx:875 AliAnalysisMuMuBinning.cxx:876 AliAnalysisMuMuBinning.cxx:877 AliAnalysisMuMuBinning.cxx:878 AliAnalysisMuMuBinning.cxx:879 AliAnalysisMuMuBinning.cxx:880 AliAnalysisMuMuBinning.cxx:881 AliAnalysisMuMuBinning.cxx:882 AliAnalysisMuMuBinning.cxx:883 AliAnalysisMuMuBinning.cxx:884