
! *** OPTICS=AD_ACCEL-14APR2025s ***

! LCLS2sc A-line

! ==============================================================================
! Modification History
! ------------------------------------------------------------------------------
! 14-MAR-2025, M. Woodley
!  * remove BSYA_1 area components (decommissioned)
!  * rename BSYA_2 area to BSYA; BSYA area begins at entrance to BRAM1
!  * define ESA area
! ------------------------------------------------------------------------------
! 31-MAR-2024, M. Woodley
!  * change Aline bend gap from 60 mm to 46 mm
! ------------------------------------------------------------------------------
! 31-MAR-2024, M. Woodley
!  * remove SCAPM2 (XCAPM2,YCAPM2)
!  * add YCDAS19 0.397 m d/s of XCDAS19
!  * comment ALINEa and ALINEb LINE's as decommissioned (DASEL uses ALINEc)
! ------------------------------------------------------------------------------
! 26-MAR-2019, M. Woodley
!  * split BSYA area into two subareas, BSYA_1 and BSYA_2
! ------------------------------------------------------------------------------
! 31-OCT-2018, Y. Nosochkov
!  * minor adjustment of DA04c drift length for DASEL with 25G kicker field
! 09-OCT-2018, M. Woodley
!  * add YCBSYA per D. McCormick
! ------------------------------------------------------------------------------
! 25-MAY-2018, M. Woodley
!  * change name of E158 bends in ESA to avoid redefinitions
! ------------------------------------------------------------------------------
! 07-FEB-2018, M. Woodley
!  * add TYPE designations for A-line magnets
! 05-FEB-2018, Y. Nosochkov
!  * minor optics rematch
! 25-JAN-2018, M. Woodley
!  * remove PCBSY2/BTMBSY2 per A. Ibrahimov
! ------------------------------------------------------------------------------
! 07-JUL-2017, Y. Nosochkov
!  * minor optics rematch for LCLS-II-HE
! ------------------------------------------------------------------------------
! 05-MAY-2017, M. Woodley
!  * remove deferral designations
!  * remove unused element definitions
!  * pulsed correctors XCAPM2/YCAPM2 will be timed to affect the straight-ahead
!    LTUH beam, but not the A-line beam
!  * extend line to 3PR2
! ------------------------------------------------------------------------------
! 02-MAR-2017, M. Woodley
!  * rename "SQ27.5" to SQ27p5 per G. White
!  * expand BSYA area to include entire A-line (up to End Station wall)
!  * add definitions for ABRDAS2 and TBRDAS2 (copied from DASEL.xsif)
! 24-FEB-2017, Y. Nosochkov
!  * merge with A-line deck containing diagnostic + E158 (from M. Woodley)
!  * rename rolled BKXAPM1-4 to BKRAPM1-4 (per naming convention)
!  * rename rolled BXAM1 to BRAM1 (per naming convention)
!  * remove ROLL4 S-rotation and replace it with BRAM1 tilt angle
!  * update ROLL2 value
!  * rename some parameters and drifts
!  * update definition of 2-hole DUMPBSYA copper collimator using two separate
!    collimators: for A-line (PCBSYA) and straight ahead BSY (PCBSYH)
!  * move PCBSYA/PCBSYH (formerly DUMPBSYA) 1.35 m upstream (D. McCormick)
!  * add deferred profile monitor PRBRAM1 and Cu target TGTBRAM1 upstream of
!    BRAM1 (D. McCormick)
!  * make the PRAPM profile monitor a YAG monitor (D. McCormick) and change
!    name to YAGAPM 
!  * add deferred corrector package XCAPM2/YCAPM2 to the pulsed magnets
!    (D. McCormick)
!  * change deferment level of new A-line components from @3 to @1
! ------------------------------------------------------------------------------
! 02-NOV-2016, Y. Nosochkov
!  * replace fast kicker/septum magnets with 120 Hz pulsed magnets (deferred)
!    for ESTB (D. McCormick, J. Amann)
!  * the pulsed magnets and other ESTB devices are not funded by LCLS-II (Paul)
!  * update eng. type of BXAM1 from 1.0D38.37 to 2.0D38.37 (J. Amann)
!  * move to baseline: PCBSY2, BTMBSY2
! ------------------------------------------------------------------------------
! 24-JUN-2016, Y. Nosochkov
!  * add deferred BPMCUA between A-line kicker and septum
!  * update the engineering type of BKYAL1,...,BKYAL5 kickers to
!    "0.787K35.4" (J. Amann)
! ------------------------------------------------------------------------------
! 26-FEB-2016, M. Woodley
!  * remove SEQnn MARKers
! 26-FEB-2016, Y. Nosochkov
!  * add BCS PCBSY2/BTMBSY2 at Z=3124 m (deferred @0) (S. Mao)
!  * increase distance between kickers from 15 cm to 30 cm
! ------------------------------------------------------------------------------
! 25-SEP-2015, Y. Nosochkov
!  * update definitions of kickers and septum to allow zero angle
! 24-AUG-2015, Y. Nosochkov
!  * update the TYPE of septum from 0.39SD38.98 to 0.625SD38.98 (J. Amann)
!  * adjust quad strengths for match to the updated BSY optics
!  * match geometry to the updated positions of A-line kicker & septum
! ------------------------------------------------------------------------------
! 20-MAR-2015, M. Woodley
!  * add SEQ21BEG, SEQ21END, BEGBSYA, ENDBSYA MARKERs
! 12-MAR-2015, Y. Nosochkov
!  * add fast kickers and septum (as in spreader) to deflect beam into A-line
!  * A-line optics based on original design per M. Woodley's deck
! ------------------------------------------------------------------------------

