ROOT logo
void AliVertexerTracksTest(TString outname="AliVertexerTracksTest.root",
			   Bool_t tpconly=kTRUE,
			   Bool_t useMeanVtx=kFALSE,
			   Double_t nSigma=3.,
			   Int_t itsrefit=1,
			   Double_t maxd0z0=0.5,
			   Int_t minitscls=5,
			   Int_t mintracks=1,
			   Bool_t onlyfit=kFALSE) {
//------------------------------------------------------------------------
// Run vertex reconstruction and store results in histos and ntuple
//------------------------------------------------------------------------
// WITHOUT Kinematics.root
//
  AliGeomManager::LoadGeometry("geometry.root");

  if (gAlice) {
    delete AliRunLoader::Instance();
    delete gAlice; 
    gAlice=0;
  }
  
  AliRunLoader *rl = AliRunLoader::Open("galice.root");
  if (rl == 0x0) {
    cerr<<"Can not open session"<<endl;
    return;
  }
  Int_t retval = rl->LoadgAlice();
  if (retval) {
    cerr<<"LoadgAlice returned error"<<endl;
    delete rl;
    return;
  }
  retval = rl->LoadHeader();
  if (retval) {
    cerr<<"LoadHeader returned error"<<endl;
    delete rl;
    return;
  }
  gAlice=rl->GetAliRun();

  //rl->LoadKinematics();

  // Get field from galice.root
  AliMagF *fiel = (AliMagF*)gAlice->Field();
  // Set the conversion constant between curvature and Pt
  AliTracker::SetFieldMap(fiel,kTRUE);
 
  //**** Switch on the PID class
  AliPID pid;

  Int_t nEvents = (Int_t)rl->GetNumberOfEvents();

  Double_t truevtx[3];
  Double_t vtx[3]; 
  Double_t errvtx[3]; 
  Double_t diffX,diffY,diffZ;
  Double_t diffXerr,diffYerr,diffZerr;
  Float_t multiplicity;
  Float_t chi2red;
  Int_t ntracklets;
  Int_t nc;
  Int_t triggered;

  // Histograms
  TH1F *hdiffX = new TH1F("hdiffX","x_{found} - x_{true} [#mum]",1000,-5000,5000);
  TH1F *hdiffY = new TH1F("hdiffY","y_{found} - y_{true} [#mum]",1000,-5000,5000);
  TH1F *hdiffZ = new TH1F("hdiffZ","z_{found} - z_{true} [#mum]",1000,-5000,5000);

  TH1F *hdiffXerr = new TH1F("hdiffXerr","#Delta x/#sigma_{x}",100,-5,5);
  TH1F *hdiffYerr = new TH1F("hdiffYerr","#Delta y/#sigma_{y}",100,-5,5);
  TH1F *hdiffZerr = new TH1F("hdiffZerr","#Delta z/#sigma_{z}",100,-5,5);

  //TNtple
  TNtuple *ntVtxRes = new TNtuple("ntVtxRes","Vertex Resolution's Ntupla with multiplicity","triggered:ntracks:nitstracks:nitstracks5or6:diffX:diffY:diffZ:diffXerr:diffYerr:diffZerr:multiplicity:nc:zMC:chi2red");



  // -----------   Create vertexer --------------------------
  AliESDVertex *initVertex = 0;
  if(useMeanVtx) {
    // open the mean vertex
    TFile *invtx = new TFile("AliESDVertexMean.root");
    initVertex = (AliESDVertex*)invtx->Get("vtxmean");
    invtx->Close();
    delete invtx;
  } else {
    Double_t pos[3]={0.5,0.5,0.}; 
    Double_t err[3]={3.,3.,5.};
    initVertex = new AliESDVertex(pos,err);
  }
  AliVertexerTracks *vertexer = new AliVertexerTracks(AliTracker::GetBz());
  vertexer->SetDebug(1); // set to 1 to see what it does
  vertexer->SetVtxStart(initVertex);
  if(!useMeanVtx) vertexer->SetConstraintOff();
  if(onlyfit) vertexer->SetOnlyFitter();
  vertexer->SetNSigmad0(nSigma);
  if(!itsrefit || tpconly) vertexer->SetITSrefitNotRequired();
  vertexer->SetMinTracks(mintracks);
  vertexer->SetMinITSClusters(minitscls);
  vertexer->SetMaxd0z0(maxd0z0);
  //cout<<" Nsigma:  "<<vertexer->GetNSigmad0()<<endl;
  //----------------------------------------------------------
 

  if(gSystem->AccessPathName("AliESDs_itstpc.root",kFileExists)) {
    printf("AliESDs_itstpc.root not found!\n"); 
    return;
  }
  TFile *fin = TFile::Open("AliESDs_itstpc.root");
  AliESDEvent *esd = new AliESDEvent();
  TTree *esdTree = (TTree*)fin->Get("esdTree");
  if(!esdTree) return;
  esd->ReadFromTree(esdTree);
  Int_t events = esdTree->GetEntries();
  printf("Number of events in ESD tree: %d\n",events);

  TArrayF o;

  for(Int_t iev=0; iev<events; iev++) { //LOOP ON EVENTS
    printf("-------------- EVENT   %d --------------------\n",iev);

    diffX=999999;
    diffY=999999;
    diffZ=999999;
    diffXerr=999999;
    diffYerr=999999;
    diffZerr=999999;
    nc=0;

    //=================================================
    //         LOOK IN THE SIMULATION
    // true vertex position
    Int_t npart = (Int_t)gAlice->GetEvent(iev);
    printf("particles  %d\n",npart);
    AliHeader *header = (AliHeader*)rl->GetHeader();
    AliGenPythiaEventHeader *pyheader = (AliGenPythiaEventHeader*)header->GenEventHeader();
    pyheader->PrimaryVertex(o);
    truevtx[0] = o[0];
    truevtx[1] = o[1];
    truevtx[2] = o[2];
    printf("True Vertex: (%f, %f, %f)\n",o[0],o[1],o[2]);

    Double_t dNchdy = 0.;
    multiplicity=0.;
    Int_t nitstracks = 0;
    Int_t nitstracks1 = 0;
    Int_t nitstracks2 = 0;
    Int_t nitstracks3 = 0;
    Int_t nitstracks4 = 0;
    Int_t nitstracks5 = 0;
    Int_t nitstracks6 = 0;
    Int_t nitstracks5or6 = 0;


    esdTree->GetEvent(iev);
    triggered=0;
    chi2red=0.;
    ULong64_t triggerMask = esd->GetTriggerMask();
    if(triggerMask&32 && ((triggerMask&1) || (triggerMask&2))) triggered=1;

    // get # of tracklets
    AliMultiplicity *alimult = esd->GetMultiplicity();
    if(alimult) {
      ntracklets = alimult->GetNumberOfTracklets();
      for(Int_t l=0;l<alimult->GetNumberOfTracklets();l++) 
	if(alimult->GetDeltaPhi(l)<-9998.) ntracklets--;
    } else {
      ntracklets = 0;
    }
    printf("Number of SPD tracklets in ESD %d  :  %d\n",iev,ntracklets);
    multiplicity = (Float_t)ntracklets;

    Int_t ntracks = esd->GetNumberOfTracks();
    printf("Number of tracks in ESD %d   :   %d\n",iev,ntracks);
    if(ntracks==0) { 
      ntVtxRes->Fill(triggered,ntracks,nitstracks,nitstracks5or6,diffX,diffY,diffZ,diffXerr,diffYerr,diffZerr,multiplicity,nc,truevtx[2],chi2red); 
      continue; 
    }
    
    // VERTEX    
    AliESDVertex *vertex = 0;
    if(!tpconly) {
      vertex = (AliESDVertex*)vertexer->FindPrimaryVertex(esd);
    } else {
      TObjArray trkArrayOrig(ntracks);
      UShort_t *idOrig = new UShort_t[ntracks];
      const Double_t kRadius  = 2.8; //something less than the beam pipe radius
      const Double_t kMaxStep = 5;   //max step over the material
      Bool_t ok;
      Int_t nTrksOrig=0;
      for(Int_t i=0; i<ntracks; i++) {
	AliESDtrack *esdt = esd->GetTrack(i);
	AliExternalTrackParam *tpcTrack =
	  (AliExternalTrackParam *)esdt->GetTPCInnerParam();
	ok = kFALSE;
	if (tpcTrack)
	  ok = AliTracker::
	    PropagateTrackTo(tpcTrack,kRadius,esdt->GetMass(),kRadius,kTRUE);
	if (ok) {
	  trkArrayOrig.AddLast(tpcTrack);
	  idOrig[nTrksOrig]=(UShort_t)esdt->GetID();
	  nTrksOrig++;
	}
      }
      
      vertex = (AliESDVertex*)vertexer->FindPrimaryVertex(&trkArrayOrig,idOrig);
      delete [] idOrig;
    }


    nc = (Int_t)vertex->GetNContributors();
    if(nc>=2) chi2red = vertex->GetChi2toNDF(); 
    printf("nc = %d\n",nc);


    // count ITS tracks
    for(Int_t itrk=0; itrk<ntracks; itrk++) {
      AliESDtrack *esdtrack = (AliESDtrack*)esd->GetTrack(itrk);
      UInt_t status = esdtrack->GetStatus();
      // only tracks found also in ITS
      if(! (status&AliESDtrack::kITSin) ) continue;      
      nitstracks++;
      Int_t npts = (Int_t)esdtrack->GetNcls(0);
      if(npts==6) {nitstracks6++;nitstracks5or6++;}
      if(npts==5) {nitstracks5++;nitstracks5or6++;}
      if(npts==4) nitstracks4++;
      if(npts==3) nitstracks3++;
      if(npts==2) nitstracks2++;
      if(npts==1) nitstracks1++;
    }
    printf("Number of kITSin tracks in ESD %d   :   %d\n",iev,nitstracks);
    printf("           6 pts: %d\n",nitstracks6);
    printf("           5 pts: %d\n",nitstracks5);
    printf("           4 pts: %d\n",nitstracks4);
    printf("           3 pts: %d\n",nitstracks3);
    printf("           2 pts: %d\n",nitstracks2);
    printf("           1 pts: %d\n",nitstracks1);


    if(nc>=1) {
      vertex->GetXYZ(vtx);
      vertex->GetSigmaXYZ(errvtx); 
      diffX = 10000.* (vtx[0] - truevtx[0]);
      diffY = 10000.* (vtx[1] - truevtx[1]);
      diffZ = 10000.* (vtx[2] - truevtx[2]);
      hdiffX->Fill(diffX);
      hdiffY->Fill(diffY);
      hdiffZ->Fill(diffZ);
      diffXerr = diffX/errvtx[0]/10000.;
      diffYerr = diffY/errvtx[1]/10000.;
      diffZerr = diffZ/errvtx[2]/10000.;
      hdiffXerr->Fill(diffXerr);
      hdiffYerr->Fill(diffYerr);
      hdiffZerr->Fill(diffZerr);
    } 

    ntVtxRes->Fill(triggered,ntracks,nitstracks,nitstracks5or6,diffX,diffY,diffZ,diffXerr,diffYerr,diffZerr,multiplicity,(Float_t)nc,truevtx[2],chi2red);   

  } // END LOOP ON EVENTS


  delete esdTree;
  delete fin;
  delete vertexer;
  delete initVertex;

  // Output file
  TFile *fout  = new TFile(outname.Data(),"recreate");
  ntVtxRes->Write();
  hdiffX->Write();
  hdiffY->Write();
  hdiffZ->Write();
  hdiffXerr->Write();
  hdiffYerr->Write();
  hdiffZerr->Write();
  fout->Close();

  return;
} 
//------------------------------------------------------------------------
void VertexForOneEvent(Int_t iev=0,
		       Double_t nSigma=3.,
		       Bool_t useMeanVtx=kFALSE) {
//------------------------------------------------------------------------
// Run vertex reconstruction for event iev
//------------------------------------------------------------------------

  if (gAlice) {
    delete AliRunLoader::Instance();
    delete gAlice; 
    gAlice=0;
  }
  
  AliRunLoader *rl = AliRunLoader::Open("galice.root");
  if (rl == 0x0) {
    cerr<<"Can not open session"<<endl;
    return;
  }
  Int_t retval = rl->LoadgAlice();
  if (retval) {
    cerr<<"LoadgAlice returned error"<<endl;
    delete rl;
    return;
  }
  retval = rl->LoadHeader();
  if (retval) {
    cerr<<"LoadHeader returned error"<<endl;
    delete rl;
    return;
  }
  gAlice=rl->GetAliRun();
  //rl->LoadKinematics();
  // Get field from galice.root
  AliMagF *fiel = (AliMagF*)gAlice->Field();
  // Set the conversion constant between curvature and Pt
  AliTracker::SetFieldMap(fiel,kTRUE);
 
  Double_t truevtx[3];
  Double_t vtx[3]; 
  Double_t errvtx[3]; 
  Double_t diffX,diffY,diffZ;
  Double_t diffXerr,diffYerr,diffZerr;
  Double_t multiplicity;
  Int_t nc;

  // -----------   Create vertexer --------------------------
  AliESDVertex *initVertex = 0;
  if(useMeanVtx) {
    // open the mean vertex
    TFile *invtx = new TFile("AliESDVertexMean.root");
    initVertex = (AliESDVertex*)invtx->Get("vtxmean");
    invtx->Close();
    delete invtx;
  } else {
    Double_t pos[3]={0.,-0.,0.}; 
    Double_t err[3]={3.,3.,5.};
    initVertex = new AliESDVertex(pos,err);
  }
  AliVertexerTracks *vertexer = new AliVertexerTracks(AliTracker::GetBz());
  //vertexer->SetITSrefitNotRequired();
  vertexer->SetVtxStart(initVertex);
  if(!useMeanVtx) vertexer->SetConstraintOff();
  //vertexer->SetMinTracks(2);
  //vertexer->SetNSigmad0(nSigma);
  //cout<<" Nsigma:  "<<vertexer->GetNSigmad0()<<endl;
  //vertexer->SetFinderAlgorithm(2);
  //vertexer->SetDCAcut(0.1); // 1 mm
  vertexer->SetDebug(1); // set to 1 to see what it does
  //----------------------------------------------------------
 
  if(gSystem->AccessPathName("AliESDs.root",kFileExists)) {
    printf("AliESDs.root not found!\n"); 
    return;
  }
  TFile *fin = TFile::Open("AliESDs.root");
  AliESDEvent *esd = new AliESDEvent();
  TTree *esdTree = (TTree*)fin->Get("esdTree");
  if(!esdTree) return;
  esd->ReadFromTree(esdTree);

  TArrayF o;

  nc=0;

  //=================================================
  //         LOOK IN THE SIMULATION
  // true vertex position
  Int_t npart = (Int_t)gAlice->GetEvent(iev);
  printf("particles  %d\n",npart);
  AliHeader *header = (AliHeader*)rl->GetHeader();
  AliGenPythiaEventHeader *pyheader = (AliGenPythiaEventHeader*)header->GenEventHeader();
  pyheader->PrimaryVertex(o);
  truevtx[0] = o[0];
  truevtx[1] = o[1];
  truevtx[2] = o[2];
  printf("True Vertex: (%f, %f, %f)\n",o[0],o[1],o[2]);

  esdTree->GetEvent(iev);
  Int_t ntracks = esd->GetNumberOfTracks();
  printf("Number of tracks in ESD %d   :   %d\n",iev,ntracks);
    
  // VERTEX    
  AliESDVertex *vertex = (AliESDVertex*)vertexer->FindPrimaryVertex(esd);
  nc = (Int_t)vertex->GetNContributors();


  Int_t nitstracks = 0;
  Int_t nitstracks1 = 0;
  Int_t nitstracks2 = 0;
  Int_t nitstracks3 = 0;
  Int_t nitstracks4 = 0;
  Int_t nitstracks5 = 0;
  Int_t nitstracks6 = 0;
  Int_t nitstracks5or6 = 0;

  // count ITS tracks
  for(Int_t itrk=0; itrk<ntracks; itrk++) {
    AliESDtrack *esdtrack = (AliESDtrack*)esd->GetTrack(itrk);
    UInt_t status = esdtrack->GetStatus();
    // only tracks found also in ITS
    if(! (status&AliESDtrack::kITSrefit) ) continue;      
    nitstracks++;
    Int_t npts = (Int_t)esdtrack->GetNcls(0);
    if(npts==6) {nitstracks6++;nitstracks5or6++;}
    if(npts==5) {nitstracks5++;nitstracks5or6++;}
    if(npts==4) nitstracks4++;
    if(npts==3) nitstracks3++;
    if(npts==2) nitstracks2++;
    if(npts==1) nitstracks1++;
  }
  printf("Number of kITSrefit tracks in ESD %d   :   %d\n",iev,nitstracks);
  printf("           6 pts: %d\n",nitstracks6);
  printf("           5 pts: %d\n",nitstracks5);
  printf("           4 pts: %d\n",nitstracks4);
  printf("           3 pts: %d\n",nitstracks3);
  printf("           2 pts: %d\n",nitstracks2);
  printf("           1 pts: %d\n",nitstracks1);
  

  delete esdTree;
  delete fin;
  delete vertexer;
  delete initVertex;

  return;
} 
//----------------------------------------------------------------------------
Double_t FitFunc(Double_t *x,Double_t *par) {
  return par[0]+par[1]/TMath::Sqrt(x[0]);
}
Int_t GetBin(Float_t mult) {
  if(mult<5.)  return 0;
  if(mult<7.)  return 1;
  if(mult<12.) return 2;
  if(mult<15.) return 3;
  if(mult<22.) return 4;
  return 5;
}
Int_t GetBinTracklets(Float_t tracklets) {
  if(tracklets<2.*5.)  return 0;
  if(tracklets<2.*7.)  return 1;
  if(tracklets<2.*12.) return 2;
  if(tracklets<2.*15.) return 3;
  if(tracklets<2.*22.) return 4;
  return 5;
}
Int_t GetBinZ(Float_t z) {
  if(z<-13.) return 0;
  if(z<-11.) return 1;
  if(z<-9.) return 2;
  if(z<-7.) return 3;
  if(z<-5.) return 4;
  if(z<-3.) return 5;
  if(z<-1.) return 6;
  if(z<1.) return 7;
  if(z<3.) return 8;
  if(z<5.) return 9;
  if(z<7.) return 10;
  if(z<9.) return 11;
  if(z<11.) return 12;
  if(z<13.) return 13;
  return 14;
}
//----------------------------------------------------------------------------
void PlotVtxRes(TString inname="AliVertexerTracksTest.root",
		Bool_t tpconly=kFALSE) {
  //---------------------------------------------------------------------
  // Plot efficiency, resolutions, pulls 
  // [at least 10k pp events are needed]
  //---------------------------------------------------------------------

  gStyle->SetOptStat(0);
  gStyle->SetOptFit(10001);

  Float_t zMCmin=0.;
  Float_t zMCmax=15.;
  Float_t ncminforzshift=1.;
  Float_t maxdiffx = 1e3;
  Float_t rangefactor=1.;
  if(tpconly) {
    maxdiffx *= 1e2;
    rangefactor = 15.;
  }

  Int_t   nEvVtx=0;
  Int_t   nEvNoVtx=0;
  Int_t   ev,nUsedTrks;
  Float_t nESDTrks,nTrks,nTrks5or6,ntracklets;
  Float_t diffX,diffY,diffZ,diffXerr,diffYerr,diffZerr,zMC,nc;
  Float_t triggered;


  //
  // HISTOGRAMS
  //
  TH1F *hdx = new TH1F("hdx","",50,-600*rangefactor,600*rangefactor);
  hdx->SetXTitle("#Delta x [#mu m]");
  hdx->SetYTitle("events");
  //
  TH1F *hdy = new TH1F("hdy","",50,-600*rangefactor,600*rangefactor);
  hdy->SetXTitle("#Delta y [#mu m]");
  hdy->SetYTitle("events");
  //
  TH1F *hdz = new TH1F("hdz","",200,-600*rangefactor,600*rangefactor);
  hdz->SetXTitle("#Delta z [#mu m]");
  hdz->SetYTitle("events");
  //
  TH1F *hzMCVtx = new TH1F("hzMCVtx","events w/ vertex",30,-15,15);
  hzMCVtx->SetXTitle("z_{true} [cm]");
  hzMCVtx->SetYTitle("events");
  hzMCVtx->Sumw2();
  //
  TH1F *hzMCNoVtx = new TH1F("hzMCNoVtx","events w/o vertex",30,-15,15);
  hzMCNoVtx->SetXTitle("z_{true} [cm]");
  hzMCNoVtx->SetYTitle("events");
  hzMCNoVtx->Sumw2();
  //
  TH1F *hTrackletsVtx = new TH1F("hTrackletsVtx","events w/ vertex",51,-0.5,50.5);
  hTrackletsVtx->SetXTitle("SPD tracklets");
  hTrackletsVtx->SetYTitle("events");
  //
  TH1F *hTrackletsNoVtx = new TH1F("hTrackletsNoVtx","events w/o vertex",51,-0.5,50.5);
  hTrackletsNoVtx->SetXTitle("SPD tracklets");
  hTrackletsNoVtx->SetYTitle("events");
  //
  TH1F *hTracksVtx = new TH1F("hTracksVtx","events w/ vertex",51,-0.5,50.5);
  hTracksVtx->SetXTitle("Number of reco tracks in TPC&ITS");
  hTracksVtx->SetYTitle("events");
  //
  TH1F *hTracksNoVtx = new TH1F("hTracksNoVtx","events w/o vertex",51,-0.5,50.5);
  hTracksNoVtx->SetXTitle("Number of reco tracks in TPC&ITS");
  hTracksNoVtx->SetYTitle("events");
  //
  TH1F *hTracksVtx5or6 = new TH1F("hTracksVtx5or6","events w/ vertex",51,-0.5,50.5);
  hTracksVtx5or6->SetXTitle("Number of reco tracks in TPC&ITS(cls>=5)");
  hTracksVtx5or6->SetYTitle("events");
  //
  TH1F *hTracksNoVtx5or6 = new TH1F("hTracksNoVtx5or6","events w/o vertex",51,-0.5,50.5);
  hTracksNoVtx5or6->SetXTitle("Number of reco tracks in TPC&ITS(cls>=5)");
  hTracksNoVtx5or6->SetYTitle("events");
  //
  TH1F *hPullsx = new TH1F("hPullsx","",50,-7.,7.);
  hPullsx->SetXTitle("#Delta x/#sqrt{<x,x>}");
  hPullsx->SetYTitle("events");
  //
  TH1F *hPullsy = new TH1F("hPullsy","",50,-7.,7.);
  hPullsy->SetXTitle("#Delta y/#sqrt{<y,y>}");
  hPullsy->SetYTitle("events");
  //
  TH1F *hPullsz = new TH1F("hPullsz","",50,-7.,7.);
  hPullsz->SetXTitle("#Delta z/#sqrt{<z,z>}");
  hPullsz->SetYTitle("events");
  //
  TProfile *hntrackletsVSzMC = new TProfile("hntrackletsVSzMC","",30,-15,15,0,30);
  hntrackletsVSzMC->SetXTitle("z_{true} [cm]");
  hntrackletsVSzMC->SetYTitle("<SPD tracklets>");
  //
  TProfile *hnitstracksVSzMC = new TProfile("hnitstracksVSzMC","",30,-15,15,0,30);
  hnitstracksVSzMC->SetXTitle("z_{true} [cm]");
  hnitstracksVSzMC->SetYTitle("<tracks TPC&ITS>");
  //
  TProfile *hnitstracks5or6VSzMC = new TProfile("hnitstracks5or6VSzMC","",30,-15,15,0,30);
  hnitstracks5or6VSzMC->SetXTitle("z_{true} [cm]");
  hnitstracks5or6VSzMC->SetYTitle("<tracks TPC&ITS(cls>=5)>");

  Double_t mult[6]={0,0,0,0,0,0};
  Double_t mult2[6]={0,0,0,0,0,0};
  Double_t sigmamult[6]={0,0,0,0,0,0};
  Double_t sigmamult2[6]={0,0,0,0,0,0};
  Double_t tottracks[6]={0,0,0,0,0,0};
  Double_t fittrks[6]={0,0,0,0,0,0};
  Double_t tracks[6]={0,0,0,0,0,0};
  Double_t etracks[6]={0,0,0,0,0,0};
  Double_t xres[6]={0,0,0,0,0,0};
  Double_t exres[6]={0,0,0,0,0,0};
  Double_t yres[6]={0,0,0,0,0,0};
  Double_t eyres[6]={0,0,0,0,0,0};
  Double_t zres[6]={0,0,0,0,0,0};
  Double_t ezres[6]={0,0,0,0,0,0};
  Double_t xpull[6]={0,0,0,0,0,0};
  Double_t expull[6]={0,0,0,0,0,0};
  Double_t ypull[6]={0,0,0,0,0,0};
  Double_t eypull[6]={0,0,0,0,0,0};
  Double_t zpull[6]={0,0,0,0,0,0};
  Double_t ezpull[6]={0,0,0,0,0,0};
  Int_t    evts[6]={0,0,0,0,0,0};
  Int_t    totevts[6]={0,0,0,0,0,0};
  Int_t    vtx[6]={0,0,0,0,0,0};
  Int_t    all[6]={0,0,0,0,0,0};
  Double_t probVtx[6]={0,0,0,0,0,0};
  Double_t eprobVtx[6]={0,0,0,0,0,0};
  Int_t    bin,zbin;
  //
  // OTHER HISTOGRAMS
  //
  TH1F *hdx0 = new TH1F("hdx0","x resolution - bin 0",50,-500*rangefactor,500*rangefactor);
  TH1F *hdx1 = new TH1F("hdx1","x resolution - bin 1",50,-500*rangefactor,500*rangefactor);
  TH1F *hdx2 = new TH1F("hdx2","x resolution - bin 2",50,-500*rangefactor,500*rangefactor);
  TH1F *hdx3 = new TH1F("hdx3","x resolution - bin 3",50,-400*rangefactor,400*rangefactor);
  TH1F *hdx4 = new TH1F("hdx4","x resolution - bin 4",50,-300*rangefactor,300*rangefactor);
  TH1F *hdx5 = new TH1F("hdx5","x resolution - bin 5",50,-300*rangefactor,300*rangefactor);
  TH1F *hdy0 = new TH1F("hdy0","y resolution - bin 0",50,-500*rangefactor,500*rangefactor);
  TH1F *hdy1 = new TH1F("hdy1","y resolution - bin 1",50,-500*rangefactor,500*rangefactor);
  TH1F *hdy2 = new TH1F("hdy2","y resolution - bin 2",50,-500*rangefactor,500*rangefactor);
  TH1F *hdy3 = new TH1F("hdy3","y resolution - bin 3",50,-400*rangefactor,400*rangefactor);
  TH1F *hdy4 = new TH1F("hdy4","y resolution - bin 4",50,-300*rangefactor,300*rangefactor);
  TH1F *hdy5 = new TH1F("hdy5","y resolution - bin 5",50,-300*rangefactor,300*rangefactor);
  TH1F *hdz0 = new TH1F("hdz0","z resolution - bin 0",50,-1000*rangefactor,1000*rangefactor);
  TH1F *hdz1 = new TH1F("hdz1","z resolution - bin 1",50,-800*rangefactor,800*rangefactor);
  TH1F *hdz2 = new TH1F("hdz2","z resolution - bin 2",50,-800*rangefactor,800*rangefactor);
  TH1F *hdz3 = new TH1F("hdz3","z resolution - bin 3",50,-600*rangefactor,600*rangefactor);
  TH1F *hdz4 = new TH1F("hdz4","z resolution - bin 4",50,-500*rangefactor,500*rangefactor);
  TH1F *hdz5 = new TH1F("hdz5","z resolution - bin 5",50,-500*rangefactor,500*rangefactor);
  //
  TH1F *hdz_z = NULL; hdz_z = new TH1F[15];
  for(Int_t l=0;l<15;l++) hdz_z[l] = *hdz;


  TH1F *hpx0 = new TH1F("hpx0","x pull - bin 0",50,-7,7);
  TH1F *hpx1 = new TH1F("hpx1","x pull - bin 1",50,-7,7);
  TH1F *hpx2 = new TH1F("hpx2","x pull - bin 2",50,-7,7);
  TH1F *hpx3 = new TH1F("hpx3","x pull - bin 3",50,-7,7);
  TH1F *hpx4 = new TH1F("hpx4","x pull - bin 4",50,-7,7);
  TH1F *hpx5 = new TH1F("hpx5","x pull - bin 5",50,-7,7);
  TH1F *hpy0 = new TH1F("hpy0","y pull - bin 0",50,-7,7);
  TH1F *hpy1 = new TH1F("hpy1","y pull - bin 1",50,-7,7);
  TH1F *hpy2 = new TH1F("hpy2","y pull - bin 2",50,-7,7);
  TH1F *hpy3 = new TH1F("hpy3","y pull - bin 3",50,-7,7);
  TH1F *hpy4 = new TH1F("hpy4","y pull - bin 4",50,-7,7);
  TH1F *hpy5 = new TH1F("hpy5","y pull - bin 5",50,-7,7);
  TH1F *hpz0 = new TH1F("hpz0","z pull - bin 0",50,-7,7);
  TH1F *hpz1 = new TH1F("hpz1","z pull - bin 1",50,-7,7);
  TH1F *hpz2 = new TH1F("hpz2","z pull - bin 2",50,-7,7);
  TH1F *hpz3 = new TH1F("hpz3","z pull - bin 3",50,-7,7);
  TH1F *hpz4 = new TH1F("hpz4","z pull - bin 4",50,-7,7);
  TH1F *hpz5 = new TH1F("hpz5","z pull - bin 5",50,-7,7);


  TH1F *hmult = new TH1F("hmult","hmult",50,-0.5,49.5);

  TFile *in = new TFile(inname.Data());
  TNtuple *nt = (TNtuple*)in->Get("ntVtxRes");
  nt->SetBranchAddress("triggered",&triggered);
  nt->SetBranchAddress("ntracks",&nESDTrks);
  nt->SetBranchAddress("nitstracks",&nTrks);
  nt->SetBranchAddress("nitstracks5or6",&nTrks5or6);
  nt->SetBranchAddress("diffX",&diffX);
  nt->SetBranchAddress("diffY",&diffY);
  nt->SetBranchAddress("diffZ",&diffZ);
  nt->SetBranchAddress("diffXerr",&diffXerr);
  nt->SetBranchAddress("diffYerr",&diffYerr);
  nt->SetBranchAddress("diffZerr",&diffZerr);
  nt->SetBranchAddress("multiplicity",&ntracklets);
  nt->SetBranchAddress("zMC",&zMC);
  nt->SetBranchAddress("nc",&nc);
  Int_t entries = (Int_t)nt->GetEntries();
  Int_t nbytes=0;

  for(Int_t i=0; i<entries; i++) {
    nbytes += nt->GetEvent(i);
    // only triggered events
    //    if(triggered<0.5) continue;
    // consider only events with zMCmin<|zMC|<zMCmax
    if(TMath::Abs(zMC)<zMCmin || TMath::Abs(zMC)>zMCmax) continue;
    //
    bin = GetBinTracklets(ntracklets);
    zbin = GetBinZ(zMC);
    mult[bin] += ntracklets;
    hmult->Fill(ntracklets);
    totevts[bin]++;
    hntrackletsVSzMC->Fill(zMC,ntracklets);
    hnitstracksVSzMC->Fill(zMC,nTrks);
    hnitstracks5or6VSzMC->Fill(zMC,nTrks5or6);
    if(TMath::Abs(diffX) < maxdiffx) { // vtx found - closer than maxdiffx micron
      nEvVtx++;
      mult2[bin] += ntracklets;
      vtx[bin]++;
      tottracks[bin] += nTrks;
      evts[bin]++;
      if(bin==0) hdx0->Fill(diffX);
      if(bin==1) hdx1->Fill(diffX);
      if(bin==2) hdx2->Fill(diffX);
      if(bin==3) hdx3->Fill(diffX);
      if(bin==4) hdx4->Fill(diffX);
      if(bin==5) hdx5->Fill(diffX);
      if(bin==0) hdy0->Fill(diffY);
      if(bin==1) hdy1->Fill(diffY);
      if(bin==2) hdy2->Fill(diffY);
      if(bin==3) hdy3->Fill(diffY);
      if(bin==4) hdy4->Fill(diffY);
      if(bin==5) hdy5->Fill(diffY);
      if(bin==0) hdz0->Fill(diffZ);
      if(bin==1) hdz1->Fill(diffZ);
      if(bin==2) hdz2->Fill(diffZ);
      if(bin==3) hdz3->Fill(diffZ);
      if(bin==4) hdz4->Fill(diffZ);
      if(bin==5) hdz5->Fill(diffZ);
      hdx->Fill(diffX);
      hdy->Fill(diffY);
      hdz->Fill(diffZ);
      if(nc>=ncminforzshift) hdz_z[zbin].Fill(diffZ);
      hzMCVtx->Fill(zMC);
      hTrackletsVtx->Fill(ntracklets);
      hTracksVtx->Fill(nTrks);
      hTracksVtx5or6->Fill(nTrks5or6);
      hPullsx->Fill(diffXerr);
      hPullsy->Fill(diffYerr);
      hPullsz->Fill(diffZerr);
      if(bin==0) hpx0->Fill(diffXerr);
      if(bin==1) hpx1->Fill(diffXerr);
      if(bin==2) hpx2->Fill(diffXerr);
      if(bin==3) hpx3->Fill(diffXerr);
      if(bin==4) hpx4->Fill(diffXerr);
      if(bin==5) hpx5->Fill(diffXerr);
      if(bin==0) hpy0->Fill(diffYerr);
      if(bin==1) hpy1->Fill(diffYerr);
      if(bin==2) hpy2->Fill(diffYerr);
      if(bin==3) hpy3->Fill(diffYerr);
      if(bin==4) hpy4->Fill(diffYerr);
      if(bin==5) hpy5->Fill(diffYerr);
      if(bin==0) hpz0->Fill(diffZerr);
      if(bin==1) hpz1->Fill(diffZerr);
      if(bin==2) hpz2->Fill(diffZerr);
      if(bin==3) hpz3->Fill(diffZerr);
      if(bin==4) hpz4->Fill(diffZerr);
      if(bin==5) hpz5->Fill(diffZerr);
    } else {
      nEvNoVtx++;
      hzMCNoVtx->Fill(zMC);
      hTrackletsNoVtx->Fill(ntracklets);
      hTracksNoVtx->Fill(nTrks);
      hTracksNoVtx5or6->Fill(nTrks5or6);
    }
    all[bin]++;
  }


  for(Int_t k=0;k<6;k++) {
    mult2[k]      /= evts[k];
    mult[k]      /= totevts[k];
    tottracks[k] /= evts[k];
    probVtx[k]    = (Double_t)vtx[k]/all[k];
    eprobVtx[k]   = (Double_t)vtx[k]/all[k]/all[k]+(Double_t)vtx[k]*vtx[k]/all[k]/all[k]/all[k];
    eprobVtx[k] = TMath::Sqrt(eprobVtx[k]); 
  }

  // calculate spread in multiplicity
  for(Int_t i=0; i<entries; i++) {
    nbytes += nt->GetEvent(i);
    bin = GetBinTracklets(ntracklets);
    sigmamult[bin] += (ntracklets-mult[bin])*(ntracklets-mult[bin])/totevts[bin];
    if(diffX < 90000.) sigmamult2[bin] += (ntracklets-mult2[bin])*(ntracklets-mult2[bin])/evts[bin];
  }

  for(Int_t k=0;k<6;k++) {
    sigmamult[k]  = TMath::Sqrt(sigmamult[k]);
    sigmamult2[k] = TMath::Sqrt(sigmamult2[k]);
  }

  // fraction of found vertices
  Float_t frac = (Float_t)nEvVtx/(nEvVtx+nEvNoVtx);
  printf(" Fraction of events with vertex: %f\n",frac);


  // FIT FUNCTIONS
  TF1 *g = new TF1("g","gaus");
  g->SetLineWidth(3);
  TF1 *line = new TF1("line","pol1");
  line->SetLineWidth(3);
  TF1 *func = new TF1("func",FitFunc,2,80,2);
  func->SetLineWidth(1);

  Double_t x1,y1,sigmafit;
  Char_t message[100];

  //
  //            DRAW PLOTS
  //
  gStyle->SetOptFit(1111);
  
  // tracks VS zMC
  TCanvas *c0 = new TCanvas("c0","c0",0,0,1000,400);
  c0->Divide(3,1);
  c0->cd(1); 
  hntrackletsVSzMC->SetMinimum(0);
  hntrackletsVSzMC->SetMaximum(14);
  hntrackletsVSzMC->Draw("profs");
  c0->cd(2); 
  hnitstracksVSzMC->SetMinimum(0);
  hnitstracksVSzMC->SetMaximum(14);
  hnitstracksVSzMC->Draw("profs");
  c0->cd(3); 
  hnitstracks5or6VSzMC->SetMinimum(0);
  hnitstracks5or6VSzMC->SetMaximum(14);
  hnitstracks5or6VSzMC->Draw("profs");


  // Tracks in ITS for events w/ and w/o vertex
  TCanvas *c1 = new TCanvas("c1","c1",0,0,1000,500);
  c1->Divide(2,1);
  c1->cd(1); 
  hTracksVtx->Draw();
  c1->cd(2); 
  hTracksNoVtx->Draw();

  // probability vs ntracklets
  TCanvas *c1a = new TCanvas("c1a","c1a",0,0,500,500);
  TH1F *hTotTracklets = (TH1F*)hTrackletsVtx->Clone("hTotTracklets");
  hTotTracklets->Add(hTrackletsNoVtx);
  TH1F *hProbTracklets = (TH1F*)hTrackletsVtx->Clone("hProbTracklets");
  hProbTracklets->Divide(hTotTracklets);
  hProbTracklets->SetYTitle("Probability");
  hProbTracklets->SetTitle("Probability to find the vertex");
  hProbTracklets->Draw();

  // probability vs ntracks
  TCanvas *c1b = new TCanvas("c1b","c1b",0,0,500,500);
  TH1F *hTotTracks = (TH1F*)hTracksVtx->Clone("hTotTracks");
  hTotTracks->Add(hTracksNoVtx);
  TH1F *hProbTracks = (TH1F*)hTracksVtx->Clone("hProbTracks");
  hProbTracks->Divide(hTotTracks);
  hProbTracks->SetYTitle("Probability");
  hProbTracks->SetTitle("Probability to find the vertex");
  hProbTracks->Draw();

  TCanvas *c1c = new TCanvas("c1c","c1c",0,0,500,500);
  TH1F *hTotTracks5or6 = (TH1F*)hTracksVtx5or6->Clone("hTotTracks5or6");
  hTotTracks5or6->Add(hTracksNoVtx5or6);
  TH1F *hProbTracks5or6 = (TH1F*)hTracksVtx5or6->Clone("hProbTracks5or6");
  hProbTracks5or6->Divide(hTotTracks5or6);
  hProbTracks5or6->SetYTitle("Probability");
  hProbTracks5or6->SetTitle("Probability to find the vertex");
  hProbTracks5or6->Draw();


  // probability vs zMC
  TCanvas *c1e = new TCanvas("c1e","c1e",0,0,500,500);
  TH1F *hTotzMC = (TH1F*)hzMCVtx->Clone("hTotzMC");
  hTotzMC->Add(hzMCNoVtx);
  TH1F *hProbzMC = (TH1F*)hzMCVtx->Clone("hProbzMC");
  hProbzMC->Divide(hTotzMC);
  hProbzMC->SetYTitle("Probability");
  hProbzMC->SetTitle("Probability to find the vertex");
  hProbzMC->Draw();

  // Global resolutions
  TCanvas *c2 = new TCanvas("c2","c2",0,0,1000,400);
  c2->Divide(3,1);
  c2->cd(1); 
  hdx->Draw();
  g->SetRange(-1.*hdx->GetRMS(),+1.*hdx->GetRMS());
  hdx->Fit("g","R");
  c2->cd(2); 
  hdy->Draw();
  g->SetRange(-1.*hdy->GetRMS(),+1.*hdy->GetRMS());
  hdy->Fit("g","R");
  c2->cd(3); 
  hdz->Draw();
  g->SetRange(-1.*hdz->GetRMS(),+1.*hdz->GetRMS());
  hdz->Fit("g","R");

  // Pulls
  TCanvas *c4 = new TCanvas("c4","c4",0,0,1000,400);
  c4->Divide(3,1);
  c4->cd(1); 
  hPullsx->Draw();
  g->SetRange(-3.*hPullsx->GetRMS(),+3.*hPullsx->GetRMS());
  hPullsx->Fit("g","R");
  c4->cd(2); 
  hPullsy->Draw();
  g->SetRange(-3.*hPullsy->GetRMS(),+3.*hPullsy->GetRMS());
  hPullsy->Fit("g","R");
  c4->cd(3); 
  hPullsz->Draw();
  g->SetRange(-3.*hPullsz->GetRMS(),+3.*hPullsz->GetRMS());
  hPullsz->Fit("g","R");
  
  // probability VS multiplicity
  TCanvas *c5 = new TCanvas("c5","c5",0,0,600,500);
  TH2F *fr5 = new TH2F("fr5","",2,0,80,2,0,1.1); 
  fr5->SetXTitle("SPD tracklets");
  fr5->SetYTitle("Probability");
  fr5->Draw();
  TGraphErrors *gr5 = new TGraphErrors(6,mult,probVtx,sigmamult,eprobVtx);
  gr5->Draw("p");
  gr5->SetMarkerStyle(21);

  //
  // resolutions VS multiplicity
  //
  // X
  TCanvas *ax = new TCanvas("ax","ax",0,0,900,700);
  ax->Divide(3,2);
  ax->cd(1); 
  hdx0->Draw(); 
  g->SetRange(-3.*hdx0->GetRMS(),+3.*hdx0->GetRMS());
  hdx0->Fit("g","Q"); 
  xres[0]=g->GetParameter(2);
  exres[0]=g->GetParError(2);
  ax->cd(2); 
  hdx1->Draw(); 
  g->SetRange(-3.*hdx1->GetRMS(),+3.*hdx1->GetRMS());
  hdx1->Fit("g","Q"); 
  xres[1]=g->GetParameter(2);
  exres[1]=g->GetParError(2);
  ax->cd(3); 
  hdx2->Draw(); 
  g->SetRange(-3.*hdx2->GetRMS(),+3.*hdx2->GetRMS());
  hdx2->Fit("g","Q"); 
  xres[2]=g->GetParameter(2);
  exres[2]=g->GetParError(2);
  ax->cd(4); 
  hdx3->Draw();
  g->SetRange(-3.*hdx3->GetRMS(),+3.*hdx3->GetRMS());
  hdx3->Fit("g","Q"); 
  xres[3]=g->GetParameter(2);
  exres[3]=g->GetParError(2);
  ax->cd(5); 
  hdx4->Draw();
  g->SetRange(-3.*hdx4->GetRMS(),+3.*hdx4->GetRMS());
  hdx4->Fit("g","Q");
  xres[4]=g->GetParameter(2);
  exres[4]=g->GetParError(2);
  ax->cd(6); 
  hdx5->Draw();
  g->SetRange(-3.*hdx5->GetRMS(),+3.*hdx5->GetRMS());
  hdx5->Fit("g","Q");
  xres[5]=g->GetParameter(2);
  exres[5]=g->GetParError(2);
  // Y
  TCanvas *ay = new TCanvas("ay","ay",0,0,900,700);
  ay->Divide(3,2);
  ay->cd(1); 
  hdy0->Draw(); 
  g->SetRange(-3.*hdy0->GetRMS(),+3.*hdy0->GetRMS());
  hdy0->Fit("g","Q"); 
  yres[0]=g->GetParameter(2);
  eyres[0]=g->GetParError(2);
  ay->cd(2); 
  hdy1->Draw(); 
  g->SetRange(-3.*hdy1->GetRMS(),+3.*hdy1->GetRMS());
  hdy1->Fit("g","Q"); 
  yres[1]=g->GetParameter(2);
  eyres[1]=g->GetParError(2);
  ay->cd(3); 
  hdy2->Draw(); 
  g->SetRange(-3.*hdy2->GetRMS(),+3.*hdy2->GetRMS());
  hdy2->Fit("g","Q"); 
  yres[2]=g->GetParameter(2);
  eyres[2]=g->GetParError(2);
  ay->cd(4); 
  hdy3->Draw();
  g->SetRange(-3.*hdy3->GetRMS(),+3.*hdy3->GetRMS());
  hdy3->Fit("g","Q"); 
  yres[3]=g->GetParameter(2);
  eyres[3]=g->GetParError(2);
  ay->cd(5); 
  hdy4->Draw();
  g->SetRange(-3.*hdy4->GetRMS(),+3.*hdy4->GetRMS());
  hdy4->Fit("g","Q");
  yres[4]=g->GetParameter(2);
  eyres[4]=g->GetParError(2);
  ay->cd(6); 
  hdy5->Draw();
  g->SetRange(-3.*hdy5->GetRMS(),+3.*hdy5->GetRMS());
  hdy5->Fit("g","Q");
  yres[5]=g->GetParameter(2);
  eyres[5]=g->GetParError(2);
  // Z
  TCanvas *az = new TCanvas("az","az",0,0,900,700);
  az->Divide(3,2);
  az->cd(1); 
  hdz0->Draw(); 
  g->SetRange(-3.*hdz0->GetRMS(),+3.*hdz0->GetRMS());
  hdz0->Fit("g","Q"); 
  zres[0]=g->GetParameter(2);
  ezres[0]=g->GetParError(2);
  az->cd(2); 
  hdz1->Draw(); 
  g->SetRange(-3.*hdz1->GetRMS(),+3.*hdz1->GetRMS());
  hdz1->Fit("g","Q"); 
  zres[1]=g->GetParameter(2);
  ezres[1]=g->GetParError(2);
  az->cd(3); 
  hdz2->Draw(); 
  g->SetRange(-3.*hdz2->GetRMS(),+3.*hdz2->GetRMS());
  hdz2->Fit("g","Q"); 
  zres[2]=g->GetParameter(2);
  ezres[2]=g->GetParError(2);
  az->cd(4); 
  hdz3->Draw();
  g->SetRange(-3.*hdz3->GetRMS(),+3.*hdz3->GetRMS());
  hdz3->Fit("g","Q"); 
  zres[3]=g->GetParameter(2);
  ezres[3]=g->GetParError(2);
  az->cd(5); 
  hdz4->Draw();
  g->SetRange(-3.*hdz4->GetRMS(),+3.*hdz4->GetRMS());
  hdz4->Fit("g","Q");
  zres[4]=g->GetParameter(2);
  ezres[4]=g->GetParError(2);
  az->cd(6); 
  hdz5->Draw();
  g->SetRange(-3.*hdz5->GetRMS(),+3.*hdz5->GetRMS());
  hdz5->Fit("g","Q");
  zres[5]=g->GetParameter(2);
  ezres[5]=g->GetParError(2);


  //
  // pulls VS multiplicity
  //
  // X
  TCanvas *bx = new TCanvas("bx","bx",0,0,900,700);
  bx->Divide(3,2);
  bx->cd(1); 
  hpx0->Draw(); 
  g->SetRange(-3.*hpx0->GetRMS(),+3.*hpx0->GetRMS());
  hpx0->Fit("g","Q"); 
  xpull[0]=g->GetParameter(2);
  expull[0]=g->GetParError(2);
  bx->cd(2); 
  hpx1->Draw(); 
  g->SetRange(-3.*hpx1->GetRMS(),+3.*hpx1->GetRMS());
  hpx1->Fit("g","Q"); 
  xpull[1]=g->GetParameter(2);
  expull[1]=g->GetParError(2);
  bx->cd(3); 
  hpx2->Draw(); 
  g->SetRange(-3.*hpx2->GetRMS(),+3.*hpx2->GetRMS());
  hpx2->Fit("g","Q"); 
  xpull[2]=g->GetParameter(2);
  expull[2]=g->GetParError(2);
  bx->cd(4); 
  hpx3->Draw();
  g->SetRange(-3.*hpx3->GetRMS(),+3.*hpx3->GetRMS());
  hpx3->Fit("g","Q"); 
  xpull[3]=g->GetParameter(2);
  expull[3]=g->GetParError(2);
  bx->cd(5); 
  hpx4->Draw();
  g->SetRange(-3.*hpx4->GetRMS(),+3.*hpx4->GetRMS());
  hpx4->Fit("g","Q");
  xpull[4]=g->GetParameter(2);
  expull[4]=g->GetParError(2);
  bx->cd(6); 
  hpx5->Draw();
  g->SetRange(-3.*hpx5->GetRMS(),+3.*hpx5->GetRMS());
  hpx5->Fit("g","Q");
  xpull[5]=g->GetParameter(2);
  expull[5]=g->GetParError(2);
  // Y
  TCanvas *by = new TCanvas("by","by",0,0,900,700);
  by->Divide(3,2);
  by->cd(1); 
  hpy0->Draw(); 
  g->SetRange(-3.*hpy0->GetRMS(),+3.*hpy0->GetRMS());
  hpy0->Fit("g","Q"); 
  ypull[0]=g->GetParameter(2);
  eypull[0]=g->GetParError(2);
  by->cd(2); 
  hpy1->Draw(); 
  g->SetRange(-3.*hpy1->GetRMS(),+3.*hpy1->GetRMS());
  hpy1->Fit("g","Q"); 
  ypull[1]=g->GetParameter(2);
  eypull[1]=g->GetParError(2);
  by->cd(3); 
  hpy2->Draw(); 
  g->SetRange(-3.*hpy2->GetRMS(),+3.*hpy2->GetRMS());
  hpy2->Fit("g","Q"); 
  ypull[2]=g->GetParameter(2);
  eypull[2]=g->GetParError(2);
  by->cd(4); 
  hpy3->Draw();
  g->SetRange(-3.*hpy3->GetRMS(),+3.*hpy3->GetRMS());
  hpy3->Fit("g","Q"); 
  ypull[3]=g->GetParameter(2);
  eypull[3]=g->GetParError(2);
  by->cd(5); 
  hpy4->Draw();
  g->SetRange(-3.*hpy4->GetRMS(),+3.*hpy4->GetRMS());
  hpy4->Fit("g","Q");
  ypull[4]=g->GetParameter(2);
  eypull[4]=g->GetParError(2);
  by->cd(6); 
  hpy5->Draw();
  g->SetRange(-3.*hpy5->GetRMS(),+3.*hpy5->GetRMS());
  hpy5->Fit("g","Q");
  ypull[5]=g->GetParameter(2);
  eypull[5]=g->GetParError(2);
  // Z
  TCanvas *bz = new TCanvas("bz","bz",0,0,900,700);
  bz->Divide(3,2);
  bz->cd(1); 
  hpz0->Draw(); 
  g->SetRange(-3.*hpz0->GetRMS(),+3.*hpz0->GetRMS());
  hpz0->Fit("g","Q"); 
  zpull[0]=g->GetParameter(2);
  ezpull[0]=g->GetParError(2);
  bz->cd(2); 
  hpz1->Draw(); 
  g->SetRange(-3.*hpz1->GetRMS(),+3.*hpz1->GetRMS());
  hpz1->Fit("g","Q"); 
  zpull[1]=g->GetParameter(2);
  ezpull[1]=g->GetParError(2);
  bz->cd(3); 
  hpz2->Draw(); 
  g->SetRange(-3.*hpz2->GetRMS(),+3.*hpz2->GetRMS());
  hpz2->Fit("g","Q"); 
  zpull[2]=g->GetParameter(2);
  ezpull[2]=g->GetParError(2);
  bz->cd(4); 
  hpz3->Draw();
  g->SetRange(-3.*hpz3->GetRMS(),+3.*hpz3->GetRMS());
  hpz3->Fit("g","Q"); 
  zpull[3]=g->GetParameter(2);
  ezpull[3]=g->GetParError(2);
  bz->cd(5); 
  hpz4->Draw();
  g->SetRange(-3.*hpz4->GetRMS(),+3.*hpz4->GetRMS());
  hpz4->Fit("g","Q");
  zpull[4]=g->GetParameter(2);
  ezpull[4]=g->GetParError(2);
  bz->cd(6); 
  hpz5->Draw();
  g->SetRange(-3.*hpz5->GetRMS(),+3.*hpz5->GetRMS());
  hpz5->Fit("g","Q");
  zpull[5]=g->GetParameter(2);
  ezpull[5]=g->GetParError(2);

  gStyle->SetOptFit(0);

  // res VS ntracklets
  TCanvas *c6 = new TCanvas("c6","c6",0,0,600,500);
  TH2F *fr6 = new TH2F("fr6","",2,0,80,2,0,240*rangefactor); 
  fr6->SetXTitle("SPD tracklets");
  fr6->SetYTitle("#sigma [#mu m]");
  fr6->Draw();
  sigmamult2[0]=sigmamult2[1]=sigmamult2[2]=sigmamult2[3]=sigmamult2[4]=sigmamult2[5]=0.;
  TGraphErrors *gr6x = new TGraphErrors(6,mult2,xres,sigmamult2,exres);
  gr6x->Draw("p");
  gr6x->SetMarkerStyle(22);
  //gr6x->Fit("func","E,R");
  TGraphErrors *gr6z = new TGraphErrors(6,mult2,zres,sigmamult2,ezres);
  gr6z->Draw("p");
  gr6z->SetMarkerStyle(26);
  //gr6z->Fit("func","E,R");
  TLegend *leg6 = new TLegend(0.6,0.75,0.9,0.9);
  leg6->AddEntry(gr6x,"x/y coordinate","p");
  leg6->AddEntry(gr6z,"z coordinate","p");
  leg6->SetFillStyle(0);
  leg6->SetBorderSize(0);
  leg6->Draw();

  // pull VS ntracklets
  TCanvas *c8 = new TCanvas("c8","c8",0,0,600,500);
  TH2F *fr8 = new TH2F("fr8","",2,0,80,2,0,2.); 
  fr8->SetXTitle("SPD tracklets");
  fr8->SetYTitle("pull");
  fr8->Draw();
  TGraphErrors *gr8x = new TGraphErrors(6,mult2,xpull,sigmamult2,expull);
  gr8x->Draw("p");
  gr8x->SetMarkerStyle(22);
  TGraphErrors *gr8z = new TGraphErrors(6,mult2,zpull,sigmamult2,ezpull);
  gr8z->Draw("p");
  gr8z->SetMarkerStyle(26);
  TLegend *leg8 = new TLegend(0.6,0.75,0.9,0.9);
  leg8->AddEntry(gr6x,"x/y coordinate","p");
  leg8->AddEntry(gr6z,"z coordinate","p");
  leg8->SetFillStyle(0);
  leg8->SetBorderSize(0);
  leg8->Draw();
  TLine *l8 = new TLine(0,1,80,1);
  l8->SetLineStyle(2);
  l8->Draw();


  // mean z res VS zMC
  Float_t zmc[15]={-14,-12,-10,-8,-6,-4,-2,0,2,4,6,8,10,12,14};
  Float_t ezmc[15]; 
  Float_t dzmean[15],edzmean[15];
  Int_t dummy;
  TCanvas *zz = new TCanvas("zz","zz",0,0,1000,1000);
  zz->Divide(5,3);
  for(l=0;l<15;l++) {
    zz->cd(l+1);
    hdz_z[l].Draw(); 
    g->SetRange(-3.*hdz_z[l].GetRMS(),+3.*hdz_z[l].GetRMS());
    hdz_z[l].Fit("g","Q"); 
    dzmean[l]=g->GetParameter(1);
    edzmean[l]=g->GetParError(1);
    ezmc[l]=1.;
  }
  TCanvas *zzz = new TCanvas("zzz","zzz",0,0,600,500);
  TH2F *fr9 = new TH2F("fr9","",2,-15,15,2,-50*rangefactor,50*rangefactor); 
  fr9->SetXTitle("z_{true} [cm]");
  fr9->SetYTitle("<z_{rec} - z_{true}> [#mu m]");
  fr9->Draw();
  TGraphErrors *grz = new TGraphErrors(15,zmc,dzmean,ezmc,edzmean);
  grz->Draw("pz");
  grz->SetMarkerStyle(20);


  return;
}
//----------------------------------------------------------------------------
void SaveFigures(TString name="dummy") {

  TString namefull;

  namefull = name.Data();
  namefull.Prepend("plots/residualsx_");
  namefull.Append(".gif");
  ax->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/residualsx_");
  namefull.Append(".ps");
  ax->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/residualsx_");
  namefull.Append(".eps");
  ax->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/residualsx_");
  namefull.Append(".root");
  ax->Print(namefull.Data());

  namefull = name.Data();
  namefull.Prepend("plots/pullsx_");
  namefull.Append(".gif");
  bx->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/pullsx_");
  namefull.Append(".ps");
  bx->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/pullsx_");
  namefull.Append(".eps");
  bx->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/pullsx_");
  namefull.Append(".root");
  bx->Print(namefull.Data());

  namefull = name.Data();
  namefull.Prepend("plots/residualsz_");
  namefull.Append(".gif");
  az->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/residualsz_");
  namefull.Append(".ps");
  az->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/residualsz_");
  namefull.Append(".eps");
  az->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/residualsz_");
  namefull.Append(".root");
  az->Print(namefull.Data());

  namefull = name.Data();
  namefull.Prepend("plots/pullsz_");
  namefull.Append(".gif");
  bz->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/pullsz_");
  namefull.Append(".ps");
  bz->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/pullsz_");
  namefull.Append(".eps");
  bz->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/pullsz_");
  namefull.Append(".root");
  bz->Print(namefull.Data());

  namefull = name.Data();
  namefull.Prepend("plots/effVSntracklets_");
  namefull.Append(".gif");
  c1a->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSntracklets_");
  namefull.Append(".ps");
  c1a->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSntracklets_");
  namefull.Append(".eps");
  c1a->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSntracklets_");
  namefull.Append(".root");
  c1a->Print(namefull.Data());


  namefull = name.Data();
  namefull.Prepend("plots/effVSnitstracks_");
  namefull.Append(".gif");
  c1b->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSnitstracks_");
  namefull.Append(".ps");
  c1b->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSnitstracks_");
  namefull.Append(".eps");
  c1b->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSnitstracks_");
  namefull.Append(".root");
  c1b->Print(namefull.Data());


  namefull = name.Data();
  namefull.Prepend("plots/effVSnitstracks5or6_");
  namefull.Append(".gif");
  c1c->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSnitstracks5or6_");
  namefull.Append(".ps");
  c1c->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSnitstracks5or6_");
  namefull.Append(".eps");
  c1c->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSnitstracks5or6_");
  namefull.Append(".root");
  c1c->Print(namefull.Data());


  namefull = name.Data();
  namefull.Prepend("plots/effVSzMC_");
  namefull.Append(".gif");
  c1e->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSzMC_");
  namefull.Append(".ps");
  c1e->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSzMC_");
  namefull.Append(".eps");
  c1e->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSzMC_");
  namefull.Append(".root");
  c1e->Print(namefull.Data());



  namefull = name.Data();
  namefull.Prepend("plots/effVSntracklets2_");
  namefull.Append(".gif");
  c5->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSntracklets2_");
  namefull.Append(".ps");
  c5->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSntracklets2_");
  namefull.Append(".eps");
  c5->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/effVSntracklets2_");
  namefull.Append(".root");
  c5->Print(namefull.Data());


  namefull = name.Data();
  namefull.Prepend("plots/sigmaVSntracklets_");
  namefull.Append(".gif");
  c6->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/sigmaVSntracklets_");
  namefull.Append(".ps");
  c6->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/sigmaVSntracklets_");
  namefull.Append(".eps");
  c6->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/sigmaVSntracklets_");
  namefull.Append(".root");
  c6->Print(namefull.Data());


  namefull = name.Data();
  namefull.Prepend("plots/pullsVSntracklets_");
  namefull.Append(".gif");
  c8->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/pullsVSntracklets_");
  namefull.Append(".ps");
  c8->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/pullsVSntracklets_");
  namefull.Append(".eps");
  c8->Print(namefull.Data());
  namefull = name.Data();
  namefull.Prepend("plots/pullsVSntracklets_");
  namefull.Append(".root");
  c8->Print(namefull.Data());


  return;
}
//----------------------------------------------------------------------------
void TestRmTracks(Int_t iev=0) {

  if (gAlice) {
    delete AliRunLoader::Instance();
    delete gAlice; 
    gAlice=0;
  }
  
  AliRunLoader *rl = AliRunLoader::Open("galice.root");
  if (rl == 0x0) {
    cerr<<"Can not open session"<<endl;
    return;
  }
  Int_t retval = rl->LoadgAlice();
  if (retval) {
    cerr<<"LoadgAlice returned error"<<endl;
    delete rl;
    return;
  }
  retval = rl->LoadHeader();
  if (retval) {
    cerr<<"LoadHeader returned error"<<endl;
    delete rl;
    return;
  }
  gAlice=rl->GetAliRun();
  // Get field from galice.root
  AliMagF *fiel = (AliMagF*)gAlice->Field();
  // Set the conversion constant between curvature and Pt
  AliTracker::SetFieldMap(fiel,kTRUE);
 
  Double_t truevtx[3];
  Double_t vtx[3]; 
  Double_t errvtx[3]; 
  Double_t diffX,diffY,diffZ;
  Double_t diffXerr,diffYerr,diffZerr;
  Double_t multiplicity;
  Int_t nc;

  // -----------   Create vertexer --------------------------
  AliESDVertex *initVertex = 0;
  TFile *invtx = new TFile("AliESDVertexMean.root");
  initVertex = (AliESDVertex*)invtx->Get("vtxmean");
  invtx->Close();
  delete invtx;

  AliVertexerTracks *vertexer = new AliVertexerTracks(AliTracker::GetBz());
  vertexer->SetVtxStart(initVertex);
  vertexer->SetOnlyFitter();
  vertexer->SetDebug(0); // set to 1 to see what it does

  Float_t diamondxy[2];
  diamondxy[0]=initVertex->GetX();
  diamondxy[1]=initVertex->GetY();
  //----------------------------------------------------------
 
  if(gSystem->AccessPathName("AliESDs.root",kFileExists)) {
    printf("AliESDs.root not found!\n"); 
    return;
  }
  TFile *fin = TFile::Open("AliESDs.root");
  AliESDEvent *esd = new AliESDEvent();
  TTree *esdTree = (TTree*)fin->Get("esdTree");
  if(!esdTree) return;
  esd->ReadFromTree(esdTree);

  TArrayF o;

  nc=0;


  esdTree->GetEvent(iev);
  Int_t ntracks = esd->GetNumberOfTracks();
  printf("Number of tracks in ESD %d   :   %d\n",iev,ntracks);
  
  // example: do vertex without tracks 1 and 2 (AliESDtrack::GetID())
  //
  // 1: tell vertexer to skip those two tracks
  //
  Int_t nskip=2;
  Int_t skipped[2];
  skipped[0]=1;
  skipped[1]=2;
  vertexer->SetSkipTracks(nskip,skipped);  
  AliESDVertex *vertex1 = (AliESDVertex*)vertexer->FindPrimaryVertex(esd);
  vertex1->PrintStatus();
  vertex1->PrintIndices();
  delete vertex1;
  vertex1 = 0;
  //
  // 2: do vertex with all tracks
  //
  skipped[0]=-99;
  skipped[1]=-99;
  vertexer->SetSkipTracks(nskip,skipped);  
  AliESDVertex *vertex2 = (AliESDVertex*)vertexer->FindPrimaryVertex(esd);
  vertex2->PrintStatus();
  vertex2->PrintIndices();
  //
  // 3: now remove those two tracks from vertex2
  //
  TTree *trksTree = new TTree("trksTree","tree with tracks to be removed");
  AliESDtrack *esdTrack = 0;
  trksTree->Branch("tracks","AliESDtrack",&esdTrack);
  AliESDtrack *et = esd->GetTrack(1);
  esdTrack = new AliESDtrack(*et);
  trksTree->Fill();
  delete esdTrack;
  AliESDtrack *et = esd->GetTrack(2);
  esdTrack = new AliESDtrack(*et);
  trksTree->Fill();
  delete esdTrack;
  AliVertexerTracks vt(AliTracker::GetBz());
  AliESDVertex *vertex3 = vt.RemoveTracksFromVertex(vertex2,trksTree,diamondxy);
  vertex3->PrintStatus();
  vertex3->PrintIndices();
  delete vertex2;
  vertex2 = 0;
  delete vertex3;
  vertex3 = 0;


  delete esdTree;
  delete fin;
  vertexer =0;
  delete vertexer;
  delete initVertex;

  return;
} 
//----------------------------------------------------------------------------
void AliComputeVtxMeanFromESD(TString file="AliESDs.root",  
			      Int_t mincontr=20) {
  //-----------------------------------------------------------------------
  // Compute weighted mean and cov. matrix from a set of AliESD
  //-----------------------------------------------------------------------

  gStyle->SetOptStat(0);
  //gStyle->SetOptFit(0);


  Double_t vtx[3],covvtx[6];
  TTree *esdTree = 0;
  AliESDEvent *esd = new AliESDEvent();
  AliESDVertex *vertex = 0;
  TString vtitle;
  Int_t nc,events,total=0;

  Double_t avx=0.;
  Double_t avy=0.;
  Double_t avz=0.;
  Double_t wgtavx=0.;
  Double_t wgtavy=0.;
  Double_t wgtavz=0.;
  Double_t sum=0.;
  Double_t sumwgtx=0.;
  Double_t sumwgty=0.;
  Double_t sumwgtz=0.;
  Double_t rmsx=0;
  Double_t rmsy=0;
  Double_t rmsz=0;
  Double_t varx=0;
  Double_t vary=0;
  Double_t varz=0;
  Double_t covxy=0;
  Double_t covxz=0;
  Double_t covyz=0;
  Double_t eavx,eavy,eavz,ewgtavx,ewgtavy,ewgtavz;

  TH1F* hx = new TH1F("hx","",200,-1000,1000);
  hx->SetXTitle("vertex x [#mu m]");
  hx->SetYTitle("events");
  TH1F* hy = new TH1F("hy","",200,-1000,1000);
  hy->SetXTitle("vertex y [#mu m]");
  hy->SetYTitle("events");
  TH1F* hz = new TH1F("hz","",200,-10,10);
  hz->SetXTitle("vertex z [cm]");
  hz->SetYTitle("events");


  for(Int_t i=1; i<100; i++) {
    TString inname="event.";
    inname+=i;
    inname.Append("/");
    inname.Append(file.Data());
    if(gSystem->AccessPathName(inname.Data())) continue;
    TFile *fin = TFile::Open(inname.Data());
    esdTree = (TTree*)fin->Get("esdTree");
    if(!esdTree) continue;
    esd->ReadFromTree(esdTree);
    events = esdTree->GetEntries();
    printf("Number of events in ESD tree: %d\n",events);
    total += events;

    for(Int_t iev=0; iev<events; iev++) { //LOOP ON EVENTS
      esdTree->GetEvent(iev);
      vertex = (AliESDVertex*)esd->GetPrimaryVertex();
      if(!vertex) continue;
      nc = vertex->GetNContributors();
      if(nc<mincontr) continue;
      vertex->GetXYZ(vtx);
      vertex->GetSigmaXYZ(errvtx); 
      //printf("%f %f %f %f %f %f\n",vtx[0],vtx[1],vtx[2],errvtx[0],errvtx[1],errvtx[2]);

      avx += vtx[0];
      avy += vtx[1];
      avz += vtx[2];
      sum += 1.;
      wgtavx += vtx[0]/errvtx[0]/errvtx[0];
      wgtavy += vtx[1]/errvtx[1]/errvtx[1];
      wgtavz += vtx[2]/errvtx[2]/errvtx[2];
      sumwgtx += 1./errvtx[0]/errvtx[0];
      sumwgty += 1./errvtx[1]/errvtx[1];
      sumwgtz += 1./errvtx[2]/errvtx[2];
     
      hx->Fill(1e4*vtx[0]);
      hy->Fill(1e4*vtx[1]);
      hz->Fill(vtx[2]);

      vertex = 0;
    }
    esdTree=0;
    fin->Close();
    delete fin;
  }
  
  avx /= sum;
  avy /= sum;
  avz /= sum;
  wgtavx /= sumwgtx;
  wgtavy /= sumwgty;
  wgtavz /= sumwgtz;
  ewgtavx = 1./TMath::Sqrt(sumwgtx);
  ewgtavy = 1./TMath::Sqrt(sumwgty);
  ewgtavz = 1./TMath::Sqrt(sumwgtz);
  
  
  for(Int_t i=1; i<100; i++) {
    TString inname="event.";
    inname+=i;
    inname.Append("/");
    inname.Append(file.Data());
    if(gSystem->AccessPathName(inname.Data())) continue;
    TFile *fin = TFile::Open(inname.Data());
    esdTree = (TTree*)fin->Get("esdTree");
    if(!esdTree) continue;
    esd->ReadFromTree(esdTree);
    events = esdTree->GetEntries();
    for(Int_t iev=0; iev<events; iev++) { //LOOP ON EVENTS
      esdTree->GetEvent(iev);
      vertex = (AliESDVertex*)esd->GetPrimaryVertex();
      if(!vertex) continue;
      nc = vertex->GetNContributors();
      if(nc<mincontr) continue;
      vertex->GetXYZ(vtx);
      vertex->GetSigmaXYZ(errvtx); 

      varx += (vtx[0]-avx)*(vtx[0]-avx);
      vary += (vtx[1]-avy)*(vtx[1]-avy);
      varz += (vtx[2]-avz)*(vtx[2]-avz);
      covxy += (vtx[0]-avx)*(vtx[1]-avy);
      covxz += (vtx[0]-avx)*(vtx[2]-avz);
      covyz += (vtx[1]-avy)*(vtx[2]-avz);

      vertex = 0;
    }
  }
  
  varx /= sum;
  vary /= sum;
  varz /= sum;
  covxy /= sum;
  covxz /= sum;
  covyz /= sum;
  rmsx = TMath::Sqrt(varx);
  rmsy = TMath::Sqrt(vary);
  rmsz = TMath::Sqrt(varz);
  eavx = rmsx/TMath::Sqrt(sum);
  eavy = rmsy/TMath::Sqrt(sum);
  eavz = rmsz/TMath::Sqrt(sum);
  

  printf("\n\nNumber of events: Total %d, Used %d\n",total,sum);
  printf("Average:\n x = (%f +- %f) mum\n y = (%f +- %f) mum\n z = (%f +- %f) mu\n",1e4*avx,1e4*eavx,1e4*avy,1e4*eavy,1e4*avz,1e4*eavz);
  printf("Weighted Average:\n x = (%f +- %f) mum\n y = (%f +- %f) mum\n z = (%f +- %f) mum\n",1e4*wgtavx,1e4*ewgtavx,1e4*wgtavy,1e4*ewgtavy,1e4*wgtavz,1e4*ewgtavz);
  printf("RMS:\n x = %f mum\n y = %f mum\n z = %f mum\n",1e4*rmsx,1e4*rmsy,1e4*rmsz);

  TCanvas *c = new TCanvas("c","c",0,0,1000,500);
  c->Divide(3,1);
  c->cd(1);
  hx->Draw();
  TF1 *gx = new TF1("gx","gaus",-1000,1000);
  gx->SetLineColor(2);
  hx->Fit(gx);
  TF1 *gxx = (TF1*)gx->Clone("gxx");
  gxx->FixParameter(2,50.);
  gxx->SetLineStyle(2);
  gxx->Draw("same");
  c->cd(2);
  hy->Draw();
  TF1 *gy = new TF1("gy","gaus",-1000,1000);
  gy->SetLineColor(2);
  hy->Fit(gy);
  TF1 *gyy = (TF1*)gy->Clone("gyy");
  gyy->FixParameter(2,50.);
  gyy->SetLineStyle(2);
  gyy->Draw("same");
  c->cd(3);
  hz->Draw();
  TF1 *gz = new TF1("gz","gaus",-10,10);
  gz->SetLineColor(2);
  hz->Fit(gz);
  TF1 *gzz = (TF1*)gz->Clone("gzz");
  gzz->FixParameter(2,5.3);
  gzz->SetLineStyle(2);
  gzz->Draw("same");

  vtx[0] = wgtavx;
  vtx[1] = wgtavy;
  vtx[2] = wgtavz;
  covvtx[0] = varx;
  covvtx[1] = covxy;
  covvtx[2] = vary;
  covvtx[3] = covxz;
  covvtx[4] = covyz;
  covvtx[5] = 5.3;
  AliESDVertex *vtxmean = new AliESDVertex(vtx,covvtx,0.,(Int_t)sum);
  vtxmean->SetTitle("Vertex from weighted average");
  TFile *out = new TFile("AliESDVertexMean.root","recreate");
  vtxmean->Write("vtxmean");
  out->Close();

  return;
}
//----------------------------------------------------------------------------
void AliComputeVtxMeanFromTree(TString file="AliESDVertices.root",  
			       Int_t mincontr=20) {
  //-----------------------------------------------------------------------
  // Compute weighted mean and cov. matrix from a set of AliESDVertices
  //-----------------------------------------------------------------------
  gStyle->SetOptStat(0);
  //gStyle->SetOptFit(0);


  Double_t vtx[3],covvtx[6];
  TString vtitle;
  Int_t nc,total=0;

  Double_t avx=0.;
  Double_t avy=0.;
  Double_t avz=0.;
  Double_t wgtavx=0.;
  Double_t wgtavy=0.;
  Double_t wgtavz=0.;
  Double_t sum=0.;
  Double_t sumwgtx=0.;
  Double_t sumwgty=0.;
  Double_t sumwgtz=0.;
  Double_t rmsx=0;
  Double_t rmsy=0;
  Double_t rmsz=0;
  Double_t eavx,eavy,eavz,ewgtavx,ewgtavy,ewgtavz;

  TH1F* hx = new TH1F("hx","",200,-1000,1000);
  hx->SetXTitle("vertex x [#mu m]");
  hx->SetYTitle("events");
  TH1F* hy = new TH1F("hy","",200,-1000,1000);
  hy->SetXTitle("vertex y [#mu m]");
  hy->SetYTitle("events");
  TH1F* hz = new TH1F("hz","",200,-10,10);
  hz->SetXTitle("vertex z [cm]");
  hz->SetYTitle("events");


  if(gSystem->AccessPathName(file.Data())) continue;
  TFile *fin = TFile::Open(file.Data());
  TTree *tree = (TTree*)fin->Get("TreeV");
  AliESDVertex *vertex = 0;
  tree->SetBranchAddress("AliESDVertex",&vertex);
  Int_t entries = (Int_t)tree->GetEntries();

  for(Int_t i=0; i<entries; i++) {
    total += 1;
    tree->GetEvent(i);
    nc = vertex->GetNContributors();
    if(nc<mincontr) continue;
    vertex->GetXYZ(vtx);
    vertex->GetSigmaXYZ(errvtx); 
    //printf("%f %f %f %f %f %f\n",vtx[0],vtx[1],vtx[2],errvtx[0],errvtx[1],errvtx[2]);

    avx += vtx[0];
    avy += vtx[1];
    avz += vtx[2];
    sum += 1.;
    wgtavx += vtx[0]/errvtx[0]/errvtx[0];
    wgtavy += vtx[1]/errvtx[1]/errvtx[1];
    wgtavz += vtx[2]/errvtx[2]/errvtx[2];
    sumwgtx += 1./errvtx[0]/errvtx[0];
    sumwgty += 1./errvtx[1]/errvtx[1];
    sumwgtz += 1./errvtx[2]/errvtx[2];
     
    hx->Fill(1e4*vtx[0]);
    hy->Fill(1e4*vtx[1]);
    hz->Fill(vtx[2]);
    
    vertex = 0;
  }
  
  avx /= sum;
  avy /= sum;
  avz /= sum;
  wgtavx /= sumwgtx;
  wgtavy /= sumwgty;
  wgtavz /= sumwgtz;
  ewgtavx = 1./TMath::Sqrt(sumwgtx);
  ewgtavy = 1./TMath::Sqrt(sumwgty);
  ewgtavz = 1./TMath::Sqrt(sumwgtz);
  
  
  for(Int_t i=0; i<entries; i++) {
    tree->GetEvent(i);
    nc = vertex->GetNContributors();
    if(nc<mincontr) continue;
    vertex->GetXYZ(vtx);
    vertex->GetSigmaXYZ(errvtx); 

    varx += (vtx[0]-avx)*(vtx[0]-avx);
    vary += (vtx[1]-avy)*(vtx[1]-avy);
    varz += (vtx[2]-avz)*(vtx[2]-avz);
    covxy += (vtx[0]-avx)*(vtx[1]-avy);
    covxz += (vtx[0]-avx)*(vtx[2]-avz);
    covyz += (vtx[1]-avy)*(vtx[2]-avz);

    vertex = 0;
  }
  
  varx /= sum;
  vary /= sum;
  varz /= sum;
  covxy /= sum;
  covxz /= sum;
  covyz /= sum;
  rmsx = TMath::Sqrt(varx);
  rmsy = TMath::Sqrt(vary);
  rmsz = TMath::Sqrt(varz);
  eavx = rmsx/TMath::Sqrt(sum);
  eavy = rmsy/TMath::Sqrt(sum);
  eavz = rmsz/TMath::Sqrt(sum);
  

  printf("\n\nNumber of events: Total %d, Used %d\n",total,sum);
  printf("Average:\n x = (%f +- %f) mum\n y = (%f +- %f) mum\n z = (%f +- %f) mu\n",1e4*avx,1e4*eavx,1e4*avy,1e4*eavy,1e4*avz,1e4*eavz);
  printf("Weighted Average:\n x = (%f +- %f) mum\n y = (%f +- %f) mum\n z = (%f +- %f) mum\n",1e4*wgtavx,1e4*ewgtavx,1e4*wgtavy,1e4*ewgtavy,1e4*wgtavz,1e4*ewgtavz);
  printf("RMS:\n x = %f mum\n y = %f mum\n z = %f mum\n",1e4*rmsx,1e4*rmsy,1e4*rmsz);

  TCanvas *c = new TCanvas("c","c",0,0,1000,500);
  c->Divide(3,1);
  c->cd(1);
  hx->Draw();
  TF1 *gx = new TF1("gx","gaus",-1000,1000);
  gx->SetLineColor(2);
  hx->Fit(gx);
  TF1 *gxx = (TF1*)gx->Clone("gxx");
  gxx->FixParameter(2,50.);
  gxx->SetLineStyle(2);
  gxx->Draw("same");
  c->cd(2);
  hy->Draw();
  TF1 *gy = new TF1("gy","gaus",-1000,1000);
  gy->SetLineColor(2);
  hy->Fit(gy);
  TF1 *gyy = (TF1*)gy->Clone("gyy");
  gyy->FixParameter(2,50.);
  gyy->SetLineStyle(2);
  gyy->Draw("same");
  c->cd(3);
  hz->Draw();
  TF1 *gz = new TF1("gz","gaus",-10,10);
  gz->SetLineColor(2);
  hz->Fit(gz);
  TF1 *gzz = (TF1*)gz->Clone("gzz");
  gzz->FixParameter(2,5.3);
  gzz->SetLineStyle(2);
  gzz->Draw("same");

  vtx[0] = wgtavx;
  vtx[1] = wgtavy;
  vtx[2] = wgtavz;
  covvtx[0] = varx;
  covvtx[1] = covxy;
  covvtx[2] = vary;
  covvtx[3] = covxz;
  covvtx[4] = covyz;
  covvtx[5] = 5.3;
  AliESDVertex *vtxmean = new AliESDVertex(vtx,covvtx,0.,(Int_t)sum);
  vtxmean->SetTitle("Vertex from weighted average");
  TFile *out = new TFile("AliESDVertexMean.root","recreate");
  vtxmean->Write("vtxmean");
  out->Close();

  return;
}
//---------------------------------------------------------------------------

 AliVertexerTracksTest.C:1
 AliVertexerTracksTest.C:2
 AliVertexerTracksTest.C:3
 AliVertexerTracksTest.C:4
 AliVertexerTracksTest.C:5
 AliVertexerTracksTest.C:6
 AliVertexerTracksTest.C:7
 AliVertexerTracksTest.C:8
 AliVertexerTracksTest.C:9
 AliVertexerTracksTest.C:10
 AliVertexerTracksTest.C:11
 AliVertexerTracksTest.C:12
 AliVertexerTracksTest.C:13
 AliVertexerTracksTest.C:14
 AliVertexerTracksTest.C:15
 AliVertexerTracksTest.C:16
 AliVertexerTracksTest.C:17
 AliVertexerTracksTest.C:18
 AliVertexerTracksTest.C:19
 AliVertexerTracksTest.C:20
 AliVertexerTracksTest.C:21
 AliVertexerTracksTest.C:22
 AliVertexerTracksTest.C:23
 AliVertexerTracksTest.C:24
 AliVertexerTracksTest.C:25
 AliVertexerTracksTest.C:26
 AliVertexerTracksTest.C:27
 AliVertexerTracksTest.C:28
 AliVertexerTracksTest.C:29
 AliVertexerTracksTest.C:30
 AliVertexerTracksTest.C:31
 AliVertexerTracksTest.C:32
 AliVertexerTracksTest.C:33
 AliVertexerTracksTest.C:34
 AliVertexerTracksTest.C:35
 AliVertexerTracksTest.C:36
 AliVertexerTracksTest.C:37
 AliVertexerTracksTest.C:38
 AliVertexerTracksTest.C:39
 AliVertexerTracksTest.C:40
 AliVertexerTracksTest.C:41
 AliVertexerTracksTest.C:42
 AliVertexerTracksTest.C:43
 AliVertexerTracksTest.C:44
 AliVertexerTracksTest.C:45
 AliVertexerTracksTest.C:46
 AliVertexerTracksTest.C:47
 AliVertexerTracksTest.C:48
 AliVertexerTracksTest.C:49
 AliVertexerTracksTest.C:50
 AliVertexerTracksTest.C:51
 AliVertexerTracksTest.C:52
 AliVertexerTracksTest.C:53
 AliVertexerTracksTest.C:54
 AliVertexerTracksTest.C:55
 AliVertexerTracksTest.C:56
 AliVertexerTracksTest.C:57
 AliVertexerTracksTest.C:58
 AliVertexerTracksTest.C:59
 AliVertexerTracksTest.C:60
 AliVertexerTracksTest.C:61
 AliVertexerTracksTest.C:62
 AliVertexerTracksTest.C:63
 AliVertexerTracksTest.C:64
 AliVertexerTracksTest.C:65
 AliVertexerTracksTest.C:66
 AliVertexerTracksTest.C:67
 AliVertexerTracksTest.C:68
 AliVertexerTracksTest.C:69
 AliVertexerTracksTest.C:70
 AliVertexerTracksTest.C:71
 AliVertexerTracksTest.C:72
 AliVertexerTracksTest.C:73
 AliVertexerTracksTest.C:74
 AliVertexerTracksTest.C:75
 AliVertexerTracksTest.C:76
 AliVertexerTracksTest.C:77
 AliVertexerTracksTest.C:78
 AliVertexerTracksTest.C:79
 AliVertexerTracksTest.C:80
 AliVertexerTracksTest.C:81
 AliVertexerTracksTest.C:82
 AliVertexerTracksTest.C:83
 AliVertexerTracksTest.C:84
 AliVertexerTracksTest.C:85
 AliVertexerTracksTest.C:86
 AliVertexerTracksTest.C:87
 AliVertexerTracksTest.C:88
 AliVertexerTracksTest.C:89
 AliVertexerTracksTest.C:90
 AliVertexerTracksTest.C:91
 AliVertexerTracksTest.C:92
 AliVertexerTracksTest.C:93
 AliVertexerTracksTest.C:94
 AliVertexerTracksTest.C:95
 AliVertexerTracksTest.C:96
 AliVertexerTracksTest.C:97
 AliVertexerTracksTest.C:98
 AliVertexerTracksTest.C:99
 AliVertexerTracksTest.C:100
 AliVertexerTracksTest.C:101
 AliVertexerTracksTest.C:102
 AliVertexerTracksTest.C:103
 AliVertexerTracksTest.C:104
 AliVertexerTracksTest.C:105
 AliVertexerTracksTest.C:106
 AliVertexerTracksTest.C:107
 AliVertexerTracksTest.C:108
 AliVertexerTracksTest.C:109
 AliVertexerTracksTest.C:110
 AliVertexerTracksTest.C:111
 AliVertexerTracksTest.C:112
 AliVertexerTracksTest.C:113
 AliVertexerTracksTest.C:114
 AliVertexerTracksTest.C:115
 AliVertexerTracksTest.C:116
 AliVertexerTracksTest.C:117
 AliVertexerTracksTest.C:118
 AliVertexerTracksTest.C:119
 AliVertexerTracksTest.C:120
 AliVertexerTracksTest.C:121
 AliVertexerTracksTest.C:122
 AliVertexerTracksTest.C:123
 AliVertexerTracksTest.C:124
 AliVertexerTracksTest.C:125
 AliVertexerTracksTest.C:126
 AliVertexerTracksTest.C:127
 AliVertexerTracksTest.C:128
 AliVertexerTracksTest.C:129
 AliVertexerTracksTest.C:130
 AliVertexerTracksTest.C:131
 AliVertexerTracksTest.C:132
 AliVertexerTracksTest.C:133
 AliVertexerTracksTest.C:134
 AliVertexerTracksTest.C:135
 AliVertexerTracksTest.C:136
 AliVertexerTracksTest.C:137
 AliVertexerTracksTest.C:138
 AliVertexerTracksTest.C:139
 AliVertexerTracksTest.C:140
 AliVertexerTracksTest.C:141
 AliVertexerTracksTest.C:142
 AliVertexerTracksTest.C:143
 AliVertexerTracksTest.C:144
 AliVertexerTracksTest.C:145
 AliVertexerTracksTest.C:146
 AliVertexerTracksTest.C:147
 AliVertexerTracksTest.C:148
 AliVertexerTracksTest.C:149
 AliVertexerTracksTest.C:150
 AliVertexerTracksTest.C:151
 AliVertexerTracksTest.C:152
 AliVertexerTracksTest.C:153
 AliVertexerTracksTest.C:154
 AliVertexerTracksTest.C:155
 AliVertexerTracksTest.C:156
 AliVertexerTracksTest.C:157
 AliVertexerTracksTest.C:158
 AliVertexerTracksTest.C:159
 AliVertexerTracksTest.C:160
 AliVertexerTracksTest.C:161
 AliVertexerTracksTest.C:162
 AliVertexerTracksTest.C:163
 AliVertexerTracksTest.C:164
 AliVertexerTracksTest.C:165
 AliVertexerTracksTest.C:166
 AliVertexerTracksTest.C:167
 AliVertexerTracksTest.C:168
 AliVertexerTracksTest.C:169
 AliVertexerTracksTest.C:170
 AliVertexerTracksTest.C:171
 AliVertexerTracksTest.C:172
 AliVertexerTracksTest.C:173
 AliVertexerTracksTest.C:174
 AliVertexerTracksTest.C:175
 AliVertexerTracksTest.C:176
 AliVertexerTracksTest.C:177
 AliVertexerTracksTest.C:178
 AliVertexerTracksTest.C:179
 AliVertexerTracksTest.C:180
 AliVertexerTracksTest.C:181
 AliVertexerTracksTest.C:182
 AliVertexerTracksTest.C:183
 AliVertexerTracksTest.C:184
 AliVertexerTracksTest.C:185
 AliVertexerTracksTest.C:186
 AliVertexerTracksTest.C:187
 AliVertexerTracksTest.C:188
 AliVertexerTracksTest.C:189
 AliVertexerTracksTest.C:190
 AliVertexerTracksTest.C:191
 AliVertexerTracksTest.C:192
 AliVertexerTracksTest.C:193
 AliVertexerTracksTest.C:194
 AliVertexerTracksTest.C:195
 AliVertexerTracksTest.C:196
 AliVertexerTracksTest.C:197
 AliVertexerTracksTest.C:198
 AliVertexerTracksTest.C:199
 AliVertexerTracksTest.C:200
 AliVertexerTracksTest.C:201
 AliVertexerTracksTest.C:202
 AliVertexerTracksTest.C:203
 AliVertexerTracksTest.C:204
 AliVertexerTracksTest.C:205
 AliVertexerTracksTest.C:206
 AliVertexerTracksTest.C:207
 AliVertexerTracksTest.C:208
 AliVertexerTracksTest.C:209
 AliVertexerTracksTest.C:210
 AliVertexerTracksTest.C:211
 AliVertexerTracksTest.C:212
 AliVertexerTracksTest.C:213
 AliVertexerTracksTest.C:214
 AliVertexerTracksTest.C:215
 AliVertexerTracksTest.C:216
 AliVertexerTracksTest.C:217
 AliVertexerTracksTest.C:218
 AliVertexerTracksTest.C:219
 AliVertexerTracksTest.C:220
 AliVertexerTracksTest.C:221
 AliVertexerTracksTest.C:222
 AliVertexerTracksTest.C:223
 AliVertexerTracksTest.C:224
 AliVertexerTracksTest.C:225
 AliVertexerTracksTest.C:226
 AliVertexerTracksTest.C:227
 AliVertexerTracksTest.C:228
 AliVertexerTracksTest.C:229
 AliVertexerTracksTest.C:230
 AliVertexerTracksTest.C:231
 AliVertexerTracksTest.C:232
 AliVertexerTracksTest.C:233
 AliVertexerTracksTest.C:234
 AliVertexerTracksTest.C:235
 AliVertexerTracksTest.C:236
 AliVertexerTracksTest.C:237
 AliVertexerTracksTest.C:238
 AliVertexerTracksTest.C:239
 AliVertexerTracksTest.C:240
 AliVertexerTracksTest.C:241
 AliVertexerTracksTest.C:242
 AliVertexerTracksTest.C:243
 AliVertexerTracksTest.C:244
 AliVertexerTracksTest.C:245
 AliVertexerTracksTest.C:246
 AliVertexerTracksTest.C:247
 AliVertexerTracksTest.C:248
 AliVertexerTracksTest.C:249
 AliVertexerTracksTest.C:250
 AliVertexerTracksTest.C:251
 AliVertexerTracksTest.C:252
 AliVertexerTracksTest.C:253
 AliVertexerTracksTest.C:254
 AliVertexerTracksTest.C:255
 AliVertexerTracksTest.C:256
 AliVertexerTracksTest.C:257
 AliVertexerTracksTest.C:258
 AliVertexerTracksTest.C:259
 AliVertexerTracksTest.C:260
 AliVertexerTracksTest.C:261
 AliVertexerTracksTest.C:262
 AliVertexerTracksTest.C:263
 AliVertexerTracksTest.C:264
 AliVertexerTracksTest.C:265
 AliVertexerTracksTest.C:266
 AliVertexerTracksTest.C:267
 AliVertexerTracksTest.C:268
 AliVertexerTracksTest.C:269
 AliVertexerTracksTest.C:270
 AliVertexerTracksTest.C:271
 AliVertexerTracksTest.C:272
 AliVertexerTracksTest.C:273
 AliVertexerTracksTest.C:274
 AliVertexerTracksTest.C:275
 AliVertexerTracksTest.C:276
 AliVertexerTracksTest.C:277
 AliVertexerTracksTest.C:278
 AliVertexerTracksTest.C:279
 AliVertexerTracksTest.C:280
 AliVertexerTracksTest.C:281
 AliVertexerTracksTest.C:282
 AliVertexerTracksTest.C:283
 AliVertexerTracksTest.C:284
 AliVertexerTracksTest.C:285
 AliVertexerTracksTest.C:286
 AliVertexerTracksTest.C:287
 AliVertexerTracksTest.C:288
 AliVertexerTracksTest.C:289
 AliVertexerTracksTest.C:290
 AliVertexerTracksTest.C:291
 AliVertexerTracksTest.C:292
 AliVertexerTracksTest.C:293
 AliVertexerTracksTest.C:294
 AliVertexerTracksTest.C:295
 AliVertexerTracksTest.C:296
 AliVertexerTracksTest.C:297
 AliVertexerTracksTest.C:298
 AliVertexerTracksTest.C:299
 AliVertexerTracksTest.C:300
 AliVertexerTracksTest.C:301
 AliVertexerTracksTest.C:302
 AliVertexerTracksTest.C:303
 AliVertexerTracksTest.C:304
 AliVertexerTracksTest.C:305
 AliVertexerTracksTest.C:306
 AliVertexerTracksTest.C:307
 AliVertexerTracksTest.C:308
 AliVertexerTracksTest.C:309
 AliVertexerTracksTest.C:310
 AliVertexerTracksTest.C:311
 AliVertexerTracksTest.C:312
 AliVertexerTracksTest.C:313
 AliVertexerTracksTest.C:314
 AliVertexerTracksTest.C:315
 AliVertexerTracksTest.C:316
 AliVertexerTracksTest.C:317
 AliVertexerTracksTest.C:318
 AliVertexerTracksTest.C:319
 AliVertexerTracksTest.C:320
 AliVertexerTracksTest.C:321
 AliVertexerTracksTest.C:322
 AliVertexerTracksTest.C:323
 AliVertexerTracksTest.C:324
 AliVertexerTracksTest.C:325
 AliVertexerTracksTest.C:326
 AliVertexerTracksTest.C:327
 AliVertexerTracksTest.C:328
 AliVertexerTracksTest.C:329
 AliVertexerTracksTest.C:330
 AliVertexerTracksTest.C:331
 AliVertexerTracksTest.C:332
 AliVertexerTracksTest.C:333
 AliVertexerTracksTest.C:334
 AliVertexerTracksTest.C:335
 AliVertexerTracksTest.C:336
 AliVertexerTracksTest.C:337
 AliVertexerTracksTest.C:338
 AliVertexerTracksTest.C:339
 AliVertexerTracksTest.C:340
 AliVertexerTracksTest.C:341
 AliVertexerTracksTest.C:342
 AliVertexerTracksTest.C:343
 AliVertexerTracksTest.C:344
 AliVertexerTracksTest.C:345
 AliVertexerTracksTest.C:346
 AliVertexerTracksTest.C:347
 AliVertexerTracksTest.C:348
 AliVertexerTracksTest.C:349
 AliVertexerTracksTest.C:350
 AliVertexerTracksTest.C:351
 AliVertexerTracksTest.C:352
 AliVertexerTracksTest.C:353
 AliVertexerTracksTest.C:354
 AliVertexerTracksTest.C:355
 AliVertexerTracksTest.C:356
 AliVertexerTracksTest.C:357
 AliVertexerTracksTest.C:358
 AliVertexerTracksTest.C:359
 AliVertexerTracksTest.C:360
 AliVertexerTracksTest.C:361
 AliVertexerTracksTest.C:362
 AliVertexerTracksTest.C:363
 AliVertexerTracksTest.C:364
 AliVertexerTracksTest.C:365
 AliVertexerTracksTest.C:366
 AliVertexerTracksTest.C:367
 AliVertexerTracksTest.C:368
 AliVertexerTracksTest.C:369
 AliVertexerTracksTest.C:370
 AliVertexerTracksTest.C:371
 AliVertexerTracksTest.C:372
 AliVertexerTracksTest.C:373
 AliVertexerTracksTest.C:374
 AliVertexerTracksTest.C:375
 AliVertexerTracksTest.C:376
 AliVertexerTracksTest.C:377
 AliVertexerTracksTest.C:378
 AliVertexerTracksTest.C:379
 AliVertexerTracksTest.C:380
 AliVertexerTracksTest.C:381
 AliVertexerTracksTest.C:382
 AliVertexerTracksTest.C:383
 AliVertexerTracksTest.C:384
 AliVertexerTracksTest.C:385
 AliVertexerTracksTest.C:386
 AliVertexerTracksTest.C:387
 AliVertexerTracksTest.C:388
 AliVertexerTracksTest.C:389
 AliVertexerTracksTest.C:390
 AliVertexerTracksTest.C:391
 AliVertexerTracksTest.C:392
 AliVertexerTracksTest.C:393
 AliVertexerTracksTest.C:394
 AliVertexerTracksTest.C:395
 AliVertexerTracksTest.C:396
 AliVertexerTracksTest.C:397
 AliVertexerTracksTest.C:398
 AliVertexerTracksTest.C:399
 AliVertexerTracksTest.C:400
 AliVertexerTracksTest.C:401
 AliVertexerTracksTest.C:402
 AliVertexerTracksTest.C:403
 AliVertexerTracksTest.C:404
 AliVertexerTracksTest.C:405
 AliVertexerTracksTest.C:406
 AliVertexerTracksTest.C:407
 AliVertexerTracksTest.C:408
 AliVertexerTracksTest.C:409
 AliVertexerTracksTest.C:410
 AliVertexerTracksTest.C:411
 AliVertexerTracksTest.C:412
 AliVertexerTracksTest.C:413
 AliVertexerTracksTest.C:414
 AliVertexerTracksTest.C:415
 AliVertexerTracksTest.C:416
 AliVertexerTracksTest.C:417
 AliVertexerTracksTest.C:418
 AliVertexerTracksTest.C:419
 AliVertexerTracksTest.C:420
 AliVertexerTracksTest.C:421
 AliVertexerTracksTest.C:422
 AliVertexerTracksTest.C:423
 AliVertexerTracksTest.C:424
 AliVertexerTracksTest.C:425
 AliVertexerTracksTest.C:426
 AliVertexerTracksTest.C:427
 AliVertexerTracksTest.C:428
 AliVertexerTracksTest.C:429
 AliVertexerTracksTest.C:430
 AliVertexerTracksTest.C:431
 AliVertexerTracksTest.C:432
 AliVertexerTracksTest.C:433
 AliVertexerTracksTest.C:434
 AliVertexerTracksTest.C:435
 AliVertexerTracksTest.C:436
 AliVertexerTracksTest.C:437
 AliVertexerTracksTest.C:438
 AliVertexerTracksTest.C:439
 AliVertexerTracksTest.C:440
 AliVertexerTracksTest.C:441
 AliVertexerTracksTest.C:442
 AliVertexerTracksTest.C:443
 AliVertexerTracksTest.C:444
 AliVertexerTracksTest.C:445
 AliVertexerTracksTest.C:446
 AliVertexerTracksTest.C:447
 AliVertexerTracksTest.C:448
 AliVertexerTracksTest.C:449
 AliVertexerTracksTest.C:450
 AliVertexerTracksTest.C:451
 AliVertexerTracksTest.C:452
 AliVertexerTracksTest.C:453
 AliVertexerTracksTest.C:454
 AliVertexerTracksTest.C:455
 AliVertexerTracksTest.C:456
 AliVertexerTracksTest.C:457
 AliVertexerTracksTest.C:458
 AliVertexerTracksTest.C:459
 AliVertexerTracksTest.C:460
 AliVertexerTracksTest.C:461
 AliVertexerTracksTest.C:462
 AliVertexerTracksTest.C:463
 AliVertexerTracksTest.C:464
 AliVertexerTracksTest.C:465
 AliVertexerTracksTest.C:466
 AliVertexerTracksTest.C:467
 AliVertexerTracksTest.C:468
 AliVertexerTracksTest.C:469
 AliVertexerTracksTest.C:470
 AliVertexerTracksTest.C:471
 AliVertexerTracksTest.C:472
 AliVertexerTracksTest.C:473
 AliVertexerTracksTest.C:474
 AliVertexerTracksTest.C:475
 AliVertexerTracksTest.C:476
 AliVertexerTracksTest.C:477
 AliVertexerTracksTest.C:478
 AliVertexerTracksTest.C:479
 AliVertexerTracksTest.C:480
 AliVertexerTracksTest.C:481
 AliVertexerTracksTest.C:482
 AliVertexerTracksTest.C:483
 AliVertexerTracksTest.C:484
 AliVertexerTracksTest.C:485
 AliVertexerTracksTest.C:486
 AliVertexerTracksTest.C:487
 AliVertexerTracksTest.C:488
 AliVertexerTracksTest.C:489
 AliVertexerTracksTest.C:490
 AliVertexerTracksTest.C:491
 AliVertexerTracksTest.C:492
 AliVertexerTracksTest.C:493
 AliVertexerTracksTest.C:494
 AliVertexerTracksTest.C:495
 AliVertexerTracksTest.C:496
 AliVertexerTracksTest.C:497
 AliVertexerTracksTest.C:498
 AliVertexerTracksTest.C:499
 AliVertexerTracksTest.C:500
 AliVertexerTracksTest.C:501
 AliVertexerTracksTest.C:502
 AliVertexerTracksTest.C:503
 AliVertexerTracksTest.C:504
 AliVertexerTracksTest.C:505
 AliVertexerTracksTest.C:506
 AliVertexerTracksTest.C:507
 AliVertexerTracksTest.C:508
 AliVertexerTracksTest.C:509
 AliVertexerTracksTest.C:510
 AliVertexerTracksTest.C:511
 AliVertexerTracksTest.C:512
 AliVertexerTracksTest.C:513
 AliVertexerTracksTest.C:514
 AliVertexerTracksTest.C:515
 AliVertexerTracksTest.C:516
 AliVertexerTracksTest.C:517
 AliVertexerTracksTest.C:518
 AliVertexerTracksTest.C:519
 AliVertexerTracksTest.C:520
 AliVertexerTracksTest.C:521
 AliVertexerTracksTest.C:522
 AliVertexerTracksTest.C:523
 AliVertexerTracksTest.C:524
 AliVertexerTracksTest.C:525
 AliVertexerTracksTest.C:526
 AliVertexerTracksTest.C:527
 AliVertexerTracksTest.C:528
 AliVertexerTracksTest.C:529
 AliVertexerTracksTest.C:530
 AliVertexerTracksTest.C:531
 AliVertexerTracksTest.C:532
 AliVertexerTracksTest.C:533
 AliVertexerTracksTest.C:534
 AliVertexerTracksTest.C:535
 AliVertexerTracksTest.C:536
 AliVertexerTracksTest.C:537
 AliVertexerTracksTest.C:538
 AliVertexerTracksTest.C:539
 AliVertexerTracksTest.C:540
 AliVertexerTracksTest.C:541
 AliVertexerTracksTest.C:542
 AliVertexerTracksTest.C:543
 AliVertexerTracksTest.C:544
 AliVertexerTracksTest.C:545
 AliVertexerTracksTest.C:546
 AliVertexerTracksTest.C:547
 AliVertexerTracksTest.C:548
 AliVertexerTracksTest.C:549
 AliVertexerTracksTest.C:550
 AliVertexerTracksTest.C:551
 AliVertexerTracksTest.C:552
 AliVertexerTracksTest.C:553
 AliVertexerTracksTest.C:554
 AliVertexerTracksTest.C:555
 AliVertexerTracksTest.C:556
 AliVertexerTracksTest.C:557
 AliVertexerTracksTest.C:558
 AliVertexerTracksTest.C:559
 AliVertexerTracksTest.C:560
 AliVertexerTracksTest.C:561
 AliVertexerTracksTest.C:562
 AliVertexerTracksTest.C:563
 AliVertexerTracksTest.C:564
 AliVertexerTracksTest.C:565
 AliVertexerTracksTest.C:566
 AliVertexerTracksTest.C:567
 AliVertexerTracksTest.C:568
 AliVertexerTracksTest.C:569
 AliVertexerTracksTest.C:570
 AliVertexerTracksTest.C:571
 AliVertexerTracksTest.C:572
 AliVertexerTracksTest.C:573
 AliVertexerTracksTest.C:574
 AliVertexerTracksTest.C:575
 AliVertexerTracksTest.C:576
 AliVertexerTracksTest.C:577
 AliVertexerTracksTest.C:578
 AliVertexerTracksTest.C:579
 AliVertexerTracksTest.C:580
 AliVertexerTracksTest.C:581
 AliVertexerTracksTest.C:582
 AliVertexerTracksTest.C:583
 AliVertexerTracksTest.C:584
 AliVertexerTracksTest.C:585
 AliVertexerTracksTest.C:586
 AliVertexerTracksTest.C:587
 AliVertexerTracksTest.C:588
 AliVertexerTracksTest.C:589
 AliVertexerTracksTest.C:590
 AliVertexerTracksTest.C:591
 AliVertexerTracksTest.C:592
 AliVertexerTracksTest.C:593
 AliVertexerTracksTest.C:594
 AliVertexerTracksTest.C:595
 AliVertexerTracksTest.C:596
 AliVertexerTracksTest.C:597
 AliVertexerTracksTest.C:598
 AliVertexerTracksTest.C:599
 AliVertexerTracksTest.C:600
 AliVertexerTracksTest.C:601
 AliVertexerTracksTest.C:602
 AliVertexerTracksTest.C:603
 AliVertexerTracksTest.C:604
 AliVertexerTracksTest.C:605
 AliVertexerTracksTest.C:606
 AliVertexerTracksTest.C:607
 AliVertexerTracksTest.C:608
 AliVertexerTracksTest.C:609
 AliVertexerTracksTest.C:610
 AliVertexerTracksTest.C:611
 AliVertexerTracksTest.C:612
 AliVertexerTracksTest.C:613
 AliVertexerTracksTest.C:614
 AliVertexerTracksTest.C:615
 AliVertexerTracksTest.C:616
 AliVertexerTracksTest.C:617
 AliVertexerTracksTest.C:618
 AliVertexerTracksTest.C:619
 AliVertexerTracksTest.C:620
 AliVertexerTracksTest.C:621
 AliVertexerTracksTest.C:622
 AliVertexerTracksTest.C:623
 AliVertexerTracksTest.C:624
 AliVertexerTracksTest.C:625
 AliVertexerTracksTest.C:626
 AliVertexerTracksTest.C:627
 AliVertexerTracksTest.C:628
 AliVertexerTracksTest.C:629
 AliVertexerTracksTest.C:630
 AliVertexerTracksTest.C:631
 AliVertexerTracksTest.C:632
 AliVertexerTracksTest.C:633
 AliVertexerTracksTest.C:634
 AliVertexerTracksTest.C:635
 AliVertexerTracksTest.C:636
 AliVertexerTracksTest.C:637
 AliVertexerTracksTest.C:638
 AliVertexerTracksTest.C:639
 AliVertexerTracksTest.C:640
 AliVertexerTracksTest.C:641
 AliVertexerTracksTest.C:642
 AliVertexerTracksTest.C:643
 AliVertexerTracksTest.C:644
 AliVertexerTracksTest.C:645
 AliVertexerTracksTest.C:646
 AliVertexerTracksTest.C:647
 AliVertexerTracksTest.C:648
 AliVertexerTracksTest.C:649
 AliVertexerTracksTest.C:650
 AliVertexerTracksTest.C:651
 AliVertexerTracksTest.C:652
 AliVertexerTracksTest.C:653
 AliVertexerTracksTest.C:654
 AliVertexerTracksTest.C:655
 AliVertexerTracksTest.C:656
 AliVertexerTracksTest.C:657
 AliVertexerTracksTest.C:658
 AliVertexerTracksTest.C:659
 AliVertexerTracksTest.C:660
 AliVertexerTracksTest.C:661
 AliVertexerTracksTest.C:662
 AliVertexerTracksTest.C:663
 AliVertexerTracksTest.C:664
 AliVertexerTracksTest.C:665
 AliVertexerTracksTest.C:666
 AliVertexerTracksTest.C:667
 AliVertexerTracksTest.C:668
 AliVertexerTracksTest.C:669
 AliVertexerTracksTest.C:670
 AliVertexerTracksTest.C:671
 AliVertexerTracksTest.C:672
 AliVertexerTracksTest.C:673
 AliVertexerTracksTest.C:674
 AliVertexerTracksTest.C:675
 AliVertexerTracksTest.C:676
 AliVertexerTracksTest.C:677
 AliVertexerTracksTest.C:678
 AliVertexerTracksTest.C:679
 AliVertexerTracksTest.C:680
 AliVertexerTracksTest.C:681
 AliVertexerTracksTest.C:682
 AliVertexerTracksTest.C:683
 AliVertexerTracksTest.C:684
 AliVertexerTracksTest.C:685
 AliVertexerTracksTest.C:686
 AliVertexerTracksTest.C:687
 AliVertexerTracksTest.C:688
 AliVertexerTracksTest.C:689
 AliVertexerTracksTest.C:690
 AliVertexerTracksTest.C:691
 AliVertexerTracksTest.C:692
 AliVertexerTracksTest.C:693
 AliVertexerTracksTest.C:694
 AliVertexerTracksTest.C:695
 AliVertexerTracksTest.C:696
 AliVertexerTracksTest.C:697
 AliVertexerTracksTest.C:698
 AliVertexerTracksTest.C:699
 AliVertexerTracksTest.C:700
 AliVertexerTracksTest.C:701
 AliVertexerTracksTest.C:702
 AliVertexerTracksTest.C:703
 AliVertexerTracksTest.C:704
 AliVertexerTracksTest.C:705
 AliVertexerTracksTest.C:706
 AliVertexerTracksTest.C:707
 AliVertexerTracksTest.C:708
 AliVertexerTracksTest.C:709
 AliVertexerTracksTest.C:710
 AliVertexerTracksTest.C:711
 AliVertexerTracksTest.C:712
 AliVertexerTracksTest.C:713
 AliVertexerTracksTest.C:714
 AliVertexerTracksTest.C:715
 AliVertexerTracksTest.C:716
 AliVertexerTracksTest.C:717
 AliVertexerTracksTest.C:718
 AliVertexerTracksTest.C:719
 AliVertexerTracksTest.C:720
 AliVertexerTracksTest.C:721
 AliVertexerTracksTest.C:722
 AliVertexerTracksTest.C:723
 AliVertexerTracksTest.C:724
 AliVertexerTracksTest.C:725
 AliVertexerTracksTest.C:726
 AliVertexerTracksTest.C:727
 AliVertexerTracksTest.C:728
 AliVertexerTracksTest.C:729
 AliVertexerTracksTest.C:730
 AliVertexerTracksTest.C:731
 AliVertexerTracksTest.C:732
 AliVertexerTracksTest.C:733
 AliVertexerTracksTest.C:734
 AliVertexerTracksTest.C:735
 AliVertexerTracksTest.C:736
 AliVertexerTracksTest.C:737
 AliVertexerTracksTest.C:738
 AliVertexerTracksTest.C:739
 AliVertexerTracksTest.C:740
 AliVertexerTracksTest.C:741
 AliVertexerTracksTest.C:742
 AliVertexerTracksTest.C:743
 AliVertexerTracksTest.C:744
 AliVertexerTracksTest.C:745
 AliVertexerTracksTest.C:746
 AliVertexerTracksTest.C:747
 AliVertexerTracksTest.C:748
 AliVertexerTracksTest.C:749
 AliVertexerTracksTest.C:750
 AliVertexerTracksTest.C:751
 AliVertexerTracksTest.C:752
 AliVertexerTracksTest.C:753
 AliVertexerTracksTest.C:754
 AliVertexerTracksTest.C:755
 AliVertexerTracksTest.C:756
 AliVertexerTracksTest.C:757
 AliVertexerTracksTest.C:758
 AliVertexerTracksTest.C:759
 AliVertexerTracksTest.C:760
 AliVertexerTracksTest.C:761
 AliVertexerTracksTest.C:762
 AliVertexerTracksTest.C:763
 AliVertexerTracksTest.C:764
 AliVertexerTracksTest.C:765
 AliVertexerTracksTest.C:766
 AliVertexerTracksTest.C:767
 AliVertexerTracksTest.C:768
 AliVertexerTracksTest.C:769
 AliVertexerTracksTest.C:770
 AliVertexerTracksTest.C:771
 AliVertexerTracksTest.C:772
 AliVertexerTracksTest.C:773
 AliVertexerTracksTest.C:774
 AliVertexerTracksTest.C:775
 AliVertexerTracksTest.C:776
 AliVertexerTracksTest.C:777
 AliVertexerTracksTest.C:778
 AliVertexerTracksTest.C:779
 AliVertexerTracksTest.C:780
 AliVertexerTracksTest.C:781
 AliVertexerTracksTest.C:782
 AliVertexerTracksTest.C:783
 AliVertexerTracksTest.C:784
 AliVertexerTracksTest.C:785
 AliVertexerTracksTest.C:786
 AliVertexerTracksTest.C:787
 AliVertexerTracksTest.C:788
 AliVertexerTracksTest.C:789
 AliVertexerTracksTest.C:790
 AliVertexerTracksTest.C:791
 AliVertexerTracksTest.C:792
 AliVertexerTracksTest.C:793
 AliVertexerTracksTest.C:794
 AliVertexerTracksTest.C:795
 AliVertexerTracksTest.C:796
 AliVertexerTracksTest.C:797
 AliVertexerTracksTest.C:798
 AliVertexerTracksTest.C:799
 AliVertexerTracksTest.C:800
 AliVertexerTracksTest.C:801
 AliVertexerTracksTest.C:802
 AliVertexerTracksTest.C:803
 AliVertexerTracksTest.C:804
 AliVertexerTracksTest.C:805
 AliVertexerTracksTest.C:806
 AliVertexerTracksTest.C:807
 AliVertexerTracksTest.C:808
 AliVertexerTracksTest.C:809
 AliVertexerTracksTest.C:810
 AliVertexerTracksTest.C:811
 AliVertexerTracksTest.C:812
 AliVertexerTracksTest.C:813
 AliVertexerTracksTest.C:814
 AliVertexerTracksTest.C:815
 AliVertexerTracksTest.C:816
 AliVertexerTracksTest.C:817
 AliVertexerTracksTest.C:818
 AliVertexerTracksTest.C:819
 AliVertexerTracksTest.C:820
 AliVertexerTracksTest.C:821
 AliVertexerTracksTest.C:822
 AliVertexerTracksTest.C:823
 AliVertexerTracksTest.C:824
 AliVertexerTracksTest.C:825
 AliVertexerTracksTest.C:826
 AliVertexerTracksTest.C:827
 AliVertexerTracksTest.C:828
 AliVertexerTracksTest.C:829
 AliVertexerTracksTest.C:830
 AliVertexerTracksTest.C:831
 AliVertexerTracksTest.C:832
 AliVertexerTracksTest.C:833
 AliVertexerTracksTest.C:834
 AliVertexerTracksTest.C:835
 AliVertexerTracksTest.C:836
 AliVertexerTracksTest.C:837
 AliVertexerTracksTest.C:838
 AliVertexerTracksTest.C:839
 AliVertexerTracksTest.C:840
 AliVertexerTracksTest.C:841
 AliVertexerTracksTest.C:842
 AliVertexerTracksTest.C:843
 AliVertexerTracksTest.C:844
 AliVertexerTracksTest.C:845
 AliVertexerTracksTest.C:846
 AliVertexerTracksTest.C:847
 AliVertexerTracksTest.C:848
 AliVertexerTracksTest.C:849
 AliVertexerTracksTest.C:850
 AliVertexerTracksTest.C:851
 AliVertexerTracksTest.C:852
 AliVertexerTracksTest.C:853
 AliVertexerTracksTest.C:854
 AliVertexerTracksTest.C:855
 AliVertexerTracksTest.C:856
 AliVertexerTracksTest.C:857
 AliVertexerTracksTest.C:858
 AliVertexerTracksTest.C:859
 AliVertexerTracksTest.C:860
 AliVertexerTracksTest.C:861
 AliVertexerTracksTest.C:862
 AliVertexerTracksTest.C:863
 AliVertexerTracksTest.C:864
 AliVertexerTracksTest.C:865
 AliVertexerTracksTest.C:866
 AliVertexerTracksTest.C:867
 AliVertexerTracksTest.C:868
 AliVertexerTracksTest.C:869
 AliVertexerTracksTest.C:870
 AliVertexerTracksTest.C:871
 AliVertexerTracksTest.C:872
 AliVertexerTracksTest.C:873
 AliVertexerTracksTest.C:874
 AliVertexerTracksTest.C:875
 AliVertexerTracksTest.C:876
 AliVertexerTracksTest.C:877
 AliVertexerTracksTest.C:878
 AliVertexerTracksTest.C:879
 AliVertexerTracksTest.C:880
 AliVertexerTracksTest.C:881
 AliVertexerTracksTest.C:882
 AliVertexerTracksTest.C:883
 AliVertexerTracksTest.C:884
 AliVertexerTracksTest.C:885
 AliVertexerTracksTest.C:886
 AliVertexerTracksTest.C:887
 AliVertexerTracksTest.C:888
 AliVertexerTracksTest.C:889
 AliVertexerTracksTest.C:890
 AliVertexerTracksTest.C:891
 AliVertexerTracksTest.C:892
 AliVertexerTracksTest.C:893
 AliVertexerTracksTest.C:894
 AliVertexerTracksTest.C:895
 AliVertexerTracksTest.C:896
 AliVertexerTracksTest.C:897
 AliVertexerTracksTest.C:898
 AliVertexerTracksTest.C:899
 AliVertexerTracksTest.C:900
 AliVertexerTracksTest.C:901
 AliVertexerTracksTest.C:902
 AliVertexerTracksTest.C:903
 AliVertexerTracksTest.C:904
 AliVertexerTracksTest.C:905
 AliVertexerTracksTest.C:906
 AliVertexerTracksTest.C:907
 AliVertexerTracksTest.C:908
 AliVertexerTracksTest.C:909
 AliVertexerTracksTest.C:910
 AliVertexerTracksTest.C:911
 AliVertexerTracksTest.C:912
 AliVertexerTracksTest.C:913
 AliVertexerTracksTest.C:914
 AliVertexerTracksTest.C:915
 AliVertexerTracksTest.C:916
 AliVertexerTracksTest.C:917
 AliVertexerTracksTest.C:918
 AliVertexerTracksTest.C:919
 AliVertexerTracksTest.C:920
 AliVertexerTracksTest.C:921
 AliVertexerTracksTest.C:922
 AliVertexerTracksTest.C:923
 AliVertexerTracksTest.C:924
 AliVertexerTracksTest.C:925
 AliVertexerTracksTest.C:926
 AliVertexerTracksTest.C:927
 AliVertexerTracksTest.C:928
 AliVertexerTracksTest.C:929
 AliVertexerTracksTest.C:930
 AliVertexerTracksTest.C:931
 AliVertexerTracksTest.C:932
 AliVertexerTracksTest.C:933
 AliVertexerTracksTest.C:934
 AliVertexerTracksTest.C:935
 AliVertexerTracksTest.C:936
 AliVertexerTracksTest.C:937
 AliVertexerTracksTest.C:938
 AliVertexerTracksTest.C:939
 AliVertexerTracksTest.C:940
 AliVertexerTracksTest.C:941
 AliVertexerTracksTest.C:942
 AliVertexerTracksTest.C:943
 AliVertexerTracksTest.C:944
 AliVertexerTracksTest.C:945
 AliVertexerTracksTest.C:946
 AliVertexerTracksTest.C:947
 AliVertexerTracksTest.C:948
 AliVertexerTracksTest.C:949
 AliVertexerTracksTest.C:950
 AliVertexerTracksTest.C:951
 AliVertexerTracksTest.C:952
 AliVertexerTracksTest.C:953
 AliVertexerTracksTest.C:954
 AliVertexerTracksTest.C:955
 AliVertexerTracksTest.C:956
 AliVertexerTracksTest.C:957
 AliVertexerTracksTest.C:958
 AliVertexerTracksTest.C:959
 AliVertexerTracksTest.C:960
 AliVertexerTracksTest.C:961
 AliVertexerTracksTest.C:962
 AliVertexerTracksTest.C:963
 AliVertexerTracksTest.C:964
 AliVertexerTracksTest.C:965
 AliVertexerTracksTest.C:966
 AliVertexerTracksTest.C:967
 AliVertexerTracksTest.C:968
 AliVertexerTracksTest.C:969
 AliVertexerTracksTest.C:970
 AliVertexerTracksTest.C:971
 AliVertexerTracksTest.C:972
 AliVertexerTracksTest.C:973
 AliVertexerTracksTest.C:974
 AliVertexerTracksTest.C:975
 AliVertexerTracksTest.C:976
 AliVertexerTracksTest.C:977
 AliVertexerTracksTest.C:978
 AliVertexerTracksTest.C:979
 AliVertexerTracksTest.C:980
 AliVertexerTracksTest.C:981
 AliVertexerTracksTest.C:982
 AliVertexerTracksTest.C:983
 AliVertexerTracksTest.C:984
 AliVertexerTracksTest.C:985
 AliVertexerTracksTest.C:986
 AliVertexerTracksTest.C:987
 AliVertexerTracksTest.C:988
 AliVertexerTracksTest.C:989
 AliVertexerTracksTest.C:990
 AliVertexerTracksTest.C:991
 AliVertexerTracksTest.C:992
 AliVertexerTracksTest.C:993
 AliVertexerTracksTest.C:994
 AliVertexerTracksTest.C:995
 AliVertexerTracksTest.C:996
 AliVertexerTracksTest.C:997
 AliVertexerTracksTest.C:998
 AliVertexerTracksTest.C:999
 AliVertexerTracksTest.C:1000
 AliVertexerTracksTest.C:1001
 AliVertexerTracksTest.C:1002
 AliVertexerTracksTest.C:1003
 AliVertexerTracksTest.C:1004
 AliVertexerTracksTest.C:1005
 AliVertexerTracksTest.C:1006
 AliVertexerTracksTest.C:1007
 AliVertexerTracksTest.C:1008
 AliVertexerTracksTest.C:1009
 AliVertexerTracksTest.C:1010
 AliVertexerTracksTest.C:1011
 AliVertexerTracksTest.C:1012
 AliVertexerTracksTest.C:1013
 AliVertexerTracksTest.C:1014
 AliVertexerTracksTest.C:1015
 AliVertexerTracksTest.C:1016
 AliVertexerTracksTest.C:1017
 AliVertexerTracksTest.C:1018
 AliVertexerTracksTest.C:1019
 AliVertexerTracksTest.C:1020
 AliVertexerTracksTest.C:1021
 AliVertexerTracksTest.C:1022
 AliVertexerTracksTest.C:1023
 AliVertexerTracksTest.C:1024
 AliVertexerTracksTest.C:1025
 AliVertexerTracksTest.C:1026
 AliVertexerTracksTest.C:1027
 AliVertexerTracksTest.C:1028
 AliVertexerTracksTest.C:1029
 AliVertexerTracksTest.C:1030
 AliVertexerTracksTest.C:1031
 AliVertexerTracksTest.C:1032
 AliVertexerTracksTest.C:1033
 AliVertexerTracksTest.C:1034
 AliVertexerTracksTest.C:1035
 AliVertexerTracksTest.C:1036
 AliVertexerTracksTest.C:1037
 AliVertexerTracksTest.C:1038
 AliVertexerTracksTest.C:1039
 AliVertexerTracksTest.C:1040
 AliVertexerTracksTest.C:1041
 AliVertexerTracksTest.C:1042
 AliVertexerTracksTest.C:1043
 AliVertexerTracksTest.C:1044
 AliVertexerTracksTest.C:1045
 AliVertexerTracksTest.C:1046
 AliVertexerTracksTest.C:1047
 AliVertexerTracksTest.C:1048
 AliVertexerTracksTest.C:1049
 AliVertexerTracksTest.C:1050
 AliVertexerTracksTest.C:1051
 AliVertexerTracksTest.C:1052
 AliVertexerTracksTest.C:1053
 AliVertexerTracksTest.C:1054
 AliVertexerTracksTest.C:1055
 AliVertexerTracksTest.C:1056
 AliVertexerTracksTest.C:1057
 AliVertexerTracksTest.C:1058
 AliVertexerTracksTest.C:1059
 AliVertexerTracksTest.C:1060
 AliVertexerTracksTest.C:1061
 AliVertexerTracksTest.C:1062
 AliVertexerTracksTest.C:1063
 AliVertexerTracksTest.C:1064
 AliVertexerTracksTest.C:1065
 AliVertexerTracksTest.C:1066
 AliVertexerTracksTest.C:1067
 AliVertexerTracksTest.C:1068
 AliVertexerTracksTest.C:1069
 AliVertexerTracksTest.C:1070
 AliVertexerTracksTest.C:1071
 AliVertexerTracksTest.C:1072
 AliVertexerTracksTest.C:1073
 AliVertexerTracksTest.C:1074
 AliVertexerTracksTest.C:1075
 AliVertexerTracksTest.C:1076
 AliVertexerTracksTest.C:1077
 AliVertexerTracksTest.C:1078
 AliVertexerTracksTest.C:1079
 AliVertexerTracksTest.C:1080
 AliVertexerTracksTest.C:1081
 AliVertexerTracksTest.C:1082
 AliVertexerTracksTest.C:1083
 AliVertexerTracksTest.C:1084
 AliVertexerTracksTest.C:1085
 AliVertexerTracksTest.C:1086
 AliVertexerTracksTest.C:1087
 AliVertexerTracksTest.C:1088
 AliVertexerTracksTest.C:1089
 AliVertexerTracksTest.C:1090
 AliVertexerTracksTest.C:1091
 AliVertexerTracksTest.C:1092
 AliVertexerTracksTest.C:1093
 AliVertexerTracksTest.C:1094
 AliVertexerTracksTest.C:1095
 AliVertexerTracksTest.C:1096
 AliVertexerTracksTest.C:1097
 AliVertexerTracksTest.C:1098
 AliVertexerTracksTest.C:1099
 AliVertexerTracksTest.C:1100
 AliVertexerTracksTest.C:1101
 AliVertexerTracksTest.C:1102
 AliVertexerTracksTest.C:1103
 AliVertexerTracksTest.C:1104
 AliVertexerTracksTest.C:1105
 AliVertexerTracksTest.C:1106
 AliVertexerTracksTest.C:1107
 AliVertexerTracksTest.C:1108
 AliVertexerTracksTest.C:1109
 AliVertexerTracksTest.C:1110
 AliVertexerTracksTest.C:1111
 AliVertexerTracksTest.C:1112
 AliVertexerTracksTest.C:1113
 AliVertexerTracksTest.C:1114
 AliVertexerTracksTest.C:1115
 AliVertexerTracksTest.C:1116
 AliVertexerTracksTest.C:1117
 AliVertexerTracksTest.C:1118
 AliVertexerTracksTest.C:1119
 AliVertexerTracksTest.C:1120
 AliVertexerTracksTest.C:1121
 AliVertexerTracksTest.C:1122
 AliVertexerTracksTest.C:1123
 AliVertexerTracksTest.C:1124
 AliVertexerTracksTest.C:1125
 AliVertexerTracksTest.C:1126
 AliVertexerTracksTest.C:1127
 AliVertexerTracksTest.C:1128
 AliVertexerTracksTest.C:1129
 AliVertexerTracksTest.C:1130
 AliVertexerTracksTest.C:1131
 AliVertexerTracksTest.C:1132
 AliVertexerTracksTest.C:1133
 AliVertexerTracksTest.C:1134
 AliVertexerTracksTest.C:1135
 AliVertexerTracksTest.C:1136
 AliVertexerTracksTest.C:1137
 AliVertexerTracksTest.C:1138
 AliVertexerTracksTest.C:1139
 AliVertexerTracksTest.C:1140
 AliVertexerTracksTest.C:1141
 AliVertexerTracksTest.C:1142
 AliVertexerTracksTest.C:1143
 AliVertexerTracksTest.C:1144
 AliVertexerTracksTest.C:1145
 AliVertexerTracksTest.C:1146
 AliVertexerTracksTest.C:1147
 AliVertexerTracksTest.C:1148
 AliVertexerTracksTest.C:1149
 AliVertexerTracksTest.C:1150
 AliVertexerTracksTest.C:1151
 AliVertexerTracksTest.C:1152
 AliVertexerTracksTest.C:1153
 AliVertexerTracksTest.C:1154
 AliVertexerTracksTest.C:1155
 AliVertexerTracksTest.C:1156
 AliVertexerTracksTest.C:1157
 AliVertexerTracksTest.C:1158
 AliVertexerTracksTest.C:1159
 AliVertexerTracksTest.C:1160
 AliVertexerTracksTest.C:1161
 AliVertexerTracksTest.C:1162
 AliVertexerTracksTest.C:1163
 AliVertexerTracksTest.C:1164
 AliVertexerTracksTest.C:1165
 AliVertexerTracksTest.C:1166
 AliVertexerTracksTest.C:1167
 AliVertexerTracksTest.C:1168
 AliVertexerTracksTest.C:1169
 AliVertexerTracksTest.C:1170
 AliVertexerTracksTest.C:1171
 AliVertexerTracksTest.C:1172
 AliVertexerTracksTest.C:1173
 AliVertexerTracksTest.C:1174
 AliVertexerTracksTest.C:1175
 AliVertexerTracksTest.C:1176
 AliVertexerTracksTest.C:1177
 AliVertexerTracksTest.C:1178
 AliVertexerTracksTest.C:1179
 AliVertexerTracksTest.C:1180
 AliVertexerTracksTest.C:1181
 AliVertexerTracksTest.C:1182
 AliVertexerTracksTest.C:1183
 AliVertexerTracksTest.C:1184
 AliVertexerTracksTest.C:1185
 AliVertexerTracksTest.C:1186
 AliVertexerTracksTest.C:1187
 AliVertexerTracksTest.C:1188
 AliVertexerTracksTest.C:1189
 AliVertexerTracksTest.C:1190
 AliVertexerTracksTest.C:1191
 AliVertexerTracksTest.C:1192
 AliVertexerTracksTest.C:1193
 AliVertexerTracksTest.C:1194
 AliVertexerTracksTest.C:1195
 AliVertexerTracksTest.C:1196
 AliVertexerTracksTest.C:1197
 AliVertexerTracksTest.C:1198
 AliVertexerTracksTest.C:1199
 AliVertexerTracksTest.C:1200
 AliVertexerTracksTest.C:1201
 AliVertexerTracksTest.C:1202
 AliVertexerTracksTest.C:1203
 AliVertexerTracksTest.C:1204
 AliVertexerTracksTest.C:1205
 AliVertexerTracksTest.C:1206
 AliVertexerTracksTest.C:1207
 AliVertexerTracksTest.C:1208
 AliVertexerTracksTest.C:1209
 AliVertexerTracksTest.C:1210
 AliVertexerTracksTest.C:1211
 AliVertexerTracksTest.C:1212
 AliVertexerTracksTest.C:1213
 AliVertexerTracksTest.C:1214
 AliVertexerTracksTest.C:1215
 AliVertexerTracksTest.C:1216
 AliVertexerTracksTest.C:1217
 AliVertexerTracksTest.C:1218
 AliVertexerTracksTest.C:1219
 AliVertexerTracksTest.C:1220
 AliVertexerTracksTest.C:1221
 AliVertexerTracksTest.C:1222
 AliVertexerTracksTest.C:1223
 AliVertexerTracksTest.C:1224
 AliVertexerTracksTest.C:1225
 AliVertexerTracksTest.C:1226
 AliVertexerTracksTest.C:1227
 AliVertexerTracksTest.C:1228
 AliVertexerTracksTest.C:1229
 AliVertexerTracksTest.C:1230
 AliVertexerTracksTest.C:1231
 AliVertexerTracksTest.C:1232
 AliVertexerTracksTest.C:1233
 AliVertexerTracksTest.C:1234
 AliVertexerTracksTest.C:1235
 AliVertexerTracksTest.C:1236
 AliVertexerTracksTest.C:1237
 AliVertexerTracksTest.C:1238
 AliVertexerTracksTest.C:1239
 AliVertexerTracksTest.C:1240
 AliVertexerTracksTest.C:1241
 AliVertexerTracksTest.C:1242
 AliVertexerTracksTest.C:1243
 AliVertexerTracksTest.C:1244
 AliVertexerTracksTest.C:1245
 AliVertexerTracksTest.C:1246
 AliVertexerTracksTest.C:1247
 AliVertexerTracksTest.C:1248
 AliVertexerTracksTest.C:1249
 AliVertexerTracksTest.C:1250
 AliVertexerTracksTest.C:1251
 AliVertexerTracksTest.C:1252
 AliVertexerTracksTest.C:1253
 AliVertexerTracksTest.C:1254
 AliVertexerTracksTest.C:1255
 AliVertexerTracksTest.C:1256
 AliVertexerTracksTest.C:1257
 AliVertexerTracksTest.C:1258
 AliVertexerTracksTest.C:1259
 AliVertexerTracksTest.C:1260
 AliVertexerTracksTest.C:1261
 AliVertexerTracksTest.C:1262
 AliVertexerTracksTest.C:1263
 AliVertexerTracksTest.C:1264
 AliVertexerTracksTest.C:1265
 AliVertexerTracksTest.C:1266
 AliVertexerTracksTest.C:1267
 AliVertexerTracksTest.C:1268
 AliVertexerTracksTest.C:1269
 AliVertexerTracksTest.C:1270
 AliVertexerTracksTest.C:1271
 AliVertexerTracksTest.C:1272
 AliVertexerTracksTest.C:1273
 AliVertexerTracksTest.C:1274
 AliVertexerTracksTest.C:1275
 AliVertexerTracksTest.C:1276
 AliVertexerTracksTest.C:1277
 AliVertexerTracksTest.C:1278
 AliVertexerTracksTest.C:1279
 AliVertexerTracksTest.C:1280
 AliVertexerTracksTest.C:1281
 AliVertexerTracksTest.C:1282
 AliVertexerTracksTest.C:1283
 AliVertexerTracksTest.C:1284
 AliVertexerTracksTest.C:1285
 AliVertexerTracksTest.C:1286
 AliVertexerTracksTest.C:1287
 AliVertexerTracksTest.C:1288
 AliVertexerTracksTest.C:1289
 AliVertexerTracksTest.C:1290
 AliVertexerTracksTest.C:1291
 AliVertexerTracksTest.C:1292
 AliVertexerTracksTest.C:1293
 AliVertexerTracksTest.C:1294
 AliVertexerTracksTest.C:1295
 AliVertexerTracksTest.C:1296
 AliVertexerTracksTest.C:1297
 AliVertexerTracksTest.C:1298
 AliVertexerTracksTest.C:1299
 AliVertexerTracksTest.C:1300
 AliVertexerTracksTest.C:1301
 AliVertexerTracksTest.C:1302
 AliVertexerTracksTest.C:1303
 AliVertexerTracksTest.C:1304
 AliVertexerTracksTest.C:1305
 AliVertexerTracksTest.C:1306
 AliVertexerTracksTest.C:1307
 AliVertexerTracksTest.C:1308
 AliVertexerTracksTest.C:1309
 AliVertexerTracksTest.C:1310
 AliVertexerTracksTest.C:1311
 AliVertexerTracksTest.C:1312
 AliVertexerTracksTest.C:1313
 AliVertexerTracksTest.C:1314
 AliVertexerTracksTest.C:1315
 AliVertexerTracksTest.C:1316
 AliVertexerTracksTest.C:1317
 AliVertexerTracksTest.C:1318
 AliVertexerTracksTest.C:1319
 AliVertexerTracksTest.C:1320
 AliVertexerTracksTest.C:1321
 AliVertexerTracksTest.C:1322
 AliVertexerTracksTest.C:1323
 AliVertexerTracksTest.C:1324
 AliVertexerTracksTest.C:1325
 AliVertexerTracksTest.C:1326
 AliVertexerTracksTest.C:1327
 AliVertexerTracksTest.C:1328
 AliVertexerTracksTest.C:1329
 AliVertexerTracksTest.C:1330
 AliVertexerTracksTest.C:1331
 AliVertexerTracksTest.C:1332
 AliVertexerTracksTest.C:1333
 AliVertexerTracksTest.C:1334
 AliVertexerTracksTest.C:1335
 AliVertexerTracksTest.C:1336
 AliVertexerTracksTest.C:1337
 AliVertexerTracksTest.C:1338
 AliVertexerTracksTest.C:1339
 AliVertexerTracksTest.C:1340
 AliVertexerTracksTest.C:1341
 AliVertexerTracksTest.C:1342
 AliVertexerTracksTest.C:1343
 AliVertexerTracksTest.C:1344
 AliVertexerTracksTest.C:1345
 AliVertexerTracksTest.C:1346
 AliVertexerTracksTest.C:1347
 AliVertexerTracksTest.C:1348
 AliVertexerTracksTest.C:1349
 AliVertexerTracksTest.C:1350
 AliVertexerTracksTest.C:1351
 AliVertexerTracksTest.C:1352
 AliVertexerTracksTest.C:1353
 AliVertexerTracksTest.C:1354
 AliVertexerTracksTest.C:1355
 AliVertexerTracksTest.C:1356
 AliVertexerTracksTest.C:1357
 AliVertexerTracksTest.C:1358
 AliVertexerTracksTest.C:1359
 AliVertexerTracksTest.C:1360
 AliVertexerTracksTest.C:1361
 AliVertexerTracksTest.C:1362
 AliVertexerTracksTest.C:1363
 AliVertexerTracksTest.C:1364
 AliVertexerTracksTest.C:1365
 AliVertexerTracksTest.C:1366
 AliVertexerTracksTest.C:1367
 AliVertexerTracksTest.C:1368
 AliVertexerTracksTest.C:1369
 AliVertexerTracksTest.C:1370
 AliVertexerTracksTest.C:1371
 AliVertexerTracksTest.C:1372
 AliVertexerTracksTest.C:1373
 AliVertexerTracksTest.C:1374
 AliVertexerTracksTest.C:1375
 AliVertexerTracksTest.C:1376
 AliVertexerTracksTest.C:1377
 AliVertexerTracksTest.C:1378
 AliVertexerTracksTest.C:1379
 AliVertexerTracksTest.C:1380
 AliVertexerTracksTest.C:1381
 AliVertexerTracksTest.C:1382
 AliVertexerTracksTest.C:1383
 AliVertexerTracksTest.C:1384
 AliVertexerTracksTest.C:1385
 AliVertexerTracksTest.C:1386
 AliVertexerTracksTest.C:1387
 AliVertexerTracksTest.C:1388
 AliVertexerTracksTest.C:1389
 AliVertexerTracksTest.C:1390
 AliVertexerTracksTest.C:1391
 AliVertexerTracksTest.C:1392
 AliVertexerTracksTest.C:1393
 AliVertexerTracksTest.C:1394
 AliVertexerTracksTest.C:1395
 AliVertexerTracksTest.C:1396
 AliVertexerTracksTest.C:1397
 AliVertexerTracksTest.C:1398
 AliVertexerTracksTest.C:1399
 AliVertexerTracksTest.C:1400
 AliVertexerTracksTest.C:1401
 AliVertexerTracksTest.C:1402
 AliVertexerTracksTest.C:1403
 AliVertexerTracksTest.C:1404
 AliVertexerTracksTest.C:1405
 AliVertexerTracksTest.C:1406
 AliVertexerTracksTest.C:1407
 AliVertexerTracksTest.C:1408
 AliVertexerTracksTest.C:1409
 AliVertexerTracksTest.C:1410
 AliVertexerTracksTest.C:1411
 AliVertexerTracksTest.C:1412
 AliVertexerTracksTest.C:1413
 AliVertexerTracksTest.C:1414
 AliVertexerTracksTest.C:1415
 AliVertexerTracksTest.C:1416
 AliVertexerTracksTest.C:1417
 AliVertexerTracksTest.C:1418
 AliVertexerTracksTest.C:1419
 AliVertexerTracksTest.C:1420
 AliVertexerTracksTest.C:1421
 AliVertexerTracksTest.C:1422
 AliVertexerTracksTest.C:1423
 AliVertexerTracksTest.C:1424
 AliVertexerTracksTest.C:1425
 AliVertexerTracksTest.C:1426
 AliVertexerTracksTest.C:1427
 AliVertexerTracksTest.C:1428
 AliVertexerTracksTest.C:1429
 AliVertexerTracksTest.C:1430
 AliVertexerTracksTest.C:1431
 AliVertexerTracksTest.C:1432
 AliVertexerTracksTest.C:1433
 AliVertexerTracksTest.C:1434
 AliVertexerTracksTest.C:1435
 AliVertexerTracksTest.C:1436
 AliVertexerTracksTest.C:1437
 AliVertexerTracksTest.C:1438
 AliVertexerTracksTest.C:1439
 AliVertexerTracksTest.C:1440
 AliVertexerTracksTest.C:1441
 AliVertexerTracksTest.C:1442
 AliVertexerTracksTest.C:1443
 AliVertexerTracksTest.C:1444
 AliVertexerTracksTest.C:1445
 AliVertexerTracksTest.C:1446
 AliVertexerTracksTest.C:1447
 AliVertexerTracksTest.C:1448
 AliVertexerTracksTest.C:1449
 AliVertexerTracksTest.C:1450
 AliVertexerTracksTest.C:1451
 AliVertexerTracksTest.C:1452
 AliVertexerTracksTest.C:1453
 AliVertexerTracksTest.C:1454
 AliVertexerTracksTest.C:1455
 AliVertexerTracksTest.C:1456
 AliVertexerTracksTest.C:1457
 AliVertexerTracksTest.C:1458
 AliVertexerTracksTest.C:1459
 AliVertexerTracksTest.C:1460
 AliVertexerTracksTest.C:1461
 AliVertexerTracksTest.C:1462
 AliVertexerTracksTest.C:1463
 AliVertexerTracksTest.C:1464
 AliVertexerTracksTest.C:1465
 AliVertexerTracksTest.C:1466
 AliVertexerTracksTest.C:1467
 AliVertexerTracksTest.C:1468
 AliVertexerTracksTest.C:1469
 AliVertexerTracksTest.C:1470
 AliVertexerTracksTest.C:1471
 AliVertexerTracksTest.C:1472
 AliVertexerTracksTest.C:1473
 AliVertexerTracksTest.C:1474
 AliVertexerTracksTest.C:1475
 AliVertexerTracksTest.C:1476
 AliVertexerTracksTest.C:1477
 AliVertexerTracksTest.C:1478
 AliVertexerTracksTest.C:1479
 AliVertexerTracksTest.C:1480
 AliVertexerTracksTest.C:1481
 AliVertexerTracksTest.C:1482
 AliVertexerTracksTest.C:1483
 AliVertexerTracksTest.C:1484
 AliVertexerTracksTest.C:1485
 AliVertexerTracksTest.C:1486
 AliVertexerTracksTest.C:1487
 AliVertexerTracksTest.C:1488
 AliVertexerTracksTest.C:1489
 AliVertexerTracksTest.C:1490
 AliVertexerTracksTest.C:1491
 AliVertexerTracksTest.C:1492
 AliVertexerTracksTest.C:1493
 AliVertexerTracksTest.C:1494
 AliVertexerTracksTest.C:1495
 AliVertexerTracksTest.C:1496
 AliVertexerTracksTest.C:1497
 AliVertexerTracksTest.C:1498
 AliVertexerTracksTest.C:1499
 AliVertexerTracksTest.C:1500
 AliVertexerTracksTest.C:1501
 AliVertexerTracksTest.C:1502
 AliVertexerTracksTest.C:1503
 AliVertexerTracksTest.C:1504
 AliVertexerTracksTest.C:1505
 AliVertexerTracksTest.C:1506
 AliVertexerTracksTest.C:1507
 AliVertexerTracksTest.C:1508
 AliVertexerTracksTest.C:1509
 AliVertexerTracksTest.C:1510
 AliVertexerTracksTest.C:1511
 AliVertexerTracksTest.C:1512
 AliVertexerTracksTest.C:1513
 AliVertexerTracksTest.C:1514
 AliVertexerTracksTest.C:1515
 AliVertexerTracksTest.C:1516
 AliVertexerTracksTest.C:1517
 AliVertexerTracksTest.C:1518
 AliVertexerTracksTest.C:1519
 AliVertexerTracksTest.C:1520
 AliVertexerTracksTest.C:1521
 AliVertexerTracksTest.C:1522
 AliVertexerTracksTest.C:1523
 AliVertexerTracksTest.C:1524
 AliVertexerTracksTest.C:1525
 AliVertexerTracksTest.C:1526
 AliVertexerTracksTest.C:1527
 AliVertexerTracksTest.C:1528
 AliVertexerTracksTest.C:1529
 AliVertexerTracksTest.C:1530
 AliVertexerTracksTest.C:1531
 AliVertexerTracksTest.C:1532
 AliVertexerTracksTest.C:1533
 AliVertexerTracksTest.C:1534
 AliVertexerTracksTest.C:1535
 AliVertexerTracksTest.C:1536
 AliVertexerTracksTest.C:1537
 AliVertexerTracksTest.C:1538
 AliVertexerTracksTest.C:1539
 AliVertexerTracksTest.C:1540
 AliVertexerTracksTest.C:1541
 AliVertexerTracksTest.C:1542
 AliVertexerTracksTest.C:1543
 AliVertexerTracksTest.C:1544
 AliVertexerTracksTest.C:1545
 AliVertexerTracksTest.C:1546
 AliVertexerTracksTest.C:1547
 AliVertexerTracksTest.C:1548
 AliVertexerTracksTest.C:1549
 AliVertexerTracksTest.C:1550
 AliVertexerTracksTest.C:1551
 AliVertexerTracksTest.C:1552
 AliVertexerTracksTest.C:1553
 AliVertexerTracksTest.C:1554
 AliVertexerTracksTest.C:1555
 AliVertexerTracksTest.C:1556
 AliVertexerTracksTest.C:1557
 AliVertexerTracksTest.C:1558
 AliVertexerTracksTest.C:1559
 AliVertexerTracksTest.C:1560
 AliVertexerTracksTest.C:1561
 AliVertexerTracksTest.C:1562
 AliVertexerTracksTest.C:1563
 AliVertexerTracksTest.C:1564
 AliVertexerTracksTest.C:1565
 AliVertexerTracksTest.C:1566
 AliVertexerTracksTest.C:1567
 AliVertexerTracksTest.C:1568
 AliVertexerTracksTest.C:1569
 AliVertexerTracksTest.C:1570
 AliVertexerTracksTest.C:1571
 AliVertexerTracksTest.C:1572
 AliVertexerTracksTest.C:1573
 AliVertexerTracksTest.C:1574
 AliVertexerTracksTest.C:1575
 AliVertexerTracksTest.C:1576
 AliVertexerTracksTest.C:1577
 AliVertexerTracksTest.C:1578
 AliVertexerTracksTest.C:1579
 AliVertexerTracksTest.C:1580
 AliVertexerTracksTest.C:1581
 AliVertexerTracksTest.C:1582
 AliVertexerTracksTest.C:1583
 AliVertexerTracksTest.C:1584
 AliVertexerTracksTest.C:1585
 AliVertexerTracksTest.C:1586
 AliVertexerTracksTest.C:1587
 AliVertexerTracksTest.C:1588
 AliVertexerTracksTest.C:1589
 AliVertexerTracksTest.C:1590
 AliVertexerTracksTest.C:1591
 AliVertexerTracksTest.C:1592
 AliVertexerTracksTest.C:1593
 AliVertexerTracksTest.C:1594
 AliVertexerTracksTest.C:1595
 AliVertexerTracksTest.C:1596
 AliVertexerTracksTest.C:1597
 AliVertexerTracksTest.C:1598
 AliVertexerTracksTest.C:1599
 AliVertexerTracksTest.C:1600
 AliVertexerTracksTest.C:1601
 AliVertexerTracksTest.C:1602
 AliVertexerTracksTest.C:1603
 AliVertexerTracksTest.C:1604
 AliVertexerTracksTest.C:1605
 AliVertexerTracksTest.C:1606
 AliVertexerTracksTest.C:1607
 AliVertexerTracksTest.C:1608
 AliVertexerTracksTest.C:1609
 AliVertexerTracksTest.C:1610
 AliVertexerTracksTest.C:1611
 AliVertexerTracksTest.C:1612
 AliVertexerTracksTest.C:1613
 AliVertexerTracksTest.C:1614
 AliVertexerTracksTest.C:1615
 AliVertexerTracksTest.C:1616
 AliVertexerTracksTest.C:1617
 AliVertexerTracksTest.C:1618
 AliVertexerTracksTest.C:1619
 AliVertexerTracksTest.C:1620
 AliVertexerTracksTest.C:1621
 AliVertexerTracksTest.C:1622
 AliVertexerTracksTest.C:1623
 AliVertexerTracksTest.C:1624
 AliVertexerTracksTest.C:1625
 AliVertexerTracksTest.C:1626
 AliVertexerTracksTest.C:1627
 AliVertexerTracksTest.C:1628
 AliVertexerTracksTest.C:1629
 AliVertexerTracksTest.C:1630
 AliVertexerTracksTest.C:1631
 AliVertexerTracksTest.C:1632
 AliVertexerTracksTest.C:1633
 AliVertexerTracksTest.C:1634
 AliVertexerTracksTest.C:1635
 AliVertexerTracksTest.C:1636
 AliVertexerTracksTest.C:1637
 AliVertexerTracksTest.C:1638
 AliVertexerTracksTest.C:1639
 AliVertexerTracksTest.C:1640
 AliVertexerTracksTest.C:1641
 AliVertexerTracksTest.C:1642
 AliVertexerTracksTest.C:1643
 AliVertexerTracksTest.C:1644
 AliVertexerTracksTest.C:1645
 AliVertexerTracksTest.C:1646
 AliVertexerTracksTest.C:1647
 AliVertexerTracksTest.C:1648
 AliVertexerTracksTest.C:1649
 AliVertexerTracksTest.C:1650
 AliVertexerTracksTest.C:1651
 AliVertexerTracksTest.C:1652
 AliVertexerTracksTest.C:1653
 AliVertexerTracksTest.C:1654
 AliVertexerTracksTest.C:1655
 AliVertexerTracksTest.C:1656
 AliVertexerTracksTest.C:1657
 AliVertexerTracksTest.C:1658
 AliVertexerTracksTest.C:1659
 AliVertexerTracksTest.C:1660
 AliVertexerTracksTest.C:1661
 AliVertexerTracksTest.C:1662
 AliVertexerTracksTest.C:1663
 AliVertexerTracksTest.C:1664
 AliVertexerTracksTest.C:1665
 AliVertexerTracksTest.C:1666
 AliVertexerTracksTest.C:1667
 AliVertexerTracksTest.C:1668
 AliVertexerTracksTest.C:1669
 AliVertexerTracksTest.C:1670
 AliVertexerTracksTest.C:1671
 AliVertexerTracksTest.C:1672
 AliVertexerTracksTest.C:1673
 AliVertexerTracksTest.C:1674
 AliVertexerTracksTest.C:1675
 AliVertexerTracksTest.C:1676
 AliVertexerTracksTest.C:1677
 AliVertexerTracksTest.C:1678
 AliVertexerTracksTest.C:1679
 AliVertexerTracksTest.C:1680
 AliVertexerTracksTest.C:1681
 AliVertexerTracksTest.C:1682
 AliVertexerTracksTest.C:1683
 AliVertexerTracksTest.C:1684
 AliVertexerTracksTest.C:1685
 AliVertexerTracksTest.C:1686
 AliVertexerTracksTest.C:1687
 AliVertexerTracksTest.C:1688
 AliVertexerTracksTest.C:1689
 AliVertexerTracksTest.C:1690
 AliVertexerTracksTest.C:1691
 AliVertexerTracksTest.C:1692
 AliVertexerTracksTest.C:1693
 AliVertexerTracksTest.C:1694
 AliVertexerTracksTest.C:1695
 AliVertexerTracksTest.C:1696
 AliVertexerTracksTest.C:1697
 AliVertexerTracksTest.C:1698
 AliVertexerTracksTest.C:1699
 AliVertexerTracksTest.C:1700
 AliVertexerTracksTest.C:1701
 AliVertexerTracksTest.C:1702
 AliVertexerTracksTest.C:1703
 AliVertexerTracksTest.C:1704
 AliVertexerTracksTest.C:1705
 AliVertexerTracksTest.C:1706
 AliVertexerTracksTest.C:1707
 AliVertexerTracksTest.C:1708
 AliVertexerTracksTest.C:1709
 AliVertexerTracksTest.C:1710
 AliVertexerTracksTest.C:1711
 AliVertexerTracksTest.C:1712
 AliVertexerTracksTest.C:1713
 AliVertexerTracksTest.C:1714
 AliVertexerTracksTest.C:1715
 AliVertexerTracksTest.C:1716
 AliVertexerTracksTest.C:1717
 AliVertexerTracksTest.C:1718
 AliVertexerTracksTest.C:1719
 AliVertexerTracksTest.C:1720
 AliVertexerTracksTest.C:1721
 AliVertexerTracksTest.C:1722
 AliVertexerTracksTest.C:1723
 AliVertexerTracksTest.C:1724
 AliVertexerTracksTest.C:1725
 AliVertexerTracksTest.C:1726
 AliVertexerTracksTest.C:1727
 AliVertexerTracksTest.C:1728
 AliVertexerTracksTest.C:1729
 AliVertexerTracksTest.C:1730
 AliVertexerTracksTest.C:1731
 AliVertexerTracksTest.C:1732
 AliVertexerTracksTest.C:1733
 AliVertexerTracksTest.C:1734
 AliVertexerTracksTest.C:1735
 AliVertexerTracksTest.C:1736
 AliVertexerTracksTest.C:1737
 AliVertexerTracksTest.C:1738
 AliVertexerTracksTest.C:1739
 AliVertexerTracksTest.C:1740
 AliVertexerTracksTest.C:1741
 AliVertexerTracksTest.C:1742
 AliVertexerTracksTest.C:1743
 AliVertexerTracksTest.C:1744
 AliVertexerTracksTest.C:1745
 AliVertexerTracksTest.C:1746
 AliVertexerTracksTest.C:1747
 AliVertexerTracksTest.C:1748
 AliVertexerTracksTest.C:1749
 AliVertexerTracksTest.C:1750
 AliVertexerTracksTest.C:1751
 AliVertexerTracksTest.C:1752
 AliVertexerTracksTest.C:1753
 AliVertexerTracksTest.C:1754
 AliVertexerTracksTest.C:1755
 AliVertexerTracksTest.C:1756
 AliVertexerTracksTest.C:1757
 AliVertexerTracksTest.C:1758
 AliVertexerTracksTest.C:1759
 AliVertexerTracksTest.C:1760
 AliVertexerTracksTest.C:1761
 AliVertexerTracksTest.C:1762
 AliVertexerTracksTest.C:1763
 AliVertexerTracksTest.C:1764
 AliVertexerTracksTest.C:1765
 AliVertexerTracksTest.C:1766
 AliVertexerTracksTest.C:1767
 AliVertexerTracksTest.C:1768
 AliVertexerTracksTest.C:1769
 AliVertexerTracksTest.C:1770
 AliVertexerTracksTest.C:1771
 AliVertexerTracksTest.C:1772
 AliVertexerTracksTest.C:1773
 AliVertexerTracksTest.C:1774
 AliVertexerTracksTest.C:1775
 AliVertexerTracksTest.C:1776
 AliVertexerTracksTest.C:1777
 AliVertexerTracksTest.C:1778
 AliVertexerTracksTest.C:1779
 AliVertexerTracksTest.C:1780
 AliVertexerTracksTest.C:1781
 AliVertexerTracksTest.C:1782
 AliVertexerTracksTest.C:1783
 AliVertexerTracksTest.C:1784
 AliVertexerTracksTest.C:1785
 AliVertexerTracksTest.C:1786
 AliVertexerTracksTest.C:1787
 AliVertexerTracksTest.C:1788
 AliVertexerTracksTest.C:1789
 AliVertexerTracksTest.C:1790
 AliVertexerTracksTest.C:1791
 AliVertexerTracksTest.C:1792
 AliVertexerTracksTest.C:1793
 AliVertexerTracksTest.C:1794
 AliVertexerTracksTest.C:1795
 AliVertexerTracksTest.C:1796
 AliVertexerTracksTest.C:1797
 AliVertexerTracksTest.C:1798
 AliVertexerTracksTest.C:1799
 AliVertexerTracksTest.C:1800
 AliVertexerTracksTest.C:1801
 AliVertexerTracksTest.C:1802
 AliVertexerTracksTest.C:1803
 AliVertexerTracksTest.C:1804
 AliVertexerTracksTest.C:1805
 AliVertexerTracksTest.C:1806
 AliVertexerTracksTest.C:1807
 AliVertexerTracksTest.C:1808
 AliVertexerTracksTest.C:1809
 AliVertexerTracksTest.C:1810
 AliVertexerTracksTest.C:1811
 AliVertexerTracksTest.C:1812
 AliVertexerTracksTest.C:1813
 AliVertexerTracksTest.C:1814
 AliVertexerTracksTest.C:1815
 AliVertexerTracksTest.C:1816
 AliVertexerTracksTest.C:1817
 AliVertexerTracksTest.C:1818
 AliVertexerTracksTest.C:1819
 AliVertexerTracksTest.C:1820
 AliVertexerTracksTest.C:1821
 AliVertexerTracksTest.C:1822
 AliVertexerTracksTest.C:1823
 AliVertexerTracksTest.C:1824
 AliVertexerTracksTest.C:1825
 AliVertexerTracksTest.C:1826
 AliVertexerTracksTest.C:1827
 AliVertexerTracksTest.C:1828
 AliVertexerTracksTest.C:1829
 AliVertexerTracksTest.C:1830
 AliVertexerTracksTest.C:1831
 AliVertexerTracksTest.C:1832
 AliVertexerTracksTest.C:1833
 AliVertexerTracksTest.C:1834
 AliVertexerTracksTest.C:1835
 AliVertexerTracksTest.C:1836
 AliVertexerTracksTest.C:1837
 AliVertexerTracksTest.C:1838
 AliVertexerTracksTest.C:1839
 AliVertexerTracksTest.C:1840
 AliVertexerTracksTest.C:1841
 AliVertexerTracksTest.C:1842
 AliVertexerTracksTest.C:1843
 AliVertexerTracksTest.C:1844
 AliVertexerTracksTest.C:1845
 AliVertexerTracksTest.C:1846
 AliVertexerTracksTest.C:1847
 AliVertexerTracksTest.C:1848
 AliVertexerTracksTest.C:1849
 AliVertexerTracksTest.C:1850
 AliVertexerTracksTest.C:1851
 AliVertexerTracksTest.C:1852
 AliVertexerTracksTest.C:1853
 AliVertexerTracksTest.C:1854
 AliVertexerTracksTest.C:1855
 AliVertexerTracksTest.C:1856
 AliVertexerTracksTest.C:1857
 AliVertexerTracksTest.C:1858
 AliVertexerTracksTest.C:1859
 AliVertexerTracksTest.C:1860
 AliVertexerTracksTest.C:1861
 AliVertexerTracksTest.C:1862
 AliVertexerTracksTest.C:1863
 AliVertexerTracksTest.C:1864
 AliVertexerTracksTest.C:1865
 AliVertexerTracksTest.C:1866
 AliVertexerTracksTest.C:1867
 AliVertexerTracksTest.C:1868
 AliVertexerTracksTest.C:1869
 AliVertexerTracksTest.C:1870
 AliVertexerTracksTest.C:1871
 AliVertexerTracksTest.C:1872
 AliVertexerTracksTest.C:1873
 AliVertexerTracksTest.C:1874
 AliVertexerTracksTest.C:1875
 AliVertexerTracksTest.C:1876
 AliVertexerTracksTest.C:1877
 AliVertexerTracksTest.C:1878
 AliVertexerTracksTest.C:1879
 AliVertexerTracksTest.C:1880
 AliVertexerTracksTest.C:1881
 AliVertexerTracksTest.C:1882
 AliVertexerTracksTest.C:1883
 AliVertexerTracksTest.C:1884
 AliVertexerTracksTest.C:1885
 AliVertexerTracksTest.C:1886
 AliVertexerTracksTest.C:1887
 AliVertexerTracksTest.C:1888
 AliVertexerTracksTest.C:1889
 AliVertexerTracksTest.C:1890
 AliVertexerTracksTest.C:1891
 AliVertexerTracksTest.C:1892
 AliVertexerTracksTest.C:1893
 AliVertexerTracksTest.C:1894
 AliVertexerTracksTest.C:1895
 AliVertexerTracksTest.C:1896
 AliVertexerTracksTest.C:1897
 AliVertexerTracksTest.C:1898
 AliVertexerTracksTest.C:1899
 AliVertexerTracksTest.C:1900
 AliVertexerTracksTest.C:1901
 AliVertexerTracksTest.C:1902
 AliVertexerTracksTest.C:1903
 AliVertexerTracksTest.C:1904
 AliVertexerTracksTest.C:1905
 AliVertexerTracksTest.C:1906
 AliVertexerTracksTest.C:1907
 AliVertexerTracksTest.C:1908
 AliVertexerTracksTest.C:1909
 AliVertexerTracksTest.C:1910
 AliVertexerTracksTest.C:1911
 AliVertexerTracksTest.C:1912
 AliVertexerTracksTest.C:1913
 AliVertexerTracksTest.C:1914