ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

/* $Id$ */

//
///////////////////////////////////////////////////////////////////////////////
//                                                                           //
//  Time Projection Chamber version 2 -- detailed TPC and slow simulation    //
//                                                                           //
//Begin_Html
/*
<img src="picts/AliTPCv2Class.gif">
*/
//End_Html
//                                                                           //
//                                                                           //
///////////////////////////////////////////////////////////////////////////////

//#include <stdlib.h>

#include <TLorentzVector.h>
#include <TPDGCode.h>
#include <TString.h>
#include "AliLog.h"
#include "AliMathBase.h"
#include "AliTrackReference.h"
#include "AliTPCParam.h"
#include "AliTPCTrackHitsV2.h"
#include "AliTPCv2.h"
#include "AliGeomManager.h"
#include "TGeoVolume.h"
#include "TGeoPcon.h"
#include "TGeoTube.h"
#include "TGeoCone.h"
#include "TGeoPgon.h"
#include "TGeoTrd1.h"
#include "TGeoCompositeShape.h"
#include "TGeoPara.h"
#include "TGeoPhysicalNode.h"
#include "TGeoHalfSpace.h"
#include "TTreeStream.h"
#include "TGeoArb8.h"

using std::ifstream;
using std::ios_base;
extern "C"{
  Gas gaspar_;
};
ClassImp(AliTPCv2)
 
//_____________________________________________________________________________
AliTPCv2::AliTPCv2(const char *name, const char *title) :
  AliTPC(name, title),
  fIdSens(0),
  fIDrift(0),
  fSecOld(0) 
{
  //
  // Standard constructor for Time Projection Chamber version 2
  //


  SetBufferSize(128000);
  if(!fTPCParam) {AliFatal("TPC parameters not set");
      return;
  }
  gaspar_.fpot=fTPCParam->GetFpot();
  gaspar_.eend=fTPCParam->GetEend();
  gaspar_.eexpo=fTPCParam->GetExp();


}
 