! NOTE: ABRDAS2 and TBRDAS2 are defined in common.xsif

! ==============================================================================
! dipoles
! ------------------------------------------------------------------------------

! A-line merge bend 

  GBRAM1 := 50.8E-3                         !2.0D38.37 gap height (m)
  SBRAM1 := 1.025                           !2.0D38.37 straight length (m)
  ABRAM1 := 0.23261117109E-2                !bend angle (rad)
  LBRAM1 := SBRAM1*ABRAM1/(2*SIN(ABRAM1/2)) !path length (m)
  TBRAM1 := 0.014303788803                  !bend roll (rad)

  BRAM1a : SBEN, TYPE="2.0D38.37", L=LBRAM1/2, ANGLE=ABRAM1/2, &
           E1=ABRAM1/2, E2=0, HGAP=GBRAM1/2, FINT=0.5, FINTX=0  , TILT=TBRAM1
  BRAM1b : SBEN, TYPE="2.0D38.37", L=LBRAM1/2, ANGLE=ABRAM1/2, &
           E2=ABRAM1/2, E1=0, HGAP=GBRAM1/2, FINT=0,   FINTX=0.5, TILT=TBRAM1

! define unsplit SBENs for BMAD ... not used by MAD

  BRAM1 : SBEN, TYPE="2.0D38.37", HGAP=GBRAM1/2, L=LBRAM1, ANGLE=ABRAM1, &
                E1=ABRAM1/2, FINT=0.5, E2=ABRAM1/2, FINTX=0.5, &
                TILT=TBRAM1

! A-bends

  AARC  := -24*RADDEG             !total arc bend angle (24 degrees)
  Nbend := 12                     !number of arc bends
 !ABA   := AARC/Nbend             !nominal arc bend angle
  ABA   := -1.999526617334*RADDEG !arc bend angle per Transport deck

  LBA := 3.024
  GBA := 0.046 !50 GeV upgrade value

  B11a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B11b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B12a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B12b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B13a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B13b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B14a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B14b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B15a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B15b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B16a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B16b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B21a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B21b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B22a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B22b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B23a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B23b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B24a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B24b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B25a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B25b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"
  B26a : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E1=ABA/2, FINT=0.5, FINTX=0, &
               TYPE="Aline_bend"
  B26b : SBEN, L=LBA/2, HGAP=GBA/2, ANGLE=ABA/2, E2=ABA/2, FINT=0, FINTX=0.5, &
               TYPE="Aline_bend"

! define unsplit SBENs for BMAD ... not used by MAD

  B11 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B12 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B13 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B14 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B15 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B16 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B21 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B22 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B23 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B24 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B25 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5
  B26 : SBEN, TYPE="Aline_bend", HGAP=GBA/2, L=LBA, ANGLE=ABA, &
              E1=ABA/2, FINT=0.5, E2=ABA/2, FINTX=0.5

