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

//
///////////////////////////////////////////////////////////////////////////////
//                                                                           //
//  Photon Multiplicity Detector Version 1                                   //
//  Bedanga Mohanty : February 14th 2006
//                                                                           //
//Begin_Html
/*
<img src="picts/AliPMDv1Class.gif">
*/
//End_Html
//                                                                           //
///////////////////////////////////////////////////////////////////////////////
////

#include <Riostream.h>
#include <TGeoManager.h>
#include <TGeoGlobalMagField.h>
#include <TVirtualMC.h>

#include "AliConst.h" 
#include "AliLog.h"
#include "AliMC.h"
#include "AliMagF.h" 
#include "AliPMDv2008.h"
#include "AliRun.h"

const Int_t   AliPMDv2008::fgkNcolUM1    = 48;  // Number of cols in UM, type 1
const Int_t   AliPMDv2008::fgkNcolUM2    = 96;  // Number of cols in UM, type 2
const Int_t   AliPMDv2008::fgkNrowUM1    = 96;  // Number of rows in UM, type 1
const Int_t   AliPMDv2008::fgkNrowUM2    = 48;  // Number of rows in UM, type 2
const Float_t AliPMDv2008::fgkCellRadius = 0.25;     // Radius of a hexagonal cell
const Float_t AliPMDv2008::fgkCellWall   = 0.02;     // Thickness of cell Wall
const Float_t AliPMDv2008::fgkCellDepth  = 0.50;     // Gas thickness
const Float_t AliPMDv2008::fgkThBase     = 0.2;      // Thickness of Base plate
const Float_t AliPMDv2008::fgkThBKP      = 0.1;      // Thickness of Back plane
const Float_t AliPMDv2008::fgkThAir      = 1.03;      // Thickness of Air
const Float_t AliPMDv2008::fgkThPCB      = 0.16;     // Thickness of PCB
const Float_t AliPMDv2008::fgkThLead     = 1.5;      // Thickness of Pb
const Float_t AliPMDv2008::fgkThSteel    = 0.5;      // Thickness of Steel
const Float_t AliPMDv2008::fgkGap        = 0.025;    // Air Gap
const Float_t AliPMDv2008::fgkZdist      = 361.5;    // z-position of the detector
const Float_t AliPMDv2008::fgkSqroot3    = 1.7320508;// Square Root of 3
const Float_t AliPMDv2008::fgkSqroot3by2 = 0.8660254;// Square Root of 3 by 2
const Float_t AliPMDv2008::fgkSSBoundary = 0.3;
const Float_t AliPMDv2008::fgkThSS       = 1.03;
const Float_t AliPMDv2008::fgkThG10      = 1.03;
ClassImp(AliPMDv2008)
 
//_____________________________________________________________________________
AliPMDv2008::AliPMDv2008():
  fSMthick(0.),
  fDthick(0.),
  fSMLengthax(0.),
  fSMLengthay(0.),
  fSMLengthbx(0.),
  fSMLengthby(0.),
  fMedSens(0)
{
  //
  // Default constructor 
  //
  for (Int_t i = 0; i < 3; i++)
    {
      fDboxmm1[i]  = 0.;
      fDboxmm12[i] = 0.;
      fDboxmm2[i]  = 0.;
      fDboxmm22[i] = 0.;
    }
}
 
//_____________________________________________________________________________
AliPMDv2008::AliPMDv2008(const char *name, const char *title):
  AliPMD(name,title),
  fSMthick(0.),
  fDthick(0.),
  fSMLengthax(0.),
  fSMLengthay(0.),
  fSMLengthbx(0.),
  fSMLengthby(0.),
  fMedSens(0)
{
  //
  // Standard constructor
  //
  for (Int_t i = 0; i < 3; i++)
    {
      fDboxmm1[i]  = 0.;
      fDboxmm12[i] = 0.;
      fDboxmm2[i]  = 0.;
      fDboxmm22[i] = 0.;
    }
}

//_____________________________________________________________________________
void AliPMDv2008::CreateGeometry()
{
  // Create geometry for Photon Multiplicity Detector

  GetParameters();
  CreateSupermodule();
  CreatePMD();
}

