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

//-------------------------------------------------------------------------
// The Front Absorber FA
// As built
// Author: A.Morsch
// andreas.morsch@cern.ch
//-------------------------------------------------------------------------

#include <TVirtualMC.h>
#include <TArrayI.h>
#include <TGeoVolume.h>
#include <TGeoTube.h>
#include <TGeoManager.h>
#include <TGeoMatrix.h>
#include <TGeoCompositeShape.h>
#include <TGeoBBox.h>
#include <TGeoPgon.h>
#include <TGeoTorus.h>
#include <TGeoCone.h>
#include <TGeoArb8.h>

#include "AliABSOv3.h"
#include "AliConst.h"
#include "AliLog.h"

ClassImp(AliABSOv3)
 
//_____________________________________________________________________________
AliABSOv3::AliABSOv3()
{
  //
  // Default constructor for muon shield
  //
}
 
//_____________________________________________________________________________
AliABSOv3::AliABSOv3(const char *name, const char *title)
  : AliABSO(name,title)
{
  // Standard constructor for muon shield
  //
}
 
//_____________________________________________________________________________
void AliABSOv3::CreateGeometry()
{
  // 
  // Build muon shield geometry
  //
  //

    Float_t z, z0, dz;
//
// The top volume
//
    TGeoVolume* top = gGeoManager->GetVolume("ALIC");
    
//
// Media
//
    TGeoMedium* kMedNiW     = gGeoManager->GetMedium("ABSO_Ni/W0");
    TGeoMedium* kMedNiWsh   = gGeoManager->GetMedium("ABSO_Ni/W3");
//
    TGeoMedium* kMedSteel   = gGeoManager->GetMedium("ABSO_ST_C0");
    TGeoMedium* kMedSteelSh = gGeoManager->GetMedium("ABSO_ST_C3");
//
    TGeoMedium* kMedAir     = gGeoManager->GetMedium("ABSO_AIR_C0");
//
    TGeoMedium* kMedPb      = gGeoManager->GetMedium("ABSO_PB_C0");
    TGeoMedium* kMedPbSh    = gGeoManager->GetMedium("ABSO_PB_C2");
//
    TGeoMedium* kMedConcSh  = gGeoManager->GetMedium("ABSO_CC_C2");
//
    TGeoMedium* kMedCH2Sh   = gGeoManager->GetMedium("ABSO_CH2_C2");    
//
    TGeoMedium* kMedC       = gGeoManager->GetMedium("ABSO_C_C0");    
    TGeoMedium* kMedCsh     = gGeoManager->GetMedium("ABSO_C_C2");    
//
    TGeoMedium* kMedAlu     = gGeoManager->GetMedium("ABSO_ALU_C0");    
//
    TGeoMedium* kMedMg      = gGeoManager->GetMedium("ABSO_MG_C0");    
//
    const Float_t kDegRad = TMath::Pi() / 180.;
    
//
    TGeoRotation* rotxz  = new TGeoRotation("rotxz",   90.,   0., 90.,  90., 180., 0.);
///////////////////////////////////
//                               //
//        Front Absorber         //
//        Drawing ALIP2A__0106   //
//                               //
//                               //
///////////////////////////////////
// 
// Pos  1 Steel Envelope
// Pos  2 End Plate
// Pos  3 Flange (wrong arrow in the drawing)
// Pos  4 W Plate A
// Pos  5 W Plate B
// Pos  6 Tungsten Tube Part 1
// Pos  7 Tungsten Tube Part 2
// Pos  8 Tungsten Tube Part 3
// Pos  9 Tungsten Tube Part 4
// Pos 10 Tungsten Tail
// Pos 11 Graphite Cone
// Pos 12 Pb       Cone
// Pos 13 Concrete Cone
// Pos 14 Polyethylene Parts
// Pos 15 Steel Plate 25 cm
// Pos 16 Steel Plate 31 cm
// Pos 17 Magnesium Ring
// Pos 18 Composite Ring
//
//
// Mimimum angle of the tracking region
      const Float_t angle02 = TMath::Tan( 2.   * kDegRad);   
// Maximum angle of the tracking region
      const Float_t angle10 = TMath::Tan(10.   * kDegRad);
// Opening angle of W rear plug
      const Float_t angle03 = TMath::Tan( 3.   * kDegRad);
//   
      const Float_t angle05 = TMath::Tan( 5.   * kDegRad);
// Opening angle of the FA snout
      const Float_t angle24 = TMath::Tan(24.   * kDegRad);
// Opneing angle of the inner cone
      const Float_t angle71 = TMath::Tan(0.697 * kDegRad);
// Starting position in z      
      const Float_t zFa           =   90.0;

// Pos 1
///////////////////////////////////
//    FA Steel Envelope          //
//    Drawing ALIP2A__0036       //
///////////////////////////////////
      // Thickness of the envelope
      Float_t dSteelEnvelope      =    1.5;
      // Front cover
      //
      // Length
      Float_t dzSteelEnvelopeFC   =    4.00;
      // Inner Radius
      Float_t rInSteelEnvelopeFC1 =  35.90/2.;
      Float_t rInSteelEnvelopeFC2 = rInSteelEnvelopeFC1 + dzSteelEnvelopeFC * angle10;
      // Outer Radius
      Float_t rOuSteelEnvelopeFC1 =  88.97/2.;
      Float_t rOuSteelEnvelopeFC2 = rOuSteelEnvelopeFC1 + dzSteelEnvelopeFC * angle05;
      //
      // 5 deg cone
      Float_t dzSteelEnvelopeC5   = 168.9;
      Float_t rInSteelEnvelopeC5  = rOuSteelEnvelopeFC2 - dSteelEnvelope/TMath::Cos(5 * kDegRad);
      Float_t rOuSteelEnvelopeC5  = rOuSteelEnvelopeFC2;
      // 10 deg cone
      Float_t dzSteelEnvelopeC10   = 227.1 - 4.;
      Float_t rInSteelEnvelopeC10  = 116.22/2.;
      Float_t rOuSteelEnvelopeC10  = rInSteelEnvelopeC10 + dSteelEnvelope/TMath::Cos(10 * kDegRad);
      // Rear ring
      Float_t dzSteelEnvelopeR     =   4.;
      Float_t rInSteelEnvelopeR2   = 196.3/2.;
      Float_t rOuSteelEnvelopeR2   = 212.0/2.;
      Float_t rInSteelEnvelopeR1   = rInSteelEnvelopeR2 - dzSteelEnvelopeR * angle10;
      Float_t rOuSteelEnvelopeR1   = rInSteelEnvelopeR1 + dSteelEnvelope/TMath::Cos(10 * kDegRad);
      // Front insert 
      Float_t dzSteelEnvelopeFI    =  1.;
      Float_t rInSteelEnvelopeFI   = 42.0/2.;
      Float_t rOuSteelEnvelopeFI   = 85.0/2.+ 0.06;      
      
      TGeoPcon* shFaSteelEnvelopeC = new TGeoPcon(0., 360., 7);
      z = 0.;
      // Front cover 
      shFaSteelEnvelopeC->DefineSection( 0, z, rInSteelEnvelopeFC1, rOuSteelEnvelopeFC1);
      z += dzSteelEnvelopeFC;
      shFaSteelEnvelopeC->DefineSection( 1, z, rInSteelEnvelopeFC2, rOuSteelEnvelopeFC2); 
      // 5 deg cone
      shFaSteelEnvelopeC->DefineSection( 2, z, rInSteelEnvelopeC5, rOuSteelEnvelopeC5);
      z += dzSteelEnvelopeC5;
      shFaSteelEnvelopeC->DefineSection( 3, z, rInSteelEnvelopeC10, rOuSteelEnvelopeC10);
      // 10 deg cone
      z += dzSteelEnvelopeC10;
      shFaSteelEnvelopeC->DefineSection( 4, z, rInSteelEnvelopeR1, rOuSteelEnvelopeR1);
      // Rear Ring
      shFaSteelEnvelopeC->DefineSection( 5, z, rInSteelEnvelopeR1, rOuSteelEnvelopeR2);
      z += dzSteelEnvelopeR;
      shFaSteelEnvelopeC->DefineSection( 6, z, rInSteelEnvelopeR2, rOuSteelEnvelopeR2);
      
      // Insert 
      shFaSteelEnvelopeC->SetName("steelEnvC");
      TGeoTube* shFaSteelEnvelopeT = new TGeoTube(rInSteelEnvelopeFI, rOuSteelEnvelopeFI, dzSteelEnvelopeFI);
      shFaSteelEnvelopeT->SetName("steelEnvT");
      TGeoCompositeShape*  shFaSteelEnvelope = new TGeoCompositeShape("shFaSteelEnvelope", "steelEnvC-steelEnvT");

      TGeoVolume* voFaSteelEnvelope = new TGeoVolume("AFaSteelEnvelope", shFaSteelEnvelope, kMedSteel);
 
// Pos 2
///////////////////////////////////
//    FA End Plate               //
//    Drawing ALIP2A__0037       //
///////////////////////////////////
//
//
//    
//    Outer dimensions dx, dy, dz
      Float_t dxEndPlate   = 220.0;
      Float_t dyEndPlate   = 220.0;      
      Float_t dzEndPlate   =   6.0;      
//    Inner radius
      Float_t rInEndPlate  =  52.5/2.;
//    Insert 
      Float_t rInEndPlateI = 175.3/2.;
      Float_t rOuEndPlateI = 212.2/2.;
      Float_t dzEndPlateI  =   2.0;
      
      
      TGeoBBox* endPlate1 = new TGeoBBox(dxEndPlate/2., dyEndPlate/2., dzEndPlate/2.);
      endPlate1->SetName("endPlate1");

      TGeoTube* endPlate2 = new TGeoTube(0., rInEndPlate , (dzEndPlate + 0.1) / 2.) ;
      endPlate2->SetName("endPlate2");
      TGeoTube* endPlate3 = new TGeoTube(rInEndPlateI, rOuEndPlateI, (dzEndPlateI + 0.1)/2.);
      endPlate3->SetName("endPlate3");

      TGeoTranslation* tPlate = new TGeoTranslation("tPlate", 0., 0., -dzEndPlateI - 0.05);
      tPlate->RegisterYourself();

      TGeoCompositeShape*  shFaEndPlate = new TGeoCompositeShape("shFaEndPlate", "endPlate1-(endPlate2+endPlate3:tPlate)");
      TGeoVolume* voFaEndPlate = new TGeoVolume("AFaEndPlate", shFaEndPlate, kMedSteel);

// Pos 3
///////////////////////////////////
//    FA Flange                  //
//    Drawing ALIP2A__0038       //
///////////////////////////////////
      // Width of the Flange
      Float_t dzFaFlange   =  2.;
      // Outer radius
      Float_t rOuFaFlange  = 41.0/2.;
      // 1st section
      Float_t dzFaFlange1  =  0.8;
      Float_t rInFaFlange1 = 33.4/2.;
      // 2nd section
      Float_t dzFaFlange2  =  1.2;
      Float_t rInFaFlange2 = 36.4/2.;

      TGeoPcon* shFaFlange = new TGeoPcon(0., 360., 4);
      z = 0;
      shFaFlange->DefineSection(0, z, rInFaFlange1, rOuFaFlange);
      z += dzFaFlange1;
      shFaFlange->DefineSection(1, z, rInFaFlange1, rOuFaFlange);
      shFaFlange->DefineSection(2, z, rInFaFlange2, rOuFaFlange);
      z += dzFaFlange2;
      shFaFlange->DefineSection(3, z, rInFaFlange2, rOuFaFlange);

      TGeoVolume* voFaFlange = new TGeoVolume("AFaFlange", shFaFlange, kMedSteel);

// Pos 4+5
///////////////////////////////////
//    FA W Plate A+B             //
//    Drawing ALIP2A__0043       //
///////////////////////////////////
      // Front Flange
      Float_t dzFaWPlateF   =  2.00;
      Float_t rInFaQPlateF  = 20.50;
      Float_t rOuFaQPlateF  = 40.05;
      // 1st Central Part 24 deg
      Float_t dzFaWPlateC1  =  7.95;
      Float_t rInFaQPlateC1 = 16.35;
      Float_t rOuFaQPlateC1 =  rOuFaQPlateF + dzFaWPlateF * angle24;
      // 2nd Central Part 5 deg
      Float_t dzFaWPlateC2  =  1.05;
      Float_t rInFaQPlateC2 =  rInFaQPlateC1 + dzFaWPlateC1  * angle10;
      Float_t rOuFaQPlateC2 =  rOuFaQPlateC1 + dzFaWPlateC1  * angle24;
      Float_t rInFaQPlateC3 =  17.94;
      Float_t rOuFaQPlateC3 =  44.49;
      // Rear Flange
      Float_t dzFaWPlateR   =  1.00;
      Float_t rInFaQPlateR  = 21.00;
      Float_t rOuFaQPlateR  = 42.55;
      // Lenth of Plate - Rear Flange
      Float_t dzFaWPlate    = dzFaWPlateF + dzFaWPlateC1 + dzFaWPlateC2;
      
      TGeoPcon* shFaWPlateA = new TGeoPcon(0., 360., 7);
      z = 0.;
      // Front Flange
      shFaWPlateA->DefineSection(0, z, rInFaQPlateF, rOuFaQPlateF);
      z += dzFaWPlateF;
      shFaWPlateA->DefineSection(1, z, rInFaQPlateF, rOuFaQPlateC1);
      // 24 deg cone
      shFaWPlateA->DefineSection(2, z, rInFaQPlateC1, rOuFaQPlateC1);
      z += dzFaWPlateC1;
      shFaWPlateA->DefineSection(3, z, rInFaQPlateC2, rOuFaQPlateC2);
      // 5 deg cone
      z += dzFaWPlateC2;
      shFaWPlateA->DefineSection(4, z, rInFaQPlateC3, rOuFaQPlateC3);
      // Rear Flange
      shFaWPlateA->DefineSection(5, z, rInFaQPlateR, rOuFaQPlateR);
      z += dzFaWPlateR;
      shFaWPlateA->DefineSection(6, z, rInFaQPlateR, rOuFaQPlateR);

      TGeoVolume* voFaWPlateA = new TGeoVolume("AFaWPlateA", shFaWPlateA, kMedNiW);
      // Inner region with higher transport cuts
      TGeoPcon* shFaWPlateAI = new TGeoPcon(0., 360., 5);
      z = 3.;
      shFaWPlateAI->DefineSection(0, z, rInFaQPlateF + z * angle10, rOuFaQPlateC1 + (z - dzFaWPlateF) * angle24);
      for (Int_t i = 1; i < 5; i++) {
	  Float_t rmin = shFaWPlateA->GetRmin(i+2);
	  Float_t rmax = shFaWPlateA->GetRmax(i+2) - 3.;	
	  Float_t zpos = shFaWPlateA->GetZ(i+2);
	  shFaWPlateAI->DefineSection(i, zpos, rmin, rmax);
      }
      TGeoVolume* voFaWPlateAI = new TGeoVolume("AFaWPlateAI", shFaWPlateAI, kMedNiWsh);
      voFaWPlateA->AddNode(voFaWPlateAI, 1, gGeoIdentity);
      
//
// Inner Tungsten Shield
// Part 1  99.8 cm
// Part 2 143.5 cm
// Part 3  25.0 cm
// Part 4  31.0 cm
// ====================
//        299.3 cm - 0.6 overlap between Part 1 and Part 2
//        298.7 cm
// Starting position 499.0 - 298.7 = 200.3
// Within C cone:    200.3 -  92.0 = 108.3 = end of straight section of the Graphite Cone
//
      
// Pos 6
///////////////////////////////////
//    FA Tungsten Tube Part 1    //
//    Drawing ALIP2A__0045       //
///////////////////////////////////
      //
      // Inner radius
      Float_t rInFaWTube1C1 =  9.1/2.;
      // Central part
      Float_t dzFaWTube1C   = 98.8;
      Float_t rOuFaWTube1C1 = 13.8/2.;
      Float_t rOuFaWTube1C2 = 20.7/2.;
      // Rear Flange 
      Float_t dzFaWTube1R   =  1.0;
      Float_t rOuFaWTube1R  = 15.0/2.;
      // Total length 
      Float_t dzFaWTube1    = dzFaWTube1C + dzFaWTube1R;
      
      TGeoPcon* shFaWTube1 = new TGeoPcon(0., 360., 4);
      z = 0.;
      // Central Part
      shFaWTube1->DefineSection(0, z, rInFaWTube1C1, rOuFaWTube1C1);
      z += dzFaWTube1C;
      shFaWTube1->DefineSection(1, z, rInFaWTube1C1, rOuFaWTube1C2);
      // Rear Flange
      shFaWTube1->DefineSection(2, z, rInFaWTube1C1, rOuFaWTube1R);
      z += dzFaWTube1R;
      shFaWTube1->DefineSection(3, z, rInFaWTube1C1, rOuFaWTube1R);
      
      TGeoVolume* voFaWTube1 = new TGeoVolume("AFaWTube1", shFaWTube1, kMedNiWsh);
      
// Pos 7
///////////////////////////////////
//    FA Tungsten Tube Part 2    //
//    Drawing ALIP2A__0046       //
///////////////////////////////////
      //

      // Central part
      Float_t dzFaWTube2C   = 142.9;
      Float_t rInFaWTube2C1 =   9.10/2.;
      Float_t rInFaWTube2C2 =  12.58/2.;
      Float_t rOuFaWTube2C1 =  20.70/2.;
      Float_t rOuFaWTube2C2 =  30.72/2.- 0.05;
      // Front Flange 
      Float_t dzFaWTube2F   =  0.6;
      Float_t rInFaWTube2F  = 15.4/2.;
      // Total length 
      Float_t dzFaWTube2    = dzFaWTube2C + dzFaWTube2F;

      TGeoPcon* shFaWTube2 = new TGeoPcon(0., 360., 4);
      z = 0.;
      // Front Flange
      shFaWTube2->DefineSection(0, z, rInFaWTube2F, rOuFaWTube2C1);
      z += dzFaWTube2F;
      shFaWTube2->DefineSection(1, z, rInFaWTube2F, rOuFaWTube2C1);
      // Central part
      shFaWTube2->DefineSection(2, z, rInFaWTube2C1, rOuFaWTube2C1);
      z += dzFaWTube2C;
      shFaWTube2->DefineSection(3, z, rInFaWTube2C2, rOuFaWTube2C2);

      TGeoVolume* voFaWTube2 = new TGeoVolume("AFaWTube2", shFaWTube2, kMedNiWsh);

// Pos 8
///////////////////////////////////
//    FA Tungsten Tube Part 3    //
//    Drawing ALIP2A__0047       //
///////////////////////////////////
      Float_t dzFaWTube3    =  25.0;
      Float_t rInFaWTube3C1 =  12.59/2.;
      Float_t rInFaWTube3C2 =  13.23/2.;
      Float_t rOuFaWTube3C1 =  30.60/2.;
      Float_t rOuFaWTube3C2 =  32.35/2.;
      TGeoVolume* voFaWTube3 = new TGeoVolume("AFaWTube3", 
					      new TGeoCone(dzFaWTube3/2., rInFaWTube3C1, rOuFaWTube3C1, rInFaWTube3C2, rOuFaWTube3C2), 
					      kMedNiWsh);

// Pos 9
///////////////////////////////////
//    FA Tungsten Tube Part 4    //
//    Drawing ALIP2A__0048       //
///////////////////////////////////
      Float_t dzFaWTube4    =  31.0;
      Float_t rInFaWTube4C1 =  13.23/2.;
      Float_t rInFaWTube4C2 =  13.98/2.;
      Float_t rOuFaWTube4C1 =  48.80/2.;
      Float_t rOuFaWTube4C2 =  52.05/2.;
      TGeoVolume* voFaWTube4 = new TGeoVolume("AFaWTube4", 
					      new TGeoCone(dzFaWTube4/2., rInFaWTube4C1, rOuFaWTube4C1, rInFaWTube4C2, rOuFaWTube4C2), 
					      kMedNiWsh);

// Pos 10
//
// This section has been moved to AliSHILv3
      
//
// Pos 11
///////////////////////////////////
//    FA Graphite Cone           //
//    Drawing ALIP2_0002         //
///////////////////////////////////
//
      // Total length 
      Float_t dzFaGraphiteCone   = 225.0;
      // Straight section = start of the 2deg inner cone
      Float_t dzFaGraphiteConeS  =  108.3;
      // Inner radius at the front
      Float_t rInFaGraphiteCone1 =   4.5;
      // Outer radius at the front
      Float_t rOuFaGraphiteCone1 =  (zFa + dzFaFlange) * angle10; 
      // Inner radius at start of inner opening cone
      Float_t rInFaGraphiteCone2 =   7.0;
      // Outer radius at start of inner opening cone
      Float_t rOuFaGraphiteCone2 =  (zFa + dzFaFlange + dzFaGraphiteConeS) * angle10; 
      // Inner radius the rear 
      Float_t rInFaGraphiteCone3 =  11.0;
      // Ouer radius at the rear
      Float_t rOuFaGraphiteCone3 =  (zFa + dzFaFlange + dzFaGraphiteCone) * angle10; 

      TGeoPcon* shFaGraphiteCone = new TGeoPcon(0., 360., 4);
      
      z = 0;
      // Straight section
      shFaGraphiteCone->DefineSection(0, z, rInFaGraphiteCone1, rOuFaGraphiteCone1);
      z += dzFaGraphiteConeS;
      shFaGraphiteCone->DefineSection(1, z, rInFaGraphiteCone1, rOuFaGraphiteCone2);
      // 2 deg opening cone
      shFaGraphiteCone->DefineSection(2, z, rInFaGraphiteCone2, rOuFaGraphiteCone2);
      z = dzFaGraphiteCone;
      shFaGraphiteCone->DefineSection(3, z, rInFaGraphiteCone3, rOuFaGraphiteCone3);

      TGeoVolume* voFaGraphiteCone = new TGeoVolume("AFaGraphiteCone", shFaGraphiteCone, kMedCsh);
      //
      // Outer region with lower transport cuts
      dz = 50.;
      TGeoCone* shFaGraphiteConeO = new TGeoCone(dz/2.,
						 rInFaGraphiteCone1, rOuFaGraphiteCone1, 
						 rInFaGraphiteCone1, rOuFaGraphiteCone1 + dz * angle10);
      
      TGeoVolume* voFaGraphiteConeO = new TGeoVolume("AFaGraphiteConeO", shFaGraphiteConeO, kMedC);
      voFaGraphiteCone->AddNode(voFaGraphiteConeO, 1, new TGeoTranslation(0., 0., dz/2.));

// Pos 12
///////////////////////////////////
//    FA Lead Cone               //
//    Drawing ALIP2A__0077       //
///////////////////////////////////
      // 5 deg cone
      Float_t dzFaPbCone5   = 168.9;
      Float_t rInFaPbCone5  =  37.35/2.;
      Float_t rOuFaPbCone5  =  85.66/2.;      
      // 10 deg cone
      Float_t dzFaPbCone10  =  25.9;
      Float_t rInFaPbCone10 =  rInFaPbCone5 + dzFaPbCone5 * angle10;
      Float_t rOuFaPbCone10 =  115.2/2.;
      // end
      Float_t rInFaPbConeE  =  106.05/2.;
      Float_t rOuFaPbConeE  =  124.35/2.;
      // Total length
      Float_t dzFaPbCone    =  dzFaPbCone5 + dzFaPbCone10;

      TGeoPcon* shFaPbCone = new TGeoPcon(0., 360., 3);
      z = 0.;
      // 5 deg cone
      shFaPbCone->DefineSection(0, z, rInFaPbCone5,  rOuFaPbCone5);
      z += dzFaPbCone5;
      // 10 deg cone
      shFaPbCone->DefineSection(1, z, rInFaPbCone10, rOuFaPbCone10);
      z += dzFaPbCone10;
      shFaPbCone->DefineSection(2, z, rInFaPbConeE,  rOuFaPbConeE);

      TGeoVolume* voFaPbCone = new TGeoVolume("AFaPbCone", shFaPbCone, kMedPb);
      //
      // Inner region with higher transport cuts
      TGeoPcon*   shFaPbConeI = MakeShapeFromTemplate(shFaPbCone, 0., -3.);
      TGeoVolume* voFaPbConeI  = new TGeoVolume("AFaPbConeI", shFaPbConeI, kMedPbSh);
      voFaPbCone->AddNode(voFaPbConeI, 1, gGeoIdentity);
      
      
// Pos 13
///////////////////////////////////
//    FA Concrete Cone           //
//    Drawing ALIP2A__00xx       //
///////////////////////////////////
      Float_t dzFaConcreteCone    = 126.;
      Float_t rOuFaConcreteCone1  = rOuFaGraphiteCone3;
      Float_t rInFaConcreteCone1  =  11.;
      Float_t rOuFaConcreteCone2  = rOuFaConcreteCone1 + dzFaConcreteCone * angle10;
      Float_t rInFaConcreteCone2  = rInFaConcreteCone1 + dzFaConcreteCone * angle02;
      
      TGeoVolume* voFaConcreteCone = new TGeoVolume("AFaConcreteCone", 
						    new TGeoCone(dzFaConcreteCone/2., 
								 rInFaConcreteCone1, rOuFaConcreteCone1, 
								 rInFaConcreteCone2, rOuFaConcreteCone2), 
						    kMedConcSh);  

// Pos 14
///////////////////////////////////
//    FA Polyethylene Parts      //
//    Drawing ALIP2A__0034       //
///////////////////////////////////
      Float_t dzFaCH2Cone    = 201.;
      Float_t rInFaCH2Cone1  = 106.0/2.;
      Float_t rInFaCH2Cone2  = 176.9/2.;      
      Float_t dFaCH2Cone     = 7.5 / TMath::Cos(10. * kDegRad);
      
      TGeoVolume* voFaCH2Cone = new TGeoVolume("AFaCH2Cone", 
					       new TGeoCone(dzFaCH2Cone/2., 
							    rInFaCH2Cone1, rInFaCH2Cone1 + dFaCH2Cone, 	    
							    rInFaCH2Cone2, rInFaCH2Cone2 + dFaCH2Cone), 	    
					       kMedCH2Sh);
      
      
// Pos 15
///////////////////////////////////
//    FA Steel Plate 250 mm      //
//    Drawing ALIP2A__00xx       //
///////////////////////////////////     
      Float_t dzFaSteelCone25   = 25.;
      Float_t eps = 0.001;
      Float_t rInFaSteelCone25A = rInFaConcreteCone2;
      Float_t rOuFaSteelCone25A = rOuFaConcreteCone2;      
      Float_t rInFaSteelCone25B = rInFaSteelCone25A + dzFaSteelCone25 * angle02;
      Float_t rOuFaSteelCone25B = rOuFaSteelCone25A + dzFaSteelCone25 * angle10;
      
      TGeoVolume* voFaSteelCone25 = new TGeoVolume("AFaSteelCone25", 
						   new TGeoCone(dzFaSteelCone25/2., 
								rInFaSteelCone25A + eps, rOuFaSteelCone25A - eps, 	    
								rInFaSteelCone25B + eps, rOuFaSteelCone25B - eps),
						   kMedSteelSh);

// Pos 16
///////////////////////////////////
//    FA Steel Plate 310 mm      //
//    Drawing ALIP2A__00xx       //
///////////////////////////////////  
      Float_t dzFaSteelCone31   = 31.;
      Float_t rInFaSteelCone31A = rOuFaWTube4C1;;
      Float_t rOuFaSteelCone31A = rOuFaSteelCone25B;      
      Float_t rInFaSteelCone31B = rOuFaWTube4C2;
      Float_t rOuFaSteelCone31B = rOuFaSteelCone31A + dzFaSteelCone31 * angle10;
      
      TGeoVolume* voFaSteelCone31 = new TGeoVolume("AFaSteelCone31", 
						   new TGeoCone(dzFaSteelCone31/2., 
								rInFaSteelCone31A + eps, rOuFaSteelCone31A - eps, 	    
								rInFaSteelCone31B + eps, rOuFaSteelCone31B - eps),
						   kMedSteelSh);
      // Outer Region with higher transport cuts
      dz = 5.;
      TGeoVolume* voFaSteelCone31I = new TGeoVolume("AFaSteelCone31I", 
						    new TGeoCone(dz/2., 
								 rInFaSteelCone31B - dz * angle03 + eps, 
								 rOuFaSteelCone31B - dz * angle10 - eps, 
								 rInFaSteelCone31B + eps, rOuFaSteelCone31B - eps),
						    kMedSteel);
      
      voFaSteelCone31->AddNode(voFaSteelCone31I, 1,  new TGeoTranslation(0., 0., dzFaSteelCone31/2. - dz/2.));
      

///////////////////////////////////
//    FA Composite Ring          //
//    Drawing ALIP2A__0126       //
///////////////////////////////////  
      // 1st section
      Float_t dzFaCompRing1  =  0.8;
      Float_t rInFaCompRing1 = 11.0/2.;
      Float_t rOuFaCompRing1 = 32.4/2.;
      // 2nd section
      Float_t dzFaCompRing2  =  1.2;
      Float_t rInFaCompRing2 = 14.0/2.;
      Float_t rOuFaCompRing2 = 35.3/2.;

      TGeoPcon* shFaCompRing = new TGeoPcon(0., 360., 4);
      z = 0.;
      // 1st section
      shFaCompRing->DefineSection(0, z, rInFaCompRing1, rOuFaCompRing1);
      z +=  dzFaCompRing1;
      shFaCompRing->DefineSection(1, z, rInFaCompRing1, rOuFaCompRing1);
      // 2nd section
      shFaCompRing->DefineSection(2, z, rInFaCompRing2, rOuFaCompRing2);;
      z +=  dzFaCompRing2;
      shFaCompRing->DefineSection(3, z, rInFaCompRing2, rOuFaCompRing2);

      TGeoVolume* voFaCompRing = new TGeoVolume("AFaCompRing", shFaCompRing, kMedC);

///////////////////////////////////
//    FA Magnesium Ring          //
//    Drawing ALIP2A__0127       //
///////////////////////////////////  
      //
      // The inner radii
      // section 1+3
      Float_t dzFaMgRingO   = 0.7;
      Float_t rInFaMgRingO  = 3.0;
      // section 2
      Float_t dzFaMgRingI   = 0.6;
      Float_t rInFaMgRingI  = 3.5;

      TGeoPcon* shFaMgRing = new TGeoPcon(0., 360., 8);
      // 1st section 
      z = 0.;
      shFaMgRing->DefineSection(0, z,  rInFaMgRingO, rInFaCompRing1);
      z += dzFaMgRingO;
      shFaMgRing->DefineSection(1, z,  rInFaMgRingO, rInFaCompRing1);
      // 2nd section
      shFaMgRing->DefineSection(2, z,  rInFaMgRingI, rInFaCompRing1);
      z +=  dzFaMgRingI/2.;
      shFaMgRing->DefineSection(3, z,  rInFaMgRingI, rInFaCompRing1);
      // 3rd section
      shFaMgRing->DefineSection(4, z,  rInFaMgRingI, rInFaCompRing2);
      z +=  dzFaMgRingI/2.;
      shFaMgRing->DefineSection(5, z,  rInFaMgRingI, rInFaCompRing2);
      // 4th section
      shFaMgRing->DefineSection(6, z,  rInFaMgRingO, rInFaCompRing2);
      z += dzFaMgRingO;
      shFaMgRing->DefineSection(7, z,  rInFaMgRingO, rInFaCompRing2);
      TGeoVolume* voFaMgRing = new TGeoVolume("AFaMgRing", shFaMgRing, kMedMg);


//
//    Absorber mother volume
//
//
// Length of the absorber without endplate
      Float_t dzFa = dzFaFlange + dzFaGraphiteCone + dzFaConcreteCone + dzFaSteelCone25 + dzFaSteelCone31;
      TGeoPcon* shFaM = new TGeoPcon(0., 360., 16);
      // Front -> Flange (Mg Ring details)
      z = 0.;
      shFaM->DefineSection( 0, z, rInFaMgRingO,       rOuFaQPlateF);
      z +=  dzFaMgRingO;
      dz =  dzFaMgRingO;
      shFaM->DefineSection( 1, z, rInFaMgRingO,       rOuFaQPlateF +  dz * angle24);
      shFaM->DefineSection( 2, z, rInFaMgRingI,       rOuFaQPlateF +  dz * angle24);
      z  += dzFaMgRingI;
      dz += dzFaMgRingI;
      shFaM->DefineSection( 3, z, rInFaMgRingI,       rOuFaQPlateF +  dz * angle24);
      shFaM->DefineSection( 4, z, rInFaMgRingO,       rOuFaQPlateF +  dz * angle24);
      z +=  dzFaMgRingO;
      dz += dzFaMgRingO;
      shFaM->DefineSection( 5, z, rInFaMgRingO,       rOuFaQPlateF +  dz * angle24);
      shFaM->DefineSection( 6, z, rInFaGraphiteCone1, rOuFaQPlateF +  dz * angle24);
      // Flange -> W-Plate B
      z += dzFaWPlateC1;
      shFaM->DefineSection( 7, z, rInFaGraphiteCone1, rOuFaQPlateC2);
      z += dzFaWPlateC2;
      Float_t zFaSteelEnvelope = z;
      shFaM->DefineSection( 8, z, rInFaGraphiteCone1, rOuFaQPlateC3);
      // 5 deg cone -> 10 deg cone
      z  = zFaSteelEnvelope + dzSteelEnvelopeFC  + dzSteelEnvelopeC5;
      shFaM->DefineSection( 9, z, rInFaGraphiteCone1, rOuSteelEnvelopeC10);
      // 10 deg cone  up to end of straight section
      z0 = z;
      z  = dzFaFlange + dzFaGraphiteConeS + dzFaWTube1C;
      dz = z - z0;
      shFaM->DefineSection(10, z, rInFaGraphiteCone1, rOuSteelEnvelopeC10 + dz * angle10);
      // 0.7 deg inner opening cone up to outer rear ring
      z0 = z;
      z = dzFa - dzSteelEnvelopeR/2.;
      dz = (z - z0);
      shFaM->DefineSection(11, z,  rInFaGraphiteCone1 +dz * angle71, rOuSteelEnvelopeR1);
      shFaM->DefineSection(12, z,  rInFaGraphiteCone1 +dz * angle71, rOuSteelEnvelopeR2);
      z += dzSteelEnvelopeR/2.;
      shFaM->DefineSection(13, z,  rInFaWTube4C2,                    rOuSteelEnvelopeR2);
      // Recess for end plate
      dz = dzSteelEnvelopeR/2;
      shFaM->DefineSection(14, z,  rInFaCH2Cone2 - dz * angle10,     rOuSteelEnvelopeR2);
      z += dzSteelEnvelopeR/2.;
      shFaM->DefineSection(15, z,  rInFaCH2Cone2,                    rOuSteelEnvelopeR2);

      TGeoVolume* voFaM = new TGeoVolume("AFaM", shFaM, kMedAir);
      voFaM->SetVisibility(0);
      

//
//    Assemble volumes inside acceptance
      TGeoPcon* shFaAccM = new TGeoPcon(0., 360., 7);
      for (Int_t i = 0; i < 4; i++) {
	  Float_t zpos  = shFaGraphiteCone->GetZ(i);
	  Float_t rmin  = shFaGraphiteCone->GetRmin(i);
	  Float_t rmax  = shFaGraphiteCone->GetRmax(i);
	  shFaAccM->DefineSection(i, zpos, rmin, rmax);
      }
      z  = dzFaGraphiteCone + dzFaConcreteCone + dzFaSteelCone25;
      z0 = z + zFa + dzFaFlange;
      shFaAccM->DefineSection(4, z, rOuFaWTube3C2, z0 * angle10);
      shFaAccM->DefineSection(5, z, rOuFaWTube4C1, z0 * angle10);
      z  += dzFaSteelCone31;
      z0 += dzFaSteelCone31;
      shFaAccM->DefineSection(6, z, rOuFaWTube4C2,  z0 * angle10);
      TGeoVolume* voFaAccM = new TGeoVolume("AFaAcc", shFaAccM, kMedAir);
      
      z = 0;
      voFaAccM->AddNode(voFaGraphiteCone, 1, gGeoIdentity);
      z += dzFaGraphiteCone;
      voFaAccM->AddNode(voFaConcreteCone, 1, new TGeoTranslation(0., 0., z + dzFaConcreteCone / 2.));
      z += dzFaConcreteCone;
      voFaAccM->AddNode(voFaSteelCone25,  1, new TGeoTranslation(0., 0., z + dzFaSteelCone25 / 2.));
      z += dzFaSteelCone25;
      voFaAccM->AddNode(voFaSteelCone31,  1, new TGeoTranslation(0., 0., z + dzFaSteelCone31 / 2.));

//
// Inner shield
      TGeoVolumeAssembly* voFaInnerShield = new TGeoVolumeAssembly("AFaInnerShield");
      voFaInnerShield->AddNode(voFaWTube1, 1, gGeoIdentity);
      z = dzFaWTube1 - 0.6;
      voFaInnerShield->AddNode(voFaWTube2, 1, new TGeoTranslation(0., 0., z) );
      z += dzFaWTube2;
      voFaInnerShield->AddNode(voFaWTube3, 1, new TGeoTranslation(0., 0., z + dzFaWTube3 / 2.) );
      z += dzFaWTube3;
      voFaInnerShield->AddNode(voFaWTube4, 1, new TGeoTranslation(0., 0., z + dzFaWTube4 / 2.) );
      z = dzFaGraphiteConeS + dzFaFlange;
      voFaM->AddNode(voFaInnerShield, 1, new TGeoTranslation(0., 0., z));


//
//    Adding volumes to mother volume
//
      z = 0.;
      voFaM->AddNode(voFaWPlateA,       1, gGeoIdentity);
      z += dzFaWPlate;
      voFaM->AddNode(voFaSteelEnvelope, 1, new TGeoTranslation(0., 0., z));
      z += dzSteelEnvelopeFC;
      voFaM->AddNode(voFaPbCone,        1, new TGeoTranslation(0., 0., z));
      z += (dzFaPbCone + dzFaCH2Cone / 2.);
      voFaM->AddNode(voFaCH2Cone,       1, new TGeoTranslation(0., 0., z));
      voFaM->AddNode(voFaFlange,   1, gGeoIdentity);
      voFaM->AddNode(voFaMgRing,   1, gGeoIdentity);
      voFaM->AddNode(voFaCompRing, 1, gGeoIdentity);
      voFaM->AddNode(voFaAccM, 1, new TGeoTranslation(0., 0., dzFaFlange));

////////////////////////////////////////////////////
//                                                // 
//    Front Absorber Support Structure FASS       // 
//                                                //
//    Drawing ALIP2A__0035                        //
//    Drawing ALIP2A__0089                        //
//    Drawing ALIP2A__0090                        //
//    Drawing ALIP2A__0109                        //
////////////////////////////////////////////////////
      TGeoVolumeAssembly* voFass = new TGeoVolumeAssembly("AFass");
      const Float_t kFassUBFlangeH = 380.;
      const Float_t kFassUBFlangeW =  77.;

      const Float_t kFassUMFlangeH = 380.;
      const Float_t kFassUMFlangeB = 246.;
      const Float_t kFassUMFlangeT =  10.;
      const Float_t kFassUMFalpha  = - TMath::ATan((kFassUMFlangeB-kFassUMFlangeT)/ kFassUMFlangeH / 2.) / kDegRad;      
// Upper back   flange
// B1
// 380 x 77
      TGeoVolume* voFassUBFlange = new TGeoVolume("AFassUBFlange", new TGeoBBox(kFassUBFlangeW/2., 
									       kFassUBFlangeH/2., 3./2.), kMedSteel);
      voFass->AddNode(voFassUBFlange, 1, new TGeoTranslation(+1.5 + kFassUBFlangeW/2., 
							     180. + kFassUBFlangeH/2.,
							     kFassUMFlangeB - 1.5));
      voFass->AddNode(voFassUBFlange, 2, new TGeoTranslation(-1.5 - kFassUBFlangeW/2., 
							     180. + kFassUBFlangeH/2.,
							     kFassUMFlangeB - 1.5));

      
// Lower back   flange
// Upper median flange
//    Drawing ALIP2A__0090                        //
//    Drawing ALIP2A__0089                        //
//    A2

      TGeoVolume* voFassUMFlange = new TGeoVolume("AFassUMFlange", 
						  new TGeoTrap(kFassUMFlangeH/2., kFassUMFalpha,  
							       0., 1.5, 
							       kFassUMFlangeB/2., kFassUMFlangeB/2.,
							       0., 1.5, 
							       kFassUMFlangeT/2., kFassUMFlangeT/2.,
							       0.), kMedSteel);
      
      TGeoRotation* rotFass1 = new TGeoRotation("rotFass1", 180., 0., 90., 0., 90., 90.);
      voFass->AddNode(voFassUMFlange,1 , 
		      new TGeoCombiTrans(0., 180. + kFassUMFlangeH/2., -(kFassUMFlangeB+kFassUMFlangeT)/4. + kFassUMFlangeB, 
					 rotFass1));
      

// Lower median flange
//    Drawing ALIP2A__0090                        //
//    Drawing ALIP2A__0089                        //
//    A1
      const Float_t kFassLMFlangeH = 242.;
      const Float_t kFassLMFlangeB = 246.;
      const Float_t kFassLMFlangeT =  43.;
      const Float_t kFassLMFalpha  = - TMath::ATan((kFassLMFlangeB-kFassLMFlangeT)/ kFassLMFlangeH / 2.) / kDegRad;
      TGeoVolume* voFassLMFlange = new TGeoVolume("AFassLMFlange", 
						  new TGeoTrap(kFassLMFlangeH/2., kFassLMFalpha,  
							       0., 1.5, 
							       kFassLMFlangeB/2., kFassLMFlangeB/2.,
							       0., 1.5, 
							       kFassLMFlangeT/2., kFassLMFlangeT/2.,
							       0.), kMedSteel);
      TGeoRotation* rotFass2 = new TGeoRotation("rotFass2", 180., 0., 90., 0., 90., 270.);
      voFass->AddNode(voFassLMFlange, 1, 
		      new TGeoCombiTrans(0., -180. - kFassLMFlangeH/2., -(kFassLMFlangeB+kFassLMFlangeT)/4. + kFassLMFlangeB, 
					rotFass2));

// Stiffeners
// Support Plate
//
// Central cone
      TGeoPgon* shFassCone = new TGeoPgon(22.5, 360., 8, 4);
      shFassCone->DefineSection(0,   0.,   0., 180.);
      shFassCone->DefineSection(1,   3.,   0., 180.);
      shFassCone->DefineSection(2,   3., 177., 180.);
      shFassCone->DefineSection(3, 246., 177., 180.);
      shFassCone->SetName("FassCone");

      TGeoBBox* shFassWindow = new TGeoBBox( 190., 53., 28.);
      shFassWindow->SetName("FassWindow");
      TGeoTranslation* tFassWindow = new TGeoTranslation("tFassWindow", 0., 0., 78.);
      tFassWindow->RegisterYourself();

      TGeoTube* shFassApperture = new TGeoTube(0., 104., 3.);
      shFassApperture->SetName("FassApperture");
      
      TGeoCompositeShape* shFassCentral = 
	  new TGeoCompositeShape("shFassCentral", "FassCone-(FassWindow:tFassWindow+FassApperture)");
      
      TGeoVolume* voFassCentral = new TGeoVolume("AFassCentral", shFassCentral, kMedSteel);
      voFass->AddNode(voFassCentral, 1, gGeoIdentity);
      
//
// Aluminum ring
//
      TGeoVolume* voFassAlRing = new TGeoVolume("AFassAlRing", new TGeoTube(104., 180., 10.), kMedAlu);
      
      
//
// Assemble the FA
//
// Inside muon spectrometer acceptance
//
//    Composite  2 cm
//    Graphite 225 cm
//    Concrete 126 cm
//    Steel     56 cm
// ===================
//             409 cm
// should be   409 cm


      
            
//
// Absorber and Support
      TGeoVolumeAssembly* voFA = new TGeoVolumeAssembly("AFA");
      voFA->AddNode(voFaM,        1, gGeoIdentity);
      voFA->AddNode(voFaEndPlate, 1, new TGeoTranslation(0., 0., dzFa + dzEndPlate/2.));
      voFA->AddNode(voFass, 1, new TGeoTranslation(0., 0., 388.45));
      voFA->AddNode(voFassAlRing, 1, new TGeoTranslation(0., 0., 382. - 3.56));
      top->AddNode(voFA, 1, new TGeoCombiTrans(0., 0., -90., rotxz));
}