! ESA bends (E158)

  LD1S := 1.83
  LD2S := 3.45
  LD3S := 3.45

  AD1S :=  0.022344631354
  AD2S := -0.044690490267
  AD3S :=  0.022345239962

  BXD1Sa : SBEN ,L=LD1S/2, ANGLE=AD1S/2, FINT=0, FINTX=0
  BXD1Sb : SBEN ,L=LD1S/2, ANGLE=AD1S/2, FINT=0, FINTX=0
  BXD2Sa : SBEN ,L=LD2S/2, ANGLE=AD2S/2, FINT=0, FINTX=0
  BXD2Sb : SBEN ,L=LD2S/2, ANGLE=AD2S/2, FINT=0, FINTX=0
  BXD3Sa : SBEN ,L=LD3S/2, ANGLE=AD3S/2, FINT=0, FINTX=0
  BXD3Sb : SBEN ,L=LD3S/2, ANGLE=AD3S/2, FINT=0, FINTX=0

! define unsplit SBENs for BMAD ... not used by MAD

  BXD1S : SBEN ,L=LD1S, ANGLE=AD1S, FINT=0, FINTX=0
  BXD2S : SBEN ,L=LD2S, ANGLE=AD2S, FINT=0, FINTX=0
  BXD3S : SBEN ,L=LD3S, ANGLE=AD3S, FINT=0, FINTX=0

! ==============================================================================
! quadrupoles
! ------------------------------------------------------------------------------

  LQ8cm := 2.0
  rQ8cm := 0.08/2
  LQ19  := 2.0
  rQ19  := 0.186/2
  LQ20  := 1.31318
  rQ20  := 8.25*0.0254/2
  LSQ   := 0.55
  rSQ   := 0.08/2

! the K-values below are for DASEL (the only connection to ALINE)

  KQ10 :=  0.040946131243
  KQ11 := -0.038135136057
  KQ19 :=  0.030837113549
  KQ20 :=  0.146624351215E-2
  KQ27 := -0.083919622056
  KQ28 :=  0.03548040664
  KQ30 := -0.028849559713
  KQ38 :=  0.034487458519

  Q10 : QUAD, L=LQ8cm/2, APER=rQ8cm, K1=KQ10, TYPE="Aline_Q8cm"
  Q11 : QUAD, L=LQ8cm/2, APER=rQ8cm, K1=KQ11, TYPE="Aline_Q8cm"
  Q19 : QUAD, L=LQ19/2,  APER=rQ19,  K1=KQ19, TYPE="Aline_Q19"
  Q20 : QUAD, L=LQ20/2,  APER=rQ20,  K1=KQ20, TYPE="Aline_Q20"
  Q27 : QUAD, L=LQ8cm/2, APER=rQ8cm, K1=KQ27, TYPE="Aline_Q8cm"
  Q28 : QUAD, L=LQ8cm/2, APER=rQ8cm, K1=KQ28, TYPE="Aline_Q8cm"
  Q30 : QUAD, L=LQ8cm/2, APER=rQ8cm, K1=KQ30, TYPE="Aline_Q8cm"
  Q38 : QUAD, L=LQ8cm/2, APER=rQ8cm, K1=KQ38, TYPE="Aline_Q8cm"

  KSQ := 0.0

  SQ27p5 : QUAD, L=LSQ/2, APER=rSQ, K1=KSQ, TILT, TYPE="Aline_SQ27"

! ESA quads (E158)

  LQSA := 1.327
  rQSA := 193.0e-3

! E158 run value (P. Bosted)

  KQ1SA :=  0.016723215505
  KQ2SA := -0.031838409505
  KQ3SA :=  0.031838409505
  KQ4SA := -0.016080013116

  Q1S : QUAD, L=LQSA/2, K1=KQ1SA, APER=rQSA
  Q2S : QUAD, L=LQSA/2, K1=KQ2SA, APER=rQSA
  Q3S : QUAD, L=LQSA/2, K1=KQ3SA, APER=rQSA
  Q4S : QUAD, L=LQSA/2, K1=KQ4SA, APER=rQSA