//_____________________________________________________________________________
void AliTPCv2::CreateGeometry()
{
  //
  // Create the geometry of Time Projection Chamber version 2
  //
  //Begin_Html
  /*
    <img src="picts/AliTPC.gif">
  */
  //End_Html
  //Begin_Html
  /*
    <img src="picts/AliTPCv2Tree.gif">
  */
  //End_Html

  //----------------------------------------------------------
  // This geometry is written using TGeo class
  // Firstly the shapes are defined, and only then the volumes
  // What is recognized by the MC are volumes
  //----------------------------------------------------------
  //
  //  tpc - this will be the mother volume
  //

  //
  // here I define a volume TPC
  // retrive the medium name with "TPC_" as a leading string
  //
  TGeoPcon *tpc = new TGeoPcon(0.,360.,30); //30 sections
  //
  tpc->DefineSection(0,-289.6,77.,278.);
  tpc->DefineSection(1,-262.1,77.,278.);
  //
  tpc->DefineSection(2,-262.1,83.1,278.);
  tpc->DefineSection(3,-260.,83.1,278.);
  //
  tpc->DefineSection(4,-260.,70.,278.);    
  tpc->DefineSection(5,-259.6,70.,278.);
  //
  tpc->DefineSection(6,-259.6,68.1,278.);
  tpc->DefineSection(7,-253.6,68.1,278.);
  //
  tpc->DefineSection(8,-253.6,67.88,278.);//hs
  tpc->DefineSection(9,-74.0,60.68,278.);// hs
  //
  tpc->DefineSection(10,-74.0,60.1,278.);
  tpc->DefineSection(11,-73.3,60.1,278.);
  //
  tpc->DefineSection(12,-73.3,56.9,278.); 
  tpc->DefineSection(13,-68.5,56.9,278.);
  //
  tpc->DefineSection(14,-68.5,60.,278.);
  tpc->DefineSection(15,-64.7,60.,278.);
  //
  tpc->DefineSection(16,-64.7,56.9,278.); 
  tpc->DefineSection(17,73.3,56.9,278.);
  //
  tpc->DefineSection(18,73.3,60.1,278.);
  tpc->DefineSection(19,74.0,60.1,278.);
  //
  tpc->DefineSection(20,74.0,60.68,278.);// hs
  tpc->DefineSection(21,253.6,65.38,278.);// hs
  //
  tpc->DefineSection(22,253.6,65.6,278.);
  tpc->DefineSection(23,259.6,65.6,278.);
  //
  tpc->DefineSection(24,259.6,70.0,278.);
  tpc->DefineSection(25,260.,70.0,278.);
  //
  tpc->DefineSection(26,260.,83.1,278.);
  tpc->DefineSection(27,262.1,83.1,278.);
  //
  tpc->DefineSection(28,262.1,77.,278);
  tpc->DefineSection(29,289.6,77.,278.);
  //
  TGeoMedium *m1 = gGeoManager->GetMedium("TPC_Air");
  TGeoVolume *v1 = new TGeoVolume("TPC_M",tpc,m1);
  //
  // drift volume - sensitive volume, extended beyond the
  // endcaps, because of the alignment
  //
  TGeoPcon *dvol = new TGeoPcon(0.,360.,6);
  dvol->DefineSection(0,-260.,74.5,264.4);
  dvol->DefineSection(1,-253.6,74.5,264.4);
  //
  dvol->DefineSection(2,-253.6,76.6774,258.);
  dvol->DefineSection(3,253.6,76.6774,258.); 
  //
  dvol->DefineSection(4,253.6,74.5,264.4);
  dvol->DefineSection(5,260.,74.5,264.4);
  //
  TGeoMedium *m5 = gGeoManager->GetMedium("TPC_DriftGas2");
  TGeoVolume *v9 = new TGeoVolume("TPC_Drift",dvol,m5);
  //
  v1->AddNode(v9,1);
  //
  // outer insulator
  //
  TGeoPcon *tpco = new TGeoPcon(0.,360.,6); //insulator
  //
  tpco->DefineSection(0,-256.6,264.8,278.);
  tpco->DefineSection(1,-253.6,264.8,278.);
  //
  tpco->DefineSection(2,-253.6,258.,278.);
  tpco->DefineSection(3,250.6,258.,278.);
  //
  tpco->DefineSection(4,250.6,258.,275.5);
  tpco->DefineSection(5,253.6,258.,275.5);
  //
  TGeoMedium *m2 = gGeoManager->GetMedium("TPC_CO2");
  TGeoVolume *v2 = new TGeoVolume("TPC_OI",tpco,m2);
  //
  TGeoRotation *segrot;//segment rotations
  //
  // outer containment vessel
  //
  TGeoPcon *tocv = new TGeoPcon(0.,360.,6);  // containment vessel
  //
  tocv->DefineSection(0,-256.6,264.8,278.);
  tocv->DefineSection(1,-253.6,264.8,278.);
  //
  tocv->DefineSection(2,-253.6,274.8124,278.);
  tocv->DefineSection(3,247.6,274.8124,278.);  
  //
  tocv->DefineSection(4,247.6,270.4,278.);
  tocv->DefineSection(5,250.6,270.4,278.);
  //
  TGeoMedium *m3 = gGeoManager->GetMedium("TPC_Al");
  TGeoVolume *v3 = new TGeoVolume("TPC_OCV",tocv,m3); 
  //
  TGeoTubeSeg *to1 = new TGeoTubeSeg(274.8174,277.995,252.1,0.,59.9); //epoxy
  TGeoTubeSeg *to2 = new TGeoTubeSeg(274.8274,277.985,252.1,0.,59.9); //tedlar
  TGeoTubeSeg *to3 = new TGeoTubeSeg(274.8312,277.9812,252.1,0.,59.9);//prepreg2
  TGeoTubeSeg *to4 = new TGeoTubeSeg(274.9062,277.9062,252.1,0.,59.9);//nomex
  TGeoTubeSeg *tog5 = new TGeoTubeSeg(274.8174,277.995,252.1,59.9,60.);//epoxy
  //
  TGeoMedium *sm1 = gGeoManager->GetMedium("TPC_Epoxy");
  TGeoMedium *sm2 = gGeoManager->GetMedium("TPC_Tedlar");
  TGeoMedium *sm3 = gGeoManager->GetMedium("TPC_Prepreg2");
  TGeoMedium *sm4 = gGeoManager->GetMedium("TPC_Nomex");
  //
  TGeoMedium *smep = gGeoManager->GetMedium("TPC_Epoxy1");
  //
  TGeoVolume *tov1 = new TGeoVolume("TPC_OCV1",to1,sm1);
  TGeoVolume *tov2 = new TGeoVolume("TPC_OCV2",to2,sm2);
  TGeoVolume *tov3 = new TGeoVolume("TPC_OCV3",to3,sm3);
  TGeoVolume *tov4 = new TGeoVolume("TPC_OCV4",to4,sm4);
  TGeoVolume *togv5 = new TGeoVolume("TPC_OCVG5",tog5,sm1);
  //
  TGeoMedium *mhs = gGeoManager->GetMedium("TPC_Steel");
  TGeoMedium *m12 =  gGeoManager->GetMedium("TPC_Water");
  //-------------------------------------------------------
  //  Tpc Outer Field Cage
  //  daughters - composite (sandwich)
  //-------------------------------------------------------

  TGeoPcon *tofc = new TGeoPcon(0.,360.,6);
  //
  tofc->DefineSection(0,-253.6,258.,269.6);
  tofc->DefineSection(1,-250.6,258.,269.6);
  //
  tofc->DefineSection(2,-250.6,258.,260.0676); 
  tofc->DefineSection(3,250.6,258.,260.0676);
  //
  tofc->DefineSection(4,250.6,258.,275.5);
  tofc->DefineSection(5,253.6,258.,275.5);
  //
  TGeoVolume *v4 = new TGeoVolume("TPC_TOFC",tofc,m3); 
  //sandwich
  TGeoTubeSeg *tf1 = new TGeoTubeSeg(258.0,260.0676,252.1,0.,59.9); //tedlar
  TGeoTubeSeg *tf2 = new TGeoTubeSeg(258.0038,260.0638,252.1,0.,59.9); //prepreg3
  TGeoTubeSeg *tf3 = new TGeoTubeSeg(258.0338,260.0338,252.1,0.,59.9);//nomex
  TGeoTubeSeg *tfg4 = new TGeoTubeSeg(258.0,260.0676,252.1,59.9,60.); //epoxy glue
  //
  TGeoMedium *sm5 = gGeoManager->GetMedium("TPC_Prepreg3");
  //
  TGeoVolume *tf1v = new TGeoVolume("TPC_OFC1",tf1,sm2);
  TGeoVolume *tf2v = new TGeoVolume("TPC_OFC2",tf2,sm5);
  TGeoVolume *tf3v = new TGeoVolume("TPC_OFC3",tf3,sm4);
  TGeoVolume *tfg4v = new TGeoVolume("TPC_OFCG4",tfg4,smep);
  //
  // outer part - positioning
  //
  tov1->AddNode(tov2,1); tov2->AddNode(tov3,1); tov3->AddNode(tov4,1);//ocv
  //
  tf1v->AddNode(tf2v,1); tf2v->AddNode(tf3v,1);//ofc
  //
  TGeoVolumeAssembly *t200 = new TGeoVolumeAssembly("TPC_OCVSEG");
  TGeoVolumeAssembly *t300 = new TGeoVolumeAssembly("TPC_OFCSEG");
  //
  // assembly OCV and OFC
  //
  // 1st - no rotation
  t200->AddNode(tov1,1); t200->AddNode(togv5,1);
  t300->AddNode(tf1v,1); t300->AddNode(tfg4v,1);
  // 2nd - rotation 60 deg
  segrot = new TGeoRotation();
  segrot->RotateZ(60.);
  t200->AddNode(tov1,2,segrot); t200->AddNode(togv5,2,segrot);
  t300->AddNode(tf1v,2,segrot); t300->AddNode(tfg4v,2,segrot);
  // 3rd rotation 120 deg
  segrot = new TGeoRotation();
  segrot->RotateZ(120.);
  t200->AddNode(tov1,3,segrot); t200->AddNode(togv5,3,segrot);
  t300->AddNode(tf1v,3,segrot); t300->AddNode(tfg4v,3,segrot);
  //4th rotation 180 deg
  segrot = new TGeoRotation();
  segrot->RotateZ(180.);
  t200->AddNode(tov1,4,segrot); t200->AddNode(togv5,4,segrot);
  t300->AddNode(tf1v,4,segrot); t300->AddNode(tfg4v,4,segrot);
  //5th rotation 240 deg
  segrot = new TGeoRotation();
  segrot->RotateZ(240.);
  t200->AddNode(tov1,5,segrot); t200->AddNode(togv5,5,segrot);
  t300->AddNode(tf1v,5,segrot); t300->AddNode(tfg4v,5,segrot);
  //6th rotation 300 deg
  segrot = new TGeoRotation();
  segrot->RotateZ(300.);
  t200->AddNode(tov1,6,segrot); t200->AddNode(togv5,6,segrot);
  t300->AddNode(tf1v,6,segrot); t300->AddNode(tfg4v,6,segrot);
  //
  v3->AddNode(t200,1,new TGeoTranslation(0.,0.,-1.5)); v4->AddNode(t300,1);
  //
  v2->AddNode(v3,1); v2->AddNode(v4,1); 
  //
  v1->AddNode(v2,1);
  //--------------------------------------------------------------------
  // Tpc Inner INsulator (CO2) 
  // the cones, the central drum and the inner f.c. sandwich with a piece
  // of the flane will be placed in the TPC
  //--------------------------------------------------------------------
  TGeoPcon *tpci = new TGeoPcon(0.,360.,4);
  //
  tpci->DefineSection(0,-253.6,68.4,76.6774);
  tpci->DefineSection(1,-74.0,61.2,76.6774);
  //
  tpci->DefineSection(2,74.0,61.2,76.6774);  
  //
  tpci->DefineSection(3,253.6,65.9,76.6774);
  //
  TGeoVolume *v5 = new TGeoVolume("TPC_INI",tpci,m2);
  //
  // now the inner field cage - only part of flanges (2 copies)
  //
  TGeoTube *tif1 = new TGeoTube(69.9,76.6774,1.5); 
  TGeoVolume *v6 = new TGeoVolume("TPC_IFC1",tif1,m3);
  //
 //---------------------------------------------------------
  // Tpc Inner Containment vessel - Muon side
  //---------------------------------------------------------
  TGeoPcon *tcms = new TGeoPcon(0.,360.,10);
  //
  tcms->DefineSection(0,-259.1,68.1,74.2);
  tcms->DefineSection(1,-253.6,68.1,74.2);
  //
  tcms->DefineSection(2,-253.6,68.1,68.4);
  tcms->DefineSection(3,-74.0,60.9,61.2);
  //
  tcms->DefineSection(4,-74.0,60.1,61.2);
  tcms->DefineSection(5,-73.3,60.1,61.2);
  //
  tcms->DefineSection(6,-73.3,56.9,61.2);
  tcms->DefineSection(7,-73.0,56.9,61.2);
  //
  tcms->DefineSection(8,-73.0,56.9,58.8);
  tcms->DefineSection(9,-71.3,56.9,58.8);
  //
  TGeoVolume *v7 = new TGeoVolume("TPC_ICVM",tcms,m3);
  //------------------------------------------------
  //  Heat screen muon side
  //------------------------------------------------
 
  TGeoCone *thsm = new TGeoCone(89.8,67.88,68.1,60.68,60.9);
  TGeoCone *thsmw = new TGeoCone(89.8,67.94,68.04,60.74,60.84);
  TGeoVolume *hvsm = new TGeoVolume("TPC_HSM",thsm,mhs); //steel
  TGeoVolume *hvsmw = new TGeoVolume("TPC_HSMW",thsmw,m12); //water 
  // assembly heat screen muon
  hvsm->AddNode(hvsmw,1);
  //-----------------------------------------------
  // inner containment vessel - shaft side
  //-----------------------------------------------
  TGeoPcon *tcss = new TGeoPcon(0.,360.,10);
  //
  tcss->DefineSection(0,71.3,56.9,58.8);
  tcss->DefineSection(1,73.0,56.9,58.8);
  //
  tcss->DefineSection(2,73.0,56.9,61.2);
  tcss->DefineSection(3,73.3,56.9,61.2);
  //  
  tcss->DefineSection(4,73.3,60.1,61.2);
  tcss->DefineSection(5,74.0,60.1,61.2);
  //
  tcss->DefineSection(6,74.0,60.9,61.2);
  tcss->DefineSection(7,253.6,65.6,65.9);
  //
  tcss->DefineSection(8,253.6,65.6,74.2);
  tcss->DefineSection(9,258.1,65.6,74.2);
  //
  TGeoVolume *v8 = new TGeoVolume("TPC_ICVS",tcss,m3);
  //-------------------------------------------------
  //  Heat screen shaft side
  //--------------------------------------------------
  TGeoCone *thss = new TGeoCone(89.8,60.68,60.9,65.38,65.6);       
  TGeoCone *thssw = new TGeoCone(89.8,60.74,60.84,65.44,65.54);     
  TGeoVolume *hvss = new TGeoVolume("TPC_HSS",thss,mhs); //steel
  TGeoVolume *hvssw = new TGeoVolume("TPC_HSSW",thssw,m12); //water 
  //assembly heat screen shaft
  hvss->AddNode(hvssw,1);
  //-----------------------------------------------
  //  Inner field cage
  //  define 4 parts and make an assembly
  //-----------------------------------------------
  // part1 - Al - 2 copies
  TGeoTube *t1 = new TGeoTube(76.6774,78.845,0.75);
  TGeoVolume *tv1 = new TGeoVolume("TPC_IFC2",t1,m3);
  // sandwich - outermost parts - 2 copies
  //
  // segment outermost
  //
  TGeoTubeSeg *t2 = new TGeoTubeSeg(76.6774,78.845,74.175,350.,109.4); // tedlar 38 microns
  TGeoTubeSeg *t3 = new TGeoTubeSeg(76.6812,78.8412,74.175,350.,109.4); // prepreg2 500 microns
  TGeoTubeSeg *t4 = new TGeoTubeSeg(76.7312,78.7912,74.175,350.,109.4); // prepreg3 300 microns
  TGeoTubeSeg *t5 = new TGeoTubeSeg(76.7612,78.7612,74.175,350.,109.4); // nomex 2 cm
  TGeoTubeSeg *tepox1 = new TGeoTubeSeg(76.6774,78.845,74.175,109.4,110.);//epoxy
  TGeoTubeSeg *tpr1 = new TGeoTubeSeg(78.845,78.885,74.175,109.,111.);
  
  // volumes for the outer part  
  TGeoVolume *tv2 = new TGeoVolume("TPC_IFC3",t2,sm2);
  TGeoVolume *tv3 = new TGeoVolume("TPC_IFC4",t3,sm3);
  TGeoVolume *tv4 = new TGeoVolume("TPC_IFC5",t4,sm5);
  TGeoVolume *tv5 = new TGeoVolume("TPC_IFC6",t5,sm4);
  TGeoVolume *tvep1 = new TGeoVolume("TPC_IFEPOX1",tepox1,smep); 
  TGeoVolume *tvpr1 = new TGeoVolume("TPC_PRSTR1",tpr1,sm2); 
  //
  // middle parts - 2 copies
  //
  // segment middle
  //
  TGeoTubeSeg *t6 = new TGeoTubeSeg(76.6774,78.795,5.,350.,109.4); // tedlar 38 microns
  TGeoTubeSeg *t7 = new TGeoTubeSeg(76.6812,78.7912,5.,350.,109.4); // prepreg2 250 microns
  TGeoTubeSeg *t8 = new TGeoTubeSeg(76.7062,78.7662,5.,350.,109.4); // prepreg3 300 microns
  TGeoTubeSeg *t9 = new TGeoTubeSeg(76.7362,78.7362,5.,350.,109.4); // nomex 2 cm
  TGeoTubeSeg *tepox2 = new TGeoTubeSeg(76.6774,78.795,5.,109.4,110.);//epoxy
  TGeoTubeSeg *tpr2 = new TGeoTubeSeg(78.795,78.835,5.,109.,111.);
  // volumes for the middle part
  TGeoVolume *tv6 = new TGeoVolume("TPC_IFC7",t6,sm2);
  TGeoVolume *tv7 = new TGeoVolume("TPC_IFC8",t7,sm3);
  TGeoVolume *tv8 = new TGeoVolume("TPC_IFC9",t8,sm5);
  TGeoVolume *tv9 = new TGeoVolume("TPC_IFC10",t9,sm4);
  TGeoVolume *tvep2 = new TGeoVolume("TPC_IFEPOX2",tepox2,smep);
  TGeoVolume *tvpr2 = new TGeoVolume("TPC_PRSTR2",tpr2,sm2);
  // central part - 1 copy
  // 
  // segment central part
  //
  TGeoTubeSeg *t10 = new TGeoTubeSeg(76.6774,78.785,93.75,350.,109.4); // tedlar 38 microns 
  TGeoTubeSeg *t11 = new TGeoTubeSeg(76.6812,78.7812,93.75,350.,109.4); // prepreg3 500 microns
  TGeoTubeSeg *t12 = new TGeoTubeSeg(76.7312,78.7312,93.75,350.,109.4); // nomex 2 cm 
  TGeoTubeSeg *tepox3 = new TGeoTubeSeg(76.6774,78.785,93.75,109.4,110.);//epoxy
  TGeoTubeSeg *tpr3 = new TGeoTubeSeg(78.785,78.825,93.75,109.,111.);
  // volumes for the central part
  TGeoVolume *tv10 = new TGeoVolume("TPC_IFC11",t10,sm2);
  TGeoVolume *tv11 = new TGeoVolume("TPC_IFC12",t11,sm5);
  TGeoVolume *tv12 = new TGeoVolume("TPC_IFC13",t12,sm4);
  TGeoVolume *tvep3 = new TGeoVolume("TPC_IFEPOX3",tepox3,smep);
  TGeoVolume *tvpr3 = new TGeoVolume("TPC_PRSTR3",tpr3,sm2);  
  //
  // creating a sandwich for the outer par,t tv2 is the mother
  //
  tv2->AddNode(tv3,1); tv3->AddNode(tv4,1); tv4->AddNode(tv5,1);
  //
  // creating a sandwich for the middle part, tv6 is the mother
  //
  tv6->AddNode(tv7,1); tv7->AddNode(tv8,1); tv8->AddNode(tv9,1);
  //
  // creating a sandwich for the central part, tv10 is the mother
  //
  tv10->AddNode(tv11,1); tv11->AddNode(tv12,1);
  //
  TGeoVolumeAssembly *tv100 = new TGeoVolumeAssembly("TPC_IFC"); // ifc itself - 3 segments

  //
  // first segment - no rotation
  //
  // central
  tv100->AddNode(tv10,1); //sandwich
  tv100->AddNode(tvep3,1);//epoxy
  tv100->AddNode(tvpr3,1);//prepreg strip				     
  // middle
  tv100->AddNode(tv6,1,new TGeoTranslation(0.,0.,-98.75)); //sandwich1
  tv100->AddNode(tv6,2,new TGeoTranslation(0.,0.,98.75)); // sandwich2
  tv100->AddNode(tvep2,1,new TGeoTranslation(0.,0.,-98.75)); //epoxy
  tv100->AddNode(tvep2,2,new TGeoTranslation(0.,0.,98.75)); //epoxy
  tv100->AddNode(tvpr2,1,new TGeoTranslation(0.,0.,-98.75));//prepreg strip
  tv100->AddNode(tvpr2,2,new TGeoTranslation(0.,0.,98.75));
  // outer
  tv100->AddNode(tv2,1,new TGeoTranslation(0.,0.,-177.925)); //sandwich
  tv100->AddNode(tv2,2,new TGeoTranslation(0.,0.,177.925));
  tv100->AddNode(tvep1,1,new TGeoTranslation(0.,0.,-177.925)); //epoxy
  tv100->AddNode(tvep1,2,new TGeoTranslation(0.,0.,177.925));
  tv100->AddNode(tvpr1,1,new TGeoTranslation(0.,0.,-177.925));//prepreg strip
  tv100->AddNode(tvpr1,2,new TGeoTranslation(0.,0.,-177.925));
  //
  // second segment - rotation 120 deg.
  //
  segrot = new TGeoRotation();
  segrot->RotateZ(120.);
  //
  // central	
  tv100->AddNode(tv10,2,segrot); //sandwich
  tv100->AddNode(tvep3,2,segrot);//epoxy
  tv100->AddNode(tvpr3,2,segrot);//prepreg strip
  // middle
  tv100->AddNode(tv6,3,new TGeoCombiTrans(0.,0.,-98.75,segrot)); //sandwich1
  tv100->AddNode(tv6,4,new TGeoCombiTrans(0.,0.,98.75,segrot)); // sandwich2
  tv100->AddNode(tvep2,3,new TGeoCombiTrans(0.,0.,-98.75,segrot)); //epoxy
  tv100->AddNode(tvep2,4,new TGeoCombiTrans(0.,0.,98.75,segrot)); //epoxy
  tv100->AddNode(tvpr2,3,new TGeoCombiTrans(0.,0.,-98.75,segrot));//prepreg strip
  tv100->AddNode(tvpr2,4,new TGeoCombiTrans(0.,0.,98.75,segrot));
  //outer
  tv100->AddNode(tv2,3,new TGeoCombiTrans(0.,0.,-177.925,segrot));//sandwich
  tv100->AddNode(tv2,4,new TGeoCombiTrans(0.,0.,177.925,segrot));
  tv100->AddNode(tvep1,3,new TGeoCombiTrans(0.,0.,-177.925,segrot));//epoxy
  tv100->AddNode(tvep1,4,new TGeoCombiTrans(0.,0.,177.925,segrot));
  tv100->AddNode(tvpr1,3,new TGeoCombiTrans(0.,0.,-177.925,segrot));//prepreg strip
  tv100->AddNode(tvpr1,4,new TGeoCombiTrans(0.,0.,177.925,segrot));
  //
  //  third segment - rotation 240 deg.
  //
  segrot = new TGeoRotation();
  segrot->RotateZ(240.);
  //
  // central	
  tv100->AddNode(tv10,3,segrot); //sandwich
  tv100->AddNode(tvep3,3,segrot);//epoxy
  tv100->AddNode(tvpr3,3,segrot);//prepreg strip
  // middle
  tv100->AddNode(tv6,5,new TGeoCombiTrans(0.,0.,-98.75,segrot)); //sandwich1
  tv100->AddNode(tv6,6,new TGeoCombiTrans(0.,0.,98.75,segrot)); // sandwich2
  tv100->AddNode(tvep2,5,new TGeoCombiTrans(0.,0.,-98.75,segrot)); //epoxy
  tv100->AddNode(tvep2,6,new TGeoCombiTrans(0.,0.,98.75,segrot)); //epoxy
  tv100->AddNode(tvpr2,5,new TGeoCombiTrans(0.,0.,-98.75,segrot));//prepreg strip
  tv100->AddNode(tvpr2,6,new TGeoCombiTrans(0.,0.,98.75,segrot));
  //outer
  tv100->AddNode(tv2,5,new TGeoCombiTrans(0.,0.,-177.925,segrot));//sandwich
  tv100->AddNode(tv2,6,new TGeoCombiTrans(0.,0.,177.925,segrot));
  tv100->AddNode(tvep1,5,new TGeoCombiTrans(0.,0.,-177.925,segrot));//epoxy
  tv100->AddNode(tvep1,6,new TGeoCombiTrans(0.,0.,177.925,segrot));
  tv100->AddNode(tvpr1,5,new TGeoCombiTrans(0.,0.,-177.925,segrot));//prepreg strip
  tv100->AddNode(tvpr1,6,new TGeoCombiTrans(0.,0.,177.925,segrot));
  // Al parts - rings
  tv100->AddNode(tv1,1,new TGeoTranslation(0.,0.,-252.85));
  tv100->AddNode(tv1,2,new TGeoTranslation(0.,0.,252.85));
  //
  v5->AddNode(v6,1, new TGeoTranslation(0.,0.,-252.1));
  v5->AddNode(v6,2, new TGeoTranslation(0.,0.,252.1));
  v1->AddNode(v5,1); v1->AddNode(v7,1); v1->AddNode(v8,1); 
  v1->AddNode(hvsm,1,new TGeoTranslation(0.,0.,-163.8)); 
  v1->AddNode(hvss,1,new TGeoTranslation(0.,0.,163.8)); 
  v9->AddNode(tv100,1);
  //
  // central drum 
  //
  // flange + sandwich
  //
  TGeoPcon *cfl = new TGeoPcon(0.,360.,6);
  cfl->DefineSection(0,-71.1,59.7,61.2);
  cfl->DefineSection(1,-68.6,59.7,61.2);
  //
  cfl->DefineSection(2,-68.6,60.6124,61.2);
  cfl->DefineSection(3,68.6,60.6124,61.2); 
  //
  cfl->DefineSection(4,68.6,59.7,61.2);
  cfl->DefineSection(5,71.1,59.7,61.2);  
  //
  TGeoVolume *cflv = new TGeoVolume("TPC_CDR",cfl,m3);
  // sandwich
  TGeoTubeSeg *cd1 = new TGeoTubeSeg(60.6224,61.19,71.1,0.2,119.2);
  TGeoTubeSeg *cd2 = new TGeoTubeSeg(60.6262,61.1862,71.1,0.2,119.2);
  TGeoTubeSeg *cd3 = new TGeoTubeSeg(60.6462,61.1662,71.1,0.2,119.2);
  TGeoTubeSeg *cd4 = new TGeoTubeSeg(60.6562,61.1562,71.1,0.2,119.2);
  TGeoTubeSeg *tepox4 = new TGeoTubeSeg(60.6224,61.19,71.1,359.8,0.8);
  //
  TGeoMedium *sm6 = gGeoManager->GetMedium("TPC_Prepreg1");
  TGeoMedium *sm8 = gGeoManager->GetMedium("TPC_Epoxyfm");
  TGeoVolume *cd1v = new TGeoVolume("TPC_CDR1",cd1,sm2); //tedlar
  TGeoVolume *cd2v = new TGeoVolume("TPC_CDR2",cd2,sm6);// prepreg1
  TGeoVolume *cd3v = new TGeoVolume("TPC_CDR3",cd3,sm8); //epoxy film
  TGeoVolume *cd4v = new TGeoVolume("TPC_CDR4",cd4,sm4); //nomex
  TGeoVolume *tvep4 = new TGeoVolume("TPC_IFEPOX4",tepox4,smep);

  //
  // seals for central drum 2 copies
  //
  TGeoTube *cs = new TGeoTube(56.9,61.2,0.1);
  TGeoMedium *sm7 = gGeoManager->GetMedium("TPC_Mylar");
  TGeoVolume *csv = new TGeoVolume("TPC_CDRS",cs,sm7);
  v1->AddNode(csv,1,new TGeoTranslation(0.,0.,-71.2));
  v1->AddNode(csv,2,new TGeoTranslation(0.,0.,71.2));
  //
  // seal collars 
  TGeoPcon *se = new TGeoPcon(0.,360.,6);
  se->DefineSection(0,-72.8,59.7,61.2);
  se->DefineSection(1,-72.3,59.7,61.2);
  //
  se->DefineSection(2,-72.3,58.85,61.2);
  se->DefineSection(3,-71.6,58.85,61.2); 
  //
  se->DefineSection(4,-71.6,59.7,61.2);
  se->DefineSection(5,-71.3,59.7,61.2);  
  //
  TGeoVolume *sev = new TGeoVolume("TPC_CDCE",se,m3);
  //
  TGeoTube *si = new TGeoTube(56.9,58.8,1.); 
  TGeoVolume *siv = new TGeoVolume("TPC_CDCI",si,m3);
  //
  // define reflection matrix 
  //
  TGeoRotation *ref = new TGeoRotation("ref",90.,0.,90.,90.,180.,0.);
  //
  cd1v->AddNode(cd2v,1); cd2v->AddNode(cd3v,1); cd3v->AddNode(cd4v,1); //sandwich
  // first segment  
  cflv->AddNode(cd1v,1); cflv->AddNode(tvep4,1);
  // second segment
  segrot = new TGeoRotation();
  segrot->RotateZ(120.);
  cflv->AddNode(cd1v,2,segrot); cflv->AddNode(tvep4,2,segrot);
  // third segment
  segrot = new TGeoRotation();
  segrot->RotateZ(240.);
  cflv->AddNode(cd1v,3,segrot); cflv->AddNode(tvep4,3,segrot);
  //
  v1->AddNode(siv,1,new TGeoTranslation(0.,0.,-69.9));
  v1->AddNode(siv,2,new TGeoTranslation(0.,0.,69.9));
  v1->AddNode(sev,1); v1->AddNode(sev,2,ref); v1->AddNode(cflv,1);
  //
  // central membrane - 2 rings and a mylar membrane - assembly
  //
  TGeoTube *ih = new TGeoTube(81.05,84.05,0.3);
  TGeoTube *oh = new TGeoTube(250.,256.,0.5);
  TGeoTube *mem = new TGeoTube(84.05,250.,0.00115);

  //
  TGeoMedium *m4 = gGeoManager->GetMedium("TPC_G10");
  //
  TGeoVolume *ihv = new TGeoVolume("TPC_IHVH",ih,m3);
  TGeoVolume *ohv = new TGeoVolume("TPC_OHVH",oh,m3);
  
  TGeoVolume *memv = new TGeoVolume("TPC_HV",mem,sm7);
  //
  TGeoVolumeAssembly *cm = new TGeoVolumeAssembly("TPC_HVMEM");
  cm->AddNode(ihv,1);
  cm->AddNode(ohv,1);
  cm->AddNode(memv,1);
 
  v9->AddNode(cm,1);
  //
  // end caps - they are make as an assembly of single segments
  // containing both readout chambers
  //
  Double_t openingAngle = 10.*TMath::DegToRad();
  Double_t thick=1.5; // rib
  Double_t shift = thick/TMath::Sin(openingAngle);
  //
  Double_t lowEdge = 86.3; // hole in the wheel
  Double_t upEdge = 240.4; // hole in the wheel
  //
  new TGeoTubeSeg("sec",74.5,264.4,3.,0.,20.);
  //
  TGeoPgon *hole = new TGeoPgon("hole",0.,20.,1,4);
  //
  hole->DefineSection(0,-3.5,lowEdge-shift,upEdge-shift);
  hole->DefineSection(1,-1.5,lowEdge-shift,upEdge-shift);
  //
  hole->DefineSection(2,-1.5,lowEdge-shift,upEdge+3.-shift);
  hole->DefineSection(3,3.5,lowEdge-shift,upEdge+3.-shift);
  //
  Double_t ys = shift*TMath::Sin(openingAngle); 
  Double_t xs = shift*TMath::Cos(openingAngle);
  TGeoTranslation *tr = new TGeoTranslation("tr",xs,ys,0.);  
  tr->RegisterYourself();
  TGeoCompositeShape *chamber = new TGeoCompositeShape("sec-hole:tr");
  TGeoVolume *sv = new TGeoVolume("TPC_WSEG",chamber,m3);
  TGeoPgon *bar = new TGeoPgon("bar",0.,20.,1,2);
  bar->DefineSection(0,-3.,131.5-shift,136.5-shift);
  bar->DefineSection(1,1.5,131.5-shift,136.5-shift);
  TGeoVolume *barv = new TGeoVolume("TPC_WBAR",bar,m3);
  TGeoVolumeAssembly *ch = new TGeoVolumeAssembly("TPC_WCH");//empty segment
  //
  ch->AddNode(sv,1); ch->AddNode(barv,1,tr);
  //
  // readout chambers
  //
  // IROC first
  //
   TGeoTrd1 *ibody = new TGeoTrd1(13.8742,21.3328,4.29,21.15);
   TGeoVolume *ibdv = new TGeoVolume("TPC_IROCB",ibody,m3);
  // empty space
   TGeoTrd1 *emp = new TGeoTrd1(12.3742,19.8328,3.99,19.65);
   TGeoVolume *empv = new TGeoVolume("TPC_IROCE",emp,m1);
   ibdv->AddNode(empv,1,new TGeoTranslation(0.,-0.3,0.));
   //bars
   Double_t tga = (19.8328-12.3742)/39.3;
   Double_t xmin,xmax;
   xmin = 9.55*tga+12.3742;
   xmax = 9.95*tga+12.3742;
   TGeoTrd1 *ib1 = new TGeoTrd1(xmin,xmax,3.29,0.2);
   TGeoVolume *ib1v = new TGeoVolume("TPC_IRB1",ib1,m3);
   empv->AddNode(ib1v,1,new TGeoTranslation("tt1",0.,0.7,-9.9));
   xmin=19.4*tga+12.3742;
   xmax=19.9*tga+12.3742;
   TGeoTrd1 *ib2 = new TGeoTrd1(xmin,xmax,3.29,0.25);
   TGeoVolume *ib2v = new TGeoVolume("TPC_TRB2",ib2,m3);
   empv->AddNode(ib2v,1,new TGeoTranslation(0.,0.7,0.));
   xmin=29.35*tga+12.3742;
   xmax=29.75*tga+12.3742;
   TGeoTrd1 *ib3 = new TGeoTrd1(xmin,xmax,3.29,0.2); 
   TGeoVolume *ib3v = new TGeoVolume("TPC_IRB3",ib3,m3);    
   empv->AddNode(ib3v,1,new TGeoTranslation(0.,0.7,9.9));
   //
   // holes for connectors
   //
   TGeoBBox *conn = new TGeoBBox(0.4,0.3,4.675); // identical for iroc and oroc
   TGeoVolume *connv = new TGeoVolume("TPC_RCCON",conn,m1);
   TString fileName(gSystem->Getenv("ALICE_ROOT"));
   fileName += "/TPC/conn_iroc.dat";
   ifstream in;
   in.open(fileName.Data(), ios_base::in); // asci file
   TGeoRotation *rrr[86];
   for(Int_t i =0;i<86;i++){
      Double_t y = 3.99;
      Double_t x,z,ang;
      in>>x>>z>>ang;
      z-=26.5;
      rrr[i]= new TGeoRotation();
      rrr[i]->RotateY(ang);
      ibdv->AddNode(connv,i+1,new TGeoCombiTrans(x,y,z,rrr[i]));
   }
   in.close();
   // "cap"
   new TGeoTrd1("icap",14.5974,23.3521,1.19,24.825);
   // "hole"
   new TGeoTrd1("ihole",13.8742,21.3328,1.2,21.15);
   TGeoTranslation *tr1 = new TGeoTranslation("tr1",0.,0.,1.725);  
   tr1->RegisterYourself();
   TGeoCompositeShape *ic = new TGeoCompositeShape("icap-ihole:tr1");
   TGeoVolume *icv = new TGeoVolume("TPC_IRCAP",ic,m3);
   //
   // pad plane and wire fixations
   //
   TGeoTrd1 *pp = new TGeoTrd1(14.5974,23.3521,0.3,24.825); //pad+iso
   TGeoVolume *ppv = new TGeoVolume("TPC_IRPP",pp,m4);
   TGeoPara *f1 = new TGeoPara(.6,.5,24.825,0.,-10.,0.);
   TGeoVolume *f1v = new TGeoVolume("TPC_IRF1",f1,m4);
   TGeoPara *f2 = new TGeoPara(.6,.5,24.825,0.,10.,0.);
   TGeoVolume *f2v = new TGeoVolume("TPC_IRF2",f2,m4);
   //
   TGeoVolumeAssembly *iroc = new TGeoVolumeAssembly("TPC_IROC");
   //
   iroc->AddNode(ibdv,1);
   iroc->AddNode(icv,1,new TGeoTranslation(0.,3.1,-1.725));
   iroc->AddNode(ppv,1,new TGeoTranslation(0.,4.59,-1.725));
   tga =(23.3521-14.5974)/49.65; 
   Double_t xx = 24.825*tga+14.5974-0.6;
   iroc->AddNode(f1v,1,new TGeoTranslation(-xx,5.39,-1.725));
   iroc->AddNode(f2v,1,new TGeoTranslation(xx,5.39,-1.725));
   //
   // OROC
   //
   TGeoTrd1 *obody = new TGeoTrd1(22.2938,40.5084,4.19,51.65);
   TGeoVolume *obdv = new TGeoVolume("TPC_OROCB",obody,m3);
   TGeoTrd1 *oemp = new TGeoTrd1(20.2938,38.5084,3.89,49.65);
   TGeoVolume *oempv = new TGeoVolume("TPC_OROCE",oemp,m1);
   obdv->AddNode(oempv,1,new TGeoTranslation(0.,-0.3,0.));
   //horizontal bars
   tga=(38.5084-20.2938)/99.3;
   xmin=tga*10.2+20.2938;
   xmax=tga*10.6+20.2938;
   TGeoTrd1 *ob1 = new TGeoTrd1(xmin,xmax,2.915,0.2);
   TGeoVolume *ob1v = new TGeoVolume("TPC_ORB1",ob1,m3);
   //
   xmin=22.55*tga+20.2938;
   xmax=24.15*tga+20.2938;
   TGeoTrd1 *ob2 = new TGeoTrd1(xmin,xmax,2.915,0.8);
   TGeoVolume *ob2v = new TGeoVolume("TPC_ORB2",ob2,m3);
   //
   xmin=36.1*tga+20.2938;
   xmax=36.5*tga+20.2938;
   TGeoTrd1 *ob3 = new TGeoTrd1(xmin,xmax,2.915,0.2);
   TGeoVolume *ob3v = new TGeoVolume("TPC_ORB3",ob3,m3);
   //
   xmin=49.0*tga+20.2938;
   xmax=50.6*tga+20.2938;   
   TGeoTrd1 *ob4 = new TGeoTrd1(xmin,xmax,2.915,0.8);
   TGeoVolume *ob4v = new TGeoVolume("TPC_ORB4",ob4,m3);
   //
   xmin=63.6*tga+20.2938;
   xmax=64.0*tga+20.2938;
   TGeoTrd1 *ob5 = new TGeoTrd1(xmin,xmax,2.915,0.2);
   TGeoVolume *ob5v = new TGeoVolume("TPC_ORB5",ob5,m3);
   //
   xmin=75.5*tga+20.2938;
   xmax=77.15*tga+20.2938;
   TGeoTrd1 *ob6 = new TGeoTrd1(xmin,xmax,2.915,0.8);
   TGeoVolume *ob6v = new TGeoVolume("TPC_ORB6",ob6,m3);
   //
   xmin=88.7*tga+20.2938;
   xmax=89.1*tga+20.2938;
   TGeoTrd1 *ob7 = new TGeoTrd1(xmin,xmax,2.915,0.2);
   TGeoVolume *ob7v = new TGeoVolume("TPC_ORB7",ob7,m3);
   //
   oempv->AddNode(ob1v,1,new TGeoTranslation(0.,0.975,-39.25));
   oempv->AddNode(ob2v,1,new TGeoTranslation(0.,0.975,-26.3));
   oempv->AddNode(ob3v,1,new TGeoTranslation(0.,0.975,-13.35));
   oempv->AddNode(ob4v,1,new TGeoTranslation(0.,0.975,0.15));
   oempv->AddNode(ob5v,1,new TGeoTranslation(0.,0.975,14.15));
   oempv->AddNode(ob6v,1,new TGeoTranslation(0.,0.975,26.7));
   oempv->AddNode(ob7v,1,new TGeoTranslation(0.,0.975,39.25));
   // vertical bars
   TGeoBBox *ob8 = new TGeoBBox(0.8,2.915,5.1); 
   TGeoBBox *ob9 = new TGeoBBox(0.8,2.915,5.975);
   TGeoBBox *ob10 = new TGeoBBox(0.8,2.915,5.775);
   TGeoBBox *ob11 = new TGeoBBox(0.8,2.915,6.25);
   TGeoBBox *ob12 = new TGeoBBox(0.8,2.915,6.5);
   //
   TGeoVolume *ob8v = new TGeoVolume("TPC_ORB8",ob8,m3);
   TGeoVolume *ob9v = new TGeoVolume("TPC_ORB9",ob9,m3);
   TGeoVolume *ob10v = new TGeoVolume("TPC_ORB10",ob10,m3);
   TGeoVolume *ob11v = new TGeoVolume("TPC_ORB11",ob11,m3);
   TGeoVolume *ob12v = new TGeoVolume("TPC_ORB12",ob12,m3);
   //
   oempv->AddNode(ob8v,1,new TGeoTranslation(0.,0.975,-44.55));
   oempv->AddNode(ob8v,2,new TGeoTranslation(0.,0.975,44.55));
   oempv->AddNode(ob9v,1,new TGeoTranslation(0.,0.975,-33.075));
   oempv->AddNode(ob9v,2,new TGeoTranslation(0.,0.975,-19.525));
   oempv->AddNode(ob10v,1,new TGeoTranslation(0.,0.975,20.125));
   oempv->AddNode(ob10v,2,new TGeoTranslation(0.,0.975,33.275));
   oempv->AddNode(ob11v,1,new TGeoTranslation(0.,0.975,-6.9));
   oempv->AddNode(ob12v,1,new TGeoTranslation(0.,0.975,7.45));
   //
   // holes for connectors
   //
   fileName = gSystem->Getenv("ALICE_ROOT");
   fileName += "/TPC/conn_oroc.dat";
   in.open(fileName.Data(), ios_base::in); // asci file
   TGeoRotation *rr[78];
   for(Int_t i =0;i<78;i++){
      Double_t y =3.89;
      Double_t x,z,ang;
      Double_t x1,z1,x2,z2;
      in>>x>>z>>ang;        
      Double_t xr = 4.7*TMath::Sin(ang*TMath::DegToRad());
      Double_t zr = 4.7*TMath::Cos(ang*TMath::DegToRad());
      //
      x1=xr+x; x2=-xr+x; z1=zr+z; z2 = -zr+z;      
      //
      rr[i]= new TGeoRotation();
      rr[i]->RotateY(ang); 
      z1-=54.95;
      z2-=54.95;
      //
      obdv->AddNode(connv,i+1,new TGeoCombiTrans(x1,y,z1,rr[i]));
      obdv->AddNode(connv,i+79,new TGeoCombiTrans(x2,y,z2,rr[i]));
   }
   in.close();
   // cap
   new TGeoTrd1("ocap",23.3874,43.5239,1.09,57.1);
   new TGeoTrd1("ohole",22.2938,40.5084,1.09,51.65);
   TGeoTranslation *tr5 = new TGeoTranslation("tr5",0.,0.,-2.15);
   tr5->RegisterYourself();
   TGeoCompositeShape *oc = new TGeoCompositeShape("ocap-ohole:tr5");
   TGeoVolume *ocv = new TGeoVolume("TPC_ORCAP",oc,m3);
   //
   // pad plane and wire fixations
   //
   TGeoTrd1 *opp = new TGeoTrd1(23.3874,43.5239,0.3,57.1);
   TGeoVolume *oppv = new TGeoVolume("TPC_ORPP",opp,m4);
   //
   tga=(43.5239-23.3874)/114.2;
   TGeoPara *f3 = new TGeoPara(.7,.6,57.1,0.,-10.,0.);
   TGeoPara *f4 = new TGeoPara(.7,.6,57.1,0.,10.,0.);  
   xx = 57.1*tga+23.3874-0.7;
   TGeoVolume *f3v = new TGeoVolume("TPC_ORF1",f3,m4);
   TGeoVolume *f4v = new TGeoVolume("TPC_ORF2",f4,m4);
   //
   TGeoVolumeAssembly *oroc = new TGeoVolumeAssembly("TPC_OROC");
   //
   oroc->AddNode(obdv,1);
   oroc->AddNode(ocv,1,new TGeoTranslation(0.,3.1,2.15));
   oroc->AddNode(oppv,1,new TGeoTranslation(0.,4.49,2.15));
   oroc->AddNode(f3v,1,new TGeoTranslation(-xx,5.39,2.15));
   oroc->AddNode(f4v,1,new TGeoTranslation(xx,5.39,2.15));
   // 
   // now iroc and oroc are placed into a sector...
   //
   TGeoVolumeAssembly *secta = new TGeoVolumeAssembly("TPC_SECT"); // a-side
   TGeoVolumeAssembly *sectc = new TGeoVolumeAssembly("TPC_SECT"); // c-side
   TGeoRotation rot1("rot1",90.,90.,0.);
   TGeoRotation rot2("rot2");
   rot2.RotateY(10.);
   TGeoRotation *rot = new TGeoRotation("rot");
   *rot=rot1*rot2;
   //
   Double_t x0,y0;
   x0=110.2*TMath::Cos(openingAngle);
   y0=110.2*TMath::Sin(openingAngle);
   TGeoCombiTrans *combi1a = new TGeoCombiTrans("combi1",x0,y0,1.09+0.195,rot); //a-side 
   TGeoCombiTrans *combi1c = new TGeoCombiTrans("combi1",x0,y0,1.09+0.222,rot); //c-side
   x0=188.45*TMath::Cos(openingAngle);
   y0=188.45*TMath::Sin(openingAngle);
   TGeoCombiTrans *combi2a = new TGeoCombiTrans("combi2",x0,y0,0.99+0.195,rot); //a-side
   TGeoCombiTrans *combi2c = new TGeoCombiTrans("combi2",x0,y0,0.99+0.222,rot); //c-side
   //
   //
   // A-side
   //
   secta->AddNode(ch,1);
   secta->AddNode(iroc,1,combi1a);
   secta->AddNode(oroc,1,combi2a);
   //
   // C-side
   //
   sectc->AddNode(ch,1);
   sectc->AddNode(iroc,1,combi1c);
   sectc->AddNode(oroc,1,combi2c);
   //
   // now I try to make  wheels...
   //
   TGeoVolumeAssembly *wheela = new TGeoVolumeAssembly("TPC_ENDCAP");
   TGeoVolumeAssembly *wheelc = new TGeoVolumeAssembly("TPC_ENDCAP");
   //
   TGeoRotation *rwh[18]; 
   for(Int_t i =0;i<18;i++){
     Double_t phi = (20.*i);
     rwh[i]=new TGeoRotation();
     rwh[i]->RotateZ(phi);
     wheela->AddNode(secta,i+1,rwh[i]);
     wheelc->AddNode(sectc,i+1,rwh[i]); 
    
   }
   // wheels in the drift volume!   

   TGeoCombiTrans *combi3 = new TGeoCombiTrans("combi3",0.,0.,256.6,ref);
   v9->AddNode(wheela,1,combi3);
   v9->AddNode(wheelc,2,new TGeoTranslation(0.,0.,-256.6));
   //_____________________________________________________________
   // service support wheel
   //_____________________________________________________________
  TGeoPgon *sw = new TGeoPgon(0.,20.,1,2);
  sw->DefineSection(0,-4.,80.5,251.75);
  sw->DefineSection(1,4.,80.5,251.75); 
  TGeoVolume *swv = new TGeoVolume("TPC_SWSEG",sw,m3); //Al
  //
  thick=1.;
  shift = thick/TMath::Sin(openingAngle);
  TGeoPgon *sh = new TGeoPgon(0.,20.,1,2);
  sh->DefineSection(0,-4.,81.5-shift,250.75-shift);
  sh->DefineSection(1,4.,81.5-shift,250.75-shift);
  TGeoVolume *shv = new TGeoVolume("TPC_SWS1",sh,m1); //Air
  //
  TGeoMedium *m9 =  gGeoManager->GetMedium("TPC_Si"); 
  TGeoPgon *el = new TGeoPgon(0.,20.,1,2);
  el->DefineSection(0,-1.872,81.5-shift,250.75-shift);
  el->DefineSection(1,1.872,81.5-shift,250.75-shift);
  TGeoVolume *elv = new TGeoVolume("TPC_ELEC",el,m9); //Si 
  //
  shv->AddNode(elv,1);
  //
  //
  ys = shift*TMath::Sin(openingAngle);
  xs = shift*TMath::Cos(openingAngle);
  swv->AddNode(shv,1,new TGeoTranslation(xs,ys,0.));
  // cover
  TGeoPgon *co = new TGeoPgon(0.,20.,1,2);
  co->DefineSection(0,-0.5,77.,255.25);
  co->DefineSection(1,0.5,77.,255.25);
  TGeoVolume *cov = new TGeoVolume("TPC_SWC1",co,m3);//Al
  // hole in a cover
  TGeoPgon *coh = new TGeoPgon(0.,20.,1,2);
  shift=4./TMath::Sin(openingAngle);
  coh->DefineSection(0,-0.5,85.-shift,247.25-shift);
  coh->DefineSection(1,0.5,85.-shift,247.25-shift);  
  //
  TGeoVolume *cohv = new TGeoVolume("TPC_SWC2",coh,m1);
  //
  ys = shift*TMath::Sin(openingAngle);
  xs = shift*TMath::Cos(openingAngle);  
  cov->AddNode(cohv,1,new TGeoTranslation(xs,ys,0.));
  //
  // Sector as an Assembly
  //
  TGeoVolumeAssembly *swhs = new TGeoVolumeAssembly("TPC_SSWSEC");
  swhs->AddNode(swv,1);
  swhs->AddNode(cov,1,new TGeoTranslation(0.,0.,-4.5));
  swhs->AddNode(cov,2,new TGeoTranslation(0.,0.,4.5));
  //
  // SSW as an Assembly of sectors
  //
  TGeoRotation *rsw[18];
  TGeoVolumeAssembly *swheel = new TGeoVolumeAssembly("TPC_SSWHEEL");
   for(Int_t i =0;i<18;i++){
     Double_t phi = (20.*i);
     rsw[i] = new TGeoRotation();
     rsw[i]->RotateZ(phi);
     swheel->AddNode(swhs,i+1,rsw[i]);   
   }
   v1->AddNode(swheel,1,new TGeoTranslation(0.,0.,-284.6));
   v1->AddNode(swheel,2,new TGeoTranslation(0.,0.,284.6));

   // sensitive strips - strip "0" is always set
   // conditional
   Int_t totrows;
   totrows = fTPCParam->GetNRowLow() + fTPCParam->GetNRowUp();
   Double_t *upar;
   upar=NULL;
   gGeoManager->Volume("TPC_Strip","PGON",m5->GetId(),upar);
   upar=new Double_t [10];
   upar[0]=0.;
   upar[1]=360.;
   upar[2]=18.;
   upar[3]=2.;
   //
   upar[4]=-124.8;
   upar[7]=124.8;

   Double_t rlow=fTPCParam->GetPadRowRadiiLow(0);

   upar[5]=rlow;
   upar[6]=rlow+.01;
   upar[8]=upar[5];
   upar[9]=upar[6];
   //
   gGeoManager->Node("TPC_Strip",1,"TPC_Drift",0.,0.,124.82,0,kTRUE,upar,10);
   gGeoManager->Node("TPC_Strip",totrows+1,
                     "TPC_Drift",0.,0.,-124.82,0,kTRUE,upar,10);
   //
   // now, strips optionally
   //
   if(fSens){
     //lower sectors
     for(Int_t i=2;i<fTPCParam->GetNRowLow()+1;i++){
       rlow=fTPCParam->GetPadRowRadiiLow(i-1);
       upar[5]=rlow;
       upar[6]=rlow+.01;
       upar[8]=upar[5];
       upar[9]=upar[6];
       gGeoManager->Node("TPC_Strip",i,
                         "TPC_Drift",0.,0.,124.82,0,kTRUE,upar,10);
       gGeoManager->Node("TPC_Strip",totrows+i,
                         "TPC_Drift",0.,0.,-124.82,0,kTRUE,upar,10);       
     }
     //upper sectors
     for(Int_t i=1;i<fTPCParam->GetNRowUp()+1;i++){
       rlow=fTPCParam->GetPadRowRadiiUp(i-1); 
       upar[5]=rlow;
       upar[6]=rlow+.01;
       upar[8]=upar[5];
       upar[9]=upar[6];
       gGeoManager->Node("TPC_Strip",i+fTPCParam->GetNRowLow(),
                         "TPC_Drift",0.,0.,124.82,0,kTRUE,upar,10); 
       gGeoManager->Node("TPC_Strip",totrows+i+fTPCParam->GetNRowLow(),
                         "TPC_Drift",0.,0.,-124.82,0,kTRUE,upar,10); 
     }
   }//strips
  //----------------------------------------------------------
  // TPC Support Rods - MAKROLON
  //----------------------------------------------------------
  TGeoMedium *m6=gGeoManager->GetMedium("TPC_Makrolon");
  TGeoMedium *m7=gGeoManager->GetMedium("TPC_Cu");
  TGeoMedium *m10 =  gGeoManager->GetMedium("TPC_Alumina");
  TGeoMedium *m11 =  gGeoManager->GetMedium("TPC_Peek");;
  TGeoMedium *m13 = gGeoManager->GetMedium("TPC_Brass");
  TGeoMedium *m14 = gGeoManager->GetMedium("TPC_Alumina1");
  // 
  // tpc rod is an assembly of 10 long parts and 2 short parts
  // connected with alu rings and plagged on both sides.
  //
  //
  // tpc rod long
  //
  TGeoPcon *rod = new TGeoPcon("rod",0.,360.,6);
 rod->DefineSection(0,-10.43,1.92,2.08);
 rod->DefineSection(1,-9.75,1.92,2.08);

 rod->DefineSection(2,-9.75,1.8,2.2);
 rod->DefineSection(3,9.75,1.8,2.2);

 rod->DefineSection(4,9.75,1.92,2.08);
 rod->DefineSection(5,10.43,1.92,2.08);
 //
 TGeoVolume *mrodl = new TGeoVolume("TPC_mrodl",rod,m6);
 //
 // tpc rod short 
 //
 TGeoPcon *rod1 = new TGeoPcon("rod1",0.,360.,6);
 rod1->DefineSection(0,-8.93,1.92,2.08);
 rod1->DefineSection(1,-8.25,1.92,2.08);

 rod1->DefineSection(2,-8.25,1.8,2.2);
 rod1->DefineSection(3,8.25,1.8,2.2);

 rod1->DefineSection(4,8.25,1.92,2.08);
 rod1->DefineSection(5,8.93,1.92,2.08);
 //
 TGeoVolume *mrods = new TGeoVolume("TPC_mrods",rod1,m6);
 //
 // below is for the resistor rod
 //
 // hole for the brass connectors
 //

 new TGeoTube("hhole",0.,0.3,0.3);
 //
 //transformations for holes - initialy they
 // are placed at x=0 and negative y
 //
  TGeoRotation *rhole = new TGeoRotation();
  rhole->RotateX(90.);
  TGeoCombiTrans *transf[13];
  Char_t name[30];
  for(Int_t i=0;i<13;i++){
    snprintf(name,30,"transf%d",i);
    transf[i]= new TGeoCombiTrans(name,0.,-2.,-9.+i*1.5,rhole);
    transf[i]->RegisterYourself();
  }
  // union expression for holes
  TString operl("hhole:transf0");
  for (Int_t i=1;i<13;i++){
    snprintf(name,30,"+hhole:transf%d",i);
    operl.Append(name);   
  }
  //
 TString opers("hhole:transf1");
  for (Int_t i=2;i<12;i++){
    snprintf(name,30,"+hhole:transf%d",i); 
    opers.Append(name);   
  }
  //union of holes
  new TGeoCompositeShape("hlv",operl.Data());
  new TGeoCompositeShape("hsv",opers.Data());
  //
  TGeoCompositeShape *rodl = new TGeoCompositeShape("rodl","rod-hlv");
  TGeoCompositeShape *rods = new TGeoCompositeShape("rods","rod1-hsv");
 //rods - volumes - makrolon rods with holes
  TGeoVolume *rodlv = new TGeoVolume("TPC_rodl",rodl,m6);
  TGeoVolume *rodsv = new TGeoVolume("TPC_rods",rods,m6);
  //brass connectors
 //connectors
  TGeoTube *bcon = new TGeoTube(0.,0.3,0.3);//connectors
  TGeoVolume *bconv = new TGeoVolume("TPC_bcon",bcon,m13);
 //
 // hooks holding strips
 //
 new TGeoBBox("hk1",0.625,0.015,0.75);
 new TGeoBBox("hk2",0.625,0.015,0.15);
 TGeoTranslation *tr21 = new TGeoTranslation("tr21",0.,-0.03,-0.6);
 TGeoTranslation *tr12 = new TGeoTranslation("tr12",0.,-0.03,0.6);
 tr21->RegisterYourself();
 tr12->RegisterYourself();
 
 TGeoCompositeShape *hook = new TGeoCompositeShape("hook","hk1+hk2:tr21+hk2:tr12");
 TGeoVolume *hookv = new TGeoVolume("TPC_hook",hook,m13);
 //
 // assembly of the short rod with connectors and hooks
 //
 //
 // short rod
 //
  TGeoVolumeAssembly *spart = new TGeoVolumeAssembly("TPC_spart");
  //
  spart->AddNode( rodsv,1);
  for(Int_t i=1;i<12;i++){
  spart->AddNode(bconv,i,transf[i]);
  }
  for(Int_t i =0;i<11;i++){
    spart->AddNode(hookv,i+1,new TGeoTranslation(0.,-2.315,-7.5+i*1.5));
  } 
 //
 // long rod
 //
  TGeoVolumeAssembly *lpart = new TGeoVolumeAssembly("TPC_lpart");
  //
  lpart->AddNode( rodlv,1);
  for(Int_t i=0;i<13;i++){
  lpart->AddNode(bconv,i+12,transf[i]);
  }
  for(Int_t i =0;i<13;i++){
    lpart->AddNode(hookv,i+12,new TGeoTranslation(0.,-2.315,-9.+i*1.5));
  }   
  //
  // alu ring
  //
  new TGeoTube("ring1",2.1075,2.235,0.53);
  new TGeoTube("ring2",1.7925,1.89,0.43);
  new TGeoTube("ring3",1.89,2.1075,0.05);
  TGeoCompositeShape *ring = new TGeoCompositeShape("ring","ring1+ring2+ring3");
  TGeoVolume *ringv = new TGeoVolume("TPC_ring",ring,m3);
  //
  // rod assembly
  //
  TGeoVolumeAssembly *tpcrrod = new TGeoVolumeAssembly("TPC_rrod");//rrod
  TGeoVolumeAssembly *tpcmrod = new TGeoVolumeAssembly("TPC_mrod");//makrolon rod  
  //long pieces
  for(Int_t i=0;i<11;i++){
    tpcrrod->AddNode(ringv,i+1,new TGeoTranslation(0.,0.,-105.+i*21));
    tpcmrod->AddNode(ringv,i+12,new TGeoTranslation(0.,0.,-105.+i*21));
  }
  for(Int_t i=0;i<10;i++){
    tpcrrod->AddNode(lpart,i+1,new TGeoTranslation(0.,0.,-94.5+i*21));//resistor rod
    tpcmrod->AddNode(mrodl,i+1,new TGeoTranslation(0.,0.,-94.5+i*21));//makrolon rod	    
  }
  //
  // right plug - identical for all rods
  //
  TGeoPcon *tpcrp = new TGeoPcon(0.,360.,6);
  //
  tpcrp->DefineSection(0,123.05,1.89,2.1075);
  tpcrp->DefineSection(1,123.59,1.89,2.1075);
  //
  tpcrp->DefineSection(2,123.59,1.8,2.2);
  tpcrp->DefineSection(3,127.,1.8,2.2);
  //
  tpcrp->DefineSection(4,127.,0.,2.2);
  tpcrp->DefineSection(5,127.5,0.,2.2);
  //
  TGeoVolume *tpcrpv = new TGeoVolume("TPC_RP",tpcrp,m6);
  //
  // adding short pieces and right plug
  //
  tpcrrod->AddNode(spart,1,new TGeoTranslation(0.,0.,-114.));
  tpcrrod->AddNode(spart,2,new TGeoTranslation(0.,0.,114.)); 
  tpcrrod->AddNode(ringv,23,new TGeoTranslation(0.,0.,-123.));
  tpcrrod->AddNode(ringv,24,new TGeoTranslation(0.,0.,123.));
  tpcrrod->AddNode(tpcrpv,1);
  //
  tpcmrod->AddNode(mrods,1,new TGeoTranslation(0.,0.,-114.));
  tpcmrod->AddNode(mrods,2,new TGeoTranslation(0.,0.,114.)); 
  tpcmrod->AddNode(ringv,25,new TGeoTranslation(0.,0.,-123.));
  tpcmrod->AddNode(ringv,26,new TGeoTranslation(0.,0.,123.));
  tpcmrod->AddNode(tpcrpv,2);
  //
  // from the ringv position to the CM is 3.0 cm!
  //----------------------------------------
  //
  //
  //HV rods - makrolon + 0.58cm (diameter) Cu ->check the length
  TGeoTube *hvr = new TGeoTube(0.,1.465,123.);
  TGeoTube *hvc = new TGeoTube(0.,0.29,123.);
  //
  TGeoVolume *hvrv = new TGeoVolume("TPC_HV_Rod",hvr,m6);
  TGeoVolume *hvcv = new TGeoVolume("TPC_HV_Cable",hvc,m7);
  hvrv->AddNode(hvcv,1);
  //
  //resistor rod
  //
  TGeoTube *cr = new TGeoTube(0.,0.45,123.);   
  TGeoTube *cw = new TGeoTube(0.,0.15,123.);  
  TGeoVolume *crv = new TGeoVolume("TPC_CR",cr,m10);
  TGeoVolume *cwv = new TGeoVolume("TPC_W",cw,m12);   
  //
  // ceramic rod with water
  //
  crv->AddNode(cwv,1);
  //
  //peek rod
  //
  TGeoTube *pr =new TGeoTube(0.2,0.35,123.);  
  TGeoVolume *prv = new TGeoVolume("TPC_PR",pr,m11); 
  //
  // copper plates with connectors
  //
  new TGeoTube("tub",0.,1.7,0.025);
  //
  // half space - points on the plane and a normal vector
  //
  Double_t n[3],p[3];
  Double_t slope = TMath::Tan(22.*TMath::DegToRad());
  Double_t intp = 1.245;
  //
  Double_t b = slope*slope+1.;
  p[0]=intp*slope/b;
  p[1]=-intp/b;
  p[2]=0.;
  //
  n[0]=-p[0];
  n[1]=-p[1];
  n[2]=0.;
  Double_t norm;
  norm=TMath::Sqrt(n[0]*n[0]+n[1]*n[1]);
  n[0] /= norm;
  n[1] /=norm;
  //
  new TGeoHalfSpace("sp1",p,n);
  //
  slope = -slope; 
  //
  p[0]=intp*slope/b;
  p[1]=-intp/b;
  //
  n[0]=-p[0];
  n[1]=-p[1];
  norm=TMath::Sqrt(n[0]*n[0]+n[1]*n[1]);
  n[0] /= norm;
  n[1] /=norm;
  //
  new TGeoHalfSpace("sp2",p,n);
  // holes for rods
 //holes
 new TGeoTube("h1",0.,0.5,0.025);
 new TGeoTube("h2",0.,0.35,0.025);
 //translations:
 TGeoTranslation *ttr11 = new TGeoTranslation("ttr11",-0.866,0.5,0.);
 TGeoTranslation *ttr22 = new TGeoTranslation("ttr22",0.866,0.5,0.);
 ttr11->RegisterYourself();
 ttr22->RegisterYourself();
 // elastic connector
 new TGeoBBox("elcon",0.72,0.005,0.3);
 TGeoRotation *crr1 = new TGeoRotation();
 crr1->RotateZ(-22.);
TGeoCombiTrans *ctr1 = new TGeoCombiTrans("ctr1",-0.36011, -1.09951,-0.325,crr1);
ctr1->RegisterYourself();
 TGeoCompositeShape *cs1 = new TGeoCompositeShape("cs1",
"(((((tub-h1:ttr11)-h1:ttr22)-sp1)-sp2)-h2)+elcon:ctr1");
 //
 TGeoVolume *csvv = new TGeoVolume("TPC_RR_CU",cs1,m7);
 //
 // resistor rod assembly 2 ceramic rods, peak rod, Cu plates
 // and resistors
 //
 TGeoVolumeAssembly *rrod = new TGeoVolumeAssembly("TPC_RRIN");
 // rods
 rrod->AddNode(crv,1,ttr11);
 rrod->AddNode(crv,2,ttr22); 
 rrod->AddNode(prv,1);
 //Cu plates
 for(Int_t i=0;i<165;i++){
   rrod->AddNode(csvv,i+1,new TGeoTranslation(0.,0.,-122.675+i*1.5));
 }
 //resistors
 TGeoTube *res = new TGeoTube(0.,0.15,0.5);
 TGeoVolume *resv = new TGeoVolume("TPC_RES",res,m14);
 TGeoVolumeAssembly *ress = new TGeoVolumeAssembly("TPC_RES_CH");
 ress->AddNode(resv,1,new TGeoTranslation(0.2,0.,0.));
 ress->AddNode(resv,2,new TGeoTranslation(-0.2,0.,0.));
 //
 TGeoRotation *crr2 = new TGeoRotation();
 crr2->RotateY(30.);
 TGeoRotation *crr3 = new TGeoRotation();
 crr3->RotateY(-30.); 
 //
 for(Int_t i=0;i<164;i+=2){
   rrod->AddNode(ress,i+1, new TGeoCombiTrans(0.,1.2,-121.925+i*1.5,crr2));
   rrod->AddNode(ress,i+2, new TGeoCombiTrans(0.,1.2,-121.925+(i+1)*1.5,crr3));
 }

 tpcrrod->AddNode(rrod,1,new TGeoCombiTrans(0.,0.,0.5,crr1));
 //
 // rod left head with holders - inner
 //
 // first element - support for inner holder  TPC_IHS
 Double_t shift1[3] = {0.0,-0.175,0.0};

new TGeoBBox("tpcihs1", 4.7, 0.66, 2.35);               
new TGeoBBox("tpcihs2", 4.7, 0.485, 1.0, shift1);
new TGeoBBox("tpcihs3", 1.5, 0.485, 2.35, shift1);
new TGeoTube("tpcihs4", 0.0, 2.38, 0.1);
//
Double_t pointstrap[16];    
pointstrap[0]= 0.0;
pointstrap[1]= 0.0;
pointstrap[2]= 0.0;
pointstrap[3]= 1.08;
pointstrap[4]= 2.3;
pointstrap[5]= 1.08;
pointstrap[6]= 3.38;
pointstrap[7]= 0.0;
pointstrap[8]= 0.0;
pointstrap[9]= 0.0;
pointstrap[10]= 0.0;
pointstrap[11]= 1.08;
pointstrap[12]= 2.3;
pointstrap[13]= 1.08;
pointstrap[14]= 3.38;
pointstrap[15]= 0.0;
//
TGeoArb8 *tpcihs5 = new TGeoArb8("tpcihs5", 0.6, pointstrap);
//
//  half space - cutting "legs"
// 
 p[0]=0.0;
 p[1]=0.105;
 p[2]=0.0;
 //       
n[0] = 0.0;
n[1] = 1.0;
n[2] = 0.0;

new TGeoHalfSpace("cutil1", p, n);

//
// transformations
//
TGeoTranslation *trans2 = new TGeoTranslation("trans2", 0.0, 2.84, 2.25);
trans2->RegisterYourself();
TGeoTranslation*trans3= new TGeoTranslation("trans3", 0.0, 2.84, -2.25);
trans3->RegisterYourself();
//support - composite volume
//
TGeoCompositeShape *tpcihs6 = new TGeoCompositeShape("tpcihs6", "tpcihs1-(tpcihs2+tpcihs3)-(tpcihs4:trans2)-(tpcihs4:trans3)-cutil1");
//
// volumes - all makrolon
//  
 TGeoVolume *tpcihss = new TGeoVolume("TPC_IHSS", tpcihs6, m6); //support
 TGeoVolume *tpcihst = new TGeoVolume("TPC_IHSTR",tpcihs5 , m6); //trapesoid
 //now assembly
TGeoRotation *rot111 = new TGeoRotation(); 
rot111->RotateY(180.0);
//
TGeoVolumeAssembly *tpcihs = new TGeoVolumeAssembly("TPC_IHS");    // assembly of the support
tpcihs->AddNode(tpcihss, 1);
tpcihs->AddNode(tpcihst, 1, new TGeoTranslation(-4.7, 0.66, 0.0));
tpcihs->AddNode(tpcihst, 2, new TGeoCombiTrans(4.7, 0.66, 0.0, rot111));
//
// two rod holders (TPC_IRH) assembled with the support
//
new TGeoBBox("tpcirh1", 4.7, 1.33, 0.5);
 shift1[0]=-3.65;
 shift1[1]=0.53;
 shift1[2]=0.;
new TGeoBBox("tpcirh2", 1.05, 0.8, 0.5, shift1);
 shift1[0]=3.65;
 shift1[1]=0.53;
 shift1[2]=0.;
new TGeoBBox("tpcirh3", 1.05, 0.8, 0.5, shift1);
 shift1[0]=0.0;
 shift1[1]=1.08;
 shift1[2]=0.;
new TGeoBBox("tpcirh4", 1.9, 0.25, 0.5, shift1);
new TGeoTube("tpcirh5", 0, 1.9, 5);
//
TGeoTranslation *trans4 = new TGeoTranslation("trans4", 0, 0.83, 0.0); 
trans4->RegisterYourself();
//
TGeoCompositeShape *tpcirh6 = new TGeoCompositeShape("tpcirh6", "tpcirh1-tpcirh2-tpcirh3-(tpcirh5:trans4)-tpcirh4");
//
// now volume
//
TGeoVolume *tpcirh = new TGeoVolume("TPC_IRH", tpcirh6, m6);   
//
// and all together...
//
TGeoVolume *tpciclamp = new TGeoVolumeAssembly("TPC_ICLP");
tpciclamp->AddNode(tpcihs, 1);
tpciclamp->AddNode(tpcirh, 1, new TGeoTranslation(0, 1.99, 1.1));
tpciclamp->AddNode(tpcirh, 2, new TGeoTranslation(0, 1.99, -1.1));
//
// and now left inner "head"
//
TGeoPcon *inplug = new TGeoPcon("inplug", 0.0, 360.0, 14); 

inplug->DefineSection(0, 0.3, 0.0, 2.2);
inplug->DefineSection(1, 0.6, 0.0, 2.2);

inplug->DefineSection(2, 0.6, 0.0, 1.75);
inplug->DefineSection(3, 0.7, 0.0, 1.75);

inplug->DefineSection(4, 0.7, 1.55, 1.75);
inplug->DefineSection(5, 1.6, 1.55, 1.75);

inplug->DefineSection(6, 1.6, 1.55, 2.2);
inplug->DefineSection(7, 1.875, 1.55, 2.2);

inplug->DefineSection(8, 1.875, 1.55, 2.2);
inplug->DefineSection(9, 2.47, 1.75, 2.2);

inplug->DefineSection(10, 2.47, 1.75, 2.08);
inplug->DefineSection(11, 2.57, 1.8, 2.08);

inplug->DefineSection(12, 2.57, 1.92, 2.08);
inplug->DefineSection(13, 2.95, 1.92, 2.08);
//
 shift1[0]=0.0;
 shift1[1]=-2.09;
 shift1[2]=1.075;
 //
new TGeoBBox("pcuti", 1.5, 0.11, 1.075, shift1);
//
TGeoCompositeShape *inplleft = new TGeoCompositeShape("inplleft", "inplug-pcuti");
TGeoVolume *tpcinlplug = new TGeoVolume("TPC_INPLL", inplleft, m6);   
//
//  holder + plugs
//
 TGeoVolume *tpcihpl = new TGeoVolumeAssembly("TPC_IHPL"); //holder+2 plugs (reflected)
 tpcihpl->AddNode(tpcinlplug, 1);
 tpcihpl->AddNode(tpcinlplug, 2,ref);
 tpcihpl->AddNode(tpciclamp,1,new TGeoTranslation(0.0, -2.765, 0.0)); 
 //
 // outer holders and clamps
 //

 // outer membrane holder (between rods)  
pointstrap[0]= 0.0;
pointstrap[1]= 0.0;
pointstrap[2]= 0.0;
pointstrap[3]= 2.8;
pointstrap[4]= 3.1;
pointstrap[5]= 2.8-3.1*TMath::Tan(15.*TMath::DegToRad());
pointstrap[6]= 3.1;
pointstrap[7]= 0.0;
pointstrap[8]= 0.0;
pointstrap[9]= 0.0;
pointstrap[10]= 0.0;
pointstrap[11]= 2.8;
pointstrap[12]= 3.1;
pointstrap[13]= 2.8-3.1*TMath::Tan(15.*TMath::DegToRad());
pointstrap[14]= 3.1;
pointstrap[15]= 0.0;
//
TGeoArb8 *tpcomh1 = new TGeoArb8("tpcomh1", 1.05, pointstrap);   
TGeoBBox *tpcomh2 = new TGeoBBox("tpcomh2", 0.8, 1.4, 6);
//
TGeoVolume *tpcomh1v = new TGeoVolume("TPC_OMH1", tpcomh1, m7);    
TGeoVolume *tpcomh2v = new TGeoVolume("TPC_OMH2", tpcomh2, m7);
//
TGeoVolume *tpcomh3v = new TGeoVolumeAssembly("TPC_OMH3");    // assembly1
tpcomh3v->AddNode(tpcomh1v, 1, new TGeoTranslation(0.8, -1.4, 4.95));
 tpcomh3v->AddNode(tpcomh1v, 2, new TGeoTranslation(0.8, -1.4, -4.95));
tpcomh3v->AddNode(tpcomh2v, 1);
//
shift1[0] = 0.9;
shift1[1] = -1.85;
shift1[2] = 0.0;
//
new TGeoBBox("tpcomh3", 1.65, 1.15, 3.4);
TGeoBBox *tpcomh4 = new TGeoBBox("tpcomh4", 0.75, 0.7, 3.4, shift1);
//
// halfspace 1
//
p[0] = 0.0;
p[1] = -1.05;   
p[2] = -3.4;
//
n[0] = 0.0;
n[1] = -1.0*TMath::Tan(30.*TMath::DegToRad());
n[2] = 1.0;
//
new TGeoHalfSpace("cutomh1", p, n); 
//
// halfspace 2
//
p[0] = 0.0;
p[1] = -1.05;   
p[2] = 3.4;
//
n[0] = 0.0;
n[1] = -1.0*TMath::Tan(30.*TMath::DegToRad());
n[2] = -1.0;
//
new TGeoHalfSpace("cutomh2", p, n);
//
// halfspace 3
//
p[0] = -1.65;
p[1] = 0.0;     
p[2] = -0.9;
//
n[0] = 1.0*TMath::Tan(75.*TMath::DegToRad());
n[1] = 0.0;
n[2] = 1.0;
//
new TGeoHalfSpace("cutomh3", p, n);   
//
// halfspace 4
//
p[0] = -1.65;
p[1] = 0.0;      
p[2] = 0.9;
//
n[0] = 1.0*TMath::Tan(75*TMath::DegToRad());
n[1] = 0.0;
n[2] = -1.0;
//
new TGeoHalfSpace("cutomh4", p, n); 
//
// halsfspace 5
//
p[0] = 1.65;
p[1] = -1.05;      
p[2] = 0.0;  
//
n[0] = -1.0;
n[1] = -1.0*TMath::Tan(20.*TMath::DegToRad());
n[2] = 0.0;
//
new TGeoHalfSpace("cutomh5", p, n); 
//  
TGeoCompositeShape *tpcomh5 = new TGeoCompositeShape("tpcomh5", "tpcomh3-cutomh1-cutomh2-cutomh3-cutomh4-cutomh5"); 
//
 TGeoVolume *tpcomh5v = new TGeoVolume("TPC_OMH5",tpcomh5,m6);
 TGeoVolume *tpcomh4v = new TGeoVolume("TPC_OMH6",tpcomh4,m6);
 //
 TGeoVolumeAssembly *tpcomh7v = new TGeoVolumeAssembly("TPC_OMH7");
 tpcomh7v->AddNode(tpcomh5v,1);
 tpcomh7v->AddNode(tpcomh4v,1);
 //
 // full membrane holder - tpcomh3v + tpcomh7v
 //
 TGeoVolumeAssembly *tpcomh = new TGeoVolumeAssembly("TPC_OMH");
 tpcomh->AddNode(tpcomh3v,1,new TGeoTranslation(1.5,0.,0.));
 tpcomh->AddNode(tpcomh3v,2,new TGeoCombiTrans(-1.5,0.,0.,rot111));
 tpcomh->AddNode(tpcomh7v,1,new TGeoTranslation(0.65+1.5, 2.55, 0.0));
 tpcomh->AddNode(tpcomh7v,2,new TGeoCombiTrans(-0.65-1.5, 2.55, 0.0,rot111)); 
 //
 //  outer rod holder support
 //
new TGeoBBox("tpcohs1", 3.8, 0.675, 2.35); 
//
shift1[0] = 0.0;
shift1[1] = 0.175;
shift1[2] = 0.0;
//
new TGeoBBox("tpcohs2", 1.5, 0.5, 2.35, shift1);
new TGeoBBox("tpcohs3", 3.8, 0.5, 0.85, shift1);
//
shift1[0] = 0.0;
shift1[1] = -1.175;
shift1[2] = 0.0;
//
TGeoBBox *tpcohs4 = new TGeoBBox("tpsohs4", 3.1, 0.5, 0.7, shift1);
//
TGeoVolume *tpcohs4v = new TGeoVolume("TPC_OHS4", tpcohs4, m6);
//
p[0] = 0.0;
p[1] = -0.186;   
p[2] = 0.0;
//
n[0] = 0.0;
n[1] = -1.0;
n[2] = 0.0;
//
new TGeoHalfSpace("cutohs1", p, n);
//
TGeoCompositeShape *tpcohs5 = new TGeoCompositeShape("tpcohs5", "tpcohs1-tpcohs2-tpcohs3-cutohs1"); 
TGeoVolume *tpcohs5v = new TGeoVolume("TPC_OHS5", tpcohs5, m6); 
//
TGeoVolumeAssembly *tpcohs = new TGeoVolumeAssembly("TPC_OHS");    
tpcohs->AddNode(tpcohs5v, 1);
tpcohs->AddNode(tpcohs4v, 1); 
//
// outer rod holder itself
//
shift1[0] = 0.0;
shift1[1] = 1.325;
shift1[2] = 0.0;
 new TGeoBBox("tpcorh1", 3.1, 1.825, 0.55); //from this box we cut pieces...
 //
shift1[0] = -3.1;	
shift1[1] = -0.5;	
shift1[2] = 0.0;
//
new TGeoBBox("tpcorh2", 0.5, 2.75, 1.1, shift1);
//
shift1[0] = 3.1;	
shift1[1] = -0.5;	
shift1[2] = 0.0;
//
new TGeoBBox("tpcorh3", 0.5, 2.75, 1.1, shift1);
//
shift1[0] = 0.0;
shift1[1] = -0.5;	
shift1[2] = -0.95;
//
new TGeoBBox("tpcorh4", 3.9, 2.75, 0.5, shift1);
//
shift1[0] = 0.0;
shift1[1] = -0.5;
shift1[2] = 0.0;
//
new TGeoBBox("tpcorh5", 1.95, 0.5, 1.1, shift1);
//
shift1[0] = 0.0;
shift1[1] = -0.5;
shift1[2] = 0.55;
//
new TGeoBBox("tpcorh6", 2.4, 0.5, 0.6, shift1);
//
new TGeoTube("tpcorh7", 0, 1.95, 0.85);
new TGeoTube("tpcorh8", 0, 2.4, 0.6);
//
TGeoTranslation *trans33 = new TGeoTranslation("trans33", 0.0, 0.0, 0.55); 
trans33->RegisterYourself();
//
TGeoCompositeShape *tpcorh9 = new TGeoCompositeShape("tpcorh9", "tpcorh1-tpcorh2-tpcorh3-tpcorh4-tpcorh5-tpcorh6-(tpcorh8:trans33)-tpcorh7");
//
 TGeoVolume *tpcorh9v = new TGeoVolume("TPC_ORH",tpcorh9,m6); //outer rod holder 
 //
 // now 2 holders together
 //
 TGeoVolumeAssembly *tpcorh = new TGeoVolumeAssembly("TPC_ORH2");
 //
 tpcorh->AddNode(tpcorh9v,1,new TGeoTranslation(0.0, 0.0, 1.25));
 tpcorh->AddNode(tpcorh9v,2,new TGeoCombiTrans(0.0, 0.0, -1.25,rot111));
//
// outer rod plug left
//
TGeoPcon *outplug = new TGeoPcon("outplug", 0.0, 360.0, 14); 

outplug->DefineSection(0, 0.5, 0.0, 2.2);
outplug->DefineSection(1, 0.7, 0.0, 2.2);

outplug->DefineSection(2, 0.7, 1.55, 2.2);
outplug->DefineSection(3, 0.8, 1.55, 2.2);

outplug->DefineSection(4, 0.8, 1.55, 1.75);
outplug->DefineSection(5, 1.2, 1.55, 1.75);

outplug->DefineSection(6, 1.2, 1.55, 2.2);
outplug->DefineSection(7, 1.875, 1.55, 2.2);

outplug->DefineSection(8, 1.875, 1.55, 2.2);
outplug->DefineSection(9, 2.47, 1.75, 2.2);

outplug->DefineSection(10, 2.47, 1.75, 2.08);
outplug->DefineSection(11, 2.57, 1.8, 2.08);

outplug->DefineSection(12, 2.57, 1.92, 2.08);
outplug->DefineSection(13, 2.95, 1.92, 2.08);
//
shift1[0] = 0.0;
shift1[1] = 2.09;
shift1[2] = 1.01;

new TGeoBBox("cutout", 2.5, 0.11, 1.01, shift1);
//

TGeoCompositeShape *outplleft = new TGeoCompositeShape("outplleft", "outplug-cutout");    
TGeoVolume *outplleftv = new TGeoVolume("TPC_OPLL", outplleft, m6); 
//
//  support + holder + plug
//

 
 TGeoVolumeAssembly *tpcohpl = new TGeoVolumeAssembly("TPC_OHPL"); 
 //
 tpcohpl->AddNode(outplleftv,1); //plug
 tpcohpl->AddNode(outplleftv,2,ref); //plug reflected
 tpcohpl->AddNode(tpcorh,1); //rod holder
 tpcohpl->AddNode(tpcohs,1,new TGeoTranslation(0.0, 3.925, 0)); // support
 //

 //
 // main membrane holder
 //	      
pointstrap[0]= 0.0;
pointstrap[1]= 0.0;
pointstrap[2]= 0.0;
pointstrap[3]= 2.8;
pointstrap[4]= 3.1;
pointstrap[5]= 1.96;
pointstrap[6]= 3.1;
pointstrap[7]= 0.0;
pointstrap[8]= 0.0;
pointstrap[9]= 0.0;
pointstrap[10]= 0.0;
pointstrap[11]= 2.8;
pointstrap[12]= 3.1;
pointstrap[13]= 1.96;
pointstrap[14]= 3.1;
pointstrap[15]= 0.0; 
//
TGeoArb8 *tpcmmh1 = new TGeoArb8("tpcmmh1", 1.75, pointstrap);
TGeoBBox *tpcmmh2 = new TGeoBBox("tpcmmh2", 0.8, 1.4, 12.5); 
//
TGeoVolume *tpcmmh1v = new TGeoVolume("TPC_MMH1", tpcmmh1, m6);   
TGeoVolume *tpcmmh2v = new TGeoVolume("TPC_MMH2", tpcmmh2, m6);
//
 TGeoVolumeAssembly *tpcmmhs = new TGeoVolumeAssembly("TPC_MMHS");
 tpcmmhs->AddNode(tpcmmh1v,1,new TGeoTranslation(0.8, -1.4, 10.75));
 tpcmmhs->AddNode(tpcmmh1v,2,new TGeoTranslation(0.8, -1.4, -10.75));
 tpcmmhs->AddNode(tpcmmh2v,1);
 //
 // main membrahe holder clamp
 //
shift1[0] = -0.75;
shift1[1] = -1.15;
shift1[2] = 0.0;
//
new TGeoBBox("tpcmmhc1", 1.65, 1.85, 8.9); 
new TGeoBBox("tpcmmhc2", 0.9, 0.7, 8.9, shift1);
//
// half spaces  - cuts
//
p[0] = -1.65;
p[1] = 0.0;   
p[2] = -0.9;
//
n[0] = 8.0;
n[1] = 0.0;
n[2] = 8.0*TMath::Tan(13.*TMath::DegToRad());
//
new TGeoHalfSpace("cutmmh1", p, n);
//
p[0] = -1.65;
p[1] = 0.0;   
p[2] = 0.9;
//
n[0] = 8.0;
n[1] = 0.0;
n[2] = -8.0*TMath::Tan(13.*TMath::DegToRad());
//
new TGeoHalfSpace("cutmmh2", p, n);
//
p[0] = 0.0;
p[1] = 1.85;   
p[2] = -2.8;
//
n[0] = 0.0;
n[1] = -6.1;
n[2] = 6.1*TMath::Tan(20.*TMath::DegToRad());
//
new TGeoHalfSpace("cutmmh3", p, n);
//
p[0] = 0.0;
p[1] = 1.85;      
p[2] = 2.8;
//
n[0] = 0.0;
n[1] = -6.1;
n[2] = -6.1*TMath::Tan(20*TMath::DegToRad());
//
new TGeoHalfSpace("cutmmh4", p, n);
//
p[0] = 0.75;
p[1] = 0.0; 
p[2] = -8.9;
//
n[0] = 2.4*TMath::Tan(30*TMath::DegToRad());
n[1] = 0.0;
n[2] = 2.4;
//
 new TGeoHalfSpace("cutmmh5", p, n);
//
p[0] = 0.75;
p[1] = 0.0;
p[2] = 8.9;
//
n[0] = 2.4*TMath::Tan(30*TMath::DegToRad());
n[1] = 0.0;
n[2] = -2.4;
//
new TGeoHalfSpace("cutmmh6", p, n);

TGeoCompositeShape *tpcmmhc = new TGeoCompositeShape("TPC_MMHC", "tpcmmhc1-tpcmmhc2-cutmmh1-cutmmh2-cutmmh3-cutmmh4-cutmmh5-cutmmh6"); 

 TGeoVolume *tpcmmhcv = new TGeoVolume("TPC_MMHC",tpcmmhc,m6);
 //
TGeoVolume *tpcmmh = new TGeoVolumeAssembly("TPC_MMH");
//
 tpcmmh->AddNode(tpcmmhcv,1,new TGeoTranslation(0.65+1.5, 1.85, 0.0));
 tpcmmh->AddNode(tpcmmhcv,2,new TGeoCombiTrans(-0.65-1.5, 1.85, 0.0,rot111));
 tpcmmh->AddNode(tpcmmhs,1,new TGeoTranslation(1.5, 0.0, 0.0));
 tpcmmh->AddNode(tpcmmhs,2,new TGeoCombiTrans(-1.5, 0.0, 0.0,rot111));
 //
 
 //

//--------------------------------------------
 //
 // guard ring resistor chain
 //

 TGeoTube *gres1 = new TGeoTube(0.,0.375,125.);// inside ifc
 //
 TGeoVolume *vgres1 = new TGeoVolume("TPC_GRES1",gres1,m14);

 //
 Double_t xrc,yrc;
 //
 xrc=79.3*TMath::Cos(350.*TMath::DegToRad());
 yrc=79.3*TMath::Sin(350.*TMath::DegToRad());
 //
 v9->AddNode(vgres1,1,new TGeoTranslation(xrc,yrc,126.9));
 v9->AddNode(vgres1,2,new TGeoTranslation(xrc,yrc,-126.9));
 //
 xrc=79.3*TMath::Cos(190.*TMath::DegToRad());
 yrc=79.3*TMath::Sin(190.*TMath::DegToRad()); 
 //
 v9->AddNode(vgres1,3,new TGeoTranslation(xrc,yrc,126.9));
 v9->AddNode(vgres1,4,new TGeoTranslation(xrc,yrc,-126.9));
 //------------------------------------------------------------------
 TGeoRotation refl("refl",90.,0.,90.,90.,180.,0.);
 TGeoRotation rotrod("rotrod");
 //
 TGeoRotation *rotpos[2]; 
 //
 TGeoRotation *rotrod1[2]; 
 //
 // clamps holding rods
 //
  TGeoBBox *clampi1 = new TGeoBBox("clampi1",0.2,3.1,0.8);
  TGeoVolume *clampi1v = new TGeoVolume("TPC_clampi1v",clampi1,m6);
 //
 pointstrap[0]=0.49;
 pointstrap[1]=0.375;
 //
 pointstrap[2]=0.49;
 pointstrap[3]=-0.375;
 //
 pointstrap[4]=-0.49;
 pointstrap[5]=-0.375;
 //
 pointstrap[6]=-0.49;
 pointstrap[7]=1.225;
 //
 pointstrap[8]=0.49;
 pointstrap[9]=0.375;
 //
 pointstrap[10]=0.49;
 pointstrap[11]=-0.375;
 //
 pointstrap[12]=-0.49;
 pointstrap[13]=-0.375;
 //
 pointstrap[14]=-0.49;
 pointstrap[15]=1.225;
 //
 TGeoArb8 *clitrap = new TGeoArb8("clitrap",0.25,pointstrap);
 TGeoVolume *clitrapv = new TGeoVolume("TPC_clitrapv",clitrap,m6);  
 //
 TGeoRotation *clamprot = new TGeoRotation();
 clamprot->RotateX(180.);
 //
 new TGeoBBox("clibox",1.125,3.1,.1);
 new TGeoTube("clitub",0.,2.2,0.1);
 //
 // copmisite shape for the clamp holder
 //
 TGeoTranslation *clitr1 = new TGeoTranslation("clitr1",1.125,0.,0.);
 clitr1->RegisterYourself();
 TGeoCompositeShape *clihold = new TGeoCompositeShape("clihold","clibox-clitub:clitr1"); 
 TGeoVolume *cliholdv = new TGeoVolume("TPC_cliholdv",clihold,m6);
 //
 // now assembly the whole inner clamp
 //
 TGeoVolume *iclamp = new TGeoVolumeAssembly("TPC_iclamp");
 //
 iclamp->AddNode(clampi1v,1); //main box
 iclamp->AddNode(clitrapv,1,new TGeoTranslation(0.69,-2.725,0.35)); //trapezoids
 iclamp->AddNode(clitrapv,2,new TGeoTranslation(0.69,-2.725,-0.35));
 iclamp->AddNode(clitrapv,3,new TGeoCombiTrans(0.69,2.725,0.35,clamprot));
 iclamp->AddNode(clitrapv,4,new TGeoCombiTrans(0.69,2.725,-0.35,clamprot));
 iclamp->AddNode(cliholdv,1,new TGeoTranslation(1.325,0.,0.)); //holder
 //
 //  outer clamps
 //
  TGeoBBox *clampo1 = new TGeoBBox("clampo1",0.25,3.1,1.);
  TGeoBBox *clampo2 = new TGeoBBox("clampo2",0.4,0.85,1.);
  //
  TGeoVolume *clampo1v = new TGeoVolume("TPC_clampo1v",clampo1,m6);
  TGeoVolume *clampo2v = new TGeoVolume("TPC_clampo2v",clampo2,m6);
  //
  TGeoVolumeAssembly *oclamp = new TGeoVolumeAssembly("TPC_oclamp");
  //
  oclamp->AddNode(clampo1v,1);
 //
 oclamp->AddNode(clampo2v,1,new TGeoTranslation(0.65,-2.25,0));
 oclamp->AddNode(clampo2v,2,new TGeoTranslation(0.65,2.25,0));

 //
 pointstrap[0]=0.375; 
 pointstrap[1]=0.75;
 pointstrap[2]=0.375;
 pointstrap[3]=-0.35;
 pointstrap[5]=-0.375;
 pointstrap[4]=-0.35;
 pointstrap[6]=-0.375; 
 pointstrap[7]=0.35;
 //
 pointstrap[8]=0.375; 
 pointstrap[9]=0.75;
 pointstrap[10]=0.375;
 pointstrap[11]=-0.35;
 pointstrap[12]=-0.375;
 pointstrap[13]=-0.35;
 pointstrap[14]=-0.375; 
 pointstrap[15]=0.35;
 //
 TGeoArb8 *clotrap = new TGeoArb8("clotrap",0.25,pointstrap);
 TGeoVolume *clotrapv = new TGeoVolume("TPC_clotrapv",clotrap,m6);
 //
 oclamp->AddNode(clotrapv,1,new TGeoTranslation(-0.625,-2.75,0.35)); 
 oclamp->AddNode(clotrapv,2,new TGeoTranslation(-0.625,-2.75,-0.35));
 oclamp->AddNode(clotrapv,3,new TGeoCombiTrans(-0.625,2.75,0.35,clamprot)); 
 oclamp->AddNode(clotrapv,4,new TGeoCombiTrans(-0.625,2.75,-0.35,clamprot));  
 //
 TGeoBBox *clampo3 = new TGeoBBox("clampo3",1.6,0.45,.1);
 TGeoVolume *clampo3v = new TGeoVolume("TPC_clampo3v",clampo3,m6); 
 //
 oclamp->AddNode(clampo3v,1,new TGeoTranslation(-1.85,2.625,0.));
 oclamp->AddNode(clampo3v,2,new TGeoTranslation(-1.85,-2.625,0));
 //
 TGeoTubeSeg *clampo4 = new TGeoTubeSeg("clampo4",2.2,3.1,0.1,90.,270.);
 TGeoVolume *clampo4v = new TGeoVolume("TPC_clampo4v",clampo4,m6);
 //
 oclamp->AddNode(clampo4v,1,new TGeoTranslation(-3.45,0.,0.));



 //v9 - drift gas

    TGeoRotation rot102("rot102");
    rot102.RotateY(-90.);

  for(Int_t i=0;i<18;i++){
    Double_t angle,x,y;
    Double_t z,r; 
    angle=TMath::DegToRad()*20.*(Double_t)i;
    //inner rods
    r=81.5;
    x=r * TMath::Cos(angle);
    y=r * TMath::Sin(angle);
    z = 126.;
    TGeoRotation *rot12 = new TGeoRotation();
    rot12->RotateZ(-90.0+i*20.);
    v9->AddNode(tpcihpl,i+1,new TGeoCombiTrans(x, y, 0., rot12));
    //
    if(i==11){//resistor rod inner
       rotrod.RotateZ(-90.+i*20.);
       rotrod1[0]= new TGeoRotation();
       rotpos[0]= new TGeoRotation();
       //
       rotrod1[0]->RotateZ(90.+i*20.);
       *rotpos[0] = refl*rotrod; //rotation+reflection
	v9->AddNode(tpcrrod,1,new TGeoCombiTrans(x,y, z, rotrod1[0])); //A
	v9->AddNode(tpcrrod,2,new TGeoCombiTrans(x,y,-z, rotpos[0])); //C      
    } 
    else { 
      v9->AddNode(tpcmrod,i+1,new TGeoTranslation(x,y,z));//shaft
      v9->AddNode(tpcmrod,i+19,new TGeoCombiTrans(x,y,-z,ref));//muon
    }
    //
    // inner clamps positioning
    //
    r=79.05;
    x=r * TMath::Cos(angle);
    y=r * TMath::Sin(angle);
    rot12= new TGeoRotation();
    rot12->RotateZ(i*20.);
    //
      //A-side
      v9->AddNode(iclamp,7*i+1,new TGeoCombiTrans(x,y,5.25,rot12));
      v9->AddNode(iclamp,7*i+2,new TGeoCombiTrans(x,y,38.25,rot12));
      v9->AddNode(iclamp,7*i+3,new TGeoCombiTrans(x,y,80.25,rot12));
      v9->AddNode(iclamp,7*i+4,new TGeoCombiTrans(x,y,122.25,rot12));
      v9->AddNode(iclamp,7*i+5,new TGeoCombiTrans(x,y,164.25,rot12));
      v9->AddNode(iclamp,7*i+6,new TGeoCombiTrans(x,y,206.25,rot12));
      v9->AddNode(iclamp,7*i+7,new TGeoCombiTrans(x,y,246.75,rot12));
      //C-side
      v9->AddNode(iclamp,7*i+127,new TGeoCombiTrans(x,y,-5.25,rot12));
      v9->AddNode(iclamp,7*i+128,new TGeoCombiTrans(x,y,-38.25,rot12));
      v9->AddNode(iclamp,7*i+129,new TGeoCombiTrans(x,y,-80.25,rot12));
      v9->AddNode(iclamp,7*i+130,new TGeoCombiTrans(x,y,-122.25,rot12));
      v9->AddNode(iclamp,7*i+131,new TGeoCombiTrans(x,y,-164.25,rot12));
      v9->AddNode(iclamp,7*i+132,new TGeoCombiTrans(x,y,-206.25,rot12));
      v9->AddNode(iclamp,7*i+133,new TGeoCombiTrans(x,y,-246.75,rot12));
    //
    //--------------------------
    // outer rods
    r=254.25;
    x=r * TMath::Cos(angle);
    y=r * TMath::Sin(angle);
    z=126.;
    //
    // outer rod holder + outer left plug
    //

    TGeoRotation *rot33 = new TGeoRotation();
    rot33->RotateZ(-90+i*20.);
    //
    v9->AddNode(tpcohpl,i+1,new TGeoCombiTrans(x, y, 0., rot33));
    //
    Double_t xxx = 256.297*TMath::Cos((i*20.+10.)*TMath::DegToRad());
    Double_t yyy = 256.297*TMath::Sin((i*20.+10.)*TMath::DegToRad());
    //
    TGeoRotation rot101("rot101");
    rot101.RotateZ(90.+i*20.+10.);
    TGeoRotation *rot103 = new TGeoRotation("rot103");
    *rot103 = rot101*rot102;
    //
    TGeoCombiTrans *trh100 = new TGeoCombiTrans(xxx,yyy,0.,rot103);
    //
    if(i==2) {
      //main membrane holder
      v9->AddNode(tpcmmh,1,trh100);
    }
    else{
      // "normal" membrane holder
      v9->AddNode(tpcomh,i+1,trh100);      
    }

    //
    if(i==3){//resistor rod outer
      rotrod.RotateZ(90.+i*20.);
      rotrod1[1]= new TGeoRotation();
      rotpos[1]= new TGeoRotation();
      rotrod1[1]->RotateZ(90.+i*20.);
      *rotpos[1] = refl*rotrod;//rotation+reflection
      v9->AddNode(tpcrrod,3,new TGeoCombiTrans(x,y, z, rotrod1[1])); //A 
      v9->AddNode(tpcrrod,4,new TGeoCombiTrans(x,y, -z, rotpos[1])); //C
    }
    else {
      v9->AddNode(tpcmrod,i+37,new TGeoTranslation(x,y,z));//shaft
      v9->AddNode(tpcmrod,i+55,new TGeoCombiTrans(x,y,-z,ref));//muon      
    }
    if(i==15){
      v9->AddNode(hvrv,1,new TGeoTranslation(x,y,z+0.7)); //hv->A-side only     
    }
    //
    // outer clamps
    //
    r=256.9;
    x=r * TMath::Cos(angle);
    y=r * TMath::Sin(angle);
    rot12= new TGeoRotation();
    rot12->RotateZ(i*20.);
    //
      //A-side
      v9->AddNode(oclamp,7*i+1,new TGeoCombiTrans(x,y,5.25,rot12));
      v9->AddNode(oclamp,7*i+2,new TGeoCombiTrans(x,y,38.25,rot12));
      v9->AddNode(oclamp,7*i+3,new TGeoCombiTrans(x,y,80.25,rot12));
      v9->AddNode(oclamp,7*i+4,new TGeoCombiTrans(x,y,122.25,rot12));
      v9->AddNode(oclamp,7*i+5,new TGeoCombiTrans(x,y,164.25,rot12));
      v9->AddNode(oclamp,7*i+6,new TGeoCombiTrans(x,y,206.25,rot12));
      v9->AddNode(oclamp,7*i+7,new TGeoCombiTrans(x,y,246.75,rot12));
      //C-side
      v9->AddNode(oclamp,7*i+127,new TGeoCombiTrans(x,y,-5.25,rot12));
      v9->AddNode(oclamp,7*i+128,new TGeoCombiTrans(x,y,-38.25,rot12));
      v9->AddNode(oclamp,7*i+129,new TGeoCombiTrans(x,y,-80.25,rot12));
      v9->AddNode(oclamp,7*i+130,new TGeoCombiTrans(x,y,-122.25,rot12));
      v9->AddNode(oclamp,7*i+131,new TGeoCombiTrans(x,y,-164.25,rot12));
      v9->AddNode(oclamp,7*i+132,new TGeoCombiTrans(x,y,-206.25,rot12));
      v9->AddNode(oclamp,7*i+133,new TGeoCombiTrans(x,y,-246.75,rot12));
    
  } //end of rods positioning

  TGeoVolume *alice = gGeoManager->GetVolume("ALIC");
  alice->AddNode(v1,1);  
  
} // end of function
 
