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.                  *
 **************************************************************************/

//*************************************************************************
// This class Defines the Geometry for the ITS Upgrade using TGeo
// This is a work class used to study different configurations
// during the development of the new ITS structure.
//
//  Mario Sitta <sitta@to.infn.it>
//  Chinorat Kobdaj (kobdaj@g.sut.ac.th)
//*************************************************************************


/* $Id: AliITSUv1Layer.cxx  */
// General Root includes
#include <TMath.h>
// Root Geometry includes
//#include <AliLog.h>
#include <TGeoManager.h>
#include <TGeoVolume.h>
#include <TGeoPcon.h>
#include <TGeoCone.h>
#include <TGeoTube.h> // contaings TGeoTubeSeg
#include <TGeoArb8.h>
#include <TGeoXtru.h>
#include <TGeoCompositeShape.h>
#include <TGeoMatrix.h>
#include "AliITSUv1Layer.h"
#include "AliITSUGeomTGeo.h"
#include <TGeoBBox.h>
#include <TGeoShape.h>
#include <TGeoTrd1.h>
using namespace TMath;

// General Parameters
const Int_t    AliITSUv1Layer::fgkNumberOfInnerLayers =   3;

const Double_t AliITSUv1Layer::fgkDefaultSensorThick  =  18*fgkmicron;
const Double_t AliITSUv1Layer::fgkDefaultChipThick    =  50*fgkmicron;

// Inner Barrel Parameters
const Int_t    AliITSUv1Layer::fgkIBChipsPerRow       =   9;
const Int_t    AliITSUv1Layer::fgkIBNChipRows         =   1;

const Double_t AliITSUv1Layer::fgkIBFlexCableAlThick  =  50.0  *fgkmicron;
const Double_t AliITSUv1Layer::fgkIBFlexCableKapThick = 125.0  *fgkmicron;
const Double_t AliITSUv1Layer::fgkIBGlueThick         = 100.0  *fgkmicron;
const Double_t AliITSUv1Layer::fgkIBCarbonFleeceThick =  20.0  *fgkmicron;
const Double_t AliITSUv1Layer::fgkIBCarbonPaperThick  =  30.0  *fgkmicron;
const Double_t AliITSUv1Layer::fgkIBK13D2UThick       =  70.0  *fgkmicron;
const Double_t AliITSUv1Layer::fgkIBCoolPipeInnerD    =   1.024*fgkmm;
const Double_t AliITSUv1Layer::fgkIBCoolPipeThick     =  25.4  *fgkmicron;
const Double_t AliITSUv1Layer::fgkIBCoolPipeXDist     =   5.0  *fgkmm;
const Double_t AliITSUv1Layer::fgkIBTopVertexWidth    =   0.072*fgkcm;
const Double_t AliITSUv1Layer::fgkIBTopVertexHeight   =   0.04 *fgkcm;
const Double_t AliITSUv1Layer::fgkIBSideVertexWidth   =   0.052*fgkcm;
const Double_t AliITSUv1Layer::fgkIBSideVertexHeight  =   0.11 *fgkcm;
const Double_t AliITSUv1Layer::fgkIBTopFilamentLength =   0.844*fgkcm;
const Double_t AliITSUv1Layer::fgkIBTopFilamentSide   =   0.02 *fgkcm;
const Double_t AliITSUv1Layer::fgkIBTopFilamentAlpha  =  57.0; // Deg

const Double_t AliITSUv1Layer::fgkIBStaveHeight       =   0.283*fgkcm;

// Outer Barrel Parameters
const Int_t    AliITSUv1Layer::fgkOBChipsPerRow       =   7;
const Int_t    AliITSUv1Layer::fgkOBNChipRows         =   2;

const Double_t AliITSUv1Layer::fgkOBHalfStaveWidth    =   3.01 *fgkcm;
const Double_t AliITSUv1Layer::fgkOBModuleWidth       = fgkOBHalfStaveWidth;
const Double_t AliITSUv1Layer::fgkOBModuleGap         =   0.01 *fgkcm;
const Double_t AliITSUv1Layer::fgkOBChipXGap          =   0.01 *fgkcm;
const Double_t AliITSUv1Layer::fgkOBChipZGap          =   0.01 *fgkcm;
const Double_t AliITSUv1Layer::fgkOBFlexCableAlThick  =   0.005*fgkcm;
const Double_t AliITSUv1Layer::fgkOBFlexCableCuThick  =   0.004*fgkcm;
const Double_t AliITSUv1Layer::fgkOBFlexCableKapThick1=   0.01 *fgkcm;
const Double_t AliITSUv1Layer::fgkOBFlexCableKapThick = 125.0  *fgkmicron;
const Double_t AliITSUv1Layer::fgkOBBusCableAlThick   =   0.02 *fgkcm;
const Double_t AliITSUv1Layer::fgkOBBusCableKapThick  =   0.02 *fgkcm;
const Double_t AliITSUv1Layer::fgkOBColdPlateThick    =   0.012*fgkcm;
const Double_t AliITSUv1Layer::fgkOBCarbonPlateThick  =   0.012*fgkcm;
const Double_t AliITSUv1Layer::fgkOBGlueThickM1       =   0.03 *fgkcm;
const Double_t AliITSUv1Layer::fgkOBGlueThick         =   0.01 *fgkcm;
const Double_t AliITSUv1Layer::fgkOBModuleZLength     =  21.06 *fgkcm;
const Double_t AliITSUv1Layer::fgkOBHalfStaveYTrans   =   1.76 *fgkmm;
const Double_t AliITSUv1Layer::fgkOBHalfStaveXOverlap =   4.3  *fgkmm;
const Double_t AliITSUv1Layer::fgkOBGraphiteFoilThick =  30.0  *fgkmicron;
const Double_t AliITSUv1Layer::fgkOBCarbonFleeceThick =  20.0  *fgkmicron;
const Double_t AliITSUv1Layer::fgkOBCoolTubeInnerDM1  =   2.052*fgkmm;
const Double_t AliITSUv1Layer::fgkOBCoolTubeInnerD    =   2.05 *fgkmm;
const Double_t AliITSUv1Layer::fgkOBCoolTubeThick     =  32.0  *fgkmicron;
const Double_t AliITSUv1Layer::fgkOBCoolTubeXDist     =  11.1  *fgkmm;

const Double_t AliITSUv1Layer::fgkOBSpaceFrameWidth   =  42.0  *fgkmm;
const Double_t AliITSUv1Layer::fgkOBSpaceFrameTotHigh =  43.1  *fgkmm;
const Double_t AliITSUv1Layer::fgkOBSFrameBeamRadius  =   0.6  *fgkmm;
const Double_t AliITSUv1Layer::fgkOBSpaceFrameLa      =   3.0  *fgkmm;
const Double_t AliITSUv1Layer::fgkOBSpaceFrameHa      =   0.721979*fgkmm;
const Double_t AliITSUv1Layer::fgkOBSpaceFrameLb      =   3.7  *fgkmm;
const Double_t AliITSUv1Layer::fgkOBSpaceFrameHb      =   0.890428*fgkmm;
const Double_t AliITSUv1Layer::fgkOBSpaceFrameL       =   0.25 *fgkmm;
const Double_t AliITSUv1Layer::fgkOBSFBotBeamAngle    =  56.5;
const Double_t AliITSUv1Layer::fgkOBSFrameBeamSidePhi =  65.0;


ClassImp(AliITSUv1Layer)

#define SQ(A) (A)*(A)

//________________________________________________________________________
AliITSUv1Layer::AliITSUv1Layer(): 
  AliITSv11Geometry(),
  fLayerNumber(0),
  fPhi0(0),
  fLayRadius(0),
  fZLength(0),
  fSensorThick(0),
  fChipThick(0),
  fStaveWidth(0),
  fStaveTilt(0),
  fNStaves(0),
  fNModules(0),
  fNChips(0),
  fChipTypeID(0),
  fIsTurbo(0),
  fBuildLevel(0),
  fStaveModel(AliITSUv1::kIBModelDummy)
{
  //
  // Standard constructor
  for (int i=kNHLevels;i--;) fHierarchy[i] = 0;
  //
}

//________________________________________________________________________
AliITSUv1Layer::AliITSUv1Layer(Int_t debug): 
  AliITSv11Geometry(debug),
  fLayerNumber(0),
  fPhi0(0),
  fLayRadius(0),
  fZLength(0),
  fSensorThick(0),
  fChipThick(0),
  fStaveWidth(0),
  fStaveTilt(0),
  fNStaves(0),
  fNModules(0),
  fNChips(0),
  fChipTypeID(0),
  fIsTurbo(0),
  fBuildLevel(0),
  fStaveModel(AliITSUv1::kIBModelDummy)
{
  //
  // Constructor setting debugging level
  for (int i=kNHLevels;i--;) fHierarchy[i] = 0;
  //
}

//________________________________________________________________________
AliITSUv1Layer::AliITSUv1Layer(Int_t lay, Int_t debug): 
  AliITSv11Geometry(debug),
  fLayerNumber(lay),
  fPhi0(0),
  fLayRadius(0),
  fZLength(0),
  fSensorThick(0),
  fChipThick(0),
  fStaveWidth(0),
  fStaveTilt(0),
  fNStaves(0),
  fNModules(0),
  fNChips(0),
  fChipTypeID(0),
  fIsTurbo(0),
  fBuildLevel(0),
  fStaveModel(AliITSUv1::kIBModelDummy)
{
  //
  // Constructor setting layer number and debugging level
  for (int i=kNHLevels;i--;) fHierarchy[i] = 0;
  //
}

//________________________________________________________________________
AliITSUv1Layer::AliITSUv1Layer(Int_t lay, Bool_t turbo, Int_t debug): 
  AliITSv11Geometry(debug),
  fLayerNumber(lay),
  fPhi0(0),
  fLayRadius(0),
  fZLength(0),
  fSensorThick(0),
  fChipThick(0),
  fStaveWidth(0),
  fStaveTilt(0),
  fNStaves(0),
  fNModules(0),
  fNChips(0),
  fChipTypeID(0),
  fIsTurbo(turbo),
  fBuildLevel(0),
  fStaveModel(AliITSUv1::kIBModelDummy)
{
  //
  // Constructor setting layer number and debugging level
  // for a "turbo" layer (i.e. where staves overlap in phi)
  for (int i=kNHLevels;i--;) fHierarchy[i] = 0;
  //
}

//________________________________________________________________________
AliITSUv1Layer::AliITSUv1Layer(const AliITSUv1Layer &s):
  AliITSv11Geometry(s.GetDebug()),
  fLayerNumber(s.fLayerNumber),
  fPhi0(s.fPhi0),
  fLayRadius(s.fLayRadius),
  fZLength(s.fZLength),
  fSensorThick(s.fSensorThick),
  fChipThick(s.fChipThick),
  fStaveWidth(s.fStaveWidth),
  fStaveTilt(s.fStaveTilt),
  fNStaves(s.fNStaves),
  fNModules(s.fNModules),
  fNChips(s.fNChips),
  fChipTypeID(s.fChipTypeID),
  fIsTurbo(s.fIsTurbo),
  fBuildLevel(s.fBuildLevel),
  fStaveModel(s.fStaveModel)
{
  //
  // Copy constructor
  for (int i=kNHLevels;i--;) fHierarchy[i] = s.fHierarchy[i];
  //
}

//________________________________________________________________________
AliITSUv1Layer& AliITSUv1Layer::operator=(const AliITSUv1Layer &s)
{
  //
  // Assignment operator 
  //
  if(&s == this) return *this;

  fLayerNumber = s.fLayerNumber;
  fPhi0        = s.fPhi0;
  fLayRadius   = s.fLayRadius;
  fZLength     = s.fZLength;
  fSensorThick = s.fSensorThick;
  fChipThick   = s.fChipThick;
  fStaveWidth  = s.fStaveWidth;
  fStaveTilt   = s.fStaveTilt;
  fNStaves     = s.fNStaves;
  fNModules    = s.fNModules;
  fNChips      = s.fNChips;
  fIsTurbo     = s.fIsTurbo;
  fChipTypeID  = s.fChipTypeID;
  fBuildLevel  = s.fBuildLevel;
  fStaveModel  = s.fStaveModel;
  for (int i=kNHLevels;i--;) fHierarchy[i] = s.fHierarchy[i];
  //
  return *this;
}

//________________________________________________________________________
AliITSUv1Layer::~AliITSUv1Layer() {
  //
  // Destructor
  //
}

//________________________________________________________________________
void AliITSUv1Layer::CreateLayer(TGeoVolume *moth){
//
// Creates the actual Layer and places inside its mother volume
//
// Input:
//         moth : the TGeoVolume owing the volume structure
//
// Output:
//
// Return:
//
// Created:      17 Jun 2011  Mario Sitta
// Updated:      08 Jul 2011  Mario Sitta
// Updated:      20 May 2013  Mario Sitta  Layer is Assembly instead of Tube
//
  // Local variables
  char volname[30];
  Double_t xpos, ypos, zpos;
  Double_t alpha;


  // Check if the user set the proper parameters
  if (fLayRadius<= 0) AliFatal(Form("Wrong layer radius (%f)",fLayRadius));
  if (fZLength  <= 0) AliFatal(Form("Wrong layer length (%f)",fZLength));
  if (fNStaves  <= 0) AliFatal(Form("Wrong number of staves (%d)",fNStaves));
  if (fNChips   <= 0) AliFatal(Form("Wrong number of chips (%d)",fNChips));

  if (fLayerNumber >= fgkNumberOfInnerLayers && fNModules <= 0)
    AliFatal(Form("Wrong number of modules (%d)",fNModules));

  if (fChipThick <= 0) {
    AliInfo(Form("Chip thickness wrong or not set (%f), using default (%f)",
		 fChipThick,fgkDefaultChipThick));
    fChipThick = fgkDefaultChipThick;
  }

  if (fSensorThick <= 0) {
    AliInfo(Form("Sensor thickness wrong or not set (%f), using default (%f)",
		 fSensorThick,fgkDefaultSensorThick));
    fSensorThick = fgkDefaultSensorThick;
  }

  if (fSensorThick > fChipThick) {
    AliWarning(Form("Sensor thickness (%f) is greater than chip thickness (%f), fixing",
		 fSensorThick,fChipThick));
    fSensorThick = fChipThick;
  }


  // If a Turbo layer is requested, do it and exit
  if (fIsTurbo) {
    CreateLayerTurbo(moth);
    return;
  }


  // First create the stave container
  alpha = (360./(2*fNStaves))*DegToRad();

  //  fStaveWidth = fLayRadius*Tan(alpha);

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSLayerPattern(),fLayerNumber);
  TGeoVolume *layVol = new TGeoVolumeAssembly(volname);
  layVol->SetTitle(
	   Form("Model %d Build level %d",(Int_t)fStaveModel,fBuildLevel));
  layVol->SetUniqueID(fChipTypeID);

//  layVol->SetVisibility(kFALSE);
  layVol->SetVisibility(kTRUE);
  layVol->SetLineColor(1);

  TGeoVolume *stavVol = CreateStave();


  // Now build up the layer
  alpha = 360./fNStaves;
  Double_t r = fLayRadius + ((TGeoBBox*)stavVol->GetShape())->GetDY();
  for (Int_t j=0; j<fNStaves; j++) {
    Double_t phi = j*alpha + fPhi0;
    xpos = r*CosD(phi);// r*SinD(-phi);
    ypos = r*SinD(phi);// r*CosD(-phi);
    zpos = 0.;
    phi += 90;
    layVol->AddNode(stavVol, j, new TGeoCombiTrans( xpos, ypos, zpos,
						    new TGeoRotation("",phi,0,0)));
  }


  // Finally put everything in the mother volume
  moth->AddNode(layVol, 1, 0);


  // Upgrade geometry is served
  return;
}

//________________________________________________________________________
void AliITSUv1Layer::CreateLayerTurbo(TGeoVolume *moth){
//
// Creates the actual Layer and places inside its mother volume
// A so-called "turbo" layer is a layer where staves overlap in phi
// User can set width and tilt angle, no check is performed here
// to avoid volume overlaps
//
// Input:
//         moth : the TGeoVolume owing the volume structure
//
// Output:
//
// Return:
//
// Created:      08 Jul 2011  Mario Sitta
// Updated:      08 Mar 2012  Mario Sitta  Correct way to compute container R
// Updated:      20 May 2013  Mario Sitta  Layer is Assemgbly instead of Tube
//


  // Local variables
  char volname[30];
  Double_t xpos, ypos, zpos;
  Double_t alpha;


  // Check if the user set the proper (remaining) parameters
  if (fStaveWidth <= 0)
    AliFatal(Form("Wrong stave width (%f)",fStaveWidth));
  if (Abs(fStaveTilt) > 45)
    AliWarning(Form("Stave tilt angle (%f) greater than 45deg",fStaveTilt));


  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSLayerPattern(), fLayerNumber);
  TGeoVolume *layVol = new TGeoVolumeAssembly(volname);
  layVol->SetTitle(
	   Form("Model %d Build level %d",(Int_t)fStaveModel,fBuildLevel));
  layVol->SetUniqueID(fChipTypeID);
  layVol->SetVisibility(kTRUE);
  layVol->SetLineColor(1);
  TGeoVolume *stavVol = CreateStave();


  // Now build up the layer
  alpha = 360./fNStaves;
  Double_t r = fLayRadius /* +chip thick ?! */;
  for (Int_t j=0; j<fNStaves; j++) {
    Double_t phi = j*alpha + fPhi0;
    xpos = r*CosD(phi);// r*SinD(-phi);
    ypos = r*SinD(phi);// r*CosD(-phi);
    zpos = 0.;
    phi += 90;
    layVol->AddNode(stavVol, j, new TGeoCombiTrans( xpos, ypos, zpos,
						    new TGeoRotation("", phi-fStaveTilt,0,0)));
  }


  // Finally put everything in the mother volume
  moth->AddNode(layVol, 1, 0);

  return;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStave(const TGeoManager * /*mgr*/){
//
// Creates the actual Stave
//
// Input:
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      22 Jun 2011  Mario Sitta
// Updated:      18 Dec 2013  Mario Sitta  Handle IB and OB
//

  char volname[30];
 
  Double_t xlen, ylen, zlen;
  Double_t xpos, ypos;
  Double_t alpha;


  // First create all needed shapes
  alpha = (360./(2*fNStaves))*DegToRad();

  // The stave
  xlen = fLayRadius*Tan(alpha);
  if (fIsTurbo) xlen = 0.5*fStaveWidth;
  ylen = 0.5*fChipThick;
  zlen = 0.5*fZLength;

  Double_t yplus = 0.46;
  TGeoXtru *stave = new TGeoXtru(2); //z sections
  Double_t xv[5] = {xlen,xlen,0,-xlen,-xlen};
  Double_t yv[5] = {ylen+0.09,-0.15,-yplus-fSensorThick,-0.15,ylen+0.09};    
  stave->DefinePolygon(5,xv,yv);
  stave->DefineSection(0,-zlen,0,0,1.);
  stave->DefineSection(1,+zlen,0,0,1.);

  // We have all shapes: now create the real volumes

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSStavePattern(), fLayerNumber);
//  TGeoVolume *staveVol = new TGeoVolume(volname, stave, medAir);
  TGeoVolume *staveVol = new TGeoVolumeAssembly(volname);

  //  staveVol->SetVisibility(kFALSE);
  staveVol->SetVisibility(kTRUE);
  staveVol->SetLineColor(2);
  TGeoVolume *mechStaveVol = 0;

  // Now build up the stave
  if (fLayerNumber < fgkNumberOfInnerLayers) {
    TGeoVolume *modVol = CreateStaveInnerB(xlen,ylen,zlen);
    staveVol->AddNode(modVol, 0);
    fHierarchy[kHalfStave] = 1;
 
  // Mechanical stave structure
    mechStaveVol = CreateStaveStructInnerB(xlen,zlen); 
    if (mechStaveVol) {
      ypos = ((TGeoBBox*)(modVol->GetShape()))->GetDY();
      if (fStaveModel != AliITSUv1::kIBModel4)
	ypos += ((TGeoBBox*)(mechStaveVol->GetShape()))->GetDY();
      staveVol->AddNode(mechStaveVol, 1, new TGeoCombiTrans(0, -ypos, 0, new TGeoRotation("",0, 0, 180)));
    }
  }

  else{
    TGeoVolume *hstaveVol = CreateStaveOuterB();
    if (fStaveModel == AliITSUv1::kOBModel0) { // Create simplified stave struct as in v0
      staveVol->AddNode(hstaveVol, 0);
      fHierarchy[kHalfStave] = 1;
    } else { // (if fStaveModel) Create new stave struct as in TDR
      xpos = ((TGeoBBox*)(hstaveVol->GetShape()))->GetDX()
	   - fgkOBHalfStaveXOverlap/2;
      // ypos is CF height as computed in CreateSpaceFrameOuterB1
      ypos = (fgkOBSpaceFrameTotHigh - fgkOBHalfStaveYTrans)/2;
      staveVol->AddNode(hstaveVol, 0, new TGeoTranslation(-xpos, ypos, 0));
      staveVol->AddNode(hstaveVol, 1, new TGeoTranslation( xpos, ypos+fgkOBHalfStaveYTrans, 0));
      fHierarchy[kHalfStave] = 2; // RS 
      mechStaveVol = CreateSpaceFrameOuterB();
      if (mechStaveVol)
	staveVol->AddNode(mechStaveVol, 1,
			  new TGeoCombiTrans(0, 0, 0,
					     new TGeoRotation("", 180, 0, 0)));
    } // if (fStaveModel)
  }
  

  // Done, return the stave
  return staveVol;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveInnerB(const Double_t xsta,
					      const Double_t ysta,
					      const Double_t zsta,
					      const TGeoManager *mgr){
//
// Create the chip stave for the Inner Barrel
// (Here we fake the halfstave volume to have the same
// formal geometry hierarchy as for the Outer Barrel)
//
// Input:
//         xsta, ysta, zsta : X, Y, Z stave half lengths
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      06 Mar 2014  Mario Sitta
//

  // Local variables
  Double_t xmod, ymod, zmod;
  char volname[30];

  // First we create the module (i.e. the HIC with 9 chips)
  TGeoVolume *moduleVol = CreateModuleInnerB(xsta, ysta, zsta);

  // Then we create the fake halfstave and the actual stave
  xmod = ((TGeoBBox*)(moduleVol->GetShape()))->GetDX();
  ymod = ((TGeoBBox*)(moduleVol->GetShape()))->GetDY();
  zmod = ((TGeoBBox*)(moduleVol->GetShape()))->GetDZ();

  TGeoBBox *hstave = new TGeoBBox(xmod, ymod, zmod);

  TGeoMedium *medAir = mgr->GetMedium("ITS_AIR$");

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSHalfStavePattern(), fLayerNumber);
  TGeoVolume *hstaveVol  = new TGeoVolume(volname, hstave, medAir);


  // Finally build it up
  hstaveVol->AddNode(moduleVol, 0);
  fHierarchy[kModule] = 1;

  // Done, return the stave structure
  return hstaveVol;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateModuleInnerB(Double_t xmod,
					       Double_t ymod,
					       Double_t zmod,
					       const TGeoManager *mgr){
//
// Creates the IB Module: (only the chips for the time being)
//
// Input:
//         xmod, ymod, zmod : X, Y, Z module half lengths
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//         the module as a TGeoVolume
//
// Created:      06 Mar 2014  M. Sitta
//

  Double_t zchip;
  Double_t zpos;
  char volname[30];

  // First create the single chip
  zchip = zmod/fgkIBChipsPerRow;
  TGeoVolume *chipVol = CreateChipInnerB(xmod, ymod, zchip);

  // Then create the module and populate it with the chips
  TGeoBBox *module = new TGeoBBox(xmod, ymod, zmod);

  TGeoMedium *medAir = mgr->GetMedium("ITS_AIR$");

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSModulePattern(), fLayerNumber);
  TGeoVolume *modVol = new TGeoVolume(volname, module, medAir);

  // mm (not used)  zlen = ((TGeoBBox*)chipVol->GetShape())->GetDZ();
  for (Int_t j=0; j<fgkIBChipsPerRow; j++) {
    zpos = -zmod + j*2*zchip + zchip;
    modVol->AddNode(chipVol, j, new TGeoTranslation(0, 0, zpos));
    fHierarchy[kChip]++;
  }

  // Done, return the module
  return modVol;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveStructInnerB(const Double_t xsta,
						    const Double_t zsta,
						    const TGeoManager *mgr){
//
// Create the mechanical stave structure
//
// Input:
//         xsta : X length
//         zsta : Z length
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      22 Mar 2013  Chinorat Kobdaj
// Updated:      26 Apr 2013  Mario Sitta
//

  TGeoVolume *mechStavVol = 0;

  switch (fStaveModel) {
    case AliITSUv1::kIBModelDummy:
      mechStavVol = CreateStaveModelInnerBDummy(xsta,zsta,mgr);
      break;
    case AliITSUv1::kIBModel0:
      mechStavVol = CreateStaveModelInnerB0(xsta,zsta,mgr);
      break;
    case AliITSUv1::kIBModel1:
      mechStavVol = CreateStaveModelInnerB1(xsta,zsta,mgr);
      break;
    case AliITSUv1::kIBModel21:
      mechStavVol = CreateStaveModelInnerB21(xsta,zsta,mgr);
      break;
    case AliITSUv1::kIBModel22:
      mechStavVol = CreateStaveModelInnerB22(xsta,zsta,mgr);
      break;
    case AliITSUv1::kIBModel3:
      mechStavVol = CreateStaveModelInnerB3(xsta,zsta,mgr);
      break;
    case AliITSUv1::kIBModel4:
      mechStavVol = CreateStaveModelInnerB4(xsta,zsta,mgr);
      break;
    default:
      AliFatal(Form("Unknown stave model %d",fStaveModel));
      break;
  }

  return mechStavVol; 
}


//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveModelInnerBDummy(const Double_t ,
							const Double_t ,
							const TGeoManager *) const {
//
// Create dummy stave
//
// Input:
//         xsta : X length
//         zsta : Z length
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      22 Mar 2013  Chinorat Kobdaj
// Updated:      26 Apr 2013  Mario Sitta
//

  // Done, return the stave structur
  return 0;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveModelInnerB0(const Double_t xsta,
						    const Double_t zsta,
						    const TGeoManager *mgr){
//
// Create the mechanical stave structure for Model 0 of TDR
//
// Input:
//         xsta : X length
//         zsta : Z length
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      22 Mar 2013  Chinorat Kobdaj
// Updated:      26 Apr 2013  Mario Sitta
//
  
  // Materials defined in AliITSUv1
  TGeoMedium *medAir    = mgr->GetMedium("ITS_AIR$");
  TGeoMedium *medWater  = mgr->GetMedium("ITS_WATER$");

  TGeoMedium *medM60J3K    = mgr->GetMedium("ITS_M60J3K$"); 
  TGeoMedium *medKapton    = mgr->GetMedium("ITS_KAPTON(POLYCH2)$");
  TGeoMedium *medGlue      = mgr->GetMedium("ITS_GLUE$");
  TGeoMedium *medFlexCable = mgr->GetMedium("ITS_FLEXCABLE$");

  // Local parameters
  Double_t kConeOutRadius = 0.15/2;
  Double_t kConeInRadius = 0.1430/2;
  Double_t kStaveLength = zsta*2;
  Double_t kStaveWidth = xsta*2-kConeOutRadius*2;
  Double_t kWidth = kStaveWidth/4;//1/2 of kWidth
  Double_t kStaveHeight = 0.3;
  Double_t kHeight = kStaveHeight/2;
  Double_t kAlpha = 90-67;//90-33.69;
  Double_t kTheta = kAlpha*TMath::DegToRad();
  Double_t kS1 = kWidth/TMath::Sin(kTheta);
  Double_t kL1 = kWidth/TMath::Tan(kTheta);
  Double_t kS2 = TMath::Sqrt(kHeight*kHeight + kS1*kS1);//TMath::Sin(the2);
  Double_t kThe2 = TMath::ATan(kHeight/kS1);
  Double_t kBeta = kThe2*TMath::RadToDeg();
  // Int_t  loop = kStaveLength/(kL1);
  // Double_t s3 = kWidth/(2*TMath::Sin(kTheta));
  // Double_t s4 = 3*kWidth/(2*TMath::Sin(kTheta));

  AliDebug(1, Form("BuildLevel %d\n",fBuildLevel));

  char volname[30];
  snprintf(volname, 30, "%s%d_StaveStruct", AliITSUGeomTGeo::GetITSStavePattern(), fLayerNumber);

  Double_t z=0, y=-0.011+0.0150, x=0;

   TGeoVolume *mechStavVol = 0;

  if (fBuildLevel < 5) {

    // world (trapezoid)
    TGeoXtru *mechStruct = new TGeoXtru(2); //z sections
    Double_t xv[5] = {kStaveWidth/2+0.1,kStaveWidth/2+0.1,0,-kStaveWidth/2-0.1,-kStaveWidth/2-0.1};
    Double_t yv[5] = {-kConeOutRadius*2-0.07,0,kStaveHeight,0,-kConeOutRadius*2-0.07};    
    mechStruct->DefinePolygon(5,xv,yv);
    mechStruct->DefineSection(0,-kStaveLength-0.1,0,0,1.);
    mechStruct->DefineSection(1,kStaveLength+0.1,0,0,1.);

    mechStavVol = new TGeoVolume(volname, mechStruct, medAir);
    mechStavVol->SetLineColor(12);
    mechStavVol->SetFillColor(12); 
    mechStavVol->SetVisibility(kTRUE);
      
    // detailed structure ++++++++++++++
    //Pipe Kapton grey-35
    TGeoTube *coolTube = new TGeoTube(kConeInRadius,kConeOutRadius,kStaveLength/2);
    TGeoVolume *volCoolTube= new TGeoVolume("pipe", coolTube, medKapton);
    volCoolTube->SetFillColor(35);
    volCoolTube->SetLineColor(35);
    mechStavVol->AddNode(volCoolTube,0,new TGeoTranslation(x+(kStaveWidth/2),y-(kHeight-kConeOutRadius),0));
    mechStavVol->AddNode(volCoolTube,1,new TGeoTranslation(x-(kStaveWidth/2),y-(kHeight-kConeOutRadius),0));
  }

  if (fBuildLevel < 4) {
    TGeoTube *coolTubeW = new TGeoTube(0.,kConeInRadius,kStaveLength/2);
    TGeoVolume *volCoolTubeW= new TGeoVolume("pipeWater", coolTubeW, medWater);
    volCoolTubeW->SetFillColor(4);
    volCoolTubeW->SetLineColor(4);
    mechStavVol->AddNode(volCoolTubeW,0,new TGeoTranslation(x+(kStaveWidth/2),y-(kHeight-kConeOutRadius),0));
    mechStavVol->AddNode(volCoolTubeW,1,new TGeoTranslation(x-(kStaveWidth/2),y-(kHeight-kConeOutRadius),0));
  }

  //frequency of filament
  //n = 4 means very dense(4 filaments per interval)
  //n = 2 means dense(2 filaments per interval)
  Int_t n =4;
  Int_t loop = (Int_t)(kStaveLength/(4*kL1/n) + 2/n)-1;
  if (fBuildLevel < 3) {
    //Top CFRP Filament black-12 Carbon structure TGeoBBox (length,thickness,width)
    TGeoBBox *t2=new TGeoBBox(kS2,0.007/2,0.15/2);//(kS2,0.002,0.02);
    TGeoVolume *volT2=new TGeoVolume("TopFilament", t2, medM60J3K);
    volT2->SetLineColor(12);
    volT2->SetFillColor(12); 

    for(int i=1;i<loop;i++){  //i<60;i++){
      mechStavVol->AddNode(volT2,4*i+0,
				  new TGeoCombiTrans(x+kWidth,y+(2*kConeOutRadius),z-kStaveLength/2+(i*(4/n)*kL1)+kS1/2,//z-14.25+(i*2*kL1),
						     new TGeoRotation("volT2",90,90-kAlpha,90-kBeta)));
      mechStavVol->AddNode(volT2,4*i+1,
				  new TGeoCombiTrans(x-kWidth,y+(2*kConeOutRadius),z-kStaveLength/2+(i*(4/n)*kL1)+kS1/2,//z-14.25+(i*2*kL1),
						     new TGeoRotation("volT2",90,-90+kAlpha,-90+kBeta)));
      mechStavVol->AddNode(volT2,4*i+2,
				  new TGeoCombiTrans(x+kWidth,y+(2*kConeOutRadius),z-kStaveLength/2+(i*(4/n)*kL1)+kS1/2,//z-14.25+(i*2*kL1),
						     new TGeoRotation("volT2",90,-90+kAlpha,90-kBeta)));
      mechStavVol->AddNode(volT2,4*i+3,
				  new TGeoCombiTrans(x-kWidth,y+(2*kConeOutRadius),z-kStaveLength/2+(i*(4/n)*kL1)+kS1/2,//z-14.25+(i*2*kL1),  
						     new TGeoRotation("volT2",90,90-kAlpha,-90+kBeta)));
    }


    //Bottom CFRP Filament black-12 Carbon structure  TGeoBBox (thickness,width,length)
    TGeoBBox *t1=new TGeoBBox(0.007/2,0.15/2,kS1);//(0.002,0.02,kS1);
    TGeoVolume *volT1=new TGeoVolume("CFRPBottom", t1, medM60J3K);
    volT1->SetLineColor(12);
    volT1->SetFillColor(12); 

    for(int i=1;i<loop;i++){
      mechStavVol->AddNode(volT1,4*i+0,
				  new TGeoCombiTrans(x+kWidth,y-kHeight,z-kStaveLength/2+((4/n)*kL1*i)+kS1/2, //z-14.25+(i*2*kL1),  
						     new TGeoRotation("volT1",-90,kAlpha,0)));
      mechStavVol->AddNode(volT1,4*i+1,
				  new TGeoCombiTrans(x-kWidth,y-kHeight,z-kStaveLength/2+((4/n)*kL1*i)+kS1/2,  //z-14.25+(i*2*kL1), 
						     new TGeoRotation("volT1",90,kAlpha,0)));
      mechStavVol->AddNode(volT1,4*i+2,
				  new TGeoCombiTrans(x+kWidth,y-kHeight,z-kStaveLength/2+(i*(4/n)*kL1)+kS1/2, //z-14.25+(i*2*kL1), 
						     new TGeoRotation("volT1",-90,-kAlpha,0)));
      mechStavVol->AddNode(volT1,4*i+3,
				  new TGeoCombiTrans(x-kWidth,y-kHeight,z-kStaveLength/2+(i*(4/n)*kL1)+kS1/2, //z-14.25+(i*2*kL1), 
						     new TGeoRotation("volT1",-90,+kAlpha,0)));
    }
  }
   
  if (fBuildLevel < 2) {
    // Glue CFRP-Silicon layers TGeoBBox(thickness,width,kS1);
    TGeoBBox *tG=new TGeoBBox(0.0075/2,0.18/2,kS1);
    TGeoVolume *volTG=new TGeoVolume("Glue1", tG, medGlue);
    volTG->SetLineColor(5);
    volTG->SetFillColor(5); 

    for(int i=1;i<loop;i++){ //i<60;i++){
      mechStavVol->AddNode(volTG,4*i+0,
				  new TGeoCombiTrans(x+kWidth,y-0.16,z-kStaveLength/2+((4/n)*kL1*i)+kS1/2, //z-14.25+(2*kL1*i), 
						     new TGeoRotation("volTG",-90,kAlpha,0)));
      mechStavVol->AddNode(volTG,4*i+1,
				  new TGeoCombiTrans(x-kWidth,y-0.16,z-kStaveLength/2+((4/n)*kL1*i)+kS1/2, //z-14.25+(2*kL1*i), 
						     new TGeoRotation("volTG",90,kAlpha,0)));
      mechStavVol->AddNode(volTG,4*i+2,
				  new TGeoCombiTrans(x+kWidth,y-0.16,z-kStaveLength/2+((4/n)*i*kL1)+kS1/2, //z-14.25+(i*2*kL1), 
						     new TGeoRotation("volTG",-90,-kAlpha,0)));
      mechStavVol->AddNode(volTG,4*i+3,
				  new TGeoCombiTrans(x-kWidth,y-0.16,z-kStaveLength/2+(i*(4/n)*kL1)+kS1/2, //z-14.25+(i*2*kL1), 
						     new TGeoRotation("volTG",-90,+kAlpha,0)));
    }

    TGeoBBox *glue = new TGeoBBox(xsta, 0.005/2, zsta);
    TGeoVolume *volGlue=new TGeoVolume("Glue2", glue, medGlue);
    volGlue->SetLineColor(5);
    volGlue->SetFillColor(5); 
    //mechStavVol->AddNode(volGlue, 0, new TGeoCombiTrans(x, y-0.16, z, new TGeoRotation("",0, 0, 0)));
    mechStavVol->AddNode(volGlue, 1, new TGeoCombiTrans(x, y-0.165-fSensorThick-0.005, z, new TGeoRotation("",0, 0, 0)));
  }

  if (fBuildLevel < 1) {
    //Flex cable brown-28 TGeoBBox(width,thickness,length); 
    TGeoBBox *kapCable = new TGeoBBox(xsta, 0.01/2, zsta);
    TGeoVolume *volCable=new TGeoVolume("FlexCable", kapCable, medFlexCable);
    volCable->SetLineColor(28);
    volCable->SetFillColor(28); 
    mechStavVol->AddNode(volCable, 0, new TGeoCombiTrans(x, y-0.165-fSensorThick-0.005-0.01, z, new TGeoRotation("",0, 0, 0)));
 }

  // Done, return the stave structur
  return mechStavVol;
}


//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveModelInnerB1(const Double_t xsta,
						    const Double_t zsta,
						    const TGeoManager *mgr){
//
// Create the mechanical stave structure for Model 1 of TDR
//
// Input:
//         xsta : X length
//         zsta : Z length
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      22 Mar 2013  Chinorat Kobdaj
// Updated:      26 Apr 2013  Mario Sitta
//
  
  // Materials defined in AliITSUv1
  TGeoMedium *medAir    = mgr->GetMedium("ITS_AIR$");
  TGeoMedium *medWater  = mgr->GetMedium("ITS_WATER$");

  TGeoMedium *medM60J3K    = mgr->GetMedium("ITS_M60J3K$"); 
  TGeoMedium *medKapton    = mgr->GetMedium("ITS_KAPTON(POLYCH2)$");
  TGeoMedium *medGlue      = mgr->GetMedium("ITS_GLUE$");
  TGeoMedium *medFlexCable = mgr->GetMedium("ITS_FLEXCABLE$");

  // Local parameters
  Double_t kConeOutRadius = 0.15/2;
  //    Double_t kConeInRadius = 0.1430/2;
  Double_t kStaveLength = zsta*2;
  //    Double_t kStaveWidth = xsta*2-kConeOutRadius*2;
  Double_t kStaveWidth = xsta*2;
  Double_t kWidth = kStaveWidth/4;//1/2 of kWidth
  Double_t kStaveHeight = 0.3;
  Double_t kHeight = kStaveHeight/2;
  Double_t kAlpha = 90-33.;//90-30;
  Double_t kTheta = kAlpha*TMath::DegToRad();
  Double_t kS1 = kWidth/TMath::Sin(kTheta);
  Double_t kL1 = kWidth/TMath::Tan(kTheta);
  Double_t kS2 = TMath::Sqrt(kHeight*kHeight + kS1*kS1);//TMath::Sin(the2);
  Double_t kThe2 = TMath::ATan(kHeight/kS1);
  Double_t kBeta = kThe2*TMath::RadToDeg();
  Int_t  loop = (Int_t)((kStaveLength/(2*kL1))/2);
  

  TGeoVolume *mechStavVol = 0;

  char volname[30];
  snprintf(volname, 30, "%s%d_StaveStruct", AliITSUGeomTGeo::GetITSStavePattern(), fLayerNumber);
    

  // detailed structure ++++++++++++++
  Double_t z=0, y=-0.011+0.0150, x=0;

  // Polimide micro channels numbers
  Double_t yMC = y-kHeight+0.01;
  Int_t nb = (Int_t)(kStaveWidth/0.1)+1;
  Double_t xstaMC = (nb*0.1-0.08)/2;


  if (fBuildLevel < 5) {
    // world (trapezoid)
    TGeoXtru *mechStruct = new TGeoXtru(2); //z sections
    Double_t xv[5] = {kStaveWidth/2+0.1,kStaveWidth/2+0.1,0,-kStaveWidth/2-0.1,-kStaveWidth/2-0.1};
    Double_t yv[5] = {-kConeOutRadius*2-0.07,0,kStaveHeight,0,-kConeOutRadius*2-0.07};    
    mechStruct->DefinePolygon(5,xv,yv);
    mechStruct->DefineSection(0,-kStaveLength-0.1,0,0,1.);
    mechStruct->DefineSection(1,kStaveLength+0.1,0,0,1.);

    mechStavVol = new TGeoVolume(volname, mechStruct, medAir);
    mechStavVol->SetLineColor(12);
    mechStavVol->SetFillColor(12); 
    mechStavVol->SetVisibility(kTRUE);
      
    // Polimide micro channels numbers
    TGeoBBox *tM0=new TGeoBBox(xstaMC, 0.005/2, zsta);
    TGeoVolume *volTM0=new TGeoVolume("MicroChanCover", tM0, medKapton);
    volTM0->SetLineColor(35);
    volTM0->SetFillColor(35); 
    mechStavVol->AddNode(volTM0, 0, new TGeoCombiTrans(x,-0.0125+yMC, z, new TGeoRotation("",0, 0, 0)));
    mechStavVol->AddNode(volTM0, 1, new TGeoCombiTrans(x,+0.0125+yMC, z, new TGeoRotation("",0, 0, 0)));
      
    TGeoBBox *tM0b=new TGeoBBox(0.02/2, 0.02/2, zsta);
    TGeoVolume *volTM0b=new TGeoVolume("MicroChanWalls", tM0b, medKapton);
    volTM0b->SetLineColor(35);
    volTM0b->SetFillColor(35); 
    for (Int_t ib=0;ib<nb;ib++) {
      mechStavVol->AddNode(volTM0b, ib, new TGeoCombiTrans(x+ib*0.1-xstaMC+0.01,yMC, z, new TGeoRotation("",0, 0, 0)));
    }
      
  }
    
  if (fBuildLevel < 4) {
    // Water in Polimide micro channels
    TGeoBBox *water=new TGeoBBox(0.08/2, 0.02/2, zsta+0.1);
    TGeoVolume *volWater=new TGeoVolume("Water", water, medWater);
    volWater->SetLineColor(4);
    volWater->SetFillColor(4); 
    for (Int_t ib=0;ib<(nb-1);ib++) {
      mechStavVol->AddNode(volWater, ib, new TGeoCombiTrans(x+ib*0.1-xstaMC+0.06,yMC, z, new TGeoRotation("",0, 0, 0)));
    }
  }
    
  if (fBuildLevel < 3) {
    //Bottom filament CFRP black-12 Carbon structure TGeoBBox (thickness,width,length)
    Double_t filWidth = 0.04;
    Double_t filHeight= 0.02;
    TGeoBBox *t1=new TGeoBBox(filHeight/2,filWidth/2,kS1);
    TGeoVolume *volT1=new TGeoVolume("CFRPBottom", t1, medM60J3K);
    volT1->SetLineColor(12);
    volT1->SetFillColor(12); 
    for(int i=0;i<loop;i++){//i<30;i++){
      mechStavVol->AddNode(volT1,4*i+0,
				  new TGeoCombiTrans(x+kWidth,y-kHeight+0.04+filHeight/2,z-kStaveLength/2+(4*kL1)+kS1/2, 
						     new TGeoRotation("volT1",-90,kAlpha,0)));
      mechStavVol->AddNode(volT1,4*i+1,
				  new TGeoCombiTrans(x-kWidth,y-kHeight+0.04+filHeight/2,z-kStaveLength/2+(4*kL1*i)+kS1/2, 
						     new TGeoRotation("volT1",90,kAlpha,0)));
      mechStavVol->AddNode(volT1,4*i+2,
				  new TGeoCombiTrans(x+kWidth,y-kHeight+0.04+filHeight/2,z-kStaveLength/2+2*kL1+(i*4*kL1)+kS1/2, 
						     new TGeoRotation("volT1",-90,-kAlpha,0)));
      mechStavVol->AddNode(volT1,4*i+3,
				  new TGeoCombiTrans(x-kWidth,y-kHeight+0.04+filHeight/2,z-kStaveLength/2+2*kL1+(i*4*kL1)+kS1/2, 
						     new TGeoRotation("volT1",-90,+kAlpha,0)));
    }

      // Top filament CFRP black-12 Carbon structure TGeoBBox (length,thickness,width)
    TGeoBBox *t2=new TGeoBBox(kS2,filHeight/2,filWidth/2);
    TGeoVolume *volT2=new TGeoVolume("CFRPTop", t2, medM60J3K);
    volT2->SetLineColor(12);
    volT2->SetFillColor(12); 
    for(int i=0;i<loop;i++){ //i<30;i++){
      mechStavVol->AddNode(volT2,4*i+0,
				  new TGeoCombiTrans(x+kWidth,y+0.04+filHeight/2,z-kStaveLength/2+(i*4*kL1)+kS1/2,
						     new TGeoRotation("volT2",90,90-kAlpha,90-kBeta)));
      mechStavVol->AddNode(volT2,4*i+1,
				  new TGeoCombiTrans(x-kWidth,y+0.04+filHeight/2,z-kStaveLength/2+(i*4*kL1)+kS1/2,
						     new TGeoRotation("volT2",90,-90+kAlpha,-90+kBeta)));
      mechStavVol->AddNode(volT2,4*i+2,
				  new TGeoCombiTrans(x+kWidth,y+0.04+filHeight/2,z-kStaveLength/2+2*kL1+(i*4*kL1)+kS1/2,
						     new TGeoRotation("volT2",90,-90+kAlpha,90-kBeta)));
      mechStavVol->AddNode(volT2,4*i+3,
				  new TGeoCombiTrans(x-kWidth,y+0.04+filHeight/2,z-kStaveLength/2+2*kL1+(i*4*kL1)+kS1/2, 
						     new TGeoRotation("volT2",90,90-kAlpha,-90+kBeta)));
    }
  }

  if (fBuildLevel < 2) {
    // Glue between filament and polimide micro channel
    TGeoBBox *t3=new TGeoBBox(0.01/2,0.04,kS1);
    TGeoVolume *volT3=new TGeoVolume("FilamentGlue", t3, medGlue);
    volT3->SetLineColor(5);
    volT3->SetFillColor(5); 
    for(int i=0;i<loop;i++){//i<30;i++){
      mechStavVol->AddNode(volT3,4*i+0,
				  new TGeoCombiTrans(x+kWidth,y-kHeight+0.0325,z-kStaveLength/2+(4*kL1*i)+kS1/2, 
						     new TGeoRotation("volT1",-90,kAlpha,0)));
      mechStavVol->AddNode(volT3,4*i+1,
				  new TGeoCombiTrans(x-kWidth,y-kHeight+0.0325,z-kStaveLength/2+(4*kL1*i)+kS1/2, 
						     new TGeoRotation("volT1",90,kAlpha,0)));
      mechStavVol->AddNode(volT3,4*i+2,
				  new TGeoCombiTrans(x+kWidth,y-kHeight+0.0325,z-kStaveLength/2+2*kL1+(i*4*kL1)+kS1/2, 
						     new TGeoRotation("volT1",-90,-kAlpha,0)));
      mechStavVol->AddNode(volT3,4*i+3,
				  new TGeoCombiTrans(x-kWidth,y-kHeight+0.0325,z-kStaveLength/2+2*kL1+(i*4*kL1)+kS1/2, 
						     new TGeoRotation("volT1",-90,+kAlpha,0)));
    }
      
    // Glue microchannel and sensor
    TGeoBBox *glueM = new TGeoBBox(xsta, 0.01/2, zsta);
    TGeoVolume *volGlueM=new TGeoVolume("MicroChanGlue", glueM, medGlue);
    volGlueM->SetLineColor(5);
    volGlueM->SetFillColor(5); 
    mechStavVol->AddNode(volGlueM, 0, new TGeoCombiTrans(x, y-0.16, z, new TGeoRotation("",0, 0, 0)));

    // Glue sensor and kapton
    TGeoBBox *glue = new TGeoBBox(xsta, 0.005/2, zsta);
    TGeoVolume *volGlue=new TGeoVolume("SensorGlue", glue, medGlue);
    volGlue->SetLineColor(5);
    volGlue->SetFillColor(5); 
    mechStavVol->AddNode(volGlue, 1, new TGeoCombiTrans(x, y-0.165-fSensorThick-0.005, z, new TGeoRotation("",0, 0, 0)));
  }

  if (fBuildLevel < 1) {
    TGeoBBox *kapCable = new TGeoBBox(xsta, 0.01/2, zsta);
    TGeoVolume *volCable=new TGeoVolume("FlexCable", kapCable, medFlexCable);
    volCable->SetLineColor(28);
    volCable->SetFillColor(28); 
    mechStavVol->AddNode(volCable, 0, new TGeoCombiTrans(x, y-0.165-fSensorThick-0.005-0.01, z, new TGeoRotation("",0, 0, 0)));
  }
    
  // Done, return the stave structur
  return mechStavVol;

}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveModelInnerB21(const Double_t xsta,
						     const Double_t zsta,
						     const TGeoManager *mgr){
//
// Create the mechanical stave structure for Model 2.1 of TDR
//
// Input:
//         xsta : X length
//         zsta : Z length
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      22 Mar 2013  Chinorat Kobdaj
// Updated:      26 Apr 2013  Mario Sitta
//
  
  // Materials defined in AliITSUv1
  TGeoMedium *medAir    = mgr->GetMedium("ITS_AIR$");
  TGeoMedium *medWater  = mgr->GetMedium("ITS_WATER$");

  TGeoMedium *medM60J3K    = mgr->GetMedium("ITS_M60J3K$"); 
  TGeoMedium *medKapton    = mgr->GetMedium("ITS_KAPTON(POLYCH2)$");
  TGeoMedium *medGlue      = mgr->GetMedium("ITS_GLUE$");
  TGeoMedium *medFlexCable = mgr->GetMedium("ITS_FLEXCABLE$");
  TGeoMedium *medK13D2U2k  = mgr->GetMedium("ITS_K13D2U2k$");
  TGeoMedium *medFGS003    = mgr->GetMedium("ITS_FGS003$"); 
  TGeoMedium *medCarbonFleece = mgr->GetMedium("ITS_CarbonFleece$"); 

  // Local parameters
  Double_t kConeOutRadius =0.151384/2;
  Double_t kConeInRadius = 0.145034/2;
  Double_t kStaveLength = zsta;
  Double_t kStaveWidth = xsta*2;
  Double_t kWidth = (kStaveWidth+0.005)/4;
  Double_t kStaveHeigth = 0.33;//0.33;
  Double_t kHeight = (kStaveHeigth+0.025)/2;
  Double_t kAlpha = 57; //56.31;
  Double_t kTheta = kAlpha*TMath::DegToRad();
  Double_t kS1 = (kStaveWidth/4)/TMath::Sin(kTheta);
  Double_t kL1 = (kStaveWidth/4)/TMath::Tan(kTheta);
  Double_t kS2 = sqrt(kHeight*kHeight + kS1*kS1);//TMath::Sin(the2);
  Double_t kThe2 = TMath::ATan(kHeight/kS1);
  Double_t kBeta = kThe2*TMath::RadToDeg();
  // Double_t lay1 = 0.003157;
  Double_t kLay1 = 0.003;//Amec carbon
  // Double_t lay2 = 0.0043215;//C Fleece carbon
  Double_t kLay2 = 0.002;//C Fleece carbon
  Double_t kLay3 = 0.007;//K13D2U carbon
  Int_t  loop = (Int_t)(kStaveLength/(2*kL1));


  char volname[30];
  snprintf(volname, 30, "%s%d_StaveStruct", AliITSUGeomTGeo::GetITSStavePattern(), fLayerNumber);

  Double_t z=0, y=-(kConeOutRadius+0.03)+0.0385, x=0;

  TGeoVolume *mechStavVol = 0;

  if (fBuildLevel < 5) {
    // world (trapezoid)
    TGeoXtru *mechStruct = new TGeoXtru(2); //z sections
    Double_t xv[5] = {kStaveWidth/2+0.1,kStaveWidth/2+0.1,0,-kStaveWidth/2-0.1,-kStaveWidth/2-0.1};
    Double_t yv[5] = {-kConeOutRadius*2-0.07,0,kStaveHeigth,0,-kConeOutRadius*2-0.07};    
    mechStruct->DefinePolygon(5,xv,yv);
    mechStruct->DefineSection(0,-kStaveLength-0.1,0,0,1.);
    mechStruct->DefineSection(1,kStaveLength+0.1,0,0,1.);

    mechStavVol = new TGeoVolume(volname, mechStruct, medAir);
    mechStavVol->SetLineColor(12);
    mechStavVol->SetFillColor(12); 
    mechStavVol->SetVisibility(kTRUE);  
      
    //Pipe Kapton grey-35 
    TGeoCone *cone1 = new TGeoCone(kStaveLength,kConeInRadius,kConeOutRadius,kConeInRadius,kConeOutRadius);
    TGeoVolume *volCone1= new TGeoVolume("PolyimidePipe", cone1, medKapton);
    volCone1->SetFillColor(35);
    volCone1->SetLineColor(35);
    mechStavVol->AddNode(volCone1,1,new TGeoTranslation(x+0.25,y,z));
    mechStavVol->AddNode(volCone1,2,new TGeoTranslation(x-0.25,y,z));
  }

  if (fBuildLevel < 4) {
    
    TGeoTube *coolTubeW = new TGeoTube(0.,kConeInRadius,kStaveLength);
    TGeoVolume *volCoolTubeW= new TGeoVolume("Water", coolTubeW, medWater);
    volCoolTubeW->SetFillColor(4);
    volCoolTubeW->SetLineColor(4);
    mechStavVol->AddNode(volCoolTubeW,0,new TGeoTranslation(x-0.25,y,z));
    mechStavVol->AddNode(volCoolTubeW,1,new TGeoTranslation(x+0.25,y,z));
  }

  if (fBuildLevel < 3) {
    //top fillament
    // Top filament M60J black-12 Carbon structure TGeoBBox (length,thickness,width)
    TGeoBBox *t2=new TGeoBBox(kS2,0.02/2,0.04/2); //TGeoBBox *t2=new TGeoBBox(kS2,0.01,0.02);
    TGeoVolume *volT2=new TGeoVolume("TopFilament", t2, medM60J3K);
    volT2->SetLineColor(12);
    volT2->SetFillColor(12); 
    for(int i=0;i<loop;i++){// i<28;i++){
      mechStavVol->AddNode(volT2,i*4+1,new TGeoCombiTrans(x+kWidth,y+kHeight+(0.12/2)-0.014+0.007,z-kStaveLength+(i*4*kL1)+kS1/2, new TGeoRotation("volT2",90,90-kAlpha,90-kBeta)));
      mechStavVol->AddNode(volT2,i*4+2,new TGeoCombiTrans(x-kWidth,y+kHeight+(0.12/2)-0.014+0.007,z-kStaveLength+(i*4*kL1)+kS1/2, new TGeoRotation("volT2",90,-90+kAlpha,-90+kBeta)));
      mechStavVol->AddNode(volT2,i*4+3,new TGeoCombiTrans(x+kWidth,y+kHeight+(0.12/2)-0.014+0.007,z-kStaveLength+2*kL1+(i*4*kL1)+kS1/2, new TGeoRotation("volT2",90,-90+kAlpha,90-kBeta)));
      mechStavVol->AddNode(volT2,i*4+4,new TGeoCombiTrans(x-kWidth,y+kHeight+(0.12/2)-0.014+0.007,z-kStaveLength+2*kL1+(i*4*kL1)+kS1/2, new TGeoRotation("volT2",90,90-kAlpha,-90+kBeta)));
//    mechStavVol->AddNode(volT2,i*4+1,new TGeoCombiTrans(x+kWidth+0.0036,y+kHeight-(0.12/2)+0.072,z+kStaveLength+(i*4*kL1)+kS1/2, new TGeoRotation("volT2",90,90-kAlpha,90-kBeta)));

 }
 
    //wall side structure out
    TGeoBBox *box4 = new TGeoBBox(0.03/2,0.12/2,kStaveLength-0.50);
    TGeoVolume *plate4 = new TGeoVolume("WallOut",box4,medM60J3K);
    plate4->SetFillColor(35);
    plate4->SetLineColor(35);
    mechStavVol->AddNode(plate4,1,new TGeoCombiTrans(x+(2*kStaveWidth/4)-(0.03/2),y-0.0022-kConeOutRadius+0.12/2+0.007,z,new TGeoRotation("plate4",0,0,0)));
    mechStavVol->AddNode(plate4,2,new TGeoCombiTrans(x-(2*kStaveWidth/4)+(0.03/2),y-0.0022-kConeOutRadius+0.12/2+0.007,z,new TGeoRotation("plate4",0,0,0)));
    //wall side in
    TGeoBBox *box5 = new TGeoBBox(0.015/2,0.12/2,kStaveLength-0.50);
    TGeoVolume *plate5 = new TGeoVolume("WallIn",box5,medM60J3K);
    plate5->SetFillColor(12);
    plate5->SetLineColor(12);
    mechStavVol->AddNode(plate5,1,new TGeoCombiTrans(x+(2*kStaveWidth/4)-0.03-0.015/2,y-0.0022-kConeOutRadius+0.12/2+0.007,z,new TGeoRotation("plate5",0,0,0)));
    mechStavVol->AddNode(plate5,2,new TGeoCombiTrans(x-(2*kStaveWidth/4)+0.03+0.015/2,y-0.0022-kConeOutRadius+0.12/2+0.007,z,new TGeoRotation("plate5",0,0,0)));

     //Amec Thermasol red-2 cover tube FGS300
    TGeoConeSeg *cons1 = new TGeoConeSeg(kStaveLength-0.50,kConeOutRadius,kConeOutRadius+kLay1,kConeOutRadius,kConeOutRadius+kLay1,0,180);
    TGeoVolume *cone11 = new TGeoVolume("ThermasolPipeCover",cons1,medFGS003);
    cone11->SetFillColor(2);
    cone11->SetLineColor(2);
    mechStavVol->AddNode(cone11,1,new TGeoCombiTrans(x+0.25,y,z,new TGeoRotation("Cone11",0,0,0)));
    mechStavVol->AddNode(cone11,2,new TGeoCombiTrans(x-0.25,y,z,new TGeoRotation("Cone11",0,0,0)));

    TGeoBBox *box2 = new TGeoBBox((0.50-(2*kConeOutRadius))/2,kLay1/2,kStaveLength-0.50);
    TGeoVolume *plate2 = new TGeoVolume("ThermasolMiddle",box2,medFGS003);
    plate2->SetFillColor(2);
    plate2->SetLineColor(2);
    mechStavVol->AddNode(plate2,1,new TGeoCombiTrans(x,y-kConeOutRadius+(kLay1/2),z,new TGeoRotation("plate2",0,0,0)));

    TGeoBBox *box21 = new TGeoBBox((0.75-0.25-kConeOutRadius-kLay1)/2,kLay1/2,kStaveLength-0.50);
    TGeoVolume *plate21 = new TGeoVolume("ThermasolLeftRight",box21,medFGS003);
    plate21->SetFillColor(2);
    plate21->SetLineColor(2);
    mechStavVol->AddNode(plate21,1,new TGeoCombiTrans(x+0.25+kConeOutRadius+(0.75-0.25-kConeOutRadius)/2-(kLay1/2),y-kConeOutRadius+(kLay1/2),z,new TGeoRotation("plate21",0,0,0)));
    mechStavVol->AddNode(plate21,2,new TGeoCombiTrans(x-0.25-kConeOutRadius-(0.75-0.25-kConeOutRadius)/2+(kLay1/2),y-kConeOutRadius+(kLay1/2),z,new TGeoRotation("plate21",0,0,0)));

    TGeoBBox *box22 = new TGeoBBox((kLay1/2),kConeOutRadius/2,kStaveLength-0.50);
    TGeoVolume *plate22 = new TGeoVolume("ThermasolVertical",box22,medFGS003);
    plate22->SetFillColor(2);
    plate22->SetLineColor(2);
    mechStavVol->AddNode(plate22,1,new TGeoCombiTrans(x+0.25+kConeOutRadius+(kLay1/2),y-kConeOutRadius/2,z,new TGeoRotation("plate22",0,0,0)));
    mechStavVol->AddNode(plate22,2,new TGeoCombiTrans(x+0.25-kConeOutRadius-(kLay1/2),y-kConeOutRadius/2,z,new TGeoRotation("plate22",0,0,0)));
    mechStavVol->AddNode(plate22,3,new TGeoCombiTrans(x-0.25+kConeOutRadius+(kLay1/2),y-kConeOutRadius/2,z,new TGeoRotation("plate22",0,0,0)));
    mechStavVol->AddNode(plate22,4,new TGeoCombiTrans(x-0.25-kConeOutRadius-(kLay1/2),y-kConeOutRadius/2,z,new TGeoRotation("plate22",0,0,0)));

    //C Fleece
    TGeoConeSeg *cons2 = new TGeoConeSeg(kStaveLength-0.50,kConeOutRadius+kLay1,kConeOutRadius+kLay1+kLay2,kConeOutRadius+kLay1,kConeOutRadius+kLay1+kLay2,0,180); 
    TGeoVolume *cone12 = new TGeoVolume("CFleecePipeCover",cons2,medCarbonFleece);
    cone12->SetFillColor(28);
    cone12->SetLineColor(28);
    mechStavVol->AddNode(cone12,1,new TGeoCombiTrans(x+0.25,y,z,new TGeoRotation("Cone12",0,0,0)));
    mechStavVol->AddNode(cone12,2,new TGeoCombiTrans(x-0.25,y,z,new TGeoRotation("Cone12",0,0,0)));

    TGeoBBox *box3 = new TGeoBBox((0.50-(2*(kConeOutRadius+kLay1)))/2,kLay2/2,kStaveLength-0.50);
    TGeoVolume *plate3 = new TGeoVolume("CFleeceMiddle",box3,medCarbonFleece);
    plate3->SetFillColor(28);
    plate3->SetLineColor(28);
    mechStavVol->AddNode(plate3,1,new TGeoCombiTrans(x,y-kConeOutRadius+kLay1+(kLay2/2),z,new TGeoRotation("plate3",0,0,0)));

    TGeoBBox *box31 = new TGeoBBox((0.75-0.25-kConeOutRadius-kLay1)/2,kLay2/2,kStaveLength-0.50);
    TGeoVolume *plate31 = new TGeoVolume("CFleeceLeftRight",box31,medCarbonFleece);
    plate31->SetFillColor(28);
    plate31->SetLineColor(28);
    mechStavVol->AddNode(plate31,1,new TGeoCombiTrans(x+0.25+kConeOutRadius+kLay1+(0.75-0.25-kConeOutRadius-kLay1)/2,y-kConeOutRadius+kLay1+(kLay2/2),z,new TGeoRotation("plate31",0,0,0)));
    mechStavVol->AddNode(plate31,2,new TGeoCombiTrans(x-0.25-kConeOutRadius-kLay1-(0.75-0.25-kConeOutRadius-kLay1)/2,y-kConeOutRadius+kLay1+(kLay2/2),z,new TGeoRotation("plate31",0,0,0)));

    TGeoBBox *box32 = new TGeoBBox((kLay2/2),(kConeOutRadius-kLay1)/2,kStaveLength-0.50);
    TGeoVolume *plate32 = new TGeoVolume("CFleeceVertical",box32,medCarbonFleece);
    plate32->SetFillColor(28);
    plate32->SetLineColor(28);
    mechStavVol->AddNode(plate32,1,new TGeoCombiTrans(x+0.25+kConeOutRadius+kLay1+(kLay2/2),y+(kLay1-kConeOutRadius)/2,z,new TGeoRotation("plate32",0,0,0)));
    mechStavVol->AddNode(plate32,2,new TGeoCombiTrans(x+0.25-kConeOutRadius-kLay1-(kLay2/2),y+(kLay1-kConeOutRadius)/2,z,new TGeoRotation("plate32",0,0,0)));
    mechStavVol->AddNode(plate32,3,new TGeoCombiTrans(x-0.25+kConeOutRadius+kLay1+(kLay2/2),y+(kLay1-kConeOutRadius)/2,z,new TGeoRotation("plate32",0,0,0)));
    mechStavVol->AddNode(plate32,4,new TGeoCombiTrans(x-0.25-kConeOutRadius-kLay1-(kLay2/2),y+(kLay1-kConeOutRadius)/2,z,new TGeoRotation("plate32",0,0,0)));


    //K13D2U carbon plate
    TGeoBBox *box1 = new TGeoBBox(2*kWidth,kLay3/2,kStaveLength-0.50);
    TGeoVolume *plate1 = new TGeoVolume("CarbonPlate",box1,medK13D2U2k);
    plate1->SetFillColor(5);
    plate1->SetLineColor(5);
    mechStavVol->AddNode(plate1,1,new TGeoCombiTrans(x,y-(kConeOutRadius+(kLay3/2)),z,new TGeoRotation("plate1",0,0,0)));

    //C Fleece bottom plate 
    TGeoBBox *box6 = new TGeoBBox(2*kWidth,kLay2/2,kStaveLength-0.50);
    TGeoVolume *plate6 = new TGeoVolume("CFleeceBottom",box6,medCarbonFleece);
    plate6->SetFillColor(2);
    plate6->SetLineColor(2);
    mechStavVol->AddNode(plate6,1,new TGeoCombiTrans(x,y-(kConeOutRadius+kLay3+(kLay2/2)),z,new TGeoRotation("plate1",0,0,0)));
      
      
  }

  if (fBuildLevel < 2) {
    //Glue layers and kapton
    TGeoBBox *glue = new TGeoBBox(kStaveWidth/2, 0.005/2, zsta);
    TGeoVolume *volGlue=new TGeoVolume("Glue", glue, medGlue);
    volGlue->SetLineColor(5);
    volGlue->SetFillColor(5); 
    mechStavVol->AddNode(volGlue, 0, new TGeoCombiTrans(x,y-(kConeOutRadius+kLay3+(kLay2/2)+(0.01/2)), z, new TGeoRotation("",0, 0, 0)));
    mechStavVol->AddNode(volGlue, 1, new TGeoCombiTrans(x,y-(kConeOutRadius+kLay3+(kLay2/2)+0.01+fSensorThick+(0.01/2)), z, new TGeoRotation("",0, 0, 0)));
  }

  if (fBuildLevel < 1) {
    TGeoBBox *kapCable = new TGeoBBox(kStaveWidth/2, 0.01/2, zsta);
    TGeoVolume *volCable=new TGeoVolume("FlexCable", kapCable, medFlexCable);
    volCable->SetLineColor(28);
    volCable->SetFillColor(28); 
    mechStavVol->AddNode(volCable, 0, new TGeoCombiTrans(x, y-(kConeOutRadius+kLay3+(kLay2/2)+0.01+fSensorThick+0.01+(0.01/2)), z, new TGeoRotation("",0, 0, 0)));
  }
    

  // Done, return the stave structure
  return mechStavVol;
  
}

// new model22
//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveModelInnerB22(const Double_t xsta,
						     const Double_t zsta,
						     const TGeoManager *mgr){
//
// Create the mechanical stave structure for Model 2.2 of TDR
//
// Input:
//         xsta : X length
//         zsta : Z length
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      22 Mar 2013  Chinorat Kobdaj
// Updated:      26 Apr 2013  Mario Sitta
// Updated:      30 Apr 2013  Wanchaloem Poonsawat 
//
  
  // Materials defined in AliITSUv1
  TGeoMedium *medAir    = mgr->GetMedium("ITS_AIR$");
  TGeoMedium *medWater  = mgr->GetMedium("ITS_WATER$");

  TGeoMedium *medM60J3K    = mgr->GetMedium("ITS_M60J3K$"); 
  TGeoMedium *medKapton    = mgr->GetMedium("ITS_KAPTON(POLYCH2)$");
  TGeoMedium *medGlue      = mgr->GetMedium("ITS_GLUE$");
  TGeoMedium *medFlexCable = mgr->GetMedium("ITS_FLEXCABLE$");
  TGeoMedium *medK13D2U2k  = mgr->GetMedium("ITS_K13D2U2k$");
  TGeoMedium *medFGS003    = mgr->GetMedium("ITS_FGS003$"); 
  TGeoMedium *medCarbonFleece = mgr->GetMedium("ITS_CarbonFleece$"); 

  // Local parameters
  Double_t kConeOutRadius =(0.1024+0.0025)/2;//0.107/2;
  Double_t kConeInRadius = 0.1024/2;//0.10105/2
  Double_t kStaveLength = zsta;
  Double_t kStaveWidth = xsta*2;
  Double_t kWidth = (kStaveWidth)/4;
  Double_t kStaveHeight = 0.283;//0.33;
  Double_t kHeight = (kStaveHeight)/2;
  Double_t kAlpha = 57;//56.31;
  Double_t kTheta = kAlpha*TMath::DegToRad();
  Double_t kS1 = ((kStaveWidth)/4)/TMath::Sin(kTheta);
  Double_t kL1 = (kStaveWidth/4)/TMath::Tan(kTheta);
  Double_t kS2 = sqrt(kHeight*kHeight + kS1*kS1);//TMath::Sin(kThe2);
  Double_t kThe2 = TMath::ATan(kHeight/(0.375-0.036));
  Double_t kBeta = kThe2*TMath::RadToDeg();
  Double_t klay1 = 0.003;//Amec carbon
  Double_t klay2 = 0.002;//C Fleece carbon
  Double_t klay3 = 0.007;//CFplate K13D2U carbon
  Double_t klay4 = 0.007;//GluekStaveLength/2
  Double_t klay5 = 0.01;//Flex cable
  Double_t kTopVertexMaxWidth = 0.072;
  Double_t kTopVertexHeight = 0.04;
  Double_t kSideVertexMWidth = 0.052;
  Double_t kSideVertexHeight = 0.11; 

 
  Int_t  loop = (Int_t)(kStaveLength/(2*kL1));

  char volname[30];
  snprintf(volname, 30, "%s%d_StaveStruct", AliITSUGeomTGeo::GetITSStavePattern(), fLayerNumber);

  Double_t z=0, y=-(2*kConeOutRadius)+klay1+klay2+fSensorThick/2-0.0004, x=0;

  TGeoVolume *mechStavVol = 0;

  if (fBuildLevel < 5) {
    // world (trapezoid)
    TGeoXtru *mechStruct = new TGeoXtru(2); //z sections
    Double_t xv[6] = {kStaveWidth/2,kStaveWidth/2,0.012,-0.012,-kStaveWidth/2,-kStaveWidth/2}; 
    /* Double_t yv[6] = {-2*(kConeOutRadius+klay1+1.5*klay2+klay3+klay4+fSensorThick+klay5),
                        0-0.02,kStaveHeight+0.01,kStaveHeight+0.01,0-0.02,
			-2*(kConeOutRadius+klay1+1.5*klay2+klay3+klay4+fSensorThick+klay5)};  // (kConeOutRadius*2)-0.0635 */
    Double_t yv[6] = {-(kConeOutRadius*2)-0.07295,0-0.02,kStaveHeight+0.01,kStaveHeight+0.01,0-0.02,-(kConeOutRadius*2)-0.07295};  // (kConeOutRadius*2)-0.064
    mechStruct->DefinePolygon(6,xv,yv);
    mechStruct->DefineSection(0,-kStaveLength,0,0,1.);
    mechStruct->DefineSection(1,kStaveLength,0,0,1.);

    mechStavVol = new TGeoVolume(volname, mechStruct, medAir);
    mechStavVol->SetLineColor(12);
    mechStavVol->SetFillColor(12); 
    mechStavVol->SetVisibility(kTRUE);  
      
    //Polyimide Pipe Kapton grey-35 
    TGeoCone *cone1 = new TGeoCone(kStaveLength,kConeInRadius,kConeOutRadius-0.0001,kConeInRadius,kConeOutRadius-0.0001);
    TGeoVolume *volCone1= new TGeoVolume("PolyimidePipe", cone1, medKapton);
    volCone1->SetFillColor(35);
    volCone1->SetLineColor(35);
    mechStavVol->AddNode(volCone1,1,new TGeoTranslation(x+0.25,y,z));
    mechStavVol->AddNode(volCone1,2,new TGeoTranslation(x-0.25,y,z));
    }

  if (fBuildLevel < 4) {
    TGeoTube *coolTubeW = new TGeoTube(0.,kConeInRadius-0.0001,kStaveLength);
    TGeoVolume *volCoolTubeW= new TGeoVolume("Water", coolTubeW, medWater);
    volCoolTubeW->SetFillColor(4);
    volCoolTubeW->SetLineColor(4);
    mechStavVol->AddNode(volCoolTubeW,0,new TGeoTranslation(x-0.25,y,z));
    mechStavVol->AddNode(volCoolTubeW,1,new TGeoTranslation(x+0.25,y,z));
  }

  if (fBuildLevel < 3) {
    //top fillament
    // Top filament M60J black-12 Carbon structure TGeoBBox (length,thickness,width)
    TGeoBBox *t2=new TGeoBBox(kS2-0.028,0.02/2,0.02/2); //0.04/2//TGeoBBox *t2=new TGeoBBox(kS2,0.01,0.02);//kS2-0.03 old Config.C
    TGeoVolume *volT2=new TGeoVolume("TopFilament", t2, medM60J3K);
    volT2->SetLineColor(12);
    volT2->SetFillColor(12); 
    for(int i=0;i<loop;i++){// i<28;i++){
      // 1) Front Left Top Filament
       mechStavVol->AddNode(volT2,i*4+1,new TGeoCombiTrans(x+kWidth+0.0036,y+kHeight+0.01,z-kStaveLength+0.1+(i*4*kL1)+kS1/2, new TGeoRotation("volT2",90,90-kAlpha,90-kBeta)));
      // 2) Front Right Top Filament
      mechStavVol->AddNode(volT2,i*4+2,new TGeoCombiTrans(x-kWidth-0.0036,y+kHeight+0.01,z-kStaveLength+0.1+(i*4*kL1)+kS1/2, new TGeoRotation("volT2",90,-90+kAlpha,-90+kBeta)));
      // 3) Back Left  Top Filament
      mechStavVol->AddNode(volT2,i*4+3,new TGeoCombiTrans(x+kWidth+0.0036,y+kHeight+0.01,z-kStaveLength+0.1+2*kL1+(i*4*kL1)+kS1/2, new TGeoRotation("volT2",90,-90+kAlpha,90-kBeta)));
      // 4) Back Right Top Filament
      mechStavVol->AddNode(volT2,i*4+4,new TGeoCombiTrans(x-kWidth-0.0036,y+kHeight+0.01,z-kStaveLength+0.1+2*kL1+(i*4*kL1)+kS1/2, new TGeoRotation("volT2",90,90-kAlpha,-90+kBeta)));
   }
 
     //Vertex  structure 

      //top ver trd1
      TGeoTrd1 *trd1 = new TGeoTrd1(0,kTopVertexMaxWidth/2,kStaveLength,kTopVertexHeight/2);
      TGeoVolume *ibdv = new TGeoVolume("TopVertex",trd1,medM60J3K);
      ibdv->SetFillColor(12);
      ibdv->SetLineColor(12);
      mechStavVol->AddNode(ibdv,1,new TGeoCombiTrans(x,y+kStaveHeight+0.03,z,new TGeoRotation("ibdv",0.,-90,0)));//y+kStaveHeight+0.056

      //left trd2
      TGeoTrd1 *trd2 = new TGeoTrd1(0,kSideVertexMWidth/2,kStaveLength, kSideVertexHeight/2);
      TGeoVolume *ibdv2 = new TGeoVolume("LeftVertex",trd2,medM60J3K);
      ibdv2->SetFillColor(12);
      ibdv2->SetLineColor(12);
      mechStavVol->AddNode(ibdv2,1,new TGeoCombiTrans(x+kStaveWidth/2-0.06,y-0.0348,z,new TGeoRotation("ibdv2",-103.3,90,0))); //x-kStaveWidth/2-0.09 old Config.C y-0.0355,

      //right trd3
      TGeoTrd1 *trd3 = new TGeoTrd1(0,kSideVertexMWidth/2,kStaveLength, kSideVertexHeight/2);
      TGeoVolume *ibdv3 = new TGeoVolume("RightVertex",trd3,medM60J3K);
      ibdv3->SetFillColor(12);
      ibdv3->SetLineColor(12);
      mechStavVol->AddNode(ibdv3,1,new TGeoCombiTrans(x-kStaveWidth/2+0.06,y-0.0348,z,new TGeoRotation("ibdv3",103.3,90,0))); //x-kStaveWidth/2+0.09 old Config.C
      
     //Carbon Fleece
      TGeoConeSeg *cons2 = new TGeoConeSeg(zsta,kConeOutRadius+klay1,kConeOutRadius+klay1+klay2,kConeOutRadius+klay1,kConeOutRadius+klay1+klay2,0,180); 
      TGeoVolume *cone12 = new TGeoVolume("CarbonFleecePipeCover",cons2,medCarbonFleece);
      cone12->SetFillColor(28);
      cone12->SetLineColor(28);
      mechStavVol->AddNode(cone12,1,new TGeoCombiTrans(x+0.25,y,z,new TGeoRotation("cone12",0,0,0)));
      mechStavVol->AddNode(cone12,2,new TGeoCombiTrans(x-0.25,y,z,new TGeoRotation("cone12",0,0,0)));

      TGeoBBox *box3 = new TGeoBBox((0.50-(2*(kConeOutRadius+klay1)))/2,klay2/2,zsta);//kStaveLength-0.50);
      TGeoVolume *plate3 = new TGeoVolume("CarbonFleeceMiddle",box3,medCarbonFleece);
      plate3->SetFillColor(28);
      plate3->SetLineColor(28);
      mechStavVol->AddNode(plate3,1,new TGeoCombiTrans(x,y-kConeOutRadius+klay1+(klay2/2),z,new TGeoRotation("plate3",0,0,0)));

      TGeoBBox *box31 = new TGeoBBox((0.75-0.25-kConeOutRadius-klay1)/2+0.0025,klay2/2,zsta);
      TGeoVolume *plate31 = new TGeoVolume("CarbonFleeceLeftRight",box31,medCarbonFleece);
      plate31->SetFillColor(28);
      plate31->SetLineColor(28);
      mechStavVol->AddNode(plate31,1,new TGeoCombiTrans(x+0.25+kConeOutRadius+klay1+(0.75-0.25-kConeOutRadius-klay1)/2,y-kConeOutRadius+klay1+(klay2/2),z,new TGeoRotation("plate31",0,0,0)));
      mechStavVol->AddNode(plate31,2,new TGeoCombiTrans(x-0.25-kConeOutRadius-klay1-(0.75-0.25-kConeOutRadius-klay1)/2,y-kConeOutRadius+klay1+(klay2/2),z,new TGeoRotation("plate31",0,0,0)));

      TGeoBBox *box32 = new TGeoBBox((klay2/2),(kConeOutRadius-klay1)/2,zsta);
      TGeoVolume *plate32 = new TGeoVolume("CarbonFleeceVertical",box32,medCarbonFleece);
      plate32->SetFillColor(28);
      plate32->SetLineColor(28);
      mechStavVol->AddNode(plate32,1,new TGeoCombiTrans(x+0.25+kConeOutRadius+klay1+(klay2/2),y+(klay1-kConeOutRadius)/2,z,new TGeoRotation("plate32",0,0,0)));
      mechStavVol->AddNode(plate32,2,new TGeoCombiTrans(x+0.25-kConeOutRadius-klay1-(klay2/2),y+(klay1-kConeOutRadius)/2,z,new TGeoRotation("plate32",0,0,0)));
      mechStavVol->AddNode(plate32,3,new TGeoCombiTrans(x-0.25+kConeOutRadius+klay1+(klay2/2),y+(klay1-kConeOutRadius)/2,z,new TGeoRotation("plate32",0,0,0)));
      mechStavVol->AddNode(plate32,4,new TGeoCombiTrans(x-0.25-kConeOutRadius-klay1-(klay2/2),y+(klay1-kConeOutRadius)/2,z,new TGeoRotation("plate32",0,0,0)));

     //Amec Thermasol red-2 cover tube FGS300 or Carbon Paper
      TGeoConeSeg *cons1 = new TGeoConeSeg(zsta,kConeOutRadius,kConeOutRadius+klay1-0.0001,kConeOutRadius,kConeOutRadius+klay1-0.0001,0,180);//kConeOutRadius+klay1-0.0001
      TGeoVolume *cone11 = new TGeoVolume("ThermasolPipeCover",cons1,medFGS003);
      cone11->SetFillColor(2);
      cone11->SetLineColor(2);
      mechStavVol->AddNode(cone11,1,new TGeoCombiTrans(x+0.25,y,z,new TGeoRotation("cone11",0,0,0)));
      mechStavVol->AddNode(cone11,2,new TGeoCombiTrans(x-0.25,y,z,new TGeoRotation("cone11",0,0,0)));

      TGeoBBox *box2 = new TGeoBBox((0.50-(2*kConeOutRadius))/2,(klay1/2),zsta);//kStaveLength-0.50);
      TGeoVolume *plate2 = new TGeoVolume("ThermasolMiddle",box2,medFGS003);
      plate2->SetFillColor(2);
      plate2->SetLineColor(2);
      mechStavVol->AddNode(plate2,1,new TGeoCombiTrans(x,y-kConeOutRadius+(klay1/2),z,new TGeoRotation("plate2",0,0,0)));

      TGeoBBox *box21 = new TGeoBBox((0.75-0.25-kConeOutRadius-klay1)/2+0.0025,(klay1/2),zsta);
      TGeoVolume *plate21 = new TGeoVolume("ThermasolLeftRight",box21,medFGS003);
      plate21->SetFillColor(2);
      plate21->SetLineColor(2);
      mechStavVol->AddNode(plate21,1,new TGeoCombiTrans(x+0.25+kConeOutRadius+(0.75-0.25-kConeOutRadius)/2-(klay1/2)+0.0025,y-kConeOutRadius+(klay1/2),z,new TGeoRotation("plate21",0,0,0)));
      mechStavVol->AddNode(plate21,2,new TGeoCombiTrans(x-0.25-kConeOutRadius-(0.75-0.25-kConeOutRadius)/2+(klay1/2)-0.0025,y-kConeOutRadius+(klay1/2),z,new TGeoRotation("plate21",0,0,0)));

      TGeoBBox *box22 = new TGeoBBox((klay1/2),kConeOutRadius/2,zsta);
      TGeoVolume *plate22 = new TGeoVolume("ThermasolVertical",box22,medFGS003);
      plate22->SetFillColor(2);
      plate22->SetLineColor(2);
      mechStavVol->AddNode(plate22,1,new TGeoCombiTrans(x+0.25+kConeOutRadius+(klay1/2),y-kConeOutRadius/2,z,new TGeoRotation("plate22",0,0,0)));
      mechStavVol->AddNode(plate22,2,new TGeoCombiTrans(x+0.25-kConeOutRadius-(klay1/2),y-kConeOutRadius/2,z,new TGeoRotation("plate22",0,0,0)));
      mechStavVol->AddNode(plate22,3,new TGeoCombiTrans(x-0.25+kConeOutRadius+(klay1/2),y-kConeOutRadius/2,z,new TGeoRotation("plate22",0,0,0)));
      mechStavVol->AddNode(plate22,4,new TGeoCombiTrans(x-0.25-kConeOutRadius-(klay1/2),y-kConeOutRadius/2,z,new TGeoRotation("plate22",0,0,0)));

     //K13D2U CF plate
      TGeoBBox *box1 = new TGeoBBox(2*kWidth,(klay3)/2,zsta);
      TGeoVolume *plate1 = new TGeoVolume("CFPlate",box1,medK13D2U2k);
      plate1->SetFillColor(5);
      plate1->SetLineColor(5);
      mechStavVol->AddNode(plate1,1,new TGeoCombiTrans(x,y-(kConeOutRadius+(klay3/2)),z,new TGeoRotation("plate1",0,0,0)));

     //C Fleece bottom plate 
      TGeoBBox *box6 = new TGeoBBox(2*kWidth,(klay2)/2,zsta);
      TGeoVolume *plate6 = new TGeoVolume("CarbonFleeceBottom",box6,medCarbonFleece);
      plate6->SetFillColor(2);
      plate6->SetLineColor(2);
      mechStavVol->AddNode(plate6,1,new TGeoCombiTrans(x,y-(kConeOutRadius+klay3+(klay2/2)),z,new TGeoRotation("plate6",0,0,0)));

    }
   if (fBuildLevel < 2) {
      //Glue klayers and kapton
     TGeoBBox *glue = new TGeoBBox(kStaveWidth/2, (klay4)/2, zsta);
      TGeoVolume *volGlue=new TGeoVolume("Glue", glue, medGlue);
      volGlue->SetLineColor(5);
      volGlue->SetFillColor(5); 
      // mechStavVol->AddNode(volGlue, 0, new TGeoCombiTrans(x,y-(kConeOutRadius+klay3+klay2+(klay4/2)), z, new TGeoRotation("",0, 0, 0)));
      mechStavVol->AddNode(volGlue, 0, new TGeoCombiTrans(x,y-(kConeOutRadius+klay3+klay2+(klay4)/2)+0.00005, z, new TGeoRotation("",0, 0, 0)));
    }

     if (fBuildLevel < 1) {
     //Flex Cable or Bus
      TGeoBBox *kapCable = new TGeoBBox(kStaveWidth/2, klay5/2, zsta);//klay5/2
      TGeoVolume *volCable=new TGeoVolume("FlexCable", kapCable, medFlexCable);
      volCable->SetLineColor(28);
      volCable->SetFillColor(28); 
      //      mechStavVol->AddNode(volCable, 0, new TGeoCombiTrans(x, y-(kConeOutRadius+klay3+klay2+klay4+fSensorThick+(klay5)/2)+0.0002, z, new TGeoRotation("",0, 0, 0)));
      mechStavVol->AddNode(volCable, 0, new TGeoCombiTrans(x, y-(kConeOutRadius+klay3+klay2+klay4+(klay5)/2), z, new TGeoRotation("",0, 0, 0)));
      }
    // Done, return the stave structe
    return mechStavVol;
}

// model3
//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveModelInnerB3(const Double_t xsta,
						    const Double_t zsta,
						    const TGeoManager *mgr){
//
// Create the mechanical stave structure for Model 3 of TDR
//
// Input:
//         xsta : X length
//         zsta : Z length
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      28 May 2013  Chinorat Kobdaj
// Updated:                   Mario Sitta
// Updated:                   Wanchaloem Poonsawat 
//
  
  // Materials defined in AliITSUv1
  TGeoMedium *medAir    = mgr->GetMedium("ITS_AIR$");
  TGeoMedium *medWater  = mgr->GetMedium("ITS_WATER$");

  TGeoMedium *medM60J3K    = mgr->GetMedium("ITS_M60J3K$"); 
  TGeoMedium *medKapton    = mgr->GetMedium("ITS_KAPTON(POLYCH2)$");
  TGeoMedium *medGlue      = mgr->GetMedium("ITS_GLUE$");
  TGeoMedium *medFlexCable = mgr->GetMedium("ITS_FLEXCABLE$");
  //TGeoMedium *medK13D2U2k  = mgr->GetMedium("ITS_K13D2U2k$");
  //TGeoMedium *medFGS003    = mgr->GetMedium("ITS_FGS003$"); 
  //TGeoMedium *medCarbonFleece = mgr->GetMedium("ITS_CarbonFleece$"); 

  // Local parameters
    Double_t kConeOutRadius = 0.15/2;
    Double_t kStaveLength = zsta*2;
    Double_t kStaveWidth = xsta*2;
    Double_t w = kStaveWidth/4;//1/2 of W
    Double_t staveHeight = 0.3;
    Double_t h = staveHeight/2;
    Double_t alpha = 90-33.;//90-30;
    Double_t the1 = alpha*TMath::DegToRad();
    Double_t s1 = w/TMath::Sin(the1);
    Double_t l = w/TMath::Tan(the1);
    Double_t s2 = TMath::Sqrt(h*h + s1*s1);//TMath::Sin(the2);
    Double_t the2 = TMath::ATan(h/s1);
    Double_t beta = the2*TMath::RadToDeg();
    Double_t klay4 = 0.007; //Glue
    Double_t klay5 = 0.01; //Flexcable
    Int_t  loop = (Int_t)((kStaveLength/(2*l))/2);
    Double_t hh = 0.01;
       Double_t ang1 = 0*TMath::DegToRad();
       Double_t ang2 = 0*TMath::DegToRad();
       Double_t ang3 = 0*TMath::DegToRad();
       Int_t chips = 4;
       Double_t headWidth=0.25;
       Double_t smcLength=kStaveLength/chips-2*headWidth;//6.25;
       Double_t smcWidth=kStaveWidth;
       Double_t smcSide1Thick=0.03;
       Double_t vaporThick=0.032;
       Double_t liquidThick=0.028;
       Double_t smcSide2Thick=0.01;
       Double_t smcSide3Thick=0.0055;
       Double_t smcSide4Thick=0.0095;
       Double_t smcSide5Thick=0.0075;
       Double_t smcSpace=0.01;


    char volname[30];
    snprintf(volname, 30, "%s%d_StaveStruct", AliITSUGeomTGeo::GetITSStavePattern(), fLayerNumber);
    
    // detailed structure ++++++++++++++
    Double_t z=0, y=0-0.007, x=0;

    // Polimide micro channels numbers
    Double_t yMC = y-h+0.01;
    Int_t nb = (Int_t)(kStaveWidth/0.1)+1;
    Double_t xstaMC = (nb*0.1-0.08)/2;


    TGeoVolume *mechStavVol = 0;
    if (fBuildLevel < 5) {
      // world (trapezoid)
      TGeoXtru *mechStruct = new TGeoXtru(2); //z sections
      Double_t xv[5] = {kStaveWidth/2+0.1,kStaveWidth/2+0.1,0,-kStaveWidth/2-0.1,-kStaveWidth/2-0.1};
      Double_t yv[5] = {-kConeOutRadius*2-0.07,0,staveHeight,0,-kConeOutRadius*2-0.07};    
      mechStruct->DefinePolygon(5,xv,yv);
      mechStruct->DefineSection(0,-kStaveLength-0.1,0,0,1.);
      mechStruct->DefineSection(1,kStaveLength+0.1,0,0,1.);
      mechStavVol = new TGeoVolume(volname, mechStruct, medAir);
      mechStavVol->SetLineColor(12);
      mechStavVol->SetFillColor(12); 
      mechStavVol->SetVisibility(kTRUE);

       // Silicon micro channels numbers
      
      TGeoBBox *tM0a=new TGeoBBox(smcWidth/2, 0.003/2, headWidth/2);
      TGeoVolume *volTM0a=new TGeoVolume("microChanTop1", tM0a, medKapton);
      volTM0a->SetLineColor(35);
      volTM0a->SetFillColor(35); 

      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0a, 0, new TGeoCombiTrans(x,yMC+0.03, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth+smcLength/2+(headWidth/2), new TGeoRotation("",ang1, ang2, ang3)));
      mechStavVol->AddNode(volTM0a, 1, new TGeoCombiTrans(x,yMC+0.03, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth-smcLength/2-(headWidth/2), new TGeoRotation("",ang1, ang2, ang3)));
      }
      TGeoBBox *tM0c=new TGeoBBox(0.3/2, 0.003/2,smcLength/2);
      TGeoVolume *volTM0c=new TGeoVolume("microChanTop2", tM0c, medKapton);
      volTM0c->SetLineColor(35);
      volTM0c->SetFillColor(35); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0c, 0, new TGeoCombiTrans(x+(smcWidth/2)-(0.3/2),yMC+0.03, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));
      mechStavVol->AddNode(volTM0c, 1, new TGeoCombiTrans(x-(smcWidth/2)+(0.3/2),yMC+0.03, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0c1=new TGeoBBox(0.2225/2, 0.003/2,smcLength/2);
      TGeoVolume *volTM0c1=new TGeoVolume("microChanBot1", tM0c1, medKapton);
      volTM0c1->SetLineColor(6);
      volTM0c1->SetFillColor(6); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0c1, 0, new TGeoCombiTrans(x+smcWidth/2-(smcSide1Thick)-(vaporThick)-(smcSide2Thick)-(smcSide3Thick)-(0.2225/2),yMC+0.03-hh-(0.003), z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      mechStavVol->AddNode(volTM0c1, 1, new TGeoCombiTrans(x-smcWidth/2+(smcSide1Thick)+(liquidThick)+(smcSide2Thick)+(smcSide4Thick)+(0.2225/2),yMC+0.03-hh-(0.003), z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0c2=new TGeoBBox(0.072/2, 0.003/2,smcLength/2);
      TGeoVolume *volTM0c2=new TGeoVolume("microChanBot2", tM0c2, medKapton);
      volTM0c2->SetLineColor(35);
      volTM0c2->SetFillColor(35); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0c2, 0, new TGeoCombiTrans(x+smcWidth/2-(0.072/2),yMC+0.03-(0.035+0.0015)-(0.003)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0c2r=new TGeoBBox(0.068/2, 0.003/2,smcLength/2);
      TGeoVolume *volTM0c2r=new TGeoVolume("microChanBot3", tM0c2r, medKapton);
      volTM0c2r->SetLineColor(35);
      volTM0c2r->SetFillColor(35); 
      for(Int_t  mo=1; mo<=chips; mo++) {      
      mechStavVol->AddNode(volTM0c2r, 0, new TGeoCombiTrans(x-smcWidth/2+(0.068/2),yMC+0.03-(0.035+0.0015)-(0.003)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0d=new TGeoBBox(smcSide1Thick/2, 0.035/2,smcLength/2);
      TGeoVolume *volTM0d=new TGeoVolume("microChanSide1", tM0d, medKapton);
      volTM0d->SetLineColor(12);
      volTM0d->SetFillColor(12); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0d, 0, new TGeoCombiTrans(x+smcWidth/2-(smcSide1Thick/2),yMC+0.03-0.0015-(0.035)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      mechStavVol->AddNode(volTM0d, 1, new TGeoCombiTrans(x-smcWidth/2+(smcSide1Thick/2),yMC+0.03-0.0015-(0.035)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }

      TGeoBBox *tM0d1=new TGeoBBox(smcSide2Thick/2, 0.035/2,smcLength/2);
      TGeoVolume *volTM0d1=new TGeoVolume("microChanSide2", tM0d1, medKapton);
      volTM0d1->SetLineColor(12);
      volTM0d1->SetFillColor(12); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0d1, 0, new TGeoCombiTrans(x+smcWidth/2-(smcSide1Thick)-(vaporThick)-(smcSide2Thick/2),yMC+0.03-(0.003+0.035)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      mechStavVol->AddNode(volTM0d1, 1, new TGeoCombiTrans(x-smcWidth/2+(smcSide1Thick)+(liquidThick)+(smcSide2Thick/2),yMC+0.03-(0.003+0.035)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0d2=new TGeoBBox(smcSide3Thick/2, (hh+0.003)/2, smcLength/2);
      TGeoVolume *volTM0d2=new TGeoVolume("microChanSide3", tM0d2, medKapton);
      volTM0d2->SetLineColor(12);
      volTM0d2->SetFillColor(12); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0d2, 0, new TGeoCombiTrans(x+smcWidth/2-(smcSide1Thick)-(vaporThick)-(smcSide2Thick)-(smcSide3Thick/2),yMC+0.03-(0.003+hh+0.003)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0d2r=new TGeoBBox(smcSide4Thick/2, (hh+0.003)/2, smcLength/2);
      TGeoVolume *volTM0d2r=new TGeoVolume("microChanSide4", tM0d2r, medKapton);
      volTM0d2r->SetLineColor(12);
      volTM0d2r->SetFillColor(12); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0d2r, 0, new TGeoCombiTrans(x-smcWidth/2+(smcSide1Thick)+(liquidThick)+(smcSide2Thick)+(smcSide4Thick/2),yMC+0.03-(0.003+hh+0.003)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0e=new TGeoBBox(smcSide5Thick/2, hh/2,smcLength/2);
      TGeoVolume *volTM0e=new TGeoVolume("microChanSide5", tM0e, medKapton);    
      volTM0e->SetLineColor(12);
      volTM0e->SetFillColor(12); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      for (Int_t ie=0;ie<11;ie++) {
	mechStavVol->AddNode(volTM0e, 0, new TGeoCombiTrans(x-(ie*(smcSpace+smcSide5Thick))+smcWidth/2-(smcSide1Thick)-(vaporThick)-(smcSide2Thick)-(smcSide3Thick)-smcSpace-(smcSide5Thick/2),yMC+0.03-(0.003+hh)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
	mechStavVol->AddNode(volTM0e, 1, new TGeoCombiTrans(x+(ie*(smcSpace+smcSide5Thick))-smcWidth/2+(smcSide1Thick)+(liquidThick)+(smcSide2Thick)+(smcSide4Thick)+smcSpace+(smcSide5Thick/2),yMC+0.03-(0.003+hh)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
         }
      }
      
      TGeoBBox *tM0f=new TGeoBBox(0.02/2, hh/2, smcLength/2);
      TGeoVolume *volTM0f=new TGeoVolume("microChanTop3", tM0f, medKapton);
      //Double_t smcChannels=12;
      Double_t smcCloseWallvapor=smcWidth/2-smcSide1Thick-vaporThick-smcSide2Thick-smcSide3Thick-12*smcSpace-11*smcSide5Thick;
      Double_t smcCloseWallliquid=smcWidth/2-smcSide1Thick-liquidThick-smcSide2Thick-smcSide4Thick-12*smcSpace-11*smcSide5Thick;
      volTM0f->SetLineColor(12);
      volTM0f->SetFillColor(12); 
      for(Int_t  mo=1; mo<=chips; mo++) {
       mechStavVol->AddNode(volTM0f, 0, new TGeoCombiTrans(x+smcCloseWallvapor-(0.02)/2,yMC+0.03-(0.003+hh)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
       mechStavVol->AddNode(volTM0f, 1, new TGeoCombiTrans(x-smcCloseWallliquid+(0.02)/2,yMC+0.03-(0.003+hh)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      //Head(back) microchannel

      TGeoBBox *tM0hb=new TGeoBBox(smcWidth/2, 0.025/2, headWidth/2);
      TGeoVolume *volTM0hb=new TGeoVolume("microChanHeadBackBottom1", tM0hb, medKapton);
      volTM0hb->SetLineColor(4);
      volTM0hb->SetFillColor(4); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0hb, 0, new TGeoCombiTrans(x,yMC+0.03-0.0145-(0.025/2), z+(mo-3)*kStaveLength/4+smcLength/2+headWidth+smcLength/2+(headWidth/2), new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      mechStavVol->AddNode(volTM0hb, 1, new TGeoCombiTrans(x,yMC+0.03-0.0145-(0.025)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth-smcLength/2-(headWidth/2), new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0h1=new TGeoBBox(smcWidth/2, 0.013/2, 0.05/2);
      TGeoVolume *volTM0h1=new TGeoVolume("microChanHeadBackBottom2", tM0h1, medKapton);
      volTM0h1->SetLineColor(5);
      volTM0h1->SetFillColor(5); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0h1, 0, new TGeoCombiTrans(x,yMC+0.03-0.0015-(0.013/2), z+(mo-3)*kStaveLength/4+smcLength/2+headWidth-smcLength/2-headWidth+(0.05/2), new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0h2=new TGeoBBox(smcWidth/2, 0.003/2, 0.18/2);
      TGeoVolume *volTM0h2=new TGeoVolume("microChanHeadBackBottom7", tM0h2, medKapton);
      volTM0h2->SetLineColor(6);
      volTM0h2->SetFillColor(6);
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0h2, 0, new TGeoCombiTrans(x,yMC+0.03-0.0015-0.01-(0.003/2), z+(mo-3)*kStaveLength/4+smcLength/2+headWidth-smcLength/2-0.02-(0.18/2), new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0h3=new TGeoBBox(smcWidth/2, 0.013/2, 0.02/2);
      TGeoVolume *volTM0h3=new TGeoVolume("microChanHeadBackBottom3", tM0h3, medKapton);
      volTM0h3->SetLineColor(5);
      volTM0h3->SetFillColor(5); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0h3, 0, new TGeoCombiTrans(x,yMC+0.03-0.0015-(0.013/2), z+(mo-3)*kStaveLength/4+smcLength/2+headWidth-smcLength/2-(0.02/2), new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0b1=new TGeoBBox(smcWidth/2, 0.013/2, 0.03/2);
      TGeoVolume *volTM0b1=new TGeoVolume("microChanHeadBackBottom4", tM0b1, medKapton);
      volTM0b1->SetLineColor(5);
      volTM0b1->SetFillColor(5); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0b1, 0, new TGeoCombiTrans(x,yMC+0.03-0.0015-(0.013/2), z+(mo-3)*kStaveLength/4+smcLength/2+headWidth+smcLength/2+headWidth-(0.03/2), new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0b2=new TGeoBBox(smcWidth/2, 0.003/2, 0.2/2);
      TGeoVolume *volTM0b2=new TGeoVolume("microChanHeadBackBottom5", tM0b2, medKapton);
      volTM0b2->SetLineColor(6);
      volTM0b2->SetFillColor(6); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0b2, 0, new TGeoCombiTrans(x,yMC+0.03-0.0015-0.01-(0.003/2), z+(mo-3)*kStaveLength/4+smcLength/2+headWidth+smcLength/2+0.02+(0.2/2), new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0b3=new TGeoBBox(smcWidth/2, 0.013/2, 0.02/2);
      TGeoVolume *volTM0b3=new TGeoVolume("microChanHeadBackBottom6", tM0b3, medKapton);
      volTM0b3->SetLineColor(5);
      volTM0b3->SetFillColor(5); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0b3, 0, new TGeoCombiTrans(x,yMC+0.03-0.0015-(0.013/2), z+(mo-3)*kStaveLength/4+smcLength/2+headWidth+smcLength/2+(0.02/2), new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
     
      TGeoBBox *tM0b=new TGeoBBox(0.02/2, 0.02/2, zsta);
      TGeoVolume *volTM0b=new TGeoVolume("microChanWalls", tM0b, medKapton);
      volTM0b->SetLineColor(35);
      volTM0b->SetFillColor(35); 
      for (Int_t ib=0;ib<nb;ib++) {
	//mechStavVol->AddNode(volTM0b, ib, new TGeoCombiTrans(x+ib*0.1-xstaMC+0.01,yMC, z, new TGeoRotation("",0, 0, 0)));
      }
      
      } 
    
    if (fBuildLevel < 4) {

      //**********cooling  inlet outlet

      TGeoBBox *tM0dv=new TGeoBBox(vaporThick/2, 0.035/2,smcLength/2);
      TGeoVolume *volTM0dv=new TGeoVolume("microChanVapor", tM0dv, medWater);
      volTM0dv->SetLineColor(2);
      volTM0dv->SetFillColor(2);
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0dv, 0, new TGeoCombiTrans(x+smcWidth/2-(smcSide1Thick)-(vaporThick/2),yMC+0.03-0.0015-(0.035)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      TGeoBBox *tM0dl=new TGeoBBox(liquidThick/2, 0.035/2,smcLength/2);
      TGeoVolume *volTM0dl=new TGeoVolume("microChanLiquid", tM0dl, medWater);
      volTM0dl->SetLineColor(3);
      volTM0dl->SetFillColor(3); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      mechStavVol->AddNode(volTM0dl, 0, new TGeoCombiTrans(x-smcWidth/2+(smcSide1Thick)+(liquidThick/2),yMC+0.03-0.0015-(0.035)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      // small cooling fluid now using water wait for freeon value  
      TGeoBBox *tM0dlq=new TGeoBBox(smcSpace/2, hh/2,smcLength/2);
      TGeoVolume *volTM0dlq=new TGeoVolume("smallLiquid", tM0dlq, medWater);
      volTM0dlq->SetLineColor(3);
      volTM0dlq->SetFillColor(3); 
      TGeoBBox *tM0dvp=new TGeoBBox(smcSpace/2, hh/2,smcLength/2);
      TGeoVolume *volTM0dvp=new TGeoVolume("microChanVapor", tM0dvp, medWater);
      volTM0dvp->SetLineColor(2);
      volTM0dvp->SetFillColor(2); 
      for(Int_t  mo=1; mo<=chips; mo++) {
      for (Int_t is=0;is<12;is++) {
	mechStavVol->AddNode(volTM0dlq, 0, new TGeoCombiTrans(x+(is*(smcSpace+smcSide5Thick))-smcWidth/2+(smcSide1Thick)+(vaporThick)+(smcSide2Thick)+(smcSide3Thick)+smcSpace/2,yMC+0.03-(0.003+hh)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
	mechStavVol->AddNode(volTM0dvp, 1, new TGeoCombiTrans(x-(is*(smcSpace+smcSide5Thick))+smcWidth/2-(smcSide1Thick)-(vaporThick)-(smcSide2Thick)-(smcSide3Thick)-smcSpace/2,yMC+0.03-(0.003+hh)/2, z+(mo-3)*kStaveLength/4+smcLength/2+headWidth, new TGeoRotation("",ang1, ang2, ang3)));//("",0, 0, 0)));
      }
      }

      //*************

    }
    
    if (fBuildLevel < 3) {

      //Bottom filament CFRP black-12 Carbon structure TGeoBBox (thickness,width,length)
 
      Double_t filWidth = 0.04;
      Double_t filHeight= 0.02;
      TGeoBBox *t1=new TGeoBBox(filHeight/2,filWidth/2,s1);
      TGeoVolume *volT1=new TGeoVolume("bottomFilament", t1, medM60J3K);
      volT1->SetLineColor(12);
      volT1->SetFillColor(12); 
      for(int i=0;i<loop;i++){//i<30;i++){
       	mechStavVol->AddNode(volT1,4*i+0,
				    new TGeoCombiTrans(x+w,y-h+0.04+filHeight/2,z-kStaveLength/2+(4*l*i)+s1/2, 
						       new TGeoRotation("volT1",-90,alpha,0)));
	mechStavVol->AddNode(volT1,4*i+1,
				    new TGeoCombiTrans(x-w,y-h+0.04+filHeight/2,z-kStaveLength/2+(4*l*i)+s1/2, 
						       new TGeoRotation("volT1",90,alpha,0)));
	mechStavVol->AddNode(volT1,4*i+2,
				    new TGeoCombiTrans(x+w,y-h+0.04+filHeight/2,z-kStaveLength/2+2*l+(i*4*l)+s1/2, 
						       new TGeoRotation("volT1",-90,-alpha,0)));
	mechStavVol->AddNode(volT1,4*i+3,
				    new TGeoCombiTrans(x-w,y-h+0.04+filHeight/2,z-kStaveLength/2+2*l+(i*4*l)+s1/2, 
						       new TGeoRotation("volT1",-90,+alpha,0)));
	}
 
     // Top filament CERP black-12 Carbon structure TGeoBBox (length,thickness,width)

      TGeoBBox *t2=new TGeoBBox(s2,filHeight/2,filWidth/2);
      TGeoVolume *volT2=new TGeoVolume("topFilament", t2, medM60J3K);
      volT2->SetLineColor(12);
      volT2->SetFillColor(12); 
      for(int i=0;i<loop;i++){ //i<30;i++){
       	mechStavVol->AddNode(volT2,4*i+0,
				    new TGeoCombiTrans(x+w,y+0.04+filHeight/2,z-kStaveLength/2+(i*4*l)+s1/2,
						       new TGeoRotation("volT2",90,90-alpha,90-beta)));
	mechStavVol->AddNode(volT2,4*i+1,
				    new TGeoCombiTrans(x-w,y+0.04+filHeight/2,z-kStaveLength/2+(i*4*l)+s1/2,
						       new TGeoRotation("volT2",90,-90+alpha,-90+beta)));
	mechStavVol->AddNode(volT2,4*i+2,
				    new TGeoCombiTrans(x+w,y+0.04+filHeight/2,z-kStaveLength/2+2*l+(i*4*l)+s1/2,
						       new TGeoRotation("volT2",90,-90+alpha,90-beta)));
	mechStavVol->AddNode(volT2,4*i+3,
				    new TGeoCombiTrans(x-w,y+0.04+filHeight/2,z-kStaveLength/2+2*l+(i*4*l)+s1/2, 
						       new TGeoRotation("volT2",90,90-alpha,-90+beta)));
	}
    }

    if (fBuildLevel < 2) {

      // Glue Filament and Silicon MicroChannel
      TGeoBBox *tM0=new TGeoBBox(xstaMC/5, klay4/2, zsta);
      TGeoVolume *volTM0=new TGeoVolume("glueFM", tM0,medGlue );
      volTM0->SetLineColor(5);
      volTM0->SetFillColor(5); 
      mechStavVol->AddNode(volTM0, 0, new TGeoCombiTrans(x-xsta/2-0.25,0.03+yMC, z, new TGeoRotation("",0, 0, 0)));
      mechStavVol->AddNode(volTM0, 1, new TGeoCombiTrans(x+xsta/2+0.25,0.03+yMC, z, new TGeoRotation("",0, 0, 0)));

            
      // Glue microchannel and sensor
      TGeoBBox *glueM = new TGeoBBox(xstaMC/5, klay4/2, zsta);
      TGeoVolume *volGlueM=new TGeoVolume("glueMS", glueM, medGlue);
      volGlueM->SetLineColor(5);
      volGlueM->SetFillColor(5); 
      mechStavVol->AddNode(volGlueM, 0, new TGeoCombiTrans(x-xsta/2-0.25,yMC-0.01, z, new TGeoRotation("",0, 0, 0)));
      mechStavVol->AddNode(volGlueM, 1, new TGeoCombiTrans(x+xsta/2+0.25,yMC-0.01, z, new TGeoRotation("",0, 0, 0)));
     
       // Glue sensor and kapton
      TGeoBBox *glue = new TGeoBBox(xsta, klay4/2, zsta);
      TGeoVolume *volGlue=new TGeoVolume("glueSensorBus", glue, medGlue);
      volGlue->SetLineColor(5);
      volGlue->SetFillColor(5); 
       mechStavVol->AddNode(volGlue, 1, new TGeoCombiTrans(x, y-0.154-fSensorThick-klay4/2, z, new TGeoRotation("",0, 0, 0)));
    }      

    if (fBuildLevel < 1) {
      TGeoBBox *kapCable = new TGeoBBox(xsta, klay5/2, zsta);
      TGeoVolume *volCable=new TGeoVolume("Flexcable", kapCable, medFlexCable);
      volCable->SetLineColor(28);
      volCable->SetFillColor(28); 
      mechStavVol->AddNode(volCable, 0, new TGeoCombiTrans(x, y-0.154-fSensorThick-klay4-klay5/2, z, new TGeoRotation("",0, 0, 0)));
    }

  // Done, return the stave structur
    return mechStavVol;
 }

// model4
//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveModelInnerB4(const Double_t xstave,
						    const Double_t zstave,
						    const TGeoManager *mgr){
//
// Create the mechanical stave structure for Model 2.2 of TDR
// Logic is similar to method CreateStaveModelInnerB22
// but completely rewritten:
// - code completely revised, made systematic and more similar to OB
// - fix some inconsistencies (stave element sequence, empty space)
// - use static const as parameters
// - comply with latest (nov '14) C.Gargiulo data
//
// Input:
//         xstave : stave X half length
//         zstave : stave Z half length
//         mgr    : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      04 Dec 2014  Mario Sitta
//

  
  // Local parameters
  Double_t layerHeight = 0.;

  Double_t rPipeMin = fgkIBCoolPipeInnerD/2;
  Double_t rPipeMax = rPipeMin + fgkIBCoolPipeThick;

  Double_t topFilTheta = fgkIBTopFilamentAlpha*TMath::DegToRad();
  Double_t topFilLProj = xstave/TMath::Sin(topFilTheta); // Top filament length projected on stave XZ plane
  Double_t topFilYLen = xstave/TMath::Tan(topFilTheta); // Filament length on Y
  Int_t  nFilaments = (Int_t)(zstave/topFilYLen);
  // Question: would it be better to fix the number of filaments and
  // compute the angle alpha from it, or leave as it is now, i.e. fix the
  // filament inclination angle alpha and compute their number ?

  const Int_t nv = 6;
  Double_t xv[nv], yv[nv]; // The stave container Xtru
  Double_t xlen;
  Double_t xpos, ypos, zpos, ylay;
  Double_t beta, gamma, theta;


  // First create all needed shapes
  TGeoBBox *kapCable = new TGeoBBox(xstave, fgkIBFlexCableKapThick/2, zstave);

  TGeoBBox *aluCable = new TGeoBBox(xstave, fgkIBFlexCableAlThick/2, zstave);

  TGeoBBox *glue     = new TGeoBBox(xstave, fgkIBGlueThick/2, zstave);

  TGeoBBox *fleecbot = new TGeoBBox(xstave, fgkIBCarbonFleeceThick/2, zstave);

  TGeoBBox *cfplate  = new TGeoBBox(xstave, fgkIBK13D2UThick/2, zstave);

  TGeoTube *pipe     = new TGeoTube(rPipeMin, rPipeMax, zstave);

  TGeoTube *water    = new TGeoTube(0., rPipeMin, zstave);

  TGeoTubeSeg *cpaptub  = new TGeoTubeSeg(rPipeMax,
					  rPipeMax + fgkIBCarbonPaperThick,
					  zstave, 0, 180);

  TGeoBBox *cpapvert = new TGeoBBox(fgkIBCarbonPaperThick/2,
				    pipe->GetRmax()/2, zstave);

  xlen = fgkIBCoolPipeXDist/2 - pipe->GetRmax() - fgkIBCarbonPaperThick;
  TGeoBBox *cpapmid  = new TGeoBBox(xlen, fgkIBCarbonPaperThick/2, zstave);

  xlen = xstave -fgkIBCoolPipeXDist/2 -pipe->GetRmax() -fgkIBCarbonPaperThick;
  TGeoBBox *cpaplr   = new TGeoBBox(xlen/2, fgkIBCarbonPaperThick/2, zstave);

  TGeoTubeSeg *fleecpipe = new TGeoTubeSeg(cpaptub->GetRmax(),
			       cpaptub->GetRmax() + fgkIBCarbonFleeceThick,
					   zstave, 0, 180); 

  TGeoBBox *fleecvert = new TGeoBBox(fgkIBCarbonFleeceThick/2,
			 	     (pipe->GetRmax()-fgkIBCarbonPaperThick)/2,
				     zstave);

  xlen = fgkIBCoolPipeXDist/2 - pipe->GetRmax() - fgkIBCarbonPaperThick
       - fgkIBCarbonFleeceThick;
  TGeoBBox *fleecmid  = new TGeoBBox(xlen, fgkIBCarbonFleeceThick/2, zstave);

  xlen = xstave - fgkIBCoolPipeXDist/2 - pipe->GetRmax()
       - fgkIBCarbonPaperThick - fgkIBCarbonFleeceThick;
  TGeoBBox *fleeclr   = new TGeoBBox(xlen/2, fgkIBCarbonFleeceThick/2, zstave);

  // The spaceframe structure
  TGeoTrd1 *topv  = new TGeoTrd1(0, fgkIBTopVertexWidth/2, zstave,
				    fgkIBTopVertexHeight/2);

  TGeoTrd1 *sidev = new TGeoTrd1(0, fgkIBSideVertexWidth/2, zstave,
				    fgkIBSideVertexHeight/2);

  TGeoBBox *topfil = new TGeoBBox(fgkIBTopFilamentLength/2,
				  fgkIBTopFilamentSide/2,
				  fgkIBTopFilamentSide/2);

  // The half stave container (an XTru to avoid overlaps between neighbours)
  beta = TMath::ATan(2*sidev->GetDz()/sidev->GetDx2());
  gamma = TMath::PiOver2() - beta;

  layerHeight = 2*(  kapCable->GetDY() + aluCable->GetDY() +   glue->GetDY()
	           + fleecbot->GetDY() +  cfplate->GetDY() + cpaplr->GetDY()
	           +  fleeclr->GetDY() );

  xv[0] = xstave;
  yv[0] = 0;
  xv[1] = xv[0];
  yv[1] = layerHeight + fgkIBSideVertexHeight;
  xv[2] = fgkIBTopVertexWidth/2;
  yv[2] = fgkIBStaveHeight + 2*topfil->GetDZ();
  for (Int_t i = 0; i<nv/2; i++) {
    xv[3+i] = -xv[2-i];
    yv[3+i] =  yv[2-i];
  }

  TGeoXtru *mechStruct = new TGeoXtru(2);
  mechStruct->DefinePolygon(nv, xv, yv);
  mechStruct->DefineSection(0,-zstave-topfil->GetDY());
  mechStruct->DefineSection(1, zstave+topfil->GetDY());


  // We have all shapes: now create the real volumes

  TGeoMedium *medAir          = mgr->GetMedium("ITS_AIR$");
  TGeoMedium *medWater        = mgr->GetMedium("ITS_WATER$");
  TGeoMedium *medM55J6K       = mgr->GetMedium("ITS_M55J6K$"); 
  TGeoMedium *medM60J3K       = mgr->GetMedium("ITS_M60J3K$"); 
  TGeoMedium *medKapton       = mgr->GetMedium("ITS_KAPTON(POLYCH2)$");
  TGeoMedium *medGlue         = mgr->GetMedium("ITS_GLUE$");
  TGeoMedium *medK13D2U2k     = mgr->GetMedium("ITS_K13D2U2k$");
  TGeoMedium *medFGS003       = mgr->GetMedium("ITS_FGS003$"); 
  TGeoMedium *medCarbonFleece = mgr->GetMedium("ITS_CarbonFleece$"); 
  TGeoMedium *medAluminum     = mgr->GetMedium("ITS_ALUMINUM$");


  char volname[30];
  snprintf(volname, 30, "%s%d_StaveStruct",
	   AliITSUGeomTGeo::GetITSStavePattern(), fLayerNumber);
  TGeoVolume *mechStavVol = new TGeoVolume(volname, mechStruct, medAir);
  mechStavVol->SetLineColor(12);
  mechStavVol->SetFillColor(12); 
  mechStavVol->SetVisibility(kTRUE);  

  TGeoVolume *kapCableVol = new TGeoVolume("FPCKapton", kapCable, medKapton);
  kapCableVol->SetLineColor(kBlue);
  kapCableVol->SetFillColor(kBlue);

  TGeoVolume *aluCableVol = new TGeoVolume("FPCAluminum",
					   aluCable, medAluminum);
  aluCableVol->SetLineColor(kCyan);
  aluCableVol->SetFillColor(kCyan);

  TGeoVolume *glueVol = new TGeoVolume("Glue", glue, medGlue);
  glueVol->SetLineColor(kBlack);
  glueVol->SetFillColor(kBlack);

  TGeoVolume *fleecbotVol = new TGeoVolume("CarbonFleeceBottom",
					   fleecbot, medCarbonFleece);
  fleecbotVol->SetFillColor(kViolet);
  fleecbotVol->SetLineColor(kViolet);

  TGeoVolume *cfplateVol = new TGeoVolume("CFPlate", cfplate, medK13D2U2k);
  cfplateVol->SetFillColor(5);  // Yellow
  cfplateVol->SetLineColor(5);

  TGeoVolume *pipeVol = new TGeoVolume("PolyimidePipe", pipe, medKapton);
  pipeVol->SetFillColor(35);  // Blue shade
  pipeVol->SetLineColor(35);

  TGeoVolume *waterVol= new TGeoVolume("Water", water, medWater);
  waterVol->SetFillColor(4);  // Bright blue
  waterVol->SetLineColor(4);

  TGeoVolume *cpaptubVol = new TGeoVolume("ThermasolPipeCover",
					  cpaptub, medFGS003);
  cpaptubVol->SetFillColor(2);  // Red
  cpaptubVol->SetLineColor(2);

  TGeoVolume *cpapvertVol = new TGeoVolume("ThermasolVertical",
					   cpapvert, medFGS003);
  cpapvertVol->SetFillColor(2);  // Red
  cpapvertVol->SetLineColor(2);

  TGeoVolume *cpapmidVol = new TGeoVolume("ThermasolMiddle",
					  cpapmid, medFGS003);
  cpapmidVol->SetFillColor(2);  // Red
  cpapmidVol->SetLineColor(2);

  TGeoVolume *cpaplrVol = new TGeoVolume("ThermasolLeftRight",
					 cpaplr, medFGS003);
  cpaplrVol->SetFillColor(2);  // Red
  cpaplrVol->SetLineColor(2);

  TGeoVolume *fleecpipeVol = new TGeoVolume("CarbonFleecePipeCover",
					    fleecpipe, medCarbonFleece);
  fleecpipeVol->SetFillColor(28);  // Brown shade
  fleecpipeVol->SetLineColor(28);

  TGeoVolume *fleecvertVol = new TGeoVolume("CarbonFleeceVertical",
					    fleecvert, medCarbonFleece);
  fleecvertVol->SetFillColor(28);  // Brown shade
  fleecvertVol->SetLineColor(28);

  TGeoVolume *fleecmidVol = new TGeoVolume("CarbonFleeceMiddle",
					   fleecmid, medCarbonFleece);
  fleecmidVol->SetFillColor(28);  // Brown shade
  fleecmidVol->SetLineColor(28);

  TGeoVolume *fleeclrVol = new TGeoVolume("CarbonFleeceLeftRight",
					  fleeclr, medCarbonFleece);
  fleeclrVol->SetFillColor(28);  // Brown shade
  fleeclrVol->SetLineColor(28);

  TGeoVolume *topvVol = new TGeoVolume("TopVertex", topv, medM55J6K);
  topvVol->SetFillColor(12);  // Gray shade
  topvVol->SetLineColor(12);
  
  TGeoVolume *sidevVol = new TGeoVolume("SideVertex", sidev, medM55J6K);
  sidevVol->SetFillColor(12);  // Gray shade
  sidevVol->SetLineColor(12);
  
  TGeoVolume *topfilVol = new TGeoVolume("TopFilament", topfil, medM60J3K);
  topfilVol->SetFillColor(12);  // Gray shade
  topfilVol->SetLineColor(12);
  

  // Now build up the half stave
  ypos = kapCable->GetDY();
  if (fBuildLevel < 4)   // Kapton
    mechStavVol->AddNode(kapCableVol, 1, new TGeoTranslation(0, ypos, 0));

  ypos += (kapCable->GetDY() + aluCable->GetDY());
  if (fBuildLevel < 1)   // Aluminum
    mechStavVol->AddNode(aluCableVol, 1, new TGeoTranslation(0, ypos, 0));

  ypos += (aluCable->GetDY() + glue->GetDY());
  if (fBuildLevel < 2)   // Glue
    mechStavVol->AddNode(glueVol, 1, new TGeoTranslation(0, ypos, 0));

  ypos += (glue->GetDY() + fleecbot->GetDY());
  if (fBuildLevel < 5)   // Carbon
    mechStavVol->AddNode(fleecbotVol, 1, new TGeoTranslation(0, ypos, 0));

  ypos += (fleecbot->GetDY() + cfplate->GetDY());
  if (fBuildLevel < 5)   // Carbon
    mechStavVol->AddNode(cfplateVol, 1, new TGeoTranslation(0, ypos, 0));

  ylay = ypos + cfplate->GetDY(); // The level where tubes etc. lay

  xpos = fgkIBCoolPipeXDist/2;
  ypos = ylay + pipe->GetRmax();
  if (fBuildLevel < 4) { // Kapton
    mechStavVol->AddNode(pipeVol, 1, new TGeoTranslation(-xpos, ypos, 0));
    mechStavVol->AddNode(pipeVol, 2, new TGeoTranslation( xpos, ypos, 0));
  }

  if (fBuildLevel < 3) { // Water
    mechStavVol->AddNode(waterVol, 1, new TGeoTranslation(-xpos, ypos, 0));
    mechStavVol->AddNode(waterVol, 2, new TGeoTranslation( xpos, ypos, 0));
  }

  if (fBuildLevel < 5) { // Carbon (stave components)
    mechStavVol->AddNode(cpaptubVol, 1, new TGeoTranslation(-xpos, ypos, 0));
    mechStavVol->AddNode(cpaptubVol, 2, new TGeoTranslation( xpos, ypos, 0));

    mechStavVol->AddNode(fleecpipeVol,1, new TGeoTranslation(-xpos, ypos, 0));
    mechStavVol->AddNode(fleecpipeVol,2, new TGeoTranslation( xpos, ypos, 0));

    xpos = fgkIBCoolPipeXDist/2 - pipe->GetRmax() - cpapvert->GetDX();
    ypos = ylay + cpapvert->GetDY();
    mechStavVol->AddNode(cpapvertVol, 1, new TGeoTranslation(-xpos, ypos, 0));
    mechStavVol->AddNode(cpapvertVol, 2, new TGeoTranslation( xpos, ypos, 0));

    xpos = fgkIBCoolPipeXDist/2 + pipe->GetRmax() + cpapvert->GetDX();
    mechStavVol->AddNode(cpapvertVol, 3, new TGeoTranslation(-xpos, ypos, 0));
    mechStavVol->AddNode(cpapvertVol, 4, new TGeoTranslation( xpos, ypos, 0));

    ypos = ylay + fgkIBCarbonPaperThick/2;
    mechStavVol->AddNode(cpapmidVol, 1, new TGeoTranslation(0, ypos, 0));

    xpos = xstave - cpaplr->GetDX();
    mechStavVol->AddNode(cpaplrVol, 1, new TGeoTranslation(-xpos, ypos, 0));
    mechStavVol->AddNode(cpaplrVol, 2, new TGeoTranslation( xpos, ypos, 0));

    xpos = fgkIBCoolPipeXDist/2 - pipe->GetRmax() - 2*cpapvert->GetDX()
         - fleecvert->GetDX();
    ypos = ylay + fgkIBCarbonPaperThick + fleecvert->GetDY();
    mechStavVol->AddNode(fleecvertVol, 1, new TGeoTranslation(-xpos, ypos, 0));
    mechStavVol->AddNode(fleecvertVol, 2, new TGeoTranslation( xpos, ypos, 0));

    xpos = fgkIBCoolPipeXDist/2 + pipe->GetRmax() + 2*cpapvert->GetDX()
         + fleecvert->GetDX();
    mechStavVol->AddNode(fleecvertVol, 3, new TGeoTranslation(-xpos, ypos, 0));
    mechStavVol->AddNode(fleecvertVol, 4, new TGeoTranslation( xpos, ypos, 0));

    ypos = ylay + fgkIBCarbonPaperThick + fgkIBCarbonFleeceThick/2;
    mechStavVol->AddNode(fleecmidVol, 1, new TGeoTranslation(0, ypos, 0));

    xpos = xstave - fleeclr->GetDX();
    mechStavVol->AddNode(fleeclrVol, 1, new TGeoTranslation(-xpos, ypos, 0));
    mechStavVol->AddNode(fleeclrVol, 2, new TGeoTranslation( xpos, ypos, 0));
  }

  ylay += (fgkIBCarbonPaperThick + fgkIBCarbonFleeceThick);

  if (fBuildLevel < 5) { // Carbon (spaceframe)
    ypos = fgkIBStaveHeight - topv->GetDz(); // Due to rotation, z is on Y
    mechStavVol->AddNode(topvVol, 1,
			 new TGeoCombiTrans(0, ypos, 0,
					    new TGeoRotation("",0,-90,0)));

    // beta and gamma were already computed when building mechStruct shape
    xpos = xstave - TMath::Cos(gamma)*sidev->GetDz();
    ypos = ylay + TMath::Sin(gamma)*sidev->GetDz();
    beta *= TMath::RadToDeg();  // beta was rad, we need deg

    mechStavVol->AddNode(sidevVol, 1,
			 new TGeoCombiTrans(-xpos, ypos, 0,
					new TGeoRotation("", 180-beta,90,0)));
    mechStavVol->AddNode(sidevVol, 2,
			 new TGeoCombiTrans( xpos, ypos, 0,
					new TGeoRotation("",-180+beta,90,0)));

    gamma *= TMath::RadToDeg();  // gamma was rad, we need deg
    theta = 90. - fgkIBTopFilamentAlpha;
    xpos = xstave/2 + topfil->GetDZ();
    ypos = ( layerHeight + fgkIBStaveHeight )/2 +
	   fgkIBSideVertexWidth*TMath::Sin(beta*TMath::DegToRad())/2 ;
    for(int i=0; i<nFilaments; i++){ // i<28 (?)
      // 1) Front Left Top Filament
      zpos = -zstave + (i*2*topFilYLen) + topFilLProj/4; // ?????
      mechStavVol->AddNode(topfilVol, i*4+1,
			 new TGeoCombiTrans( xpos, ypos, zpos,
			      new TGeoRotation("", 90, theta, 90-gamma)));
      // 2) Front Right Top Filament
      mechStavVol->AddNode(topfilVol, i*4+2,
			 new TGeoCombiTrans(-xpos, ypos, zpos,
			      new TGeoRotation("", 90,-theta,-90+gamma)));
      // 3) Back Left  Top Filament
      zpos += topFilYLen;
      mechStavVol->AddNode(topfilVol, i*4+3,
			 new TGeoCombiTrans( xpos, ypos, zpos,
			      new TGeoRotation("", 90,-theta, 90-gamma)));
      // 4) Back Right Top Filament
      mechStavVol->AddNode(topfilVol, i*4+4,
			 new TGeoCombiTrans(-xpos, ypos, zpos,
			      new TGeoRotation("", 90, theta,-90+gamma)));
    }
  }


  // Done, return the stave structure
  return mechStavVol;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveOuterB(const TGeoManager *mgr){
//
// Create the chip stave for the Outer Barrel
//
// Input:
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      20 Dec 2013  Mario Sitta
// Updated:      12 Mar 2014  Mario Sitta
//

  TGeoVolume *mechStavVol = 0;

  switch (fStaveModel) {
    case AliITSUv1::kOBModelDummy:
      mechStavVol = CreateStaveModelOuterBDummy(mgr);
      break;
    case AliITSUv1::kOBModel0:
      mechStavVol = CreateStaveModelOuterB0(mgr);
      break;
    case AliITSUv1::kOBModel1:
    case AliITSUv1::kOBModel2:
      mechStavVol = CreateStaveModelOuterB12(mgr);
      break;
    default:
      AliFatal(Form("Unknown stave model %d",fStaveModel));
      break;
  }

  return mechStavVol; 
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveModelOuterBDummy(const TGeoManager *) const {
//
// Create dummy stave
//
// Input:
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      20 Dec 2013  Mario Sitta
//


  // Done, return the stave structure
  return 0;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveModelOuterB0(const TGeoManager *mgr){
//
// Creation of the mechanical stave structure for the Outer Barrel as in v0
// (we fake the module and halfstave volumes to have always
// the same formal geometry hierarchy)
//
// Input:
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      20 Dec 2013  Mario Sitta
// Updated:      12 Mar 2014  Mario Sitta
//

  // Local variables
  Double_t xmod, ymod, zmod;
  Double_t xlen, ylen, zlen;
  Double_t ypos, zpos;
  char volname[30];
  
  // First create all needed shapes

  // The chip
  xlen = fgkOBHalfStaveWidth;
  ylen = 0.5*fChipThick;
  zlen = fgkOBModuleZLength/2;

  TGeoVolume *chipVol = CreateChipInnerB(xlen, ylen, zlen);

  xmod = ((TGeoBBox*)chipVol->GetShape())->GetDX();
  ymod = ((TGeoBBox*)chipVol->GetShape())->GetDY();
  zmod = ((TGeoBBox*)chipVol->GetShape())->GetDZ();

  TGeoBBox *module = new TGeoBBox(xmod, ymod, zmod);

  zlen = fgkOBModuleZLength*fNModules;
  TGeoBBox *hstave = new TGeoBBox(xlen, ylen, zlen/2);


  // We have all shapes: now create the real volumes

  TGeoMedium *medAir = mgr->GetMedium("ITS_AIR$");

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSModulePattern(), fLayerNumber);
  TGeoVolume *modVol = new TGeoVolume(volname, module, medAir);
  modVol->SetVisibility(kTRUE);

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSHalfStavePattern(), fLayerNumber);
  TGeoVolume *hstaveVol  = new TGeoVolume(volname, hstave, medAir);


  // Finally build it up
  modVol->AddNode(chipVol, 0);
  fHierarchy[kChip]=1;

  for (Int_t j=0; j<fNModules; j++) {
    ypos = 0.021;  // Remove small overlap - M.S: 21may13
    zpos = -hstave->GetDZ() + j*2*zmod + zmod;
    hstaveVol->AddNode(modVol, j, new TGeoTranslation(0, ypos, zpos));
    fHierarchy[kModule]++;
  }


  // Done, return the stave structure
  return hstaveVol;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateStaveModelOuterB12(const TGeoManager *mgr){
//
// Create the mechanical half stave structure
// for the Outer Barrel as in TDR
//
// Input:
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      20 Nov 2013  Anastasia Barbano
// Updated:      16 Jan 2014  Mario Sitta
// Updated:      24 Feb 2014  Mario Sitta
// Updated:      11 Nov 2014  Mario Sitta  Model2
// Updated:      03 Dec 2014  Mario Sitta  Revised with C.Gargiulo latest infos
//


  // Local parameters
  Double_t yFlex1      = fgkOBFlexCableAlThick;
  Double_t yFlex2      = fgkOBFlexCableKapThick;
  Double_t flexOverlap = 5; // to be checked - unused for the time being
  Double_t xHalfSt     = fgkOBHalfStaveWidth/2;
  Double_t yCFleece    = fgkOBCarbonFleeceThick;
  Double_t yGraph      = fgkOBGraphiteFoilThick;

  Double_t ymod, zmod;
  Double_t xtru[12], ytru[12];
  Double_t xpos, ypos, ypos1, zpos/*, zpos5cm*/;
  Double_t xlen, ylen, zlen;
  char volname[30];

  Double_t rCoolMin, rCoolMax;
  if (fStaveModel == AliITSUv1::kOBModel1)
    rCoolMin = fgkOBCoolTubeInnerDM1/2;
  else
    rCoolMin = fgkOBCoolTubeInnerD/2;

  rCoolMax = rCoolMin + fgkOBCoolTubeThick;

  zlen = (fNModules*fgkOBModuleZLength + (fNModules-1)*fgkOBModuleGap)/2;


  // First create all needed shapes

  TGeoVolume *moduleVol = CreateModuleOuterB();
  moduleVol->SetVisibility(kTRUE);
  ymod = ((TGeoBBox*)(moduleVol->GetShape()))->GetDY();
  zmod = ((TGeoBBox*)(moduleVol->GetShape()))->GetDZ();

  TGeoBBox *busAl  = new TGeoBBox("BusAl",  xHalfSt, fgkOBBusCableAlThick/2,
					    zlen);
  TGeoBBox *busKap = new TGeoBBox("BusKap", xHalfSt, fgkOBBusCableKapThick/2,
					    zlen);

  TGeoBBox *glue = new TGeoBBox("Glue", xHalfSt, fgkOBGlueThick/2, zlen);

  TGeoBBox *coldPlate  = new TGeoBBox("ColdPlate", fgkOBHalfStaveWidth/2,
				      fgkOBColdPlateThick/2, zlen);

  TGeoBBox *fleeccent  = new TGeoBBox("FleeceCent",  xHalfSt,
				      yCFleece/2, zlen);

  TGeoTube *coolTube   = new TGeoTube("CoolingTube", rCoolMin, rCoolMax, zlen);
  TGeoTube *coolWater  = new TGeoTube("CoolingWater", 0., rCoolMin, zlen);

  xlen = xHalfSt - fgkOBCoolTubeXDist/2 - coolTube->GetRmax();
  TGeoBBox *graphlat   = new TGeoBBox("GraphLateral", xlen/2, yGraph/2, zlen);

  xlen = fgkOBCoolTubeXDist/2 - coolTube->GetRmax();
  TGeoBBox *graphmid   = new TGeoBBox("GraphMiddle", xlen, yGraph/2, zlen);

  ylen = coolTube->GetRmax() - yGraph;
  TGeoBBox *graphvert  = new TGeoBBox("GraphVertical", yGraph/2, ylen/2, zlen);

  TGeoTubeSeg *graphtub = new TGeoTubeSeg("GraphTube", rCoolMax,
					  rCoolMax+yGraph, zlen,
					  180., 360.);

  xlen = xHalfSt - fgkOBCoolTubeXDist/2 - coolTube->GetRmax() - yGraph;
  TGeoBBox *fleeclat  = new TGeoBBox("FleecLateral", xlen/2, yCFleece/2, zlen);

  xlen = fgkOBCoolTubeXDist/2 - coolTube->GetRmax() - yGraph;
  TGeoBBox *fleecmid  = new TGeoBBox("FleecMiddle", xlen, yCFleece/2, zlen);

  ylen = coolTube->GetRmax() - yGraph - yCFleece;
  TGeoBBox *fleecvert = new TGeoBBox("FleecVertical", yCFleece/2, ylen/2,
						      zlen);

  TGeoTubeSeg *fleectub = new TGeoTubeSeg("FleecTube", rCoolMax+yGraph,
					  rCoolMax+yCFleece+yGraph,
					  zlen, 180., 360.);

  TGeoBBox *flex1_5cm  = new TGeoBBox("Flex1MV_5cm",xHalfSt,yFlex1/2,flexOverlap/2);
  TGeoBBox *flex2_5cm  = new TGeoBBox("Flex2MV_5cm",xHalfSt,yFlex2/2,flexOverlap/2);

  // The half stave container (an XTru to avoid overlaps between neightbours)
  ylen = ymod + busAl->GetDY() + busKap->GetDY() + coldPlate->GetDY()
	      + fleeccent->GetDY() + graphlat->GetDY() + fleeclat->GetDY();
  if (fStaveModel == AliITSUv1::kOBModel2)
    ylen += 2*glue->GetDY();

  xtru[0] = xHalfSt;
  ytru[0] = 0;
  xtru[1] = xtru[0];
  ytru[1] = -2*ylen;
  xtru[2] = fgkOBCoolTubeXDist/2 + fleectub->GetRmax();
  ytru[2] = ytru[1];
  xtru[3] = xtru[2];
  ytru[3] = ytru[2] - (coolTube->GetRmax() + fleectub->GetRmax());
  xtru[4] = fgkOBCoolTubeXDist/2 - fleectub->GetRmax();
  ytru[4] = ytru[3];
  xtru[5] = xtru[4];
  ytru[5] = ytru[2];
  for (Int_t i = 0; i<6; i++) {
    xtru[6+i] = -xtru[5-i];
    ytru[6+i] =  ytru[5-i];
  }
  TGeoXtru *halfStave = new TGeoXtru(2);
  halfStave->DefinePolygon(12, xtru, ytru);
  halfStave->DefineSection(0,-fZLength/2);
  halfStave->DefineSection(1, fZLength/2);


  // We have all shapes: now create the real volumes

  TGeoMedium *medAluminum     = mgr->GetMedium("ITS_ALUMINUM$");
  TGeoMedium *medK13D2U120    = mgr->GetMedium("ITS_K13D2U120$");
  TGeoMedium *medKapton       = mgr->GetMedium("ITS_KAPTON(POLYCH2)$");
  TGeoMedium *medWater        = mgr->GetMedium("ITS_WATER$");
  TGeoMedium *medCarbonFleece = mgr->GetMedium("ITS_CarbonFleece$"); 
  TGeoMedium *medFGS003       = mgr->GetMedium("ITS_FGS003$"); //amec thermasol
  TGeoMedium *medAir          = mgr->GetMedium("ITS_AIR$");
  TGeoMedium *medGlue         = mgr->GetMedium("ITS_GLUE$");


  TGeoVolume *busAlVol = new TGeoVolume("PowerBusAlVol", busAl , medAluminum);
  busAlVol->SetLineColor(kCyan);
  busAlVol->SetFillColor(busAlVol->GetLineColor());
  busAlVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *busKapVol = new TGeoVolume("PowerBusKapVol", busKap, medKapton);
  busKapVol->SetLineColor(kBlue);
  busKapVol->SetFillColor(busKapVol->GetLineColor());
  busKapVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *coldPlateVol = new TGeoVolume("ColdPlateVol",
					    coldPlate, medK13D2U120);
  coldPlateVol->SetLineColor(kYellow-3);
  coldPlateVol->SetFillColor(coldPlateVol->GetLineColor());
  coldPlateVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *fleeccentVol = new TGeoVolume("CarbonFleeceCentral",
					    fleeccent, medCarbonFleece);
  fleeccentVol->SetLineColor(kViolet);
  fleeccentVol->SetFillColor(fleeccentVol->GetLineColor());
  fleeccentVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *glueVol = new TGeoVolume("GlueVol", glue, medGlue);
  glueVol->SetLineColor(kBlack);
  glueVol->SetFillColor(glueVol->GetLineColor());
  glueVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *coolTubeVol  = new TGeoVolume("CoolingTubeVol",
					    coolTube, medKapton);
  coolTubeVol->SetLineColor(kGray);
  coolTubeVol->SetFillColor(coolTubeVol->GetLineColor());
  coolTubeVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *coolWaterVol;
  coolWaterVol = new TGeoVolume("CoolingWaterVol", coolWater, medWater);
  coolWaterVol->SetLineColor(kBlue);
  coolWaterVol->SetFillColor(coolWaterVol->GetLineColor());
  coolWaterVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *graphlatVol = new TGeoVolume("GraphiteFoilLateral",
					   graphlat, medFGS003);
  graphlatVol->SetLineColor(kGreen);
  graphlatVol->SetFillColor(graphlatVol->GetLineColor());
  graphlatVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *graphmidVol = new TGeoVolume("GraphiteFoilMiddle",
					   graphmid, medFGS003);
  graphmidVol->SetLineColor(kGreen);
  graphmidVol->SetFillColor(graphmidVol->GetLineColor());
  graphmidVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *graphvertVol = new TGeoVolume("GraphiteFoilVertical",
					    graphvert, medFGS003);
  graphvertVol->SetLineColor(kGreen);
  graphvertVol->SetFillColor(graphvertVol->GetLineColor());
  graphvertVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *graphtubVol = new TGeoVolume("GraphiteFoilPipeCover",
					   graphtub, medFGS003);
  graphtubVol->SetLineColor(kGreen);
  graphtubVol->SetFillColor(graphtubVol->GetLineColor());
  graphtubVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *fleeclatVol = new TGeoVolume("CarbonFleeceLateral",
					   fleeclat, medCarbonFleece);
  fleeclatVol->SetLineColor(kViolet);
  fleeclatVol->SetFillColor(fleeclatVol->GetLineColor());
  fleeclatVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *fleecmidVol = new TGeoVolume("CarbonFleeceMiddle",
					   fleecmid, medCarbonFleece);
  fleecmidVol->SetLineColor(kViolet);
  fleecmidVol->SetFillColor(fleecmidVol->GetLineColor());
  fleecmidVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *fleecvertVol = new TGeoVolume("CarbonFleeceVertical",
					    fleecvert, medCarbonFleece);
  fleecvertVol->SetLineColor(kViolet);
  fleecvertVol->SetFillColor(fleecvertVol->GetLineColor());
  fleecvertVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *fleectubVol = new TGeoVolume("CarbonFleecePipeCover",
					   fleectub, medCarbonFleece);
  fleectubVol->SetLineColor(kViolet);
  fleectubVol->SetFillColor(fleectubVol->GetLineColor());
  fleectubVol->SetFillStyle(4000); // 0% transparent

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSHalfStavePattern(), fLayerNumber);
  TGeoVolume *halfStaveVol  = new TGeoVolume(volname, halfStave, medAir);
//   halfStaveVol->SetLineColor(12);
//   halfStaveVol->SetFillColor(12); 
//   halfStaveVol->SetVisibility(kTRUE);


  TGeoVolume *flex1_5cmVol = new TGeoVolume("Flex1Vol5cm",flex1_5cm,medAluminum);
  TGeoVolume *flex2_5cmVol = new TGeoVolume("Flex2Vol5cm",flex2_5cm,medKapton);


  flex1_5cmVol->SetLineColor(kRed);
  flex2_5cmVol->SetLineColor(kGreen);
  

  // Now build up the half stave
  ypos = - busKap->GetDY();
  if ( (fStaveModel == AliITSUv1::kOBModel1 && fBuildLevel < 4) || // Kapton
       (fStaveModel == AliITSUv1::kOBModel2 && fBuildLevel < 5) )
    halfStaveVol->AddNode(busKapVol, 1, new TGeoTranslation(0, ypos, 0));

  ypos -= (busKap->GetDY() + busAl->GetDY());
  if ( (fStaveModel == AliITSUv1::kOBModel1 && fBuildLevel < 1) || // Aluminum
       (fStaveModel == AliITSUv1::kOBModel2 && fBuildLevel < 2) )
    halfStaveVol->AddNode(busAlVol, 1, new TGeoTranslation(0, ypos, 0));

  ypos -= busAl->GetDY();

  if (fStaveModel == AliITSUv1::kOBModel2) {
    ypos -= glue->GetDY();
    if (fBuildLevel < 3) // Glue
      halfStaveVol->AddNode(glueVol, 1, new TGeoTranslation(0, ypos, 0));
    ypos -= glue->GetDY();
  }

  ypos -= ymod;
  for (Int_t j=0; j<fNModules; j++) {
    zpos = -zlen + j*(2*zmod + fgkOBModuleGap) + zmod;
    halfStaveVol->AddNode(moduleVol, j, new TGeoTranslation(0, ypos, zpos));
    fHierarchy[kModule]++;
  }

  ypos -= ymod;

  if (fStaveModel == AliITSUv1::kOBModel2) {
    ypos -= glue->GetDY();
    if (fBuildLevel < 3) // Glue
      halfStaveVol->AddNode(glueVol, 2, new TGeoTranslation(0, ypos, 0));
    ypos -= glue->GetDY();
  }

  ypos -= fleeccent->GetDY();
  if ( (fStaveModel == AliITSUv1::kOBModel1 && fBuildLevel < 5) || // Carbon
       (fStaveModel == AliITSUv1::kOBModel2 && fBuildLevel < 6) )
    halfStaveVol->AddNode(fleeccentVol, 1, new TGeoTranslation(0, ypos, 0));
  ypos -= fleeccent->GetDY();

  ypos -= coldPlate->GetDY();
  if ( (fStaveModel == AliITSUv1::kOBModel1 && fBuildLevel < 5) || // Carbon
       (fStaveModel == AliITSUv1::kOBModel2 && fBuildLevel < 6) )
    halfStaveVol->AddNode(coldPlateVol, 1, new TGeoTranslation(0, ypos, 0));

  xpos = fgkOBCoolTubeXDist/2;
  ypos1 = ypos - (coldPlate->GetDY() + coolTube->GetRmax());
  if ( (fStaveModel == AliITSUv1::kOBModel1 && fBuildLevel < 3) || // Water
       (fStaveModel == AliITSUv1::kOBModel2 && fBuildLevel < 4) ) {
    halfStaveVol->AddNode(coolWaterVol, 1, new TGeoTranslation(-xpos, ypos1, 0));
    halfStaveVol->AddNode(coolWaterVol, 2, new TGeoTranslation( xpos, ypos1, 0));
  }

  if ( (fStaveModel == AliITSUv1::kOBModel1 && fBuildLevel < 4) || // Kapton
       (fStaveModel == AliITSUv1::kOBModel2 && fBuildLevel < 5) ) {
    halfStaveVol->AddNode(coolTubeVol,1, new TGeoTranslation(-xpos, ypos1, 0));
    halfStaveVol->AddNode(coolTubeVol,2, new TGeoTranslation( xpos, ypos1, 0));
  }

  if ( (fStaveModel == AliITSUv1::kOBModel1 && fBuildLevel < 5) || // Carbon
       (fStaveModel == AliITSUv1::kOBModel2 && fBuildLevel < 6) ) {
    halfStaveVol->AddNode(graphtubVol,1, new TGeoTranslation(-xpos, ypos1, 0));
    halfStaveVol->AddNode(graphtubVol,2, new TGeoTranslation( xpos, ypos1, 0));

    halfStaveVol->AddNode(fleectubVol,1, new TGeoTranslation(-xpos, ypos1, 0));
    halfStaveVol->AddNode(fleectubVol,2, new TGeoTranslation( xpos, ypos1, 0));
  }

  xpos = xHalfSt - graphlat->GetDX();
  ypos1 = ypos - (coldPlate->GetDY() + graphlat->GetDY());
  if ( (fStaveModel == AliITSUv1::kOBModel1 && fBuildLevel < 5) || // Carbon
       (fStaveModel == AliITSUv1::kOBModel2 && fBuildLevel < 6) ) {
    halfStaveVol->AddNode(graphlatVol,1, new TGeoTranslation(-xpos, ypos1, 0));
    halfStaveVol->AddNode(graphlatVol,2, new TGeoTranslation( xpos, ypos1, 0));

    halfStaveVol->AddNode(graphmidVol,1, new TGeoTranslation(0, ypos1, 0));

    xpos = xHalfSt - 2*graphlat->GetDX() + graphvert->GetDX();
    ypos1 = ypos - (coldPlate->GetDY()+2*graphlat->GetDY()+graphvert->GetDY());
    halfStaveVol->AddNode(graphvertVol,1,new TGeoTranslation(-xpos, ypos1, 0));
    halfStaveVol->AddNode(graphvertVol,2,new TGeoTranslation( xpos, ypos1, 0));
    xpos = graphmid->GetDX() - graphvert->GetDX();
    halfStaveVol->AddNode(graphvertVol,3,new TGeoTranslation(-xpos, ypos1, 0));
    halfStaveVol->AddNode(graphvertVol,4,new TGeoTranslation( xpos, ypos1, 0));
  }

  xpos = xHalfSt - fleeclat->GetDX();
  ypos1 = ypos - (coldPlate->GetDY() +2*graphlat->GetDY() +fleeclat->GetDY());
  if ( (fStaveModel == AliITSUv1::kOBModel1 && fBuildLevel < 5) || // Carbon
       (fStaveModel == AliITSUv1::kOBModel2 && fBuildLevel < 6) ) {
    halfStaveVol->AddNode(fleeclatVol,1, new TGeoTranslation(-xpos, ypos1, 0));
    halfStaveVol->AddNode(fleeclatVol,2, new TGeoTranslation( xpos, ypos1, 0));

    halfStaveVol->AddNode(fleecmidVol, 1, new TGeoTranslation(0, ypos1, 0));

    xpos = xHalfSt - 2*fleeclat->GetDX() + fleecvert->GetDX();
    ypos1 = ypos - (coldPlate->GetDY() +2*graphlat->GetDY()
                 + 2*fleeclat->GetDY() + fleecvert->GetDY());
    halfStaveVol->AddNode(fleecvertVol,1,new TGeoTranslation(-xpos, ypos1, 0));
    halfStaveVol->AddNode(fleecvertVol,2,new TGeoTranslation( xpos, ypos1, 0));
    xpos = fleecmid->GetDX() - fleecvert->GetDX();
    halfStaveVol->AddNode(fleecvertVol,3,new TGeoTranslation(-xpos, ypos1, 0));
    halfStaveVol->AddNode(fleecvertVol,4,new TGeoTranslation( xpos, ypos1, 0));
  }


  //THE FOLLOWING IS ONLY A REMINDER FOR WHAT IS STILL MISSING

//   for (Int_t j=0; j<fNChips; j++) {

//     zpos = -(zact + (fNChips-1)*modGap)/2 + j*(zMod + modGap) + zMod/2;
//     zpos5cm = -(zact + (fNChips-1)*modGap)/2 + (j+1)*(zMod + modGap) + flexOverlap/2 ;

//     halfStaveVol->AddNode(moduleVol, j, new TGeoTranslation(xPos, -ylen + yPos + 2*rCoolMax + yCPlate + yGlue + yModPlate + ymod, zpos));
//     halfStaveVol->AddNode(moduleVol, fNChips+j, new TGeoTranslation(-xPos, -ylen + yPos + 2*rCoolMax + yCPlate + yGlue + yModPlate + ymod +deltaY, zpos));

//     if((j+1)!=fNChips){
//       halfStaveVol->AddNode(flex1_5cmVol,j,new TGeoTranslation(xPos,-ylen + yPos + 2*rCoolMax + yCPlate + yGlue + yModPlate + 2*ymod + yFlex1 + yFlex2 + yFlex1/2,zpos5cm));
//       halfStaveVol->AddNode(flex1_5cmVol,fNChips+j,new TGeoTranslation(-xPos,-ylen + yPos + 2*rCoolMax + yCPlate + yGlue + yModPlate + 2*ymod + yFlex1 + yFlex2 + yFlex1/2 +deltaY,zpos5cm));
//       halfStaveVol->AddNode(flex2_5cmVol,j,new TGeoTranslation(xPos,-ylen + yPos + 2*rCoolMax + yCPlate + yGlue + yModPlate + 2*ymod + 2*yFlex1 + 3*yFlex2/2,zpos5cm));
//       halfStaveVol->AddNode(flex2_5cmVol,fNChips+j,new TGeoTranslation(-xPos,-ylen + yPos + 2*rCoolMax + yCPlate + yGlue + yModPlate + 2*ymod + 2*yFlex1 + 3*yFlex2/2 +deltaY,zpos5cm));
//     }
//     else {
//       halfStaveVol->AddNode(flex1_5cmVol,j,new TGeoTranslation(xPos,-ylen + yPos + 2*rCoolMax + yCPlate + yGlue + yModPlate + 2*ymod + yFlex1/2,zpos5cm-modGap));
//       halfStaveVol->AddNode(flex1_5cmVol,fNChips+j,new TGeoTranslation(-xPos,-ylen + yPos + 2*rCoolMax + yCPlate + yGlue + yModPlate + 2*ymod + yFlex1/2 +deltaY,zpos5cm-modGap));
//       halfStaveVol->AddNode(flex2_5cmVol,j,new TGeoTranslation(xPos,-ylen + yPos + 2*rCoolMax + yCPlate + yGlue + yModPlate +2*ymod + yFlex1 + yFlex2/2,zpos5cm-modGap));
//       halfStaveVol->AddNode(flex2_5cmVol,fNChips+j,new TGeoTranslation(-xPos,-ylen + yPos + 2*rCoolMax + yCPlate + yGlue + yModPlate + 2*ymod + yFlex1 + yFlex2/2 +deltaY,zpos5cm-modGap));

//       }
//   }
  

  // Done, return the half stave structure
  return halfStaveVol;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateSpaceFrameOuterB(const TGeoManager *mgr){
//
// Create the space frame for the Outer Barrel
//
// Input:
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
//

  TGeoVolume *mechStavVol = 0;

  switch (fStaveModel) {
    case AliITSUv1::kOBModelDummy:
    case AliITSUv1::kOBModel0:
      mechStavVol = CreateSpaceFrameOuterBDummy(mgr);
      break;
    case AliITSUv1::kOBModel1:
    case AliITSUv1::kOBModel2:
      mechStavVol = CreateSpaceFrameOuterB1(mgr);
      break;
    default:
      AliFatal(Form("Unknown stave model %d",fStaveModel));
      break;
  }

  return mechStavVol; 
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateSpaceFrameOuterBDummy(const TGeoManager *) const {
//
// Create dummy stave
//
// Input:
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//


  // Done, return the stave structur
  return 0;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateSpaceFrameOuterB1(const TGeoManager *mgr){
//
// Create the space frame for the Outer Barrel (Model 1)
//
// Input:
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//         a TGeoVolume with the Space Frame of a stave
//
// Created:      20 Dec 2013  Anastasia Barbano
// Updated:      15 Jan 2014  Mario Sitta
// Updated:      18 Feb 2014  Mario Sitta
// Updated:      12 Mar 2014  Mario Sitta
//


  // Materials defined in AliITSUv0
  TGeoMedium *medCarbon       = mgr->GetMedium("ITS_CARBON$");
  TGeoMedium *medAir          = mgr->GetMedium("ITS_AIR$");


  // Local parameters
  Double_t sframeWidth        = fgkOBSpaceFrameWidth;
  Double_t sframeHeight       = fgkOBSpaceFrameTotHigh - fgkOBHalfStaveYTrans;
  Double_t staveBeamRadius    = fgkOBSFrameBeamRadius;
  Double_t staveLa            = fgkOBSpaceFrameLa;
  Double_t staveHa            = fgkOBSpaceFrameHa;
  Double_t staveLb            = fgkOBSpaceFrameLb;
  Double_t staveHb            = fgkOBSpaceFrameHb;
  Double_t stavel             = fgkOBSpaceFrameL;
  Double_t bottomBeamAngle    = fgkOBSFBotBeamAngle;
  Double_t triangleHeight     = sframeHeight - staveBeamRadius;
  Double_t halfTheta          = TMath::ATan( 0.5*sframeWidth/triangleHeight );
//  Double_t alpha              = TMath::Pi()*3./4. - halfTheta/2.;
  Double_t beta               = (TMath::Pi() - 2.*halfTheta)/4.;
//  Double_t distCenterSideDown = 0.5*sframeWidth/TMath::Cos(beta);

  Double_t zlen;
  Double_t xpos, ypos, zpos;
  Double_t seglen;
  char volname[30];


  zlen = fNModules*fgkOBModuleZLength + (fNModules-1)*fgkOBModuleGap;

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSHalfStavePattern(), fLayerNumber);
  if (gGeoManager->GetVolume(volname)) { // Should always be so
    sframeHeight -= ((TGeoBBox*)gGeoManager->GetVolume(volname)->GetShape())->GetDY()*2;
    zlen = ((TGeoBBox*)gGeoManager->GetVolume(volname)->GetShape())->GetDZ()*2;
  }
  seglen = zlen/fNModules;


  // First create all needed shapes and volumes

  TGeoBBox *spaceFrame = new TGeoBBox(sframeWidth/2,sframeHeight/2,zlen/2);
  TGeoBBox *segment    = new TGeoBBox(sframeWidth/2,sframeHeight/2,seglen/2);

  TGeoVolume *spaceFrameVol = new TGeoVolume("CarbonFrameVolume",
					     spaceFrame, medAir);
  spaceFrameVol->SetVisibility(kFALSE);

  TGeoVolume *segmentVol    = new TGeoVolume("segmentVol", segment, medAir);

  //SpaceFrame

  //--- the top V of the Carbon Fiber Stave (segment)
  TGeoArb8 *cfStavTop1 = CreateStaveSide("CFstavTopCornerVol1shape", seglen/2., halfTheta, -1, staveLa, staveHa, stavel);
  TGeoVolume *cfStavTopVol1 = new TGeoVolume("CFstavTopCornerVol1",
					     cfStavTop1, medCarbon);
  cfStavTopVol1->SetLineColor(35);

  TGeoArb8 *cfStavTop2 = CreateStaveSide("CFstavTopCornerVol2shape", seglen/2., halfTheta,  1, staveLa, staveHa, stavel);
  TGeoVolume *cfStavTopVol2 = new TGeoVolume("CFstavTopCornerVol2",
					     cfStavTop2, medCarbon );
  cfStavTopVol2->SetLineColor(35);

  TGeoTranslation *trTop1 = new TGeoTranslation(0, sframeHeight/2, 0);
  
  //--- the 2 side V
  TGeoArb8 *cfStavSide1 = CreateStaveSide("CFstavSideCornerVol1shape", seglen/2., beta, -1, staveLb, staveHb, stavel);
  TGeoVolume *cfStavSideVol1 = new TGeoVolume("CFstavSideCornerVol1",
					      cfStavSide1, medCarbon);
  cfStavSideVol1->SetLineColor(35);

  TGeoArb8 *cfStavSide2 = CreateStaveSide("CFstavSideCornerVol2shape", seglen/2., beta,  1, staveLb, staveHb, stavel);
  TGeoVolume *cfStavSideVol2 = new TGeoVolume("CFstavSideCornerVol2",
					      cfStavSide2, medCarbon );
  cfStavSideVol2->SetLineColor(35);

  xpos = -sframeWidth/2;
  ypos = -sframeHeight/2 + staveBeamRadius + staveHb*TMath::Sin(beta);
  TGeoCombiTrans *ctSideR = new TGeoCombiTrans( xpos, ypos, 0,
				       new TGeoRotation("", 180-2*beta*TMath::RadToDeg(), 0, 0));
  TGeoCombiTrans *ctSideL = new TGeoCombiTrans(-xpos, ypos, 0,
				       new TGeoRotation("",-180+2*beta*TMath::RadToDeg(), 0, 0));

  segmentVol->AddNode(cfStavTopVol1,1,trTop1);
  segmentVol->AddNode(cfStavTopVol2,1,trTop1);
  segmentVol->AddNode(cfStavSideVol1,1,ctSideR);
  segmentVol->AddNode(cfStavSideVol1,2,ctSideL);
  segmentVol->AddNode(cfStavSideVol2,1,ctSideR);
  segmentVol->AddNode(cfStavSideVol2,2,ctSideL);


  //--- The beams
  // Beams on the sides
  Double_t beamPhiPrime = TMath::ASin(1./TMath::Sqrt( (1+TMath::Sin(2*beta)*TMath::Sin(2*beta)/(TanD(fgkOBSFrameBeamSidePhi)*TanD(fgkOBSFrameBeamSidePhi))) ));
  Double_t beamLength = TMath::Sqrt( sframeHeight*sframeHeight/( TMath::Sin(beamPhiPrime)*TMath::Sin(beamPhiPrime))+ sframeWidth*sframeWidth/4.)-staveLa/2-staveLb/2;
  TGeoTubeSeg *sideBeam = new TGeoTubeSeg(0, staveBeamRadius,
					  beamLength/2, 0, 180);
  TGeoVolume *sideBeamVol = new TGeoVolume("CFstavSideBeamVol",
					   sideBeam, medCarbon);
  sideBeamVol->SetLineColor(35);

  TGeoRotation *beamRot1 = new TGeoRotation("", /*90-2*beta*/halfTheta*TMath::RadToDeg(),
				    -beamPhiPrime*TMath::RadToDeg(), -90);
  TGeoRotation *beamRot2 = new TGeoRotation("", 90-2.*beta*TMath::RadToDeg(),
				     beamPhiPrime*TMath::RadToDeg(), -90);
  TGeoRotation *beamRot3 = new TGeoRotation("", 90+2.*beta*TMath::RadToDeg(),
				     beamPhiPrime*TMath::RadToDeg(), -90);
  TGeoRotation *beamRot4 = new TGeoRotation("", 90+2.*beta*TMath::RadToDeg(),
				    -beamPhiPrime*TMath::RadToDeg(), -90);

  TGeoCombiTrans *beamTransf[8];
  xpos = 0.49*triangleHeight*TMath::Tan(halfTheta);//was 0.5, fix small overlap
  ypos = staveBeamRadius/2;
  zpos = seglen/8;
  beamTransf[0] = new TGeoCombiTrans( xpos, ypos,-3*zpos, beamRot1);

  beamTransf[1] = new TGeoCombiTrans( xpos, ypos,-3*zpos, beamRot1);
  AddTranslationToCombiTrans(beamTransf[1], 0, 0, seglen/2);

  beamTransf[2] = new TGeoCombiTrans( xpos, ypos,  -zpos, beamRot2);

  beamTransf[3] = new TGeoCombiTrans( xpos, ypos,  -zpos, beamRot2);
  AddTranslationToCombiTrans(beamTransf[3], 0, 0, seglen/2);

  beamTransf[4] = new TGeoCombiTrans(-xpos, ypos,-3*zpos, beamRot3);

  beamTransf[5] = new TGeoCombiTrans(-xpos, ypos,-3*zpos, beamRot3);
  AddTranslationToCombiTrans(beamTransf[5], 0, 0, seglen/2);

  beamTransf[6] = new TGeoCombiTrans(-xpos, ypos,  -zpos, beamRot4);
  beamTransf[7] = new TGeoCombiTrans(-xpos, ypos, 3*zpos, beamRot4);

  //--- Beams of the bottom
  TGeoTubeSeg *bottomBeam1 = new TGeoTubeSeg(0, staveBeamRadius,
					     sframeWidth/2.-staveLb/3, 0, 180);
  TGeoVolume *bottomBeam1Vol = new TGeoVolume("CFstavBottomBeam1Vol",
					      bottomBeam1, medCarbon);
  bottomBeam1Vol->SetLineColor(35);

  TGeoTubeSeg *bottomBeam2 = new TGeoTubeSeg(0, staveBeamRadius,
					     sframeWidth/2.-staveLb/3, 0, 90);
  TGeoVolume *bottomBeam2Vol = new TGeoVolume("CFstavBottomBeam2Vol",
					      bottomBeam2, medCarbon);
  bottomBeam2Vol->SetLineColor(35);

  TGeoTubeSeg *bottomBeam3 = new TGeoTubeSeg(0, staveBeamRadius,
			     0.5*sframeWidth/SinD(bottomBeamAngle) - staveLb/3,
					     0, 180);
  TGeoVolume *bottomBeam3Vol = new TGeoVolume("CFstavBottomBeam3Vol",
					      bottomBeam3, medCarbon);
  bottomBeam3Vol->SetLineColor(35);

  TGeoRotation *bottomBeamRot1 = new TGeoRotation("", 90, 90,  90);
  TGeoRotation *bottomBeamRot2 = new TGeoRotation("",-90, 90, -90);

  TGeoCombiTrans *bottomBeamTransf1 = new TGeoCombiTrans("",0,
					 -(sframeHeight/2-staveBeamRadius), 0,
							 bottomBeamRot1);
  TGeoCombiTrans *bottomBeamTransf2 = new TGeoCombiTrans(0,
					 -(sframeHeight/2-staveBeamRadius),
							 -seglen/2,
							 bottomBeamRot1);
  TGeoCombiTrans *bottomBeamTransf3 = new TGeoCombiTrans(0,
					 -(sframeHeight/2-staveBeamRadius),
							 seglen/2,
							 bottomBeamRot2);
  // be careful for beams #3: when "reading" from -z to +z and 
  // from the bottom of the stave, it should draw a Lambda, and not a V
  TGeoRotation *bottomBeamRot4 = new TGeoRotation("",-90, bottomBeamAngle,-90);
  TGeoRotation *bottomBeamRot5 = new TGeoRotation("",-90,-bottomBeamAngle,-90);

  TGeoCombiTrans *bottomBeamTransf4 = new TGeoCombiTrans(0,
					 -(sframeHeight/2-staveBeamRadius),
							 -seglen/4,
							 bottomBeamRot4);
  TGeoCombiTrans *bottomBeamTransf5 = new TGeoCombiTrans(0,
					 -(sframeHeight/2-staveBeamRadius),
							 seglen/4,
							 bottomBeamRot5);


  segmentVol->AddNode(sideBeamVol,1, beamTransf[0]);
  segmentVol->AddNode(sideBeamVol,2, beamTransf[1]);
  segmentVol->AddNode(sideBeamVol,3, beamTransf[2]);
  segmentVol->AddNode(sideBeamVol,4, beamTransf[3]);
  segmentVol->AddNode(sideBeamVol,5, beamTransf[4]);
  segmentVol->AddNode(sideBeamVol,6, beamTransf[5]);
  segmentVol->AddNode(sideBeamVol,7, beamTransf[6]);
  segmentVol->AddNode(sideBeamVol,8, beamTransf[7]);
  segmentVol->AddNode(bottomBeam1Vol,1,bottomBeamTransf1);
  segmentVol->AddNode(bottomBeam2Vol,1,bottomBeamTransf2);
  segmentVol->AddNode(bottomBeam2Vol,2,bottomBeamTransf3);
  segmentVol->AddNode(bottomBeam3Vol,1,bottomBeamTransf4);
  segmentVol->AddNode(bottomBeam3Vol,2,bottomBeamTransf5);


  // Then build up the space frame
  for(Int_t i=0; i<fNModules; i++){
    zpos = -spaceFrame->GetDZ() + (1 + 2*i)*segment->GetDZ();
    spaceFrameVol->AddNode(segmentVol, i, new TGeoTranslation(0, 0, zpos));
  }


  // Done, return the space frame structure
  return spaceFrameVol;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateChipInnerB(const Double_t xchip,
					     const Double_t ychip,   
					     const Double_t zchip,
					     const TGeoManager *mgr){
//
// Creates the actual Chip
//
// Input:
//         xchip,ychip,zchip : the chip dimensions
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//
// Created:      22 Jun 2011  Mario Sitta
//

  char volname[30];
  Double_t xlen, ylen, zlen;
  Double_t xpos, ypos, zpos;


  // First create all needed shapes

  // The chip
  TGeoBBox *chip = new TGeoBBox(xchip,  ychip, zchip);

  // The sensor
  xlen = chip->GetDX();
  ylen = 0.5*fSensorThick;
  zlen = chip->GetDZ();
  TGeoBBox *sensor = new TGeoBBox(xlen, ylen, zlen);


  // We have all shapes: now create the real volumes
  TGeoMedium *medSi  = mgr->GetMedium("ITS_SI$");

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSChipPattern(), fLayerNumber);
  TGeoVolume *chipVol = new TGeoVolume(volname, chip, medSi);
  chipVol->SetVisibility(kTRUE);
  chipVol->SetLineColor(1);

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSSensorPattern(), fLayerNumber);
  TGeoVolume *sensVol = new TGeoVolume(volname, sensor, medSi);
  sensVol->SetVisibility(kTRUE);
  sensVol->SetLineColor(8);
  sensVol->SetLineWidth(1);
  sensVol->SetFillColor(sensVol->GetLineColor());
  sensVol->SetFillStyle(4000); // 0% transparent


  // Now build up the chip
  xpos = 0.;
  ypos = -chip->GetDY() + sensor->GetDY();
  zpos = 0.;

  chipVol->AddNode(sensVol, 1, new TGeoTranslation(xpos, ypos, zpos));

  // Done, return the chip
  return chipVol;
}

//________________________________________________________________________
TGeoVolume* AliITSUv1Layer::CreateModuleOuterB(const TGeoManager *mgr){
//
// Creates the OB Module: HIC + FPC + Carbon plate
//
// Input:
//         mgr  : the GeoManager (used only to get the proper material)
//
// Output:
//
// Return:
//         the module as a TGeoVolume
//
// Created:      18 Dec 2013  M. Sitta, A. Barbano
// Updated:      26 Feb 2014  M. Sitta
// Updated:      12 Nov 2014  M. Sitta  Model2 is w/o Carbon Plate and Glue
//                                      and Cu instead of Al
//


  char volname[30];

  Double_t xGap  = fgkOBChipXGap;
  Double_t zGap  = fgkOBChipZGap;

  Double_t xchip, ychip, zchip;
  Double_t xlen, ylen, zlen;
  Double_t xpos, ypos, zpos;
  
  // First create all needed shapes

  // The chip (the same as for IB)
  xlen = (fgkOBHalfStaveWidth/2-xGap/2)/fgkOBNChipRows;
  ylen = 0.5*fChipThick;
  zlen = (fgkOBModuleZLength - (fgkOBChipsPerRow-1)*zGap)/(2*fgkOBChipsPerRow);

  TGeoVolume *chipVol = CreateChipInnerB(xlen, ylen, zlen);

  xchip = ((TGeoBBox*)chipVol->GetShape())->GetDX();
  ychip = ((TGeoBBox*)chipVol->GetShape())->GetDY();
  zchip = ((TGeoBBox*)chipVol->GetShape())->GetDZ();

  // The module carbon plate
  xlen = fgkOBHalfStaveWidth/2;
  ylen = fgkOBCarbonPlateThick/2;
  zlen = fgkOBModuleZLength/2;
  TGeoBBox *modPlate = new TGeoBBox("CarbonPlate", xlen, ylen, zlen);

  // The glue
  ylen = fgkOBGlueThickM1/2;
  TGeoBBox *glue = new TGeoBBox("Glue", xlen, ylen, zlen);

  // The FPC cables
  TGeoBBox *flexMetal;
  if (fStaveModel == AliITSUv1::kOBModel1) {
    ylen = fgkOBFlexCableAlThick/2;
    flexMetal = new TGeoBBox("FlexAl", xlen, ylen, zlen);
  } else {
    ylen = fgkOBFlexCableCuThick/2;
    flexMetal = new TGeoBBox("FlexCu", xlen, ylen, zlen);
  }

  if (fStaveModel == AliITSUv1::kOBModel1)
    ylen = fgkOBFlexCableKapThick1/2;
  else
    ylen = fgkOBFlexCableKapThick/2;
  TGeoBBox *flexKap = new TGeoBBox("FlexKap", xlen, ylen, zlen);

  // The module
  xlen = fgkOBHalfStaveWidth/2;
  ylen = ychip + flexMetal->GetDY() + flexKap->GetDY();
  if (fStaveModel == AliITSUv1::kOBModel1)
    ylen += (modPlate->GetDY() + glue->GetDY());
  zlen = fgkOBModuleZLength/2;
  TGeoBBox *module = new TGeoBBox("OBModule", xlen,  ylen, zlen);


  // We have all shapes: now create the real volumes
 
  TGeoMedium *medAir      = mgr->GetMedium("ITS_AIR$");
  TGeoMedium *medCarbon   = mgr->GetMedium("ITS_CARBON$");
  TGeoMedium *medGlue     = mgr->GetMedium("ITS_GLUE$");
  TGeoMedium *medAluminum = mgr->GetMedium("ITS_ALUMINUM$");
  TGeoMedium *medCopper   = mgr->GetMedium("ITS_COPPER$");
  TGeoMedium *medKapton   = mgr->GetMedium("ITS_KAPTON(POLYCH2)$");

  TGeoVolume *modPlateVol = new TGeoVolume("CarbonPlateVol",
					    modPlate, medCarbon);
  modPlateVol->SetLineColor(kMagenta-8);
  modPlateVol->SetFillColor(modPlateVol->GetLineColor());
  modPlateVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *glueVol = new TGeoVolume("GlueVol", glue, medGlue);
  glueVol->SetLineColor(kBlack);
  glueVol->SetFillColor(glueVol->GetLineColor());
  glueVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *flexMetalVol;
  if (fStaveModel == AliITSUv1::kOBModel1)
    flexMetalVol = new TGeoVolume("FPCAlVol", flexMetal, medAluminum);
  else
    flexMetalVol = new TGeoVolume("FPCCuVol", flexMetal, medCopper);
  flexMetalVol->SetLineColor(kRed);
  flexMetalVol->SetFillColor(flexMetalVol->GetLineColor());
  flexMetalVol->SetFillStyle(4000); // 0% transparent

  TGeoVolume *flexKapVol = new TGeoVolume("FPCKapVol", flexKap, medKapton);
  flexKapVol->SetLineColor(kGreen);
  flexKapVol->SetFillColor(flexKapVol->GetLineColor());
  flexKapVol->SetFillStyle(4000); // 0% transparent

  snprintf(volname, 30, "%s%d", AliITSUGeomTGeo::GetITSModulePattern(), fLayerNumber);
  TGeoVolume *modVol = new TGeoVolume(volname, module, medAir);
  modVol->SetVisibility(kTRUE);
  

  // Now build up the module
  // Model1 : CarbonPlate-Glue-Chips-AluminumFPC-KaptonFPC
  // Model2 : Chips-CopperFPC-KaptonFPCChips
  ypos = -module->GetDY();

  if (fStaveModel == AliITSUv1::kOBModel1) {
    ypos += modPlate->GetDY();
    if (fBuildLevel < 5) // Carbon
      modVol->AddNode(modPlateVol, 1, new TGeoTranslation(0, ypos, 0));

    ypos += (modPlate->GetDY() + glue->GetDY());
    if (fBuildLevel < 2) // Glue
      modVol->AddNode(glueVol, 1, new TGeoTranslation(0, ypos, 0));

    ypos += glue->GetDY();
  }

  xpos = -module->GetDX() + xchip;
  ypos += ychip;
  for(Int_t k=0; k<fgkOBChipsPerRow; k++)   //put 7x2 chip into one module
    {
      zpos = -module->GetDZ() + zchip + k*(2*zchip + zGap);
      modVol->AddNode(chipVol, 2*k  , new TGeoTranslation( xpos, ypos, zpos));
      modVol->AddNode(chipVol, 2*k+1, 
      new TGeoCombiTrans(-xpos, ypos, zpos, new TGeoRotation("",0,180,180)));
      fHierarchy[kChip]+=2;
    }

  ypos += (ychip + flexMetal->GetDY());
  if (fBuildLevel < 1) // Model1: Aluminum  Model2: Copper
    modVol->AddNode(flexMetalVol, 1, new TGeoTranslation(0, ypos, 0));

  ypos += (flexMetal->GetDY() + flexKap->GetDY());
  if ( (fStaveModel == AliITSUv1::kOBModel1 && fBuildLevel < 4) || // Kapton
       (fStaveModel == AliITSUv1::kOBModel2 && fBuildLevel < 5) )
    modVol->AddNode(flexKapVol, 1, new TGeoTranslation(0, ypos, 0));

  // Done, return the module
  return modVol;
}

//________________________________________________________________________
void AliITSUv1Layer::SetNUnits(Int_t u)
{
//
// Sets the number of units in a stave:
//      for the Inner Barrel: the number of chips per stave
//      for the Outer Barrel: the number of modules per half stave
//
//
// Input:
//         u :  the number of units
//
// Output:
//
// Return:
//
// Created:      18 Feb 2013  Mario Sitta (was already SetNChips)
//

  if (fLayerNumber < fgkNumberOfInnerLayers)
    fNChips = u;
  else {
    fNModules = u;
    fNChips = fgkOBChipsPerRow;
  }

}

//________________________________________________________________________
void AliITSUv1Layer::SetStaveTilt(const Double_t t)
{
//
// Sets the Stave tilt angle (for turbo layers only)
//
// Input:
//         t :  the stave tilt angle
//
// Output:
//
// Return:
//
// Created:      08 Jul 2011  Mario Sitta
//

  if (fIsTurbo)
    fStaveTilt = t;
  else
    AliError("Not a Turbo layer");

}

//________________________________________________________________________
void AliITSUv1Layer::SetStaveWidth(const Double_t w){
//
// Sets the Stave width (for turbo layers only)
//
// Input:
//         w :  the stave width
//
// Output:
//
// Return:
//
// Created:      08 Jul 2011  Mario Sitta
//

  if (fIsTurbo)
    fStaveWidth = w;
  else
    AliError("Not a Turbo layer");

}

//________________________________________________________________________
TGeoArb8 *AliITSUv1Layer::CreateStaveSide(const char *name,
                         Double_t dz, Double_t angle, Double_t xSign,
                         Double_t L, Double_t H, Double_t l) {
//
// Creates the V-shaped sides of the OB space frame
// (from a similar method with same name and function
// in AliITSv11GeometrySDD class by L.Gaudichet)
//

    // Create one half of the V shape corner of CF stave
  
    TGeoArb8 *cfStavSide = new TGeoArb8(dz);
    cfStavSide->SetName(name);

    // Points must be in clockwise order
    cfStavSide->SetVertex(0, 0,  0);
    cfStavSide->SetVertex(2, xSign*(L*TMath::Sin(angle)-l*TMath::Cos(angle)),
			  -L*TMath::Cos(angle)-l*TMath::Sin(angle));
    cfStavSide->SetVertex(4, 0,  0);
    cfStavSide->SetVertex(6, xSign*(L*TMath::Sin(angle)-l*TMath::Cos(angle)),
			  -L*TMath::Cos(angle)-l*TMath::Sin(angle));
    if (xSign < 0) {
     cfStavSide->SetVertex(1, 0, -H);
     cfStavSide->SetVertex(3, xSign*L*TMath::Sin(angle), -L*TMath::Cos(angle));
     cfStavSide->SetVertex(5, 0, -H);
     cfStavSide->SetVertex(7, xSign*L*TMath::Sin(angle), -L*TMath::Cos(angle));
    } else {
     cfStavSide->SetVertex(1, xSign*L*TMath::Sin(angle), -L*TMath::Cos(angle));
     cfStavSide->SetVertex(3, 0, -H);
     cfStavSide->SetVertex(5, xSign*L*TMath::Sin(angle), -L*TMath::Cos(angle));
     cfStavSide->SetVertex(7, 0, -H);
    }
    return cfStavSide;
}

//________________________________________________________________________
TGeoCombiTrans *AliITSUv1Layer::CreateCombiTrans(const char *name,
					 Double_t dy, Double_t dz,
					 Double_t dphi, Bool_t planeSym) {
//
// Help method to create a TGeoCombiTrans matrix
// (from a similar method with same name and function
// in AliITSv11GeometrySDD class by L.Gaudichet)
//

    //
    // return the TGeoCombiTrans which make a translation in y and z
    // and a rotation in phi in the global coord system
    // If planeSym = true, the rotation places the object symetrically
    // (with respect to the transverse plane) to its position in the
    // case planeSym = false
    //

    TGeoTranslation t1(dy*CosD(90.+dphi),dy*SinD(90.+dphi), dz);
    TGeoRotation r1("",0.,0.,dphi);
    TGeoRotation r2("",90, 180, -90-dphi);

    TGeoCombiTrans *combiTrans1 = new TGeoCombiTrans(name);
    combiTrans1->SetTranslation(t1);
    if (planeSym) combiTrans1->SetRotation(r1);
    else  combiTrans1->SetRotation(r2);
    return combiTrans1;
}

//________________________________________________________________________
void AliITSUv1Layer::AddTranslationToCombiTrans(TGeoCombiTrans* ct,
                                                       Double_t dx,
                                                       Double_t dy,
                                                       Double_t dz) const{
//
// Help method to add a translation to a TGeoCombiTrans matrix
// (from a similar method with same name and function
// in AliITSv11GeometrySDD class by L.Gaudichet)
//

  // Add a dx,dy,dz translation to the initial TGeoCombiTrans
  const Double_t *vect = ct->GetTranslation();
  Double_t newVect[3] = {vect[0]+dx, vect[1]+dy, vect[2]+dz};
  ct->SetTranslation(newVect);
}
 AliITSUv1Layer.cxx:1
 AliITSUv1Layer.cxx:2
 AliITSUv1Layer.cxx:3
 AliITSUv1Layer.cxx:4
 AliITSUv1Layer.cxx:5
 AliITSUv1Layer.cxx:6
 AliITSUv1Layer.cxx:7
 AliITSUv1Layer.cxx:8
 AliITSUv1Layer.cxx:9
 AliITSUv1Layer.cxx:10
 AliITSUv1Layer.cxx:11
 AliITSUv1Layer.cxx:12
 AliITSUv1Layer.cxx:13
 AliITSUv1Layer.cxx:14
 AliITSUv1Layer.cxx:15
 AliITSUv1Layer.cxx:16
 AliITSUv1Layer.cxx:17
 AliITSUv1Layer.cxx:18
 AliITSUv1Layer.cxx:19
 AliITSUv1Layer.cxx:20
 AliITSUv1Layer.cxx:21
 AliITSUv1Layer.cxx:22
 AliITSUv1Layer.cxx:23
 AliITSUv1Layer.cxx:24
 AliITSUv1Layer.cxx:25
 AliITSUv1Layer.cxx:26
 AliITSUv1Layer.cxx:27
 AliITSUv1Layer.cxx:28
 AliITSUv1Layer.cxx:29
 AliITSUv1Layer.cxx:30
 AliITSUv1Layer.cxx:31
 AliITSUv1Layer.cxx:32
 AliITSUv1Layer.cxx:33
 AliITSUv1Layer.cxx:34
 AliITSUv1Layer.cxx:35
 AliITSUv1Layer.cxx:36
 AliITSUv1Layer.cxx:37
 AliITSUv1Layer.cxx:38
 AliITSUv1Layer.cxx:39
 AliITSUv1Layer.cxx:40
 AliITSUv1Layer.cxx:41
 AliITSUv1Layer.cxx:42
 AliITSUv1Layer.cxx:43
 AliITSUv1Layer.cxx:44
 AliITSUv1Layer.cxx:45
 AliITSUv1Layer.cxx:46
 AliITSUv1Layer.cxx:47
 AliITSUv1Layer.cxx:48
 AliITSUv1Layer.cxx:49
 AliITSUv1Layer.cxx:50
 AliITSUv1Layer.cxx:51
 AliITSUv1Layer.cxx:52
 AliITSUv1Layer.cxx:53
 AliITSUv1Layer.cxx:54
 AliITSUv1Layer.cxx:55
 AliITSUv1Layer.cxx:56
 AliITSUv1Layer.cxx:57
 AliITSUv1Layer.cxx:58
 AliITSUv1Layer.cxx:59
 AliITSUv1Layer.cxx:60
 AliITSUv1Layer.cxx:61
 AliITSUv1Layer.cxx:62
 AliITSUv1Layer.cxx:63
 AliITSUv1Layer.cxx:64
 AliITSUv1Layer.cxx:65
 AliITSUv1Layer.cxx:66
 AliITSUv1Layer.cxx:67
 AliITSUv1Layer.cxx:68
 AliITSUv1Layer.cxx:69
 AliITSUv1Layer.cxx:70
 AliITSUv1Layer.cxx:71
 AliITSUv1Layer.cxx:72
 AliITSUv1Layer.cxx:73
 AliITSUv1Layer.cxx:74
 AliITSUv1Layer.cxx:75
 AliITSUv1Layer.cxx:76
 AliITSUv1Layer.cxx:77
 AliITSUv1Layer.cxx:78
 AliITSUv1Layer.cxx:79
 AliITSUv1Layer.cxx:80
 AliITSUv1Layer.cxx:81
 AliITSUv1Layer.cxx:82
 AliITSUv1Layer.cxx:83
 AliITSUv1Layer.cxx:84
 AliITSUv1Layer.cxx:85
 AliITSUv1Layer.cxx:86
 AliITSUv1Layer.cxx:87
 AliITSUv1Layer.cxx:88
 AliITSUv1Layer.cxx:89
 AliITSUv1Layer.cxx:90
 AliITSUv1Layer.cxx:91
 AliITSUv1Layer.cxx:92
 AliITSUv1Layer.cxx:93
 AliITSUv1Layer.cxx:94
 AliITSUv1Layer.cxx:95
 AliITSUv1Layer.cxx:96
 AliITSUv1Layer.cxx:97
 AliITSUv1Layer.cxx:98
 AliITSUv1Layer.cxx:99
 AliITSUv1Layer.cxx:100
 AliITSUv1Layer.cxx:101
 AliITSUv1Layer.cxx:102
 AliITSUv1Layer.cxx:103
 AliITSUv1Layer.cxx:104
 AliITSUv1Layer.cxx:105
 AliITSUv1Layer.cxx:106
 AliITSUv1Layer.cxx:107
 AliITSUv1Layer.cxx:108
 AliITSUv1Layer.cxx:109
 AliITSUv1Layer.cxx:110
 AliITSUv1Layer.cxx:111
 AliITSUv1Layer.cxx:112
 AliITSUv1Layer.cxx:113
 AliITSUv1Layer.cxx:114
 AliITSUv1Layer.cxx:115
 AliITSUv1Layer.cxx:116
 AliITSUv1Layer.cxx:117
 AliITSUv1Layer.cxx:118
 AliITSUv1Layer.cxx:119
 AliITSUv1Layer.cxx:120
 AliITSUv1Layer.cxx:121
 AliITSUv1Layer.cxx:122
 AliITSUv1Layer.cxx:123
 AliITSUv1Layer.cxx:124
 AliITSUv1Layer.cxx:125
 AliITSUv1Layer.cxx:126
 AliITSUv1Layer.cxx:127
 AliITSUv1Layer.cxx:128
 AliITSUv1Layer.cxx:129
 AliITSUv1Layer.cxx:130
 AliITSUv1Layer.cxx:131
 AliITSUv1Layer.cxx:132
 AliITSUv1Layer.cxx:133
 AliITSUv1Layer.cxx:134
 AliITSUv1Layer.cxx:135
 AliITSUv1Layer.cxx:136
 AliITSUv1Layer.cxx:137
 AliITSUv1Layer.cxx:138
 AliITSUv1Layer.cxx:139
 AliITSUv1Layer.cxx:140
 AliITSUv1Layer.cxx:141
 AliITSUv1Layer.cxx:142
 AliITSUv1Layer.cxx:143
 AliITSUv1Layer.cxx:144
 AliITSUv1Layer.cxx:145
 AliITSUv1Layer.cxx:146
 AliITSUv1Layer.cxx:147
 AliITSUv1Layer.cxx:148
 AliITSUv1Layer.cxx:149
 AliITSUv1Layer.cxx:150
 AliITSUv1Layer.cxx:151
 AliITSUv1Layer.cxx:152
 AliITSUv1Layer.cxx:153
 AliITSUv1Layer.cxx:154
 AliITSUv1Layer.cxx:155
 AliITSUv1Layer.cxx:156
 AliITSUv1Layer.cxx:157
 AliITSUv1Layer.cxx:158
 AliITSUv1Layer.cxx:159
 AliITSUv1Layer.cxx:160
 AliITSUv1Layer.cxx:161
 AliITSUv1Layer.cxx:162
 AliITSUv1Layer.cxx:163
 AliITSUv1Layer.cxx:164
 AliITSUv1Layer.cxx:165
 AliITSUv1Layer.cxx:166
 AliITSUv1Layer.cxx:167
 AliITSUv1Layer.cxx:168
 AliITSUv1Layer.cxx:169
 AliITSUv1Layer.cxx:170
 AliITSUv1Layer.cxx:171
 AliITSUv1Layer.cxx:172
 AliITSUv1Layer.cxx:173
 AliITSUv1Layer.cxx:174
 AliITSUv1Layer.cxx:175
 AliITSUv1Layer.cxx:176
 AliITSUv1Layer.cxx:177
 AliITSUv1Layer.cxx:178
 AliITSUv1Layer.cxx:179
 AliITSUv1Layer.cxx:180
 AliITSUv1Layer.cxx:181
 AliITSUv1Layer.cxx:182
 AliITSUv1Layer.cxx:183
 AliITSUv1Layer.cxx:184
 AliITSUv1Layer.cxx:185
 AliITSUv1Layer.cxx:186
 AliITSUv1Layer.cxx:187
 AliITSUv1Layer.cxx:188
 AliITSUv1Layer.cxx:189
 AliITSUv1Layer.cxx:190
 AliITSUv1Layer.cxx:191
 AliITSUv1Layer.cxx:192
 AliITSUv1Layer.cxx:193
 AliITSUv1Layer.cxx:194
 AliITSUv1Layer.cxx:195
 AliITSUv1Layer.cxx:196
 AliITSUv1Layer.cxx:197
 AliITSUv1Layer.cxx:198
 AliITSUv1Layer.cxx:199
 AliITSUv1Layer.cxx:200
 AliITSUv1Layer.cxx:201
 AliITSUv1Layer.cxx:202
 AliITSUv1Layer.cxx:203
 AliITSUv1Layer.cxx:204
 AliITSUv1Layer.cxx:205
 AliITSUv1Layer.cxx:206
 AliITSUv1Layer.cxx:207
 AliITSUv1Layer.cxx:208
 AliITSUv1Layer.cxx:209
 AliITSUv1Layer.cxx:210
 AliITSUv1Layer.cxx:211
 AliITSUv1Layer.cxx:212
 AliITSUv1Layer.cxx:213
 AliITSUv1Layer.cxx:214
 AliITSUv1Layer.cxx:215
 AliITSUv1Layer.cxx:216
 AliITSUv1Layer.cxx:217
 AliITSUv1Layer.cxx:218
 AliITSUv1Layer.cxx:219
 AliITSUv1Layer.cxx:220
 AliITSUv1Layer.cxx:221
 AliITSUv1Layer.cxx:222
 AliITSUv1Layer.cxx:223
 AliITSUv1Layer.cxx:224
 AliITSUv1Layer.cxx:225
 AliITSUv1Layer.cxx:226
 AliITSUv1Layer.cxx:227
 AliITSUv1Layer.cxx:228
 AliITSUv1Layer.cxx:229
 AliITSUv1Layer.cxx:230
 AliITSUv1Layer.cxx:231
 AliITSUv1Layer.cxx:232
 AliITSUv1Layer.cxx:233
 AliITSUv1Layer.cxx:234
 AliITSUv1Layer.cxx:235
 AliITSUv1Layer.cxx:236
 AliITSUv1Layer.cxx:237
 AliITSUv1Layer.cxx:238
 AliITSUv1Layer.cxx:239
 AliITSUv1Layer.cxx:240
 AliITSUv1Layer.cxx:241
 AliITSUv1Layer.cxx:242
 AliITSUv1Layer.cxx:243
 AliITSUv1Layer.cxx:244
 AliITSUv1Layer.cxx:245
 AliITSUv1Layer.cxx:246
 AliITSUv1Layer.cxx:247
 AliITSUv1Layer.cxx:248
 AliITSUv1Layer.cxx:249
 AliITSUv1Layer.cxx:250
 AliITSUv1Layer.cxx:251
 AliITSUv1Layer.cxx:252
 AliITSUv1Layer.cxx:253
 AliITSUv1Layer.cxx:254
 AliITSUv1Layer.cxx:255
 AliITSUv1Layer.cxx:256
 AliITSUv1Layer.cxx:257
 AliITSUv1Layer.cxx:258
 AliITSUv1Layer.cxx:259
 AliITSUv1Layer.cxx:260
 AliITSUv1Layer.cxx:261
 AliITSUv1Layer.cxx:262
 AliITSUv1Layer.cxx:263
 AliITSUv1Layer.cxx:264
 AliITSUv1Layer.cxx:265
 AliITSUv1Layer.cxx:266
 AliITSUv1Layer.cxx:267
 AliITSUv1Layer.cxx:268
 AliITSUv1Layer.cxx:269
 AliITSUv1Layer.cxx:270
 AliITSUv1Layer.cxx:271
 AliITSUv1Layer.cxx:272
 AliITSUv1Layer.cxx:273
 AliITSUv1Layer.cxx:274
 AliITSUv1Layer.cxx:275
 AliITSUv1Layer.cxx:276
 AliITSUv1Layer.cxx:277
 AliITSUv1Layer.cxx:278
 AliITSUv1Layer.cxx:279
 AliITSUv1Layer.cxx:280
 AliITSUv1Layer.cxx:281
 AliITSUv1Layer.cxx:282
 AliITSUv1Layer.cxx:283
 AliITSUv1Layer.cxx:284
 AliITSUv1Layer.cxx:285
 AliITSUv1Layer.cxx:286
 AliITSUv1Layer.cxx:287
 AliITSUv1Layer.cxx:288
 AliITSUv1Layer.cxx:289
 AliITSUv1Layer.cxx:290
 AliITSUv1Layer.cxx:291
 AliITSUv1Layer.cxx:292
 AliITSUv1Layer.cxx:293
 AliITSUv1Layer.cxx:294
 AliITSUv1Layer.cxx:295
 AliITSUv1Layer.cxx:296
 AliITSUv1Layer.cxx:297
 AliITSUv1Layer.cxx:298
 AliITSUv1Layer.cxx:299
 AliITSUv1Layer.cxx:300
 AliITSUv1Layer.cxx:301
 AliITSUv1Layer.cxx:302
 AliITSUv1Layer.cxx:303
 AliITSUv1Layer.cxx:304
 AliITSUv1Layer.cxx:305
 AliITSUv1Layer.cxx:306
 AliITSUv1Layer.cxx:307
 AliITSUv1Layer.cxx:308
 AliITSUv1Layer.cxx:309
 AliITSUv1Layer.cxx:310
 AliITSUv1Layer.cxx:311
 AliITSUv1Layer.cxx:312
 AliITSUv1Layer.cxx:313
 AliITSUv1Layer.cxx:314
 AliITSUv1Layer.cxx:315
 AliITSUv1Layer.cxx:316
 AliITSUv1Layer.cxx:317
 AliITSUv1Layer.cxx:318
 AliITSUv1Layer.cxx:319
 AliITSUv1Layer.cxx:320
 AliITSUv1Layer.cxx:321
 AliITSUv1Layer.cxx:322
 AliITSUv1Layer.cxx:323
 AliITSUv1Layer.cxx:324
 AliITSUv1Layer.cxx:325
 AliITSUv1Layer.cxx:326
 AliITSUv1Layer.cxx:327
 AliITSUv1Layer.cxx:328
 AliITSUv1Layer.cxx:329
 AliITSUv1Layer.cxx:330
 AliITSUv1Layer.cxx:331
 AliITSUv1Layer.cxx:332
 AliITSUv1Layer.cxx:333
 AliITSUv1Layer.cxx:334
 AliITSUv1Layer.cxx:335
 AliITSUv1Layer.cxx:336
 AliITSUv1Layer.cxx:337
 AliITSUv1Layer.cxx:338
 AliITSUv1Layer.cxx:339
 AliITSUv1Layer.cxx:340
 AliITSUv1Layer.cxx:341
 AliITSUv1Layer.cxx:342
 AliITSUv1Layer.cxx:343
 AliITSUv1Layer.cxx:344
 AliITSUv1Layer.cxx:345
 AliITSUv1Layer.cxx:346
 AliITSUv1Layer.cxx:347
 AliITSUv1Layer.cxx:348
 AliITSUv1Layer.cxx:349
 AliITSUv1Layer.cxx:350
 AliITSUv1Layer.cxx:351
 AliITSUv1Layer.cxx:352
 AliITSUv1Layer.cxx:353
 AliITSUv1Layer.cxx:354
 AliITSUv1Layer.cxx:355
 AliITSUv1Layer.cxx:356
 AliITSUv1Layer.cxx:357
 AliITSUv1Layer.cxx:358
 AliITSUv1Layer.cxx:359
 AliITSUv1Layer.cxx:360
 AliITSUv1Layer.cxx:361
 AliITSUv1Layer.cxx:362
 AliITSUv1Layer.cxx:363
 AliITSUv1Layer.cxx:364
 AliITSUv1Layer.cxx:365
 AliITSUv1Layer.cxx:366
 AliITSUv1Layer.cxx:367
 AliITSUv1Layer.cxx:368
 AliITSUv1Layer.cxx:369
 AliITSUv1Layer.cxx:370
 AliITSUv1Layer.cxx:371
 AliITSUv1Layer.cxx:372
 AliITSUv1Layer.cxx:373
 AliITSUv1Layer.cxx:374
 AliITSUv1Layer.cxx:375
 AliITSUv1Layer.cxx:376
 AliITSUv1Layer.cxx:377
 AliITSUv1Layer.cxx:378
 AliITSUv1Layer.cxx:379
 AliITSUv1Layer.cxx:380
 AliITSUv1Layer.cxx:381
 AliITSUv1Layer.cxx:382
 AliITSUv1Layer.cxx:383
 AliITSUv1Layer.cxx:384
 AliITSUv1Layer.cxx:385
 AliITSUv1Layer.cxx:386
 AliITSUv1Layer.cxx:387
 AliITSUv1Layer.cxx:388
 AliITSUv1Layer.cxx:389
 AliITSUv1Layer.cxx:390
 AliITSUv1Layer.cxx:391
 AliITSUv1Layer.cxx:392
 AliITSUv1Layer.cxx:393
 AliITSUv1Layer.cxx:394
 AliITSUv1Layer.cxx:395
 AliITSUv1Layer.cxx:396
 AliITSUv1Layer.cxx:397
 AliITSUv1Layer.cxx:398
 AliITSUv1Layer.cxx:399
 AliITSUv1Layer.cxx:400
 AliITSUv1Layer.cxx:401
 AliITSUv1Layer.cxx:402
 AliITSUv1Layer.cxx:403
 AliITSUv1Layer.cxx:404
 AliITSUv1Layer.cxx:405
 AliITSUv1Layer.cxx:406
 AliITSUv1Layer.cxx:407
 AliITSUv1Layer.cxx:408
 AliITSUv1Layer.cxx:409
 AliITSUv1Layer.cxx:410
 AliITSUv1Layer.cxx:411
 AliITSUv1Layer.cxx:412
 AliITSUv1Layer.cxx:413
 AliITSUv1Layer.cxx:414
 AliITSUv1Layer.cxx:415
 AliITSUv1Layer.cxx:416
 AliITSUv1Layer.cxx:417
 AliITSUv1Layer.cxx:418
 AliITSUv1Layer.cxx:419
 AliITSUv1Layer.cxx:420
 AliITSUv1Layer.cxx:421
 AliITSUv1Layer.cxx:422
 AliITSUv1Layer.cxx:423
 AliITSUv1Layer.cxx:424
 AliITSUv1Layer.cxx:425
 AliITSUv1Layer.cxx:426
 AliITSUv1Layer.cxx:427
 AliITSUv1Layer.cxx:428
 AliITSUv1Layer.cxx:429
 AliITSUv1Layer.cxx:430
 AliITSUv1Layer.cxx:431
 AliITSUv1Layer.cxx:432
 AliITSUv1Layer.cxx:433
 AliITSUv1Layer.cxx:434
 AliITSUv1Layer.cxx:435
 AliITSUv1Layer.cxx:436
 AliITSUv1Layer.cxx:437
 AliITSUv1Layer.cxx:438
 AliITSUv1Layer.cxx:439
 AliITSUv1Layer.cxx:440
 AliITSUv1Layer.cxx:441
 AliITSUv1Layer.cxx:442
 AliITSUv1Layer.cxx:443
 AliITSUv1Layer.cxx:444
 AliITSUv1Layer.cxx:445
 AliITSUv1Layer.cxx:446
 AliITSUv1Layer.cxx:447
 AliITSUv1Layer.cxx:448
 AliITSUv1Layer.cxx:449
 AliITSUv1Layer.cxx:450
 AliITSUv1Layer.cxx:451
 AliITSUv1Layer.cxx:452
 AliITSUv1Layer.cxx:453
 AliITSUv1Layer.cxx:454
 AliITSUv1Layer.cxx:455
 AliITSUv1Layer.cxx:456
 AliITSUv1Layer.cxx:457
 AliITSUv1Layer.cxx:458
 AliITSUv1Layer.cxx:459
 AliITSUv1Layer.cxx:460
 AliITSUv1Layer.cxx:461
 AliITSUv1Layer.cxx:462
 AliITSUv1Layer.cxx:463
 AliITSUv1Layer.cxx:464
 AliITSUv1Layer.cxx:465
 AliITSUv1Layer.cxx:466
 AliITSUv1Layer.cxx:467
 AliITSUv1Layer.cxx:468
 AliITSUv1Layer.cxx:469
 AliITSUv1Layer.cxx:470
 AliITSUv1Layer.cxx:471
 AliITSUv1Layer.cxx:472
 AliITSUv1Layer.cxx:473
 AliITSUv1Layer.cxx:474
 AliITSUv1Layer.cxx:475
 AliITSUv1Layer.cxx:476
 AliITSUv1Layer.cxx:477
 AliITSUv1Layer.cxx:478
 AliITSUv1Layer.cxx:479
 AliITSUv1Layer.cxx:480
 AliITSUv1Layer.cxx:481
 AliITSUv1Layer.cxx:482
 AliITSUv1Layer.cxx:483
 AliITSUv1Layer.cxx:484
 AliITSUv1Layer.cxx:485
 AliITSUv1Layer.cxx:486
 AliITSUv1Layer.cxx:487
 AliITSUv1Layer.cxx:488
 AliITSUv1Layer.cxx:489
 AliITSUv1Layer.cxx:490
 AliITSUv1Layer.cxx:491
 AliITSUv1Layer.cxx:492
 AliITSUv1Layer.cxx:493
 AliITSUv1Layer.cxx:494
 AliITSUv1Layer.cxx:495
 AliITSUv1Layer.cxx:496
 AliITSUv1Layer.cxx:497
 AliITSUv1Layer.cxx:498
 AliITSUv1Layer.cxx:499
 AliITSUv1Layer.cxx:500
 AliITSUv1Layer.cxx:501
 AliITSUv1Layer.cxx:502
 AliITSUv1Layer.cxx:503
 AliITSUv1Layer.cxx:504
 AliITSUv1Layer.cxx:505
 AliITSUv1Layer.cxx:506
 AliITSUv1Layer.cxx:507
 AliITSUv1Layer.cxx:508
 AliITSUv1Layer.cxx:509
 AliITSUv1Layer.cxx:510
 AliITSUv1Layer.cxx:511
 AliITSUv1Layer.cxx:512
 AliITSUv1Layer.cxx:513
 AliITSUv1Layer.cxx:514
 AliITSUv1Layer.cxx:515
 AliITSUv1Layer.cxx:516
 AliITSUv1Layer.cxx:517
 AliITSUv1Layer.cxx:518
 AliITSUv1Layer.cxx:519
 AliITSUv1Layer.cxx:520
 AliITSUv1Layer.cxx:521
 AliITSUv1Layer.cxx:522
 AliITSUv1Layer.cxx:523
 AliITSUv1Layer.cxx:524
 AliITSUv1Layer.cxx:525
 AliITSUv1Layer.cxx:526
 AliITSUv1Layer.cxx:527
 AliITSUv1Layer.cxx:528
 AliITSUv1Layer.cxx:529
 AliITSUv1Layer.cxx:530
 AliITSUv1Layer.cxx:531
 AliITSUv1Layer.cxx:532
 AliITSUv1Layer.cxx:533
 AliITSUv1Layer.cxx:534
 AliITSUv1Layer.cxx:535
 AliITSUv1Layer.cxx:536
 AliITSUv1Layer.cxx:537
 AliITSUv1Layer.cxx:538
 AliITSUv1Layer.cxx:539
 AliITSUv1Layer.cxx:540
 AliITSUv1Layer.cxx:541
 AliITSUv1Layer.cxx:542
 AliITSUv1Layer.cxx:543
 AliITSUv1Layer.cxx:544
 AliITSUv1Layer.cxx:545
 AliITSUv1Layer.cxx:546
 AliITSUv1Layer.cxx:547
 AliITSUv1Layer.cxx:548
 AliITSUv1Layer.cxx:549
 AliITSUv1Layer.cxx:550
 AliITSUv1Layer.cxx:551
 AliITSUv1Layer.cxx:552
 AliITSUv1Layer.cxx:553
 AliITSUv1Layer.cxx:554
 AliITSUv1Layer.cxx:555
 AliITSUv1Layer.cxx:556
 AliITSUv1Layer.cxx:557
 AliITSUv1Layer.cxx:558
 AliITSUv1Layer.cxx:559
 AliITSUv1Layer.cxx:560
 AliITSUv1Layer.cxx:561
 AliITSUv1Layer.cxx:562
 AliITSUv1Layer.cxx:563
 AliITSUv1Layer.cxx:564
 AliITSUv1Layer.cxx:565
 AliITSUv1Layer.cxx:566
 AliITSUv1Layer.cxx:567
 AliITSUv1Layer.cxx:568
 AliITSUv1Layer.cxx:569
 AliITSUv1Layer.cxx:570
 AliITSUv1Layer.cxx:571
 AliITSUv1Layer.cxx:572
 AliITSUv1Layer.cxx:573
 AliITSUv1Layer.cxx:574
 AliITSUv1Layer.cxx:575
 AliITSUv1Layer.cxx:576
 AliITSUv1Layer.cxx:577
 AliITSUv1Layer.cxx:578
 AliITSUv1Layer.cxx:579
 AliITSUv1Layer.cxx:580
 AliITSUv1Layer.cxx:581
 AliITSUv1Layer.cxx:582
 AliITSUv1Layer.cxx:583
 AliITSUv1Layer.cxx:584
 AliITSUv1Layer.cxx:585
 AliITSUv1Layer.cxx:586
 AliITSUv1Layer.cxx:587
 AliITSUv1Layer.cxx:588
 AliITSUv1Layer.cxx:589
 AliITSUv1Layer.cxx:590
 AliITSUv1Layer.cxx:591
 AliITSUv1Layer.cxx:592
 AliITSUv1Layer.cxx:593
 AliITSUv1Layer.cxx:594
 AliITSUv1Layer.cxx:595
 AliITSUv1Layer.cxx:596
 AliITSUv1Layer.cxx:597
 AliITSUv1Layer.cxx:598
 AliITSUv1Layer.cxx:599
 AliITSUv1Layer.cxx:600
 AliITSUv1Layer.cxx:601
 AliITSUv1Layer.cxx:602
 AliITSUv1Layer.cxx:603
 AliITSUv1Layer.cxx:604
 AliITSUv1Layer.cxx:605
 AliITSUv1Layer.cxx:606
 AliITSUv1Layer.cxx:607
 AliITSUv1Layer.cxx:608
 AliITSUv1Layer.cxx:609
 AliITSUv1Layer.cxx:610
 AliITSUv1Layer.cxx:611
 AliITSUv1Layer.cxx:612
 AliITSUv1Layer.cxx:613
 AliITSUv1Layer.cxx:614
 AliITSUv1Layer.cxx:615
 AliITSUv1Layer.cxx:616
 AliITSUv1Layer.cxx:617
 AliITSUv1Layer.cxx:618
 AliITSUv1Layer.cxx:619
 AliITSUv1Layer.cxx:620
 AliITSUv1Layer.cxx:621
 AliITSUv1Layer.cxx:622
 AliITSUv1Layer.cxx:623
 AliITSUv1Layer.cxx:624
 AliITSUv1Layer.cxx:625
 AliITSUv1Layer.cxx:626
 AliITSUv1Layer.cxx:627
 AliITSUv1Layer.cxx:628
 AliITSUv1Layer.cxx:629
 AliITSUv1Layer.cxx:630
 AliITSUv1Layer.cxx:631
 AliITSUv1Layer.cxx:632
 AliITSUv1Layer.cxx:633
 AliITSUv1Layer.cxx:634
 AliITSUv1Layer.cxx:635
 AliITSUv1Layer.cxx:636
 AliITSUv1Layer.cxx:637
 AliITSUv1Layer.cxx:638
 AliITSUv1Layer.cxx:639
 AliITSUv1Layer.cxx:640
 AliITSUv1Layer.cxx:641
 AliITSUv1Layer.cxx:642
 AliITSUv1Layer.cxx:643
 AliITSUv1Layer.cxx:644
 AliITSUv1Layer.cxx:645
 AliITSUv1Layer.cxx:646
 AliITSUv1Layer.cxx:647
 AliITSUv1Layer.cxx:648
 AliITSUv1Layer.cxx:649
 AliITSUv1Layer.cxx:650
 AliITSUv1Layer.cxx:651
 AliITSUv1Layer.cxx:652
 AliITSUv1Layer.cxx:653
 AliITSUv1Layer.cxx:654
 AliITSUv1Layer.cxx:655
 AliITSUv1Layer.cxx:656
 AliITSUv1Layer.cxx:657
 AliITSUv1Layer.cxx:658
 AliITSUv1Layer.cxx:659
 AliITSUv1Layer.cxx:660
 AliITSUv1Layer.cxx:661
 AliITSUv1Layer.cxx:662
 AliITSUv1Layer.cxx:663
 AliITSUv1Layer.cxx:664
 AliITSUv1Layer.cxx:665
 AliITSUv1Layer.cxx:666
 AliITSUv1Layer.cxx:667
 AliITSUv1Layer.cxx:668
 AliITSUv1Layer.cxx:669
 AliITSUv1Layer.cxx:670
 AliITSUv1Layer.cxx:671
 AliITSUv1Layer.cxx:672
 AliITSUv1Layer.cxx:673
 AliITSUv1Layer.cxx:674
 AliITSUv1Layer.cxx:675
 AliITSUv1Layer.cxx:676
 AliITSUv1Layer.cxx:677
 AliITSUv1Layer.cxx:678
 AliITSUv1Layer.cxx:679
 AliITSUv1Layer.cxx:680
 AliITSUv1Layer.cxx:681
 AliITSUv1Layer.cxx:682
 AliITSUv1Layer.cxx:683
 AliITSUv1Layer.cxx:684
 AliITSUv1Layer.cxx:685
 AliITSUv1Layer.cxx:686
 AliITSUv1Layer.cxx:687
 AliITSUv1Layer.cxx:688
 AliITSUv1Layer.cxx:689
 AliITSUv1Layer.cxx:690
 AliITSUv1Layer.cxx:691
 AliITSUv1Layer.cxx:692
 AliITSUv1Layer.cxx:693
 AliITSUv1Layer.cxx:694
 AliITSUv1Layer.cxx:695
 AliITSUv1Layer.cxx:696
 AliITSUv1Layer.cxx:697
 AliITSUv1Layer.cxx:698
 AliITSUv1Layer.cxx:699
 AliITSUv1Layer.cxx:700
 AliITSUv1Layer.cxx:701
 AliITSUv1Layer.cxx:702
 AliITSUv1Layer.cxx:703
 AliITSUv1Layer.cxx:704
 AliITSUv1Layer.cxx:705
 AliITSUv1Layer.cxx:706
 AliITSUv1Layer.cxx:707
 AliITSUv1Layer.cxx:708
 AliITSUv1Layer.cxx:709
 AliITSUv1Layer.cxx:710
 AliITSUv1Layer.cxx:711
 AliITSUv1Layer.cxx:712
 AliITSUv1Layer.cxx:713
 AliITSUv1Layer.cxx:714
 AliITSUv1Layer.cxx:715
 AliITSUv1Layer.cxx:716
 AliITSUv1Layer.cxx:717
 AliITSUv1Layer.cxx:718
 AliITSUv1Layer.cxx:719
 AliITSUv1Layer.cxx:720
 AliITSUv1Layer.cxx:721
 AliITSUv1Layer.cxx:722
 AliITSUv1Layer.cxx:723
 AliITSUv1Layer.cxx:724
 AliITSUv1Layer.cxx:725
 AliITSUv1Layer.cxx:726
 AliITSUv1Layer.cxx:727
 AliITSUv1Layer.cxx:728
 AliITSUv1Layer.cxx:729
 AliITSUv1Layer.cxx:730
 AliITSUv1Layer.cxx:731
 AliITSUv1Layer.cxx:732
 AliITSUv1Layer.cxx:733
 AliITSUv1Layer.cxx:734
 AliITSUv1Layer.cxx:735
 AliITSUv1Layer.cxx:736
 AliITSUv1Layer.cxx:737
 AliITSUv1Layer.cxx:738
 AliITSUv1Layer.cxx:739
 AliITSUv1Layer.cxx:740
 AliITSUv1Layer.cxx:741
 AliITSUv1Layer.cxx:742
 AliITSUv1Layer.cxx:743
 AliITSUv1Layer.cxx:744
 AliITSUv1Layer.cxx:745
 AliITSUv1Layer.cxx:746
 AliITSUv1Layer.cxx:747
 AliITSUv1Layer.cxx:748
 AliITSUv1Layer.cxx:749
 AliITSUv1Layer.cxx:750
 AliITSUv1Layer.cxx:751
 AliITSUv1Layer.cxx:752
 AliITSUv1Layer.cxx:753
 AliITSUv1Layer.cxx:754
 AliITSUv1Layer.cxx:755
 AliITSUv1Layer.cxx:756
 AliITSUv1Layer.cxx:757
 AliITSUv1Layer.cxx:758
 AliITSUv1Layer.cxx:759
 AliITSUv1Layer.cxx:760
 AliITSUv1Layer.cxx:761
 AliITSUv1Layer.cxx:762
 AliITSUv1Layer.cxx:763
 AliITSUv1Layer.cxx:764
 AliITSUv1Layer.cxx:765
 AliITSUv1Layer.cxx:766
 AliITSUv1Layer.cxx:767
 AliITSUv1Layer.cxx:768
 AliITSUv1Layer.cxx:769
 AliITSUv1Layer.cxx:770
 AliITSUv1Layer.cxx:771
 AliITSUv1Layer.cxx:772
 AliITSUv1Layer.cxx:773
 AliITSUv1Layer.cxx:774
 AliITSUv1Layer.cxx:775
 AliITSUv1Layer.cxx:776
 AliITSUv1Layer.cxx:777
 AliITSUv1Layer.cxx:778
 AliITSUv1Layer.cxx:779
 AliITSUv1Layer.cxx:780
 AliITSUv1Layer.cxx:781
 AliITSUv1Layer.cxx:782
 AliITSUv1Layer.cxx:783
 AliITSUv1Layer.cxx:784
 AliITSUv1Layer.cxx:785
 AliITSUv1Layer.cxx:786
 AliITSUv1Layer.cxx:787
 AliITSUv1Layer.cxx:788
 AliITSUv1Layer.cxx:789
 AliITSUv1Layer.cxx:790
 AliITSUv1Layer.cxx:791
 AliITSUv1Layer.cxx:792
 AliITSUv1Layer.cxx:793
 AliITSUv1Layer.cxx:794
 AliITSUv1Layer.cxx:795
 AliITSUv1Layer.cxx:796
 AliITSUv1Layer.cxx:797
 AliITSUv1Layer.cxx:798
 AliITSUv1Layer.cxx:799
 AliITSUv1Layer.cxx:800
 AliITSUv1Layer.cxx:801
 AliITSUv1Layer.cxx:802
 AliITSUv1Layer.cxx:803
 AliITSUv1Layer.cxx:804
 AliITSUv1Layer.cxx:805
 AliITSUv1Layer.cxx:806
 AliITSUv1Layer.cxx:807
 AliITSUv1Layer.cxx:808
 AliITSUv1Layer.cxx:809
 AliITSUv1Layer.cxx:810
 AliITSUv1Layer.cxx:811
 AliITSUv1Layer.cxx:812
 AliITSUv1Layer.cxx:813
 AliITSUv1Layer.cxx:814
 AliITSUv1Layer.cxx:815
 AliITSUv1Layer.cxx:816
 AliITSUv1Layer.cxx:817
 AliITSUv1Layer.cxx:818
 AliITSUv1Layer.cxx:819
 AliITSUv1Layer.cxx:820
 AliITSUv1Layer.cxx:821
 AliITSUv1Layer.cxx:822
 AliITSUv1Layer.cxx:823
 AliITSUv1Layer.cxx:824
 AliITSUv1Layer.cxx:825
 AliITSUv1Layer.cxx:826
 AliITSUv1Layer.cxx:827
 AliITSUv1Layer.cxx:828
 AliITSUv1Layer.cxx:829
 AliITSUv1Layer.cxx:830
 AliITSUv1Layer.cxx:831
 AliITSUv1Layer.cxx:832
 AliITSUv1Layer.cxx:833
 AliITSUv1Layer.cxx:834
 AliITSUv1Layer.cxx:835
 AliITSUv1Layer.cxx:836
 AliITSUv1Layer.cxx:837
 AliITSUv1Layer.cxx:838
 AliITSUv1Layer.cxx:839
 AliITSUv1Layer.cxx:840
 AliITSUv1Layer.cxx:841
 AliITSUv1Layer.cxx:842
 AliITSUv1Layer.cxx:843
 AliITSUv1Layer.cxx:844
 AliITSUv1Layer.cxx:845
 AliITSUv1Layer.cxx:846
 AliITSUv1Layer.cxx:847
 AliITSUv1Layer.cxx:848
 AliITSUv1Layer.cxx:849
 AliITSUv1Layer.cxx:850
 AliITSUv1Layer.cxx:851
 AliITSUv1Layer.cxx:852
 AliITSUv1Layer.cxx:853
 AliITSUv1Layer.cxx:854
 AliITSUv1Layer.cxx:855
 AliITSUv1Layer.cxx:856
 AliITSUv1Layer.cxx:857
 AliITSUv1Layer.cxx:858
 AliITSUv1Layer.cxx:859
 AliITSUv1Layer.cxx:860
 AliITSUv1Layer.cxx:861
 AliITSUv1Layer.cxx:862
 AliITSUv1Layer.cxx:863
 AliITSUv1Layer.cxx:864
 AliITSUv1Layer.cxx:865
 AliITSUv1Layer.cxx:866
 AliITSUv1Layer.cxx:867
 AliITSUv1Layer.cxx:868
 AliITSUv1Layer.cxx:869
 AliITSUv1Layer.cxx:870
 AliITSUv1Layer.cxx:871
 AliITSUv1Layer.cxx:872
 AliITSUv1Layer.cxx:873
 AliITSUv1Layer.cxx:874
 AliITSUv1Layer.cxx:875
 AliITSUv1Layer.cxx:876
 AliITSUv1Layer.cxx:877
 AliITSUv1Layer.cxx:878
 AliITSUv1Layer.cxx:879
 AliITSUv1Layer.cxx:880
 AliITSUv1Layer.cxx:881
 AliITSUv1Layer.cxx:882
 AliITSUv1Layer.cxx:883
 AliITSUv1Layer.cxx:884
 AliITSUv1Layer.cxx:885
 AliITSUv1Layer.cxx:886
 AliITSUv1Layer.cxx:887
 AliITSUv1Layer.cxx:888
 AliITSUv1Layer.cxx:889
 AliITSUv1Layer.cxx:890
 AliITSUv1Layer.cxx:891
 AliITSUv1Layer.cxx:892
 AliITSUv1Layer.cxx:893
 AliITSUv1Layer.cxx:894
 AliITSUv1Layer.cxx:895
 AliITSUv1Layer.cxx:896
 AliITSUv1Layer.cxx:897
 AliITSUv1Layer.cxx:898
 AliITSUv1Layer.cxx:899
 AliITSUv1Layer.cxx:900
 AliITSUv1Layer.cxx:901
 AliITSUv1Layer.cxx:902
 AliITSUv1Layer.cxx:903
 AliITSUv1Layer.cxx:904
 AliITSUv1Layer.cxx:905
 AliITSUv1Layer.cxx:906
 AliITSUv1Layer.cxx:907
 AliITSUv1Layer.cxx:908
 AliITSUv1Layer.cxx:909
 AliITSUv1Layer.cxx:910
 AliITSUv1Layer.cxx:911
 AliITSUv1Layer.cxx:912
 AliITSUv1Layer.cxx:913
 AliITSUv1Layer.cxx:914
 AliITSUv1Layer.cxx:915
 AliITSUv1Layer.cxx:916
 AliITSUv1Layer.cxx:917
 AliITSUv1Layer.cxx:918
 AliITSUv1Layer.cxx:919
 AliITSUv1Layer.cxx:920
 AliITSUv1Layer.cxx:921
 AliITSUv1Layer.cxx:922
 AliITSUv1Layer.cxx:923
 AliITSUv1Layer.cxx:924
 AliITSUv1Layer.cxx:925
 AliITSUv1Layer.cxx:926
 AliITSUv1Layer.cxx:927
 AliITSUv1Layer.cxx:928
 AliITSUv1Layer.cxx:929
 AliITSUv1Layer.cxx:930
 AliITSUv1Layer.cxx:931
 AliITSUv1Layer.cxx:932
 AliITSUv1Layer.cxx:933
 AliITSUv1Layer.cxx:934
 AliITSUv1Layer.cxx:935
 AliITSUv1Layer.cxx:936
 AliITSUv1Layer.cxx:937
 AliITSUv1Layer.cxx:938
 AliITSUv1Layer.cxx:939
 AliITSUv1Layer.cxx:940
 AliITSUv1Layer.cxx:941
 AliITSUv1Layer.cxx:942
 AliITSUv1Layer.cxx:943
 AliITSUv1Layer.cxx:944
 AliITSUv1Layer.cxx:945
 AliITSUv1Layer.cxx:946
 AliITSUv1Layer.cxx:947
 AliITSUv1Layer.cxx:948
 AliITSUv1Layer.cxx:949
 AliITSUv1Layer.cxx:950
 AliITSUv1Layer.cxx:951
 AliITSUv1Layer.cxx:952
 AliITSUv1Layer.cxx:953
 AliITSUv1Layer.cxx:954
 AliITSUv1Layer.cxx:955
 AliITSUv1Layer.cxx:956
 AliITSUv1Layer.cxx:957
 AliITSUv1Layer.cxx:958
 AliITSUv1Layer.cxx:959
 AliITSUv1Layer.cxx:960
 AliITSUv1Layer.cxx:961
 AliITSUv1Layer.cxx:962
 AliITSUv1Layer.cxx:963
 AliITSUv1Layer.cxx:964
 AliITSUv1Layer.cxx:965
 AliITSUv1Layer.cxx:966
 AliITSUv1Layer.cxx:967
 AliITSUv1Layer.cxx:968
 AliITSUv1Layer.cxx:969
 AliITSUv1Layer.cxx:970
 AliITSUv1Layer.cxx:971
 AliITSUv1Layer.cxx:972
 AliITSUv1Layer.cxx:973
 AliITSUv1Layer.cxx:974
 AliITSUv1Layer.cxx:975
 AliITSUv1Layer.cxx:976
 AliITSUv1Layer.cxx:977
 AliITSUv1Layer.cxx:978
 AliITSUv1Layer.cxx:979
 AliITSUv1Layer.cxx:980
 AliITSUv1Layer.cxx:981
 AliITSUv1Layer.cxx:982
 AliITSUv1Layer.cxx:983
 AliITSUv1Layer.cxx:984
 AliITSUv1Layer.cxx:985
 AliITSUv1Layer.cxx:986
 AliITSUv1Layer.cxx:987
 AliITSUv1Layer.cxx:988
 AliITSUv1Layer.cxx:989
 AliITSUv1Layer.cxx:990
 AliITSUv1Layer.cxx:991
 AliITSUv1Layer.cxx:992
 AliITSUv1Layer.cxx:993
 AliITSUv1Layer.cxx:994
 AliITSUv1Layer.cxx:995
 AliITSUv1Layer.cxx:996
 AliITSUv1Layer.cxx:997
 AliITSUv1Layer.cxx:998
 AliITSUv1Layer.cxx:999
 AliITSUv1Layer.cxx:1000
 AliITSUv1Layer.cxx:1001
 AliITSUv1Layer.cxx:1002
 AliITSUv1Layer.cxx:1003
 AliITSUv1Layer.cxx:1004
 AliITSUv1Layer.cxx:1005
 AliITSUv1Layer.cxx:1006
 AliITSUv1Layer.cxx:1007
 AliITSUv1Layer.cxx:1008
 AliITSUv1Layer.cxx:1009
 AliITSUv1Layer.cxx:1010
 AliITSUv1Layer.cxx:1011
 AliITSUv1Layer.cxx:1012
 AliITSUv1Layer.cxx:1013
 AliITSUv1Layer.cxx:1014
 AliITSUv1Layer.cxx:1015
 AliITSUv1Layer.cxx:1016
 AliITSUv1Layer.cxx:1017
 AliITSUv1Layer.cxx:1018
 AliITSUv1Layer.cxx:1019
 AliITSUv1Layer.cxx:1020
 AliITSUv1Layer.cxx:1021
 AliITSUv1Layer.cxx:1022
 AliITSUv1Layer.cxx:1023
 AliITSUv1Layer.cxx:1024
 AliITSUv1Layer.cxx:1025
 AliITSUv1Layer.cxx:1026
 AliITSUv1Layer.cxx:1027
 AliITSUv1Layer.cxx:1028
 AliITSUv1Layer.cxx:1029
 AliITSUv1Layer.cxx:1030
 AliITSUv1Layer.cxx:1031
 AliITSUv1Layer.cxx:1032
 AliITSUv1Layer.cxx:1033
 AliITSUv1Layer.cxx:1034
 AliITSUv1Layer.cxx:1035
 AliITSUv1Layer.cxx:1036
 AliITSUv1Layer.cxx:1037
 AliITSUv1Layer.cxx:1038
 AliITSUv1Layer.cxx:1039
 AliITSUv1Layer.cxx:1040
 AliITSUv1Layer.cxx:1041
 AliITSUv1Layer.cxx:1042
 AliITSUv1Layer.cxx:1043
 AliITSUv1Layer.cxx:1044
 AliITSUv1Layer.cxx:1045
 AliITSUv1Layer.cxx:1046
 AliITSUv1Layer.cxx:1047
 AliITSUv1Layer.cxx:1048
 AliITSUv1Layer.cxx:1049
 AliITSUv1Layer.cxx:1050
 AliITSUv1Layer.cxx:1051
 AliITSUv1Layer.cxx:1052
 AliITSUv1Layer.cxx:1053
 AliITSUv1Layer.cxx:1054
 AliITSUv1Layer.cxx:1055
 AliITSUv1Layer.cxx:1056
 AliITSUv1Layer.cxx:1057
 AliITSUv1Layer.cxx:1058
 AliITSUv1Layer.cxx:1059
 AliITSUv1Layer.cxx:1060
 AliITSUv1Layer.cxx:1061
 AliITSUv1Layer.cxx:1062
 AliITSUv1Layer.cxx:1063
 AliITSUv1Layer.cxx:1064
 AliITSUv1Layer.cxx:1065
 AliITSUv1Layer.cxx:1066
 AliITSUv1Layer.cxx:1067
 AliITSUv1Layer.cxx:1068
 AliITSUv1Layer.cxx:1069
 AliITSUv1Layer.cxx:1070
 AliITSUv1Layer.cxx:1071
 AliITSUv1Layer.cxx:1072
 AliITSUv1Layer.cxx:1073
 AliITSUv1Layer.cxx:1074
 AliITSUv1Layer.cxx:1075
 AliITSUv1Layer.cxx:1076
 AliITSUv1Layer.cxx:1077
 AliITSUv1Layer.cxx:1078
 AliITSUv1Layer.cxx:1079
 AliITSUv1Layer.cxx:1080
 AliITSUv1Layer.cxx:1081
 AliITSUv1Layer.cxx:1082
 AliITSUv1Layer.cxx:1083
 AliITSUv1Layer.cxx:1084
 AliITSUv1Layer.cxx:1085
 AliITSUv1Layer.cxx:1086
 AliITSUv1Layer.cxx:1087
 AliITSUv1Layer.cxx:1088
 AliITSUv1Layer.cxx:1089
 AliITSUv1Layer.cxx:1090
 AliITSUv1Layer.cxx:1091
 AliITSUv1Layer.cxx:1092
 AliITSUv1Layer.cxx:1093
 AliITSUv1Layer.cxx:1094
 AliITSUv1Layer.cxx:1095
 AliITSUv1Layer.cxx:1096
 AliITSUv1Layer.cxx:1097
 AliITSUv1Layer.cxx:1098
 AliITSUv1Layer.cxx:1099
 AliITSUv1Layer.cxx:1100
 AliITSUv1Layer.cxx:1101
 AliITSUv1Layer.cxx:1102
 AliITSUv1Layer.cxx:1103
 AliITSUv1Layer.cxx:1104
 AliITSUv1Layer.cxx:1105
 AliITSUv1Layer.cxx:1106
 AliITSUv1Layer.cxx:1107
 AliITSUv1Layer.cxx:1108
 AliITSUv1Layer.cxx:1109
 AliITSUv1Layer.cxx:1110
 AliITSUv1Layer.cxx:1111
 AliITSUv1Layer.cxx:1112
 AliITSUv1Layer.cxx:1113
 AliITSUv1Layer.cxx:1114
 AliITSUv1Layer.cxx:1115
 AliITSUv1Layer.cxx:1116
 AliITSUv1Layer.cxx:1117
 AliITSUv1Layer.cxx:1118
 AliITSUv1Layer.cxx:1119
 AliITSUv1Layer.cxx:1120
 AliITSUv1Layer.cxx:1121
 AliITSUv1Layer.cxx:1122
 AliITSUv1Layer.cxx:1123
 AliITSUv1Layer.cxx:1124
 AliITSUv1Layer.cxx:1125
 AliITSUv1Layer.cxx:1126
 AliITSUv1Layer.cxx:1127
 AliITSUv1Layer.cxx:1128
 AliITSUv1Layer.cxx:1129
 AliITSUv1Layer.cxx:1130
 AliITSUv1Layer.cxx:1131
 AliITSUv1Layer.cxx:1132
 AliITSUv1Layer.cxx:1133
 AliITSUv1Layer.cxx:1134
 AliITSUv1Layer.cxx:1135
 AliITSUv1Layer.cxx:1136
 AliITSUv1Layer.cxx:1137
 AliITSUv1Layer.cxx:1138
 AliITSUv1Layer.cxx:1139
 AliITSUv1Layer.cxx:1140
 AliITSUv1Layer.cxx:1141
 AliITSUv1Layer.cxx:1142
 AliITSUv1Layer.cxx:1143
 AliITSUv1Layer.cxx:1144
 AliITSUv1Layer.cxx:1145
 AliITSUv1Layer.cxx:1146
 AliITSUv1Layer.cxx:1147
 AliITSUv1Layer.cxx:1148
 AliITSUv1Layer.cxx:1149
 AliITSUv1Layer.cxx:1150
 AliITSUv1Layer.cxx:1151
 AliITSUv1Layer.cxx:1152
 AliITSUv1Layer.cxx:1153
 AliITSUv1Layer.cxx:1154
 AliITSUv1Layer.cxx:1155
 AliITSUv1Layer.cxx:1156
 AliITSUv1Layer.cxx:1157
 AliITSUv1Layer.cxx:1158
 AliITSUv1Layer.cxx:1159
 AliITSUv1Layer.cxx:1160
 AliITSUv1Layer.cxx:1161
 AliITSUv1Layer.cxx:1162
 AliITSUv1Layer.cxx:1163
 AliITSUv1Layer.cxx:1164
 AliITSUv1Layer.cxx:1165
 AliITSUv1Layer.cxx:1166
 AliITSUv1Layer.cxx:1167
 AliITSUv1Layer.cxx:1168
 AliITSUv1Layer.cxx:1169
 AliITSUv1Layer.cxx:1170
 AliITSUv1Layer.cxx:1171
 AliITSUv1Layer.cxx:1172
 AliITSUv1Layer.cxx:1173
 AliITSUv1Layer.cxx:1174
 AliITSUv1Layer.cxx:1175
 AliITSUv1Layer.cxx:1176
 AliITSUv1Layer.cxx:1177
 AliITSUv1Layer.cxx:1178
 AliITSUv1Layer.cxx:1179
 AliITSUv1Layer.cxx:1180
 AliITSUv1Layer.cxx:1181
 AliITSUv1Layer.cxx:1182
 AliITSUv1Layer.cxx:1183
 AliITSUv1Layer.cxx:1184
 AliITSUv1Layer.cxx:1185
 AliITSUv1Layer.cxx:1186
 AliITSUv1Layer.cxx:1187
 AliITSUv1Layer.cxx:1188
 AliITSUv1Layer.cxx:1189
 AliITSUv1Layer.cxx:1190
 AliITSUv1Layer.cxx:1191
 AliITSUv1Layer.cxx:1192
 AliITSUv1Layer.cxx:1193
 AliITSUv1Layer.cxx:1194
 AliITSUv1Layer.cxx:1195
 AliITSUv1Layer.cxx:1196
 AliITSUv1Layer.cxx:1197
 AliITSUv1Layer.cxx:1198
 AliITSUv1Layer.cxx:1199
 AliITSUv1Layer.cxx:1200
 AliITSUv1Layer.cxx:1201
 AliITSUv1Layer.cxx:1202
 AliITSUv1Layer.cxx:1203
 AliITSUv1Layer.cxx:1204
 AliITSUv1Layer.cxx:1205
 AliITSUv1Layer.cxx:1206
 AliITSUv1Layer.cxx:1207
 AliITSUv1Layer.cxx:1208
 AliITSUv1Layer.cxx:1209
 AliITSUv1Layer.cxx:1210
 AliITSUv1Layer.cxx:1211
 AliITSUv1Layer.cxx:1212
 AliITSUv1Layer.cxx:1213
 AliITSUv1Layer.cxx:1214
 AliITSUv1Layer.cxx:1215
 AliITSUv1Layer.cxx:1216
 AliITSUv1Layer.cxx:1217
 AliITSUv1Layer.cxx:1218
 AliITSUv1Layer.cxx:1219
 AliITSUv1Layer.cxx:1220
 AliITSUv1Layer.cxx:1221
 AliITSUv1Layer.cxx:1222
 AliITSUv1Layer.cxx:1223
 AliITSUv1Layer.cxx:1224
 AliITSUv1Layer.cxx:1225
 AliITSUv1Layer.cxx:1226
 AliITSUv1Layer.cxx:1227
 AliITSUv1Layer.cxx:1228
 AliITSUv1Layer.cxx:1229
 AliITSUv1Layer.cxx:1230
 AliITSUv1Layer.cxx:1231
 AliITSUv1Layer.cxx:1232
 AliITSUv1Layer.cxx:1233
 AliITSUv1Layer.cxx:1234
 AliITSUv1Layer.cxx:1235
 AliITSUv1Layer.cxx:1236
 AliITSUv1Layer.cxx:1237
 AliITSUv1Layer.cxx:1238
 AliITSUv1Layer.cxx:1239
 AliITSUv1Layer.cxx:1240
 AliITSUv1Layer.cxx:1241
 AliITSUv1Layer.cxx:1242
 AliITSUv1Layer.cxx:1243
 AliITSUv1Layer.cxx:1244
 AliITSUv1Layer.cxx:1245
 AliITSUv1Layer.cxx:1246
 AliITSUv1Layer.cxx:1247
 AliITSUv1Layer.cxx:1248
 AliITSUv1Layer.cxx:1249
 AliITSUv1Layer.cxx:1250
 AliITSUv1Layer.cxx:1251
 AliITSUv1Layer.cxx:1252
 AliITSUv1Layer.cxx:1253
 AliITSUv1Layer.cxx:1254
 AliITSUv1Layer.cxx:1255
 AliITSUv1Layer.cxx:1256
 AliITSUv1Layer.cxx:1257
 AliITSUv1Layer.cxx:1258
 AliITSUv1Layer.cxx:1259
 AliITSUv1Layer.cxx:1260
 AliITSUv1Layer.cxx:1261
 AliITSUv1Layer.cxx:1262
 AliITSUv1Layer.cxx:1263
 AliITSUv1Layer.cxx:1264
 AliITSUv1Layer.cxx:1265
 AliITSUv1Layer.cxx:1266
 AliITSUv1Layer.cxx:1267
 AliITSUv1Layer.cxx:1268
 AliITSUv1Layer.cxx:1269
 AliITSUv1Layer.cxx:1270
 AliITSUv1Layer.cxx:1271
 AliITSUv1Layer.cxx:1272
 AliITSUv1Layer.cxx:1273
 AliITSUv1Layer.cxx:1274
 AliITSUv1Layer.cxx:1275
 AliITSUv1Layer.cxx:1276
 AliITSUv1Layer.cxx:1277
 AliITSUv1Layer.cxx:1278
 AliITSUv1Layer.cxx:1279
 AliITSUv1Layer.cxx:1280
 AliITSUv1Layer.cxx:1281
 AliITSUv1Layer.cxx:1282
 AliITSUv1Layer.cxx:1283
 AliITSUv1Layer.cxx:1284
 AliITSUv1Layer.cxx:1285
 AliITSUv1Layer.cxx:1286
 AliITSUv1Layer.cxx:1287
 AliITSUv1Layer.cxx:1288
 AliITSUv1Layer.cxx:1289
 AliITSUv1Layer.cxx:1290
 AliITSUv1Layer.cxx:1291
 AliITSUv1Layer.cxx:1292
 AliITSUv1Layer.cxx:1293
 AliITSUv1Layer.cxx:1294
 AliITSUv1Layer.cxx:1295
 AliITSUv1Layer.cxx:1296
 AliITSUv1Layer.cxx:1297
 AliITSUv1Layer.cxx:1298
 AliITSUv1Layer.cxx:1299
 AliITSUv1Layer.cxx:1300
 AliITSUv1Layer.cxx:1301
 AliITSUv1Layer.cxx:1302
 AliITSUv1Layer.cxx:1303
 AliITSUv1Layer.cxx:1304
 AliITSUv1Layer.cxx:1305
 AliITSUv1Layer.cxx:1306
 AliITSUv1Layer.cxx:1307
 AliITSUv1Layer.cxx:1308
 AliITSUv1Layer.cxx:1309
 AliITSUv1Layer.cxx:1310
 AliITSUv1Layer.cxx:1311
 AliITSUv1Layer.cxx:1312
 AliITSUv1Layer.cxx:1313
 AliITSUv1Layer.cxx:1314
 AliITSUv1Layer.cxx:1315
 AliITSUv1Layer.cxx:1316
 AliITSUv1Layer.cxx:1317
 AliITSUv1Layer.cxx:1318
 AliITSUv1Layer.cxx:1319
 AliITSUv1Layer.cxx:1320
 AliITSUv1Layer.cxx:1321
 AliITSUv1Layer.cxx:1322
 AliITSUv1Layer.cxx:1323
 AliITSUv1Layer.cxx:1324
 AliITSUv1Layer.cxx:1325
 AliITSUv1Layer.cxx:1326
 AliITSUv1Layer.cxx:1327
 AliITSUv1Layer.cxx:1328
 AliITSUv1Layer.cxx:1329
 AliITSUv1Layer.cxx:1330
 AliITSUv1Layer.cxx:1331
 AliITSUv1Layer.cxx:1332
 AliITSUv1Layer.cxx:1333
 AliITSUv1Layer.cxx:1334
 AliITSUv1Layer.cxx:1335
 AliITSUv1Layer.cxx:1336
 AliITSUv1Layer.cxx:1337
 AliITSUv1Layer.cxx:1338
 AliITSUv1Layer.cxx:1339
 AliITSUv1Layer.cxx:1340
 AliITSUv1Layer.cxx:1341
 AliITSUv1Layer.cxx:1342
 AliITSUv1Layer.cxx:1343
 AliITSUv1Layer.cxx:1344
 AliITSUv1Layer.cxx:1345
 AliITSUv1Layer.cxx:1346
 AliITSUv1Layer.cxx:1347
 AliITSUv1Layer.cxx:1348
 AliITSUv1Layer.cxx:1349
 AliITSUv1Layer.cxx:1350
 AliITSUv1Layer.cxx:1351
 AliITSUv1Layer.cxx:1352
 AliITSUv1Layer.cxx:1353
 AliITSUv1Layer.cxx:1354
 AliITSUv1Layer.cxx:1355
 AliITSUv1Layer.cxx:1356
 AliITSUv1Layer.cxx:1357
 AliITSUv1Layer.cxx:1358
 AliITSUv1Layer.cxx:1359
 AliITSUv1Layer.cxx:1360
 AliITSUv1Layer.cxx:1361
 AliITSUv1Layer.cxx:1362
 AliITSUv1Layer.cxx:1363
 AliITSUv1Layer.cxx:1364
 AliITSUv1Layer.cxx:1365
 AliITSUv1Layer.cxx:1366
 AliITSUv1Layer.cxx:1367
 AliITSUv1Layer.cxx:1368
 AliITSUv1Layer.cxx:1369
 AliITSUv1Layer.cxx:1370
 AliITSUv1Layer.cxx:1371
 AliITSUv1Layer.cxx:1372
 AliITSUv1Layer.cxx:1373
 AliITSUv1Layer.cxx:1374
 AliITSUv1Layer.cxx:1375
 AliITSUv1Layer.cxx:1376
 AliITSUv1Layer.cxx:1377
 AliITSUv1Layer.cxx:1378
 AliITSUv1Layer.cxx:1379
 AliITSUv1Layer.cxx:1380
 AliITSUv1Layer.cxx:1381
 AliITSUv1Layer.cxx:1382
 AliITSUv1Layer.cxx:1383
 AliITSUv1Layer.cxx:1384
 AliITSUv1Layer.cxx:1385
 AliITSUv1Layer.cxx:1386
 AliITSUv1Layer.cxx:1387
 AliITSUv1Layer.cxx:1388
 AliITSUv1Layer.cxx:1389
 AliITSUv1Layer.cxx:1390
 AliITSUv1Layer.cxx:1391
 AliITSUv1Layer.cxx:1392
 AliITSUv1Layer.cxx:1393
 AliITSUv1Layer.cxx:1394
 AliITSUv1Layer.cxx:1395
 AliITSUv1Layer.cxx:1396
 AliITSUv1Layer.cxx:1397
 AliITSUv1Layer.cxx:1398
 AliITSUv1Layer.cxx:1399
 AliITSUv1Layer.cxx:1400
 AliITSUv1Layer.cxx:1401
 AliITSUv1Layer.cxx:1402
 AliITSUv1Layer.cxx:1403
 AliITSUv1Layer.cxx:1404
 AliITSUv1Layer.cxx:1405
 AliITSUv1Layer.cxx:1406
 AliITSUv1Layer.cxx:1407
 AliITSUv1Layer.cxx:1408
 AliITSUv1Layer.cxx:1409
 AliITSUv1Layer.cxx:1410
 AliITSUv1Layer.cxx:1411
 AliITSUv1Layer.cxx:1412
 AliITSUv1Layer.cxx:1413
 AliITSUv1Layer.cxx:1414
 AliITSUv1Layer.cxx:1415
 AliITSUv1Layer.cxx:1416
 AliITSUv1Layer.cxx:1417
 AliITSUv1Layer.cxx:1418
 AliITSUv1Layer.cxx:1419
 AliITSUv1Layer.cxx:1420
 AliITSUv1Layer.cxx:1421
 AliITSUv1Layer.cxx:1422
 AliITSUv1Layer.cxx:1423
 AliITSUv1Layer.cxx:1424
 AliITSUv1Layer.cxx:1425
 AliITSUv1Layer.cxx:1426
 AliITSUv1Layer.cxx:1427
 AliITSUv1Layer.cxx:1428
 AliITSUv1Layer.cxx:1429
 AliITSUv1Layer.cxx:1430
 AliITSUv1Layer.cxx:1431
 AliITSUv1Layer.cxx:1432
 AliITSUv1Layer.cxx:1433
 AliITSUv1Layer.cxx:1434
 AliITSUv1Layer.cxx:1435
 AliITSUv1Layer.cxx:1436
 AliITSUv1Layer.cxx:1437
 AliITSUv1Layer.cxx:1438
 AliITSUv1Layer.cxx:1439
 AliITSUv1Layer.cxx:1440
 AliITSUv1Layer.cxx:1441
 AliITSUv1Layer.cxx:1442
 AliITSUv1Layer.cxx:1443
 AliITSUv1Layer.cxx:1444
 AliITSUv1Layer.cxx:1445
 AliITSUv1Layer.cxx:1446
 AliITSUv1Layer.cxx:1447
 AliITSUv1Layer.cxx:1448
 AliITSUv1Layer.cxx:1449
 AliITSUv1Layer.cxx:1450
 AliITSUv1Layer.cxx:1451
 AliITSUv1Layer.cxx:1452
 AliITSUv1Layer.cxx:1453
 AliITSUv1Layer.cxx:1454
 AliITSUv1Layer.cxx:1455
 AliITSUv1Layer.cxx:1456
 AliITSUv1Layer.cxx:1457
 AliITSUv1Layer.cxx:1458
 AliITSUv1Layer.cxx:1459
 AliITSUv1Layer.cxx:1460
 AliITSUv1Layer.cxx:1461
 AliITSUv1Layer.cxx:1462
 AliITSUv1Layer.cxx:1463
 AliITSUv1Layer.cxx:1464
 AliITSUv1Layer.cxx:1465
 AliITSUv1Layer.cxx:1466
 AliITSUv1Layer.cxx:1467
 AliITSUv1Layer.cxx:1468
 AliITSUv1Layer.cxx:1469
 AliITSUv1Layer.cxx:1470
 AliITSUv1Layer.cxx:1471
 AliITSUv1Layer.cxx:1472
 AliITSUv1Layer.cxx:1473
 AliITSUv1Layer.cxx:1474
 AliITSUv1Layer.cxx:1475
 AliITSUv1Layer.cxx:1476
 AliITSUv1Layer.cxx:1477
 AliITSUv1Layer.cxx:1478
 AliITSUv1Layer.cxx:1479
 AliITSUv1Layer.cxx:1480
 AliITSUv1Layer.cxx:1481
 AliITSUv1Layer.cxx:1482
 AliITSUv1Layer.cxx:1483
 AliITSUv1Layer.cxx:1484
 AliITSUv1Layer.cxx:1485
 AliITSUv1Layer.cxx:1486
 AliITSUv1Layer.cxx:1487
 AliITSUv1Layer.cxx:1488
 AliITSUv1Layer.cxx:1489
 AliITSUv1Layer.cxx:1490
 AliITSUv1Layer.cxx:1491
 AliITSUv1Layer.cxx:1492
 AliITSUv1Layer.cxx:1493
 AliITSUv1Layer.cxx:1494
 AliITSUv1Layer.cxx:1495
 AliITSUv1Layer.cxx:1496
 AliITSUv1Layer.cxx:1497
 AliITSUv1Layer.cxx:1498
 AliITSUv1Layer.cxx:1499
 AliITSUv1Layer.cxx:1500
 AliITSUv1Layer.cxx:1501
 AliITSUv1Layer.cxx:1502
 AliITSUv1Layer.cxx:1503
 AliITSUv1Layer.cxx:1504
 AliITSUv1Layer.cxx:1505
 AliITSUv1Layer.cxx:1506
 AliITSUv1Layer.cxx:1507
 AliITSUv1Layer.cxx:1508
 AliITSUv1Layer.cxx:1509
 AliITSUv1Layer.cxx:1510
 AliITSUv1Layer.cxx:1511
 AliITSUv1Layer.cxx:1512
 AliITSUv1Layer.cxx:1513
 AliITSUv1Layer.cxx:1514
 AliITSUv1Layer.cxx:1515
 AliITSUv1Layer.cxx:1516
 AliITSUv1Layer.cxx:1517
 AliITSUv1Layer.cxx:1518
 AliITSUv1Layer.cxx:1519
 AliITSUv1Layer.cxx:1520
 AliITSUv1Layer.cxx:1521
 AliITSUv1Layer.cxx:1522
 AliITSUv1Layer.cxx:1523
 AliITSUv1Layer.cxx:1524
 AliITSUv1Layer.cxx:1525
 AliITSUv1Layer.cxx:1526
 AliITSUv1Layer.cxx:1527
 AliITSUv1Layer.cxx:1528
 AliITSUv1Layer.cxx:1529
 AliITSUv1Layer.cxx:1530
 AliITSUv1Layer.cxx:1531
 AliITSUv1Layer.cxx:1532
 AliITSUv1Layer.cxx:1533
 AliITSUv1Layer.cxx:1534
 AliITSUv1Layer.cxx:1535
 AliITSUv1Layer.cxx:1536
 AliITSUv1Layer.cxx:1537
 AliITSUv1Layer.cxx:1538
 AliITSUv1Layer.cxx:1539
 AliITSUv1Layer.cxx:1540
 AliITSUv1Layer.cxx:1541
 AliITSUv1Layer.cxx:1542
 AliITSUv1Layer.cxx:1543
 AliITSUv1Layer.cxx:1544
 AliITSUv1Layer.cxx:1545
 AliITSUv1Layer.cxx:1546
 AliITSUv1Layer.cxx:1547
 AliITSUv1Layer.cxx:1548
 AliITSUv1Layer.cxx:1549
 AliITSUv1Layer.cxx:1550
 AliITSUv1Layer.cxx:1551
 AliITSUv1Layer.cxx:1552
 AliITSUv1Layer.cxx:1553
 AliITSUv1Layer.cxx:1554
 AliITSUv1Layer.cxx:1555
 AliITSUv1Layer.cxx:1556
 AliITSUv1Layer.cxx:1557
 AliITSUv1Layer.cxx:1558
 AliITSUv1Layer.cxx:1559
 AliITSUv1Layer.cxx:1560
 AliITSUv1Layer.cxx:1561
 AliITSUv1Layer.cxx:1562
 AliITSUv1Layer.cxx:1563
 AliITSUv1Layer.cxx:1564
 AliITSUv1Layer.cxx:1565
 AliITSUv1Layer.cxx:1566
 AliITSUv1Layer.cxx:1567
 AliITSUv1Layer.cxx:1568
 AliITSUv1Layer.cxx:1569
 AliITSUv1Layer.cxx:1570
 AliITSUv1Layer.cxx:1571
 AliITSUv1Layer.cxx:1572
 AliITSUv1Layer.cxx:1573
 AliITSUv1Layer.cxx:1574
 AliITSUv1Layer.cxx:1575
 AliITSUv1Layer.cxx:1576
 AliITSUv1Layer.cxx:1577
 AliITSUv1Layer.cxx:1578
 AliITSUv1Layer.cxx:1579
 AliITSUv1Layer.cxx:1580
 AliITSUv1Layer.cxx:1581
 AliITSUv1Layer.cxx:1582
 AliITSUv1Layer.cxx:1583
 AliITSUv1Layer.cxx:1584
 AliITSUv1Layer.cxx:1585
 AliITSUv1Layer.cxx:1586
 AliITSUv1Layer.cxx:1587
 AliITSUv1Layer.cxx:1588
 AliITSUv1Layer.cxx:1589
 AliITSUv1Layer.cxx:1590
 AliITSUv1Layer.cxx:1591
 AliITSUv1Layer.cxx:1592
 AliITSUv1Layer.cxx:1593
 AliITSUv1Layer.cxx:1594
 AliITSUv1Layer.cxx:1595
 AliITSUv1Layer.cxx:1596
 AliITSUv1Layer.cxx:1597
 AliITSUv1Layer.cxx:1598
 AliITSUv1Layer.cxx:1599
 AliITSUv1Layer.cxx:1600
 AliITSUv1Layer.cxx:1601
 AliITSUv1Layer.cxx:1602
 AliITSUv1Layer.cxx:1603
 AliITSUv1Layer.cxx:1604
 AliITSUv1Layer.cxx:1605
 AliITSUv1Layer.cxx:1606
 AliITSUv1Layer.cxx:1607
 AliITSUv1Layer.cxx:1608
 AliITSUv1Layer.cxx:1609
 AliITSUv1Layer.cxx:1610
 AliITSUv1Layer.cxx:1611
 AliITSUv1Layer.cxx:1612
 AliITSUv1Layer.cxx:1613
 AliITSUv1Layer.cxx:1614
 AliITSUv1Layer.cxx:1615
 AliITSUv1Layer.cxx:1616
 AliITSUv1Layer.cxx:1617
 AliITSUv1Layer.cxx:1618
 AliITSUv1Layer.cxx:1619
 AliITSUv1Layer.cxx:1620
 AliITSUv1Layer.cxx:1621
 AliITSUv1Layer.cxx:1622
 AliITSUv1Layer.cxx:1623
 AliITSUv1Layer.cxx:1624
 AliITSUv1Layer.cxx:1625
 AliITSUv1Layer.cxx:1626
 AliITSUv1Layer.cxx:1627
 AliITSUv1Layer.cxx:1628
 AliITSUv1Layer.cxx:1629
 AliITSUv1Layer.cxx:1630
 AliITSUv1Layer.cxx:1631
 AliITSUv1Layer.cxx:1632
 AliITSUv1Layer.cxx:1633
 AliITSUv1Layer.cxx:1634
 AliITSUv1Layer.cxx:1635
 AliITSUv1Layer.cxx:1636
 AliITSUv1Layer.cxx:1637
 AliITSUv1Layer.cxx:1638
 AliITSUv1Layer.cxx:1639
 AliITSUv1Layer.cxx:1640
 AliITSUv1Layer.cxx:1641
 AliITSUv1Layer.cxx:1642
 AliITSUv1Layer.cxx:1643
 AliITSUv1Layer.cxx:1644
 AliITSUv1Layer.cxx:1645
 AliITSUv1Layer.cxx:1646
 AliITSUv1Layer.cxx:1647
 AliITSUv1Layer.cxx:1648
 AliITSUv1Layer.cxx:1649
 AliITSUv1Layer.cxx:1650
 AliITSUv1Layer.cxx:1651
 AliITSUv1Layer.cxx:1652
 AliITSUv1Layer.cxx:1653
 AliITSUv1Layer.cxx:1654
 AliITSUv1Layer.cxx:1655
 AliITSUv1Layer.cxx:1656
 AliITSUv1Layer.cxx:1657
 AliITSUv1Layer.cxx:1658
 AliITSUv1Layer.cxx:1659
 AliITSUv1Layer.cxx:1660
 AliITSUv1Layer.cxx:1661
 AliITSUv1Layer.cxx:1662
 AliITSUv1Layer.cxx:1663
 AliITSUv1Layer.cxx:1664
 AliITSUv1Layer.cxx:1665
 AliITSUv1Layer.cxx:1666
 AliITSUv1Layer.cxx:1667
 AliITSUv1Layer.cxx:1668
 AliITSUv1Layer.cxx:1669
 AliITSUv1Layer.cxx:1670
 AliITSUv1Layer.cxx:1671
 AliITSUv1Layer.cxx:1672
 AliITSUv1Layer.cxx:1673
 AliITSUv1Layer.cxx:1674
 AliITSUv1Layer.cxx:1675
 AliITSUv1Layer.cxx:1676
 AliITSUv1Layer.cxx:1677
 AliITSUv1Layer.cxx:1678
 AliITSUv1Layer.cxx:1679
 AliITSUv1Layer.cxx:1680
 AliITSUv1Layer.cxx:1681
 AliITSUv1Layer.cxx:1682
 AliITSUv1Layer.cxx:1683
 AliITSUv1Layer.cxx:1684
 AliITSUv1Layer.cxx:1685
 AliITSUv1Layer.cxx:1686
 AliITSUv1Layer.cxx:1687
 AliITSUv1Layer.cxx:1688
 AliITSUv1Layer.cxx:1689
 AliITSUv1Layer.cxx:1690
 AliITSUv1Layer.cxx:1691
 AliITSUv1Layer.cxx:1692
 AliITSUv1Layer.cxx:1693
 AliITSUv1Layer.cxx:1694
 AliITSUv1Layer.cxx:1695
 AliITSUv1Layer.cxx:1696
 AliITSUv1Layer.cxx:1697
 AliITSUv1Layer.cxx:1698
 AliITSUv1Layer.cxx:1699
 AliITSUv1Layer.cxx:1700
 AliITSUv1Layer.cxx:1701
 AliITSUv1Layer.cxx:1702
 AliITSUv1Layer.cxx:1703
 AliITSUv1Layer.cxx:1704
 AliITSUv1Layer.cxx:1705
 AliITSUv1Layer.cxx:1706
 AliITSUv1Layer.cxx:1707
 AliITSUv1Layer.cxx:1708
 AliITSUv1Layer.cxx:1709
 AliITSUv1Layer.cxx:1710
 AliITSUv1Layer.cxx:1711
 AliITSUv1Layer.cxx:1712
 AliITSUv1Layer.cxx:1713
 AliITSUv1Layer.cxx:1714
 AliITSUv1Layer.cxx:1715
 AliITSUv1Layer.cxx:1716
 AliITSUv1Layer.cxx:1717
 AliITSUv1Layer.cxx:1718
 AliITSUv1Layer.cxx:1719
 AliITSUv1Layer.cxx:1720
 AliITSUv1Layer.cxx:1721
 AliITSUv1Layer.cxx:1722
 AliITSUv1Layer.cxx:1723
 AliITSUv1Layer.cxx:1724
 AliITSUv1Layer.cxx:1725
 AliITSUv1Layer.cxx:1726
 AliITSUv1Layer.cxx:1727
 AliITSUv1Layer.cxx:1728
 AliITSUv1Layer.cxx:1729
 AliITSUv1Layer.cxx:1730
 AliITSUv1Layer.cxx:1731
 AliITSUv1Layer.cxx:1732
 AliITSUv1Layer.cxx:1733
 AliITSUv1Layer.cxx:1734
 AliITSUv1Layer.cxx:1735
 AliITSUv1Layer.cxx:1736
 AliITSUv1Layer.cxx:1737
 AliITSUv1Layer.cxx:1738
 AliITSUv1Layer.cxx:1739
 AliITSUv1Layer.cxx:1740
 AliITSUv1Layer.cxx:1741
 AliITSUv1Layer.cxx:1742
 AliITSUv1Layer.cxx:1743
 AliITSUv1Layer.cxx:1744
 AliITSUv1Layer.cxx:1745
 AliITSUv1Layer.cxx:1746
 AliITSUv1Layer.cxx:1747
 AliITSUv1Layer.cxx:1748
 AliITSUv1Layer.cxx:1749
 AliITSUv1Layer.cxx:1750
 AliITSUv1Layer.cxx:1751
 AliITSUv1Layer.cxx:1752
 AliITSUv1Layer.cxx:1753
 AliITSUv1Layer.cxx:1754
 AliITSUv1Layer.cxx:1755
 AliITSUv1Layer.cxx:1756
 AliITSUv1Layer.cxx:1757
 AliITSUv1Layer.cxx:1758
 AliITSUv1Layer.cxx:1759
 AliITSUv1Layer.cxx:1760
 AliITSUv1Layer.cxx:1761
 AliITSUv1Layer.cxx:1762
 AliITSUv1Layer.cxx:1763
 AliITSUv1Layer.cxx:1764
 AliITSUv1Layer.cxx:1765
 AliITSUv1Layer.cxx:1766
 AliITSUv1Layer.cxx:1767
 AliITSUv1Layer.cxx:1768
 AliITSUv1Layer.cxx:1769
 AliITSUv1Layer.cxx:1770
 AliITSUv1Layer.cxx:1771
 AliITSUv1Layer.cxx:1772
 AliITSUv1Layer.cxx:1773
 AliITSUv1Layer.cxx:1774
 AliITSUv1Layer.cxx:1775
 AliITSUv1Layer.cxx:1776
 AliITSUv1Layer.cxx:1777
 AliITSUv1Layer.cxx:1778
 AliITSUv1Layer.cxx:1779
 AliITSUv1Layer.cxx:1780
 AliITSUv1Layer.cxx:1781
 AliITSUv1Layer.cxx:1782
 AliITSUv1Layer.cxx:1783
 AliITSUv1Layer.cxx:1784
 AliITSUv1Layer.cxx:1785
 AliITSUv1Layer.cxx:1786
 AliITSUv1Layer.cxx:1787
 AliITSUv1Layer.cxx:1788
 AliITSUv1Layer.cxx:1789
 AliITSUv1Layer.cxx:1790
 AliITSUv1Layer.cxx:1791
 AliITSUv1Layer.cxx:1792
 AliITSUv1Layer.cxx:1793
 AliITSUv1Layer.cxx:1794
 AliITSUv1Layer.cxx:1795
 AliITSUv1Layer.cxx:1796
 AliITSUv1Layer.cxx:1797
 AliITSUv1Layer.cxx:1798
 AliITSUv1Layer.cxx:1799
 AliITSUv1Layer.cxx:1800
 AliITSUv1Layer.cxx:1801
 AliITSUv1Layer.cxx:1802
 AliITSUv1Layer.cxx:1803
 AliITSUv1Layer.cxx:1804
 AliITSUv1Layer.cxx:1805
 AliITSUv1Layer.cxx:1806
 AliITSUv1Layer.cxx:1807
 AliITSUv1Layer.cxx:1808
 AliITSUv1Layer.cxx:1809
 AliITSUv1Layer.cxx:1810
 AliITSUv1Layer.cxx:1811
 AliITSUv1Layer.cxx:1812
 AliITSUv1Layer.cxx:1813
 AliITSUv1Layer.cxx:1814
 AliITSUv1Layer.cxx:1815
 AliITSUv1Layer.cxx:1816
 AliITSUv1Layer.cxx:1817
 AliITSUv1Layer.cxx:1818
 AliITSUv1Layer.cxx:1819
 AliITSUv1Layer.cxx:1820
 AliITSUv1Layer.cxx:1821
 AliITSUv1Layer.cxx:1822
 AliITSUv1Layer.cxx:1823
 AliITSUv1Layer.cxx:1824
 AliITSUv1Layer.cxx:1825
 AliITSUv1Layer.cxx:1826
 AliITSUv1Layer.cxx:1827
 AliITSUv1Layer.cxx:1828
 AliITSUv1Layer.cxx:1829
 AliITSUv1Layer.cxx:1830
 AliITSUv1Layer.cxx:1831
 AliITSUv1Layer.cxx:1832
 AliITSUv1Layer.cxx:1833
 AliITSUv1Layer.cxx:1834
 AliITSUv1Layer.cxx:1835
 AliITSUv1Layer.cxx:1836
 AliITSUv1Layer.cxx:1837
 AliITSUv1Layer.cxx:1838
 AliITSUv1Layer.cxx:1839
 AliITSUv1Layer.cxx:1840
 AliITSUv1Layer.cxx:1841
 AliITSUv1Layer.cxx:1842
 AliITSUv1Layer.cxx:1843
 AliITSUv1Layer.cxx:1844
 AliITSUv1Layer.cxx:1845
 AliITSUv1Layer.cxx:1846
 AliITSUv1Layer.cxx:1847
 AliITSUv1Layer.cxx:1848
 AliITSUv1Layer.cxx:1849
 AliITSUv1Layer.cxx:1850
 AliITSUv1Layer.cxx:1851
 AliITSUv1Layer.cxx:1852
 AliITSUv1Layer.cxx:1853
 AliITSUv1Layer.cxx:1854
 AliITSUv1Layer.cxx:1855
 AliITSUv1Layer.cxx:1856
 AliITSUv1Layer.cxx:1857
 AliITSUv1Layer.cxx:1858
 AliITSUv1Layer.cxx:1859
 AliITSUv1Layer.cxx:1860
 AliITSUv1Layer.cxx:1861
 AliITSUv1Layer.cxx:1862
 AliITSUv1Layer.cxx:1863
 AliITSUv1Layer.cxx:1864
 AliITSUv1Layer.cxx:1865
 AliITSUv1Layer.cxx:1866
 AliITSUv1Layer.cxx:1867
 AliITSUv1Layer.cxx:1868
 AliITSUv1Layer.cxx:1869
 AliITSUv1Layer.cxx:1870
 AliITSUv1Layer.cxx:1871
 AliITSUv1Layer.cxx:1872
 AliITSUv1Layer.cxx:1873
 AliITSUv1Layer.cxx:1874
 AliITSUv1Layer.cxx:1875
 AliITSUv1Layer.cxx:1876
 AliITSUv1Layer.cxx:1877
 AliITSUv1Layer.cxx:1878
 AliITSUv1Layer.cxx:1879
 AliITSUv1Layer.cxx:1880
 AliITSUv1Layer.cxx:1881
 AliITSUv1Layer.cxx:1882
 AliITSUv1Layer.cxx:1883
 AliITSUv1Layer.cxx:1884
 AliITSUv1Layer.cxx:1885
 AliITSUv1Layer.cxx:1886
 AliITSUv1Layer.cxx:1887
 AliITSUv1Layer.cxx:1888
 AliITSUv1Layer.cxx:1889
 AliITSUv1Layer.cxx:1890
 AliITSUv1Layer.cxx:1891
 AliITSUv1Layer.cxx:1892
 AliITSUv1Layer.cxx:1893
 AliITSUv1Layer.cxx:1894
 AliITSUv1Layer.cxx:1895
 AliITSUv1Layer.cxx:1896
 AliITSUv1Layer.cxx:1897
 AliITSUv1Layer.cxx:1898
 AliITSUv1Layer.cxx:1899
 AliITSUv1Layer.cxx:1900
 AliITSUv1Layer.cxx:1901
 AliITSUv1Layer.cxx:1902
 AliITSUv1Layer.cxx:1903
 AliITSUv1Layer.cxx:1904
 AliITSUv1Layer.cxx:1905
 AliITSUv1Layer.cxx:1906
 AliITSUv1Layer.cxx:1907
 AliITSUv1Layer.cxx:1908
 AliITSUv1Layer.cxx:1909
 AliITSUv1Layer.cxx:1910
 AliITSUv1Layer.cxx:1911
 AliITSUv1Layer.cxx:1912
 AliITSUv1Layer.cxx:1913
 AliITSUv1Layer.cxx:1914
 AliITSUv1Layer.cxx:1915
 AliITSUv1Layer.cxx:1916
 AliITSUv1Layer.cxx:1917
 AliITSUv1Layer.cxx:1918
 AliITSUv1Layer.cxx:1919
 AliITSUv1Layer.cxx:1920
 AliITSUv1Layer.cxx:1921
 AliITSUv1Layer.cxx:1922
 AliITSUv1Layer.cxx:1923
 AliITSUv1Layer.cxx:1924
 AliITSUv1Layer.cxx:1925
 AliITSUv1Layer.cxx:1926
 AliITSUv1Layer.cxx:1927
 AliITSUv1Layer.cxx:1928
 AliITSUv1Layer.cxx:1929
 AliITSUv1Layer.cxx:1930
 AliITSUv1Layer.cxx:1931
 AliITSUv1Layer.cxx:1932
 AliITSUv1Layer.cxx:1933
 AliITSUv1Layer.cxx:1934
 AliITSUv1Layer.cxx:1935
 AliITSUv1Layer.cxx:1936
 AliITSUv1Layer.cxx:1937
 AliITSUv1Layer.cxx:1938
 AliITSUv1Layer.cxx:1939
 AliITSUv1Layer.cxx:1940
 AliITSUv1Layer.cxx:1941
 AliITSUv1Layer.cxx:1942
 AliITSUv1Layer.cxx:1943
 AliITSUv1Layer.cxx:1944
 AliITSUv1Layer.cxx:1945
 AliITSUv1Layer.cxx:1946
 AliITSUv1Layer.cxx:1947
 AliITSUv1Layer.cxx:1948
 AliITSUv1Layer.cxx:1949
 AliITSUv1Layer.cxx:1950
 AliITSUv1Layer.cxx:1951
 AliITSUv1Layer.cxx:1952
 AliITSUv1Layer.cxx:1953
 AliITSUv1Layer.cxx:1954
 AliITSUv1Layer.cxx:1955
 AliITSUv1Layer.cxx:1956
 AliITSUv1Layer.cxx:1957
 AliITSUv1Layer.cxx:1958
 AliITSUv1Layer.cxx:1959
 AliITSUv1Layer.cxx:1960
 AliITSUv1Layer.cxx:1961
 AliITSUv1Layer.cxx:1962
 AliITSUv1Layer.cxx:1963
 AliITSUv1Layer.cxx:1964
 AliITSUv1Layer.cxx:1965
 AliITSUv1Layer.cxx:1966
 AliITSUv1Layer.cxx:1967
 AliITSUv1Layer.cxx:1968
 AliITSUv1Layer.cxx:1969
 AliITSUv1Layer.cxx:1970
 AliITSUv1Layer.cxx:1971
 AliITSUv1Layer.cxx:1972
 AliITSUv1Layer.cxx:1973
 AliITSUv1Layer.cxx:1974
 AliITSUv1Layer.cxx:1975
 AliITSUv1Layer.cxx:1976
 AliITSUv1Layer.cxx:1977
 AliITSUv1Layer.cxx:1978
 AliITSUv1Layer.cxx:1979
 AliITSUv1Layer.cxx:1980
 AliITSUv1Layer.cxx:1981
 AliITSUv1Layer.cxx:1982
 AliITSUv1Layer.cxx:1983
 AliITSUv1Layer.cxx:1984
 AliITSUv1Layer.cxx:1985
 AliITSUv1Layer.cxx:1986
 AliITSUv1Layer.cxx:1987
 AliITSUv1Layer.cxx:1988
 AliITSUv1Layer.cxx:1989
 AliITSUv1Layer.cxx:1990
 AliITSUv1Layer.cxx:1991
 AliITSUv1Layer.cxx:1992
 AliITSUv1Layer.cxx:1993
 AliITSUv1Layer.cxx:1994
 AliITSUv1Layer.cxx:1995
 AliITSUv1Layer.cxx:1996
 AliITSUv1Layer.cxx:1997
 AliITSUv1Layer.cxx:1998
 AliITSUv1Layer.cxx:1999
 AliITSUv1Layer.cxx:2000
 AliITSUv1Layer.cxx:2001
 AliITSUv1Layer.cxx:2002
 AliITSUv1Layer.cxx:2003
 AliITSUv1Layer.cxx:2004
 AliITSUv1Layer.cxx:2005
 AliITSUv1Layer.cxx:2006
 AliITSUv1Layer.cxx:2007
 AliITSUv1Layer.cxx:2008
 AliITSUv1Layer.cxx:2009
 AliITSUv1Layer.cxx:2010
 AliITSUv1Layer.cxx:2011
 AliITSUv1Layer.cxx:2012
 AliITSUv1Layer.cxx:2013
 AliITSUv1Layer.cxx:2014
 AliITSUv1Layer.cxx:2015
 AliITSUv1Layer.cxx:2016
 AliITSUv1Layer.cxx:2017
 AliITSUv1Layer.cxx:2018
 AliITSUv1Layer.cxx:2019
 AliITSUv1Layer.cxx:2020
 AliITSUv1Layer.cxx:2021
 AliITSUv1Layer.cxx:2022
 AliITSUv1Layer.cxx:2023
 AliITSUv1Layer.cxx:2024
 AliITSUv1Layer.cxx:2025
 AliITSUv1Layer.cxx:2026
 AliITSUv1Layer.cxx:2027
 AliITSUv1Layer.cxx:2028
 AliITSUv1Layer.cxx:2029
 AliITSUv1Layer.cxx:2030
 AliITSUv1Layer.cxx:2031
 AliITSUv1Layer.cxx:2032
 AliITSUv1Layer.cxx:2033
 AliITSUv1Layer.cxx:2034
 AliITSUv1Layer.cxx:2035
 AliITSUv1Layer.cxx:2036
 AliITSUv1Layer.cxx:2037
 AliITSUv1Layer.cxx:2038
 AliITSUv1Layer.cxx:2039
 AliITSUv1Layer.cxx:2040
 AliITSUv1Layer.cxx:2041
 AliITSUv1Layer.cxx:2042
 AliITSUv1Layer.cxx:2043
 AliITSUv1Layer.cxx:2044
 AliITSUv1Layer.cxx:2045
 AliITSUv1Layer.cxx:2046
 AliITSUv1Layer.cxx:2047
 AliITSUv1Layer.cxx:2048
 AliITSUv1Layer.cxx:2049
 AliITSUv1Layer.cxx:2050
 AliITSUv1Layer.cxx:2051
 AliITSUv1Layer.cxx:2052
 AliITSUv1Layer.cxx:2053
 AliITSUv1Layer.cxx:2054
 AliITSUv1Layer.cxx:2055
 AliITSUv1Layer.cxx:2056
 AliITSUv1Layer.cxx:2057
 AliITSUv1Layer.cxx:2058
 AliITSUv1Layer.cxx:2059
 AliITSUv1Layer.cxx:2060
 AliITSUv1Layer.cxx:2061
 AliITSUv1Layer.cxx:2062
 AliITSUv1Layer.cxx:2063
 AliITSUv1Layer.cxx:2064
 AliITSUv1Layer.cxx:2065
 AliITSUv1Layer.cxx:2066
 AliITSUv1Layer.cxx:2067
 AliITSUv1Layer.cxx:2068
 AliITSUv1Layer.cxx:2069
 AliITSUv1Layer.cxx:2070
 AliITSUv1Layer.cxx:2071
 AliITSUv1Layer.cxx:2072
 AliITSUv1Layer.cxx:2073
 AliITSUv1Layer.cxx:2074
 AliITSUv1Layer.cxx:2075
 AliITSUv1Layer.cxx:2076
 AliITSUv1Layer.cxx:2077
 AliITSUv1Layer.cxx:2078
 AliITSUv1Layer.cxx:2079
 AliITSUv1Layer.cxx:2080
 AliITSUv1Layer.cxx:2081
 AliITSUv1Layer.cxx:2082
 AliITSUv1Layer.cxx:2083
 AliITSUv1Layer.cxx:2084
 AliITSUv1Layer.cxx:2085
 AliITSUv1Layer.cxx:2086
 AliITSUv1Layer.cxx:2087
 AliITSUv1Layer.cxx:2088
 AliITSUv1Layer.cxx:2089
 AliITSUv1Layer.cxx:2090
 AliITSUv1Layer.cxx:2091
 AliITSUv1Layer.cxx:2092
 AliITSUv1Layer.cxx:2093
 AliITSUv1Layer.cxx:2094
 AliITSUv1Layer.cxx:2095
 AliITSUv1Layer.cxx:2096
 AliITSUv1Layer.cxx:2097
 AliITSUv1Layer.cxx:2098
 AliITSUv1Layer.cxx:2099
 AliITSUv1Layer.cxx:2100
 AliITSUv1Layer.cxx:2101
 AliITSUv1Layer.cxx:2102
 AliITSUv1Layer.cxx:2103
 AliITSUv1Layer.cxx:2104
 AliITSUv1Layer.cxx:2105
 AliITSUv1Layer.cxx:2106
 AliITSUv1Layer.cxx:2107
 AliITSUv1Layer.cxx:2108
 AliITSUv1Layer.cxx:2109
 AliITSUv1Layer.cxx:2110
 AliITSUv1Layer.cxx:2111
 AliITSUv1Layer.cxx:2112
 AliITSUv1Layer.cxx:2113
 AliITSUv1Layer.cxx:2114
 AliITSUv1Layer.cxx:2115
 AliITSUv1Layer.cxx:2116
 AliITSUv1Layer.cxx:2117
 AliITSUv1Layer.cxx:2118
 AliITSUv1Layer.cxx:2119
 AliITSUv1Layer.cxx:2120
 AliITSUv1Layer.cxx:2121
 AliITSUv1Layer.cxx:2122
 AliITSUv1Layer.cxx:2123
 AliITSUv1Layer.cxx:2124
 AliITSUv1Layer.cxx:2125
 AliITSUv1Layer.cxx:2126
 AliITSUv1Layer.cxx:2127
 AliITSUv1Layer.cxx:2128
 AliITSUv1Layer.cxx:2129
 AliITSUv1Layer.cxx:2130
 AliITSUv1Layer.cxx:2131
 AliITSUv1Layer.cxx:2132
 AliITSUv1Layer.cxx:2133
 AliITSUv1Layer.cxx:2134
 AliITSUv1Layer.cxx:2135
 AliITSUv1Layer.cxx:2136
 AliITSUv1Layer.cxx:2137
 AliITSUv1Layer.cxx:2138
 AliITSUv1Layer.cxx:2139
 AliITSUv1Layer.cxx:2140
 AliITSUv1Layer.cxx:2141
 AliITSUv1Layer.cxx:2142
 AliITSUv1Layer.cxx:2143
 AliITSUv1Layer.cxx:2144
 AliITSUv1Layer.cxx:2145
 AliITSUv1Layer.cxx:2146
 AliITSUv1Layer.cxx:2147
 AliITSUv1Layer.cxx:2148
 AliITSUv1Layer.cxx:2149
 AliITSUv1Layer.cxx:2150
 AliITSUv1Layer.cxx:2151
 AliITSUv1Layer.cxx:2152
 AliITSUv1Layer.cxx:2153
 AliITSUv1Layer.cxx:2154
 AliITSUv1Layer.cxx:2155
 AliITSUv1Layer.cxx:2156
 AliITSUv1Layer.cxx:2157
 AliITSUv1Layer.cxx:2158
 AliITSUv1Layer.cxx:2159
 AliITSUv1Layer.cxx:2160
 AliITSUv1Layer.cxx:2161
 AliITSUv1Layer.cxx:2162
 AliITSUv1Layer.cxx:2163
 AliITSUv1Layer.cxx:2164
 AliITSUv1Layer.cxx:2165
 AliITSUv1Layer.cxx:2166
 AliITSUv1Layer.cxx:2167
 AliITSUv1Layer.cxx:2168
 AliITSUv1Layer.cxx:2169
 AliITSUv1Layer.cxx:2170
 AliITSUv1Layer.cxx:2171
 AliITSUv1Layer.cxx:2172
 AliITSUv1Layer.cxx:2173
 AliITSUv1Layer.cxx:2174
 AliITSUv1Layer.cxx:2175
 AliITSUv1Layer.cxx:2176
 AliITSUv1Layer.cxx:2177
 AliITSUv1Layer.cxx:2178
 AliITSUv1Layer.cxx:2179
 AliITSUv1Layer.cxx:2180
 AliITSUv1Layer.cxx:2181
 AliITSUv1Layer.cxx:2182
 AliITSUv1Layer.cxx:2183
 AliITSUv1Layer.cxx:2184
 AliITSUv1Layer.cxx:2185
 AliITSUv1Layer.cxx:2186
 AliITSUv1Layer.cxx:2187
 AliITSUv1Layer.cxx:2188
 AliITSUv1Layer.cxx:2189
 AliITSUv1Layer.cxx:2190
 AliITSUv1Layer.cxx:2191
 AliITSUv1Layer.cxx:2192
 AliITSUv1Layer.cxx:2193
 AliITSUv1Layer.cxx:2194
 AliITSUv1Layer.cxx:2195
 AliITSUv1Layer.cxx:2196
 AliITSUv1Layer.cxx:2197
 AliITSUv1Layer.cxx:2198
 AliITSUv1Layer.cxx:2199
 AliITSUv1Layer.cxx:2200
 AliITSUv1Layer.cxx:2201
 AliITSUv1Layer.cxx:2202
 AliITSUv1Layer.cxx:2203
 AliITSUv1Layer.cxx:2204
 AliITSUv1Layer.cxx:2205
 AliITSUv1Layer.cxx:2206
 AliITSUv1Layer.cxx:2207
 AliITSUv1Layer.cxx:2208
 AliITSUv1Layer.cxx:2209
 AliITSUv1Layer.cxx:2210
 AliITSUv1Layer.cxx:2211
 AliITSUv1Layer.cxx:2212
 AliITSUv1Layer.cxx:2213
 AliITSUv1Layer.cxx:2214
 AliITSUv1Layer.cxx:2215
 AliITSUv1Layer.cxx:2216
 AliITSUv1Layer.cxx:2217
 AliITSUv1Layer.cxx:2218
 AliITSUv1Layer.cxx:2219
 AliITSUv1Layer.cxx:2220
 AliITSUv1Layer.cxx:2221
 AliITSUv1Layer.cxx:2222
 AliITSUv1Layer.cxx:2223
 AliITSUv1Layer.cxx:2224
 AliITSUv1Layer.cxx:2225
 AliITSUv1Layer.cxx:2226
 AliITSUv1Layer.cxx:2227
 AliITSUv1Layer.cxx:2228
 AliITSUv1Layer.cxx:2229
 AliITSUv1Layer.cxx:2230
 AliITSUv1Layer.cxx:2231
 AliITSUv1Layer.cxx:2232
 AliITSUv1Layer.cxx:2233
 AliITSUv1Layer.cxx:2234
 AliITSUv1Layer.cxx:2235
 AliITSUv1Layer.cxx:2236
 AliITSUv1Layer.cxx:2237
 AliITSUv1Layer.cxx:2238
 AliITSUv1Layer.cxx:2239
 AliITSUv1Layer.cxx:2240
 AliITSUv1Layer.cxx:2241
 AliITSUv1Layer.cxx:2242
 AliITSUv1Layer.cxx:2243
 AliITSUv1Layer.cxx:2244
 AliITSUv1Layer.cxx:2245
 AliITSUv1Layer.cxx:2246
 AliITSUv1Layer.cxx:2247
 AliITSUv1Layer.cxx:2248
 AliITSUv1Layer.cxx:2249
 AliITSUv1Layer.cxx:2250
 AliITSUv1Layer.cxx:2251
 AliITSUv1Layer.cxx:2252
 AliITSUv1Layer.cxx:2253
 AliITSUv1Layer.cxx:2254
 AliITSUv1Layer.cxx:2255
 AliITSUv1Layer.cxx:2256
 AliITSUv1Layer.cxx:2257
 AliITSUv1Layer.cxx:2258
 AliITSUv1Layer.cxx:2259
 AliITSUv1Layer.cxx:2260
 AliITSUv1Layer.cxx:2261
 AliITSUv1Layer.cxx:2262
 AliITSUv1Layer.cxx:2263
 AliITSUv1Layer.cxx:2264
 AliITSUv1Layer.cxx:2265
 AliITSUv1Layer.cxx:2266
 AliITSUv1Layer.cxx:2267
 AliITSUv1Layer.cxx:2268
 AliITSUv1Layer.cxx:2269
 AliITSUv1Layer.cxx:2270
 AliITSUv1Layer.cxx:2271
 AliITSUv1Layer.cxx:2272
 AliITSUv1Layer.cxx:2273
 AliITSUv1Layer.cxx:2274
 AliITSUv1Layer.cxx:2275
 AliITSUv1Layer.cxx:2276
 AliITSUv1Layer.cxx:2277
 AliITSUv1Layer.cxx:2278
 AliITSUv1Layer.cxx:2279
 AliITSUv1Layer.cxx:2280
 AliITSUv1Layer.cxx:2281
 AliITSUv1Layer.cxx:2282
 AliITSUv1Layer.cxx:2283
 AliITSUv1Layer.cxx:2284
 AliITSUv1Layer.cxx:2285
 AliITSUv1Layer.cxx:2286
 AliITSUv1Layer.cxx:2287
 AliITSUv1Layer.cxx:2288
 AliITSUv1Layer.cxx:2289
 AliITSUv1Layer.cxx:2290
 AliITSUv1Layer.cxx:2291
 AliITSUv1Layer.cxx:2292
 AliITSUv1Layer.cxx:2293
 AliITSUv1Layer.cxx:2294
 AliITSUv1Layer.cxx:2295
 AliITSUv1Layer.cxx:2296
 AliITSUv1Layer.cxx:2297
 AliITSUv1Layer.cxx:2298
 AliITSUv1Layer.cxx:2299
 AliITSUv1Layer.cxx:2300
 AliITSUv1Layer.cxx:2301
 AliITSUv1Layer.cxx:2302
 AliITSUv1Layer.cxx:2303
 AliITSUv1Layer.cxx:2304
 AliITSUv1Layer.cxx:2305
 AliITSUv1Layer.cxx:2306
 AliITSUv1Layer.cxx:2307
 AliITSUv1Layer.cxx:2308
 AliITSUv1Layer.cxx:2309
 AliITSUv1Layer.cxx:2310
 AliITSUv1Layer.cxx:2311
 AliITSUv1Layer.cxx:2312
 AliITSUv1Layer.cxx:2313
 AliITSUv1Layer.cxx:2314
 AliITSUv1Layer.cxx:2315
 AliITSUv1Layer.cxx:2316
 AliITSUv1Layer.cxx:2317
 AliITSUv1Layer.cxx:2318
 AliITSUv1Layer.cxx:2319
 AliITSUv1Layer.cxx:2320
 AliITSUv1Layer.cxx:2321
 AliITSUv1Layer.cxx:2322
 AliITSUv1Layer.cxx:2323
 AliITSUv1Layer.cxx:2324
 AliITSUv1Layer.cxx:2325
 AliITSUv1Layer.cxx:2326
 AliITSUv1Layer.cxx:2327
 AliITSUv1Layer.cxx:2328
 AliITSUv1Layer.cxx:2329
 AliITSUv1Layer.cxx:2330
 AliITSUv1Layer.cxx:2331
 AliITSUv1Layer.cxx:2332
 AliITSUv1Layer.cxx:2333
 AliITSUv1Layer.cxx:2334
 AliITSUv1Layer.cxx:2335
 AliITSUv1Layer.cxx:2336
 AliITSUv1Layer.cxx:2337
 AliITSUv1Layer.cxx:2338
 AliITSUv1Layer.cxx:2339
 AliITSUv1Layer.cxx:2340
 AliITSUv1Layer.cxx:2341
 AliITSUv1Layer.cxx:2342
 AliITSUv1Layer.cxx:2343
 AliITSUv1Layer.cxx:2344
 AliITSUv1Layer.cxx:2345
 AliITSUv1Layer.cxx:2346
 AliITSUv1Layer.cxx:2347
 AliITSUv1Layer.cxx:2348
 AliITSUv1Layer.cxx:2349
 AliITSUv1Layer.cxx:2350
 AliITSUv1Layer.cxx:2351
 AliITSUv1Layer.cxx:2352
 AliITSUv1Layer.cxx:2353
 AliITSUv1Layer.cxx:2354
 AliITSUv1Layer.cxx:2355
 AliITSUv1Layer.cxx:2356
 AliITSUv1Layer.cxx:2357
 AliITSUv1Layer.cxx:2358
 AliITSUv1Layer.cxx:2359
 AliITSUv1Layer.cxx:2360
 AliITSUv1Layer.cxx:2361
 AliITSUv1Layer.cxx:2362
 AliITSUv1Layer.cxx:2363
 AliITSUv1Layer.cxx:2364
 AliITSUv1Layer.cxx:2365
 AliITSUv1Layer.cxx:2366
 AliITSUv1Layer.cxx:2367
 AliITSUv1Layer.cxx:2368
 AliITSUv1Layer.cxx:2369
 AliITSUv1Layer.cxx:2370
 AliITSUv1Layer.cxx:2371
 AliITSUv1Layer.cxx:2372
 AliITSUv1Layer.cxx:2373
 AliITSUv1Layer.cxx:2374
 AliITSUv1Layer.cxx:2375
 AliITSUv1Layer.cxx:2376
 AliITSUv1Layer.cxx:2377
 AliITSUv1Layer.cxx:2378
 AliITSUv1Layer.cxx:2379
 AliITSUv1Layer.cxx:2380
 AliITSUv1Layer.cxx:2381
 AliITSUv1Layer.cxx:2382
 AliITSUv1Layer.cxx:2383
 AliITSUv1Layer.cxx:2384
 AliITSUv1Layer.cxx:2385
 AliITSUv1Layer.cxx:2386
 AliITSUv1Layer.cxx:2387
 AliITSUv1Layer.cxx:2388
 AliITSUv1Layer.cxx:2389
 AliITSUv1Layer.cxx:2390
 AliITSUv1Layer.cxx:2391
 AliITSUv1Layer.cxx:2392
 AliITSUv1Layer.cxx:2393
 AliITSUv1Layer.cxx:2394
 AliITSUv1Layer.cxx:2395
 AliITSUv1Layer.cxx:2396
 AliITSUv1Layer.cxx:2397
 AliITSUv1Layer.cxx:2398
 AliITSUv1Layer.cxx:2399
 AliITSUv1Layer.cxx:2400
 AliITSUv1Layer.cxx:2401
 AliITSUv1Layer.cxx:2402
 AliITSUv1Layer.cxx:2403
 AliITSUv1Layer.cxx:2404
 AliITSUv1Layer.cxx:2405
 AliITSUv1Layer.cxx:2406
 AliITSUv1Layer.cxx:2407
 AliITSUv1Layer.cxx:2408
 AliITSUv1Layer.cxx:2409
 AliITSUv1Layer.cxx:2410
 AliITSUv1Layer.cxx:2411
 AliITSUv1Layer.cxx:2412
 AliITSUv1Layer.cxx:2413
 AliITSUv1Layer.cxx:2414
 AliITSUv1Layer.cxx:2415
 AliITSUv1Layer.cxx:2416
 AliITSUv1Layer.cxx:2417
 AliITSUv1Layer.cxx:2418
 AliITSUv1Layer.cxx:2419
 AliITSUv1Layer.cxx:2420
 AliITSUv1Layer.cxx:2421
 AliITSUv1Layer.cxx:2422
 AliITSUv1Layer.cxx:2423
 AliITSUv1Layer.cxx:2424
 AliITSUv1Layer.cxx:2425
 AliITSUv1Layer.cxx:2426
 AliITSUv1Layer.cxx:2427
 AliITSUv1Layer.cxx:2428
 AliITSUv1Layer.cxx:2429
 AliITSUv1Layer.cxx:2430
 AliITSUv1Layer.cxx:2431
 AliITSUv1Layer.cxx:2432
 AliITSUv1Layer.cxx:2433
 AliITSUv1Layer.cxx:2434
 AliITSUv1Layer.cxx:2435
 AliITSUv1Layer.cxx:2436
 AliITSUv1Layer.cxx:2437
 AliITSUv1Layer.cxx:2438
 AliITSUv1Layer.cxx:2439
 AliITSUv1Layer.cxx:2440
 AliITSUv1Layer.cxx:2441
 AliITSUv1Layer.cxx:2442
 AliITSUv1Layer.cxx:2443
 AliITSUv1Layer.cxx:2444
 AliITSUv1Layer.cxx:2445
 AliITSUv1Layer.cxx:2446
 AliITSUv1Layer.cxx:2447
 AliITSUv1Layer.cxx:2448
 AliITSUv1Layer.cxx:2449
 AliITSUv1Layer.cxx:2450
 AliITSUv1Layer.cxx:2451
 AliITSUv1Layer.cxx:2452
 AliITSUv1Layer.cxx:2453
 AliITSUv1Layer.cxx:2454
 AliITSUv1Layer.cxx:2455
 AliITSUv1Layer.cxx:2456
 AliITSUv1Layer.cxx:2457
 AliITSUv1Layer.cxx:2458
 AliITSUv1Layer.cxx:2459
 AliITSUv1Layer.cxx:2460
 AliITSUv1Layer.cxx:2461
 AliITSUv1Layer.cxx:2462
 AliITSUv1Layer.cxx:2463
 AliITSUv1Layer.cxx:2464
 AliITSUv1Layer.cxx:2465
 AliITSUv1Layer.cxx:2466
 AliITSUv1Layer.cxx:2467
 AliITSUv1Layer.cxx:2468
 AliITSUv1Layer.cxx:2469
 AliITSUv1Layer.cxx:2470
 AliITSUv1Layer.cxx:2471
 AliITSUv1Layer.cxx:2472
 AliITSUv1Layer.cxx:2473
 AliITSUv1Layer.cxx:2474
 AliITSUv1Layer.cxx:2475
 AliITSUv1Layer.cxx:2476
 AliITSUv1Layer.cxx:2477
 AliITSUv1Layer.cxx:2478
 AliITSUv1Layer.cxx:2479
 AliITSUv1Layer.cxx:2480
 AliITSUv1Layer.cxx:2481
 AliITSUv1Layer.cxx:2482
 AliITSUv1Layer.cxx:2483
 AliITSUv1Layer.cxx:2484
 AliITSUv1Layer.cxx:2485
 AliITSUv1Layer.cxx:2486
 AliITSUv1Layer.cxx:2487
 AliITSUv1Layer.cxx:2488
 AliITSUv1Layer.cxx:2489
 AliITSUv1Layer.cxx:2490
 AliITSUv1Layer.cxx:2491
 AliITSUv1Layer.cxx:2492
 AliITSUv1Layer.cxx:2493
 AliITSUv1Layer.cxx:2494
 AliITSUv1Layer.cxx:2495
 AliITSUv1Layer.cxx:2496
 AliITSUv1Layer.cxx:2497
 AliITSUv1Layer.cxx:2498
 AliITSUv1Layer.cxx:2499
 AliITSUv1Layer.cxx:2500
 AliITSUv1Layer.cxx:2501
 AliITSUv1Layer.cxx:2502
 AliITSUv1Layer.cxx:2503
 AliITSUv1Layer.cxx:2504
 AliITSUv1Layer.cxx:2505
 AliITSUv1Layer.cxx:2506
 AliITSUv1Layer.cxx:2507
 AliITSUv1Layer.cxx:2508
 AliITSUv1Layer.cxx:2509
 AliITSUv1Layer.cxx:2510
 AliITSUv1Layer.cxx:2511
 AliITSUv1Layer.cxx:2512
 AliITSUv1Layer.cxx:2513
 AliITSUv1Layer.cxx:2514
 AliITSUv1Layer.cxx:2515
 AliITSUv1Layer.cxx:2516
 AliITSUv1Layer.cxx:2517
 AliITSUv1Layer.cxx:2518
 AliITSUv1Layer.cxx:2519
 AliITSUv1Layer.cxx:2520
 AliITSUv1Layer.cxx:2521
 AliITSUv1Layer.cxx:2522
 AliITSUv1Layer.cxx:2523
 AliITSUv1Layer.cxx:2524
 AliITSUv1Layer.cxx:2525
 AliITSUv1Layer.cxx:2526
 AliITSUv1Layer.cxx:2527
 AliITSUv1Layer.cxx:2528
 AliITSUv1Layer.cxx:2529
 AliITSUv1Layer.cxx:2530
 AliITSUv1Layer.cxx:2531
 AliITSUv1Layer.cxx:2532
 AliITSUv1Layer.cxx:2533
 AliITSUv1Layer.cxx:2534
 AliITSUv1Layer.cxx:2535
 AliITSUv1Layer.cxx:2536
 AliITSUv1Layer.cxx:2537
 AliITSUv1Layer.cxx:2538
 AliITSUv1Layer.cxx:2539
 AliITSUv1Layer.cxx:2540
 AliITSUv1Layer.cxx:2541
 AliITSUv1Layer.cxx:2542
 AliITSUv1Layer.cxx:2543
 AliITSUv1Layer.cxx:2544
 AliITSUv1Layer.cxx:2545
 AliITSUv1Layer.cxx:2546
 AliITSUv1Layer.cxx:2547
 AliITSUv1Layer.cxx:2548
 AliITSUv1Layer.cxx:2549
 AliITSUv1Layer.cxx:2550
 AliITSUv1Layer.cxx:2551
 AliITSUv1Layer.cxx:2552
 AliITSUv1Layer.cxx:2553
 AliITSUv1Layer.cxx:2554
 AliITSUv1Layer.cxx:2555
 AliITSUv1Layer.cxx:2556
 AliITSUv1Layer.cxx:2557
 AliITSUv1Layer.cxx:2558
 AliITSUv1Layer.cxx:2559
 AliITSUv1Layer.cxx:2560
 AliITSUv1Layer.cxx:2561
 AliITSUv1Layer.cxx:2562
 AliITSUv1Layer.cxx:2563
 AliITSUv1Layer.cxx:2564
 AliITSUv1Layer.cxx:2565
 AliITSUv1Layer.cxx:2566
 AliITSUv1Layer.cxx:2567
 AliITSUv1Layer.cxx:2568
 AliITSUv1Layer.cxx:2569
 AliITSUv1Layer.cxx:2570
 AliITSUv1Layer.cxx:2571
 AliITSUv1Layer.cxx:2572
 AliITSUv1Layer.cxx:2573
 AliITSUv1Layer.cxx:2574
 AliITSUv1Layer.cxx:2575
 AliITSUv1Layer.cxx:2576
 AliITSUv1Layer.cxx:2577
 AliITSUv1Layer.cxx:2578
 AliITSUv1Layer.cxx:2579
 AliITSUv1Layer.cxx:2580
 AliITSUv1Layer.cxx:2581
 AliITSUv1Layer.cxx:2582
 AliITSUv1Layer.cxx:2583
 AliITSUv1Layer.cxx:2584
 AliITSUv1Layer.cxx:2585
 AliITSUv1Layer.cxx:2586
 AliITSUv1Layer.cxx:2587
 AliITSUv1Layer.cxx:2588
 AliITSUv1Layer.cxx:2589
 AliITSUv1Layer.cxx:2590
 AliITSUv1Layer.cxx:2591
 AliITSUv1Layer.cxx:2592
 AliITSUv1Layer.cxx:2593
 AliITSUv1Layer.cxx:2594
 AliITSUv1Layer.cxx:2595
 AliITSUv1Layer.cxx:2596
 AliITSUv1Layer.cxx:2597
 AliITSUv1Layer.cxx:2598
 AliITSUv1Layer.cxx:2599
 AliITSUv1Layer.cxx:2600
 AliITSUv1Layer.cxx:2601
 AliITSUv1Layer.cxx:2602
 AliITSUv1Layer.cxx:2603
 AliITSUv1Layer.cxx:2604
 AliITSUv1Layer.cxx:2605
 AliITSUv1Layer.cxx:2606
 AliITSUv1Layer.cxx:2607
 AliITSUv1Layer.cxx:2608
 AliITSUv1Layer.cxx:2609
 AliITSUv1Layer.cxx:2610
 AliITSUv1Layer.cxx:2611
 AliITSUv1Layer.cxx:2612
 AliITSUv1Layer.cxx:2613
 AliITSUv1Layer.cxx:2614
 AliITSUv1Layer.cxx:2615
 AliITSUv1Layer.cxx:2616
 AliITSUv1Layer.cxx:2617
 AliITSUv1Layer.cxx:2618
 AliITSUv1Layer.cxx:2619
 AliITSUv1Layer.cxx:2620
 AliITSUv1Layer.cxx:2621
 AliITSUv1Layer.cxx:2622
 AliITSUv1Layer.cxx:2623
 AliITSUv1Layer.cxx:2624
 AliITSUv1Layer.cxx:2625
 AliITSUv1Layer.cxx:2626
 AliITSUv1Layer.cxx:2627
 AliITSUv1Layer.cxx:2628
 AliITSUv1Layer.cxx:2629
 AliITSUv1Layer.cxx:2630
 AliITSUv1Layer.cxx:2631
 AliITSUv1Layer.cxx:2632
 AliITSUv1Layer.cxx:2633
 AliITSUv1Layer.cxx:2634
 AliITSUv1Layer.cxx:2635
 AliITSUv1Layer.cxx:2636
 AliITSUv1Layer.cxx:2637
 AliITSUv1Layer.cxx:2638
 AliITSUv1Layer.cxx:2639
 AliITSUv1Layer.cxx:2640
 AliITSUv1Layer.cxx:2641
 AliITSUv1Layer.cxx:2642
 AliITSUv1Layer.cxx:2643
 AliITSUv1Layer.cxx:2644
 AliITSUv1Layer.cxx:2645
 AliITSUv1Layer.cxx:2646
 AliITSUv1Layer.cxx:2647
 AliITSUv1Layer.cxx:2648
 AliITSUv1Layer.cxx:2649
 AliITSUv1Layer.cxx:2650
 AliITSUv1Layer.cxx:2651
 AliITSUv1Layer.cxx:2652
 AliITSUv1Layer.cxx:2653
 AliITSUv1Layer.cxx:2654
 AliITSUv1Layer.cxx:2655
 AliITSUv1Layer.cxx:2656
 AliITSUv1Layer.cxx:2657
 AliITSUv1Layer.cxx:2658
 AliITSUv1Layer.cxx:2659
 AliITSUv1Layer.cxx:2660
 AliITSUv1Layer.cxx:2661
 AliITSUv1Layer.cxx:2662
 AliITSUv1Layer.cxx:2663
 AliITSUv1Layer.cxx:2664
 AliITSUv1Layer.cxx:2665
 AliITSUv1Layer.cxx:2666
 AliITSUv1Layer.cxx:2667
 AliITSUv1Layer.cxx:2668
 AliITSUv1Layer.cxx:2669
 AliITSUv1Layer.cxx:2670
 AliITSUv1Layer.cxx:2671
 AliITSUv1Layer.cxx:2672
 AliITSUv1Layer.cxx:2673
 AliITSUv1Layer.cxx:2674
 AliITSUv1Layer.cxx:2675
 AliITSUv1Layer.cxx:2676
 AliITSUv1Layer.cxx:2677
 AliITSUv1Layer.cxx:2678
 AliITSUv1Layer.cxx:2679
 AliITSUv1Layer.cxx:2680
 AliITSUv1Layer.cxx:2681
 AliITSUv1Layer.cxx:2682
 AliITSUv1Layer.cxx:2683
 AliITSUv1Layer.cxx:2684
 AliITSUv1Layer.cxx:2685
 AliITSUv1Layer.cxx:2686
 AliITSUv1Layer.cxx:2687
 AliITSUv1Layer.cxx:2688
 AliITSUv1Layer.cxx:2689
 AliITSUv1Layer.cxx:2690
 AliITSUv1Layer.cxx:2691
 AliITSUv1Layer.cxx:2692
 AliITSUv1Layer.cxx:2693
 AliITSUv1Layer.cxx:2694
 AliITSUv1Layer.cxx:2695
 AliITSUv1Layer.cxx:2696
 AliITSUv1Layer.cxx:2697
 AliITSUv1Layer.cxx:2698
 AliITSUv1Layer.cxx:2699
 AliITSUv1Layer.cxx:2700
 AliITSUv1Layer.cxx:2701
 AliITSUv1Layer.cxx:2702
 AliITSUv1Layer.cxx:2703
 AliITSUv1Layer.cxx:2704
 AliITSUv1Layer.cxx:2705
 AliITSUv1Layer.cxx:2706
 AliITSUv1Layer.cxx:2707
 AliITSUv1Layer.cxx:2708
 AliITSUv1Layer.cxx:2709
 AliITSUv1Layer.cxx:2710
 AliITSUv1Layer.cxx:2711
 AliITSUv1Layer.cxx:2712
 AliITSUv1Layer.cxx:2713
 AliITSUv1Layer.cxx:2714
 AliITSUv1Layer.cxx:2715
 AliITSUv1Layer.cxx:2716
 AliITSUv1Layer.cxx:2717
 AliITSUv1Layer.cxx:2718
 AliITSUv1Layer.cxx:2719
 AliITSUv1Layer.cxx:2720
 AliITSUv1Layer.cxx:2721
 AliITSUv1Layer.cxx:2722
 AliITSUv1Layer.cxx:2723
 AliITSUv1Layer.cxx:2724
 AliITSUv1Layer.cxx:2725
 AliITSUv1Layer.cxx:2726
 AliITSUv1Layer.cxx:2727
 AliITSUv1Layer.cxx:2728
 AliITSUv1Layer.cxx:2729
 AliITSUv1Layer.cxx:2730
 AliITSUv1Layer.cxx:2731
 AliITSUv1Layer.cxx:2732
 AliITSUv1Layer.cxx:2733
 AliITSUv1Layer.cxx:2734
 AliITSUv1Layer.cxx:2735
 AliITSUv1Layer.cxx:2736
 AliITSUv1Layer.cxx:2737
 AliITSUv1Layer.cxx:2738
 AliITSUv1Layer.cxx:2739
 AliITSUv1Layer.cxx:2740
 AliITSUv1Layer.cxx:2741
 AliITSUv1Layer.cxx:2742
 AliITSUv1Layer.cxx:2743
 AliITSUv1Layer.cxx:2744
 AliITSUv1Layer.cxx:2745
 AliITSUv1Layer.cxx:2746
 AliITSUv1Layer.cxx:2747
 AliITSUv1Layer.cxx:2748
 AliITSUv1Layer.cxx:2749
 AliITSUv1Layer.cxx:2750
 AliITSUv1Layer.cxx:2751
 AliITSUv1Layer.cxx:2752
 AliITSUv1Layer.cxx:2753
 AliITSUv1Layer.cxx:2754
 AliITSUv1Layer.cxx:2755
 AliITSUv1Layer.cxx:2756
 AliITSUv1Layer.cxx:2757
 AliITSUv1Layer.cxx:2758
 AliITSUv1Layer.cxx:2759
 AliITSUv1Layer.cxx:2760
 AliITSUv1Layer.cxx:2761
 AliITSUv1Layer.cxx:2762
 AliITSUv1Layer.cxx:2763
 AliITSUv1Layer.cxx:2764
 AliITSUv1Layer.cxx:2765
 AliITSUv1Layer.cxx:2766
 AliITSUv1Layer.cxx:2767
 AliITSUv1Layer.cxx:2768
 AliITSUv1Layer.cxx:2769
 AliITSUv1Layer.cxx:2770
 AliITSUv1Layer.cxx:2771
 AliITSUv1Layer.cxx:2772
 AliITSUv1Layer.cxx:2773
 AliITSUv1Layer.cxx:2774
 AliITSUv1Layer.cxx:2775
 AliITSUv1Layer.cxx:2776
 AliITSUv1Layer.cxx:2777
 AliITSUv1Layer.cxx:2778
 AliITSUv1Layer.cxx:2779
 AliITSUv1Layer.cxx:2780
 AliITSUv1Layer.cxx:2781
 AliITSUv1Layer.cxx:2782
 AliITSUv1Layer.cxx:2783
 AliITSUv1Layer.cxx:2784
 AliITSUv1Layer.cxx:2785
 AliITSUv1Layer.cxx:2786
 AliITSUv1Layer.cxx:2787
 AliITSUv1Layer.cxx:2788
 AliITSUv1Layer.cxx:2789
 AliITSUv1Layer.cxx:2790
 AliITSUv1Layer.cxx:2791
 AliITSUv1Layer.cxx:2792
 AliITSUv1Layer.cxx:2793
 AliITSUv1Layer.cxx:2794
 AliITSUv1Layer.cxx:2795
 AliITSUv1Layer.cxx:2796
 AliITSUv1Layer.cxx:2797
 AliITSUv1Layer.cxx:2798
 AliITSUv1Layer.cxx:2799
 AliITSUv1Layer.cxx:2800
 AliITSUv1Layer.cxx:2801
 AliITSUv1Layer.cxx:2802
 AliITSUv1Layer.cxx:2803
 AliITSUv1Layer.cxx:2804
 AliITSUv1Layer.cxx:2805
 AliITSUv1Layer.cxx:2806
 AliITSUv1Layer.cxx:2807
 AliITSUv1Layer.cxx:2808
 AliITSUv1Layer.cxx:2809
 AliITSUv1Layer.cxx:2810
 AliITSUv1Layer.cxx:2811
 AliITSUv1Layer.cxx:2812
 AliITSUv1Layer.cxx:2813
 AliITSUv1Layer.cxx:2814
 AliITSUv1Layer.cxx:2815
 AliITSUv1Layer.cxx:2816
 AliITSUv1Layer.cxx:2817
 AliITSUv1Layer.cxx:2818
 AliITSUv1Layer.cxx:2819
 AliITSUv1Layer.cxx:2820
 AliITSUv1Layer.cxx:2821
 AliITSUv1Layer.cxx:2822
 AliITSUv1Layer.cxx:2823
 AliITSUv1Layer.cxx:2824
 AliITSUv1Layer.cxx:2825
 AliITSUv1Layer.cxx:2826
 AliITSUv1Layer.cxx:2827
 AliITSUv1Layer.cxx:2828
 AliITSUv1Layer.cxx:2829
 AliITSUv1Layer.cxx:2830
 AliITSUv1Layer.cxx:2831
 AliITSUv1Layer.cxx:2832
 AliITSUv1Layer.cxx:2833
 AliITSUv1Layer.cxx:2834
 AliITSUv1Layer.cxx:2835
 AliITSUv1Layer.cxx:2836
 AliITSUv1Layer.cxx:2837
 AliITSUv1Layer.cxx:2838
 AliITSUv1Layer.cxx:2839
 AliITSUv1Layer.cxx:2840
 AliITSUv1Layer.cxx:2841
 AliITSUv1Layer.cxx:2842
 AliITSUv1Layer.cxx:2843
 AliITSUv1Layer.cxx:2844
 AliITSUv1Layer.cxx:2845
 AliITSUv1Layer.cxx:2846
 AliITSUv1Layer.cxx:2847
 AliITSUv1Layer.cxx:2848
 AliITSUv1Layer.cxx:2849
 AliITSUv1Layer.cxx:2850
 AliITSUv1Layer.cxx:2851
 AliITSUv1Layer.cxx:2852
 AliITSUv1Layer.cxx:2853
 AliITSUv1Layer.cxx:2854
 AliITSUv1Layer.cxx:2855
 AliITSUv1Layer.cxx:2856
 AliITSUv1Layer.cxx:2857
 AliITSUv1Layer.cxx:2858
 AliITSUv1Layer.cxx:2859
 AliITSUv1Layer.cxx:2860
 AliITSUv1Layer.cxx:2861
 AliITSUv1Layer.cxx:2862
 AliITSUv1Layer.cxx:2863
 AliITSUv1Layer.cxx:2864
 AliITSUv1Layer.cxx:2865
 AliITSUv1Layer.cxx:2866
 AliITSUv1Layer.cxx:2867
 AliITSUv1Layer.cxx:2868
 AliITSUv1Layer.cxx:2869
 AliITSUv1Layer.cxx:2870
 AliITSUv1Layer.cxx:2871
 AliITSUv1Layer.cxx:2872
 AliITSUv1Layer.cxx:2873
 AliITSUv1Layer.cxx:2874
 AliITSUv1Layer.cxx:2875
 AliITSUv1Layer.cxx:2876
 AliITSUv1Layer.cxx:2877
 AliITSUv1Layer.cxx:2878
 AliITSUv1Layer.cxx:2879
 AliITSUv1Layer.cxx:2880
 AliITSUv1Layer.cxx:2881
 AliITSUv1Layer.cxx:2882
 AliITSUv1Layer.cxx:2883
 AliITSUv1Layer.cxx:2884
 AliITSUv1Layer.cxx:2885
 AliITSUv1Layer.cxx:2886
 AliITSUv1Layer.cxx:2887
 AliITSUv1Layer.cxx:2888
 AliITSUv1Layer.cxx:2889
 AliITSUv1Layer.cxx:2890
 AliITSUv1Layer.cxx:2891
 AliITSUv1Layer.cxx:2892
 AliITSUv1Layer.cxx:2893
 AliITSUv1Layer.cxx:2894
 AliITSUv1Layer.cxx:2895
 AliITSUv1Layer.cxx:2896
 AliITSUv1Layer.cxx:2897
 AliITSUv1Layer.cxx:2898
 AliITSUv1Layer.cxx:2899
 AliITSUv1Layer.cxx:2900
 AliITSUv1Layer.cxx:2901
 AliITSUv1Layer.cxx:2902
 AliITSUv1Layer.cxx:2903
 AliITSUv1Layer.cxx:2904
 AliITSUv1Layer.cxx:2905
 AliITSUv1Layer.cxx:2906
 AliITSUv1Layer.cxx:2907
 AliITSUv1Layer.cxx:2908
 AliITSUv1Layer.cxx:2909
 AliITSUv1Layer.cxx:2910
 AliITSUv1Layer.cxx:2911
 AliITSUv1Layer.cxx:2912
 AliITSUv1Layer.cxx:2913
 AliITSUv1Layer.cxx:2914
 AliITSUv1Layer.cxx:2915
 AliITSUv1Layer.cxx:2916
 AliITSUv1Layer.cxx:2917
 AliITSUv1Layer.cxx:2918
 AliITSUv1Layer.cxx:2919
 AliITSUv1Layer.cxx:2920
 AliITSUv1Layer.cxx:2921
 AliITSUv1Layer.cxx:2922
 AliITSUv1Layer.cxx:2923
 AliITSUv1Layer.cxx:2924
 AliITSUv1Layer.cxx:2925
 AliITSUv1Layer.cxx:2926
 AliITSUv1Layer.cxx:2927
 AliITSUv1Layer.cxx:2928
 AliITSUv1Layer.cxx:2929
 AliITSUv1Layer.cxx:2930
 AliITSUv1Layer.cxx:2931
 AliITSUv1Layer.cxx:2932
 AliITSUv1Layer.cxx:2933
 AliITSUv1Layer.cxx:2934
 AliITSUv1Layer.cxx:2935
 AliITSUv1Layer.cxx:2936
 AliITSUv1Layer.cxx:2937
 AliITSUv1Layer.cxx:2938
 AliITSUv1Layer.cxx:2939
 AliITSUv1Layer.cxx:2940
 AliITSUv1Layer.cxx:2941
 AliITSUv1Layer.cxx:2942
 AliITSUv1Layer.cxx:2943
 AliITSUv1Layer.cxx:2944
 AliITSUv1Layer.cxx:2945
 AliITSUv1Layer.cxx:2946
 AliITSUv1Layer.cxx:2947
 AliITSUv1Layer.cxx:2948
 AliITSUv1Layer.cxx:2949
 AliITSUv1Layer.cxx:2950
 AliITSUv1Layer.cxx:2951
 AliITSUv1Layer.cxx:2952
 AliITSUv1Layer.cxx:2953
 AliITSUv1Layer.cxx:2954
 AliITSUv1Layer.cxx:2955
 AliITSUv1Layer.cxx:2956
 AliITSUv1Layer.cxx:2957
 AliITSUv1Layer.cxx:2958
 AliITSUv1Layer.cxx:2959
 AliITSUv1Layer.cxx:2960
 AliITSUv1Layer.cxx:2961
 AliITSUv1Layer.cxx:2962
 AliITSUv1Layer.cxx:2963
 AliITSUv1Layer.cxx:2964
 AliITSUv1Layer.cxx:2965
 AliITSUv1Layer.cxx:2966
 AliITSUv1Layer.cxx:2967
 AliITSUv1Layer.cxx:2968
 AliITSUv1Layer.cxx:2969
 AliITSUv1Layer.cxx:2970
 AliITSUv1Layer.cxx:2971
 AliITSUv1Layer.cxx:2972
 AliITSUv1Layer.cxx:2973
 AliITSUv1Layer.cxx:2974
 AliITSUv1Layer.cxx:2975
 AliITSUv1Layer.cxx:2976
 AliITSUv1Layer.cxx:2977
 AliITSUv1Layer.cxx:2978
 AliITSUv1Layer.cxx:2979
 AliITSUv1Layer.cxx:2980
 AliITSUv1Layer.cxx:2981
 AliITSUv1Layer.cxx:2982
 AliITSUv1Layer.cxx:2983
 AliITSUv1Layer.cxx:2984
 AliITSUv1Layer.cxx:2985
 AliITSUv1Layer.cxx:2986
 AliITSUv1Layer.cxx:2987
 AliITSUv1Layer.cxx:2988
 AliITSUv1Layer.cxx:2989
 AliITSUv1Layer.cxx:2990
 AliITSUv1Layer.cxx:2991
 AliITSUv1Layer.cxx:2992
 AliITSUv1Layer.cxx:2993
 AliITSUv1Layer.cxx:2994
 AliITSUv1Layer.cxx:2995
 AliITSUv1Layer.cxx:2996
 AliITSUv1Layer.cxx:2997
 AliITSUv1Layer.cxx:2998
 AliITSUv1Layer.cxx:2999
 AliITSUv1Layer.cxx:3000
 AliITSUv1Layer.cxx:3001
 AliITSUv1Layer.cxx:3002
 AliITSUv1Layer.cxx:3003
 AliITSUv1Layer.cxx:3004
 AliITSUv1Layer.cxx:3005
 AliITSUv1Layer.cxx:3006
 AliITSUv1Layer.cxx:3007
 AliITSUv1Layer.cxx:3008
 AliITSUv1Layer.cxx:3009
 AliITSUv1Layer.cxx:3010
 AliITSUv1Layer.cxx:3011
 AliITSUv1Layer.cxx:3012
 AliITSUv1Layer.cxx:3013
 AliITSUv1Layer.cxx:3014
 AliITSUv1Layer.cxx:3015
 AliITSUv1Layer.cxx:3016
 AliITSUv1Layer.cxx:3017
 AliITSUv1Layer.cxx:3018
 AliITSUv1Layer.cxx:3019
 AliITSUv1Layer.cxx:3020
 AliITSUv1Layer.cxx:3021
 AliITSUv1Layer.cxx:3022
 AliITSUv1Layer.cxx:3023
 AliITSUv1Layer.cxx:3024
 AliITSUv1Layer.cxx:3025
 AliITSUv1Layer.cxx:3026
 AliITSUv1Layer.cxx:3027
 AliITSUv1Layer.cxx:3028
 AliITSUv1Layer.cxx:3029
 AliITSUv1Layer.cxx:3030
 AliITSUv1Layer.cxx:3031
 AliITSUv1Layer.cxx:3032
 AliITSUv1Layer.cxx:3033
 AliITSUv1Layer.cxx:3034
 AliITSUv1Layer.cxx:3035
 AliITSUv1Layer.cxx:3036
 AliITSUv1Layer.cxx:3037
 AliITSUv1Layer.cxx:3038
 AliITSUv1Layer.cxx:3039
 AliITSUv1Layer.cxx:3040
 AliITSUv1Layer.cxx:3041
 AliITSUv1Layer.cxx:3042
 AliITSUv1Layer.cxx:3043
 AliITSUv1Layer.cxx:3044
 AliITSUv1Layer.cxx:3045
 AliITSUv1Layer.cxx:3046
 AliITSUv1Layer.cxx:3047
 AliITSUv1Layer.cxx:3048
 AliITSUv1Layer.cxx:3049
 AliITSUv1Layer.cxx:3050
 AliITSUv1Layer.cxx:3051
 AliITSUv1Layer.cxx:3052
 AliITSUv1Layer.cxx:3053
 AliITSUv1Layer.cxx:3054
 AliITSUv1Layer.cxx:3055
 AliITSUv1Layer.cxx:3056
 AliITSUv1Layer.cxx:3057
 AliITSUv1Layer.cxx:3058
 AliITSUv1Layer.cxx:3059
 AliITSUv1Layer.cxx:3060
 AliITSUv1Layer.cxx:3061
 AliITSUv1Layer.cxx:3062
 AliITSUv1Layer.cxx:3063
 AliITSUv1Layer.cxx:3064
 AliITSUv1Layer.cxx:3065
 AliITSUv1Layer.cxx:3066
 AliITSUv1Layer.cxx:3067
 AliITSUv1Layer.cxx:3068
 AliITSUv1Layer.cxx:3069
 AliITSUv1Layer.cxx:3070
 AliITSUv1Layer.cxx:3071
 AliITSUv1Layer.cxx:3072
 AliITSUv1Layer.cxx:3073
 AliITSUv1Layer.cxx:3074
 AliITSUv1Layer.cxx:3075
 AliITSUv1Layer.cxx:3076
 AliITSUv1Layer.cxx:3077
 AliITSUv1Layer.cxx:3078
 AliITSUv1Layer.cxx:3079
 AliITSUv1Layer.cxx:3080
 AliITSUv1Layer.cxx:3081
 AliITSUv1Layer.cxx:3082
 AliITSUv1Layer.cxx:3083
 AliITSUv1Layer.cxx:3084
 AliITSUv1Layer.cxx:3085
 AliITSUv1Layer.cxx:3086
 AliITSUv1Layer.cxx:3087
 AliITSUv1Layer.cxx:3088
 AliITSUv1Layer.cxx:3089
 AliITSUv1Layer.cxx:3090
 AliITSUv1Layer.cxx:3091
 AliITSUv1Layer.cxx:3092
 AliITSUv1Layer.cxx:3093
 AliITSUv1Layer.cxx:3094
 AliITSUv1Layer.cxx:3095
 AliITSUv1Layer.cxx:3096
 AliITSUv1Layer.cxx:3097
 AliITSUv1Layer.cxx:3098
 AliITSUv1Layer.cxx:3099
 AliITSUv1Layer.cxx:3100
 AliITSUv1Layer.cxx:3101
 AliITSUv1Layer.cxx:3102
 AliITSUv1Layer.cxx:3103
 AliITSUv1Layer.cxx:3104
 AliITSUv1Layer.cxx:3105
 AliITSUv1Layer.cxx:3106
 AliITSUv1Layer.cxx:3107
 AliITSUv1Layer.cxx:3108
 AliITSUv1Layer.cxx:3109
 AliITSUv1Layer.cxx:3110
 AliITSUv1Layer.cxx:3111
 AliITSUv1Layer.cxx:3112
 AliITSUv1Layer.cxx:3113
 AliITSUv1Layer.cxx:3114
 AliITSUv1Layer.cxx:3115
 AliITSUv1Layer.cxx:3116
 AliITSUv1Layer.cxx:3117
 AliITSUv1Layer.cxx:3118
 AliITSUv1Layer.cxx:3119
 AliITSUv1Layer.cxx:3120
 AliITSUv1Layer.cxx:3121
 AliITSUv1Layer.cxx:3122
 AliITSUv1Layer.cxx:3123
 AliITSUv1Layer.cxx:3124
 AliITSUv1Layer.cxx:3125
 AliITSUv1Layer.cxx:3126
 AliITSUv1Layer.cxx:3127
 AliITSUv1Layer.cxx:3128
 AliITSUv1Layer.cxx:3129
 AliITSUv1Layer.cxx:3130
 AliITSUv1Layer.cxx:3131
 AliITSUv1Layer.cxx:3132
 AliITSUv1Layer.cxx:3133
 AliITSUv1Layer.cxx:3134
 AliITSUv1Layer.cxx:3135
 AliITSUv1Layer.cxx:3136
 AliITSUv1Layer.cxx:3137
 AliITSUv1Layer.cxx:3138
 AliITSUv1Layer.cxx:3139
 AliITSUv1Layer.cxx:3140
 AliITSUv1Layer.cxx:3141
 AliITSUv1Layer.cxx:3142
 AliITSUv1Layer.cxx:3143
 AliITSUv1Layer.cxx:3144
 AliITSUv1Layer.cxx:3145
 AliITSUv1Layer.cxx:3146
 AliITSUv1Layer.cxx:3147
 AliITSUv1Layer.cxx:3148
 AliITSUv1Layer.cxx:3149
 AliITSUv1Layer.cxx:3150
 AliITSUv1Layer.cxx:3151
 AliITSUv1Layer.cxx:3152
 AliITSUv1Layer.cxx:3153
 AliITSUv1Layer.cxx:3154
 AliITSUv1Layer.cxx:3155
 AliITSUv1Layer.cxx:3156
 AliITSUv1Layer.cxx:3157
 AliITSUv1Layer.cxx:3158
 AliITSUv1Layer.cxx:3159
 AliITSUv1Layer.cxx:3160
 AliITSUv1Layer.cxx:3161
 AliITSUv1Layer.cxx:3162
 AliITSUv1Layer.cxx:3163
 AliITSUv1Layer.cxx:3164
 AliITSUv1Layer.cxx:3165
 AliITSUv1Layer.cxx:3166
 AliITSUv1Layer.cxx:3167
 AliITSUv1Layer.cxx:3168
 AliITSUv1Layer.cxx:3169
 AliITSUv1Layer.cxx:3170
 AliITSUv1Layer.cxx:3171
 AliITSUv1Layer.cxx:3172
 AliITSUv1Layer.cxx:3173
 AliITSUv1Layer.cxx:3174
 AliITSUv1Layer.cxx:3175
 AliITSUv1Layer.cxx:3176
 AliITSUv1Layer.cxx:3177
 AliITSUv1Layer.cxx:3178
 AliITSUv1Layer.cxx:3179
 AliITSUv1Layer.cxx:3180
 AliITSUv1Layer.cxx:3181
 AliITSUv1Layer.cxx:3182
 AliITSUv1Layer.cxx:3183
 AliITSUv1Layer.cxx:3184
 AliITSUv1Layer.cxx:3185
 AliITSUv1Layer.cxx:3186
 AliITSUv1Layer.cxx:3187
 AliITSUv1Layer.cxx:3188
 AliITSUv1Layer.cxx:3189
 AliITSUv1Layer.cxx:3190
 AliITSUv1Layer.cxx:3191
 AliITSUv1Layer.cxx:3192
 AliITSUv1Layer.cxx:3193
 AliITSUv1Layer.cxx:3194
 AliITSUv1Layer.cxx:3195
 AliITSUv1Layer.cxx:3196
 AliITSUv1Layer.cxx:3197
 AliITSUv1Layer.cxx:3198
 AliITSUv1Layer.cxx:3199
 AliITSUv1Layer.cxx:3200
 AliITSUv1Layer.cxx:3201
 AliITSUv1Layer.cxx:3202
 AliITSUv1Layer.cxx:3203
 AliITSUv1Layer.cxx:3204
 AliITSUv1Layer.cxx:3205
 AliITSUv1Layer.cxx:3206
 AliITSUv1Layer.cxx:3207
 AliITSUv1Layer.cxx:3208
 AliITSUv1Layer.cxx:3209
 AliITSUv1Layer.cxx:3210
 AliITSUv1Layer.cxx:3211
 AliITSUv1Layer.cxx:3212
 AliITSUv1Layer.cxx:3213
 AliITSUv1Layer.cxx:3214
 AliITSUv1Layer.cxx:3215
 AliITSUv1Layer.cxx:3216
 AliITSUv1Layer.cxx:3217
 AliITSUv1Layer.cxx:3218
 AliITSUv1Layer.cxx:3219
 AliITSUv1Layer.cxx:3220
 AliITSUv1Layer.cxx:3221
 AliITSUv1Layer.cxx:3222
 AliITSUv1Layer.cxx:3223
 AliITSUv1Layer.cxx:3224
 AliITSUv1Layer.cxx:3225
 AliITSUv1Layer.cxx:3226
 AliITSUv1Layer.cxx:3227
 AliITSUv1Layer.cxx:3228
 AliITSUv1Layer.cxx:3229
 AliITSUv1Layer.cxx:3230
 AliITSUv1Layer.cxx:3231
 AliITSUv1Layer.cxx:3232
 AliITSUv1Layer.cxx:3233
 AliITSUv1Layer.cxx:3234
 AliITSUv1Layer.cxx:3235
 AliITSUv1Layer.cxx:3236
 AliITSUv1Layer.cxx:3237
 AliITSUv1Layer.cxx:3238
 AliITSUv1Layer.cxx:3239
 AliITSUv1Layer.cxx:3240
 AliITSUv1Layer.cxx:3241
 AliITSUv1Layer.cxx:3242
 AliITSUv1Layer.cxx:3243
 AliITSUv1Layer.cxx:3244
 AliITSUv1Layer.cxx:3245
 AliITSUv1Layer.cxx:3246
 AliITSUv1Layer.cxx:3247
 AliITSUv1Layer.cxx:3248
 AliITSUv1Layer.cxx:3249
 AliITSUv1Layer.cxx:3250
 AliITSUv1Layer.cxx:3251
 AliITSUv1Layer.cxx:3252
 AliITSUv1Layer.cxx:3253
 AliITSUv1Layer.cxx:3254
 AliITSUv1Layer.cxx:3255
 AliITSUv1Layer.cxx:3256
 AliITSUv1Layer.cxx:3257
 AliITSUv1Layer.cxx:3258
 AliITSUv1Layer.cxx:3259
 AliITSUv1Layer.cxx:3260
 AliITSUv1Layer.cxx:3261
 AliITSUv1Layer.cxx:3262
 AliITSUv1Layer.cxx:3263
 AliITSUv1Layer.cxx:3264
 AliITSUv1Layer.cxx:3265
 AliITSUv1Layer.cxx:3266
 AliITSUv1Layer.cxx:3267
 AliITSUv1Layer.cxx:3268
 AliITSUv1Layer.cxx:3269
 AliITSUv1Layer.cxx:3270
 AliITSUv1Layer.cxx:3271
 AliITSUv1Layer.cxx:3272
 AliITSUv1Layer.cxx:3273
 AliITSUv1Layer.cxx:3274
 AliITSUv1Layer.cxx:3275
 AliITSUv1Layer.cxx:3276
 AliITSUv1Layer.cxx:3277
 AliITSUv1Layer.cxx:3278
 AliITSUv1Layer.cxx:3279
 AliITSUv1Layer.cxx:3280
 AliITSUv1Layer.cxx:3281
 AliITSUv1Layer.cxx:3282
 AliITSUv1Layer.cxx:3283
 AliITSUv1Layer.cxx:3284
 AliITSUv1Layer.cxx:3285
 AliITSUv1Layer.cxx:3286
 AliITSUv1Layer.cxx:3287
 AliITSUv1Layer.cxx:3288
 AliITSUv1Layer.cxx:3289
 AliITSUv1Layer.cxx:3290
 AliITSUv1Layer.cxx:3291
 AliITSUv1Layer.cxx:3292
 AliITSUv1Layer.cxx:3293
 AliITSUv1Layer.cxx:3294
 AliITSUv1Layer.cxx:3295
 AliITSUv1Layer.cxx:3296
 AliITSUv1Layer.cxx:3297
 AliITSUv1Layer.cxx:3298
 AliITSUv1Layer.cxx:3299
 AliITSUv1Layer.cxx:3300
 AliITSUv1Layer.cxx:3301
 AliITSUv1Layer.cxx:3302
 AliITSUv1Layer.cxx:3303
 AliITSUv1Layer.cxx:3304
 AliITSUv1Layer.cxx:3305
 AliITSUv1Layer.cxx:3306
 AliITSUv1Layer.cxx:3307
 AliITSUv1Layer.cxx:3308
 AliITSUv1Layer.cxx:3309
 AliITSUv1Layer.cxx:3310
 AliITSUv1Layer.cxx:3311
 AliITSUv1Layer.cxx:3312
 AliITSUv1Layer.cxx:3313
 AliITSUv1Layer.cxx:3314
 AliITSUv1Layer.cxx:3315
 AliITSUv1Layer.cxx:3316
 AliITSUv1Layer.cxx:3317
 AliITSUv1Layer.cxx:3318
 AliITSUv1Layer.cxx:3319
 AliITSUv1Layer.cxx:3320
 AliITSUv1Layer.cxx:3321
 AliITSUv1Layer.cxx:3322
 AliITSUv1Layer.cxx:3323
 AliITSUv1Layer.cxx:3324
 AliITSUv1Layer.cxx:3325
 AliITSUv1Layer.cxx:3326
 AliITSUv1Layer.cxx:3327
 AliITSUv1Layer.cxx:3328
 AliITSUv1Layer.cxx:3329
 AliITSUv1Layer.cxx:3330
 AliITSUv1Layer.cxx:3331
 AliITSUv1Layer.cxx:3332
 AliITSUv1Layer.cxx:3333
 AliITSUv1Layer.cxx:3334
 AliITSUv1Layer.cxx:3335
 AliITSUv1Layer.cxx:3336
 AliITSUv1Layer.cxx:3337
 AliITSUv1Layer.cxx:3338
 AliITSUv1Layer.cxx:3339
 AliITSUv1Layer.cxx:3340
 AliITSUv1Layer.cxx:3341
 AliITSUv1Layer.cxx:3342
 AliITSUv1Layer.cxx:3343
 AliITSUv1Layer.cxx:3344
 AliITSUv1Layer.cxx:3345
 AliITSUv1Layer.cxx:3346
 AliITSUv1Layer.cxx:3347
 AliITSUv1Layer.cxx:3348
 AliITSUv1Layer.cxx:3349
 AliITSUv1Layer.cxx:3350
 AliITSUv1Layer.cxx:3351
 AliITSUv1Layer.cxx:3352
 AliITSUv1Layer.cxx:3353
 AliITSUv1Layer.cxx:3354
 AliITSUv1Layer.cxx:3355
 AliITSUv1Layer.cxx:3356
 AliITSUv1Layer.cxx:3357
 AliITSUv1Layer.cxx:3358
 AliITSUv1Layer.cxx:3359
 AliITSUv1Layer.cxx:3360
 AliITSUv1Layer.cxx:3361
 AliITSUv1Layer.cxx:3362
 AliITSUv1Layer.cxx:3363
 AliITSUv1Layer.cxx:3364
 AliITSUv1Layer.cxx:3365
 AliITSUv1Layer.cxx:3366
 AliITSUv1Layer.cxx:3367
 AliITSUv1Layer.cxx:3368
 AliITSUv1Layer.cxx:3369
 AliITSUv1Layer.cxx:3370
 AliITSUv1Layer.cxx:3371
 AliITSUv1Layer.cxx:3372
 AliITSUv1Layer.cxx:3373
 AliITSUv1Layer.cxx:3374
 AliITSUv1Layer.cxx:3375
 AliITSUv1Layer.cxx:3376
 AliITSUv1Layer.cxx:3377
 AliITSUv1Layer.cxx:3378
 AliITSUv1Layer.cxx:3379
 AliITSUv1Layer.cxx:3380
 AliITSUv1Layer.cxx:3381
 AliITSUv1Layer.cxx:3382
 AliITSUv1Layer.cxx:3383
 AliITSUv1Layer.cxx:3384
 AliITSUv1Layer.cxx:3385
 AliITSUv1Layer.cxx:3386
 AliITSUv1Layer.cxx:3387
 AliITSUv1Layer.cxx:3388
 AliITSUv1Layer.cxx:3389
 AliITSUv1Layer.cxx:3390
 AliITSUv1Layer.cxx:3391
 AliITSUv1Layer.cxx:3392
 AliITSUv1Layer.cxx:3393
 AliITSUv1Layer.cxx:3394
 AliITSUv1Layer.cxx:3395
 AliITSUv1Layer.cxx:3396
 AliITSUv1Layer.cxx:3397
 AliITSUv1Layer.cxx:3398
 AliITSUv1Layer.cxx:3399
 AliITSUv1Layer.cxx:3400
 AliITSUv1Layer.cxx:3401
 AliITSUv1Layer.cxx:3402
 AliITSUv1Layer.cxx:3403
 AliITSUv1Layer.cxx:3404
 AliITSUv1Layer.cxx:3405
 AliITSUv1Layer.cxx:3406
 AliITSUv1Layer.cxx:3407
 AliITSUv1Layer.cxx:3408
 AliITSUv1Layer.cxx:3409
 AliITSUv1Layer.cxx:3410
 AliITSUv1Layer.cxx:3411
 AliITSUv1Layer.cxx:3412
 AliITSUv1Layer.cxx:3413
 AliITSUv1Layer.cxx:3414
 AliITSUv1Layer.cxx:3415
 AliITSUv1Layer.cxx:3416
 AliITSUv1Layer.cxx:3417
 AliITSUv1Layer.cxx:3418
 AliITSUv1Layer.cxx:3419
 AliITSUv1Layer.cxx:3420
 AliITSUv1Layer.cxx:3421
 AliITSUv1Layer.cxx:3422
 AliITSUv1Layer.cxx:3423
 AliITSUv1Layer.cxx:3424
 AliITSUv1Layer.cxx:3425
 AliITSUv1Layer.cxx:3426
 AliITSUv1Layer.cxx:3427
 AliITSUv1Layer.cxx:3428
 AliITSUv1Layer.cxx:3429
 AliITSUv1Layer.cxx:3430
 AliITSUv1Layer.cxx:3431
 AliITSUv1Layer.cxx:3432
 AliITSUv1Layer.cxx:3433
 AliITSUv1Layer.cxx:3434
 AliITSUv1Layer.cxx:3435
 AliITSUv1Layer.cxx:3436
 AliITSUv1Layer.cxx:3437
 AliITSUv1Layer.cxx:3438
 AliITSUv1Layer.cxx:3439
 AliITSUv1Layer.cxx:3440
 AliITSUv1Layer.cxx:3441
 AliITSUv1Layer.cxx:3442
 AliITSUv1Layer.cxx:3443
 AliITSUv1Layer.cxx:3444
 AliITSUv1Layer.cxx:3445
 AliITSUv1Layer.cxx:3446
 AliITSUv1Layer.cxx:3447
 AliITSUv1Layer.cxx:3448
 AliITSUv1Layer.cxx:3449
 AliITSUv1Layer.cxx:3450
 AliITSUv1Layer.cxx:3451
 AliITSUv1Layer.cxx:3452
 AliITSUv1Layer.cxx:3453
 AliITSUv1Layer.cxx:3454
 AliITSUv1Layer.cxx:3455
 AliITSUv1Layer.cxx:3456
 AliITSUv1Layer.cxx:3457
 AliITSUv1Layer.cxx:3458
 AliITSUv1Layer.cxx:3459