! ==============================================================================
! drifts
! ------------------------------------------------------------------------------

  DAMQ10 : DRIF, L=0.9875
  D105   : DRIF, L=5.5372
  D106   : DRIF, L=0.727
  D107   : DRIF, L=0.7755
  D108   : DRIF, L=3.84839
  D109   : DRIF, L=0.7755
  D110   : DRIF, L=3.84839
  D111   : DRIF, L=0.7755
  D112   : DRIF, L=15.74899
  D113   : DRIF, L=9.0997
  D114   : DRIF, L=5.94572
  D115   : DRIF, L=0.7755
  D116   : DRIF, L=3.84839
  D117   : DRIF, L=0.7755
  D118   : DRIF, L=3.84839
  D119   : DRIF, L=0.7755
  D120   : DRIF, L=1.744768 !1.74477
  D121   : DRIF, L=1.525
  D122   : DRIF, L=1.925
  D123   : DRIF, L=38.1116
  D124   : DRIF, L=21.4778
  D125   : DRIF, L=5.04065
  DPR2   : DRIF, L=12.25174 !wall to 3PR2 in ESA alcove

  D201   : DRIF, L=20.44174-DPR2[L]
  D202   : DRIF, L=2.5
  D203   : DRIF, L=1.69
  D204   : DRIF, L=1.4865
  D205   : DRIF, L=1.413
  D206   : DRIF, L=2.603
  D207   : DRIF, L=1.013
  D208   : DRIF, L=31.04932
  D209   : DRIF, L=92.118

! drifts for diagnostic and correction devices

  comment
  D002a : DRIF, L=0.090479
  D002b : DRIF, L=1.654993
  D002c : DRIF, L=0.0184
  D002d : DRIF, L=2.466807
  D002e : DRIF, L=0.34925
  D002f : DRIF, L=4.3434
  D002g : DRIF, L=6.213125
  D002h : DRIF, L=0.3429
  D002i : DRIF, L=0.447449
  D003a : DRIF, L=0.128016
  D003b : DRIF, L=1.609344
  D003c : DRIF, L=0.331248
  D003d : DRIF, L=0.628073
  D003e : DRIF, L=0.2286
  D003f : DRIF, L=0.4826
  D003g : DRIF, L=0.3556
  D003h : DRIF, L=0.415546
  D004a : DRIF, L=0.204216
  D004b : DRIF, L=0.581559
  D005a : DRIF, L=0.762
  D005b : DRIF, L=2.329
  D005c : DRIF, L=5.402548

  D101a : DRIF, L=7.405675
  D101b : DRIF, L=3.2853
  D101c : DRIF, L=0.635
  D101d : DRIF, L=0.787
  D101e : DRIF, L=0.534
  D101f : DRIF, L=0.813
  D101g : DRIF, L=0.685
  D101h : DRIF, L=0.61
  D101i : DRIF, L=1.27
  D101j : DRIF, L=1.778
  D101k : DRIF, L=0.457
  D101l : DRIF, L=0.153
  D101m : DRIF, L=0.177
  D101n : DRIF, L=0.483
  D101o : DRIF, L=0.483
  D101p : DRIF, L=0.587
  PMV   : DRIF, L=0.4
  D101q : DRIF, L=0.589942
  D102a : DRIF, L=1.06296
  PM    : DRIF, L=7.0
  D102b : DRIF, L=1.06296
  D103a : DRIF, L=66.20934
  D103b : DRIF, L=0.615959
  D103c : DRIF, L=2.850589
  D103d : DRIF, L=0.15875
  endcomment

  D105a  : DRIF, L=0.808
  D105b  : DRIF, L=0.38
  D105c  : DRIF, L=0.478
  D105d  : DRIF, L=0.628
  D105e  : DRIF, L=0.684
  D105f  : DRIF, L=0.62
  D105g  : DRIF, L=0.88
  D105h  : DRIF, L=0.668
  D105i  : DRIF, L=0.3912
  D108a  : DRIF, L=0.829
  D108b  : DRIF, L=0.785
  D108c  : DRIF, L=2.23439
  D110a  : DRIF, L=2.98539
  D110b  : DRIF, L=0.863
  D112a  : DRIF, L=7.4348
  D112b  : DRIF, L=3.19319
  D112c  : DRIF, L=1.159
  D112d  : DRIF, L=1.302
  D112e  : DRIF, L=1.264
  D112f  : DRIF, L=0.723
  D112g  : DRIF, L=0.673
  D113a  : DRIF, L=1.32
  D113b  : DRIF, L=1.981
  D113c  : DRIF, L=5.7987
  D114a  : DRIF, L=4.47
  D114b  : DRIF, L=0.775
  D114c  : DRIF, L=0.70072
  D116a  : DRIF, L=2.81239
  D116b  : DRIF, L=1.036
  D118a  : DRIF, L=0.65139
  D118b  : DRIF, L=0.707
  D118c  : DRIF, L=1.131
  D118d  : DRIF, L=0.501
  D118e  : DRIF, L=0.858
  D120b  : DRIF, L=0.35
  D120c  : DRIF, L=0.513
  D120a  : DRIF, L=D120[L]-D120b[L]-D120c[L] !0.881768
  D123a  : DRIF, L=0.655
  D123b  : DRIF, L=0.673
  D123c  : DRIF, L=0.644
  D123d  : DRIF, L=0.657
  D123e  : DRIF, L=0.816
  D123f  : DRIF, L=0.445
  D123g  : DRIF, L=0.844
  D123h  : DRIF, L=31.9656
  D123i  : DRIF, L=0.729
  D123j  : DRIF, L=0.683
  D124a  : DRIF, L=0.629
  D124b  : DRIF, L=0.381
  D124c  : DRIF, L=0.635
  D124d  : DRIF, L=0.559
  D124e  : DRIF, L=1.041
  D124f  : DRIF, L=16.5857
  D124g  : DRIF, L=1.6471