//_____________________________________________________________________________
void AliTPCv2::AddAlignableVolumes() const
{
  //
  // Create entries for alignable volumes associating the symbolic volume
  // name with the corresponding volume path. Needs to be syncronized with
  // eventual changes in the geometry.
  // 
  SetInnerChambersAlignable();
  SetOuterChambersAlignable();
}
 
//_____________________________________________________________________________
void AliTPCv2::SetInnerChambersAlignable() const
{
  //
  AliGeomManager::ELayerID idTPC1 = AliGeomManager::kTPC1;
  Int_t modUID, modnum = 0;
  TString vpstr1 = "ALIC_1/TPC_M_1/TPC_Drift_1/TPC_ENDCAP_1/TPC_SECT_";
  TString vpstr2 = "ALIC_1/TPC_M_1/TPC_Drift_1/TPC_ENDCAP_2/TPC_SECT_";
  TString vpappend = "/TPC_IROC_1";
  TString snstr1="TPC/EndcapA/Sector";
  TString snstr2="TPC/EndcapC/Sector";
  TString snappend="/InnerChamber";
  TString volpath, symname;
  
  for(Int_t cnt=1; cnt<=18; cnt++){
    modUID = AliGeomManager::LayerToVolUID(idTPC1,modnum++);
    volpath = vpstr1;
    volpath += cnt;
    volpath += vpappend;
    symname = snstr1;
    symname += cnt;
    symname += snappend;
    if(!gGeoManager->SetAlignableEntry(symname.Data(),volpath.Data(),modUID))
      AliFatal(Form("Alignable entry %s not created. Volume path %s not valid", symname.Data(),volpath.Data()));
    TGeoPNEntry *alignableEntry = gGeoManager->GetAlignableEntryByUID(modUID);
    TGeoHMatrix* globMatrix = alignableEntry->GetGlobalOrig();
    TGeoHMatrix* matTtoL = fTPCParam->Tracking2LocalMatrix(globMatrix,cnt-1);
    alignableEntry->SetMatrix(matTtoL);
  }

  for(Int_t cnt=1; cnt<=18; cnt++){
    modUID = AliGeomManager::LayerToVolUID(idTPC1,modnum++);
    volpath = vpstr2;
    volpath += cnt;
    volpath += vpappend;
    symname = snstr2;
    symname += cnt;
    symname += snappend;
    if(!gGeoManager->SetAlignableEntry(symname.Data(),volpath.Data(),modUID))
      AliFatal(Form("Alignable entry %s not created. Volume path %s not valid", symname.Data(),volpath.Data()));
    TGeoPNEntry *alignableEntry = gGeoManager->GetAlignableEntryByUID(modUID);
    TGeoHMatrix* globMatrix = alignableEntry->GetGlobalOrig();
    TGeoHMatrix* matTtoL = fTPCParam->Tracking2LocalMatrix(globMatrix,18+cnt-1);
    alignableEntry->SetMatrix(matTtoL);
  }
}