TGeoPcon* AliABSOv3::MakeShapeFromTemplate(const TGeoPcon* pcon, Float_t drMin, Float_t drMax)
{
    // 
    // Returns new shape based on a template changing
    // the inner radii by drMin and the outer radii by drMax.
    //
    Int_t nz = pcon->GetNz();
    TGeoPcon* cpcon = new TGeoPcon(0., 360., nz);
    for (Int_t i = 0; i < nz; i++) 
	cpcon->DefineSection(i, pcon->GetZ(i), pcon->GetRmin(i) + drMin, pcon->GetRmax(i) + drMax);
    return cpcon;
}
 AliABSOv3.cxx:1
 AliABSOv3.cxx:2
 AliABSOv3.cxx:3
 AliABSOv3.cxx:4
 AliABSOv3.cxx:5
 AliABSOv3.cxx:6
 AliABSOv3.cxx:7
 AliABSOv3.cxx:8
 AliABSOv3.cxx:9
 AliABSOv3.cxx:10
 AliABSOv3.cxx:11
 AliABSOv3.cxx:12
 AliABSOv3.cxx:13
 AliABSOv3.cxx:14
 AliABSOv3.cxx:15
 AliABSOv3.cxx:16
 AliABSOv3.cxx:17
 AliABSOv3.cxx:18
 AliABSOv3.cxx:19
 AliABSOv3.cxx:20
 AliABSOv3.cxx:21
 AliABSOv3.cxx:22
 AliABSOv3.cxx:23
 AliABSOv3.cxx:24
 AliABSOv3.cxx:25
 AliABSOv3.cxx:26
 AliABSOv3.cxx:27
 AliABSOv3.cxx:28
 AliABSOv3.cxx:29
 AliABSOv3.cxx:30
 AliABSOv3.cxx:31
 AliABSOv3.cxx:32
 AliABSOv3.cxx:33
 AliABSOv3.cxx:34
 AliABSOv3.cxx:35
 AliABSOv3.cxx:36
 AliABSOv3.cxx:37
 AliABSOv3.cxx:38
 AliABSOv3.cxx:39
 AliABSOv3.cxx:40
 AliABSOv3.cxx:41
 AliABSOv3.cxx:42
 AliABSOv3.cxx:43
 AliABSOv3.cxx:44
 AliABSOv3.cxx:45
 AliABSOv3.cxx:46
 AliABSOv3.cxx:47
 AliABSOv3.cxx:48
 AliABSOv3.cxx:49
 AliABSOv3.cxx:50
 AliABSOv3.cxx:51
 AliABSOv3.cxx:52
 AliABSOv3.cxx:53
 AliABSOv3.cxx:54
 AliABSOv3.cxx:55
 AliABSOv3.cxx:56
 AliABSOv3.cxx:57
 AliABSOv3.cxx:58
 AliABSOv3.cxx:59
 AliABSOv3.cxx:60
 AliABSOv3.cxx:61
 AliABSOv3.cxx:62
 AliABSOv3.cxx:63
 AliABSOv3.cxx:64
 AliABSOv3.cxx:65
 AliABSOv3.cxx:66
 AliABSOv3.cxx:67
 AliABSOv3.cxx:68
 AliABSOv3.cxx:69
 AliABSOv3.cxx:70
 AliABSOv3.cxx:71
 AliABSOv3.cxx:72
 AliABSOv3.cxx:73
 AliABSOv3.cxx:74
 AliABSOv3.cxx:75
 AliABSOv3.cxx:76
 AliABSOv3.cxx:77
 AliABSOv3.cxx:78
 AliABSOv3.cxx:79
 AliABSOv3.cxx:80
 AliABSOv3.cxx:81
 AliABSOv3.cxx:82
 AliABSOv3.cxx:83
 AliABSOv3.cxx:84
 AliABSOv3.cxx:85
 AliABSOv3.cxx:86
 AliABSOv3.cxx:87
 AliABSOv3.cxx:88
 AliABSOv3.cxx:89
 AliABSOv3.cxx:90
 AliABSOv3.cxx:91
 AliABSOv3.cxx:92
 AliABSOv3.cxx:93
 AliABSOv3.cxx:94
 AliABSOv3.cxx:95
 AliABSOv3.cxx:96
 AliABSOv3.cxx:97
 AliABSOv3.cxx:98
 AliABSOv3.cxx:99
 AliABSOv3.cxx:100
 AliABSOv3.cxx:101
 AliABSOv3.cxx:102
 AliABSOv3.cxx:103
 AliABSOv3.cxx:104
 AliABSOv3.cxx:105
 AliABSOv3.cxx:106
 AliABSOv3.cxx:107
 AliABSOv3.cxx:108
 AliABSOv3.cxx:109
 AliABSOv3.cxx:110
 AliABSOv3.cxx:111
 AliABSOv3.cxx:112
 AliABSOv3.cxx:113
 AliABSOv3.cxx:114
 AliABSOv3.cxx:115
 AliABSOv3.cxx:116
 AliABSOv3.cxx:117
 AliABSOv3.cxx:118
 AliABSOv3.cxx:119
 AliABSOv3.cxx:120
 AliABSOv3.cxx:121
 AliABSOv3.cxx:122
 AliABSOv3.cxx:123
 AliABSOv3.cxx:124
 AliABSOv3.cxx:125
 AliABSOv3.cxx:126
 AliABSOv3.cxx:127
 AliABSOv3.cxx:128
 AliABSOv3.cxx:129
 AliABSOv3.cxx:130
 AliABSOv3.cxx:131
 AliABSOv3.cxx:132
 AliABSOv3.cxx:133
 AliABSOv3.cxx:134
 AliABSOv3.cxx:135
 AliABSOv3.cxx:136
 AliABSOv3.cxx:137
 AliABSOv3.cxx:138
 AliABSOv3.cxx:139
 AliABSOv3.cxx:140
 AliABSOv3.cxx:141
 AliABSOv3.cxx:142
 AliABSOv3.cxx:143
 AliABSOv3.cxx:144
 AliABSOv3.cxx:145
 AliABSOv3.cxx:146
 AliABSOv3.cxx:147
 AliABSOv3.cxx:148
 AliABSOv3.cxx:149
 AliABSOv3.cxx:150
 AliABSOv3.cxx:151
 AliABSOv3.cxx:152
 AliABSOv3.cxx:153
 AliABSOv3.cxx:154
 AliABSOv3.cxx:155
 AliABSOv3.cxx:156
 AliABSOv3.cxx:157
 AliABSOv3.cxx:158
 AliABSOv3.cxx:159
 AliABSOv3.cxx:160
 AliABSOv3.cxx:161
 AliABSOv3.cxx:162
 AliABSOv3.cxx:163
 AliABSOv3.cxx:164
 AliABSOv3.cxx:165
 AliABSOv3.cxx:166
 AliABSOv3.cxx:167
 AliABSOv3.cxx:168
 AliABSOv3.cxx:169
 AliABSOv3.cxx:170
 AliABSOv3.cxx:171
 AliABSOv3.cxx:172
 AliABSOv3.cxx:173
 AliABSOv3.cxx:174
 AliABSOv3.cxx:175
 AliABSOv3.cxx:176
 AliABSOv3.cxx:177
 AliABSOv3.cxx:178
 AliABSOv3.cxx:179
 AliABSOv3.cxx:180
 AliABSOv3.cxx:181
 AliABSOv3.cxx:182
 AliABSOv3.cxx:183
 AliABSOv3.cxx:184
 AliABSOv3.cxx:185
 AliABSOv3.cxx:186
 AliABSOv3.cxx:187
 AliABSOv3.cxx:188
 AliABSOv3.cxx:189
 AliABSOv3.cxx:190
 AliABSOv3.cxx:191
 AliABSOv3.cxx:192
 AliABSOv3.cxx:193
 AliABSOv3.cxx:194
 AliABSOv3.cxx:195
 AliABSOv3.cxx:196
 AliABSOv3.cxx:197
 AliABSOv3.cxx:198
 AliABSOv3.cxx:199
 AliABSOv3.cxx:200
 AliABSOv3.cxx:201
 AliABSOv3.cxx:202
 AliABSOv3.cxx:203
 AliABSOv3.cxx:204
 AliABSOv3.cxx:205
 AliABSOv3.cxx:206
 AliABSOv3.cxx:207
 AliABSOv3.cxx:208
 AliABSOv3.cxx:209
 AliABSOv3.cxx:210
 AliABSOv3.cxx:211
 AliABSOv3.cxx:212
 AliABSOv3.cxx:213
 AliABSOv3.cxx:214
 AliABSOv3.cxx:215
 AliABSOv3.cxx:216
 AliABSOv3.cxx:217
 AliABSOv3.cxx:218
 AliABSOv3.cxx:219
 AliABSOv3.cxx:220
 AliABSOv3.cxx:221
 AliABSOv3.cxx:222
 AliABSOv3.cxx:223
 AliABSOv3.cxx:224
 AliABSOv3.cxx:225
 AliABSOv3.cxx:226
 AliABSOv3.cxx:227
 AliABSOv3.cxx:228
 AliABSOv3.cxx:229
 AliABSOv3.cxx:230
 AliABSOv3.cxx:231
 AliABSOv3.cxx:232
 AliABSOv3.cxx:233
 AliABSOv3.cxx:234
 AliABSOv3.cxx:235
 AliABSOv3.cxx:236
 AliABSOv3.cxx:237
 AliABSOv3.cxx:238
 AliABSOv3.cxx:239
 AliABSOv3.cxx:240
 AliABSOv3.cxx:241
 AliABSOv3.cxx:242
 AliABSOv3.cxx:243
 AliABSOv3.cxx:244
 AliABSOv3.cxx:245
 AliABSOv3.cxx:246
 AliABSOv3.cxx:247
 AliABSOv3.cxx:248
 AliABSOv3.cxx:249
 AliABSOv3.cxx:250
 AliABSOv3.cxx:251
 AliABSOv3.cxx:252
 AliABSOv3.cxx:253
 AliABSOv3.cxx:254
 AliABSOv3.cxx:255
 AliABSOv3.cxx:256
 AliABSOv3.cxx:257
 AliABSOv3.cxx:258
 AliABSOv3.cxx:259
 AliABSOv3.cxx:260
 AliABSOv3.cxx:261
 AliABSOv3.cxx:262
 AliABSOv3.cxx:263
 AliABSOv3.cxx:264
 AliABSOv3.cxx:265
 AliABSOv3.cxx:266
 AliABSOv3.cxx:267
 AliABSOv3.cxx:268
 AliABSOv3.cxx:269
 AliABSOv3.cxx:270
 AliABSOv3.cxx:271
 AliABSOv3.cxx:272
 AliABSOv3.cxx:273
 AliABSOv3.cxx:274
 AliABSOv3.cxx:275
 AliABSOv3.cxx:276
 AliABSOv3.cxx:277
 AliABSOv3.cxx:278
 AliABSOv3.cxx:279
 AliABSOv3.cxx:280
 AliABSOv3.cxx:281
 AliABSOv3.cxx:282
 AliABSOv3.cxx:283
 AliABSOv3.cxx:284
 AliABSOv3.cxx:285
 AliABSOv3.cxx:286
 AliABSOv3.cxx:287
 AliABSOv3.cxx:288
 AliABSOv3.cxx:289
 AliABSOv3.cxx:290
 AliABSOv3.cxx:291
 AliABSOv3.cxx:292
 AliABSOv3.cxx:293
 AliABSOv3.cxx:294
 AliABSOv3.cxx:295
 AliABSOv3.cxx:296
 AliABSOv3.cxx:297
 AliABSOv3.cxx:298
 AliABSOv3.cxx:299
 AliABSOv3.cxx:300
 AliABSOv3.cxx:301
 AliABSOv3.cxx:302
 AliABSOv3.cxx:303
 AliABSOv3.cxx:304
 AliABSOv3.cxx:305
 AliABSOv3.cxx:306
 AliABSOv3.cxx:307
 AliABSOv3.cxx:308
 AliABSOv3.cxx:309
 AliABSOv3.cxx:310
 AliABSOv3.cxx:311
 AliABSOv3.cxx:312
 AliABSOv3.cxx:313
 AliABSOv3.cxx:314
 AliABSOv3.cxx:315
 AliABSOv3.cxx:316
 AliABSOv3.cxx:317
 AliABSOv3.cxx:318
 AliABSOv3.cxx:319
 AliABSOv3.cxx:320
 AliABSOv3.cxx:321
 AliABSOv3.cxx:322
 AliABSOv3.cxx:323
 AliABSOv3.cxx:324
 AliABSOv3.cxx:325
 AliABSOv3.cxx:326
 AliABSOv3.cxx:327
 AliABSOv3.cxx:328
 AliABSOv3.cxx:329
 AliABSOv3.cxx:330
 AliABSOv3.cxx:331
 AliABSOv3.cxx:332
 AliABSOv3.cxx:333
 AliABSOv3.cxx:334
 AliABSOv3.cxx:335
 AliABSOv3.cxx:336
 AliABSOv3.cxx:337
 AliABSOv3.cxx:338
 AliABSOv3.cxx:339
 AliABSOv3.cxx:340
 AliABSOv3.cxx:341
 AliABSOv3.cxx:342
 AliABSOv3.cxx:343
 AliABSOv3.cxx:344
 AliABSOv3.cxx:345
 AliABSOv3.cxx:346
 AliABSOv3.cxx:347
 AliABSOv3.cxx:348
 AliABSOv3.cxx:349
 AliABSOv3.cxx:350
 AliABSOv3.cxx:351
 AliABSOv3.cxx:352
 AliABSOv3.cxx:353
 AliABSOv3.cxx:354
 AliABSOv3.cxx:355
 AliABSOv3.cxx:356
 AliABSOv3.cxx:357
 AliABSOv3.cxx:358
 AliABSOv3.cxx:359
 AliABSOv3.cxx:360
 AliABSOv3.cxx:361
 AliABSOv3.cxx:362
 AliABSOv3.cxx:363
 AliABSOv3.cxx:364
 AliABSOv3.cxx:365
 AliABSOv3.cxx:366
 AliABSOv3.cxx:367
 AliABSOv3.cxx:368
 AliABSOv3.cxx:369
 AliABSOv3.cxx:370
 AliABSOv3.cxx:371
 AliABSOv3.cxx:372
 AliABSOv3.cxx:373
 AliABSOv3.cxx:374
 AliABSOv3.cxx:375
 AliABSOv3.cxx:376
 AliABSOv3.cxx:377
 AliABSOv3.cxx:378
 AliABSOv3.cxx:379
 AliABSOv3.cxx:380
 AliABSOv3.cxx:381
 AliABSOv3.cxx:382
 AliABSOv3.cxx:383
 AliABSOv3.cxx:384
 AliABSOv3.cxx:385
 AliABSOv3.cxx:386
 AliABSOv3.cxx:387
 AliABSOv3.cxx:388
 AliABSOv3.cxx:389
 AliABSOv3.cxx:390
 AliABSOv3.cxx:391
 AliABSOv3.cxx:392
 AliABSOv3.cxx:393
 AliABSOv3.cxx:394
 AliABSOv3.cxx:395
 AliABSOv3.cxx:396
 AliABSOv3.cxx:397
 AliABSOv3.cxx:398
 AliABSOv3.cxx:399
 AliABSOv3.cxx:400
 AliABSOv3.cxx:401
 AliABSOv3.cxx:402
 AliABSOv3.cxx:403
 AliABSOv3.cxx:404
 AliABSOv3.cxx:405
 AliABSOv3.cxx:406
 AliABSOv3.cxx:407
 AliABSOv3.cxx:408
 AliABSOv3.cxx:409
 AliABSOv3.cxx:410
 AliABSOv3.cxx:411
 AliABSOv3.cxx:412
 AliABSOv3.cxx:413
 AliABSOv3.cxx:414
 AliABSOv3.cxx:415
 AliABSOv3.cxx:416
 AliABSOv3.cxx:417
 AliABSOv3.cxx:418
 AliABSOv3.cxx:419
 AliABSOv3.cxx:420
 AliABSOv3.cxx:421
 AliABSOv3.cxx:422
 AliABSOv3.cxx:423
 AliABSOv3.cxx:424
 AliABSOv3.cxx:425
 AliABSOv3.cxx:426
 AliABSOv3.cxx:427
 AliABSOv3.cxx:428
 AliABSOv3.cxx:429
 AliABSOv3.cxx:430
 AliABSOv3.cxx:431
 AliABSOv3.cxx:432
 AliABSOv3.cxx:433
 AliABSOv3.cxx:434
 AliABSOv3.cxx:435
 AliABSOv3.cxx:436
 AliABSOv3.cxx:437
 AliABSOv3.cxx:438
 AliABSOv3.cxx:439
 AliABSOv3.cxx:440
 AliABSOv3.cxx:441
 AliABSOv3.cxx:442
 AliABSOv3.cxx:443
 AliABSOv3.cxx:444
 AliABSOv3.cxx:445
 AliABSOv3.cxx:446
 AliABSOv3.cxx:447
 AliABSOv3.cxx:448
 AliABSOv3.cxx:449
 AliABSOv3.cxx:450
 AliABSOv3.cxx:451
 AliABSOv3.cxx:452
 AliABSOv3.cxx:453
 AliABSOv3.cxx:454
 AliABSOv3.cxx:455
 AliABSOv3.cxx:456
 AliABSOv3.cxx:457
 AliABSOv3.cxx:458
 AliABSOv3.cxx:459
 AliABSOv3.cxx:460
 AliABSOv3.cxx:461
 AliABSOv3.cxx:462
 AliABSOv3.cxx:463
 AliABSOv3.cxx:464
 AliABSOv3.cxx:465
 AliABSOv3.cxx:466
 AliABSOv3.cxx:467
 AliABSOv3.cxx:468
 AliABSOv3.cxx:469
 AliABSOv3.cxx:470
 AliABSOv3.cxx:471
 AliABSOv3.cxx:472
 AliABSOv3.cxx:473
 AliABSOv3.cxx:474
 AliABSOv3.cxx:475
 AliABSOv3.cxx:476
 AliABSOv3.cxx:477
 AliABSOv3.cxx:478
 AliABSOv3.cxx:479
 AliABSOv3.cxx:480
 AliABSOv3.cxx:481
 AliABSOv3.cxx:482
 AliABSOv3.cxx:483
 AliABSOv3.cxx:484
 AliABSOv3.cxx:485
 AliABSOv3.cxx:486
 AliABSOv3.cxx:487
 AliABSOv3.cxx:488
 AliABSOv3.cxx:489
 AliABSOv3.cxx:490
 AliABSOv3.cxx:491
 AliABSOv3.cxx:492
 AliABSOv3.cxx:493
 AliABSOv3.cxx:494
 AliABSOv3.cxx:495
 AliABSOv3.cxx:496
 AliABSOv3.cxx:497
 AliABSOv3.cxx:498
 AliABSOv3.cxx:499
 AliABSOv3.cxx:500
 AliABSOv3.cxx:501
 AliABSOv3.cxx:502
 AliABSOv3.cxx:503
 AliABSOv3.cxx:504
 AliABSOv3.cxx:505
 AliABSOv3.cxx:506
 AliABSOv3.cxx:507
 AliABSOv3.cxx:508
 AliABSOv3.cxx:509
 AliABSOv3.cxx:510
 AliABSOv3.cxx:511
 AliABSOv3.cxx:512
 AliABSOv3.cxx:513
 AliABSOv3.cxx:514
 AliABSOv3.cxx:515
 AliABSOv3.cxx:516
 AliABSOv3.cxx:517
 AliABSOv3.cxx:518
 AliABSOv3.cxx:519
 AliABSOv3.cxx:520
 AliABSOv3.cxx:521
 AliABSOv3.cxx:522
 AliABSOv3.cxx:523
 AliABSOv3.cxx:524
 AliABSOv3.cxx:525
 AliABSOv3.cxx:526
 AliABSOv3.cxx:527
 AliABSOv3.cxx:528
 AliABSOv3.cxx:529
 AliABSOv3.cxx:530
 AliABSOv3.cxx:531
 AliABSOv3.cxx:532
 AliABSOv3.cxx:533
 AliABSOv3.cxx:534
 AliABSOv3.cxx:535
 AliABSOv3.cxx:536
 AliABSOv3.cxx:537
 AliABSOv3.cxx:538
 AliABSOv3.cxx:539
 AliABSOv3.cxx:540
 AliABSOv3.cxx:541
 AliABSOv3.cxx:542
 AliABSOv3.cxx:543
 AliABSOv3.cxx:544
 AliABSOv3.cxx:545
 AliABSOv3.cxx:546
 AliABSOv3.cxx:547
 AliABSOv3.cxx:548
 AliABSOv3.cxx:549
 AliABSOv3.cxx:550
 AliABSOv3.cxx:551
 AliABSOv3.cxx:552
 AliABSOv3.cxx:553
 AliABSOv3.cxx:554
 AliABSOv3.cxx:555
 AliABSOv3.cxx:556
 AliABSOv3.cxx:557
 AliABSOv3.cxx:558
 AliABSOv3.cxx:559
 AliABSOv3.cxx:560
 AliABSOv3.cxx:561
 AliABSOv3.cxx:562
 AliABSOv3.cxx:563
 AliABSOv3.cxx:564
 AliABSOv3.cxx:565
 AliABSOv3.cxx:566
 AliABSOv3.cxx:567
 AliABSOv3.cxx:568
 AliABSOv3.cxx:569
 AliABSOv3.cxx:570
 AliABSOv3.cxx:571
 AliABSOv3.cxx:572
 AliABSOv3.cxx:573
 AliABSOv3.cxx:574
 AliABSOv3.cxx:575
 AliABSOv3.cxx:576
 AliABSOv3.cxx:577
 AliABSOv3.cxx:578
 AliABSOv3.cxx:579
 AliABSOv3.cxx:580
 AliABSOv3.cxx:581
 AliABSOv3.cxx:582
 AliABSOv3.cxx:583
 AliABSOv3.cxx:584
 AliABSOv3.cxx:585
 AliABSOv3.cxx:586
 AliABSOv3.cxx:587
 AliABSOv3.cxx:588
 AliABSOv3.cxx:589
 AliABSOv3.cxx:590
 AliABSOv3.cxx:591
 AliABSOv3.cxx:592
 AliABSOv3.cxx:593
 AliABSOv3.cxx:594
 AliABSOv3.cxx:595
 AliABSOv3.cxx:596
 AliABSOv3.cxx:597
 AliABSOv3.cxx:598
 AliABSOv3.cxx:599
 AliABSOv3.cxx:600
 AliABSOv3.cxx:601
 AliABSOv3.cxx:602
 AliABSOv3.cxx:603
 AliABSOv3.cxx:604
 AliABSOv3.cxx:605
 AliABSOv3.cxx:606
 AliABSOv3.cxx:607
 AliABSOv3.cxx:608
 AliABSOv3.cxx:609
 AliABSOv3.cxx:610
 AliABSOv3.cxx:611
 AliABSOv3.cxx:612
 AliABSOv3.cxx:613
 AliABSOv3.cxx:614
 AliABSOv3.cxx:615
 AliABSOv3.cxx:616
 AliABSOv3.cxx:617
 AliABSOv3.cxx:618
 AliABSOv3.cxx:619
 AliABSOv3.cxx:620
 AliABSOv3.cxx:621
 AliABSOv3.cxx:622
 AliABSOv3.cxx:623
 AliABSOv3.cxx:624
 AliABSOv3.cxx:625
 AliABSOv3.cxx:626
 AliABSOv3.cxx:627
 AliABSOv3.cxx:628
 AliABSOv3.cxx:629
 AliABSOv3.cxx:630
 AliABSOv3.cxx:631
 AliABSOv3.cxx:632
 AliABSOv3.cxx:633
 AliABSOv3.cxx:634
 AliABSOv3.cxx:635
 AliABSOv3.cxx:636
 AliABSOv3.cxx:637
 AliABSOv3.cxx:638
 AliABSOv3.cxx:639
 AliABSOv3.cxx:640
 AliABSOv3.cxx:641
 AliABSOv3.cxx:642
 AliABSOv3.cxx:643
 AliABSOv3.cxx:644
 AliABSOv3.cxx:645
 AliABSOv3.cxx:646
 AliABSOv3.cxx:647
 AliABSOv3.cxx:648
 AliABSOv3.cxx:649
 AliABSOv3.cxx:650
 AliABSOv3.cxx:651
 AliABSOv3.cxx:652
 AliABSOv3.cxx:653
 AliABSOv3.cxx:654
 AliABSOv3.cxx:655
 AliABSOv3.cxx:656
 AliABSOv3.cxx:657
 AliABSOv3.cxx:658
 AliABSOv3.cxx:659
 AliABSOv3.cxx:660
 AliABSOv3.cxx:661
 AliABSOv3.cxx:662
 AliABSOv3.cxx:663
 AliABSOv3.cxx:664
 AliABSOv3.cxx:665
 AliABSOv3.cxx:666
 AliABSOv3.cxx:667
 AliABSOv3.cxx:668
 AliABSOv3.cxx:669
 AliABSOv3.cxx:670
 AliABSOv3.cxx:671
 AliABSOv3.cxx:672
 AliABSOv3.cxx:673
 AliABSOv3.cxx:674
 AliABSOv3.cxx:675
 AliABSOv3.cxx:676
 AliABSOv3.cxx:677
 AliABSOv3.cxx:678
 AliABSOv3.cxx:679
 AliABSOv3.cxx:680
 AliABSOv3.cxx:681
 AliABSOv3.cxx:682
 AliABSOv3.cxx:683
 AliABSOv3.cxx:684
 AliABSOv3.cxx:685
 AliABSOv3.cxx:686
 AliABSOv3.cxx:687
 AliABSOv3.cxx:688
 AliABSOv3.cxx:689
 AliABSOv3.cxx:690
 AliABSOv3.cxx:691
 AliABSOv3.cxx:692
 AliABSOv3.cxx:693
 AliABSOv3.cxx:694
 AliABSOv3.cxx:695
 AliABSOv3.cxx:696
 AliABSOv3.cxx:697
 AliABSOv3.cxx:698
 AliABSOv3.cxx:699
 AliABSOv3.cxx:700
 AliABSOv3.cxx:701
 AliABSOv3.cxx:702
 AliABSOv3.cxx:703
 AliABSOv3.cxx:704
 AliABSOv3.cxx:705
 AliABSOv3.cxx:706
 AliABSOv3.cxx:707
 AliABSOv3.cxx:708
 AliABSOv3.cxx:709
 AliABSOv3.cxx:710
 AliABSOv3.cxx:711
 AliABSOv3.cxx:712
 AliABSOv3.cxx:713
 AliABSOv3.cxx:714
 AliABSOv3.cxx:715
 AliABSOv3.cxx:716
 AliABSOv3.cxx:717
 AliABSOv3.cxx:718
 AliABSOv3.cxx:719
 AliABSOv3.cxx:720
 AliABSOv3.cxx:721
 AliABSOv3.cxx:722
 AliABSOv3.cxx:723
 AliABSOv3.cxx:724
 AliABSOv3.cxx:725
 AliABSOv3.cxx:726
 AliABSOv3.cxx:727
 AliABSOv3.cxx:728
 AliABSOv3.cxx:729
 AliABSOv3.cxx:730
 AliABSOv3.cxx:731
 AliABSOv3.cxx:732
 AliABSOv3.cxx:733
 AliABSOv3.cxx:734
 AliABSOv3.cxx:735
 AliABSOv3.cxx:736
 AliABSOv3.cxx:737
 AliABSOv3.cxx:738
 AliABSOv3.cxx:739
 AliABSOv3.cxx:740
 AliABSOv3.cxx:741
 AliABSOv3.cxx:742
 AliABSOv3.cxx:743
 AliABSOv3.cxx:744
 AliABSOv3.cxx:745
 AliABSOv3.cxx:746
 AliABSOv3.cxx:747
 AliABSOv3.cxx:748
 AliABSOv3.cxx:749
 AliABSOv3.cxx:750
 AliABSOv3.cxx:751
 AliABSOv3.cxx:752
 AliABSOv3.cxx:753
 AliABSOv3.cxx:754
 AliABSOv3.cxx:755
 AliABSOv3.cxx:756
 AliABSOv3.cxx:757
 AliABSOv3.cxx:758
 AliABSOv3.cxx:759
 AliABSOv3.cxx:760
 AliABSOv3.cxx:761
 AliABSOv3.cxx:762
 AliABSOv3.cxx:763
 AliABSOv3.cxx:764
 AliABSOv3.cxx:765
 AliABSOv3.cxx:766
 AliABSOv3.cxx:767
 AliABSOv3.cxx:768
 AliABSOv3.cxx:769
 AliABSOv3.cxx:770
 AliABSOv3.cxx:771
 AliABSOv3.cxx:772
 AliABSOv3.cxx:773
 AliABSOv3.cxx:774
 AliABSOv3.cxx:775
 AliABSOv3.cxx:776
 AliABSOv3.cxx:777
 AliABSOv3.cxx:778
 AliABSOv3.cxx:779
 AliABSOv3.cxx:780
 AliABSOv3.cxx:781
 AliABSOv3.cxx:782
 AliABSOv3.cxx:783
 AliABSOv3.cxx:784
 AliABSOv3.cxx:785
 AliABSOv3.cxx:786
 AliABSOv3.cxx:787
 AliABSOv3.cxx:788
 AliABSOv3.cxx:789
 AliABSOv3.cxx:790
 AliABSOv3.cxx:791
 AliABSOv3.cxx:792
 AliABSOv3.cxx:793
 AliABSOv3.cxx:794
 AliABSOv3.cxx:795
 AliABSOv3.cxx:796
 AliABSOv3.cxx:797
 AliABSOv3.cxx:798
 AliABSOv3.cxx:799
 AliABSOv3.cxx:800
 AliABSOv3.cxx:801
 AliABSOv3.cxx:802
 AliABSOv3.cxx:803
 AliABSOv3.cxx:804
 AliABSOv3.cxx:805
 AliABSOv3.cxx:806
 AliABSOv3.cxx:807
 AliABSOv3.cxx:808
 AliABSOv3.cxx:809
 AliABSOv3.cxx:810
 AliABSOv3.cxx:811
 AliABSOv3.cxx:812
 AliABSOv3.cxx:813
 AliABSOv3.cxx:814
 AliABSOv3.cxx:815
 AliABSOv3.cxx:816
 AliABSOv3.cxx:817
 AliABSOv3.cxx:818
 AliABSOv3.cxx:819
 AliABSOv3.cxx:820
 AliABSOv3.cxx:821
 AliABSOv3.cxx:822
 AliABSOv3.cxx:823
 AliABSOv3.cxx:824
 AliABSOv3.cxx:825
 AliABSOv3.cxx:826
 AliABSOv3.cxx:827
 AliABSOv3.cxx:828
 AliABSOv3.cxx:829
 AliABSOv3.cxx:830
 AliABSOv3.cxx:831
 AliABSOv3.cxx:832
 AliABSOv3.cxx:833
 AliABSOv3.cxx:834
 AliABSOv3.cxx:835
 AliABSOv3.cxx:836
 AliABSOv3.cxx:837
 AliABSOv3.cxx:838
 AliABSOv3.cxx:839
 AliABSOv3.cxx:840
 AliABSOv3.cxx:841
 AliABSOv3.cxx:842
 AliABSOv3.cxx:843
 AliABSOv3.cxx:844
 AliABSOv3.cxx:845
 AliABSOv3.cxx:846
 AliABSOv3.cxx:847
 AliABSOv3.cxx:848
 AliABSOv3.cxx:849
 AliABSOv3.cxx:850
 AliABSOv3.cxx:851
 AliABSOv3.cxx:852
 AliABSOv3.cxx:853
 AliABSOv3.cxx:854
 AliABSOv3.cxx:855
 AliABSOv3.cxx:856
 AliABSOv3.cxx:857
 AliABSOv3.cxx:858
 AliABSOv3.cxx:859
 AliABSOv3.cxx:860
 AliABSOv3.cxx:861
 AliABSOv3.cxx:862
 AliABSOv3.cxx:863
 AliABSOv3.cxx:864
 AliABSOv3.cxx:865
 AliABSOv3.cxx:866
 AliABSOv3.cxx:867
 AliABSOv3.cxx:868
 AliABSOv3.cxx:869
 AliABSOv3.cxx:870
 AliABSOv3.cxx:871
 AliABSOv3.cxx:872
 AliABSOv3.cxx:873
 AliABSOv3.cxx:874
 AliABSOv3.cxx:875
 AliABSOv3.cxx:876
 AliABSOv3.cxx:877
 AliABSOv3.cxx:878
 AliABSOv3.cxx:879
 AliABSOv3.cxx:880
 AliABSOv3.cxx:881
 AliABSOv3.cxx:882
 AliABSOv3.cxx:883
 AliABSOv3.cxx:884
 AliABSOv3.cxx:885
 AliABSOv3.cxx:886
 AliABSOv3.cxx:887
 AliABSOv3.cxx:888
 AliABSOv3.cxx:889
 AliABSOv3.cxx:890
 AliABSOv3.cxx:891
 AliABSOv3.cxx:892
 AliABSOv3.cxx:893
 AliABSOv3.cxx:894
 AliABSOv3.cxx:895
 AliABSOv3.cxx:896
 AliABSOv3.cxx:897
 AliABSOv3.cxx:898
 AliABSOv3.cxx:899
 AliABSOv3.cxx:900
 AliABSOv3.cxx:901
 AliABSOv3.cxx:902
 AliABSOv3.cxx:903
 AliABSOv3.cxx:904
 AliABSOv3.cxx:905
 AliABSOv3.cxx:906
 AliABSOv3.cxx:907
 AliABSOv3.cxx:908
 AliABSOv3.cxx:909
 AliABSOv3.cxx:910