! ==============================================================================
! coordinate rolls ... bend plane rotated to remove linac slope
! ------------------------------------------------------------------------------

  ROLLON := 1.0

! original A-line values

 !ROLL1 : SROT, ANGLE= 0.014303845885    * ROLLON
 !ROLL2 : SROT, ANGLE=-0.393462907527E-2 * ROLLON
 !ROLL3 : SROT, ANGLE=-0.011395368282    * ROLLON

! new values

 !ROLL4 : SROT, ANGLE= 0.014303788803    * ROLLON
 !ROLL2 : SROT, ANGLE=-0.399639784046E-2 * ROLLON
 !ROLL3 : SROT, ANGLE= 0.0               * ROLLON !no ROLL3 per alignment group

  ROLL2 : SROT, ANGLE=(0.014303788803-0.399639784046E-2) * ROLLON
  ROLL3 : SROT, ANGLE= 0.0 * ROLLON !no ROLL3 per alignment group

! ==============================================================================
! XCORs and YCORs
! ------------------------------------------------------------------------------

  A28X   : HKIC
  A32X   : HKIC

  A10Y    : VKIC
  A18Y    : VKIC
  A29Y    : VKIC
  A33Y    : VKIC

! ==============================================================================
! BPMs
! ------------------------------------------------------------------------------

! rename BPM10 and BPM12 to avoid conflicts

  BPM10A : MONI
  BPM12A : MONI
  BPM17  : MONI
  BPM24  : MONI
  BPM28  : MONI
  BPM31  : MONI
  BPM32  : MONI

! ==============================================================================
! profile monitors, wire scanners, wire arrays, synchrotron light ports, 
! spectrum foils, burn-through monitors, and Cu-target
! ------------------------------------------------------------------------------

  PR10 : PROF
  SYNC : INST
  PR18 : PROF
  SP18 : INST
  PR20 : PROF
  PR28 : PROF
  PR33 : PROF

! ==============================================================================
! toroids and beam charge monitors
! ------------------------------------------------------------------------------

  I10 : IMON
  I11 : IMON
  I24 : IMON
  I28 : IMON
  I29 : IMON

! ==============================================================================
! collimators and slits
! ------------------------------------------------------------------------------

  PC10 : ECOL
  PC12 : ECOL
  PC14 : ECOL
  PC17 : ECOL
  SL19 : RCOL
  SL10 : RCOL
  PC20 : ECOL
  PC24 : ECOL
  C24  : RCOL
  PC26 : ECOL
  PC29 : ECOL
  C37  : RCOL

! ==============================================================================
! vacuum components
! ------------------------------------------------------------------------------

  IV10 : MARK
  FV10 : MARK
  IV26 : MARK
  FV28 : MARK

! ==============================================================================
! points of interest
! ------------------------------------------------------------------------------

  BEGB      : MARK !start of A-line bending
  ST22      : MARK !beam stopper
  MARC      : MARK !match point
  ENDB      : MARK !end of A-line bending (final emittance)
  ST29      : MARK !beam stopper
  ALWALL    : MARK !upstream face of wall that separates A-line tunnel from alcove
  ESAE      : MARK !east wall of ESA
  BMDE      : MARK !Beam Dump East