//_____________________________________________________________________________
void AliTPCv2::SetOuterChambersAlignable() const
{
  //
  AliGeomManager::ELayerID idTPC2 = AliGeomManager::kTPC2;
  Int_t modUID, modnum = 0;
  TString vpstr1 = "ALIC_1/TPC_M_1/TPC_Drift_1/TPC_ENDCAP_1/TPC_SECT_";
  TString vpstr2 = "ALIC_1/TPC_M_1/TPC_Drift_1/TPC_ENDCAP_2/TPC_SECT_";
  TString vpappend = "/TPC_OROC_1";
  TString snstr1="TPC/EndcapA/Sector";
  TString snstr2="TPC/EndcapC/Sector";
  TString snappend="/OuterChamber";
  TString volpath, symname;
  
  for(Int_t cnt=1; cnt<=18; cnt++){
    modUID = AliGeomManager::LayerToVolUID(idTPC2,modnum++);
    volpath = vpstr1;
    volpath += cnt;
    volpath += vpappend;
    symname = snstr1;
    symname += cnt;
    symname += snappend;
    if(!gGeoManager->SetAlignableEntry(symname.Data(),volpath.Data(),modUID))
      AliFatal(Form("Alignable entry %s not created. Volume path %s not valid", symname.Data(),volpath.Data()));
    TGeoPNEntry *alignableEntry = gGeoManager->GetAlignableEntryByUID(modUID);
    TGeoHMatrix* globMatrix = alignableEntry->GetGlobalOrig();
    TGeoHMatrix* matTtoL = fTPCParam->Tracking2LocalMatrix(globMatrix,36+cnt-1);
    alignableEntry->SetMatrix(matTtoL);
  }

  for(Int_t cnt=1; cnt<=18; cnt++){
    modUID = AliGeomManager::LayerToVolUID(idTPC2,modnum++);
    volpath = vpstr2;
    volpath += cnt;
    volpath += vpappend;
    symname = snstr2;
    symname += cnt;
    symname += snappend;
    if(!gGeoManager->SetAlignableEntry(symname.Data(),volpath.Data(),modUID))
      AliFatal(Form("Alignable entry %s not created. Volume path %s not valid", symname.Data(),volpath.Data()));
    TGeoPNEntry *alignableEntry = gGeoManager->GetAlignableEntryByUID(modUID);
    TGeoHMatrix* globMatrix = alignableEntry->GetGlobalOrig();
    TGeoHMatrix* matTtoL = fTPCParam->Tracking2LocalMatrix(globMatrix,36+18+cnt-1);
    alignableEntry->SetMatrix(matTtoL);
  }
}