//_____________________________________________________________________________
void AliPMDv2008::CreateSupermodule()
{
  // 
  // Creates the geometry of the cells of PMD, places them in  supermodule 
  // which is a rectangular object.
  // Basic unit is ECAR, a hexagonal cell made of Ar+CO2, which is 
  // placed inside another hexagonal cell made of Cu (ECCU) with larger 
  // radius, compared to ECAR. The difference in radius gives the dimension 
  // of half width of each cell wall.
  // These cells are placed in a rectangular strip which are of 2 types 
  // EST1 and EST2 
  // 2 types of unit modules are made EUM1 and EUM2 which contains these strips
  // placed repeatedly 
  // Each supermodule (ESMA, ESMB), made of G10 is filled with following 
  //components. They have 6 unit moudles inside them
  // ESMA, ESMB are placed in EPMD along with EMPB (Pb converter) 
  // and EMFE (iron support) 

  
  Int_t i,j;
  Int_t number;
  Int_t ihrotm,irotdm;
  Float_t xb, yb, zb;

  Int_t *idtmed = fIdtmed->GetArray()-599;
 
  AliMatrix(ihrotm, 90., 30.,   90.,  120., 0., 0.);
  AliMatrix(irotdm, 90., 180.,  90.,  270., 180., 0.);
 
  // STEP - I
  //******************************************************//
  // First create the sensitive medium of a hexagon cell (ECAR)
  // Inner hexagon filled with gas (Ar+CO2)
  
  Float_t hexd2[10] = {0.,360.,6,2,-0.25,0.,0.23,0.25,0.,0.23};
  hexd2[4] = -fgkCellDepth/2.;
  hexd2[7] =  fgkCellDepth/2.;
  hexd2[6] =  fgkCellRadius - fgkCellWall;
  hexd2[9] =  fgkCellRadius - fgkCellWall;
  
  TVirtualMC::GetMC()->Gsvolu("ECAR", "PGON", idtmed[604], hexd2,10);
  //******************************************************//

  // STEP - II
  //******************************************************//
  // Place the sensitive medium inside a hexagon copper cell (ECCU)
  // Outer hexagon made of Copper
  
  Float_t hexd1[10] = {0.,360.,6,2,-0.25,0.,0.25,0.25,0.,0.25};
  hexd1[4] = -fgkCellDepth/2.;
  hexd1[7] =  fgkCellDepth/2.;
  hexd1[6] =  fgkCellRadius;
  hexd1[9] =  fgkCellRadius;

  TVirtualMC::GetMC()->Gsvolu("ECCU", "PGON", idtmed[614], hexd1,10);

  // Place  inner hex (sensitive volume) inside outer hex (copper)
  
  TVirtualMC::GetMC()->Gspos("ECAR", 1, "ECCU", 0., 0., 0., 0, "ONLY");
  //******************************************************//

  // STEP - III
  //******************************************************//
  // Now create Rectangular TWO strips (EST1, EST2) 
  // of 1 column and 48 or 96 cells length

  // volume for first strip EST1 made of AIR 

  Float_t dbox1[3];
  dbox1[0] = fgkCellRadius/fgkSqroot3by2;
  dbox1[1] = fgkNrowUM1*fgkCellRadius;
  dbox1[2] = fgkCellDepth/2.;
  
  TVirtualMC::GetMC()->Gsvolu("EST1","BOX", idtmed[698], dbox1, 3);

  // volume for second strip EST2 


  Float_t dbox2[3];
  dbox2[1] = fgkNrowUM2*fgkCellRadius;
  dbox2[0] = dbox1[0];
  dbox2[2] = dbox1[2];

  TVirtualMC::GetMC()->Gsvolu("EST2","BOX", idtmed[698], dbox2, 3);

  // Place hexagonal cells ECCU placed inside EST1 
  xb = 0.; 
  zb = 0.;
  yb = (dbox1[1]) - fgkCellRadius; 
  for (i = 1; i <= fgkNrowUM1; ++i) 
    {
      number = i;
      TVirtualMC::GetMC()->Gspos("ECCU", number, "EST1", xb,yb,zb, 0, "ONLY");
      yb -= (fgkCellRadius*2.);
    }

  // Place hexagonal cells ECCU placed inside EST2 
  xb = 0.; 
  zb = 0.;
  yb = (dbox2[1]) - fgkCellRadius; 
  for (i = 1; i <= fgkNrowUM2; ++i) 
    {
      number = i;
      TVirtualMC::GetMC()->Gspos("ECCU", number, "EST2", xb,yb,zb, 0, "ONLY");
      //PH      cout << "ECCU in EST2 ==> " << number << "\t"<<xb <<  "\t"<<yb <<endl;
      yb -= (fgkCellRadius*2.);
    }


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

  // STEP - IV
  //******************************************************//
 // 2 types of rectangular shaped unit modules EUM1 and EUM2 (defined by BOX) 
  //---------------------------------EHC1 Start----------------------//
  // Create EHC1 : The honey combs for a unit module type 1
  // First step is to create a honey comb unit module.
  // This is named as EHC1, we will lay the EST1 strips of
  // honey comb cells inside it.
  
  //Dimensions of EHC1
  //X-dimension = Number of columns + cell radius
  //Y-dimension = Number of rows * cell radius/sqrt3by2 - (some factor)
  //Z-dimension = cell depth/2

  Float_t dbox3[3];
  dbox3[0] = (dbox1[0]*fgkNcolUM1)-(fgkCellRadius*fgkSqroot3*(fgkNcolUM1-1)/6.);   
  dbox3[1] = dbox1[1]+fgkCellRadius/2.;
  dbox3[2] = fgkCellDepth/2.;

  //Create a BOX, Material AIR
  TVirtualMC::GetMC()->Gsvolu("EHC1","BOX", idtmed[698], dbox3, 3);
  // Place rectangular strips EST1 inside EHC1 unit module
  xb = dbox3[0]-dbox1[0];  
  
  for (j = 1; j <= fgkNcolUM1; ++j)  
    {
      if(j%2 == 0)
	{
	  yb = -fgkCellRadius/2.0;
	}
      else
	{
	  yb = fgkCellRadius/2.0;
	}
      number = j;
      TVirtualMC::GetMC()->Gspos("EST1",number, "EHC1", xb, yb , 0. , 0, "MANY");
      //The strips are being placed from top towards bottom of the module
      //This is because the first cell in a module in hardware is the top
      //left corner cell
      xb = (dbox3[0]-dbox1[0])-j*fgkCellRadius*fgkSqroot3;

    }
  //--------------------EHC1 done----------------------------------//


  //---------------------------------EHC2 Start----------------------//
  // Create EHC2 : The honey combs for a unit module type 2
  // First step is to create a honey comb unit module.
  // This is named as EHC2, we will lay the EST2 strips of
  // honey comb cells inside it.

  //Dimensions of EHC2
  //X-dimension = Number of columns + cell radius
  //Y-dimension = Number of rows * cell radius/sqrt3by2 - (some factor)
  //Z-dimension = cell depth/2

  dbox3[0] = (dbox1[0]*fgkNcolUM1)-(fgkCellRadius*fgkSqroot3*(fgkNcolUM1-1)/6.);   
  dbox3[1] = dbox1[1]+fgkCellRadius/2.;
  dbox3[2] = fgkCellDepth/2.;

  Float_t dbox4[3];

  dbox4[0] =(dbox2[0]*fgkNcolUM2)-(fgkCellRadius*fgkSqroot3*(fgkNcolUM2-1)/6.); 
  dbox4[1] = dbox2[1] + fgkCellRadius/2.;
  dbox4[2] = dbox3[2];
  
  //Create a BOX of AIR
  TVirtualMC::GetMC()->Gsvolu("EHC2","BOX", idtmed[698], dbox4, 3);

  // Place rectangular strips EST2 inside EHC2 unit module
  xb = dbox4[0]-dbox2[0]; 
  for (j = 1; j <= fgkNcolUM2; ++j) 
  {
    if(j%2 == 0)
  {
    yb = -fgkCellRadius/2.0;
  }
    else
  {
    yb = +fgkCellRadius/2.0;
  }
    number = j;
    TVirtualMC::GetMC()->Gspos("EST2",number, "EHC2", xb, yb , 0. ,0, "MANY");
    xb = (dbox4[0]-dbox2[0])-j*fgkCellRadius*fgkSqroot3;
  }
  

  //--------------------EHC2 done----------------------------------//


  // Now the job is to assmeble an Unit module
  // It will have the following components
  // (a) Base plate of G10 of 0.2 cm 
  // (b) Air gap  of 0.05 cm 
  // (c) Bottom PCB of 0.16 cm G10
  // (d) Honey comb 0f 0.5 cm
  // (e) Top PCB  of 0.16 cm G10
  // (f) Air gap of 0.16 cm
  // (g) Back Plane of 0.1 cm G10
  // (h) Then all around then we have an air gap of 0.5mm
  // (i) Then all around 0.5mm thick G10 insulation
  // (h) Then all around Stainless Steel boundary channel 0.3 cm thick
  //Let us first create them one by one
  //---------------------------------------------------//

  // ---------------- Lets do it first for UM Type A -----//

 //--------------------------------------------------//
  //Bottom and Top PCB : EPCA
  //===========================
  // Make a 1.6mm thick G10 Bottom and Top PCB for Unit module A
  // X-dimension same as EHC1 - dbox3[0]
  // Y-dimension same as EHC1 - dbox3[1]
  // Z-dimension 0.16/2 = 0.08 cm
  //-------------------------------------------------//
  Float_t dboxPcbA[3];
  dboxPcbA[0]      = dbox3[0]; 
  dboxPcbA[1]      = dbox3[1];       
  dboxPcbA[2]      = fgkThPCB/2.;
  
  //Top and Bottom PCB is a BOX of Material G10
  TVirtualMC::GetMC()->Gsvolu("EPCA","BOX", idtmed[607], dboxPcbA, 3);
  //--------------------------------------------------------//  
  //Back Plane : EBKA
  //==================
  // Make a 1.0mm thick Back Plane PCB for Unit module A
  // X-dimension same as EHC1 - dbox3[0]
  // Y-dimension same as EHC1 - dbox3[1]
  // Z-dimension 0.1/2 = 0.05 cm
  //------------------------------------------------------//
  Float_t dboxBPlaneA[3];
  dboxBPlaneA[0]   = dbox3[0]; 
  dboxBPlaneA[1]   = dbox3[1];       
  dboxBPlaneA[2]   = fgkThBKP/2.;
  
  //Back PLane PCB of MAterial G10
  TVirtualMC::GetMC()->Gsvolu("EBKA","BOX", idtmed[607], dboxBPlaneA, 3);
  //-------------------------------------------------------------//  

 //---------- That was all in the Z -direction of Unit Module A----//

  //  Now lets us construct the boundary arround the Unit Module --//
  // This boundary has 
  // (a) 0.5 mm X and Y and 10.3 mm Z dimension  AIR gap
  // (b) 0.5 mm X and Y and 10.3 mm Z dimension G10
  // (c) 3.0 mm X and Y and 12.3 mm Z dimension Stainless Steel



  //-------------------------------------------------//
  //AIR GAP between UM and Boundary : ECGA FOR PRESHOWER PLANE
  //==========================================================
  // Make a 10.3mm thick Air gap for Unit module A
  // X-dimension same as EHC1+0.05
  // Y-dimension same as EHC1+0.05
  // Z-dimension 1.03/2 = 0.515 cm
  Float_t dboxAir3A[3];
  dboxAir3A[0]         = dbox3[0]+(2.0*fgkGap); 
  dboxAir3A[1]         = dbox3[1]+(2.0*fgkGap); 
  dboxAir3A[2]         = fgkThAir/2.;

  //FOR PRESHOWER
  //Air gap is a BOX of Material Air
  TVirtualMC::GetMC()->Gsvolu("ECGA","BOX", idtmed[698], dboxAir3A, 3);

  //FOR VETO
  //Air gap is a BOX of Material Air
  TVirtualMC::GetMC()->Gsvolu("ECVA","BOX", idtmed[698], dboxAir3A, 3);
  //-------------------------------------------------//  

 //-------------------------------------------------//
  //G10 boundary between honeycomb and SS : EDGA
  //================================================
  // Make a 10.3mm thick G10 Boundary for Unit module A
  // X-dimension same as EHC1+Airgap+0.05
  // Y-dimension same as EHC1+Airgap+0.05
  // Z-dimension 1.03/2 = 0.515 cm
  Float_t dboxGGA[3];
  dboxGGA[0]         = dboxAir3A[0]+(2.0*fgkGap); 
  dboxGGA[1]         = dboxAir3A[1]+(2.0*fgkGap); 
  dboxGGA[2]         = fgkThG10/2.;

  //FOR PRESHOWER
  //G10 BOX 
  TVirtualMC::GetMC()->Gsvolu("EDGA","BOX", idtmed[607], dboxGGA, 3);

  //FOR VETO
  //G10 BOX 
  TVirtualMC::GetMC()->Gsvolu("EDVA","BOX", idtmed[607], dboxGGA, 3);

  //-------------------------------------------------//  
  //----------------------------------------------------------//
  //Stainless Steel Bounadry : ESSA
  //==================================
  // Make a 10.3mm thick Stainless Steel boundary for Unit module A
  // X-dimension same as EHC1 + Airgap + G10 + 0.3
  // Y-dimension same as EHC1 + Airgap + G10 + 0.3
  // Z-dimension 1.03/2 = 0.515 cm
  //------------------------------------------------------//
  // A Stainless Steel Boundary Channel to house the unit module

  Float_t dboxSS1[3];
  dboxSS1[0]           = dboxGGA[0]+fgkSSBoundary; 
  dboxSS1[1]           = dboxGGA[1]+fgkSSBoundary;       
  dboxSS1[2]           = fgkThSS/2.;
  
  //FOR PRESHOWER

  //Stainless Steel boundary - Material Stainless Steel
  TVirtualMC::GetMC()->Gsvolu("ESSA","BOX", idtmed[618], dboxSS1, 3);

  //FOR VETO
  //Stainless Steel boundary - Material Stainless Steel
  TVirtualMC::GetMC()->Gsvolu("ESVA","BOX", idtmed[618], dboxSS1, 3);

  //----------------------------------------------------------------//

  //----------------------------------------------------------------//
  // Here we need to place the volume in order ESSA -> EDGA -> ECGA 
  // this makes the SS boundary and the 0.5mm thick FR4 insulation in place, 
  // and the air volume ECGA acts as mother for the rest of components.
  // The above placeemnt is done at (0.,0.,0.) relative coordiante 
  // Now we place bottom PCB, honeycomb, top PCB in this volume. We donot place
  // unnecessary air volumes now. Just leave the gap as we are placing them
  // in  air only. This also reduces the number of volumes for geant to track.

// Tree structure for different volumes
//
//				EUM1
//				 |
//			--------------------
//			|        |         |
//		      EBPA	ESSA	  EBKA
//				 |
//				EDGA
//				 |
//				ECGA
//				 |
//			--------------------
//			|        |	   |
//		      EPCA(1)   EHC1	 EPCA(2)
//		     (bottom)	 |	(top PCB)
//				 |
//			    Sensitive volume
//				(gas)
//	


  //FOR VETO
//Creating the side channels 
// SS boundary channel, followed by G10 and Air Gap  
  TVirtualMC::GetMC()->Gspos("EDVA", 1, "ESVA", 0., 0., 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("ECVA", 1, "EDVA", 0., 0., 0., 0, "ONLY");

//FOR PRESHOWER
  TVirtualMC::GetMC()->Gspos("EDGA", 1, "ESSA", 0., 0., 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("ECGA", 1, "EDGA", 0., 0., 0., 0, "ONLY");

 // now other components, using Bedanga's code, but changing the values.
  //Positioning Bottom PCB, Honey Comb abd Top PCB in AIR

  //For veto plane
  //Positioning the Bottom 0.16 cm PCB
  Float_t zbpcb = -dboxAir3A[2] + (2.0*fgkGap) + fgkThPCB/2.;
  TVirtualMC::GetMC()->Gspos("EPCA", 1, "ECVA", 0., 0., zbpcb, 0, "ONLY");
  //Positioning the Honey Comb 0.5 cm
  Float_t zhc = zbpcb + fgkThPCB/2. + fgkCellDepth/2.;
  TVirtualMC::GetMC()->Gspos("EHC1", 1, "ECVA", 0., 0., zhc, 0, "ONLY");
  //Positioning the Top PCB 0.16 cm
  Float_t ztpcb = zhc + fgkCellDepth/2 + fgkThPCB/2.;
  TVirtualMC::GetMC()->Gspos("EPCA", 2, "ECVA", 0., 0., ztpcb, 0, "ONLY");


  //For Preshower plane the ordering is reversed
  //Positioning the Bottom 0.16 cm PCB
  zbpcb = -dboxAir3A[2] + fgkThPCB + fgkThPCB/2.;
  TVirtualMC::GetMC()->Gspos("EPCA", 1, "ECGA", 0., 0., zbpcb, 0, "ONLY");
  //Positioning the Honey Comb 0.5 cm
  zhc = zbpcb + fgkThPCB/2. + fgkCellDepth/2.;
  TVirtualMC::GetMC()->Gspos("EHC1", 1, "ECGA", 0., 0., zhc, 0, "ONLY");
  //Positioning the Top PCB 0.16 cm
  ztpcb = zhc + fgkCellDepth/2 + fgkThPCB/2.;
  TVirtualMC::GetMC()->Gspos("EPCA", 2, "ECGA", 0., 0., ztpcb, 0, "ONLY");




 //--------------Now let us construct final UM ---------------//
  // We will do it as follows :
  // (i)  First make a UM of air. which will have dimensions
  //      of the SS boundary Channel (in x,y) and of height 13.3mm
  //(ii)  Then we will place all the components

  //----------------------------------------------------------//
  // A  unit module type A of Air
  // Dimensions of Unit Module same as SS boundary channel
  Float_t dboxUM1[3];
  dboxUM1[0] = dboxSS1[0];
  dboxUM1[1] = dboxSS1[1];
  dboxUM1[2] = fgkThSS/2. +0.15; // 0.15 added to accomodate Base Plate at
  // the bottom and the backplane PCB at the top.

  //FOR PRESHOWER
  //Create a Unit module of above dimensions Material : AIR
  TVirtualMC::GetMC()->Gsvolu("EUM1","BOX", idtmed[698], dboxUM1, 3);
  //FOR VETO
  TVirtualMC::GetMC()->Gsvolu("EUV1","BOX", idtmed[698], dboxUM1, 3);

  //----------------------------------------------------------------//

  //BASE PLATE : EBPA
  //==================
  // Make a 2mm thick G10 Base plate for Unit module A
  // Base plate is as big as the final UM dimensions that is as 
  // SS boundary channel
  Float_t dboxBaseA[3];
  dboxBaseA[0]       = dboxSS1[0];
  dboxBaseA[1]       = dboxSS1[1];       
  dboxBaseA[2]       = fgkThBase/2.;
  
  //Base Blate is a G10 BOX
  TVirtualMC::GetMC()->Gsvolu("EBPA","BOX", idtmed[607], dboxBaseA, 3);
  //----------------------------------------------------//  

  //FOR VETO
  //- Placing of all components of UM in AIR BOX EUM1--//
  //(1)   FIRST PUT THE BASE PLATE
  Float_t zbaseplate = -dboxUM1[2] + fgkThBase/2.;
  TVirtualMC::GetMC()->Gspos("EBPA", 1, "EUV1", 0., 0., zbaseplate, 0, "ONLY");

  //(2)   NEXT PLACING the SS BOX 
  Float_t zss = zbaseplate + fgkThBase/2. + fgkThSS/2.;
  TVirtualMC::GetMC()->Gspos("ESVA", 1, "EUV1", 0., 0., zss, 0, "ONLY");
  
  // (3) Positioning the Backplane PCB 0.1 cm
  Float_t zbkp = zss + fgkThSS/2. + fgkThBKP/2.;
  TVirtualMC::GetMC()->Gspos("EBKA", 1, "EUV1", 0., 0., zbkp, 0, "ONLY");

  //FOR PRESHOWER
  // (3) Positioning the Backplane PCB 0.1 cm
  zbkp = -dboxUM1[2] + fgkThBKP/2.;
  TVirtualMC::GetMC()->Gspos("EBKA", 1, "EUM1", 0., 0., zbkp, 0, "ONLY");

  //(2)   NEXT PLACING the SS BOX 
  zss = zbkp + fgkThBKP/2. + fgkThSS/2.;
  TVirtualMC::GetMC()->Gspos("ESSA", 1, "EUM1", 0., 0., zss, 0, "ONLY");
  
  //(1)   FIRST PUT THE BASE PLATE
  zbaseplate = zss + fgkThSS/2 + fgkThBase/2.;
  TVirtualMC::GetMC()->Gspos("EBPA", 1, "EUM1", 0., 0., zbaseplate, 0, "ONLY");
  //-------------------- UM Type A completed ------------------------//



  //-------------------- Lets do the same thing for UM type B -------//
 //--------------------------------------------------//
  //Bottom and Top PCB : EPCB
  //===========================
  // Make a 1.6mm thick G10 Bottom and Top PCB for Unit module B
  // X-dimension same as EHC2 - dbox4[0]
  // Y-dimension same as EHC2 - dbox4[1]
  // Z-dimension 0.16/2 = 0.08 cm
  //-------------------------------------------------//
  Float_t dboxPcbB[3];
  dboxPcbB[0]      = dbox4[0]; 
  dboxPcbB[1]      = dbox4[1];       
  dboxPcbB[2]      = fgkThPCB/2.;
  
  //Top and Bottom PCB is a BOX of Material G10
  TVirtualMC::GetMC()->Gsvolu("EPCB","BOX", idtmed[607], dboxPcbB, 3);
  //--------------------------------------------------------//  
  //Back Plane : EBKB
  //==================
  // Make a 1.0mm thick Back Plane PCB for Unit module B
  // X-dimension same as EHC2 - dbox4[0]
  // Y-dimension same as EHC2 - dbox4[1]
  // Z-dimension 0.1/2 = 0.05 cm
  //------------------------------------------------------//
  Float_t dboxBPlaneB[3];
  dboxBPlaneB[0]   = dbox4[0]; 
  dboxBPlaneB[1]   = dbox4[1];       
  dboxBPlaneB[2]   = fgkThBKP/2.;
  
  //Back PLane PCB of MAterial G10
  TVirtualMC::GetMC()->Gsvolu("EBKB","BOX", idtmed[607], dboxBPlaneB, 3);
  //-------------------------------------------------------------//  

 //---------- That was all in the Z -direction of Unit Module B----//

  //  Now lets us construct the boundary arround the Unit Module --//
  // This boundary has 
  // (a) 0.5 mm X and Y and 10.3 mm Z dimension  AIR gap
  // (b) 0.5 mm X and Y and 10.3 mm Z dimension G10
  // (c) 3.0 mm X and Y and 12.3 mm Z dimension Stainless Steel

  //-------------------------------------------------//
  //AIR GAP between UM and Boundary : ECGB
  //================================================
  // Make a 10.3mm thick Air gap for Unit module B
  // X-dimension same as EHC2+0.05
  // Y-dimension same as EHC2+0.05
  // Z-dimension 1.03/2 = 0.515 cm
  Float_t dboxAir3B[3];
  dboxAir3B[0]         = dbox4[0]+(2.0*fgkGap); 
  dboxAir3B[1]         = dbox4[1]+(2.0*fgkGap);       
  dboxAir3B[2]         = fgkThAir/2.;

  //PRESHOWER
  //Air gap is a BOX of Material Air
  TVirtualMC::GetMC()->Gsvolu("ECGB","BOX", idtmed[698], dboxAir3B, 3);
  //VETO
  TVirtualMC::GetMC()->Gsvolu("ECVB","BOX", idtmed[698], dboxAir3B, 3);

  //-------------------------------------------------//  

 //-------------------------------------------------//
  //G10 boundary between honeycomb and SS : EDGB
  //================================================
  // Make a 10.3mm thick G10 Boundary for Unit module B
  // X-dimension same as EHC2+Airgap+0.05
  // Y-dimension same as EHC2+Airgap+0.05
  // Z-dimension 1.03/2 = 0.515 cm
  Float_t dboxGGB[3];
  dboxGGB[0]         = dboxAir3B[0]+(2.0*fgkGap); 
  dboxGGB[1]         = dboxAir3B[1]+(2.0*fgkGap);      
  dboxGGB[2]         = fgkThG10/2.;

  //PRESHOWER
  //G10 BOX 
  TVirtualMC::GetMC()->Gsvolu("EDGB","BOX", idtmed[607], dboxGGB, 3);
  //VETO
  TVirtualMC::GetMC()->Gsvolu("EDVB","BOX", idtmed[607], dboxGGB, 3);
  //-------------------------------------------------//  
  //----------------------------------------------------------//
  //Stainless Steel Bounadry : ESSB
  //==================================
  // Make a 10.3mm thick Stainless Steel boundary for Unit module B
  // X-dimension same as EHC2 + Airgap + G10 + 0.3
  // Y-dimension same as EHC2 + Airgap + G10 + 0.3
  // Z-dimension 1.03/2 = 0.515 cm
  //------------------------------------------------------//
  // A Stainless Steel Boundary Channel to house the unit module

  Float_t dboxSS2[3];
  dboxSS2[0]  = dboxGGB[0] + fgkSSBoundary; 
  dboxSS2[1]  = dboxGGB[1] + fgkSSBoundary;       
  dboxSS2[2]  = fgkThSS/2.;
  
  //PRESHOWER
  //Stainless Steel boundary - Material Stainless Steel
  TVirtualMC::GetMC()->Gsvolu("ESSB","BOX", idtmed[618], dboxSS2, 3);
  //VETO
  TVirtualMC::GetMC()->Gsvolu("ESVB","BOX", idtmed[618], dboxSS2, 3);
  //----------------------------------------------------------------//

  //----------------------------------------------------------------//
  // Here we need to place the volume in order ESSB -> EDGB -> ECGB 
  // this makes the SS boiundary and the 0.5mm thick FR4 insulation in place, 
  // and the air volume ECGB acts as mother for the rest of components.
  // The above placeemnt is done at (0.,0.,0.) relative coordiante 
  // Now we place bottom PCB, honeycomb, top PCB in this volume. We donot place
  // unnecessary air volumes now. Just leave the gap as we are placing them
  // in  air only. This also reduces the number of volumes for geant to track.

// Tree structure for different volumes
//
//				EUM2
//				 |
//			--------------------
//			|        |         |
//		      EBPB	ESSB	  EBKB
//				 |
//				EDGB
//				 |
//				ECGB
//				 |
//			--------------------
//			|        |	   |
//		      EPCB(1)   EHC2	 EPCB(2)
//		     (bottom)	 |	(top PCB)
//				 |
//			    Sensitive volume
//				(gas)
//	

//PRESHOWER
//Creating the side channels
// SS boundary channel, followed by G10 and Air Gap  
  TVirtualMC::GetMC()->Gspos("EDGB", 1, "ESSB", 0., 0., 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("ECGB", 1, "EDGB", 0., 0., 0., 0, "ONLY");
  //VETO
  TVirtualMC::GetMC()->Gspos("EDVB", 1, "ESVB", 0., 0., 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("ECVB", 1, "EDVB", 0., 0., 0., 0, "ONLY");

 // now other components, using Bedang's code, but changing the values.
  //Positioning Bottom PCB, Honey Comb abd Top PCB in AIR

  //VETO
  //Positioning the Bottom 0.16 cm PCB
  Float_t zbpcb2 = -dboxAir3B[2] + (2.0*fgkGap) + fgkThPCB/2.;
  TVirtualMC::GetMC()->Gspos("EPCB", 1, "ECVB", 0., 0., zbpcb2, 0, "ONLY");
  //Positioning the Honey Comb 0.5 cm
  Float_t zhc2 = zbpcb2 + fgkThPCB/2. + fgkCellDepth/2.;
  TVirtualMC::GetMC()->Gspos("EHC2", 1, "ECVB", 0., 0., zhc2, 0, "ONLY");
  //Positioning the Top PCB 0.16 cm
  Float_t ztpcb2 = zhc2 + fgkCellDepth/2 + fgkThPCB/2.;
  TVirtualMC::GetMC()->Gspos("EPCB", 2, "ECVB", 0., 0., ztpcb2, 0, "ONLY");

  //PRESHOWER
  //For preshower plane the ordering is reversed
  //Positioning the Bottom 0.16 cm PCB
  zbpcb2 = -dboxAir3B[2] + fgkThPCB + fgkThPCB/2.;
  TVirtualMC::GetMC()->Gspos("EPCB", 1, "ECGB", 0., 0., zbpcb2, 0, "ONLY");
  //Positioning the Honey Comb 0.5 cm
  zhc2 = zbpcb2 + fgkThPCB/2. + fgkCellDepth/2.;
  TVirtualMC::GetMC()->Gspos("EHC2", 1, "ECGB", 0., 0., zhc2, 0, "ONLY");
  //Positioning the Top PCB 0.16 cm
  ztpcb2 = zhc2 + fgkCellDepth/2 + fgkThPCB/2.;
  TVirtualMC::GetMC()->Gspos("EPCB", 2, "ECGB", 0., 0., ztpcb2, 0, "ONLY");



 //--------------Now let us construct final UM ---------------//
  // We will do it as follows :
  // (i)  First make a UM of air. which will have dimensions
  //      of the SS boundary Channel (in x,y) and of height 13.3mm
  //(ii)  Then we will place all the components

  //----------------------------------------------------------//
  // A  unit module type B of Air
  // Dimensions of Unit Module same as SS boundary channel

  Float_t dboxUM2[3];
  dboxUM2[0] = dboxSS2[0];
  dboxUM2[1] = dboxSS2[1];
  dboxUM2[2] = fgkThSS/2. +0.15; // 0.15 added to accomodate Base Plate at
  // the bottom and the backplane PCB at the top.

  //PRESHOWER
  //Create a Unit module of above dimensions Material : AIR
  TVirtualMC::GetMC()->Gsvolu("EUM2","BOX", idtmed[698], dboxUM2, 3);

  //VETO
  TVirtualMC::GetMC()->Gsvolu("EUV2","BOX", idtmed[698], dboxUM2, 3);
  //----------------------------------------------------------------//

  //BASE PLATE : EBPB
  //==================
  // Make a 2mm thick G10 Base plate for Unit module B
  // Base plate is as big as the final UM dimensions that is as 
  // SS boundary channel
  Float_t dboxBaseB[3];
  dboxBaseB[0]       = dboxSS2[0];
  dboxBaseB[1]       = dboxSS2[1];       
  dboxBaseB[2]       = fgkThBase/2.;
  
  //Base Blate is a G10 BOX
  TVirtualMC::GetMC()->Gsvolu("EBPB","BOX", idtmed[607], dboxBaseB, 3);
  //----------------------------------------------------//  

  //VETO
  //- Placing of all components of UM in AIR BOX EUM2--//
  //(1)   FIRST PUT THE BASE PLATE
  Float_t zbaseplate2 = -dboxUM2[2] + fgkThBase/2.;
  TVirtualMC::GetMC()->Gspos("EBPB", 1, "EUV2", 0., 0., zbaseplate2, 0, "ONLY");

  //(2)   NEXT PLACING the SS BOX 
  Float_t zss2 = zbaseplate2 + fgkThBase/2. + fgkThSS/2.;
  TVirtualMC::GetMC()->Gspos("ESVB", 1, "EUV2", 0., 0., zss2, 0, "ONLY");
  
  // (3) Positioning the Backplane PCB 0.1 cm
  Float_t zbkp2 = zss2 + fgkThSS/2. + fgkThBKP/2.;
  TVirtualMC::GetMC()->Gspos("EBKB", 1, "EUV2", 0., 0., zbkp2, 0, "ONLY");



  //FOR PRESHOWER
  // (3) Positioning the Backplane PCB 0.1 cm
  zbkp2 = -dboxUM2[2] + fgkThBKP/2.;
  TVirtualMC::GetMC()->Gspos("EBKB", 1, "EUM2", 0., 0., zbkp2, 0, "ONLY");

  //(2)   NEXT PLACING the SS BOX 
  zss2 = zbkp2 + fgkThBKP/2. + fgkThSS/2.;
  TVirtualMC::GetMC()->Gspos("ESSB", 1, "EUM2", 0., 0., zss2, 0, "ONLY");
  
  //(1)   FIRST PUT THE BASE PLATE
  zbaseplate2 = zss2 + fgkThSS/2 + fgkThBase/2.;
  TVirtualMC::GetMC()->Gspos("EBPB", 1, "EUM2", 0., 0., zbaseplate2, 0, "ONLY");
  //-------------------- UM Type B completed ------------------------//


  //--- Now we need to make Lead plates of UM dimension -----//

  /**************************/
  //----------------------------------------------------------//
  // The lead convertor is of unit module size
  // Dimensions of Unit Module same as SS boundary channel

  Float_t dboxPba[3];
  dboxPba[0] = dboxUM1[0];
  dboxPba[1] = dboxUM1[1];
  dboxPba[2] = fgkThLead/2.;
  // Lead of UM dimension
  TVirtualMC::GetMC()->Gsvolu("EPB1","BOX", idtmed[600], dboxPba, 3);

  Float_t dboxPbb[3];
  dboxPbb[0] = dboxUM2[0];
  dboxPbb[1] = dboxUM2[1];
  dboxPbb[2] = fgkThLead/2.;
  // Lead of UM dimension
  TVirtualMC::GetMC()->Gsvolu("EPB2","BOX", idtmed[600], dboxPbb, 3);

  //----------------------------------------------------------------//

  // 2 types of Rectangular shaped supermodules (BOX) 
  //each with 6 unit modules 
  
  // volume for SUPERMODULE ESMA 
  //Space added to provide a gapping for HV between UM's
  //There is a gap of 0.15 cm between two Modules (UMs)
  // in x-direction and 0.1cm along y-direction

  Float_t dboxSM1[3];
  dboxSM1[0] = 3.0*dboxUM1[0] + (2.0*0.075);
  dboxSM1[1] = 2.0*dboxUM1[1] +  0.05;
  dboxSM1[2] = dboxUM1[2];

  //FOR PRESHOWER  
  TVirtualMC::GetMC()->Gsvolu("ESMA","BOX", idtmed[698], dboxSM1, 3);
  
  //FOR VETO
  TVirtualMC::GetMC()->Gsvolu("EMVA","BOX", idtmed[698], dboxSM1, 3);

  //Position the 6 unit modules in EMSA
  Float_t xa1,xa2,xa3,ya1,ya2; 
  xa1 =  dboxSM1[0] - dboxUM1[0];
  xa2 = xa1 - dboxUM1[0] - 0.15 - dboxUM1[0];
  xa3 = xa2 - dboxUM1[0] - 0.15 - dboxUM1[0];
  ya1 = dboxSM1[1]  - dboxUM1[1];
  ya2 = ya1 - dboxUM1[1] - 0.1 - dboxUM1[1];

  //PRESHOWER
  // TVirtualMC::GetMC()->Gspos("EUM1", 1, "ESMA", xa1, ya1, 0., 0, "ONLY"); // BKN
  TVirtualMC::GetMC()->Gspos("EUM1", 2, "ESMA", xa2, ya1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUM1", 3, "ESMA", xa3, ya1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUM1", 4, "ESMA", xa1, ya2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUM1", 5, "ESMA", xa2, ya2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUM1", 6, "ESMA", xa3, ya2, 0., 0, "ONLY");

  //VETO
  TVirtualMC::GetMC()->Gspos("EUV1", 1, "EMVA", xa1, ya1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUV1", 2, "EMVA", xa2, ya1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUV1", 3, "EMVA", xa3, ya1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUV1", 4, "EMVA", xa1, ya2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUV1", 5, "EMVA", xa2, ya2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUV1", 6, "EMVA", xa3, ya2, 0., 0, "ONLY");


  // volume for SUPERMODULE ESMB 
  //Space is added to provide a gapping for HV between UM's
  Float_t dboxSM2[3];
  dboxSM2[0] = 2.0*dboxUM2[0] + 0.075; 
  dboxSM2[1] = 3.0*dboxUM2[1] + (2.0*0.05);
  dboxSM2[2] = dboxUM2[2];
  
  //PRESHOWER
  TVirtualMC::GetMC()->Gsvolu("ESMB","BOX", idtmed[698], dboxSM2, 3);
  //VETO 
  TVirtualMC::GetMC()->Gsvolu("EMVB","BOX", idtmed[698], dboxSM2, 3);

  //Position the 6 unit modules in EMSB
  Float_t xb1,xb2,yb1,yb2,yb3; 
  xb1 = dboxSM2[0] - dboxUM2[0];
  xb2 = xb1 - dboxUM2[0] - 0.15 - dboxUM2[0];
  yb1 = dboxSM2[1] - dboxUM2[1];
  yb2 = yb1 - dboxUM2[1] - 0.1 -  dboxUM2[1];
  yb3 = yb2 - dboxUM2[1] - 0.1 -  dboxUM2[1];


  //PRESHOWER  
  // TVirtualMC::GetMC()->Gspos("EUM2", 1, "ESMB", xb1, yb1, 0., 0, "ONLY");  // BKN
  // TVirtualMC::GetMC()->Gspos("EUM2", 2, "ESMB", xb2, yb1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUM2", 3, "ESMB", xb1, yb2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUM2", 4, "ESMB", xb2, yb2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUM2", 5, "ESMB", xb1, yb3, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUM2", 6, "ESMB", xb2, yb3, 0., 0, "ONLY");
  
  //VETO
  TVirtualMC::GetMC()->Gspos("EUV2", 1, "EMVB", xb1, yb1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUV2", 2, "EMVB", xb2, yb1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUV2", 3, "EMVB", xb1, yb2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUV2", 4, "EMVB", xb2, yb2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUV2", 5, "EMVB", xb1, yb3, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EUV2", 6, "EMVB", xb2, yb3, 0., 0, "ONLY");
  
  // Make smiliar stucture for lead as for PMD plane
  //================================================

  // 2 types of Rectangular shaped supermodules (BOX) 
  //each with 6 unit modules 
  
  // volume for SUPERMODULE ESMPbA 
  //Space added to provide a gapping for HV between UM's

  Float_t dboxSMPb1[3];
  dboxSMPb1[0] = 3.0*dboxUM1[0] + (2.0*0.075);
  dboxSMPb1[1] = 2.0*dboxUM1[1] +  0.05;
  dboxSMPb1[2] = fgkThLead/2.;
  
  TVirtualMC::GetMC()->Gsvolu("ESPA","BOX", idtmed[698], dboxSMPb1, 3);
  

  //Position the 6 unit modules in ESMPbA
  Float_t xpa1,xpa2,xpa3,ypa1,ypa2; 
  xpa1 = -dboxSMPb1[0] + dboxUM1[0];
  xpa2 = xpa1 + dboxUM1[0] + 0.15 + dboxUM1[0];
  xpa3 = xpa2 + dboxUM1[0] + 0.15 + dboxUM1[0];
  ypa1 = dboxSMPb1[1]  - dboxUM1[1];
  ypa2 = ypa1 - dboxUM1[1] - 0.1 - dboxUM1[1];


  TVirtualMC::GetMC()->Gspos("EPB1", 1, "ESPA", xpa1, ypa1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPB1", 2, "ESPA", xpa2, ypa1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPB1", 3, "ESPA", xpa3, ypa1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPB1", 4, "ESPA", xpa1, ypa2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPB1", 5, "ESPA", xpa2, ypa2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPB1", 6, "ESPA", xpa3, ypa2, 0., 0, "ONLY");


  // volume for SUPERMODULE ESMPbB 
  //Space is added to provide a gapping for HV between UM's
  Float_t dboxSMPb2[3];
  dboxSMPb2[0] = 2.0*dboxUM2[0] + 0.075;
  dboxSMPb2[1] = 3.0*dboxUM2[1] + (2.0*0.05);
  dboxSMPb2[2] = fgkThLead/2.;

  TVirtualMC::GetMC()->Gsvolu("ESPB","BOX", idtmed[698], dboxSMPb2, 3);
 
  //Position the 6 unit modules in ESMPbB
  Float_t xpb1,xpb2,ypb1,ypb2,ypb3; 
  xpb1 = -dboxSMPb2[0] + dboxUM2[0];
  xpb2 = xpb1 + dboxUM2[0] + 0.15 + dboxUM2[0];
  ypb1 = dboxSMPb2[1]  - dboxUM2[1];
  ypb2 = ypb1 - dboxUM2[1] - 0.1 -  dboxUM2[1];
  ypb3 = ypb2 - dboxUM2[1] - 0.1 -  dboxUM2[1];


  TVirtualMC::GetMC()->Gspos("EPB2", 1, "ESPB", xpb1, ypb1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPB2", 2, "ESPB", xpb2, ypb1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPB2", 3, "ESPB", xpb1, ypb2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPB2", 4, "ESPB", xpb2, ypb2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPB2", 5, "ESPB", xpb1, ypb3, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPB2", 6, "ESPB", xpb2, ypb3, 0., 0, "ONLY");


  //---------------------------------------------------
  /// ALICE PMD FEE BOARDS IMPLEMENTATION
  // Dt: 25th February 2006 
  // - M.M.  Mondal, S.K. Prasad and P.K. Netrakanti
  //---------------------------------------------------

  //FEE boards 
  // It is FR4 board of length 7cm
  // breadth of 2.4 cm and thickness 0.1cm
  Float_t dboxFEE[3];
  dboxFEE[0] = 0.05;
  dboxFEE[1] = 3.50;
  dboxFEE[2] = 1.20;

  TVirtualMC::GetMC()->Gsvolu("EFEE","BOX", idtmed[607], dboxFEE, 3);

  //Mother volume to accomodate FEE boards
  // It should have the dimension 
  // as the back plane or the 
  //corresponding UM
  //TYPE A
  //------------------------------------------------------//

  Float_t dboxFEEBPlaneA[3];
  dboxFEEBPlaneA[0]   = dboxBPlaneA[0]; //dbox3[0]; 
  dboxFEEBPlaneA[1]   = dboxBPlaneA[1];//dbox3[1];       
  dboxFEEBPlaneA[2]   = 1.2;
  
  //Volume of same dimension as Back PLane of Material AIR
  TVirtualMC::GetMC()->Gsvolu("EFBA","BOX", idtmed[698], dboxFEEBPlaneA, 3);

  //TYPE B
  Float_t dboxFEEBPlaneB[3];
  dboxFEEBPlaneB[0]   = dboxBPlaneB[0]; //dbox4[0]; 
  dboxFEEBPlaneB[1]   = dboxBPlaneB[1];//dbox4[1];       
  dboxFEEBPlaneB[2]   = 1.2;
  
  //Back PLane PCB of MAterial G10
  TVirtualMC::GetMC()->Gsvolu("EFBB","BOX", idtmed[698], dboxFEEBPlaneB, 3);

  //Placing the FEE boards in the Mother volume of AIR

  //Type A 

  Float_t xFee; // X-position of FEE board
  Float_t yFee; // Y-position of FEE board
  Float_t zFee = 0.0; // Z-position of FEE board

  Float_t xA    = 0.25; //distance from the border to 1st FEE board
  Float_t yA    = 4.00; //distance from the border to 1st FEE board
  Float_t xSepa = 1.70; //Distance between two FEE boards
  Float_t ySepa = 8.00; //Distance between two FEE boards

  
  // FEE Boards EFEE placed inside EFBA
  number = 1;
  yFee =  dboxFEEBPlaneA[1] - yA;  
  for (i = 1; i <= 6; ++i) 
    {
      xFee = -dboxFEEBPlaneA[0] + xA; 
      for (j = 1; j <= 12; ++j) 
	{
	  TVirtualMC::GetMC()->Gspos("EFEE", number, "EFBA", xFee,yFee,zFee, 0, "ONLY");
	  xFee += xSepa;
	  number += 1;
	}
      yFee -= ySepa; 
    }
  // FEE Boards EFEE placed inside EFBB
  number = 1;
  yFee =  dboxFEEBPlaneB[1] - yA;  
  for (i = 1; i <= 3; ++i) 
    {
      xFee = -dboxFEEBPlaneB[0] + xA; 
      for (j = 1; j <= 24; ++j) 
	{
	  TVirtualMC::GetMC()->Gspos("EFEE", number, "EFBB", xFee,yFee,zFee, 0, "ONLY");
	  xFee += xSepa;
	  number += 1;
	}
      yFee -= ySepa; 
    }


  //Distance between the two backplanes of two UMs
  //in x-direction is 0.92 and ydirection is 0.95
  Float_t dboxEFSA[3];
  dboxEFSA[0] = 3.0*dboxFEEBPlaneA[0] + 0.92;
  dboxEFSA[1] = 2.0*dboxFEEBPlaneA[1] + (0.95/2.0);
  dboxEFSA[2] = dboxFEEBPlaneA[2];

  //Type A
  TVirtualMC::GetMC()->Gsvolu("EFSA","BOX", idtmed[698],dboxEFSA, 3);

  //Distance between the two backplanes of two UMs
  //in x-direction is 0.92 and ydirection is 0.95
  Float_t dboxEFSB[3];
  dboxEFSB[0] = 2.0*dboxFEEBPlaneB[0] + (0.938/2.0);
  dboxEFSB[1] = 3.0*dboxFEEBPlaneB[1] + 1.05;
  dboxEFSB[2] = dboxFEEBPlaneB[2];

  //Type A
  TVirtualMC::GetMC()->Gsvolu("EFSB","BOX", idtmed[698],dboxEFSB, 3);


  Float_t xfs1,xfs2,xfs3,yfs1,yfs2,yfs3; 
  xfs1 = -dboxEFSA[0] + dboxFEEBPlaneA[0];
  xfs2 = xfs1 + dboxFEEBPlaneA[0] +  0.92 + dboxFEEBPlaneA[0];
  xfs3 = xfs2 + dboxFEEBPlaneA[0] +  0.92 + dboxFEEBPlaneA[0];
  yfs1 = dboxEFSA[1] - dboxFEEBPlaneA[1];
  yfs2 = yfs1 - dboxFEEBPlaneA[1] - 0.95 - dboxFEEBPlaneA[1];



  // TVirtualMC::GetMC()->Gspos("EFBA", 1, "EFSA", xfs1, yfs1, 0., 0, "ONLY");  // BKN
  TVirtualMC::GetMC()->Gspos("EFBA", 2, "EFSA", xfs2, yfs1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFBA", 3, "EFSA", xfs3, yfs1, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFBA", 4, "EFSA", xfs1, yfs2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFBA", 5, "EFSA", xfs2, yfs2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFBA", 6, "EFSA", xfs3, yfs2, 0., 0, "ONLY");


  //Type B positioning

  xfs1 = -dboxEFSB[0] + dboxFEEBPlaneB[0];
  xfs2 = xfs1 + dboxFEEBPlaneB[0] + 0.938 + dboxFEEBPlaneB[0];
  yfs1 = dboxEFSB[1] - dboxFEEBPlaneB[1];
  yfs2 = yfs1 - dboxFEEBPlaneB[1] - 1.05 - dboxFEEBPlaneB[1];
  yfs3 = yfs2 - dboxFEEBPlaneB[1] - 1.05 - dboxFEEBPlaneB[1];



  // TVirtualMC::GetMC()->Gspos("EFBB", 1, "EFSB", xfs1, yfs1, 0., 0, "ONLY"); // BKN
  // TVirtualMC::GetMC()->Gspos("EFBB", 2, "EFSB", xfs2, yfs1, 0., 0, "ONLY"); // BKN
  TVirtualMC::GetMC()->Gspos("EFBB", 3, "EFSB", xfs1, yfs2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFBB", 4, "EFSB", xfs2, yfs2, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFBB", 5, "EFSB", xfs1, yfs3, 0., 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFBB", 6, "EFSB", xfs2, yfs3, 0., 0, "ONLY");


}
 
//_____________________________________________________________________________

void AliPMDv2008::CreatePMD()
{
  //
  // Create final detector from supermodules
  // -- Author : Bedanga and Viyogi June 2003

  Float_t   zp;
  Int_t jhrot12,jhrot13, irotdm;
  Int_t *idtmed = fIdtmed->GetArray()-599;
  
  //VOLUMES Names : begining with "E" for all PMD volumes, 

  // --- DEFINE Iron volumes  for SM A
  //   Fe Support 
  Float_t dboxFea[3];
  dboxFea[0] = fSMLengthax;
  dboxFea[1] = fSMLengthay;
  dboxFea[2] = fgkThSteel/2.;
  
  TVirtualMC::GetMC()->Gsvolu("EFEA","BOX", idtmed[618], dboxFea, 3);

  // --- DEFINE Iron volumes  for SM B
  
  //   Fe Support 
  Float_t dboxFeb[3];
  dboxFeb[0] = fSMLengthbx;
  dboxFeb[1] = fSMLengthby;
  dboxFeb[2] = fgkThSteel/2.;
  
  TVirtualMC::GetMC()->Gsvolu("EFEB","BOX", idtmed[618], dboxFeb, 3);

  AliMatrix(irotdm, 90., 0.,  90.,  90., 180., 0.);
  AliMatrix(jhrot12, 90., 180., 90., 270., 0., 0.);
  AliMatrix(jhrot13, 90., 240., 90., 330., 0., 0.);

  // Gaspmd, the dimension of RECTANGULAR mother volume of PMD,
  // Four mother volumes EPM1,EPM2 for A-type and 
  // volumes EPM3 and EPM4 for B-type. Four to create a hole
  // and avoid overlap with beam pipe

  Float_t gaspmd[3];
  gaspmd[0] = fSMLengthax;
  gaspmd[1] = fSMLengthay;
  gaspmd[2] = fSMthick;

  TVirtualMC::GetMC()->Gsvolu("EPM1", "BOX", idtmed[698], gaspmd, 3);
  TVirtualMC::GetMC()->Gsvolu("EPM2", "BOX", idtmed[698], gaspmd, 3);

  //Complete detector for Type A
  //Position Super modules type A for both CPV and PMD in EPMD  
  Float_t zpsa,zpba,zfea,zcva,zfee; 

  // zpsa = - gaspmd[2] + fSMthick/2.;
  // -2.5 is given to place PMD at -361.5 
  // BM : In future after putting proper electronics
  // -2.5 will be replaced by -gaspmd[2]

  //TYPE A
  //Fee board

  // This part is commented for the time being by BKN

  zfee=-gaspmd[2] + 1.2;

  /*
  TVirtualMC::GetMC()->Gspos("EFSA", 1, "EPM1", 0., 0., zfee, 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFSA", 2, "EPM2", 0., 0., zfee, jhrot12, "ONLY");
  */

  //VETO

  zcva = zfee + 1.2 + fDthick;

  /*
  TVirtualMC::GetMC()->Gspos("EMVA", 1, "EPM1", 0., 0., zcva, 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EMVA", 2, "EPM2", 0., 0., zcva, jhrot12, "ONLY");
  */



  //Iron support
  zfea = zcva + fDthick + fgkThSteel/2.;
  TVirtualMC::GetMC()->Gspos("EFEA", 1, "EPM1", 0., 0., zfea, 0, "ONLY");
  //TVirtualMC::GetMC()->Gspos("EFEA", 2, "EPM2", 0., 0., zfea, 0, "ONLY");
  //Lead
  zpba=zfea+fgkThSteel/2.+ fgkThLead/2.;
  TVirtualMC::GetMC()->Gspos("ESPA", 1, "EPM1", 0., 0., zpba, 0, "ONLY");
  //TVirtualMC::GetMC()->Gspos("ESPA", 2, "EPM2", 0., 0., zpba, 0, "ONLY");
  //Preshower
  zpsa = zpba + fgkThLead/2. + fDthick;
  TVirtualMC::GetMC()->Gspos("ESMA", 1, "EPM1", 0., 0., zpsa, 0, "ONLY");
  //TVirtualMC::GetMC()->Gspos("ESMA", 2, "EPM2", 0., 0., zpsa, jhrot12, "ONLY");
  //FEE boards
  zfee=zpsa + fDthick + 1.2;
  TVirtualMC::GetMC()->Gspos("EFSA", 3, "EPM1", 0., 0., zfee, 0, "ONLY");
  //TVirtualMC::GetMC()->Gspos("EFSA", 4, "EPM2", 0., 0., zfee, jhrot12, "ONLY");

 
  //TYPE - B
  gaspmd[0] = fSMLengthbx; 
  gaspmd[1] = fSMLengthby; 
  gaspmd[2] = fSMthick; 

  TVirtualMC::GetMC()->Gsvolu("EPM3", "BOX", idtmed[698], gaspmd, 3);
  TVirtualMC::GetMC()->Gsvolu("EPM4", "BOX", idtmed[698], gaspmd, 3);

  //Complete detector for Type B
  //Position Super modules type B for both CPV and PMD in EPMD  
  Float_t zpsb,zpbb,zfeb,zcvb; 
  // zpsb = - gaspmd[2] + fSMthick/2.;
  // -2.5 is given to place PMD at -361.5 
  // BM: In future after putting proper electronics
  // -2.5 will be replaced by -gaspmd[2]

 //Fee board

  zfee=-gaspmd[2] + 1.2;

  /*
  TVirtualMC::GetMC()->Gspos("EFSB", 5, "EPM3", 0., 0., zfee, 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFSB", 6, "EPM4", 0., 0., zfee, jhrot12, "ONLY");
  */

  zcvb= zfee + 1.2 + fDthick;

  //VETO
  /*
  TVirtualMC::GetMC()->Gspos("EMVB", 3, "EPM3", 0., 0., zcvb, 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EMVB", 4, "EPM4", 0., 0., zcvb, jhrot12, "ONLY");
  */

  //IRON SUPPORT
  zfeb= zcvb + fDthick +  fgkThSteel/2.;
  //TVirtualMC::GetMC()->Gspos("EFEB", 3, "EPM3", 0., 0., zfeb, 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFEB", 4, "EPM4", 0., 0., zfeb, 0, "ONLY");
  //LEAD
  zpbb= zfeb + fgkThSteel/2.+ fgkThLead/2.;
  //TVirtualMC::GetMC()->Gspos("ESPB", 3, "EPM3", 0., 0., zpbb, 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("ESPB", 4, "EPM4", 0., 0., zpbb, 0, "ONLY");
  //PRESHOWER
  zpsb = zpbb + fgkThLead/2.+ fDthick;
  //TVirtualMC::GetMC()->Gspos("ESMB", 3, "EPM3", 0., 0., zpsb, 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("ESMB", 4, "EPM4", 0., 0., zpsb, jhrot12, "ONLY");
  //FEE boards
  zfee=zpsb + fDthick + 1.2;
  //TVirtualMC::GetMC()->Gspos("EFSB", 7, "EPM3", 0., 0., zfee, 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EFSB", 8, "EPM4", 0., 0., zfee, jhrot12, "ONLY");


  // --- Place the EPMD in ALICE 
  //Z-distance of PMD from Interaction Point
  zp = fgkZdist;

  //X and Y-positions of the PMD planes
  Float_t xfinal,yfinal; 
  Float_t xsmb,ysmb;
  Float_t xsma,ysma;

  xfinal = fSMLengthax + 0.48/2 + fSMLengthbx;
  yfinal = fSMLengthay + 0.20/2 + fSMLengthby;
  

  xsma =  xfinal  - fSMLengthax;
  ysma =  yfinal  - fSMLengthay;
  xsmb =  -xfinal + fSMLengthbx;
  ysmb =  yfinal  - fSMLengthby;


//Position Full PMD in ALICE   
//
//   EPM1      EPM3
//
//   EPM4      EPM2
// (rotated   (rotated EPM1)
//  EPM3)
//
  TVirtualMC::GetMC()->Gspos("EPM1", 1, "ALIC",  xsma,ysma,zp,  0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPM2", 1, "ALIC", -xsma,-ysma,zp, 0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPM3", 1, "ALIC",  xsmb,ysmb,zp,  0, "ONLY");
  TVirtualMC::GetMC()->Gspos("EPM4", 1, "ALIC", -xsmb,-ysmb,zp, 0, "ONLY");
}

 
//_____________________________________________________________________________
void AliPMDv2008::CreateMaterials()
{
  // Create materials for the PMD
  //
  // ORIGIN    : Y. P. VIYOGI 
  //
  //  cout << " Inside create materials " << endl;

  Int_t isxfld = ((AliMagF*)TGeoGlobalMagField::Instance()->GetField())->Integ();
  Float_t sxmgmx = ((AliMagF*)TGeoGlobalMagField::Instance()->GetField())->Max();
  
  // --- Define the various materials for GEANT --- 

  AliMaterial(1, "Pb    $", 207.19, 82., 11.35, .56, 18.5);
  
  // Argon

  Float_t dAr   = 0.001782;   // --- Ar density in g/cm3 --- 
  Float_t x0Ar = 19.55 / dAr;
  AliMaterial(2, "Argon$", 39.95, 18., dAr, x0Ar, 6.5e4);

  // --- CO2 --- 

  Float_t aCO2[2] = { 12.,16. };
  Float_t zCO2[2] = { 6.,8. };
  Float_t wCO2[2] = { 1.,2. };
  Float_t dCO2    = 0.001977;
  AliMixture(3, "CO2  $", aCO2, zCO2, dCO2, -2, wCO2);

  AliMaterial(4, "Al   $", 26.98, 13., 2.7, 8.9, 18.5);

  // ArCO2

  Float_t aArCO2[3] = {39.948,12.0107,15.9994};
  Float_t zArCO2[3] = {18.,6.,8.};
  Float_t wArCO2[3] = {0.7,0.08,0.22};
  Float_t dArCO2    = dAr * 0.7 + dCO2 * 0.3;
  AliMixture(5, "ArCO2$", aArCO2, zArCO2, dArCO2, 3, wArCO2);

  AliMaterial(6, "Fe   $", 55.85, 26., 7.87, 1.76, 18.5);

  // G10
  
  Float_t aG10[4]={1.,12.011,15.9994,28.086};
  Float_t zG10[4]={1.,6.,8.,14.};
  Float_t wG10[4]={0.15201,0.10641,0.49444,0.24714};
  AliMixture(8,"G10",aG10,zG10,1.7,4,wG10);
  
  AliMaterial(15, "Cu   $", 63.54, 29., 8.96, 1.43, 15.);

  // Steel
  Float_t aSteel[4] = { 55.847,51.9961,58.6934,28.0855 };
  Float_t zSteel[4] = { 26.,24.,28.,14. };
  Float_t wSteel[4] = { .715,.18,.1,.005 };
  Float_t dSteel    = 7.88;
  AliMixture(19, "STAINLESS STEEL$", aSteel, zSteel, dSteel, 4, wSteel); 

  //Air

  Float_t aAir[4]={12.0107,14.0067,15.9994,39.948};
  Float_t zAir[4]={6.,7.,8.,18.};
  Float_t wAir[4]={0.000124,0.755267,0.231781,0.012827};
  Float_t dAir1 = 1.20479E-10;
  Float_t dAir = 1.20479E-3;
  AliMixture(98, "Vacum$", aAir,  zAir, dAir1, 4, wAir);
  AliMixture(99, "Air  $", aAir,  zAir, dAir , 4, wAir);

  // Define tracking media 
  AliMedium(1,  "Pb conv.$", 1,  0, 0, isxfld, sxmgmx, 1., .1, .01, .1);
  AliMedium(4,  "Al      $", 4,  0, 0, isxfld, sxmgmx, .1, .1, .01, .1);
  AliMedium(5,  "ArCO2   $", 5,  1, 0, isxfld, sxmgmx, .1, .1, .10, .1);
  AliMedium(6,  "Fe      $", 6,  0, 0, isxfld, sxmgmx, .1, .1, .01, .1);
  AliMedium(8,  "G10plate$", 8,  0, 0, isxfld, sxmgmx, 1., .1, .01, .1);
  AliMedium(15, "Cu      $", 15, 0, 0, isxfld, sxmgmx, .1, .1, .01, .1);
  AliMedium(19, "S  steel$", 19, 0, 0, isxfld, sxmgmx, 1., .1, .01, .1);
  AliMedium(98, "Vacuum  $", 98, 0, 0, isxfld, sxmgmx, 1., .1, .10, 10);
  AliMedium(99, "Air gaps$", 99, 0, 0, isxfld, sxmgmx, 1., .1, .10, .1);
  
  AliDebug(1,"Outside create materials");

}

//_____________________________________________________________________________
void AliPMDv2008::Init()
{
  //
  // Initialises PMD detector after it has been built
  //

  //
  AliDebug(2,"Inside Init");
  AliDebug(2,"PMD simulation package (v1) initialised");
  AliDebug(2,"parameters of pmd");
  AliDebug(2,Form("%10.2f %10.2f %10.2f %10.2f\n",
		  fgkCellRadius,fgkCellWall,fgkCellDepth,fgkZdist));
  Int_t *idtmed = fIdtmed->GetArray()-599;
  fMedSens=idtmed[605-1];
  // --- Generate explicitly delta rays in the iron, aluminium and lead --- 
  // Gstpar removed from here and all energy cut-offs moved to galice.cuts
  // Visualization of volumes
  gGeoManager->SetVolumeAttribute("ECAR", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ECCU", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ECCU", "COLO", 4);
  gGeoManager->SetVolumeAttribute("EST1", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EST2", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EHC1", "SEEN", 0);  
  gGeoManager->SetVolumeAttribute("EHC2", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EPCA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EBKA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ECGA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ECVA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EDGA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EDVA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ESSA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ESVA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EUM1", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EUV1", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EBPA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EPCB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EBKB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ECGB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ECVB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EDGB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EDVB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ESSB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ESVB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EUM2", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EUV2", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EBPB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EPB1", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EPB2", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ESMA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EMVA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ESMB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EMVB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ESPA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("ESPB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EFEE", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EFEE", "COLO", 4);
  gGeoManager->SetVolumeAttribute("EFBA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EFBB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EFSA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EFSB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EFEA", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EFEB", "SEEN", 0);
  gGeoManager->SetVolumeAttribute("EPM1", "SEEN", 1);
  gGeoManager->SetVolumeAttribute("EPM2", "SEEN", 1);
  gGeoManager->SetVolumeAttribute("EPM3", "SEEN", 1);
  gGeoManager->SetVolumeAttribute("EPM4", "SEEN", 1);
}

//_____________________________________________________________________________
void AliPMDv2008::StepManager()
{
  //
  // Called at each step in the PMD
  //

  Int_t   copy;
  Float_t hits[5], destep;
  Float_t center[3] = {0,0,0};
  Int_t   vol[6];
  
  if(TVirtualMC::GetMC()->CurrentMedium() == fMedSens && (destep = TVirtualMC::GetMC()->Edep())) {
  
    TVirtualMC::GetMC()->CurrentVolID(copy);
    vol[0] = copy;

    TVirtualMC::GetMC()->CurrentVolOffID(1,copy);
    vol[1] = copy;

    TVirtualMC::GetMC()->CurrentVolOffID(2,copy);
    vol[2] = copy;

    TVirtualMC::GetMC()->CurrentVolOffID(3,copy);
    vol[3] = copy;

    TVirtualMC::GetMC()->CurrentVolOffID(4,copy);
    vol[4] = copy;

    TVirtualMC::GetMC()->CurrentVolOffID(5,copy);
    vol[5] = copy;


    TVirtualMC::GetMC()->Gdtom(center,hits,1);
    hits[3] = destep*1e9; //Number in eV

    // this is for pile-up events
    hits[4] = TVirtualMC::GetMC()->TrackTime();

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

  }
}

  
//------------------------------------------------------------------------
// Get parameters

void AliPMDv2008::GetParameters()
{
  // This gives all the parameters of the detector
  // such as Length of Supermodules, type A, type B,
  // thickness of the Supermodule
  //
  
  fSMLengthax = 32.7434;
  //The total length in X is due to the following components
  // Factor 3 is because of 3 module length in X for this type
  // fgkNcolUM1*fgkCellRadius (48 x 0.25): Total span of each module in X
  // fgkCellRadius/2. : There is offset of 1/2 cell
  // 0.05+0.05 : Insulation gaps etc
  // fgkSSBoundary (0.3) : Boundary frame
  // double XA = 3.0*((fgkCellRadius/fgkSqroot3by2*fgkNcolUM1)-(fgkCellRadius*fgkSqroot3*(fgkNcolUM1-1)/6.)+(2.0*fgkGap)+(2.0*fgkGap)+fgkSSBoundary) + (2.0*0.075);

  fSMLengthbx = 42.5886;
  //The total length in X is due to the following components
  // Factor 2 is because of 2 module length in X for this type
  // fgkNcolUM2*fgkCellRadius (96 x 0.25): Total span of each module in X
  // fgkCellRadius/2. : There is offset of 1/2 cell
  // 0.05+0.05 : Insulation gaps etc
  // fgkSSBoundary (0.3) : Boundary frame
  //double XB = 2.0*((fgkCellRadius/fgkSqroot3by2*fgkNcolUM2)-(fgkCellRadius*fgkSqroot3*(fgkNcolUM2-1)/6.)+(2.0*fgkGap)+(2.0*fgkGap)+fgkSSBoundary) + 0.075; 



  fSMLengthay = 49.1;
  //The total length in Y is due to the following components
  // Factor 2 is because of 2 module length in Y for this type
  // fgkCellRadius/fgkSqroot3by2)*fgkNrowUM1 (0.25/sqrt3/2 * 96): Total span of each module in Y
  //  of strips
  // 0.05+0.05 : Insulation gaps etc
  // fgkSSBoundary (0.3) : Boundary frame
  // double  YA = 2.0*(fgkNrowUM1*fgkCellRadius+fgkCellRadius/2.+(2.0*fgkGap)+(2.0*fgkGap)+fgkSSBoundary) +  0.05;

  fSMLengthby =  37.675;
  //The total length in Y is due to the following components
  // Factor 3 is because of 3 module length in Y for this type
  // fgkCellRadius/fgkSqroot3by2)*fgkNrowUM2 (0.25/sqrt3/2 * 48): Total span of each module in Y
  //  of strips
  // 0.05+0.05 : Insulation gaps etc
  // fgkSSBoundary (0.3) : Boundary frame
    //double YB = 3.0*((fgkNrowUM2*fgkCellRadius + fgkCellRadius/2.)+(2.0*fgkGap)+(2.0*fgkGap)+fgkSSBoundary) + (2.0*0.05);


  //Thickness of a pre/veto plane 
  fDthick     = fgkThSS/2. +0.15;

  //Thickness of the PMD ; 2.4 added for FEE boards 
    fSMthick    = 2.0*(fgkThSS/2. +0.15)
                +fgkThSteel/2.+fgkThLead/2.0 + 2.4;


  
}
// ---------------------------------------------------------------
void AliPMDv2008::AddAlignableVolumes() const
{
  //
  // Create entries for alignable volumes associating the symbolic volume
  // name with the corresponding volume path. Needs to be syncronized with
  // eventual changes in the geometry.
  // 
  SetSectorAlignable();

}
// ----------------------------------------------------------------
void AliPMDv2008::SetSectorAlignable() const
{
  // 

  TString vpsector = "ALIC_1/EPM";
  TString vpappend = "_1";

  TString snsector="PMD/Sector";

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