! ==============================================================================
! beamlines
! ------------------------------------------------------------------------------

  BRAM1_full   : LINE=(BRAM1a,BRAM1b)
  B11_full     : LINE=(B11a,B11b)
  B12_full     : LINE=(B12a,B12b)
  B13_full     : LINE=(B13a,B13b)
  B14_full     : LINE=(B14a,B14b)
  B15_full     : LINE=(B15a,B15b)
  B16_full     : LINE=(B16a,B16b)
  B21_full     : LINE=(B21a,B21b)
  B22_full     : LINE=(B22a,B22b)
  B23_full     : LINE=(B23a,B23b)
  B24_full     : LINE=(B24a,B24b)
  B25_full     : LINE=(B25a,B25b)
  B26_full     : LINE=(B26a,B26b)
  BXD1S_full   : LINE=(BXD1Sa,BXD1Sb)
  BXD2S_full   : LINE=(BXD2Sa,BXD2Sb)
  BXD3S_full   : LINE=(BXD3Sa,BXD3Sb)

  Q10_full    : LINE=(Q10,Q10)
  Q11_full    : LINE=(Q11,Q11)
  Q19_full    : LINE=(Q19,Q19)
  Q20_full    : LINE=(Q20,Q20)
  Q27_full    : LINE=(Q27,Q27)
  SQ27p5_full : LINE=(SQ27p5,SQ27p5)
  Q28_full    : LINE=(Q28,Q28)
  Q30_full    : LINE=(Q30,Q30)
  Q38_full    : LINE=(Q38,Q38)
  Q1S_full    : LINE=(Q1S,Q1S)
  Q2S_full    : LINE=(Q2S,Q2S)
  Q3S_full    : LINE=(Q3S,Q3S)
  Q4S_full    : LINE=(Q4S,Q4S)

  LD105 : LINE=(&
    D105a,PC10,D105b,IV10,D105c,FV10,D105d,BPM10A,D105e,I10,D105f,PR10,D105g,&
    A10Y,D105h,I11,D105i)
  LD108 : LINE=(D108a,PC12,D108b,BPM12A,D108c)
  LD110 : LINE=(D110a,PC14,D110b)
  LD112 : LINE=(&
    D112a,SYNC,D112b,PC17,D112c,BPM17,D112d,A18Y,D112e,PR18,D112f,SP18,D112g)
  LD113 : LINE=(D113a,SL19,D113b,SL10,D113c)
  LD114 : LINE=(D114a,PC20,D114b,PR20,D114c)
  LD116 : LINE=(D116a,ST22,D116b)
  LD118 : LINE=(D118a,PC24,D118b,BPM24,D118c,I24,D118d,C24,D118e)
  LD120 : LINE=(D120a,PC26,D120b,IV26,D120c)
  LD123 : LINE=(&
    D123a,FV28,D123b,BPM28,D123c,I28,D123d,PR28,D123e,A28X,D123f,A29Y,D123g,&
    ST29,D123h,PC29,D123i,I29,D123j)
  LD124 : LINE=(&
    D124a,A32X,D124b,A33Y,D124c,BPM31,D124d,BPM32,D124e,PR33,D124f,C37,D124g)

! A-line

  BSYA : LINE=(BEGBSYA,&
    BRAM1_full,ROLL2,DAMQ10,&
    Q10_full,LD105,&
    Q11_full,D106,&
    BEGB,&
    B11_full,D107,&
    B12_full,LD108,&
    B13_full,D109,&
    B14_full,LD110,&
    B15_full,D111,&
    B16_full,LD112,&
    Q19_full,LD113,&
    Q20_full,LD114,&
    B21_full,D115,&
    B22_full,LD116,&
    B23_full,D117,&
    B24_full,LD118,&
    B25_full,D119,&
    B26_full,MARC,ROLL3,&
    ENDB,LD120,&
    Q27_full,D121,&
    SQ27p5_full,D122,&
    Q28_full,LD123,&
    Q30_full,LD124,&
    Q38_full,D125,ALWALL,DPR2,&
    ENDBSYA)

! End Station A

  ESA : LINE=(BEGESA,D201,&
    BXD1S_full,D202,&
    BXD2S_full,D203,&
    BXD3S_full,D204,&
    Q1S_full,D205,&
    Q2S_full,D206,&
    Q3S_full,D207,&
    Q4S_full,D208,&
    ESAE,D209,BMDE,&
    ENDESA)

  ALINE : LINE=(BSYA,ESA)

! ------------------------------------------------------------------------------

  RETURN