//_____________________________________________________________________________
void AliTPCv2::CreateMaterials()
{
  //
  // Define materials for version 2 of the Time Projection Chamber
  //
 
  AliTPC::CreateMaterials();
}

//_____________________________________________________________________________
void AliTPCv2::Init()
{
  //
  // Initialises version 2 of the TPC after that it has been built
  //

  Int_t *idtmed = fIdtmed->GetArray();
  
  AliTPC::Init();

 
  fIdSens=TVirtualMC::GetMC()->VolId("TPC_Strip");  // one strip is always selected...

  fIDrift=TVirtualMC::GetMC()->VolId("TPC_Drift");
  fSecOld=-100; // fake number 

  TVirtualMC::GetMC()->SetMaxNStep(-120000); // max. number of steps increased

  if (fPrimaryIonisation) {
    // for FLUKA
      TVirtualMC::GetMC()->Gstpar(idtmed[2],"PRIMIO_E", 20.77); // 1st ionisation potential
 
      TVirtualMC::GetMC()->Gstpar(idtmed[2],"PRIMIO_N", 14.35);
      TVirtualMC::GetMC()->Gstpar(idtmed[2],"LOSS", 14); // specific energy loss
      TVirtualMC::GetMC()->Gstpar(idtmed[2],"STRA",4);
  } 
  // specific energy loss for geant3 is now defined in galice.cuts


  AliDebug(1,"*** TPC version 2 initialized ***");
  AliDebug(1,Form("Maximum number of steps = %d",TVirtualMC::GetMC()->GetMaxNStep()));

  //
  
}

//_____________________________________________________________________________
void AliTPCv2::StepManager()
{
  //
  // Called for every step in the Time Projection Chamber
  //

  //
  // parameters used for the energy loss calculations
  //
  //const Float_t kprim = 14.35; // number of primary collisions per 1 cm
  //const Float_t kpoti = 20.77e-9; // first ionization potential for Ne/CO2
  //const Float_t kwIon = 35.97e-9; // energy for the ion-electron pair creation 
  const Float_t kScalewIonG4 = 0.85; // scale factor to tune kwIon for Geant4 
  const Float_t kFanoFactorG4 = 0.7; // parameter for smearing the number of ionizations (nel) using Geant4
  const Int_t   kMaxDistRef =15;     // maximal difference between 2 stored references 
  Float_t prim = fTPCParam->GetNprim();
  Float_t poti = fTPCParam->GetFpot();
  Float_t wIon = fTPCParam->GetWmean();
 
  const Float_t kbig = 1.e10;

  Int_t id,copy;
  Float_t hits[5];
  Int_t vol[2];  
  TLorentzVector p;
  
  vol[1]=0; // preset row number to 0
  //
  if (!fPrimaryIonisation) TVirtualMC::GetMC()->SetMaxStep(kbig);
  
  if(!TVirtualMC::GetMC()->IsTrackAlive()) return; // particle has disappeared
  
  Float_t charge = TVirtualMC::GetMC()->TrackCharge();
  
  if(TMath::Abs(charge)<=0.) return; // take only charged particles
  
  // check the sensitive volume

  id = TVirtualMC::GetMC()->CurrentVolID(copy); // vol ID and copy number (starts from 1!)
  if(id != fIDrift && id != fIdSens) return; // not in the sensitive folume 

  if ( fPrimaryIonisation && id == fIDrift ) {
    Double_t rnd = TVirtualMC::GetMC()->GetRandom()->Rndm();
    TVirtualMC::GetMC()->SetMaxStep(0.2+(2.*rnd-1.)*0.05);  // 2 mm +- rndm*0.5mm step
  }   

  //if ( fPrimaryIonisation && id == fIDrift && TVirtualMC::GetMC()->IsTrackEntering()) {
  //  TVirtualMC::GetMC()->SetMaxStep(0.2);  // 2 mm 
  //}   
  
  TVirtualMC::GetMC()->TrackPosition(p);
  Double_t r = TMath::Sqrt(p[0]*p[0]+p[1]*p[1]);
  //
  
  //
  Double_t angle = TMath::ACos(p[0]/r);  
  angle = (p[1]<0.) ? TMath::TwoPi()-angle : angle;
  //
  // angular segment, it is not a real sector number...
  //
  Int_t sector=TMath::Nint((angle-fTPCParam->GetInnerAngleShift())/
               fTPCParam->GetInnerAngle());
  // rotate to segment "0"
  Float_t cos,sin;
  fTPCParam->AdjustCosSin(sector,cos,sin);
  Float_t x1=p[0]*cos + p[1]*sin;
  // check if within sector's limits
  if((x1>=fTPCParam->GetInnerRadiusLow()&&x1<=fTPCParam->GetInnerRadiusUp())
     ||(x1>=fTPCParam->GetOuterRadiusLow()&&x1<=fTPCParam->GetOuterRadiusUp())){
  // calculate real sector number...
  if (x1>fTPCParam->GetOuterRadiusLow()){
    sector = TMath::Nint((angle-fTPCParam->GetOuterAngleShift())/
             fTPCParam->GetOuterAngle())+fTPCParam->GetNInnerSector();
    if (p[2]<0) 	sector+=(fTPCParam->GetNOuterSector()>>1);
  }
    else   
      if (p[2]<0) sector+=(fTPCParam->GetNInnerSector()>>1);  
  //
  // here I have a sector number
  //

  vol[0]=sector;

  static Double_t lastReferenceR=0;
  if (TMath::Abs(lastReferenceR-r)>kMaxDistRef){
    AddTrackReference(gAlice->GetMCApp()->GetCurrentTrackNumber(), AliTrackReference::kTPC);
    lastReferenceR = r;
  }

  // check if change of sector
  if(sector != fSecOld){
    fSecOld=sector;
    // add track reference
    AddTrackReference(gAlice->GetMCApp()->GetCurrentTrackNumber(), AliTrackReference::kTPC);
  }  
  // track is in the sensitive strip
  if(id == fIdSens){
    // track is entering the strip
    if (TVirtualMC::GetMC()->IsTrackEntering()){
      Int_t totrows = fTPCParam->GetNRowLow()+fTPCParam->GetNRowUp();
      vol[1] = (copy<=totrows) ? copy-1 : copy-1-totrows;
      // row numbers are autonomous for lower and upper sectors
      if(vol[0] > fTPCParam->GetNInnerSector()) {
        vol[1] -= fTPCParam->GetNRowLow();
      }
    //
      if(vol[0]<fTPCParam->GetNInnerSector()&&vol[1] == 0){
  
        // lower sector, row 0, because Jouri wants to have this

        TVirtualMC::GetMC()->TrackMomentum(p);
        hits[0]=p[0];
        hits[1]=p[1];
        hits[2]=p[2];
        hits[3]=0.; // this hit has no energy loss
        // Get also the track time for pileup simulation
        hits[4]=TVirtualMC::GetMC()->TrackTime();

        AddHit(gAlice->GetMCApp()->GetCurrentTrackNumber(), vol,hits);  
      }
    //

       TVirtualMC::GetMC()->TrackPosition(p);
       hits[0]=p[0];
       hits[1]=p[1];
       hits[2]=p[2];
       hits[3]=0.; // this hit has no energy loss
       // Get also the track time for pileup simulation
       hits[4]=TVirtualMC::GetMC()->TrackTime();

       AddHit(gAlice->GetMCApp()->GetCurrentTrackNumber(), vol,hits);  
    
    }
    else return;
  }  
  //-----------------------------------------------------------------
  //  charged particle is in the sensitive drift volume
  //-----------------------------------------------------------------
  if(TVirtualMC::GetMC()->TrackStep() > 0) {
    Int_t nel=0;
    if (!fPrimaryIonisation) {
      nel = (Int_t)(((TVirtualMC::GetMC()->Edep())-poti)/wIon) + 1;
    }
    else {
      
      /*
      static Double_t deForNextStep = 0.;
      // Geant4 (the meaning of Edep as in Geant3) - wrong
      //nel = (Int_t)(((TVirtualMC::GetMC()->Edep())-poti)/wIon) + 1;

      // Geant4 (the meaning of Edep as in Geant3) - NEW
      Double_t eAvailable = TVirtualMC::GetMC()->Edep() + deForNextStep;
      nel = (Int_t)(eAvailable/wIon);
      deForNextStep = eAvailable - nel*wIon;
      */

      //new Geant4-approach
      Double_t meanIon = TVirtualMC::GetMC()->Edep()/(wIon*kScalewIonG4);
      nel = (Int_t) ( kFanoFactorG4*AliMathBase::Gamma(meanIon/kFanoFactorG4)); // smear nel using gamma distr w mean = meanIon and variance = meanIon/kFanoFactorG4
    }
    nel=TMath::Min(nel,300); // 300 electrons corresponds to 10 keV
    //
    TVirtualMC::GetMC()->TrackPosition(p);
    hits[0]=p[0];
    hits[1]=p[1];
    hits[2]=p[2];
    hits[3]=(Float_t)nel;

    // Add this hit

    //    if (fHitType&&2){
    if(fHitType){
      TVirtualMC::GetMC()->TrackMomentum(p);
      Float_t momentum = TMath::Sqrt(p[0]*p[0]+p[1]*p[1]);
      Float_t precision =   (momentum>0.1) ? 0.002 :0.01;
      fTrackHits->SetHitPrecision(precision);
    }

    // Get also the track time for pileup simulation
    hits[4]=TVirtualMC::GetMC()->TrackTime();
 
    AddHit(gAlice->GetMCApp()->GetCurrentTrackNumber(), vol,hits);
    if (fDebugStreamer){   
      // You can dump here what you need
      // function  CreateDebugStremer() to be called in the Config.C  macro
      // if you want to enable it
      // By default debug streaemer is OFF
      Float_t edep = TVirtualMC::GetMC()->Edep();
      Float_t tstep = TVirtualMC::GetMC()->TrackStep();
      Int_t pid=TVirtualMC::GetMC()->TrackPid();
      (*fDebugStreamer)<<"hit"<<      
	"x="<<hits[0]<<  // hit position
 	"y="<<hits[1]<<
 	"z="<<hits[2]<<
 	"nel="<<hits[3]<<  // number of electorns
 	"tof="<<hits[4]<<  // hit TOF
	"edep="<<edep<<    // energy deposit
	"pid="<<pid<<      // pid
	"step="<<tstep<<
  	"p.="<<&p<<
	"\n";
    }
    
  } // step>0 
  } //within sector's limits
  // Stemax calculation for the next step
  
  Float_t pp;
  TLorentzVector mom;
  // below is valid only for Geant3 (fPromaryIonisation not set)
  if(!fPrimaryIonisation){
    TVirtualMC::GetMC()->TrackMomentum(mom);
    Float_t ptot=mom.Rho();
    Float_t betaGamma = ptot/TVirtualMC::GetMC()->TrackMass();

    //Int_t pid=TVirtualMC::GetMC()->TrackPid();
    // if((pid==kElectron || pid==kPositron) && ptot > 0.002)
    //       { 
    //         pp = prim*1.58; // electrons above 20 MeV/c are on the plateau!
    //       }
    //     else
    //       {
    
    betaGamma = TMath::Max(betaGamma,(Float_t)7.e-3); // protection against too small bg
    TVectorD *bbpar = fTPCParam->GetBetheBlochParameters(); //get parametrization from OCDB
    pp=prim*AliMathBase::BetheBlochAleph(betaGamma,(*bbpar)(0),(*bbpar)(1),(*bbpar)(2),(*bbpar)(3),(*bbpar)(4));         
    //     }
  
    Double_t rnd = TVirtualMC::GetMC()->GetRandom()->Rndm();
  
    TVirtualMC::GetMC()->SetMaxStep(-TMath::Log(rnd)/pp);
  }
  
}


 AliTPCv2.cxx:1
 AliTPCv2.cxx:2
 AliTPCv2.cxx:3
 AliTPCv2.cxx:4
 AliTPCv2.cxx:5
 AliTPCv2.cxx:6
 AliTPCv2.cxx:7
 AliTPCv2.cxx:8
 AliTPCv2.cxx:9
 AliTPCv2.cxx:10
 AliTPCv2.cxx:11
 AliTPCv2.cxx:12
 AliTPCv2.cxx:13
 AliTPCv2.cxx:14
 AliTPCv2.cxx:15
 AliTPCv2.cxx:16
 AliTPCv2.cxx:17
 AliTPCv2.cxx:18
 AliTPCv2.cxx:19
 AliTPCv2.cxx:20
 AliTPCv2.cxx:21
 AliTPCv2.cxx:22
 AliTPCv2.cxx:23
 AliTPCv2.cxx:24
 AliTPCv2.cxx:25
 AliTPCv2.cxx:26
 AliTPCv2.cxx:27
 AliTPCv2.cxx:28
 AliTPCv2.cxx:29
 AliTPCv2.cxx:30
 AliTPCv2.cxx:31
 AliTPCv2.cxx:32
 AliTPCv2.cxx:33
 AliTPCv2.cxx:34
 AliTPCv2.cxx:35
 AliTPCv2.cxx:36
 AliTPCv2.cxx:37
 AliTPCv2.cxx:38
 AliTPCv2.cxx:39
 AliTPCv2.cxx:40
 AliTPCv2.cxx:41
 AliTPCv2.cxx:42
 AliTPCv2.cxx:43
 AliTPCv2.cxx:44
 AliTPCv2.cxx:45
 AliTPCv2.cxx:46
 AliTPCv2.cxx:47
 AliTPCv2.cxx:48
 AliTPCv2.cxx:49
 AliTPCv2.cxx:50
 AliTPCv2.cxx:51
 AliTPCv2.cxx:52
 AliTPCv2.cxx:53
 AliTPCv2.cxx:54
 AliTPCv2.cxx:55
 AliTPCv2.cxx:56
 AliTPCv2.cxx:57
 AliTPCv2.cxx:58
 AliTPCv2.cxx:59
 AliTPCv2.cxx:60
 AliTPCv2.cxx:61
 AliTPCv2.cxx:62
 AliTPCv2.cxx:63
 AliTPCv2.cxx:64
 AliTPCv2.cxx:65
 AliTPCv2.cxx:66
 AliTPCv2.cxx:67
 AliTPCv2.cxx:68
 AliTPCv2.cxx:69
 AliTPCv2.cxx:70
 AliTPCv2.cxx:71
 AliTPCv2.cxx:72
 AliTPCv2.cxx:73
 AliTPCv2.cxx:74
 AliTPCv2.cxx:75
 AliTPCv2.cxx:76
 AliTPCv2.cxx:77
 AliTPCv2.cxx:78
 AliTPCv2.cxx:79
 AliTPCv2.cxx:80
 AliTPCv2.cxx:81
 AliTPCv2.cxx:82
 AliTPCv2.cxx:83
 AliTPCv2.cxx:84
 AliTPCv2.cxx:85
 AliTPCv2.cxx:86
 AliTPCv2.cxx:87
 AliTPCv2.cxx:88
 AliTPCv2.cxx:89
 AliTPCv2.cxx:90
 AliTPCv2.cxx:91
 AliTPCv2.cxx:92
 AliTPCv2.cxx:93
 AliTPCv2.cxx:94
 AliTPCv2.cxx:95
 AliTPCv2.cxx:96
 AliTPCv2.cxx:97
 AliTPCv2.cxx:98
 AliTPCv2.cxx:99
 AliTPCv2.cxx:100
 AliTPCv2.cxx:101
 AliTPCv2.cxx:102
 AliTPCv2.cxx:103
 AliTPCv2.cxx:104
 AliTPCv2.cxx:105
 AliTPCv2.cxx:106
 AliTPCv2.cxx:107
 AliTPCv2.cxx:108
 AliTPCv2.cxx:109
 AliTPCv2.cxx:110
 AliTPCv2.cxx:111
 AliTPCv2.cxx:112
 AliTPCv2.cxx:113
 AliTPCv2.cxx:114
 AliTPCv2.cxx:115
 AliTPCv2.cxx:116
 AliTPCv2.cxx:117
 AliTPCv2.cxx:118
 AliTPCv2.cxx:119
 AliTPCv2.cxx:120
 AliTPCv2.cxx:121
 AliTPCv2.cxx:122
 AliTPCv2.cxx:123
 AliTPCv2.cxx:124
 AliTPCv2.cxx:125
 AliTPCv2.cxx:126
 AliTPCv2.cxx:127
 AliTPCv2.cxx:128
 AliTPCv2.cxx:129
 AliTPCv2.cxx:130
 AliTPCv2.cxx:131
 AliTPCv2.cxx:132
 AliTPCv2.cxx:133
 AliTPCv2.cxx:134
 AliTPCv2.cxx:135
 AliTPCv2.cxx:136
 AliTPCv2.cxx:137
 AliTPCv2.cxx:138
 AliTPCv2.cxx:139
 AliTPCv2.cxx:140
 AliTPCv2.cxx:141
 AliTPCv2.cxx:142
 AliTPCv2.cxx:143
 AliTPCv2.cxx:144
 AliTPCv2.cxx:145
 AliTPCv2.cxx:146
 AliTPCv2.cxx:147
 AliTPCv2.cxx:148
 AliTPCv2.cxx:149
 AliTPCv2.cxx:150
 AliTPCv2.cxx:151
 AliTPCv2.cxx:152
 AliTPCv2.cxx:153
 AliTPCv2.cxx:154
 AliTPCv2.cxx:155
 AliTPCv2.cxx:156
 AliTPCv2.cxx:157
 AliTPCv2.cxx:158
 AliTPCv2.cxx:159
 AliTPCv2.cxx:160
 AliTPCv2.cxx:161
 AliTPCv2.cxx:162
 AliTPCv2.cxx:163
 AliTPCv2.cxx:164
 AliTPCv2.cxx:165
 AliTPCv2.cxx:166
 AliTPCv2.cxx:167
 AliTPCv2.cxx:168
 AliTPCv2.cxx:169
 AliTPCv2.cxx:170
 AliTPCv2.cxx:171
 AliTPCv2.cxx:172
 AliTPCv2.cxx:173
 AliTPCv2.cxx:174
 AliTPCv2.cxx:175
 AliTPCv2.cxx:176
 AliTPCv2.cxx:177
 AliTPCv2.cxx:178
 AliTPCv2.cxx:179
 AliTPCv2.cxx:180
 AliTPCv2.cxx:181
 AliTPCv2.cxx:182
 AliTPCv2.cxx:183
 AliTPCv2.cxx:184
 AliTPCv2.cxx:185
 AliTPCv2.cxx:186
 AliTPCv2.cxx:187
 AliTPCv2.cxx:188
 AliTPCv2.cxx:189
 AliTPCv2.cxx:190
 AliTPCv2.cxx:191
 AliTPCv2.cxx:192
 AliTPCv2.cxx:193
 AliTPCv2.cxx:194
 AliTPCv2.cxx:195
 AliTPCv2.cxx:196
 AliTPCv2.cxx:197
 AliTPCv2.cxx:198
 AliTPCv2.cxx:199
 AliTPCv2.cxx:200
 AliTPCv2.cxx:201
 AliTPCv2.cxx:202
 AliTPCv2.cxx:203
 AliTPCv2.cxx:204
 AliTPCv2.cxx:205
 AliTPCv2.cxx:206
 AliTPCv2.cxx:207
 AliTPCv2.cxx:208
 AliTPCv2.cxx:209
 AliTPCv2.cxx:210
 AliTPCv2.cxx:211
 AliTPCv2.cxx:212
 AliTPCv2.cxx:213
 AliTPCv2.cxx:214
 AliTPCv2.cxx:215
 AliTPCv2.cxx:216
 AliTPCv2.cxx:217
 AliTPCv2.cxx:218
 AliTPCv2.cxx:219
 AliTPCv2.cxx:220
 AliTPCv2.cxx:221
 AliTPCv2.cxx:222
 AliTPCv2.cxx:223
 AliTPCv2.cxx:224
 AliTPCv2.cxx:225
 AliTPCv2.cxx:226
 AliTPCv2.cxx:227
 AliTPCv2.cxx:228
 AliTPCv2.cxx:229
 AliTPCv2.cxx:230
 AliTPCv2.cxx:231
 AliTPCv2.cxx:232
 AliTPCv2.cxx:233
 AliTPCv2.cxx:234
 AliTPCv2.cxx:235
 AliTPCv2.cxx:236
 AliTPCv2.cxx:237
 AliTPCv2.cxx:238
 AliTPCv2.cxx:239
 AliTPCv2.cxx:240
 AliTPCv2.cxx:241
 AliTPCv2.cxx:242
 AliTPCv2.cxx:243
 AliTPCv2.cxx:244
 AliTPCv2.cxx:245
 AliTPCv2.cxx:246
 AliTPCv2.cxx:247
 AliTPCv2.cxx:248
 AliTPCv2.cxx:249
 AliTPCv2.cxx:250
 AliTPCv2.cxx:251
 AliTPCv2.cxx:252
 AliTPCv2.cxx:253
 AliTPCv2.cxx:254
 AliTPCv2.cxx:255
 AliTPCv2.cxx:256
 AliTPCv2.cxx:257
 AliTPCv2.cxx:258
 AliTPCv2.cxx:259
 AliTPCv2.cxx:260
 AliTPCv2.cxx:261
 AliTPCv2.cxx:262
 AliTPCv2.cxx:263
 AliTPCv2.cxx:264
 AliTPCv2.cxx:265
 AliTPCv2.cxx:266
 AliTPCv2.cxx:267
 AliTPCv2.cxx:268
 AliTPCv2.cxx:269
 AliTPCv2.cxx:270
 AliTPCv2.cxx:271
 AliTPCv2.cxx:272
 AliTPCv2.cxx:273
 AliTPCv2.cxx:274
 AliTPCv2.cxx:275
 AliTPCv2.cxx:276
 AliTPCv2.cxx:277
 AliTPCv2.cxx:278
 AliTPCv2.cxx:279
 AliTPCv2.cxx:280
 AliTPCv2.cxx:281
 AliTPCv2.cxx:282
 AliTPCv2.cxx:283
 AliTPCv2.cxx:284
 AliTPCv2.cxx:285
 AliTPCv2.cxx:286
 AliTPCv2.cxx:287
 AliTPCv2.cxx:288
 AliTPCv2.cxx:289
 AliTPCv2.cxx:290
 AliTPCv2.cxx:291
 AliTPCv2.cxx:292
 AliTPCv2.cxx:293
 AliTPCv2.cxx:294
 AliTPCv2.cxx:295
 AliTPCv2.cxx:296
 AliTPCv2.cxx:297
 AliTPCv2.cxx:298
 AliTPCv2.cxx:299
 AliTPCv2.cxx:300
 AliTPCv2.cxx:301
 AliTPCv2.cxx:302
 AliTPCv2.cxx:303
 AliTPCv2.cxx:304
 AliTPCv2.cxx:305
 AliTPCv2.cxx:306
 AliTPCv2.cxx:307
 AliTPCv2.cxx:308
 AliTPCv2.cxx:309
 AliTPCv2.cxx:310
 AliTPCv2.cxx:311
 AliTPCv2.cxx:312
 AliTPCv2.cxx:313
 AliTPCv2.cxx:314
 AliTPCv2.cxx:315
 AliTPCv2.cxx:316
 AliTPCv2.cxx:317
 AliTPCv2.cxx:318
 AliTPCv2.cxx:319
 AliTPCv2.cxx:320
 AliTPCv2.cxx:321
 AliTPCv2.cxx:322
 AliTPCv2.cxx:323
 AliTPCv2.cxx:324
 AliTPCv2.cxx:325
 AliTPCv2.cxx:326
 AliTPCv2.cxx:327
 AliTPCv2.cxx:328
 AliTPCv2.cxx:329
 AliTPCv2.cxx:330
 AliTPCv2.cxx:331
 AliTPCv2.cxx:332
 AliTPCv2.cxx:333
 AliTPCv2.cxx:334
 AliTPCv2.cxx:335
 AliTPCv2.cxx:336
 AliTPCv2.cxx:337
 AliTPCv2.cxx:338
 AliTPCv2.cxx:339
 AliTPCv2.cxx:340
 AliTPCv2.cxx:341
 AliTPCv2.cxx:342
 AliTPCv2.cxx:343
 AliTPCv2.cxx:344
 AliTPCv2.cxx:345
 AliTPCv2.cxx:346
 AliTPCv2.cxx:347
 AliTPCv2.cxx:348
 AliTPCv2.cxx:349
 AliTPCv2.cxx:350
 AliTPCv2.cxx:351
 AliTPCv2.cxx:352
 AliTPCv2.cxx:353
 AliTPCv2.cxx:354
 AliTPCv2.cxx:355
 AliTPCv2.cxx:356
 AliTPCv2.cxx:357
 AliTPCv2.cxx:358
 AliTPCv2.cxx:359
 AliTPCv2.cxx:360
 AliTPCv2.cxx:361
 AliTPCv2.cxx:362
 AliTPCv2.cxx:363
 AliTPCv2.cxx:364
 AliTPCv2.cxx:365
 AliTPCv2.cxx:366
 AliTPCv2.cxx:367
 AliTPCv2.cxx:368
 AliTPCv2.cxx:369
 AliTPCv2.cxx:370
 AliTPCv2.cxx:371
 AliTPCv2.cxx:372
 AliTPCv2.cxx:373
 AliTPCv2.cxx:374
 AliTPCv2.cxx:375
 AliTPCv2.cxx:376
 AliTPCv2.cxx:377
 AliTPCv2.cxx:378
 AliTPCv2.cxx:379
 AliTPCv2.cxx:380
 AliTPCv2.cxx:381
 AliTPCv2.cxx:382
 AliTPCv2.cxx:383
 AliTPCv2.cxx:384
 AliTPCv2.cxx:385
 AliTPCv2.cxx:386
 AliTPCv2.cxx:387
 AliTPCv2.cxx:388
 AliTPCv2.cxx:389
 AliTPCv2.cxx:390
 AliTPCv2.cxx:391
 AliTPCv2.cxx:392
 AliTPCv2.cxx:393
 AliTPCv2.cxx:394
 AliTPCv2.cxx:395
 AliTPCv2.cxx:396
 AliTPCv2.cxx:397
 AliTPCv2.cxx:398
 AliTPCv2.cxx:399
 AliTPCv2.cxx:400
 AliTPCv2.cxx:401
 AliTPCv2.cxx:402
 AliTPCv2.cxx:403
 AliTPCv2.cxx:404
 AliTPCv2.cxx:405
 AliTPCv2.cxx:406
 AliTPCv2.cxx:407
 AliTPCv2.cxx:408
 AliTPCv2.cxx:409
 AliTPCv2.cxx:410
 AliTPCv2.cxx:411
 AliTPCv2.cxx:412
 AliTPCv2.cxx:413
 AliTPCv2.cxx:414
 AliTPCv2.cxx:415
 AliTPCv2.cxx:416
 AliTPCv2.cxx:417
 AliTPCv2.cxx:418
 AliTPCv2.cxx:419
 AliTPCv2.cxx:420
 AliTPCv2.cxx:421
 AliTPCv2.cxx:422
 AliTPCv2.cxx:423
 AliTPCv2.cxx:424
 AliTPCv2.cxx:425
 AliTPCv2.cxx:426
 AliTPCv2.cxx:427
 AliTPCv2.cxx:428
 AliTPCv2.cxx:429
 AliTPCv2.cxx:430
 AliTPCv2.cxx:431
 AliTPCv2.cxx:432
 AliTPCv2.cxx:433
 AliTPCv2.cxx:434
 AliTPCv2.cxx:435
 AliTPCv2.cxx:436
 AliTPCv2.cxx:437
 AliTPCv2.cxx:438
 AliTPCv2.cxx:439
 AliTPCv2.cxx:440
 AliTPCv2.cxx:441
 AliTPCv2.cxx:442
 AliTPCv2.cxx:443
 AliTPCv2.cxx:444
 AliTPCv2.cxx:445
 AliTPCv2.cxx:446
 AliTPCv2.cxx:447
 AliTPCv2.cxx:448
 AliTPCv2.cxx:449
 AliTPCv2.cxx:450
 AliTPCv2.cxx:451
 AliTPCv2.cxx:452
 AliTPCv2.cxx:453
 AliTPCv2.cxx:454
 AliTPCv2.cxx:455
 AliTPCv2.cxx:456
 AliTPCv2.cxx:457
 AliTPCv2.cxx:458
 AliTPCv2.cxx:459
 AliTPCv2.cxx:460
 AliTPCv2.cxx:461
 AliTPCv2.cxx:462
 AliTPCv2.cxx:463
 AliTPCv2.cxx:464
 AliTPCv2.cxx:465
 AliTPCv2.cxx:466
 AliTPCv2.cxx:467
 AliTPCv2.cxx:468
 AliTPCv2.cxx:469
 AliTPCv2.cxx:470
 AliTPCv2.cxx:471
 AliTPCv2.cxx:472
 AliTPCv2.cxx:473
 AliTPCv2.cxx:474
 AliTPCv2.cxx:475
 AliTPCv2.cxx:476
 AliTPCv2.cxx:477
 AliTPCv2.cxx:478
 AliTPCv2.cxx:479
 AliTPCv2.cxx:480
 AliTPCv2.cxx:481
 AliTPCv2.cxx:482
 AliTPCv2.cxx:483
 AliTPCv2.cxx:484
 AliTPCv2.cxx:485
 AliTPCv2.cxx:486
 AliTPCv2.cxx:487
 AliTPCv2.cxx:488
 AliTPCv2.cxx:489
 AliTPCv2.cxx:490
 AliTPCv2.cxx:491
 AliTPCv2.cxx:492
 AliTPCv2.cxx:493
 AliTPCv2.cxx:494
 AliTPCv2.cxx:495
 AliTPCv2.cxx:496
 AliTPCv2.cxx:497
 AliTPCv2.cxx:498
 AliTPCv2.cxx:499
 AliTPCv2.cxx:500
 AliTPCv2.cxx:501
 AliTPCv2.cxx:502
 AliTPCv2.cxx:503
 AliTPCv2.cxx:504
 AliTPCv2.cxx:505
 AliTPCv2.cxx:506
 AliTPCv2.cxx:507
 AliTPCv2.cxx:508
 AliTPCv2.cxx:509
 AliTPCv2.cxx:510
 AliTPCv2.cxx:511
 AliTPCv2.cxx:512
 AliTPCv2.cxx:513
 AliTPCv2.cxx:514
 AliTPCv2.cxx:515
 AliTPCv2.cxx:516
 AliTPCv2.cxx:517
 AliTPCv2.cxx:518
 AliTPCv2.cxx:519
 AliTPCv2.cxx:520
 AliTPCv2.cxx:521
 AliTPCv2.cxx:522
 AliTPCv2.cxx:523
 AliTPCv2.cxx:524
 AliTPCv2.cxx:525
 AliTPCv2.cxx:526
 AliTPCv2.cxx:527
 AliTPCv2.cxx:528
 AliTPCv2.cxx:529
 AliTPCv2.cxx:530
 AliTPCv2.cxx:531
 AliTPCv2.cxx:532
 AliTPCv2.cxx:533
 AliTPCv2.cxx:534
 AliTPCv2.cxx:535
 AliTPCv2.cxx:536
 AliTPCv2.cxx:537
 AliTPCv2.cxx:538
 AliTPCv2.cxx:539
 AliTPCv2.cxx:540
 AliTPCv2.cxx:541
 AliTPCv2.cxx:542
 AliTPCv2.cxx:543
 AliTPCv2.cxx:544
 AliTPCv2.cxx:545
 AliTPCv2.cxx:546
 AliTPCv2.cxx:547
 AliTPCv2.cxx:548
 AliTPCv2.cxx:549
 AliTPCv2.cxx:550
 AliTPCv2.cxx:551
 AliTPCv2.cxx:552
 AliTPCv2.cxx:553
 AliTPCv2.cxx:554
 AliTPCv2.cxx:555
 AliTPCv2.cxx:556
 AliTPCv2.cxx:557
 AliTPCv2.cxx:558
 AliTPCv2.cxx:559
 AliTPCv2.cxx:560
 AliTPCv2.cxx:561
 AliTPCv2.cxx:562
 AliTPCv2.cxx:563
 AliTPCv2.cxx:564
 AliTPCv2.cxx:565
 AliTPCv2.cxx:566
 AliTPCv2.cxx:567
 AliTPCv2.cxx:568
 AliTPCv2.cxx:569
 AliTPCv2.cxx:570
 AliTPCv2.cxx:571
 AliTPCv2.cxx:572
 AliTPCv2.cxx:573
 AliTPCv2.cxx:574
 AliTPCv2.cxx:575
 AliTPCv2.cxx:576
 AliTPCv2.cxx:577
 AliTPCv2.cxx:578
 AliTPCv2.cxx:579
 AliTPCv2.cxx:580
 AliTPCv2.cxx:581
 AliTPCv2.cxx:582
 AliTPCv2.cxx:583
 AliTPCv2.cxx:584
 AliTPCv2.cxx:585
 AliTPCv2.cxx:586
 AliTPCv2.cxx:587
 AliTPCv2.cxx:588
 AliTPCv2.cxx:589
 AliTPCv2.cxx:590
 AliTPCv2.cxx:591
 AliTPCv2.cxx:592
 AliTPCv2.cxx:593
 AliTPCv2.cxx:594
 AliTPCv2.cxx:595
 AliTPCv2.cxx:596
 AliTPCv2.cxx:597
 AliTPCv2.cxx:598
 AliTPCv2.cxx:599
 AliTPCv2.cxx:600
 AliTPCv2.cxx:601
 AliTPCv2.cxx:602
 AliTPCv2.cxx:603
 AliTPCv2.cxx:604
 AliTPCv2.cxx:605
 AliTPCv2.cxx:606
 AliTPCv2.cxx:607
 AliTPCv2.cxx:608
 AliTPCv2.cxx:609
 AliTPCv2.cxx:610
 AliTPCv2.cxx:611
 AliTPCv2.cxx:612
 AliTPCv2.cxx:613
 AliTPCv2.cxx:614
 AliTPCv2.cxx:615
 AliTPCv2.cxx:616
 AliTPCv2.cxx:617
 AliTPCv2.cxx:618
 AliTPCv2.cxx:619
 AliTPCv2.cxx:620
 AliTPCv2.cxx:621
 AliTPCv2.cxx:622
 AliTPCv2.cxx:623
 AliTPCv2.cxx:624
 AliTPCv2.cxx:625
 AliTPCv2.cxx:626
 AliTPCv2.cxx:627
 AliTPCv2.cxx:628
 AliTPCv2.cxx:629
 AliTPCv2.cxx:630
 AliTPCv2.cxx:631
 AliTPCv2.cxx:632
 AliTPCv2.cxx:633
 AliTPCv2.cxx:634
 AliTPCv2.cxx:635
 AliTPCv2.cxx:636
 AliTPCv2.cxx:637
 AliTPCv2.cxx:638
 AliTPCv2.cxx:639
 AliTPCv2.cxx:640
 AliTPCv2.cxx:641
 AliTPCv2.cxx:642
 AliTPCv2.cxx:643
 AliTPCv2.cxx:644
 AliTPCv2.cxx:645
 AliTPCv2.cxx:646
 AliTPCv2.cxx:647
 AliTPCv2.cxx:648
 AliTPCv2.cxx:649
 AliTPCv2.cxx:650
 AliTPCv2.cxx:651
 AliTPCv2.cxx:652
 AliTPCv2.cxx:653
 AliTPCv2.cxx:654
 AliTPCv2.cxx:655
 AliTPCv2.cxx:656
 AliTPCv2.cxx:657
 AliTPCv2.cxx:658
 AliTPCv2.cxx:659
 AliTPCv2.cxx:660
 AliTPCv2.cxx:661
 AliTPCv2.cxx:662
 AliTPCv2.cxx:663
 AliTPCv2.cxx:664
 AliTPCv2.cxx:665
 AliTPCv2.cxx:666
 AliTPCv2.cxx:667
 AliTPCv2.cxx:668
 AliTPCv2.cxx:669
 AliTPCv2.cxx:670
 AliTPCv2.cxx:671
 AliTPCv2.cxx:672
 AliTPCv2.cxx:673
 AliTPCv2.cxx:674
 AliTPCv2.cxx:675
 AliTPCv2.cxx:676
 AliTPCv2.cxx:677
 AliTPCv2.cxx:678
 AliTPCv2.cxx:679
 AliTPCv2.cxx:680
 AliTPCv2.cxx:681
 AliTPCv2.cxx:682
 AliTPCv2.cxx:683
 AliTPCv2.cxx:684
 AliTPCv2.cxx:685
 AliTPCv2.cxx:686
 AliTPCv2.cxx:687
 AliTPCv2.cxx:688
 AliTPCv2.cxx:689
 AliTPCv2.cxx:690
 AliTPCv2.cxx:691
 AliTPCv2.cxx:692
 AliTPCv2.cxx:693
 AliTPCv2.cxx:694
 AliTPCv2.cxx:695
 AliTPCv2.cxx:696
 AliTPCv2.cxx:697
 AliTPCv2.cxx:698
 AliTPCv2.cxx:699
 AliTPCv2.cxx:700
 AliTPCv2.cxx:701
 AliTPCv2.cxx:702
 AliTPCv2.cxx:703
 AliTPCv2.cxx:704
 AliTPCv2.cxx:705
 AliTPCv2.cxx:706
 AliTPCv2.cxx:707
 AliTPCv2.cxx:708
 AliTPCv2.cxx:709
 AliTPCv2.cxx:710
 AliTPCv2.cxx:711
 AliTPCv2.cxx:712
 AliTPCv2.cxx:713
 AliTPCv2.cxx:714
 AliTPCv2.cxx:715
 AliTPCv2.cxx:716
 AliTPCv2.cxx:717
 AliTPCv2.cxx:718
 AliTPCv2.cxx:719
 AliTPCv2.cxx:720
 AliTPCv2.cxx:721
 AliTPCv2.cxx:722
 AliTPCv2.cxx:723
 AliTPCv2.cxx:724
 AliTPCv2.cxx:725
 AliTPCv2.cxx:726
 AliTPCv2.cxx:727
 AliTPCv2.cxx:728
 AliTPCv2.cxx:729
 AliTPCv2.cxx:730
 AliTPCv2.cxx:731
 AliTPCv2.cxx:732
 AliTPCv2.cxx:733
 AliTPCv2.cxx:734
 AliTPCv2.cxx:735
 AliTPCv2.cxx:736
 AliTPCv2.cxx:737
 AliTPCv2.cxx:738
 AliTPCv2.cxx:739
 AliTPCv2.cxx:740
 AliTPCv2.cxx:741
 AliTPCv2.cxx:742
 AliTPCv2.cxx:743
 AliTPCv2.cxx:744
 AliTPCv2.cxx:745
 AliTPCv2.cxx:746
 AliTPCv2.cxx:747
 AliTPCv2.cxx:748
 AliTPCv2.cxx:749
 AliTPCv2.cxx:750
 AliTPCv2.cxx:751
 AliTPCv2.cxx:752
 AliTPCv2.cxx:753
 AliTPCv2.cxx:754
 AliTPCv2.cxx:755
 AliTPCv2.cxx:756
 AliTPCv2.cxx:757
 AliTPCv2.cxx:758
 AliTPCv2.cxx:759
 AliTPCv2.cxx:760
 AliTPCv2.cxx:761
 AliTPCv2.cxx:762
 AliTPCv2.cxx:763
 AliTPCv2.cxx:764
 AliTPCv2.cxx:765
 AliTPCv2.cxx:766
 AliTPCv2.cxx:767
 AliTPCv2.cxx:768
 AliTPCv2.cxx:769
 AliTPCv2.cxx:770
 AliTPCv2.cxx:771
 AliTPCv2.cxx:772
 AliTPCv2.cxx:773
 AliTPCv2.cxx:774
 AliTPCv2.cxx:775
 AliTPCv2.cxx:776
 AliTPCv2.cxx:777
 AliTPCv2.cxx:778
 AliTPCv2.cxx:779
 AliTPCv2.cxx:780
 AliTPCv2.cxx:781
 AliTPCv2.cxx:782
 AliTPCv2.cxx:783
 AliTPCv2.cxx:784
 AliTPCv2.cxx:785
 AliTPCv2.cxx:786
 AliTPCv2.cxx:787
 AliTPCv2.cxx:788
 AliTPCv2.cxx:789
 AliTPCv2.cxx:790
 AliTPCv2.cxx:791
 AliTPCv2.cxx:792
 AliTPCv2.cxx:793
 AliTPCv2.cxx:794
 AliTPCv2.cxx:795
 AliTPCv2.cxx:796
 AliTPCv2.cxx:797
 AliTPCv2.cxx:798
 AliTPCv2.cxx:799
 AliTPCv2.cxx:800
 AliTPCv2.cxx:801
 AliTPCv2.cxx:802
 AliTPCv2.cxx:803
 AliTPCv2.cxx:804
 AliTPCv2.cxx:805
 AliTPCv2.cxx:806
 AliTPCv2.cxx:807
 AliTPCv2.cxx:808
 AliTPCv2.cxx:809
 AliTPCv2.cxx:810
 AliTPCv2.cxx:811
 AliTPCv2.cxx:812
 AliTPCv2.cxx:813
 AliTPCv2.cxx:814
 AliTPCv2.cxx:815
 AliTPCv2.cxx:816
 AliTPCv2.cxx:817
 AliTPCv2.cxx:818
 AliTPCv2.cxx:819
 AliTPCv2.cxx:820
 AliTPCv2.cxx:821
 AliTPCv2.cxx:822
 AliTPCv2.cxx:823
 AliTPCv2.cxx:824
 AliTPCv2.cxx:825
 AliTPCv2.cxx:826
 AliTPCv2.cxx:827
 AliTPCv2.cxx:828
 AliTPCv2.cxx:829
 AliTPCv2.cxx:830
 AliTPCv2.cxx:831
 AliTPCv2.cxx:832
 AliTPCv2.cxx:833
 AliTPCv2.cxx:834
 AliTPCv2.cxx:835
 AliTPCv2.cxx:836
 AliTPCv2.cxx:837
 AliTPCv2.cxx:838
 AliTPCv2.cxx:839
 AliTPCv2.cxx:840
 AliTPCv2.cxx:841
 AliTPCv2.cxx:842
 AliTPCv2.cxx:843
 AliTPCv2.cxx:844
 AliTPCv2.cxx:845
 AliTPCv2.cxx:846
 AliTPCv2.cxx:847
 AliTPCv2.cxx:848
 AliTPCv2.cxx:849
 AliTPCv2.cxx:850
 AliTPCv2.cxx:851
 AliTPCv2.cxx:852
 AliTPCv2.cxx:853
 AliTPCv2.cxx:854
 AliTPCv2.cxx:855
 AliTPCv2.cxx:856
 AliTPCv2.cxx:857
 AliTPCv2.cxx:858
 AliTPCv2.cxx:859
 AliTPCv2.cxx:860
 AliTPCv2.cxx:861
 AliTPCv2.cxx:862
 AliTPCv2.cxx:863
 AliTPCv2.cxx:864
 AliTPCv2.cxx:865
 AliTPCv2.cxx:866
 AliTPCv2.cxx:867
 AliTPCv2.cxx:868
 AliTPCv2.cxx:869
 AliTPCv2.cxx:870
 AliTPCv2.cxx:871
 AliTPCv2.cxx:872
 AliTPCv2.cxx:873
 AliTPCv2.cxx:874
 AliTPCv2.cxx:875
 AliTPCv2.cxx:876
 AliTPCv2.cxx:877
 AliTPCv2.cxx:878
 AliTPCv2.cxx:879
 AliTPCv2.cxx:880
 AliTPCv2.cxx:881
 AliTPCv2.cxx:882
 AliTPCv2.cxx:883
 AliTPCv2.cxx:884
 AliTPCv2.cxx:885
 AliTPCv2.cxx:886
 AliTPCv2.cxx:887
 AliTPCv2.cxx:888
 AliTPCv2.cxx:889
 AliTPCv2.cxx:890
 AliTPCv2.cxx:891
 AliTPCv2.cxx:892
 AliTPCv2.cxx:893
 AliTPCv2.cxx:894
 AliTPCv2.cxx:895
 AliTPCv2.cxx:896
 AliTPCv2.cxx:897
 AliTPCv2.cxx:898
 AliTPCv2.cxx:899
 AliTPCv2.cxx:900
 AliTPCv2.cxx:901
 AliTPCv2.cxx:902
 AliTPCv2.cxx:903
 AliTPCv2.cxx:904
 AliTPCv2.cxx:905
 AliTPCv2.cxx:906
 AliTPCv2.cxx:907
 AliTPCv2.cxx:908
 AliTPCv2.cxx:909
 AliTPCv2.cxx:910
 AliTPCv2.cxx:911
 AliTPCv2.cxx:912
 AliTPCv2.cxx:913
 AliTPCv2.cxx:914
 AliTPCv2.cxx:915
 AliTPCv2.cxx:916
 AliTPCv2.cxx:917
 AliTPCv2.cxx:918
 AliTPCv2.cxx:919
 AliTPCv2.cxx:920
 AliTPCv2.cxx:921
 AliTPCv2.cxx:922
 AliTPCv2.cxx:923
 AliTPCv2.cxx:924
 AliTPCv2.cxx:925
 AliTPCv2.cxx:926
 AliTPCv2.cxx:927
 AliTPCv2.cxx:928
 AliTPCv2.cxx:929
 AliTPCv2.cxx:930
 AliTPCv2.cxx:931
 AliTPCv2.cxx:932
 AliTPCv2.cxx:933
 AliTPCv2.cxx:934
 AliTPCv2.cxx:935
 AliTPCv2.cxx:936
 AliTPCv2.cxx:937
 AliTPCv2.cxx:938
 AliTPCv2.cxx:939
 AliTPCv2.cxx:940
 AliTPCv2.cxx:941
 AliTPCv2.cxx:942
 AliTPCv2.cxx:943
 AliTPCv2.cxx:944
 AliTPCv2.cxx:945
 AliTPCv2.cxx:946
 AliTPCv2.cxx:947
 AliTPCv2.cxx:948
 AliTPCv2.cxx:949
 AliTPCv2.cxx:950
 AliTPCv2.cxx:951
 AliTPCv2.cxx:952
 AliTPCv2.cxx:953
 AliTPCv2.cxx:954
 AliTPCv2.cxx:955
 AliTPCv2.cxx:956
 AliTPCv2.cxx:957
 AliTPCv2.cxx:958
 AliTPCv2.cxx:959
 AliTPCv2.cxx:960
 AliTPCv2.cxx:961
 AliTPCv2.cxx:962
 AliTPCv2.cxx:963
 AliTPCv2.cxx:964
 AliTPCv2.cxx:965
 AliTPCv2.cxx:966
 AliTPCv2.cxx:967
 AliTPCv2.cxx:968
 AliTPCv2.cxx:969
 AliTPCv2.cxx:970
 AliTPCv2.cxx:971
 AliTPCv2.cxx:972
 AliTPCv2.cxx:973
 AliTPCv2.cxx:974
 AliTPCv2.cxx:975
 AliTPCv2.cxx:976
 AliTPCv2.cxx:977
 AliTPCv2.cxx:978
 AliTPCv2.cxx:979
 AliTPCv2.cxx:980
 AliTPCv2.cxx:981
 AliTPCv2.cxx:982
 AliTPCv2.cxx:983
 AliTPCv2.cxx:984
 AliTPCv2.cxx:985
 AliTPCv2.cxx:986
 AliTPCv2.cxx:987
 AliTPCv2.cxx:988
 AliTPCv2.cxx:989
 AliTPCv2.cxx:990
 AliTPCv2.cxx:991
 AliTPCv2.cxx:992
 AliTPCv2.cxx:993
 AliTPCv2.cxx:994
 AliTPCv2.cxx:995
 AliTPCv2.cxx:996
 AliTPCv2.cxx:997
 AliTPCv2.cxx:998
 AliTPCv2.cxx:999
 AliTPCv2.cxx:1000
 AliTPCv2.cxx:1001
 AliTPCv2.cxx:1002
 AliTPCv2.cxx:1003
 AliTPCv2.cxx:1004
 AliTPCv2.cxx:1005
 AliTPCv2.cxx:1006
 AliTPCv2.cxx:1007
 AliTPCv2.cxx:1008
 AliTPCv2.cxx:1009
 AliTPCv2.cxx:1010
 AliTPCv2.cxx:1011
 AliTPCv2.cxx:1012
 AliTPCv2.cxx:1013
 AliTPCv2.cxx:1014
 AliTPCv2.cxx:1015
 AliTPCv2.cxx:1016
 AliTPCv2.cxx:1017
 AliTPCv2.cxx:1018
 AliTPCv2.cxx:1019
 AliTPCv2.cxx:1020
 AliTPCv2.cxx:1021
 AliTPCv2.cxx:1022
 AliTPCv2.cxx:1023
 AliTPCv2.cxx:1024
 AliTPCv2.cxx:1025
 AliTPCv2.cxx:1026
 AliTPCv2.cxx:1027
 AliTPCv2.cxx:1028
 AliTPCv2.cxx:1029
 AliTPCv2.cxx:1030
 AliTPCv2.cxx:1031
 AliTPCv2.cxx:1032
 AliTPCv2.cxx:1033
 AliTPCv2.cxx:1034
 AliTPCv2.cxx:1035
 AliTPCv2.cxx:1036
 AliTPCv2.cxx:1037
 AliTPCv2.cxx:1038
 AliTPCv2.cxx:1039
 AliTPCv2.cxx:1040
 AliTPCv2.cxx:1041
 AliTPCv2.cxx:1042
 AliTPCv2.cxx:1043
 AliTPCv2.cxx:1044
 AliTPCv2.cxx:1045
 AliTPCv2.cxx:1046
 AliTPCv2.cxx:1047
 AliTPCv2.cxx:1048
 AliTPCv2.cxx:1049
 AliTPCv2.cxx:1050
 AliTPCv2.cxx:1051
 AliTPCv2.cxx:1052
 AliTPCv2.cxx:1053
 AliTPCv2.cxx:1054
 AliTPCv2.cxx:1055
 AliTPCv2.cxx:1056
 AliTPCv2.cxx:1057
 AliTPCv2.cxx:1058
 AliTPCv2.cxx:1059
 AliTPCv2.cxx:1060
 AliTPCv2.cxx:1061
 AliTPCv2.cxx:1062
 AliTPCv2.cxx:1063
 AliTPCv2.cxx:1064
 AliTPCv2.cxx:1065
 AliTPCv2.cxx:1066
 AliTPCv2.cxx:1067
 AliTPCv2.cxx:1068
 AliTPCv2.cxx:1069
 AliTPCv2.cxx:1070
 AliTPCv2.cxx:1071
 AliTPCv2.cxx:1072
 AliTPCv2.cxx:1073
 AliTPCv2.cxx:1074
 AliTPCv2.cxx:1075
 AliTPCv2.cxx:1076
 AliTPCv2.cxx:1077
 AliTPCv2.cxx:1078
 AliTPCv2.cxx:1079
 AliTPCv2.cxx:1080
 AliTPCv2.cxx:1081
 AliTPCv2.cxx:1082
 AliTPCv2.cxx:1083
 AliTPCv2.cxx:1084
 AliTPCv2.cxx:1085
 AliTPCv2.cxx:1086
 AliTPCv2.cxx:1087
 AliTPCv2.cxx:1088
 AliTPCv2.cxx:1089
 AliTPCv2.cxx:1090
 AliTPCv2.cxx:1091
 AliTPCv2.cxx:1092
 AliTPCv2.cxx:1093
 AliTPCv2.cxx:1094
 AliTPCv2.cxx:1095
 AliTPCv2.cxx:1096
 AliTPCv2.cxx:1097
 AliTPCv2.cxx:1098
 AliTPCv2.cxx:1099
 AliTPCv2.cxx:1100
 AliTPCv2.cxx:1101
 AliTPCv2.cxx:1102
 AliTPCv2.cxx:1103
 AliTPCv2.cxx:1104
 AliTPCv2.cxx:1105
 AliTPCv2.cxx:1106
 AliTPCv2.cxx:1107
 AliTPCv2.cxx:1108
 AliTPCv2.cxx:1109
 AliTPCv2.cxx:1110
 AliTPCv2.cxx:1111
 AliTPCv2.cxx:1112
 AliTPCv2.cxx:1113
 AliTPCv2.cxx:1114
 AliTPCv2.cxx:1115
 AliTPCv2.cxx:1116
 AliTPCv2.cxx:1117
 AliTPCv2.cxx:1118
 AliTPCv2.cxx:1119
 AliTPCv2.cxx:1120
 AliTPCv2.cxx:1121
 AliTPCv2.cxx:1122
 AliTPCv2.cxx:1123
 AliTPCv2.cxx:1124
 AliTPCv2.cxx:1125
 AliTPCv2.cxx:1126
 AliTPCv2.cxx:1127
 AliTPCv2.cxx:1128
 AliTPCv2.cxx:1129
 AliTPCv2.cxx:1130
 AliTPCv2.cxx:1131
 AliTPCv2.cxx:1132
 AliTPCv2.cxx:1133
 AliTPCv2.cxx:1134
 AliTPCv2.cxx:1135
 AliTPCv2.cxx:1136
 AliTPCv2.cxx:1137
 AliTPCv2.cxx:1138
 AliTPCv2.cxx:1139
 AliTPCv2.cxx:1140
 AliTPCv2.cxx:1141
 AliTPCv2.cxx:1142
 AliTPCv2.cxx:1143
 AliTPCv2.cxx:1144
 AliTPCv2.cxx:1145
 AliTPCv2.cxx:1146
 AliTPCv2.cxx:1147
 AliTPCv2.cxx:1148
 AliTPCv2.cxx:1149
 AliTPCv2.cxx:1150
 AliTPCv2.cxx:1151
 AliTPCv2.cxx:1152
 AliTPCv2.cxx:1153
 AliTPCv2.cxx:1154
 AliTPCv2.cxx:1155
 AliTPCv2.cxx:1156
 AliTPCv2.cxx:1157
 AliTPCv2.cxx:1158
 AliTPCv2.cxx:1159
 AliTPCv2.cxx:1160
 AliTPCv2.cxx:1161
 AliTPCv2.cxx:1162
 AliTPCv2.cxx:1163
 AliTPCv2.cxx:1164
 AliTPCv2.cxx:1165
 AliTPCv2.cxx:1166
 AliTPCv2.cxx:1167
 AliTPCv2.cxx:1168
 AliTPCv2.cxx:1169
 AliTPCv2.cxx:1170
 AliTPCv2.cxx:1171
 AliTPCv2.cxx:1172
 AliTPCv2.cxx:1173
 AliTPCv2.cxx:1174
 AliTPCv2.cxx:1175
 AliTPCv2.cxx:1176
 AliTPCv2.cxx:1177
 AliTPCv2.cxx:1178
 AliTPCv2.cxx:1179
 AliTPCv2.cxx:1180
 AliTPCv2.cxx:1181
 AliTPCv2.cxx:1182
 AliTPCv2.cxx:1183
 AliTPCv2.cxx:1184
 AliTPCv2.cxx:1185
 AliTPCv2.cxx:1186
 AliTPCv2.cxx:1187
 AliTPCv2.cxx:1188
 AliTPCv2.cxx:1189
 AliTPCv2.cxx:1190
 AliTPCv2.cxx:1191
 AliTPCv2.cxx:1192
 AliTPCv2.cxx:1193
 AliTPCv2.cxx:1194
 AliTPCv2.cxx:1195
 AliTPCv2.cxx:1196
 AliTPCv2.cxx:1197
 AliTPCv2.cxx:1198
 AliTPCv2.cxx:1199
 AliTPCv2.cxx:1200
 AliTPCv2.cxx:1201
 AliTPCv2.cxx:1202
 AliTPCv2.cxx:1203
 AliTPCv2.cxx:1204
 AliTPCv2.cxx:1205
 AliTPCv2.cxx:1206
 AliTPCv2.cxx:1207
 AliTPCv2.cxx:1208
 AliTPCv2.cxx:1209
 AliTPCv2.cxx:1210
 AliTPCv2.cxx:1211
 AliTPCv2.cxx:1212
 AliTPCv2.cxx:1213
 AliTPCv2.cxx:1214
 AliTPCv2.cxx:1215
 AliTPCv2.cxx:1216
 AliTPCv2.cxx:1217
 AliTPCv2.cxx:1218
 AliTPCv2.cxx:1219
 AliTPCv2.cxx:1220
 AliTPCv2.cxx:1221
 AliTPCv2.cxx:1222
 AliTPCv2.cxx:1223
 AliTPCv2.cxx:1224
 AliTPCv2.cxx:1225
 AliTPCv2.cxx:1226
 AliTPCv2.cxx:1227
 AliTPCv2.cxx:1228
 AliTPCv2.cxx:1229
 AliTPCv2.cxx:1230
 AliTPCv2.cxx:1231
 AliTPCv2.cxx:1232
 AliTPCv2.cxx:1233
 AliTPCv2.cxx:1234
 AliTPCv2.cxx:1235
 AliTPCv2.cxx:1236
 AliTPCv2.cxx:1237
 AliTPCv2.cxx:1238
 AliTPCv2.cxx:1239
 AliTPCv2.cxx:1240
 AliTPCv2.cxx:1241
 AliTPCv2.cxx:1242
 AliTPCv2.cxx:1243
 AliTPCv2.cxx:1244
 AliTPCv2.cxx:1245
 AliTPCv2.cxx:1246
 AliTPCv2.cxx:1247
 AliTPCv2.cxx:1248
 AliTPCv2.cxx:1249
 AliTPCv2.cxx:1250
 AliTPCv2.cxx:1251
 AliTPCv2.cxx:1252
 AliTPCv2.cxx:1253
 AliTPCv2.cxx:1254
 AliTPCv2.cxx:1255
 AliTPCv2.cxx:1256
 AliTPCv2.cxx:1257
 AliTPCv2.cxx:1258
 AliTPCv2.cxx:1259
 AliTPCv2.cxx:1260
 AliTPCv2.cxx:1261
 AliTPCv2.cxx:1262
 AliTPCv2.cxx:1263
 AliTPCv2.cxx:1264
 AliTPCv2.cxx:1265
 AliTPCv2.cxx:1266
 AliTPCv2.cxx:1267
 AliTPCv2.cxx:1268
 AliTPCv2.cxx:1269
 AliTPCv2.cxx:1270
 AliTPCv2.cxx:1271
 AliTPCv2.cxx:1272
 AliTPCv2.cxx:1273
 AliTPCv2.cxx:1274
 AliTPCv2.cxx:1275
 AliTPCv2.cxx:1276
 AliTPCv2.cxx:1277
 AliTPCv2.cxx:1278
 AliTPCv2.cxx:1279
 AliTPCv2.cxx:1280
 AliTPCv2.cxx:1281
 AliTPCv2.cxx:1282
 AliTPCv2.cxx:1283
 AliTPCv2.cxx:1284
 AliTPCv2.cxx:1285
 AliTPCv2.cxx:1286
 AliTPCv2.cxx:1287
 AliTPCv2.cxx:1288
 AliTPCv2.cxx:1289
 AliTPCv2.cxx:1290
 AliTPCv2.cxx:1291
 AliTPCv2.cxx:1292
 AliTPCv2.cxx:1293
 AliTPCv2.cxx:1294
 AliTPCv2.cxx:1295
 AliTPCv2.cxx:1296
 AliTPCv2.cxx:1297
 AliTPCv2.cxx:1298
 AliTPCv2.cxx:1299
 AliTPCv2.cxx:1300
 AliTPCv2.cxx:1301
 AliTPCv2.cxx:1302
 AliTPCv2.cxx:1303
 AliTPCv2.cxx:1304
 AliTPCv2.cxx:1305
 AliTPCv2.cxx:1306
 AliTPCv2.cxx:1307
 AliTPCv2.cxx:1308
 AliTPCv2.cxx:1309
 AliTPCv2.cxx:1310
 AliTPCv2.cxx:1311
 AliTPCv2.cxx:1312
 AliTPCv2.cxx:1313
 AliTPCv2.cxx:1314
 AliTPCv2.cxx:1315
 AliTPCv2.cxx:1316
 AliTPCv2.cxx:1317
 AliTPCv2.cxx:1318
 AliTPCv2.cxx:1319
 AliTPCv2.cxx:1320
 AliTPCv2.cxx:1321
 AliTPCv2.cxx:1322
 AliTPCv2.cxx:1323
 AliTPCv2.cxx:1324
 AliTPCv2.cxx:1325
 AliTPCv2.cxx:1326
 AliTPCv2.cxx:1327
 AliTPCv2.cxx:1328
 AliTPCv2.cxx:1329
 AliTPCv2.cxx:1330
 AliTPCv2.cxx:1331
 AliTPCv2.cxx:1332
 AliTPCv2.cxx:1333
 AliTPCv2.cxx:1334
 AliTPCv2.cxx:1335
 AliTPCv2.cxx:1336
 AliTPCv2.cxx:1337
 AliTPCv2.cxx:1338
 AliTPCv2.cxx:1339
 AliTPCv2.cxx:1340
 AliTPCv2.cxx:1341
 AliTPCv2.cxx:1342
 AliTPCv2.cxx:1343
 AliTPCv2.cxx:1344
 AliTPCv2.cxx:1345
 AliTPCv2.cxx:1346
 AliTPCv2.cxx:1347
 AliTPCv2.cxx:1348
 AliTPCv2.cxx:1349
 AliTPCv2.cxx:1350
 AliTPCv2.cxx:1351
 AliTPCv2.cxx:1352
 AliTPCv2.cxx:1353
 AliTPCv2.cxx:1354
 AliTPCv2.cxx:1355
 AliTPCv2.cxx:1356
 AliTPCv2.cxx:1357
 AliTPCv2.cxx:1358
 AliTPCv2.cxx:1359
 AliTPCv2.cxx:1360
 AliTPCv2.cxx:1361
 AliTPCv2.cxx:1362
 AliTPCv2.cxx:1363
 AliTPCv2.cxx:1364
 AliTPCv2.cxx:1365
 AliTPCv2.cxx:1366
 AliTPCv2.cxx:1367
 AliTPCv2.cxx:1368
 AliTPCv2.cxx:1369
 AliTPCv2.cxx:1370
 AliTPCv2.cxx:1371
 AliTPCv2.cxx:1372
 AliTPCv2.cxx:1373
 AliTPCv2.cxx:1374
 AliTPCv2.cxx:1375
 AliTPCv2.cxx:1376
 AliTPCv2.cxx:1377
 AliTPCv2.cxx:1378
 AliTPCv2.cxx:1379
 AliTPCv2.cxx:1380
 AliTPCv2.cxx:1381
 AliTPCv2.cxx:1382
 AliTPCv2.cxx:1383
 AliTPCv2.cxx:1384
 AliTPCv2.cxx:1385
 AliTPCv2.cxx:1386
 AliTPCv2.cxx:1387
 AliTPCv2.cxx:1388
 AliTPCv2.cxx:1389
 AliTPCv2.cxx:1390
 AliTPCv2.cxx:1391
 AliTPCv2.cxx:1392
 AliTPCv2.cxx:1393
 AliTPCv2.cxx:1394
 AliTPCv2.cxx:1395
 AliTPCv2.cxx:1396
 AliTPCv2.cxx:1397
 AliTPCv2.cxx:1398
 AliTPCv2.cxx:1399
 AliTPCv2.cxx:1400
 AliTPCv2.cxx:1401
 AliTPCv2.cxx:1402
 AliTPCv2.cxx:1403
 AliTPCv2.cxx:1404
 AliTPCv2.cxx:1405
 AliTPCv2.cxx:1406
 AliTPCv2.cxx:1407
 AliTPCv2.cxx:1408
 AliTPCv2.cxx:1409
 AliTPCv2.cxx:1410
 AliTPCv2.cxx:1411
 AliTPCv2.cxx:1412
 AliTPCv2.cxx:1413
 AliTPCv2.cxx:1414
 AliTPCv2.cxx:1415
 AliTPCv2.cxx:1416
 AliTPCv2.cxx:1417
 AliTPCv2.cxx:1418
 AliTPCv2.cxx:1419
 AliTPCv2.cxx:1420
 AliTPCv2.cxx:1421
 AliTPCv2.cxx:1422
 AliTPCv2.cxx:1423
 AliTPCv2.cxx:1424
 AliTPCv2.cxx:1425
 AliTPCv2.cxx:1426
 AliTPCv2.cxx:1427
 AliTPCv2.cxx:1428
 AliTPCv2.cxx:1429
 AliTPCv2.cxx:1430
 AliTPCv2.cxx:1431
 AliTPCv2.cxx:1432
 AliTPCv2.cxx:1433
 AliTPCv2.cxx:1434
 AliTPCv2.cxx:1435
 AliTPCv2.cxx:1436
 AliTPCv2.cxx:1437
 AliTPCv2.cxx:1438
 AliTPCv2.cxx:1439
 AliTPCv2.cxx:1440
 AliTPCv2.cxx:1441
 AliTPCv2.cxx:1442
 AliTPCv2.cxx:1443
 AliTPCv2.cxx:1444
 AliTPCv2.cxx:1445
 AliTPCv2.cxx:1446
 AliTPCv2.cxx:1447
 AliTPCv2.cxx:1448
 AliTPCv2.cxx:1449
 AliTPCv2.cxx:1450
 AliTPCv2.cxx:1451
 AliTPCv2.cxx:1452
 AliTPCv2.cxx:1453
 AliTPCv2.cxx:1454
 AliTPCv2.cxx:1455
 AliTPCv2.cxx:1456
 AliTPCv2.cxx:1457
 AliTPCv2.cxx:1458
 AliTPCv2.cxx:1459
 AliTPCv2.cxx:1460
 AliTPCv2.cxx:1461
 AliTPCv2.cxx:1462
 AliTPCv2.cxx:1463
 AliTPCv2.cxx:1464
 AliTPCv2.cxx:1465
 AliTPCv2.cxx:1466
 AliTPCv2.cxx:1467
 AliTPCv2.cxx:1468
 AliTPCv2.cxx:1469
 AliTPCv2.cxx:1470
 AliTPCv2.cxx:1471
 AliTPCv2.cxx:1472
 AliTPCv2.cxx:1473
 AliTPCv2.cxx:1474
 AliTPCv2.cxx:1475
 AliTPCv2.cxx:1476
 AliTPCv2.cxx:1477
 AliTPCv2.cxx:1478
 AliTPCv2.cxx:1479
 AliTPCv2.cxx:1480
 AliTPCv2.cxx:1481
 AliTPCv2.cxx:1482
 AliTPCv2.cxx:1483
 AliTPCv2.cxx:1484
 AliTPCv2.cxx:1485
 AliTPCv2.cxx:1486
 AliTPCv2.cxx:1487
 AliTPCv2.cxx:1488
 AliTPCv2.cxx:1489
 AliTPCv2.cxx:1490
 AliTPCv2.cxx:1491
 AliTPCv2.cxx:1492
 AliTPCv2.cxx:1493
 AliTPCv2.cxx:1494
 AliTPCv2.cxx:1495
 AliTPCv2.cxx:1496
 AliTPCv2.cxx:1497
 AliTPCv2.cxx:1498
 AliTPCv2.cxx:1499
 AliTPCv2.cxx:1500
 AliTPCv2.cxx:1501
 AliTPCv2.cxx:1502
 AliTPCv2.cxx:1503
 AliTPCv2.cxx:1504
 AliTPCv2.cxx:1505
 AliTPCv2.cxx:1506
 AliTPCv2.cxx:1507
 AliTPCv2.cxx:1508
 AliTPCv2.cxx:1509
 AliTPCv2.cxx:1510
 AliTPCv2.cxx:1511
 AliTPCv2.cxx:1512
 AliTPCv2.cxx:1513
 AliTPCv2.cxx:1514
 AliTPCv2.cxx:1515
 AliTPCv2.cxx:1516
 AliTPCv2.cxx:1517
 AliTPCv2.cxx:1518
 AliTPCv2.cxx:1519
 AliTPCv2.cxx:1520
 AliTPCv2.cxx:1521
 AliTPCv2.cxx:1522
 AliTPCv2.cxx:1523
 AliTPCv2.cxx:1524
 AliTPCv2.cxx:1525
 AliTPCv2.cxx:1526
 AliTPCv2.cxx:1527
 AliTPCv2.cxx:1528
 AliTPCv2.cxx:1529
 AliTPCv2.cxx:1530
 AliTPCv2.cxx:1531
 AliTPCv2.cxx:1532
 AliTPCv2.cxx:1533
 AliTPCv2.cxx:1534
 AliTPCv2.cxx:1535
 AliTPCv2.cxx:1536
 AliTPCv2.cxx:1537
 AliTPCv2.cxx:1538
 AliTPCv2.cxx:1539
 AliTPCv2.cxx:1540
 AliTPCv2.cxx:1541
 AliTPCv2.cxx:1542
 AliTPCv2.cxx:1543
 AliTPCv2.cxx:1544
 AliTPCv2.cxx:1545
 AliTPCv2.cxx:1546
 AliTPCv2.cxx:1547
 AliTPCv2.cxx:1548
 AliTPCv2.cxx:1549
 AliTPCv2.cxx:1550
 AliTPCv2.cxx:1551
 AliTPCv2.cxx:1552
 AliTPCv2.cxx:1553
 AliTPCv2.cxx:1554
 AliTPCv2.cxx:1555
 AliTPCv2.cxx:1556
 AliTPCv2.cxx:1557
 AliTPCv2.cxx:1558
 AliTPCv2.cxx:1559
 AliTPCv2.cxx:1560
 AliTPCv2.cxx:1561
 AliTPCv2.cxx:1562
 AliTPCv2.cxx:1563
 AliTPCv2.cxx:1564
 AliTPCv2.cxx:1565
 AliTPCv2.cxx:1566
 AliTPCv2.cxx:1567
 AliTPCv2.cxx:1568
 AliTPCv2.cxx:1569
 AliTPCv2.cxx:1570
 AliTPCv2.cxx:1571
 AliTPCv2.cxx:1572
 AliTPCv2.cxx:1573
 AliTPCv2.cxx:1574
 AliTPCv2.cxx:1575
 AliTPCv2.cxx:1576
 AliTPCv2.cxx:1577
 AliTPCv2.cxx:1578
 AliTPCv2.cxx:1579
 AliTPCv2.cxx:1580
 AliTPCv2.cxx:1581
 AliTPCv2.cxx:1582
 AliTPCv2.cxx:1583
 AliTPCv2.cxx:1584
 AliTPCv2.cxx:1585
 AliTPCv2.cxx:1586
 AliTPCv2.cxx:1587
 AliTPCv2.cxx:1588
 AliTPCv2.cxx:1589
 AliTPCv2.cxx:1590
 AliTPCv2.cxx:1591
 AliTPCv2.cxx:1592
 AliTPCv2.cxx:1593
 AliTPCv2.cxx:1594
 AliTPCv2.cxx:1595
 AliTPCv2.cxx:1596
 AliTPCv2.cxx:1597
 AliTPCv2.cxx:1598
 AliTPCv2.cxx:1599
 AliTPCv2.cxx:1600
 AliTPCv2.cxx:1601
 AliTPCv2.cxx:1602
 AliTPCv2.cxx:1603
 AliTPCv2.cxx:1604
 AliTPCv2.cxx:1605
 AliTPCv2.cxx:1606
 AliTPCv2.cxx:1607
 AliTPCv2.cxx:1608
 AliTPCv2.cxx:1609
 AliTPCv2.cxx:1610
 AliTPCv2.cxx:1611
 AliTPCv2.cxx:1612
 AliTPCv2.cxx:1613
 AliTPCv2.cxx:1614
 AliTPCv2.cxx:1615
 AliTPCv2.cxx:1616
 AliTPCv2.cxx:1617
 AliTPCv2.cxx:1618
 AliTPCv2.cxx:1619
 AliTPCv2.cxx:1620
 AliTPCv2.cxx:1621
 AliTPCv2.cxx:1622
 AliTPCv2.cxx:1623
 AliTPCv2.cxx:1624
 AliTPCv2.cxx:1625
 AliTPCv2.cxx:1626
 AliTPCv2.cxx:1627
 AliTPCv2.cxx:1628
 AliTPCv2.cxx:1629
 AliTPCv2.cxx:1630
 AliTPCv2.cxx:1631
 AliTPCv2.cxx:1632
 AliTPCv2.cxx:1633
 AliTPCv2.cxx:1634
 AliTPCv2.cxx:1635
 AliTPCv2.cxx:1636
 AliTPCv2.cxx:1637
 AliTPCv2.cxx:1638
 AliTPCv2.cxx:1639
 AliTPCv2.cxx:1640
 AliTPCv2.cxx:1641
 AliTPCv2.cxx:1642
 AliTPCv2.cxx:1643
 AliTPCv2.cxx:1644
 AliTPCv2.cxx:1645
 AliTPCv2.cxx:1646
 AliTPCv2.cxx:1647
 AliTPCv2.cxx:1648
 AliTPCv2.cxx:1649
 AliTPCv2.cxx:1650
 AliTPCv2.cxx:1651
 AliTPCv2.cxx:1652
 AliTPCv2.cxx:1653
 AliTPCv2.cxx:1654
 AliTPCv2.cxx:1655
 AliTPCv2.cxx:1656
 AliTPCv2.cxx:1657
 AliTPCv2.cxx:1658
 AliTPCv2.cxx:1659
 AliTPCv2.cxx:1660
 AliTPCv2.cxx:1661
 AliTPCv2.cxx:1662
 AliTPCv2.cxx:1663
 AliTPCv2.cxx:1664
 AliTPCv2.cxx:1665
 AliTPCv2.cxx:1666
 AliTPCv2.cxx:1667
 AliTPCv2.cxx:1668
 AliTPCv2.cxx:1669
 AliTPCv2.cxx:1670
 AliTPCv2.cxx:1671
 AliTPCv2.cxx:1672
 AliTPCv2.cxx:1673
 AliTPCv2.cxx:1674
 AliTPCv2.cxx:1675
 AliTPCv2.cxx:1676
 AliTPCv2.cxx:1677
 AliTPCv2.cxx:1678
 AliTPCv2.cxx:1679
 AliTPCv2.cxx:1680
 AliTPCv2.cxx:1681
 AliTPCv2.cxx:1682
 AliTPCv2.cxx:1683
 AliTPCv2.cxx:1684
 AliTPCv2.cxx:1685
 AliTPCv2.cxx:1686
 AliTPCv2.cxx:1687
 AliTPCv2.cxx:1688
 AliTPCv2.cxx:1689
 AliTPCv2.cxx:1690
 AliTPCv2.cxx:1691
 AliTPCv2.cxx:1692
 AliTPCv2.cxx:1693
 AliTPCv2.cxx:1694
 AliTPCv2.cxx:1695
 AliTPCv2.cxx:1696
 AliTPCv2.cxx:1697
 AliTPCv2.cxx:1698
 AliTPCv2.cxx:1699
 AliTPCv2.cxx:1700
 AliTPCv2.cxx:1701
 AliTPCv2.cxx:1702
 AliTPCv2.cxx:1703
 AliTPCv2.cxx:1704
 AliTPCv2.cxx:1705
 AliTPCv2.cxx:1706
 AliTPCv2.cxx:1707
 AliTPCv2.cxx:1708
 AliTPCv2.cxx:1709
 AliTPCv2.cxx:1710
 AliTPCv2.cxx:1711
 AliTPCv2.cxx:1712
 AliTPCv2.cxx:1713
 AliTPCv2.cxx:1714
 AliTPCv2.cxx:1715
 AliTPCv2.cxx:1716
 AliTPCv2.cxx:1717
 AliTPCv2.cxx:1718
 AliTPCv2.cxx:1719
 AliTPCv2.cxx:1720
 AliTPCv2.cxx:1721
 AliTPCv2.cxx:1722
 AliTPCv2.cxx:1723
 AliTPCv2.cxx:1724
 AliTPCv2.cxx:1725
 AliTPCv2.cxx:1726
 AliTPCv2.cxx:1727
 AliTPCv2.cxx:1728
 AliTPCv2.cxx:1729
 AliTPCv2.cxx:1730
 AliTPCv2.cxx:1731
 AliTPCv2.cxx:1732
 AliTPCv2.cxx:1733
 AliTPCv2.cxx:1734
 AliTPCv2.cxx:1735
 AliTPCv2.cxx:1736
 AliTPCv2.cxx:1737
 AliTPCv2.cxx:1738
 AliTPCv2.cxx:1739
 AliTPCv2.cxx:1740
 AliTPCv2.cxx:1741
 AliTPCv2.cxx:1742
 AliTPCv2.cxx:1743
 AliTPCv2.cxx:1744
 AliTPCv2.cxx:1745
 AliTPCv2.cxx:1746
 AliTPCv2.cxx:1747
 AliTPCv2.cxx:1748
 AliTPCv2.cxx:1749
 AliTPCv2.cxx:1750
 AliTPCv2.cxx:1751
 AliTPCv2.cxx:1752
 AliTPCv2.cxx:1753
 AliTPCv2.cxx:1754
 AliTPCv2.cxx:1755
 AliTPCv2.cxx:1756
 AliTPCv2.cxx:1757
 AliTPCv2.cxx:1758
 AliTPCv2.cxx:1759
 AliTPCv2.cxx:1760
 AliTPCv2.cxx:1761
 AliTPCv2.cxx:1762
 AliTPCv2.cxx:1763
 AliTPCv2.cxx:1764
 AliTPCv2.cxx:1765
 AliTPCv2.cxx:1766
 AliTPCv2.cxx:1767
 AliTPCv2.cxx:1768
 AliTPCv2.cxx:1769
 AliTPCv2.cxx:1770
 AliTPCv2.cxx:1771
 AliTPCv2.cxx:1772
 AliTPCv2.cxx:1773
 AliTPCv2.cxx:1774
 AliTPCv2.cxx:1775
 AliTPCv2.cxx:1776
 AliTPCv2.cxx:1777
 AliTPCv2.cxx:1778
 AliTPCv2.cxx:1779
 AliTPCv2.cxx:1780
 AliTPCv2.cxx:1781
 AliTPCv2.cxx:1782
 AliTPCv2.cxx:1783
 AliTPCv2.cxx:1784
 AliTPCv2.cxx:1785
 AliTPCv2.cxx:1786
 AliTPCv2.cxx:1787
 AliTPCv2.cxx:1788
 AliTPCv2.cxx:1789
 AliTPCv2.cxx:1790
 AliTPCv2.cxx:1791
 AliTPCv2.cxx:1792
 AliTPCv2.cxx:1793
 AliTPCv2.cxx:1794
 AliTPCv2.cxx:1795
 AliTPCv2.cxx:1796
 AliTPCv2.cxx:1797
 AliTPCv2.cxx:1798
 AliTPCv2.cxx:1799
 AliTPCv2.cxx:1800
 AliTPCv2.cxx:1801
 AliTPCv2.cxx:1802
 AliTPCv2.cxx:1803
 AliTPCv2.cxx:1804
 AliTPCv2.cxx:1805
 AliTPCv2.cxx:1806
 AliTPCv2.cxx:1807
 AliTPCv2.cxx:1808
 AliTPCv2.cxx:1809
 AliTPCv2.cxx:1810
 AliTPCv2.cxx:1811
 AliTPCv2.cxx:1812
 AliTPCv2.cxx:1813
 AliTPCv2.cxx:1814
 AliTPCv2.cxx:1815
 AliTPCv2.cxx:1816
 AliTPCv2.cxx:1817
 AliTPCv2.cxx:1818
 AliTPCv2.cxx:1819
 AliTPCv2.cxx:1820
 AliTPCv2.cxx:1821
 AliTPCv2.cxx:1822
 AliTPCv2.cxx:1823
 AliTPCv2.cxx:1824
 AliTPCv2.cxx:1825
 AliTPCv2.cxx:1826
 AliTPCv2.cxx:1827
 AliTPCv2.cxx:1828
 AliTPCv2.cxx:1829
 AliTPCv2.cxx:1830
 AliTPCv2.cxx:1831
 AliTPCv2.cxx:1832
 AliTPCv2.cxx:1833
 AliTPCv2.cxx:1834
 AliTPCv2.cxx:1835
 AliTPCv2.cxx:1836
 AliTPCv2.cxx:1837
 AliTPCv2.cxx:1838
 AliTPCv2.cxx:1839
 AliTPCv2.cxx:1840
 AliTPCv2.cxx:1841
 AliTPCv2.cxx:1842
 AliTPCv2.cxx:1843
 AliTPCv2.cxx:1844
 AliTPCv2.cxx:1845
 AliTPCv2.cxx:1846
 AliTPCv2.cxx:1847
 AliTPCv2.cxx:1848
 AliTPCv2.cxx:1849
 AliTPCv2.cxx:1850
 AliTPCv2.cxx:1851
 AliTPCv2.cxx:1852
 AliTPCv2.cxx:1853
 AliTPCv2.cxx:1854
 AliTPCv2.cxx:1855
 AliTPCv2.cxx:1856
 AliTPCv2.cxx:1857
 AliTPCv2.cxx:1858
 AliTPCv2.cxx:1859
 AliTPCv2.cxx:1860
 AliTPCv2.cxx:1861
 AliTPCv2.cxx:1862
 AliTPCv2.cxx:1863
 AliTPCv2.cxx:1864
 AliTPCv2.cxx:1865
 AliTPCv2.cxx:1866
 AliTPCv2.cxx:1867
 AliTPCv2.cxx:1868
 AliTPCv2.cxx:1869
 AliTPCv2.cxx:1870
 AliTPCv2.cxx:1871
 AliTPCv2.cxx:1872
 AliTPCv2.cxx:1873
 AliTPCv2.cxx:1874
 AliTPCv2.cxx:1875
 AliTPCv2.cxx:1876
 AliTPCv2.cxx:1877
 AliTPCv2.cxx:1878
 AliTPCv2.cxx:1879
 AliTPCv2.cxx:1880
 AliTPCv2.cxx:1881
 AliTPCv2.cxx:1882
 AliTPCv2.cxx:1883
 AliTPCv2.cxx:1884
 AliTPCv2.cxx:1885
 AliTPCv2.cxx:1886
 AliTPCv2.cxx:1887
 AliTPCv2.cxx:1888
 AliTPCv2.cxx:1889
 AliTPCv2.cxx:1890
 AliTPCv2.cxx:1891
 AliTPCv2.cxx:1892
 AliTPCv2.cxx:1893
 AliTPCv2.cxx:1894
 AliTPCv2.cxx:1895
 AliTPCv2.cxx:1896
 AliTPCv2.cxx:1897
 AliTPCv2.cxx:1898
 AliTPCv2.cxx:1899
 AliTPCv2.cxx:1900
 AliTPCv2.cxx:1901
 AliTPCv2.cxx:1902
 AliTPCv2.cxx:1903
 AliTPCv2.cxx:1904
 AliTPCv2.cxx:1905
 AliTPCv2.cxx:1906
 AliTPCv2.cxx:1907
 AliTPCv2.cxx:1908
 AliTPCv2.cxx:1909
 AliTPCv2.cxx:1910
 AliTPCv2.cxx:1911
 AliTPCv2.cxx:1912
 AliTPCv2.cxx:1913
 AliTPCv2.cxx:1914
 AliTPCv2.cxx:1915
 AliTPCv2.cxx:1916
 AliTPCv2.cxx:1917
 AliTPCv2.cxx:1918
 AliTPCv2.cxx:1919
 AliTPCv2.cxx:1920
 AliTPCv2.cxx:1921
 AliTPCv2.cxx:1922
 AliTPCv2.cxx:1923
 AliTPCv2.cxx:1924
 AliTPCv2.cxx:1925
 AliTPCv2.cxx:1926
 AliTPCv2.cxx:1927
 AliTPCv2.cxx:1928
 AliTPCv2.cxx:1929
 AliTPCv2.cxx:1930
 AliTPCv2.cxx:1931
 AliTPCv2.cxx:1932
 AliTPCv2.cxx:1933
 AliTPCv2.cxx:1934
 AliTPCv2.cxx:1935
 AliTPCv2.cxx:1936
 AliTPCv2.cxx:1937
 AliTPCv2.cxx:1938
 AliTPCv2.cxx:1939
 AliTPCv2.cxx:1940
 AliTPCv2.cxx:1941
 AliTPCv2.cxx:1942
 AliTPCv2.cxx:1943
 AliTPCv2.cxx:1944
 AliTPCv2.cxx:1945
 AliTPCv2.cxx:1946
 AliTPCv2.cxx:1947
 AliTPCv2.cxx:1948
 AliTPCv2.cxx:1949
 AliTPCv2.cxx:1950
 AliTPCv2.cxx:1951
 AliTPCv2.cxx:1952
 AliTPCv2.cxx:1953
 AliTPCv2.cxx:1954
 AliTPCv2.cxx:1955
 AliTPCv2.cxx:1956
 AliTPCv2.cxx:1957
 AliTPCv2.cxx:1958
 AliTPCv2.cxx:1959
 AliTPCv2.cxx:1960
 AliTPCv2.cxx:1961
 AliTPCv2.cxx:1962
 AliTPCv2.cxx:1963
 AliTPCv2.cxx:1964
 AliTPCv2.cxx:1965
 AliTPCv2.cxx:1966
 AliTPCv2.cxx:1967
 AliTPCv2.cxx:1968
 AliTPCv2.cxx:1969
 AliTPCv2.cxx:1970
 AliTPCv2.cxx:1971
 AliTPCv2.cxx:1972
 AliTPCv2.cxx:1973
 AliTPCv2.cxx:1974
 AliTPCv2.cxx:1975
 AliTPCv2.cxx:1976
 AliTPCv2.cxx:1977
 AliTPCv2.cxx:1978
 AliTPCv2.cxx:1979
 AliTPCv2.cxx:1980
 AliTPCv2.cxx:1981
 AliTPCv2.cxx:1982
 AliTPCv2.cxx:1983
 AliTPCv2.cxx:1984
 AliTPCv2.cxx:1985
 AliTPCv2.cxx:1986
 AliTPCv2.cxx:1987
 AliTPCv2.cxx:1988
 AliTPCv2.cxx:1989
 AliTPCv2.cxx:1990
 AliTPCv2.cxx:1991
 AliTPCv2.cxx:1992
 AliTPCv2.cxx:1993
 AliTPCv2.cxx:1994
 AliTPCv2.cxx:1995
 AliTPCv2.cxx:1996
 AliTPCv2.cxx:1997
 AliTPCv2.cxx:1998
 AliTPCv2.cxx:1999
 AliTPCv2.cxx:2000
 AliTPCv2.cxx:2001
 AliTPCv2.cxx:2002
 AliTPCv2.cxx:2003
 AliTPCv2.cxx:2004
 AliTPCv2.cxx:2005
 AliTPCv2.cxx:2006
 AliTPCv2.cxx:2007
 AliTPCv2.cxx:2008
 AliTPCv2.cxx:2009
 AliTPCv2.cxx:2010
 AliTPCv2.cxx:2011
 AliTPCv2.cxx:2012
 AliTPCv2.cxx:2013
 AliTPCv2.cxx:2014
 AliTPCv2.cxx:2015
 AliTPCv2.cxx:2016
 AliTPCv2.cxx:2017
 AliTPCv2.cxx:2018
 AliTPCv2.cxx:2019
 AliTPCv2.cxx:2020
 AliTPCv2.cxx:2021
 AliTPCv2.cxx:2022
 AliTPCv2.cxx:2023
 AliTPCv2.cxx:2024
 AliTPCv2.cxx:2025
 AliTPCv2.cxx:2026
 AliTPCv2.cxx:2027
 AliTPCv2.cxx:2028
 AliTPCv2.cxx:2029
 AliTPCv2.cxx:2030
 AliTPCv2.cxx:2031
 AliTPCv2.cxx:2032
 AliTPCv2.cxx:2033
 AliTPCv2.cxx:2034
 AliTPCv2.cxx:2035
 AliTPCv2.cxx:2036
 AliTPCv2.cxx:2037
 AliTPCv2.cxx:2038
 AliTPCv2.cxx:2039
 AliTPCv2.cxx:2040
 AliTPCv2.cxx:2041
 AliTPCv2.cxx:2042
 AliTPCv2.cxx:2043
 AliTPCv2.cxx:2044
 AliTPCv2.cxx:2045
 AliTPCv2.cxx:2046
 AliTPCv2.cxx:2047
 AliTPCv2.cxx:2048
 AliTPCv2.cxx:2049
 AliTPCv2.cxx:2050
 AliTPCv2.cxx:2051
 AliTPCv2.cxx:2052
 AliTPCv2.cxx:2053
 AliTPCv2.cxx:2054
 AliTPCv2.cxx:2055
 AliTPCv2.cxx:2056
 AliTPCv2.cxx:2057
 AliTPCv2.cxx:2058
 AliTPCv2.cxx:2059
 AliTPCv2.cxx:2060
 AliTPCv2.cxx:2061
 AliTPCv2.cxx:2062
 AliTPCv2.cxx:2063
 AliTPCv2.cxx:2064
 AliTPCv2.cxx:2065
 AliTPCv2.cxx:2066
 AliTPCv2.cxx:2067
 AliTPCv2.cxx:2068
 AliTPCv2.cxx:2069
 AliTPCv2.cxx:2070
 AliTPCv2.cxx:2071
 AliTPCv2.cxx:2072
 AliTPCv2.cxx:2073
 AliTPCv2.cxx:2074
 AliTPCv2.cxx:2075
 AliTPCv2.cxx:2076
 AliTPCv2.cxx:2077
 AliTPCv2.cxx:2078
 AliTPCv2.cxx:2079
 AliTPCv2.cxx:2080
 AliTPCv2.cxx:2081
 AliTPCv2.cxx:2082
 AliTPCv2.cxx:2083
 AliTPCv2.cxx:2084
 AliTPCv2.cxx:2085
 AliTPCv2.cxx:2086
 AliTPCv2.cxx:2087
 AliTPCv2.cxx:2088
 AliTPCv2.cxx:2089
 AliTPCv2.cxx:2090
 AliTPCv2.cxx:2091
 AliTPCv2.cxx:2092
 AliTPCv2.cxx:2093
 AliTPCv2.cxx:2094
 AliTPCv2.cxx:2095
 AliTPCv2.cxx:2096
 AliTPCv2.cxx:2097
 AliTPCv2.cxx:2098
 AliTPCv2.cxx:2099
 AliTPCv2.cxx:2100
 AliTPCv2.cxx:2101
 AliTPCv2.cxx:2102
 AliTPCv2.cxx:2103
 AliTPCv2.cxx:2104
 AliTPCv2.cxx:2105
 AliTPCv2.cxx:2106
 AliTPCv2.cxx:2107
 AliTPCv2.cxx:2108
 AliTPCv2.cxx:2109
 AliTPCv2.cxx:2110
 AliTPCv2.cxx:2111
 AliTPCv2.cxx:2112
 AliTPCv2.cxx:2113
 AliTPCv2.cxx:2114
 AliTPCv2.cxx:2115
 AliTPCv2.cxx:2116
 AliTPCv2.cxx:2117
 AliTPCv2.cxx:2118
 AliTPCv2.cxx:2119
 AliTPCv2.cxx:2120
 AliTPCv2.cxx:2121
 AliTPCv2.cxx:2122
 AliTPCv2.cxx:2123
 AliTPCv2.cxx:2124
 AliTPCv2.cxx:2125
 AliTPCv2.cxx:2126
 AliTPCv2.cxx:2127
 AliTPCv2.cxx:2128
 AliTPCv2.cxx:2129
 AliTPCv2.cxx:2130
 AliTPCv2.cxx:2131
 AliTPCv2.cxx:2132
 AliTPCv2.cxx:2133
 AliTPCv2.cxx:2134
 AliTPCv2.cxx:2135
 AliTPCv2.cxx:2136
 AliTPCv2.cxx:2137
 AliTPCv2.cxx:2138
 AliTPCv2.cxx:2139
 AliTPCv2.cxx:2140
 AliTPCv2.cxx:2141
 AliTPCv2.cxx:2142
 AliTPCv2.cxx:2143
 AliTPCv2.cxx:2144
 AliTPCv2.cxx:2145
 AliTPCv2.cxx:2146
 AliTPCv2.cxx:2147
 AliTPCv2.cxx:2148
 AliTPCv2.cxx:2149
 AliTPCv2.cxx:2150
 AliTPCv2.cxx:2151
 AliTPCv2.cxx:2152
 AliTPCv2.cxx:2153
 AliTPCv2.cxx:2154
 AliTPCv2.cxx:2155
 AliTPCv2.cxx:2156
 AliTPCv2.cxx:2157
 AliTPCv2.cxx:2158
 AliTPCv2.cxx:2159
 AliTPCv2.cxx:2160
 AliTPCv2.cxx:2161
 AliTPCv2.cxx:2162
 AliTPCv2.cxx:2163
 AliTPCv2.cxx:2164
 AliTPCv2.cxx:2165
 AliTPCv2.cxx:2166
 AliTPCv2.cxx:2167
 AliTPCv2.cxx:2168
 AliTPCv2.cxx:2169
 AliTPCv2.cxx:2170
 AliTPCv2.cxx:2171
 AliTPCv2.cxx:2172
 AliTPCv2.cxx:2173
 AliTPCv2.cxx:2174
 AliTPCv2.cxx:2175
 AliTPCv2.cxx:2176
 AliTPCv2.cxx:2177
 AliTPCv2.cxx:2178
 AliTPCv2.cxx:2179
 AliTPCv2.cxx:2180
 AliTPCv2.cxx:2181
 AliTPCv2.cxx:2182
 AliTPCv2.cxx:2183
 AliTPCv2.cxx:2184
 AliTPCv2.cxx:2185
 AliTPCv2.cxx:2186
 AliTPCv2.cxx:2187
 AliTPCv2.cxx:2188
 AliTPCv2.cxx:2189
 AliTPCv2.cxx:2190
 AliTPCv2.cxx:2191
 AliTPCv2.cxx:2192
 AliTPCv2.cxx:2193
 AliTPCv2.cxx:2194
 AliTPCv2.cxx:2195
 AliTPCv2.cxx:2196
 AliTPCv2.cxx:2197
 AliTPCv2.cxx:2198
 AliTPCv2.cxx:2199
 AliTPCv2.cxx:2200
 AliTPCv2.cxx:2201
 AliTPCv2.cxx:2202
 AliTPCv2.cxx:2203
 AliTPCv2.cxx:2204
 AliTPCv2.cxx:2205
 AliTPCv2.cxx:2206
 AliTPCv2.cxx:2207
 AliTPCv2.cxx:2208
 AliTPCv2.cxx:2209
 AliTPCv2.cxx:2210
 AliTPCv2.cxx:2211
 AliTPCv2.cxx:2212
 AliTPCv2.cxx:2213
 AliTPCv2.cxx:2214
 AliTPCv2.cxx:2215
 AliTPCv2.cxx:2216
 AliTPCv2.cxx:2217
 AliTPCv2.cxx:2218
 AliTPCv2.cxx:2219
 AliTPCv2.cxx:2220
 AliTPCv2.cxx:2221
 AliTPCv2.cxx:2222
 AliTPCv2.cxx:2223
 AliTPCv2.cxx:2224
 AliTPCv2.cxx:2225
 AliTPCv2.cxx:2226
 AliTPCv2.cxx:2227
 AliTPCv2.cxx:2228
 AliTPCv2.cxx:2229
 AliTPCv2.cxx:2230
 AliTPCv2.cxx:2231
 AliTPCv2.cxx:2232
 AliTPCv2.cxx:2233
 AliTPCv2.cxx:2234
 AliTPCv2.cxx:2235
 AliTPCv2.cxx:2236
 AliTPCv2.cxx:2237
 AliTPCv2.cxx:2238
 AliTPCv2.cxx:2239
 AliTPCv2.cxx:2240
 AliTPCv2.cxx:2241
 AliTPCv2.cxx:2242
 AliTPCv2.cxx:2243
 AliTPCv2.cxx:2244
 AliTPCv2.cxx:2245
 AliTPCv2.cxx:2246
 AliTPCv2.cxx:2247
 AliTPCv2.cxx:2248
 AliTPCv2.cxx:2249
 AliTPCv2.cxx:2250
 AliTPCv2.cxx:2251
 AliTPCv2.cxx:2252
 AliTPCv2.cxx:2253
 AliTPCv2.cxx:2254
 AliTPCv2.cxx:2255
 AliTPCv2.cxx:2256
 AliTPCv2.cxx:2257
 AliTPCv2.cxx:2258
 AliTPCv2.cxx:2259
 AliTPCv2.cxx:2260
 AliTPCv2.cxx:2261
 AliTPCv2.cxx:2262
 AliTPCv2.cxx:2263
 AliTPCv2.cxx:2264
 AliTPCv2.cxx:2265
 AliTPCv2.cxx:2266
 AliTPCv2.cxx:2267
 AliTPCv2.cxx:2268
 AliTPCv2.cxx:2269
 AliTPCv2.cxx:2270
 AliTPCv2.cxx:2271
 AliTPCv2.cxx:2272
 AliTPCv2.cxx:2273
 AliTPCv2.cxx:2274
 AliTPCv2.cxx:2275
 AliTPCv2.cxx:2276
 AliTPCv2.cxx:2277
 AliTPCv2.cxx:2278
 AliTPCv2.cxx:2279
 AliTPCv2.cxx:2280
 AliTPCv2.cxx:2281
 AliTPCv2.cxx:2282
 AliTPCv2.cxx:2283
 AliTPCv2.cxx:2284
 AliTPCv2.cxx:2285
 AliTPCv2.cxx:2286
 AliTPCv2.cxx:2287
 AliTPCv2.cxx:2288
 AliTPCv2.cxx:2289
 AliTPCv2.cxx:2290
 AliTPCv2.cxx:2291
 AliTPCv2.cxx:2292
 AliTPCv2.cxx:2293
 AliTPCv2.cxx:2294
 AliTPCv2.cxx:2295
 AliTPCv2.cxx:2296
 AliTPCv2.cxx:2297
 AliTPCv2.cxx:2298
 AliTPCv2.cxx:2299
 AliTPCv2.cxx:2300
 AliTPCv2.cxx:2301
 AliTPCv2.cxx:2302
 AliTPCv2.cxx:2303
 AliTPCv2.cxx:2304
 AliTPCv2.cxx:2305
 AliTPCv2.cxx:2306
 AliTPCv2.cxx:2307
 AliTPCv2.cxx:2308
 AliTPCv2.cxx:2309
 AliTPCv2.cxx:2310
 AliTPCv2.cxx:2311
 AliTPCv2.cxx:2312
 AliTPCv2.cxx:2313
 AliTPCv2.cxx:2314
 AliTPCv2.cxx:2315
 AliTPCv2.cxx:2316
 AliTPCv2.cxx:2317
 AliTPCv2.cxx:2318
 AliTPCv2.cxx:2319
 AliTPCv2.cxx:2320
 AliTPCv2.cxx:2321
 AliTPCv2.cxx:2322
 AliTPCv2.cxx:2323
 AliTPCv2.cxx:2324
 AliTPCv2.cxx:2325
 AliTPCv2.cxx:2326
 AliTPCv2.cxx:2327
 AliTPCv2.cxx:2328
 AliTPCv2.cxx:2329
 AliTPCv2.cxx:2330
 AliTPCv2.cxx:2331
 AliTPCv2.cxx:2332
 AliTPCv2.cxx:2333
 AliTPCv2.cxx:2334
 AliTPCv2.cxx:2335
 AliTPCv2.cxx:2336
 AliTPCv2.cxx:2337
 AliTPCv2.cxx:2338
 AliTPCv2.cxx:2339
 AliTPCv2.cxx:2340
 AliTPCv2.cxx:2341
 AliTPCv2.cxx:2342
 AliTPCv2.cxx:2343
 AliTPCv2.cxx:2344
 AliTPCv2.cxx:2345
 AliTPCv2.cxx:2346
 AliTPCv2.cxx:2347
 AliTPCv2.cxx:2348
 AliTPCv2.cxx:2349
 AliTPCv2.cxx:2350
 AliTPCv2.cxx:2351
 AliTPCv2.cxx:2352
 AliTPCv2.cxx:2353
 AliTPCv2.cxx:2354
 AliTPCv2.cxx:2355
 AliTPCv2.cxx:2356
 AliTPCv2.cxx:2357
 AliTPCv2.cxx:2358
 AliTPCv2.cxx:2359
 AliTPCv2.cxx:2360
 AliTPCv2.cxx:2361
 AliTPCv2.cxx:2362
 AliTPCv2.cxx:2363
 AliTPCv2.cxx:2364
 AliTPCv2.cxx:2365
 AliTPCv2.cxx:2366
 AliTPCv2.cxx:2367
 AliTPCv2.cxx:2368
 AliTPCv2.cxx:2369
 AliTPCv2.cxx:2370
 AliTPCv2.cxx:2371
 AliTPCv2.cxx:2372
 AliTPCv2.cxx:2373
 AliTPCv2.cxx:2374
 AliTPCv2.cxx:2375
 AliTPCv2.cxx:2376
 AliTPCv2.cxx:2377
 AliTPCv2.cxx:2378
 AliTPCv2.cxx:2379
 AliTPCv2.cxx:2380
 AliTPCv2.cxx:2381
 AliTPCv2.cxx:2382
 AliTPCv2.cxx:2383
 AliTPCv2.cxx:2384
 AliTPCv2.cxx:2385
 AliTPCv2.cxx:2386
 AliTPCv2.cxx:2387
 AliTPCv2.cxx:2388
 AliTPCv2.cxx:2389
 AliTPCv2.cxx:2390
 AliTPCv2.cxx:2391
 AliTPCv2.cxx:2392
 AliTPCv2.cxx:2393
 AliTPCv2.cxx:2394
 AliTPCv2.cxx:2395
 AliTPCv2.cxx:2396
 AliTPCv2.cxx:2397
 AliTPCv2.cxx:2398
 AliTPCv2.cxx:2399
 AliTPCv2.cxx:2400
 AliTPCv2.cxx:2401
 AliTPCv2.cxx:2402
 AliTPCv2.cxx:2403
 AliTPCv2.cxx:2404
 AliTPCv2.cxx:2405
 AliTPCv2.cxx:2406
 AliTPCv2.cxx:2407
 AliTPCv2.cxx:2408
 AliTPCv2.cxx:2409
 AliTPCv2.cxx:2410
 AliTPCv2.cxx:2411
 AliTPCv2.cxx:2412
 AliTPCv2.cxx:2413
 AliTPCv2.cxx:2414
 AliTPCv2.cxx:2415
 AliTPCv2.cxx:2416
 AliTPCv2.cxx:2417
 AliTPCv2.cxx:2418
 AliTPCv2.cxx:2419
 AliTPCv2.cxx:2420
 AliTPCv2.cxx:2421
 AliTPCv2.cxx:2422
 AliTPCv2.cxx:2423
 AliTPCv2.cxx:2424
 AliTPCv2.cxx:2425
 AliTPCv2.cxx:2426
 AliTPCv2.cxx:2427
 AliTPCv2.cxx:2428
 AliTPCv2.cxx:2429
 AliTPCv2.cxx:2430
 AliTPCv2.cxx:2431
 AliTPCv2.cxx:2432
 AliTPCv2.cxx:2433
 AliTPCv2.cxx:2434
 AliTPCv2.cxx:2435
 AliTPCv2.cxx:2436
 AliTPCv2.cxx:2437
 AliTPCv2.cxx:2438
 AliTPCv2.cxx:2439
 AliTPCv2.cxx:2440
 AliTPCv2.cxx:2441
 AliTPCv2.cxx:2442
 AliTPCv2.cxx:2443
 AliTPCv2.cxx:2444
 AliTPCv2.cxx:2445
 AliTPCv2.cxx:2446
 AliTPCv2.cxx:2447
 AliTPCv2.cxx:2448
 AliTPCv2.cxx:2449
 AliTPCv2.cxx:2450
 AliTPCv2.cxx:2451
 AliTPCv2.cxx:2452
 AliTPCv2.cxx:2453
 AliTPCv2.cxx:2454
 AliTPCv2.cxx:2455
 AliTPCv2.cxx:2456
 AliTPCv2.cxx:2457
 AliTPCv2.cxx:2458
 AliTPCv2.cxx:2459
 AliTPCv2.cxx:2460
 AliTPCv2.cxx:2461
 AliTPCv2.cxx:2462
 AliTPCv2.cxx:2463
 AliTPCv2.cxx:2464
 AliTPCv2.cxx:2465
 AliTPCv2.cxx:2466
 AliTPCv2.cxx:2467
 AliTPCv2.cxx:2468
 AliTPCv2.cxx:2469
 AliTPCv2.cxx:2470
 AliTPCv2.cxx:2471
 AliTPCv2.cxx:2472
 AliTPCv2.cxx:2473
 AliTPCv2.cxx:2474
 AliTPCv2.cxx:2475
 AliTPCv2.cxx:2476
 AliTPCv2.cxx:2477
 AliTPCv2.cxx:2478
 AliTPCv2.cxx:2479
 AliTPCv2.cxx:2480
 AliTPCv2.cxx:2481
 AliTPCv2.cxx:2482
 AliTPCv2.cxx:2483
 AliTPCv2.cxx:2484
 AliTPCv2.cxx:2485
 AliTPCv2.cxx:2486
 AliTPCv2.cxx:2487
 AliTPCv2.cxx:2488
 AliTPCv2.cxx:2489
 AliTPCv2.cxx:2490
 AliTPCv2.cxx:2491
 AliTPCv2.cxx:2492
 AliTPCv2.cxx:2493
 AliTPCv2.cxx:2494
 AliTPCv2.cxx:2495
 AliTPCv2.cxx:2496
 AliTPCv2.cxx:2497
 AliTPCv2.cxx:2498
 AliTPCv2.cxx:2499
 AliTPCv2.cxx:2500
 AliTPCv2.cxx:2501
 AliTPCv2.cxx:2502
 AliTPCv2.cxx:2503
 AliTPCv2.cxx:2504
 AliTPCv2.cxx:2505
 AliTPCv2.cxx:2506
 AliTPCv2.cxx:2507
 AliTPCv2.cxx:2508
 AliTPCv2.cxx:2509
 AliTPCv2.cxx:2510
 AliTPCv2.cxx:2511
 AliTPCv2.cxx:2512
 AliTPCv2.cxx:2513
 AliTPCv2.cxx:2514
 AliTPCv2.cxx:2515
 AliTPCv2.cxx:2516
 AliTPCv2.cxx:2517
 AliTPCv2.cxx:2518
 AliTPCv2.cxx:2519
 AliTPCv2.cxx:2520
 AliTPCv2.cxx:2521
 AliTPCv2.cxx:2522
 AliTPCv2.cxx:2523
 AliTPCv2.cxx:2524
 AliTPCv2.cxx:2525
 AliTPCv2.cxx:2526
 AliTPCv2.cxx:2527
 AliTPCv2.cxx:2528
 AliTPCv2.cxx:2529