
	.section	".text",#alloc,#execinstr
	.align	8
	.skip	16

	! block 0

	.global	MAIN_
	.type	MAIN_,2
MAIN_:
	save	%sp,-280,%sp

	! block 1
.L313:
	sethi	%hi(GPC.MAINEQUIV1_12+4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_12+4),%l0
	st	%l0,[%fp-60]
	sethi	%hi(GPC.MAINEQUIV1_12-4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_12-4),%l0
	st	%l0,[%fp-56]
	sethi	%hi(readst_+12),%l0
	or	%l0,%lo(readst_+12),%l0
	st	%l0,[%fp-84]
	sethi	%hi(readst_-4),%l0
	or	%l0,%lo(readst_-4),%l0
	st	%l0,[%fp-80]
	sethi	%hi(GPC.MAINEQUIV1_13-4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_13-4),%l0
	st	%l0,[%fp-100]
	sethi	%hi(GPC.MAINEQUIV1_4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_4),%l0
	st	%l0,[%fp-32]
	sethi	%hi(GPC.MAINEQUIV1_5-4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_5-4),%l0
	st	%l0,[%fp-36]
	sethi	%hi(GPC.MAINEQUIV1_7),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_7),%l0
	st	%l0,[%fp-52]
	sethi	%hi(readst_+3588),%l0
	or	%l0,%lo(readst_+3588),%l0
	st	%l0,[%fp-44]
	sethi	%hi(GPC.MAINEQUIV1_12),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_12),%l0
	st	%l0,[%fp-28]
	sethi	%hi(GPB.MAIN.ilim-4),%l0
	or	%l0,%lo(GPB.MAIN.ilim-4),%l0
	st	%l0,[%fp-20]
	sethi	%hi(GPC.MAINEQUIV1_13-4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_13-4),%l0
	st	%l0,[%fp-96]
	sethi	%hi(GPC.MAINEQUIV1_2+4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_2+4),%l0
	st	%l0,[%fp-92]
	sethi	%hi(GPC.MAINEQUIV1_2-4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_2-4),%l0
	st	%l0,[%fp-88]
	sethi	%hi(GPC.MAINEQUIV1_7+4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_7+4),%l0
	st	%l0,[%fp-76]
	sethi	%hi(GPC.MAINEQUIV1_7-4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_7-4),%l0
	st	%l0,[%fp-68]
	sethi	%hi(readst_+4),%l0
	or	%l0,%lo(readst_+4),%l0
	st	%l0,[%fp-24]
	sethi	%hi(GPC.MAINEQUIV1_4+4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_4+4),%l0
	st	%l0,[%fp-72]
	sethi	%hi(GPB.MAIN.hftofl-4),%l0
	or	%l0,%lo(GPB.MAIN.hftofl-4),%l0
	st	%l0,[%fp-48]
	sethi	%hi(GPC.MAINEQUIV1_4-4),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_4-4),%l0
	st	%l0,[%fp-64]
	sethi	%hi(GPC.MAINEQUIV1_2),%l0
	or	%l0,%lo(GPC.MAINEQUIV1_2),%l0
	st	%l0,[%fp-40]

	! block 2
.L11:

! File impanal.f:
!    1	* Thu May 31 13:43:47 EDT 1990 /plas0/h1/pam/src/test impanal.f
!    2	cMEMBER NAME  impanal.f 
!    3	C ******THE NAME OF THIS PROGRAM IS IMPANAL**********************
!    4	C    IMPAN17
!    5	C    DERIVES PLASMA PARAMETERS FROM XTK OUTPUT TAPES.        22 JUN 75.
!    6	C
!    7	C    IMP7 AND IMP8 ANALYSIS PROGRAM.
!    8	C
!    9	C    THIS IS THE MAIN DRIVER.  IT CALLS READST AND GSKIP.
!   10	C
!   11	C    PGM INTENDED TO BE APPLIED INDIFFERENTLY TO PASS1 OR DOGGEREL OR
!   12	C    EXEDRE OR IMPXTK OUTPUT TAPES FROM IMP7 OR IMP8.
!   13	C
!   14	C    FOR PASS1 OUTPUT TAPES THE HISTORICAL (PRE-1975) READST ROUTINE IS
!   15	C    TO BE SUPPLIED; FOR XTK OUTPUT, THE IMPCOR VERSION OF READST.
!   16	C
!   17	      COMMON /IMPANW/ VEST, WEST, DEST, AEST, BEST, VFIT, WFIT, DFIT,
!   18	     2                AFIT, BFIT, VINT, WINT, DINT, AINT, BINT, RATIO,
!   19	     3                CMAX, SUMI, SUMIV, DENSUM, BSUM, BNORM, SUM1,
!   20	     4                SUM2, WEST2, SUMA, SUMAB
!   21	C                        WORK AREA FOR COLLOCATION OF VARIABLES
!   22	C                        FREQUENTLY RESET TO ZERO.
!   23	      COMMON /READST/ MODE,LVL1,MATRIX(2,14,26),EMATRX(8,21),ITIME(7)
!   24	      COMMON /PROC/ JJMODE, ICMST, ISTS, IPSEL, ISN, REC (1024)
!   25	C
!   26	      INTEGER *4 ABOT, ATOP, EBOT, ETOP
!   27	C                        LOWER AND UPPER BOUNDS FOR ANGLE AND ENERGY
!   28	C                        DEFINING "BOX."
!   29	C
!   30	      integer *4 ILIM(3) 
!   31	C                        SECTOR NUMBER UPPER LIMIT FOR PEAK SEARCH :
!   32	C                        AMS, TMS, NTM.  SECTORS HAVE BEEN ROTATED.
!   33	C
!   34	      real *4 bbar (14, 3)
!   35	          REAL *4 BBAR2  (42)
!   36	      EQUIVALENCE (BBAR(1,1), BBAR2(1))
!   37	          REAL *4 BBARM1 (42), BBARP1 (42)
!   38	      EQUIVALENCE (BBARM1 (2), BBAR2 (1)), (BBARP1 (1), BBAR2 (2))
!   39	C
!   40	      REAL *4 BSUMS  (26)
!   41	C                        ONE FOR EACH ENERGY LEVEL.
!   42	          REAL *4 BSUMM1 (26), BSUMP1 (26)
!   43	      EQUIVALENCE (BSUMM1 (2), BSUMS (1)), (BSUMP1 (1), BSUMS (2))
!   44	c
!   45	      real *4 x, bwidth( 14, 3 ), dnorm, dv(26), hftofl(45), vbar(26)
!   46	      real *4 bwid (42)
!   47	      EQUIVALENCE (BWID (1), BWIDTH (1,1))
!   48	C    DENCUR, ARGUMENT TO DENSITY ALGORITHM, IS PRODUCT OF BWIDTH AND
!   49	C    CURRENT RETURNED BY READST.
!   50	C                        WIDTH OF ENERGY CHANNELS.  KM/SEC.
!   51	          REAL *4 DVM1   (26), DVP1 (26)
!   52	      EQUIVALENCE (DVM1 (2), DV (1)), (DVP1 (1), DV (2))
!   53	C
!   54	      REAL MATRIX
!   55	      LOGICAL EOD
!   56	C                        FOR ROTATED PROTON SPECTRA.  ADDRESS IS
!   57	C                        ARGUMENT TO READST, WHICH LOADS IT WITH DATA
!   58	C                        FROM TAPE.
!   59	
!   60	          REAL *4 MATMAT (728)
!   61	      EQUIVALENCE (MATMAT (1), MATRIX (1,1,1))
!   62	          REAL *4 MATMM2 (728), MATMP2 (728)
!   63	      EQUIVALENCE (MATMM2 (3), MATMAT (1)), (MATMP2 (1), MATMAT (3))
!   64	          real * 4 resp
!   65	          REAL *4 VBARM1 (26), VBARP1 (26), vbar(26)
!   66	      EQUIVALENCE (VBARM1 (2), VBAR (1)), (VBARP1 (1), VBAR (2))
!   67	C
!   68	      real*4 warray(23)
!   69	      integer*4 iarray(8)
!   70	      equivalence (iarray(1), warray(1))
!   71	      character*4 wout
!   72	c
!   73	      data wout /'ft23'/
!   74	      data ILIM     /14, 14, 8/
!   75	C                        SECTOR NUMBER UPPER LIMIT FOR PEAK SEARCH :
!   76	C                        AMS, TMS, NTM.  SECTORS HAVE BEEN ROTATED.
!   77	C
!   78	C
!   79	      data BBAR /-157.5,  -112.5,  -71.72, -39.375, -28.125,
!   80	     2           -16.875,  -5.625,  5.625, 16.875,
!   81	     3            28.125,  39.375, 67.5,  112.5,   157.5,
!   82	     4
!   83	     5           -157.5,  -112.5,  -71.72, -39.375, -28.125,
!   84	     6           -16.875,  -5.625,  5.625, 16.875,
!   85	     7            28.125,  39.375, 67.5,  112.5,   157.5,
!   86	     8
!   87	     9           -157.5,  -112.5,  -71.72, -22.5,    22.5,
!   88	     A            67.5,   112.5,  157.5,  6 * 0.0/
!   89	C                        ROTATED AVERAGE BETA, S/C EQUATORIAL LONGITUDE
!   90	C                        OF CENTERS OF SCAN SECTORS.
!   91	C
!   92	          data   X/1.0702E-5/
!   93	C
!   94	      data    BWIDTH /2 * 45.0, 40.68, 8 * 11.25, 3 * 45.0,
!   95	     2                2 * 45.0, 40.68, 8 * 11.25, 3 * 45.0,
!   96	     3                7 * 45., 40.68, 6 * 0./
!   97	C                        WIDTH IN DEGREES OF ROTATED SECTORS.
!   98	C
!   99	          data  DNORM  /.09527/
!  100	C                        WHATSIT ?
!  101	C
!  102	      data  DV /20.8, 17.2, 15.3, 19.0, 17.0, 20.0, 19.0, 14.0,
!  103	     2     21.0, 22.0, 26.0, 35.0, 33.0, 31.0, 36.0, 38.0, 44.0, 45.0,
!  104	     3     51.0, 55.0, 62.0, 73.0, 79.0, 95.0, 95.0, 106.0/
!  105	C  
!  106	C
!  107	CX            FOR STORING ELECTRON SPECTRA.  ADDRESS IS ARGUMENT TO
!  108	CX            READST, WHICH LOADS IT WITH DATA FROM TAPE.
!  109	C
!  110	      data  HFTOFL  /0.000, 0.015, 0.044, 0.076, 0.107, 0.138,
!  111	     2               0.168, 0.196, 0.224, 0.250, 0.276, 0.300,
!  112	     3               0.323, 0.346, 0.367, 0.387, 0.406, 0.425,
!  113	     4               0.443, 0.460, 0.476, 0.491, 0.500, 0.509,
!  114	     5               0.524, 0.541, 0.557, 0.575, 0.594, 0.613,
!  115	     6               0.633, 0.654, 0.677, 0.700, 0.724, 0.750,
!  116	     7               0.776, 0.804, 0.832, 0.862, 0.892, 0.924,
!  117	     8               0.956, 0.985, 1.000/
!  118	C* HFTOFL(ANGLE)  HALF TO FULL RATIO OF TWO COLLECTOR PLATES
!  119	C* FROM NUMERICAL INTEGRATION;.5 IS NORMAL INCIDENCE ALPHA=0
!  120	C* TABLE STARTS WITH NEGATIVE ANGLES;2 DEGFEES INCREMENTS
!  121	C* THIS HAS ASSUMED A COLD WIND WITH EVERYTHING TURNED OFF;PURE GEOMETRY
!  122	C
!  123	          data  RESP   /1./
!  124	C                        ?
!  125	C
!  126	      data    VBAR  /85.8, 97.5, 106.0, 117.0, 129.0, 143.0, 159.0,
!  127	     2               175.0, 193.0, 214.0, 234.0, 262.0, 291.0,
!  128	     3               321.0, 356.0, 396.0, 437.0, 485.0, 538.0,
!  129	     4               597.0, 660.0, 735.0, 816.0, 901.0, 1001.0,
!  130	     5               1097.0/
!  131	C                        MEAN VELOCITY OF ENERGY CHANNELS.  KM /SEC.
!  132	C
!  133	C =====================================================================
!  134	c         initialize unit 15 for IMPCOR's use
!  135	      call initio (1, 15, ijk)

	sethi	%hi(.L_cseg0),%l0
	or	%l0,%lo(.L_cseg0),%l0
	sethi	%hi(.L_cseg1),%l1
	or	%l1,%lo(.L_cseg1),%l1
	sethi	%hi(GPB.MAIN.ijk),%l2
	or	%l2,%lo(GPB.MAIN.ijk),%l2
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	call	initio_
	nop

!  136	      ITALLY = 0

	mov	0,%l1
	sethi	%hi(GPB.MAIN.itally),%l0
	or	%l0,%lo(GPB.MAIN.itally),%l0
	st	%l1,[%l0+0]

	! block 3
.L22:

!  137	   10 CALL IMPCOR(EOD,0,0,0,0,0,0,1)

	sethi	%hi(GPB.MAIN.eod),%l0
	or	%l0,%lo(GPB.MAIN.eod),%l0
	sethi	%hi(.L_cseg2),%l1
	or	%l1,%lo(.L_cseg2),%l1
	sethi	%hi(.L_cseg2),%l2
	or	%l2,%lo(.L_cseg2),%l2
	sethi	%hi(.L_cseg2),%l3
	or	%l3,%lo(.L_cseg2),%l3
	sethi	%hi(.L_cseg2),%l5
	or	%l5,%lo(.L_cseg2),%l5
	sethi	%hi(.L_cseg2),%l6
	or	%l6,%lo(.L_cseg2),%l6
	sethi	%hi(.L_cseg2),%l7
	or	%l7,%lo(.L_cseg2),%l7
	sethi	%hi(.L_cseg0),%l4
	or	%l4,%lo(.L_cseg0),%l4
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	mov	%l5,%o4
	mov	%l6,%o5
	st	%l7,[%sp+92]
	st	%l4,[%sp+96]
	call	impcor_
	nop

!  138	c     if (eod) close(2)
!  139	      IF (EOD)  then

	sethi	%hi(GPB.MAIN.eod),%l0
	or	%l0,%lo(GPB.MAIN.eod),%l0
	ld	[%l0+0],%l0
	cmp	%l0,%g0
	be	.L23
	nop

	! block 4
.L24:

!  140	        call tmark (wout)

	sethi	%hi(GPB.MAIN.wout),%l0
	or	%l0,%lo(GPB.MAIN.wout),%l0
	mov	4,%l1
	mov	%l0,%o0
	mov	%l1,%o1
	call	tmark_
	nop

!  141	        call tmark (wout)

	sethi	%hi(GPB.MAIN.wout),%l0
	or	%l0,%lo(GPB.MAIN.wout),%l0
	mov	4,%l1
	mov	%l0,%o0
	mov	%l1,%o1
	call	tmark_
	nop

!  142	c       CALL EXIT
!  143	        stop

	sethi	%hi(.L_cseg3),%l0
	or	%l0,%lo(.L_cseg3),%l0
	mov	0,%l1
	mov	%l0,%o0
	mov	%l1,%o1
	call	__s_stop
	nop

!  144	      else

	ba	.L25
	nop

	! block 5
.L23:

!  145	      endif

.L25:

!  146	C
!  147	C     RETURNS WITH MODE=1=AC=ACQUISITION,
!  148	C                  MODE=2=TR=TRACKING,
!  149	C                  MODE=3=NT=NON-TRACKING,
!  150	C                  MODE=4=CL=CALIBRATION.
!  151	C                  MODE=5=BD=ANOMOLOUS SPECTRUM.
!  152	C
!  153	C    STORAGE FORMATS ARE
!  154	C     MODE 1, MATRIX(2,14,24),  EMATRX(8,21)
!  155	C     MODE 2, MATRIX(2,14,8),   EMATRX(8,2)
!  156	C     MODE 3, MATRIX(1,8,24),   EMATRX(8,21)
!  157	C
!  158	C    THESE CORRESPOND TO
!  159	C    MATRIX (A+B/B, ANGLE, ENERGY) AND EMATRX (ANGLE, ENERGY).
!  160	C
!  161	C    PROTON SPECTRA HAVE BEEN ROTATED TO MAKE THEM SYMMETRIC WITH
!  162	C    RESPECT TO THE SUN'S DIRECTION.
!  163	C
!  164	C     NOTE THAT MODE 3 HAS A+B ONLY.
!  165	C
!  166	               IF (MODE) 110, 110, 120

	sethi	%hi(readst_),%l0
	or	%l0,%lo(readst_),%l0
	ld	[%l0+0],%l0
	cmp	%l0,0
	bg	.L27
	nop

	! block 6
.L28:
.L26:

!  167	C  11 IF(MODE.GE.5)PRINT 2250,MODE,ITIME
!  168	  110 CONTINUE


!  169	               GO TO 10

	ba	.L22
	nop

	! block 7
.L27:

!  170	  120          IF (MODE - 5) 130, 130, 110

	sethi	%hi(readst_),%l0
	or	%l0,%lo(readst_),%l0
	ld	[%l0+0],%l0
	add	%l0,-5,%l0
	cmp	%l0,0
	bg	.L26
	nop

	! block 8
.L30:
.L29:

!  171	C
!  172	  130 MODSWI = MODE - 2

	sethi	%hi(readst_),%l0
	or	%l0,%lo(readst_),%l0
	ld	[%l0+0],%l0
	add	%l0,-2,%l1
	sethi	%hi(GPB.MAIN.modswi),%l0
	or	%l0,%lo(GPB.MAIN.modswi),%l0
	st	%l1,[%l0+0]

!  173	C
!  174	C    INITIALIZE VARIABLES TO BE OUTPUT TO TAPE.
!  175	C
!  176	CX   V     BULK VELOCITY.
!  177	CX   W     THERMAL SPEED.
!  178	CX   D     DENSITY.
!  179	CX   A     ALPHA.  S/C EQUATORIAL LATITUDE.
!  180	CX   B     BETA.  S/C EQUATORIAL LONGITUDE.
!  181	C
!  182	C* -EST  WEIGHTED SUM
!  183	C* -FIT  3-POINT CURVE FIT
!  184	C  -INT  FLUX SUMMARY, S/C EQUATORIAL LONGITUDE.
!  185	C* NOTE DEFINITION OF VINT,WINT,DINT,AINT,BINT
!  186	C* VINT -45 TO 45
!  187	C* WINT 45 TO 135  S/C LONGITUDE
!  188	C* DINT 135 TO -135
!  189	C* AINT -135 TO -45
!  190	C
!  191	C*   BINT GIVES LEVEL OF PEAK : UNITS--ANGLE TOP, TENS--ANGLE BOTTOM,
!  192	C*   HUNDREDS--ENERGY TOP, THOUSANDS--ENERGY BOTTOM.
!  193	C
!  194	C    ZERO /IMPANW/.
!  195	        VEST = 0.

	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+0]

!  196	               CALL MVC (VEST, WEST, 104)

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	sethi	%hi(impanw_+4),%l1
	or	%l1,%lo(impanw_+4),%l1
	sethi	%hi(.L_cseg4),%l2
	or	%l2,%lo(.L_cseg4),%l2
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	call	mvc_
	nop

!  197	        AEST = -100.

	sethi	%hi(.L_cseg5),%l0
	or	%l0,%lo(.L_cseg5),%l0
	ld	[%l0+0],%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+12]

!  198	        AFIT = -100.

	sethi	%hi(.L_cseg5),%l0
	or	%l0,%lo(.L_cseg5),%l0
	ld	[%l0+0],%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+32]

!  199	        BEST = -100.

	sethi	%hi(.L_cseg5),%l0
	or	%l0,%lo(.L_cseg5),%l0
	ld	[%l0+0],%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+16]

!  200	        BFIT = -100.

	sethi	%hi(.L_cseg5),%l0
	or	%l0,%lo(.L_cseg5),%l0
	ld	[%l0+0],%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+36]

!  201	C
!  202	               IF (MODE .GE. 4) GO TO 2050

	sethi	%hi(readst_),%l0
	or	%l0,%lo(readst_),%l0
	ld	[%l0+0],%l0
	cmp	%l0,4
	bl	.L31
	nop

	! block 9
.L32:
	ba	.L33
	nop

	! block 10
.L31:

!  203	C ---------------------------------------------------------------------
!  204	C*   COMPUTE FLUX IN 4-SECTORS.
!  205	C*   FIND PEAK AND DEFINE BOX CURRENTS < .1 OF PEAK;
!  206	C*   INCLUDES FIRST POINT LESS THAN UNLESS LESS THAN ZERO.
!  207	C
!  208	C    UPPER LIMIT FOR ANGLE.
!  209	          I1 = ILIM (MODE)

	ld	[%fp-20],%l2
	sethi	%hi(readst_),%l0
	or	%l0,%lo(readst_),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.i1),%l0
	or	%l0,%lo(GPB.MAIN.i1),%l0
	st	%l1,[%l0+0]

!  210	C    LOWER LIMIT FOR AMS OR NTM ENERGY CHANNEL.
!  211	          J0 = 3

	mov	3,%l1
	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	st	%l1,[%l0+0]

!  212	C    UPPER LIMIT FOR SAME.
!  213	          J1 = 26

	mov	26,%l1
	sethi	%hi(GPB.MAIN.j1),%l0
	or	%l0,%lo(GPB.MAIN.j1),%l0
	st	%l1,[%l0+0]

!  214	               IF (MODSWI) 300, 230, 300

	sethi	%hi(GPB.MAIN.modswi),%l0
	or	%l0,%lo(GPB.MAIN.modswi),%l0
	ld	[%l0+0],%l0
	cmp	%l0,0
	be	.L36
	nop

	! block 11
.L37:
	ba	.L35
	nop

	! block 12
.L36:

!  215	C    TMS.
!  216	  230     J0 = IPSEL

	sethi	%hi(proc_),%l0
	or	%l0,%lo(proc_),%l0
	ld	[%l0+12],%l1
	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	st	%l1,[%l0+0]

!  217	               IF (J0 .LT. 3) J0 = 3

	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	ld	[%l0+0],%l0
	cmp	%l0,3
	bge	.L38
	nop

	! block 13
.L39:
	mov	3,%l1
	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	st	%l1,[%l0+0]

	! block 14
.L38:

!  218	               IF (J0 .GT. 19) J0 = 19

	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	ld	[%l0+0],%l0
	cmp	%l0,19
	ble	.L40
	nop

	! block 15
.L41:
	mov	19,%l1
	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	st	%l1,[%l0+0]

	! block 16
.L40:

!  219	          J1 = J0 + 7

	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	ld	[%l0+0],%l0
	add	%l0,7,%l1
	sethi	%hi(GPB.MAIN.j1),%l0
	or	%l0,%lo(GPB.MAIN.j1),%l0
	st	%l1,[%l0+0]

	! block 17
.L35:

!  220	C    COMMON LOOP : AMS, NTM, TMS.
!  221	C FLUX = CURRENT/CHARGE-AREA
!  222	C FLUX = (FLUXA*WEIGHTA+FLUXB*WEIGHTB)/(WEIGHTA+WEIGHTB)
!  223	  300 DO 420 INERGY = J0, J1

	sethi	%hi(GPB.MAIN.j1),%l0
	or	%l0,%lo(GPB.MAIN.j1),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-108]
	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-108],%l0
	cmp	%l1,%l0
	bg	.L43
	nop

	! block 18
.L47:
.L44:

!  224	      MATINA = INERGY * 28 - 29

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,5,%l2
	sll	%l0,2,%l1
	sub	%l2,%l1,%l0
	add	%l0,-29,%l1
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	st	%l1,[%l0+0]

!  225	               IF (MODSWI) 389, 389, 410

	sethi	%hi(GPB.MAIN.modswi),%l0
	or	%l0,%lo(GPB.MAIN.modswi),%l0
	ld	[%l0+0],%l0
	cmp	%l0,0
	bg	.L49
	nop

	! block 19
.L50:
.L48:

!  226	C    AMS OR TMS.
!  227	  389 DO 401 IANGLE=8,22,2

	mov	8,%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]

	! block 20
.L53:
.L51:

!  228	  401 VINT = VINT + MATMAT(IANGLE+MATINA)

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+40],%f3
	ld	[%fp-24],%l3
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l0
	sll	%l0,2,%l1
	add	%l3,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+40]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l0
	add	%l0,2,%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l0
	cmp	%l0,22
	ble	.L53
	nop

	! block 21
.L57:
.L52:

!  229	      WINT = WINT + MATMAT(MATINA+24)+MATMAT(MATINA+26)

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+44],%f3
	ld	[%fp-24],%l0
	add	%l0,96,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f3
	ld	[%fp-24],%l0
	add	%l0,104,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+44]

!  230	      DINT = DINT + MATMAT(MATINA+28)+MATMAT(MATINA+2)

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+48],%f3
	ld	[%fp-24],%l0
	add	%l0,112,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f3
	ld	[%fp-24],%l0
	add	%l0,8,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+48]

!  231	               GO TO 420

	ba	.L42
	nop

	! block 22
.L49:

!  232	C    NTM.
!  233	  410   VINT = VINT + MATMAT (MATINA + 8) + MATMAT (MATINA + 10)

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+40],%f3
	ld	[%fp-24],%l0
	add	%l0,32,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f3
	ld	[%fp-24],%l0
	add	%l0,40,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+40]

!  234	        WINT = WINT + MATMAT (MATINA + 12) + MATMAT (MATINA + 14)

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+44],%f3
	ld	[%fp-24],%l0
	add	%l0,48,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f3
	ld	[%fp-24],%l0
	add	%l0,56,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+44]

!  235	        DINT = DINT + MATMAT (MATINA + 16) + MATMAT (MATINA + 2)

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+48],%f3
	ld	[%fp-24],%l0
	add	%l0,64,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f3
	ld	[%fp-24],%l0
	add	%l0,8,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+48]

	! block 23
.L42:

!  236	  420 AINT = AINT + MATMAT(MATINA+4)*1.05042+MATMAT(MATINA+6)*0.94958

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+52],%f4
	ld	[%fp-24],%l0
	add	%l0,16,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg6),%l0
	or	%l0,%lo(.L_cseg6),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f4
	ld	[%fp-24],%l0
	add	%l0,24,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg7),%l0
	or	%l0,%lo(.L_cseg7),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+52]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-108],%l0
	cmp	%l1,%l0
	ble	.L44
	nop

	! block 24
.L58:
.L43:

!  237	C X=Q*A*(E12)*2
!  238	C**** X = 2.1404E-5
!  239	        VINT = VINT / X

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+40],%f3
	sethi	%hi(GPB.MAIN.x),%l0
	or	%l0,%lo(GPB.MAIN.x),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+40]

!  240	C**** IF (MODE.NE.3) VINT=VINT/4.0
!  241	        WINT = WINT / X

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+44],%f3
	sethi	%hi(GPB.MAIN.x),%l0
	or	%l0,%lo(GPB.MAIN.x),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+44]

!  242	        DINT = DINT / X

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+48],%f3
	sethi	%hi(GPB.MAIN.x),%l0
	or	%l0,%lo(GPB.MAIN.x),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+48]

!  243	        AINT = AINT / X

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+52],%f3
	sethi	%hi(GPB.MAIN.x),%l0
	or	%l0,%lo(GPB.MAIN.x),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+52]

!  244	C ---------------------------------------------------------------------
!  245	C    INITIALIZE BOX BOUNDARY POINTERS OFF SCALE.
!  246	        ABOT = -1

	mov	-1,%l1
	sethi	%hi(GPB.MAIN.abot),%l0
	or	%l0,%lo(GPB.MAIN.abot),%l0
	st	%l1,[%l0+0]

!  247	        ATOP = 15

	mov	15,%l1
	sethi	%hi(GPB.MAIN.atop),%l0
	or	%l0,%lo(GPB.MAIN.atop),%l0
	st	%l1,[%l0+0]

!  248	        EBOT = -1

	mov	-1,%l1
	sethi	%hi(GPB.MAIN.ebot),%l0
	or	%l0,%lo(GPB.MAIN.ebot),%l0
	st	%l1,[%l0+0]

!  249	        ETOP = 27

	mov	27,%l1
	sethi	%hi(GPB.MAIN.etop),%l0
	or	%l0,%lo(GPB.MAIN.etop),%l0
	st	%l1,[%l0+0]

!  250	C
!  251	C* PEAK
!  252	C
!  253	C     DEFINITION OF (PRIMARY) PEAK.
!  254	C
!  255	C        1.  ANGLE-ENERGY ADDRESS OF MAXIMUM CURRENT.
!  256	C        2.  ANGLE/ENERGY ADDRESS CONSTRAINTS.
!  257	C            PEAKS ALLOWED IN ALL CHANNELS?
!  258	C            RESTRICTED TO SUNWARD QUADRANT.
!  259	C        3.  NEIGHBORING VALUES CONSTRAINTS.
!  260	C            WHAT IF ALL MEASUREMENTS ARE THE SAME.
!  261	C ---------------------------------------------------------------------
!  262	C    MAXANG IS SECTOR & MAXENE ENERGY CHANNEL ADDRESS OF OBSERVED
!  263	C    CURRENT PEAK.
!  264	        CMAX = 0

	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+64]

!  265	      MAXANG = 1

	mov	1,%l1
	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	st	%l1,[%l0+0]

!  266	      MAXENE = 1

	mov	1,%l1
	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	st	%l1,[%l0+0]

!  267	          J2 = 11

	mov	11,%l1
	sethi	%hi(GPB.MAIN.j2),%l0
	or	%l0,%lo(GPB.MAIN.j2),%l0
	st	%l1,[%l0+0]

!  268	               IF (MODE .EQ. 3) J2 = 5

	sethi	%hi(readst_),%l0
	or	%l0,%lo(readst_),%l0
	ld	[%l0+0],%l0
	cmp	%l0,3
	bne	.L59
	nop

	! block 25
.L60:
	mov	5,%l1
	sethi	%hi(GPB.MAIN.j2),%l0
	or	%l0,%lo(GPB.MAIN.j2),%l0
	st	%l1,[%l0+0]

	! block 26
.L59:

!  269	C
!  270	             DO 490 INERGY = J0, J1

	sethi	%hi(GPB.MAIN.j1),%l0
	or	%l0,%lo(GPB.MAIN.j1),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-112]
	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-112],%l0
	cmp	%l1,%l0
	bg	.L62
	nop

	! block 27
.L66:
.L63:

!  271	      MATINA = INERGY * 28 - 23

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,5,%l2
	sll	%l0,2,%l1
	sub	%l2,%l1,%l0
	add	%l0,-23,%l1
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	st	%l1,[%l0+0]

!  272	      DO 490 IANGLE = 4, J2

	sethi	%hi(GPB.MAIN.j2),%l0
	or	%l0,%lo(GPB.MAIN.j2),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-116]
	mov	4,%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	ld	[%fp-116],%l0
	cmp	%l1,%l0
	bg	.L67
	nop

	! block 28
.L71:
.L68:

!  273	      MATINA = MATINA + 2

	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	add	%l0,2,%l1
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	st	%l1,[%l0+0]

!  274	         CUR = MATMAT (MATINA)

	ld	[%fp-24],%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	st	%f2,[%l0+0]

!  275	               IF (CUR .LT. CMAX) GO TO 490

	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	ld	[%l0+0],%f3
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+64],%f2
	fcmpes	%f3,%f2
	nop
	fbuge	.L72
	nop

	! block 29
.L73:
	ba	.L61
	nop

	! block 30
.L72:

!  276	        CMAX = CUR

	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	ld	[%l0+0],%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+64]

!  277	      MAXANG = IANGLE

	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	st	%l1,[%l0+0]

!  278	      MAXENE = INERGY

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	st	%l1,[%l0+0]

	! block 31
.L61:

!  279	  490          CONTINUE

	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	ld	[%fp-116],%l0
	cmp	%l1,%l0
	ble	.L68
	nop

	! block 32
.L74:
.L67:
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-112],%l0
	cmp	%l1,%l0
	ble	.L63
	nop

	! block 33
.L75:
.L62:

!  280	C
!  281	C    JUMP IS TO WRITE TAPE.
!  282	               IF (CMAX .LE. 0) GO TO 2050

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+64],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L76
	nop

	! block 34
.L77:
	ba	.L33
	nop

	! block 35
.L76:

!  283	C ---------------------------------------------------------------------
!  284	C*    DEFINE BOX
!  285	          CK = .1

	sethi	%hi(.L_cseg8),%l0
	or	%l0,%lo(.L_cseg8),%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.ck),%l0
	or	%l0,%lo(GPB.MAIN.ck),%l0
	st	%f2,[%l0+0]

	! block 36
.L78:

!  286	  501  CCMAX = CK * CMAX

	sethi	%hi(GPB.MAIN.ck),%l0
	or	%l0,%lo(GPB.MAIN.ck),%l0
	ld	[%l0+0],%f3
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+64],%f2
	fmuls	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.ccmax),%l0
	or	%l0,%lo(GPB.MAIN.ccmax),%l0
	st	%f2,[%l0+0]

!  287	C
!  288	C   ATOP.
!  289	      MATINA = MAXENE * 28 - 29

	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	ld	[%l0+0],%l0
	sll	%l0,5,%l2
	sll	%l0,2,%l1
	sub	%l2,%l1,%l0
	add	%l0,-29,%l1
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	st	%l1,[%l0+0]

!  290	      MATINB = MATINA + MAXANG + MAXANG - 2

	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l2
	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l0
	add	%l0,-2,%l1
	sethi	%hi(GPB.MAIN.matinb),%l0
	or	%l0,%lo(GPB.MAIN.matinb),%l0
	st	%l1,[%l0+0]

!  291	      DO 509 IANGLE = MAXANG, I1

	sethi	%hi(GPB.MAIN.i1),%l0
	or	%l0,%lo(GPB.MAIN.i1),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-120]
	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	ld	[%fp-120],%l0
	cmp	%l1,%l0
	bg	.L80
	nop

	! block 37
.L84:
.L81:

!  292	C
!  293	C*   DO NOT GET ATOP TWICE.
!  294	               IF (ATOP .NE. 15) GO TO 520

	sethi	%hi(GPB.MAIN.atop),%l0
	or	%l0,%lo(GPB.MAIN.atop),%l0
	ld	[%l0+0],%l0
	cmp	%l0,15
	be	.L85
	nop

	! block 38
.L86:
	ba	.L87
	nop

	! block 39
.L85:

!  295	C
!  296	      MATINB = MATINB + 2

	sethi	%hi(GPB.MAIN.matinb),%l0
	or	%l0,%lo(GPB.MAIN.matinb),%l0
	ld	[%l0+0],%l0
	add	%l0,2,%l1
	sethi	%hi(GPB.MAIN.matinb),%l0
	or	%l0,%lo(GPB.MAIN.matinb),%l0
	st	%l1,[%l0+0]

!  297	               IF (MATMAT (MATINB) .GT. CCMAX) GO TO 509

	ld	[%fp-24],%l2
	sethi	%hi(GPB.MAIN.matinb),%l0
	or	%l0,%lo(GPB.MAIN.matinb),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.ccmax),%l0
	or	%l0,%lo(GPB.MAIN.ccmax),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L88
	nop

	! block 40
.L89:
	ba	.L79
	nop

	! block 41
.L88:

!  298	        ATOP = IANGLE

	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.atop),%l0
	or	%l0,%lo(GPB.MAIN.atop),%l0
	st	%l1,[%l0+0]

!  299	        BINT = BINT + CK * 10.

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+56],%f4
	sethi	%hi(GPB.MAIN.ck),%l0
	or	%l0,%lo(GPB.MAIN.ck),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg9),%l0
	or	%l0,%lo(.L_cseg9),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+56]

!  300	               GO TO 520

	ba	.L87
	nop

	! block 42
.L79:

!  301	  509          CONTINUE

	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	ld	[%fp-120],%l0
	cmp	%l1,%l0
	ble	.L81
	nop

	! block 43
.L90:
.L80:
.L87:

!  302	C
!  303	C   ABOT.
!  304	  520 MAXAP1 = MAXANG + 1

	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.maxap1),%l0
	or	%l0,%lo(GPB.MAIN.maxap1),%l0
	st	%l1,[%l0+0]

!  305	      DO 540 IANGLE = 1, MAXANG

	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-124]
	mov	1,%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	ld	[%fp-124],%l0
	cmp	%l1,%l0
	bg	.L92
	nop

	! block 44
.L96:
.L93:

!  306	               IF (ABOT .NE. -1) GO TO 560

	sethi	%hi(GPB.MAIN.abot),%l0
	or	%l0,%lo(GPB.MAIN.abot),%l0
	ld	[%l0+0],%l0
	cmp	%l0,-1
	be	.L97
	nop

	! block 45
.L98:
	ba	.L99
	nop

	! block 46
.L97:

!  307	          II = MAXAP1 - IANGLE

	sethi	%hi(GPB.MAIN.maxap1),%l0
	or	%l0,%lo(GPB.MAIN.maxap1),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	sub	%l2,%l1,%l1
	sethi	%hi(GPB.MAIN.ii),%l0
	or	%l0,%lo(GPB.MAIN.ii),%l0
	st	%l1,[%l0+0]

!  308	               IF (MATMAT (II + II + MATINA) .GT. CCMAX) GO TO 540

	ld	[%fp-24],%l3
	sethi	%hi(GPB.MAIN.ii),%l0
	or	%l0,%lo(GPB.MAIN.ii),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.ii),%l0
	or	%l0,%lo(GPB.MAIN.ii),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l0
	sll	%l0,2,%l1
	add	%l3,%l1,%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.ccmax),%l0
	or	%l0,%lo(GPB.MAIN.ccmax),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L100
	nop

	! block 47
.L101:
	ba	.L91
	nop

	! block 48
.L100:

!  309	        ABOT = II

	sethi	%hi(GPB.MAIN.ii),%l0
	or	%l0,%lo(GPB.MAIN.ii),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.abot),%l0
	or	%l0,%lo(GPB.MAIN.abot),%l0
	st	%l1,[%l0+0]

!  310	        BINT = BINT + CK * 100.

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+56],%f4
	sethi	%hi(GPB.MAIN.ck),%l0
	or	%l0,%lo(GPB.MAIN.ck),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg10),%l0
	or	%l0,%lo(.L_cseg10),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+56]

!  311	               GO TO 560

	ba	.L99
	nop

	! block 49
.L91:

!  312	  540          CONTINUE

	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	ld	[%fp-124],%l0
	cmp	%l1,%l0
	ble	.L93
	nop

	! block 50
.L102:
.L92:
.L99:

!  313	C
!  314	C   ETOP.
!  315	  560 MATINA = MAXANG + MAXANG - 29

	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l0
	add	%l0,-29,%l1
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	st	%l1,[%l0+0]

!  316	        J1M1 = J1 - 1

	sethi	%hi(GPB.MAIN.j1),%l0
	or	%l0,%lo(GPB.MAIN.j1),%l0
	ld	[%l0+0],%l0
	add	%l0,-1,%l1
	sethi	%hi(GPB.MAIN.j1m1),%l0
	or	%l0,%lo(GPB.MAIN.j1m1),%l0
	st	%l1,[%l0+0]

!  317	      DO 580 INERGY = MAXENE, J1

	sethi	%hi(GPB.MAIN.j1),%l0
	or	%l0,%lo(GPB.MAIN.j1),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-128]
	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-128],%l0
	cmp	%l1,%l0
	bg	.L104
	nop

	! block 51
.L108:
.L105:

!  318	               IF (ETOP .NE. 27) GO TO 600

	sethi	%hi(GPB.MAIN.etop),%l0
	or	%l0,%lo(GPB.MAIN.etop),%l0
	ld	[%l0+0],%l0
	cmp	%l0,27
	be	.L109
	nop

	! block 52
.L110:
	ba	.L111
	nop

	! block 53
.L109:

!  319	      MATINE = INERGY * 28 + MATINA

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,5,%l2
	sll	%l0,2,%l1
	sub	%l2,%l1,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l1
	sethi	%hi(GPB.MAIN.matine),%l0
	or	%l0,%lo(GPB.MAIN.matine),%l0
	st	%l1,[%l0+0]

!  320	        RMAT = MATMAT (MATINE)

	ld	[%fp-24],%l2
	sethi	%hi(GPB.MAIN.matine),%l0
	or	%l0,%lo(GPB.MAIN.matine),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.rmat),%l0
	or	%l0,%lo(GPB.MAIN.rmat),%l0
	st	%f2,[%l0+0]

!  321	               IF (RMAT .GT. CCMAX) GO TO 580

	sethi	%hi(GPB.MAIN.rmat),%l0
	or	%l0,%lo(GPB.MAIN.rmat),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.ccmax),%l0
	or	%l0,%lo(GPB.MAIN.ccmax),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L112
	nop

	! block 54
.L113:
	ba	.L103
	nop

	! block 55
.L112:

!  322	               IF (INERGY .LT. J1M1

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.j1m1),%l0
	or	%l0,%lo(GPB.MAIN.j1m1),%l0
	ld	[%l0+0],%l0
	cmp	%l1,%l0
	bge	.L114
	nop

	! block 56
.L116:
	ld	[%fp-24],%l0
	add	%l0,112,%l2
	sethi	%hi(GPB.MAIN.matine),%l0
	or	%l0,%lo(GPB.MAIN.matine),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.rmat),%l0
	or	%l0,%lo(GPB.MAIN.rmat),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbuge	.L114
	nop

	! block 57
.L117:
	ba	.L103
	nop

	! block 58
.L114:

!  323	     2            .AND. MATMAT (MATINE + 28) .LT. RMAT) GO TO 580
!  324	        ETOP = INERGY

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.etop),%l0
	or	%l0,%lo(GPB.MAIN.etop),%l0
	st	%l1,[%l0+0]

!  325	        BINT = BINT + CK * 1000.

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+56],%f4
	sethi	%hi(GPB.MAIN.ck),%l0
	or	%l0,%lo(GPB.MAIN.ck),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg11),%l0
	or	%l0,%lo(.L_cseg11),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+56]

!  326	               GO TO 600

	ba	.L111
	nop

	! block 59
.L103:

!  327	  580          CONTINUE

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-128],%l0
	cmp	%l1,%l0
	ble	.L105
	nop

	! block 60
.L118:
.L104:
.L111:

!  328	C
!  329	C   EBOT.
!  330	  600          IF (EBOT .NE. -1) GO TO 640

	sethi	%hi(GPB.MAIN.ebot),%l0
	or	%l0,%lo(GPB.MAIN.ebot),%l0
	ld	[%l0+0],%l0
	cmp	%l0,-1
	be	.L119
	nop

	! block 61
.L120:
	ba	.L121
	nop

	! block 62
.L119:

!  331	      MAXEP1 = MAXENE + J0

	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l1
	sethi	%hi(GPB.MAIN.maxep1),%l0
	or	%l0,%lo(GPB.MAIN.maxep1),%l0
	st	%l1,[%l0+0]

!  332	      DO 620 INERGY = J0, MAXENE

	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-132]
	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-132],%l0
	cmp	%l1,%l0
	bg	.L123
	nop

	! block 63
.L127:
.L124:

!  333	          JJ = MAXEP1 - INERGY

	sethi	%hi(GPB.MAIN.maxep1),%l0
	or	%l0,%lo(GPB.MAIN.maxep1),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	sub	%l2,%l1,%l1
	sethi	%hi(GPB.MAIN.jj),%l0
	or	%l0,%lo(GPB.MAIN.jj),%l0
	st	%l1,[%l0+0]

!  334	               IF (MATMAT (JJ * 28 + MATINA) .GT. CCMAX) GO TO 620

	ld	[%fp-24],%l3
	sethi	%hi(GPB.MAIN.jj),%l0
	or	%l0,%lo(GPB.MAIN.jj),%l0
	ld	[%l0+0],%l0
	sll	%l0,5,%l2
	sll	%l0,2,%l1
	sub	%l2,%l1,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l0
	sll	%l0,2,%l1
	add	%l3,%l1,%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.ccmax),%l0
	or	%l0,%lo(GPB.MAIN.ccmax),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L128
	nop

	! block 64
.L129:
	ba	.L122
	nop

	! block 65
.L128:

!  335	         EBOT = JJ

	sethi	%hi(GPB.MAIN.jj),%l0
	or	%l0,%lo(GPB.MAIN.jj),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.ebot),%l0
	or	%l0,%lo(GPB.MAIN.ebot),%l0
	st	%l1,[%l0+0]

!  336	        BINT = BINT + CK * 10000.

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+56],%f4
	sethi	%hi(GPB.MAIN.ck),%l0
	or	%l0,%lo(GPB.MAIN.ck),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg12),%l0
	or	%l0,%lo(.L_cseg12),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+56]

!  337	               GO TO 640

	ba	.L121
	nop

	! block 66
.L122:

!  338	  620          CONTINUE

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-132],%l0
	cmp	%l1,%l0
	ble	.L124
	nop

	! block 67
.L130:
.L123:
.L121:

!  339	C
!  340	C* PEAK ?
!  341	C
!  342	  640          IF (ATOP .GE. I1) GO TO 660

	sethi	%hi(GPB.MAIN.atop),%l0
	or	%l0,%lo(GPB.MAIN.atop),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.i1),%l0
	or	%l0,%lo(GPB.MAIN.i1),%l0
	ld	[%l0+0],%l0
	cmp	%l1,%l0
	bl	.L131
	nop

	! block 68
.L132:
	ba	.L133
	nop

	! block 69
.L131:

!  343	               IF (ABOT .LE. 1) GO TO 660

	sethi	%hi(GPB.MAIN.abot),%l0
	or	%l0,%lo(GPB.MAIN.abot),%l0
	ld	[%l0+0],%l0
	cmp	%l0,1
	bg	.L134
	nop

	! block 70
.L135:
	ba	.L133
	nop

	! block 71
.L134:

!  344	C
!  345	               IF (ETOP .GE. J1) GO TO 660

	sethi	%hi(GPB.MAIN.etop),%l0
	or	%l0,%lo(GPB.MAIN.etop),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.j1),%l0
	or	%l0,%lo(GPB.MAIN.j1),%l0
	ld	[%l0+0],%l0
	cmp	%l1,%l0
	bl	.L136
	nop

	! block 72
.L137:
	ba	.L133
	nop

	! block 73
.L136:

!  346	               IF (EBOT .LE. 3) GO TO 660

	sethi	%hi(GPB.MAIN.ebot),%l0
	or	%l0,%lo(GPB.MAIN.ebot),%l0
	ld	[%l0+0],%l0
	cmp	%l0,3
	bg	.L138
	nop

	! block 74
.L139:
	ba	.L133
	nop

	! block 75
.L138:

!  347	      GO TO 680

	ba	.L140
	nop

	! block 76
.L133:

!  348	C
!  349	C        IF ANY OF ABOT, ATOP, EBOT, ETOP WERE OFF SCALE, DOUBLE CCMAX
!  350	C        AND TRY AGAIN.
!  351	  660     CK = CK + 0.1

	sethi	%hi(GPB.MAIN.ck),%l0
	or	%l0,%lo(GPB.MAIN.ck),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg8),%l0
	or	%l0,%lo(.L_cseg8),%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.ck),%l0
	or	%l0,%lo(GPB.MAIN.ck),%l0
	st	%f2,[%l0+0]

!  352	               IF (CK .GE. 1.) GO TO 2050

	sethi	%hi(GPB.MAIN.ck),%l0
	or	%l0,%lo(GPB.MAIN.ck),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg13),%l0
	or	%l0,%lo(.L_cseg13),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbul	.L141
	nop

	! block 77
.L142:
	ba	.L33
	nop

	! block 78
.L141:

!  353	               GO TO 501

	ba	.L78
	nop

	! block 79
.L140:

!  354	C ---------------------------------------------------------------------
!  355	C    EST.  WEIGHTED SUM.
!  356	C* VBAR VELOCITIES = (VMAX+VMIN)/2
!  357	C                    ALTHOUGH ENERGY WINDOWS ARE LOGARITHMIC.
!  358	C*   B- = BETA-.
!  359	C*   BWIDTH = WIDTH OF SECTORS.
!  360	C
!  361	C    CALCULATE BULK SPEED FROM FULL-COLLECTOR CURRENTS IN BOX.
!  362	C
!  363	  680 MODWID = MODE * 14 - 14

	sethi	%hi(readst_),%l0
	or	%l0,%lo(readst_),%l0
	ld	[%l0+0],%l0
	sll	%l0,4,%l2
	sll	%l0,1,%l1
	sub	%l2,%l1,%l0
	add	%l0,-14,%l1
	sethi	%hi(GPB.MAIN.modwid),%l0
	or	%l0,%lo(GPB.MAIN.modwid),%l0
	st	%l1,[%l0+0]

!  364	      DO 800 INERGY = EBOT, ETOP

	sethi	%hi(GPB.MAIN.etop),%l0
	or	%l0,%lo(GPB.MAIN.etop),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-136]
	sethi	%hi(GPB.MAIN.ebot),%l0
	or	%l0,%lo(GPB.MAIN.ebot),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-136],%l0
	cmp	%l1,%l0
	bg	.L144
	nop

	! block 80
.L148:
.L145:

!  365	      MATINA = INERGY * 28 + ABOT + ABOT - 31

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,5,%l2
	sll	%l0,2,%l1
	sub	%l2,%l1,%l2
	sethi	%hi(GPB.MAIN.abot),%l0
	or	%l0,%lo(GPB.MAIN.abot),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l2
	sethi	%hi(GPB.MAIN.abot),%l0
	or	%l0,%lo(GPB.MAIN.abot),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l0
	add	%l0,-31,%l1
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	st	%l1,[%l0+0]

!  366	       VMEAN = VBAR (INERGY)

	ld	[%fp-28],%l2
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.vmean),%l0
	or	%l0,%lo(GPB.MAIN.vmean),%l0
	st	%f2,[%l0+0]

!  367	      BSUMS (INERGY) = 0

	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	ld	[%fp-32],%l2
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	st	%f2,[%l0+0]

!  368	             DO 800 IANGLE = ABOT, ATOP

	sethi	%hi(GPB.MAIN.atop),%l0
	or	%l0,%lo(GPB.MAIN.atop),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-140]
	sethi	%hi(GPB.MAIN.abot),%l0
	or	%l0,%lo(GPB.MAIN.abot),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	ld	[%fp-140],%l0
	cmp	%l1,%l0
	bg	.L151
	nop

	! block 81
.L155:
.L152:

!  369	      MATINA = MATINA + 2

	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	add	%l0,2,%l1
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	st	%l1,[%l0+0]

!  370	         CUR = MATMAT (MATINA)

	ld	[%fp-24],%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	st	%f2,[%l0+0]

!  371	               IF (CUR .LE. 0) GO TO 800

	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L156
	nop

	! block 82
.L157:
	ba	.L143
	nop

	! block 83
.L156:

!  372	      IANMOD = IANGLE + MODWID

	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.modwid),%l0
	or	%l0,%lo(GPB.MAIN.modwid),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l1
	sethi	%hi(GPB.MAIN.ianmod),%l0
	or	%l0,%lo(GPB.MAIN.ianmod),%l0
	st	%l1,[%l0+0]

!  373	      DENCUR = CUR * BWID (IANMOD)

	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	ld	[%l0+0],%f3
	ld	[%fp-36],%l2
	sethi	%hi(GPB.MAIN.ianmod),%l0
	or	%l0,%lo(GPB.MAIN.ianmod),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.dencur),%l0
	or	%l0,%lo(GPB.MAIN.dencur),%l0
	st	%f2,[%l0+0]

!  374	               SUMI = SUMI + CUR

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+68],%f3
	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+68]

!  375	               SUMIV = SUMIV + CUR / VMEAN

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+72],%f4
	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.vmean),%l0
	or	%l0,%lo(GPB.MAIN.vmean),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+72]

!  376	      DENSUM = DENSUM + DENCUR / VMEAN

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+76],%f4
	sethi	%hi(GPB.MAIN.dencur),%l0
	or	%l0,%lo(GPB.MAIN.dencur),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.vmean),%l0
	or	%l0,%lo(GPB.MAIN.vmean),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+76]

!  377	        BSUM = BSUM + CUR * BBAR2 (IANMOD)

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+80],%f4
	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	ld	[%l0+0],%f3
	ld	[%fp-40],%l2
	sethi	%hi(GPB.MAIN.ianmod),%l0
	or	%l0,%lo(GPB.MAIN.ianmod),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+80]

!  378	       BNORM = BNORM + CUR

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+84],%f3
	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+84]

!  379	      BSUMS (INERGY) = BSUMS (INERGY) + DENCUR * .09699

	ld	[%fp-32],%l2
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f4
	sethi	%hi(GPB.MAIN.dencur),%l0
	or	%l0,%lo(GPB.MAIN.dencur),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg14),%l0
	or	%l0,%lo(.L_cseg14),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	ld	[%fp-32],%l2
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	st	%f2,[%l0+0]

	! block 84
.L143:

!  380	  800          CONTINUE

	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	ld	[%fp-140],%l0
	cmp	%l1,%l0
	ble	.L152
	nop

	! block 85
.L160:
.L151:
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-136],%l0
	cmp	%l1,%l0
	ble	.L145
	nop

	! block 86
.L161:
.L144:

!  381	C
!  382	               IF (SUMIV .NE. 0) VEST = SUMI / SUMIV

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+72],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmps	%f3,%f2
	nop
	fbe	.L162
	nop

	! block 87
.L163:
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+68],%f3
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+72],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+0]

	! block 88
.L162:

!  383	      IF (MAXENE+3.LE.ETOP) AFIT=BSUMS(MAXENE+3)/BSUMS(MAXENE)

	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	ld	[%l0+0],%l0
	add	%l0,3,%l1
	sethi	%hi(GPB.MAIN.etop),%l0
	or	%l0,%lo(GPB.MAIN.etop),%l0
	ld	[%l0+0],%l0
	cmp	%l1,%l0
	bg	.L164
	nop

	! block 89
.L165:
	ld	[%fp-32],%l0
	add	%l0,12,%l2
	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f3
	ld	[%fp-32],%l2
	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+32]

	! block 90
.L164:

!  384	C ---------------------------------------------------------------------
!  385	C    THERMAL SPEED.  WEST.
!  386	C     THIS CALCULATION DEPENDS ON VEST.
!  387	C
!  388	      MATINA = MAXANG + MAXANG - 29

	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l0
	add	%l0,-29,%l1
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	st	%l1,[%l0+0]

!  389	      DO 1000 INERGY = EBOT, ETOP

	sethi	%hi(GPB.MAIN.etop),%l0
	or	%l0,%lo(GPB.MAIN.etop),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-144]
	sethi	%hi(GPB.MAIN.ebot),%l0
	or	%l0,%lo(GPB.MAIN.ebot),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-144],%l0
	cmp	%l1,%l0
	bg	.L167
	nop

	! block 91
.L171:
.L168:

!  390	       VMEAN = VBAR (INERGY)

	ld	[%fp-28],%l2
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.vmean),%l0
	or	%l0,%lo(GPB.MAIN.vmean),%l0
	st	%f2,[%l0+0]

!  391	         CUR = MATMAT (INERGY *28 + MATINA)

	ld	[%fp-24],%l3
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,5,%l2
	sll	%l0,2,%l1
	sub	%l2,%l1,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l0
	sll	%l0,2,%l1
	add	%l3,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	st	%f2,[%l0+0]

!  392	               IF (CUR .LE. 0) GO TO 1000

	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L172
	nop

	! block 92
.L173:
	ba	.L166
	nop

	! block 93
.L172:

!  393	       VTEMP = VMEAN - VEST

	sethi	%hi(GPB.MAIN.vmean),%l0
	or	%l0,%lo(GPB.MAIN.vmean),%l0
	ld	[%l0+0],%f3
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+0],%f2
	fsubs	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.vtemp),%l0
	or	%l0,%lo(GPB.MAIN.vtemp),%l0
	st	%f2,[%l0+0]

!  394	       VTEMP = VTEMP * VTEMP

	sethi	%hi(GPB.MAIN.vtemp),%l0
	or	%l0,%lo(GPB.MAIN.vtemp),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.vtemp),%l0
	or	%l0,%lo(GPB.MAIN.vtemp),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.vtemp),%l0
	or	%l0,%lo(GPB.MAIN.vtemp),%l0
	st	%f2,[%l0+0]

!  395	      CURVME = CUR / VMEAN

	sethi	%hi(GPB.MAIN.cur),%l0
	or	%l0,%lo(GPB.MAIN.cur),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.vmean),%l0
	or	%l0,%lo(GPB.MAIN.vmean),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.curvme),%l0
	or	%l0,%lo(GPB.MAIN.curvme),%l0
	st	%f2,[%l0+0]

!  396	        SUM1 = SUM1 + VTEMP * CURVME

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+88],%f4
	sethi	%hi(GPB.MAIN.vtemp),%l0
	or	%l0,%lo(GPB.MAIN.vtemp),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.curvme),%l0
	or	%l0,%lo(GPB.MAIN.curvme),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+88]

!  397	        SUM2 = SUM2 + CURVME

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+92],%f3
	sethi	%hi(GPB.MAIN.curvme),%l0
	or	%l0,%lo(GPB.MAIN.curvme),%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+92]

	! block 94
.L166:

!  398	 1000           CONTINUE

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-144],%l0
	cmp	%l1,%l0
	ble	.L168
	nop

	! block 95
.L174:
.L167:

!  399	C
!  400	               IF (SUM2 .NE. 0) WEST2 = SUM1 / SUM2

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+92],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmps	%f3,%f2
	nop
	fbe	.L175
	nop

	! block 96
.L176:
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+88],%f3
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+92],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+96]

	! block 97
.L175:

!  401	               IF (WEST2 .GT. 0) WEST = SQRT (WEST2 + WEST2)

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+96],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L177
	nop

	! block 98
.L178:
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+96],%f3
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+96],%f2
	fadds	%f3,%f2,%f2
	fsqrts	%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+4]

	! block 99
.L177:

!  402	C ---------------------------------------------------------------------
!  403	C    CALCULATE DENSITY
!  404	C    FROM FULL-COLLECTOR CURRENTS IN BOX.
!  405	C     CALCULATION DEPENDS ON VEST AND WEST.
!  406	C
!  407	C* DEPENDS ON UNITS OF CURRENT;FROM NUMERICAL INTEGRATION
!  408	C* PERHAPS DIFFERENT CONSTANT IN -EST THAN IN -FIT
!  409	C
!  410	        DEST = DENSUM * DNORM

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+76],%f3
	sethi	%hi(GPB.MAIN.dnorm),%l0
	or	%l0,%lo(GPB.MAIN.dnorm),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+8]

!  411	               IF (VEST .LT. 1.) GO TO 2050

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg13),%l0
	or	%l0,%lo(.L_cseg13),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbuge	.L179
	nop

	! block 100
.L180:
	ba	.L33
	nop

	! block 101
.L179:

!  412	               IF (WEST .LT. 1.) GO TO 2050

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+4],%f3
	sethi	%hi(.L_cseg13),%l0
	or	%l0,%lo(.L_cseg13),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbuge	.L181
	nop

	! block 102
.L182:
	ba	.L33
	nop

	! block 103
.L181:

!  413	               IF (DEST .LT. 0) GO TO 2050

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+8],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbuge	.L183
	nop

	! block 104
.L184:
	ba	.L33
	nop

	! block 105
.L183:

!  414	C
!  415	       ARGWV = 1.14 * SQRT (WEST / VEST)

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+4],%f3
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	fsqrts	%f2,%f3
	sethi	%hi(.L_cseg15),%l0
	or	%l0,%lo(.L_cseg15),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.argwv),%l0
	or	%l0,%lo(GPB.MAIN.argwv),%l0
	st	%f2,[%l0+0]

!  416	       EXPWV = EXP (ARGWV)

	sethi	%hi(GPB.MAIN.argwv),%l0
	or	%l0,%lo(GPB.MAIN.argwv),%l0
	ld	[%l0+0],%f2
	st	%f2,[%sp+68]
	ld	[%sp+68],%o0
	call	__expf
	nop
	fmovs	%f0,%f2
	sethi	%hi(GPB.MAIN.expwv),%l0
	or	%l0,%lo(GPB.MAIN.expwv),%l0
	st	%f2,[%l0+0]

!  417	       DECOR = 2. / (EXPWV + 1. / EXPWV)

	sethi	%hi(.L_cseg16),%l0
	or	%l0,%lo(.L_cseg16),%l0
	ld	[%l0+0],%f5
	sethi	%hi(GPB.MAIN.expwv),%l0
	or	%l0,%lo(GPB.MAIN.expwv),%l0
	ld	[%l0+0],%f4
	sethi	%hi(.L_cseg13),%l0
	or	%l0,%lo(.L_cseg13),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.expwv),%l0
	or	%l0,%lo(GPB.MAIN.expwv),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	fdivs	%f5,%f2,%f2
	sethi	%hi(GPB.MAIN.decor),%l0
	or	%l0,%lo(GPB.MAIN.decor),%l0
	st	%f2,[%l0+0]

!  418	        DEST = DEST / DECOR

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+8],%f3
	sethi	%hi(GPB.MAIN.decor),%l0
	or	%l0,%lo(GPB.MAIN.decor),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+8]

!  419	C     THE FACTOR DNORM/DECOR IS PRAGMATIC, DERIVED FROM NUMERICAL INTEGR
!  420	C ---------------------------------------------------------------------
!  421	C    CALCULATE BETA (PHASE) ANGLE FROM FULL-COLLECTOR CURRENTS IN BOX.
!  422	C
!  423	C* B = SBI/SI
!  424	C
!  425	               IF (BNORM .NE. 0) BEST = BSUM / BNORM

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+84],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmps	%f3,%f2
	nop
	fbe	.L185
	nop

	! block 106
.L186:
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+80],%f3
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+84],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+16]

	! block 107
.L185:

!  426	C ---------------------------------------------------------------------
!  427	CX    ALPHA ALGORITHM :
!  428	C
!  429	CX       SUM HALF- AND FULL-COLLECTOR CURRENTS IN THE BOX AND COMPUTE
!  430	CX          THEIR RATIO.
!  431	CX       DO A LINEAR SEARCH OF HFTOFL FOR THE FIRST ELEMENT LESS THAN
!  432	CX          THIS RATIO.  INDEX OF ELEMENT YIELDS ALPHA.
!  433	C
!  434	      IF (ITIME(6).EQ.7) AEST=0.0

	ld	[%fp-44],%l0
	add	%l0,24,%l0
	ld	[%l0+0],%l0
	cmp	%l0,7
	bne	.L187
	nop

	! block 108
.L188:
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+12]

	! block 109
.L187:

!  435	      IF (ITIME(6).EQ.7) GO TO 1280

	ld	[%fp-44],%l0
	add	%l0,24,%l0
	ld	[%l0+0],%l0
	cmp	%l0,7
	bne	.L190
	nop

	! block 110
.L191:
	ba	.L192
	nop

	! block 111
.L190:

!  436	               IF (MODSWI) 1200, 1200, 1280

	sethi	%hi(GPB.MAIN.modswi),%l0
	or	%l0,%lo(GPB.MAIN.modswi),%l0
	ld	[%l0+0],%l0
	cmp	%l0,0
	bg	.L192
	nop

	! block 112
.L194:
.L193:

!  437	 1200        DO 1220 IANGLE = ABOT, ATOP

	sethi	%hi(GPB.MAIN.atop),%l0
	or	%l0,%lo(GPB.MAIN.atop),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-148]
	sethi	%hi(GPB.MAIN.abot),%l0
	or	%l0,%lo(GPB.MAIN.abot),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	ld	[%fp-148],%l0
	cmp	%l1,%l0
	bg	.L196
	nop

	! block 113
.L200:
.L197:

!  438	      MATINA = IANGLE + IANGLE - 29

	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l0
	add	%l0,-29,%l1
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	st	%l1,[%l0+0]

!  439	      DO 1220 INERGY = EBOT, ETOP

	sethi	%hi(GPB.MAIN.etop),%l0
	or	%l0,%lo(GPB.MAIN.etop),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-152]
	sethi	%hi(GPB.MAIN.ebot),%l0
	or	%l0,%lo(GPB.MAIN.ebot),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-152],%l0
	cmp	%l1,%l0
	bg	.L201
	nop

	! block 114
.L205:
.L202:

!  440	C
!  441	      MATINB = INERGY * 28 + MATINA

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,5,%l2
	sll	%l0,2,%l1
	sub	%l2,%l1,%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l1
	sethi	%hi(GPB.MAIN.matinb),%l0
	or	%l0,%lo(GPB.MAIN.matinb),%l0
	st	%l1,[%l0+0]

!  442	       CURAB = MATMAT (MATINB)

	ld	[%fp-24],%l2
	sethi	%hi(GPB.MAIN.matinb),%l0
	or	%l0,%lo(GPB.MAIN.matinb),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.curab),%l0
	or	%l0,%lo(GPB.MAIN.curab),%l0
	st	%f2,[%l0+0]

!  443	               IF (CURAB .GT. 0) SUMAB = SUMAB + CURAB

	sethi	%hi(GPB.MAIN.curab),%l0
	or	%l0,%lo(GPB.MAIN.curab),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L206
	nop

	! block 115
.L207:
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+104],%f3
	sethi	%hi(GPB.MAIN.curab),%l0
	or	%l0,%lo(GPB.MAIN.curab),%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+104]

	! block 116
.L206:

!  444	        CURA = MATMAT (MATINB + 1)

	ld	[%fp-24],%l0
	add	%l0,4,%l2
	sethi	%hi(GPB.MAIN.matinb),%l0
	or	%l0,%lo(GPB.MAIN.matinb),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.cura),%l0
	or	%l0,%lo(GPB.MAIN.cura),%l0
	st	%f2,[%l0+0]

!  445	               IF (CURA .GT. 0) SUMA = SUMA + CURA

	sethi	%hi(GPB.MAIN.cura),%l0
	or	%l0,%lo(GPB.MAIN.cura),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L208
	nop

	! block 117
.L209:
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+100],%f3
	sethi	%hi(GPB.MAIN.cura),%l0
	or	%l0,%lo(GPB.MAIN.cura),%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+100]

	! block 118
.L208:
.L195:

!  446	 1220          CONTINUE

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-152],%l0
	cmp	%l1,%l0
	ble	.L202
	nop

	! block 119
.L210:
.L201:
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.iangle),%l0
	or	%l0,%lo(GPB.MAIN.iangle),%l0
	ld	[%l0+0],%l1
	ld	[%fp-148],%l0
	cmp	%l1,%l0
	ble	.L197
	nop

	! block 120
.L211:
.L196:

!  447	C
!  448	               IF (SUMAB .LE. 0) GO TO 1280

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+104],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L212
	nop

	! block 121
.L213:
	ba	.L192
	nop

	! block 122
.L212:

!  449	       RATIO = SUMA / SUMAB

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+100],%f3
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+104],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+60]

!  450	      DO 1240 J = 1, 45

	mov	1,%l1
	sethi	%hi(GPB.MAIN.j),%l0
	or	%l0,%lo(GPB.MAIN.j),%l0
	st	%l1,[%l0+0]

	! block 123
.L216:

!  451	               IF (RATIO .GT. HFTOFL (J)) GO TO 1240

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+60],%f3
	ld	[%fp-48],%l2
	sethi	%hi(GPB.MAIN.j),%l0
	or	%l0,%lo(GPB.MAIN.j),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L219
	nop

	! block 124
.L220:
	ba	.L214
	nop

	! block 125
.L219:

!  452	          JA = J

	sethi	%hi(GPB.MAIN.j),%l0
	or	%l0,%lo(GPB.MAIN.j),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.ja),%l0
	or	%l0,%lo(GPB.MAIN.ja),%l0
	st	%l1,[%l0+0]

!  453	               IF (JA .NE. 1) GO TO 1260

	sethi	%hi(GPB.MAIN.ja),%l0
	or	%l0,%lo(GPB.MAIN.ja),%l0
	ld	[%l0+0],%l0
	cmp	%l0,1
	be	.L222
	nop

	! block 126
.L223:
	ba	.L224
	nop

	! block 127
.L222:

!  454	               GO TO 1280

	ba	.L192
	nop

	! block 128
.L214:

!  455	 1240          CONTINUE

	sethi	%hi(GPB.MAIN.j),%l0
	or	%l0,%lo(GPB.MAIN.j),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.j),%l0
	or	%l0,%lo(GPB.MAIN.j),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.j),%l0
	or	%l0,%lo(GPB.MAIN.j),%l0
	ld	[%l0+0],%l0
	cmp	%l0,45
	ble	.L216
	nop

	! block 129
.L225:
.L215:

!  456	        AEST = 100.

	sethi	%hi(.L_cseg10),%l0
	or	%l0,%lo(.L_cseg10),%l0
	ld	[%l0+0],%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+12]

!  457	               GO TO 1280

	ba	.L192
	nop

	! block 130
.L224:

!  458	 1260   AEST = JA + JA - 46 + 2. *

	sethi	%hi(GPB.MAIN.ja),%l0
	or	%l0,%lo(GPB.MAIN.ja),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.ja),%l0
	or	%l0,%lo(GPB.MAIN.ja),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l0
	st	%l0,[%fp-164]
	ld	[%fp-164],%f2
	fitos	%f2,%f5
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+60],%f3
	ld	[%fp-48],%l2
	sethi	%hi(GPB.MAIN.ja),%l0
	or	%l0,%lo(GPB.MAIN.ja),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fsubs	%f3,%f2,%f3
	sethi	%hi(.L_cseg16),%l0
	or	%l0,%lo(.L_cseg16),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f4
	ld	[%fp-48],%l0
	add	%l0,4,%l2
	sethi	%hi(GPB.MAIN.ja),%l0
	or	%l0,%lo(GPB.MAIN.ja),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f3
	ld	[%fp-48],%l2
	sethi	%hi(GPB.MAIN.ja),%l0
	or	%l0,%lo(GPB.MAIN.ja),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fsubs	%f3,%f2,%f2
	fdivs	%f4,%f2,%f2
	fadds	%f5,%f2,%f3
	sethi	%hi(.L_cseg17),%l0
	or	%l0,%lo(.L_cseg17),%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+12]

	! block 131
.L192:

!  459	     2         (RATIO - HFTOFL (JA)) / (HFTOFL (JA + 1) - HFTOFL (JA))
!  460	 1280          IF (CK .GT.0.5) GO TO 2050

	sethi	%hi(GPB.MAIN.ck),%l0
	or	%l0,%lo(GPB.MAIN.ck),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg18),%l0
	or	%l0,%lo(.L_cseg18),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L226
	nop

	! block 132
.L227:
	ba	.L33
	nop

	! block 133
.L226:

!  461	C ---------------------------------------------------------------------
!  462	C*   -FIT.
!  463	C    GAUSSIAN TYPE FITS.
!  464	C
!  465	C    FIND MAXIMUM I*V*DV.
!  466	      BVDVMX = 0.0

	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.bvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.bvdvmx),%l0
	st	%f2,[%l0+0]

!  467	      JVDVMX = 0

	mov	0,%l1
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	st	%l1,[%l0+0]

!  468	C
!  469	      DO 1400 INERGY = EBOT, ETOP

	sethi	%hi(GPB.MAIN.etop),%l0
	or	%l0,%lo(GPB.MAIN.etop),%l0
	ld	[%l0+0],%l0
	st	%l0,[%fp-156]
	sethi	%hi(GPB.MAIN.ebot),%l0
	or	%l0,%lo(GPB.MAIN.ebot),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-156],%l0
	cmp	%l1,%l0
	bg	.L229
	nop

	! block 134
.L233:
.L230:

!  470	      BMXTES = BSUMS (INERGY) / (VBAR (INERGY) * DV (INERGY))

	ld	[%fp-32],%l2
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f4
	ld	[%fp-28],%l2
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f3
	ld	[%fp-52],%l2
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fdivs	%f4,%f2,%f2
	sethi	%hi(GPB.MAIN.bmxtes),%l0
	or	%l0,%lo(GPB.MAIN.bmxtes),%l0
	st	%f2,[%l0+0]

!  471	               IF (BMXTES .LE. BVDVMX) GO TO 1400

	sethi	%hi(GPB.MAIN.bmxtes),%l0
	or	%l0,%lo(GPB.MAIN.bmxtes),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.bvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.bvdvmx),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L235
	nop

	! block 135
.L236:
	ba	.L228
	nop

	! block 136
.L235:

!  472	      BVDVMX = BMXTES

	sethi	%hi(GPB.MAIN.bmxtes),%l0
	or	%l0,%lo(GPB.MAIN.bmxtes),%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.bvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.bvdvmx),%l0
	st	%f2,[%l0+0]

!  473	      JVDVMX = INERGY

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	st	%l1,[%l0+0]

	! block 137
.L228:

!  474	 1400          CONTINUE

	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.inergy),%l0
	or	%l0,%lo(GPB.MAIN.inergy),%l0
	ld	[%l0+0],%l1
	ld	[%fp-156],%l0
	cmp	%l1,%l0
	ble	.L230
	nop

	! block 138
.L237:
.L229:

!  475	C
!  476	               IF (JVDVMX .LE. 1) GO TO 1500

	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	cmp	%l0,1
	bg	.L238
	nop

	! block 139
.L239:
	ba	.L240
	nop

	! block 140
.L238:

!  477	               IF (JVDVMX .GE. 26) GO TO 1500

	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	cmp	%l0,26
	bl	.L241
	nop

	! block 141
.L242:
	ba	.L240
	nop

	! block 142
.L241:

!  478	          V1 = VBARM1 (JVDVMX)

	ld	[%fp-56],%l2
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.v1),%l0
	or	%l0,%lo(GPB.MAIN.v1),%l0
	st	%f2,[%l0+0]

!  479	          V2 = VBAR  (JVDVMX)

	ld	[%fp-28],%l2
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.v2),%l0
	or	%l0,%lo(GPB.MAIN.v2),%l0
	st	%f2,[%l0+0]

!  480	          V3 = VBARP1 (JVDVMX)

	ld	[%fp-60],%l2
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.v3),%l0
	or	%l0,%lo(GPB.MAIN.v3),%l0
	st	%f2,[%l0+0]

!  481	          F1 = BSUMM1 (JVDVMX) / (V1 * DVM1 (JVDVMX))

	ld	[%fp-64],%l2
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f4
	sethi	%hi(GPB.MAIN.v1),%l0
	or	%l0,%lo(GPB.MAIN.v1),%l0
	ld	[%l0+0],%f3
	ld	[%fp-68],%l2
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fdivs	%f4,%f2,%f2
	sethi	%hi(GPB.MAIN.f1),%l0
	or	%l0,%lo(GPB.MAIN.f1),%l0
	st	%f2,[%l0+0]

!  482	               IF (F1 .LE. 0) GO TO 1500

	sethi	%hi(GPB.MAIN.f1),%l0
	or	%l0,%lo(GPB.MAIN.f1),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L247
	nop

	! block 143
.L248:
	ba	.L240
	nop

	! block 144
.L247:

!  483	          F2 = BSUMS (JVDVMX) / (V2 * DV (JVDVMX))

	ld	[%fp-32],%l2
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f4
	sethi	%hi(GPB.MAIN.v2),%l0
	or	%l0,%lo(GPB.MAIN.v2),%l0
	ld	[%l0+0],%f3
	ld	[%fp-52],%l2
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fdivs	%f4,%f2,%f2
	sethi	%hi(GPB.MAIN.f2),%l0
	or	%l0,%lo(GPB.MAIN.f2),%l0
	st	%f2,[%l0+0]

!  484	               IF (F2 .LE. 0) GO TO 1500

	sethi	%hi(GPB.MAIN.f2),%l0
	or	%l0,%lo(GPB.MAIN.f2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L249
	nop

	! block 145
.L250:
	ba	.L240
	nop

	! block 146
.L249:

!  485	          F3 = BSUMP1 (JVDVMX) / (V3 * DVP1 (JVDVMX))

	ld	[%fp-72],%l2
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f4
	sethi	%hi(GPB.MAIN.v3),%l0
	or	%l0,%lo(GPB.MAIN.v3),%l0
	ld	[%l0+0],%f3
	ld	[%fp-76],%l2
	sethi	%hi(GPB.MAIN.jvdvmx),%l0
	or	%l0,%lo(GPB.MAIN.jvdvmx),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fdivs	%f4,%f2,%f2
	sethi	%hi(GPB.MAIN.f3),%l0
	or	%l0,%lo(GPB.MAIN.f3),%l0
	st	%f2,[%l0+0]

!  486	               IF (F3 .LE. 0) GO TO 1500

	sethi	%hi(GPB.MAIN.f3),%l0
	or	%l0,%lo(GPB.MAIN.f3),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L253
	nop

	! block 147
.L254:
	ba	.L240
	nop

	! block 148
.L253:

!  487	C
!  488	         R21 = ALOG (F2 / F1)

	sethi	%hi(GPB.MAIN.f2),%l0
	or	%l0,%lo(GPB.MAIN.f2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.f1),%l0
	or	%l0,%lo(GPB.MAIN.f1),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	st	%f2,[%sp+68]
	ld	[%sp+68],%o0
	call	__logf
	nop
	fmovs	%f0,%f2
	sethi	%hi(GPB.MAIN.r21),%l0
	or	%l0,%lo(GPB.MAIN.r21),%l0
	st	%f2,[%l0+0]

!  489	         R23 = ALOG (F2 / F3)

	sethi	%hi(GPB.MAIN.f2),%l0
	or	%l0,%lo(GPB.MAIN.f2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.f3),%l0
	or	%l0,%lo(GPB.MAIN.f3),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	st	%f2,[%sp+68]
	ld	[%sp+68],%o0
	call	__logf
	nop
	fmovs	%f0,%f2
	sethi	%hi(GPB.MAIN.r23),%l0
	or	%l0,%lo(GPB.MAIN.r23),%l0
	st	%f2,[%l0+0]

!  490	C
!  491	      V3V2 = V3 - V2

	sethi	%hi(GPB.MAIN.v3),%l0
	or	%l0,%lo(GPB.MAIN.v3),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.v2),%l0
	or	%l0,%lo(GPB.MAIN.v2),%l0
	ld	[%l0+0],%f2
	fsubs	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.v3v2),%l0
	or	%l0,%lo(GPB.MAIN.v3v2),%l0
	st	%f2,[%l0+0]

!  492	      V2V1 = V2 - V1

	sethi	%hi(GPB.MAIN.v2),%l0
	or	%l0,%lo(GPB.MAIN.v2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.v1),%l0
	or	%l0,%lo(GPB.MAIN.v1),%l0
	ld	[%l0+0],%f2
	fsubs	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.v2v1),%l0
	or	%l0,%lo(GPB.MAIN.v2v1),%l0
	st	%f2,[%l0+0]

!  493	      V3V1 = V3 - V1

	sethi	%hi(GPB.MAIN.v3),%l0
	or	%l0,%lo(GPB.MAIN.v3),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.v1),%l0
	or	%l0,%lo(GPB.MAIN.v1),%l0
	ld	[%l0+0],%f2
	fsubs	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.v3v1),%l0
	or	%l0,%lo(GPB.MAIN.v3v1),%l0
	st	%f2,[%l0+0]

!  494	      DENOM = V3V2 * R21 + V2V1 * R23

	sethi	%hi(GPB.MAIN.v3v2),%l0
	or	%l0,%lo(GPB.MAIN.v3v2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.r21),%l0
	or	%l0,%lo(GPB.MAIN.r21),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f4
	sethi	%hi(GPB.MAIN.v2v1),%l0
	or	%l0,%lo(GPB.MAIN.v2v1),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.r23),%l0
	or	%l0,%lo(GPB.MAIN.r23),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f2
	sethi	%hi(GPB.MAIN.denom),%l0
	or	%l0,%lo(GPB.MAIN.denom),%l0
	st	%f2,[%l0+0]

!  495	      V22 = V2 * V2

	sethi	%hi(GPB.MAIN.v2),%l0
	or	%l0,%lo(GPB.MAIN.v2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.v2),%l0
	or	%l0,%lo(GPB.MAIN.v2),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.v22),%l0
	or	%l0,%lo(GPB.MAIN.v22),%l0
	st	%f2,[%l0+0]

!  496	C
!  497	      VFIT = 0.5 * ((V3 * V3 - V22) * R21 + (V22 - V1 * V1) * R23)

	sethi	%hi(GPB.MAIN.v3),%l0
	or	%l0,%lo(GPB.MAIN.v3),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.v3),%l0
	or	%l0,%lo(GPB.MAIN.v3),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.v22),%l0
	or	%l0,%lo(GPB.MAIN.v22),%l0
	ld	[%l0+0],%f2
	fsubs	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.r21),%l0
	or	%l0,%lo(GPB.MAIN.r21),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f5
	sethi	%hi(GPB.MAIN.v22),%l0
	or	%l0,%lo(GPB.MAIN.v22),%l0
	ld	[%l0+0],%f4
	sethi	%hi(GPB.MAIN.v1),%l0
	or	%l0,%lo(GPB.MAIN.v1),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.v1),%l0
	or	%l0,%lo(GPB.MAIN.v1),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fsubs	%f4,%f2,%f3
	sethi	%hi(GPB.MAIN.r23),%l0
	or	%l0,%lo(GPB.MAIN.r23),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f5,%f2,%f3
	sethi	%hi(.L_cseg18),%l0
	or	%l0,%lo(.L_cseg18),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.denom),%l0
	or	%l0,%lo(GPB.MAIN.denom),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+20]

!  498	     2   / DENOM
!  499	C
!  500	      WFIT2 = V2V1 * V3V2 * V3V1 / DENOM

	sethi	%hi(GPB.MAIN.v2v1),%l0
	or	%l0,%lo(GPB.MAIN.v2v1),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.v3v2),%l0
	or	%l0,%lo(GPB.MAIN.v3v2),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.v3v1),%l0
	or	%l0,%lo(GPB.MAIN.v3v1),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.denom),%l0
	or	%l0,%lo(GPB.MAIN.denom),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.wfit2),%l0
	or	%l0,%lo(GPB.MAIN.wfit2),%l0
	st	%f2,[%l0+0]

!  501	               IF (WFIT2 .LE. 0) WFIT2 = 0

	sethi	%hi(GPB.MAIN.wfit2),%l0
	or	%l0,%lo(GPB.MAIN.wfit2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L255
	nop

	! block 149
.L256:
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.wfit2),%l0
	or	%l0,%lo(GPB.MAIN.wfit2),%l0
	st	%f2,[%l0+0]

	! block 150
.L255:

!  502	        WFIT = SQRT (WFIT2)

	sethi	%hi(GPB.MAIN.wfit2),%l0
	or	%l0,%lo(GPB.MAIN.wfit2),%l0
	ld	[%l0+0],%f2
	fsqrts	%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+24]

!  503	C
!  504	         ARG = V2V1 * V2V1 * R23 - V3V2 * V3V2 * R21

	sethi	%hi(GPB.MAIN.v2v1),%l0
	or	%l0,%lo(GPB.MAIN.v2v1),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.v2v1),%l0
	or	%l0,%lo(GPB.MAIN.v2v1),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.r23),%l0
	or	%l0,%lo(GPB.MAIN.r23),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f4
	sethi	%hi(GPB.MAIN.v3v2),%l0
	or	%l0,%lo(GPB.MAIN.v3v2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.v3v2),%l0
	or	%l0,%lo(GPB.MAIN.v3v2),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.r21),%l0
	or	%l0,%lo(GPB.MAIN.r21),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fsubs	%f4,%f2,%f2
	sethi	%hi(GPB.MAIN.arg),%l0
	or	%l0,%lo(GPB.MAIN.arg),%l0
	st	%f2,[%l0+0]

!  505	         ARG = .25 * ARG * ARG / (V2V1 * V3V2 * V3V1 * DENOM)

	sethi	%hi(GPB.MAIN.arg),%l0
	or	%l0,%lo(GPB.MAIN.arg),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg19),%l0
	or	%l0,%lo(.L_cseg19),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.arg),%l0
	or	%l0,%lo(GPB.MAIN.arg),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f4
	sethi	%hi(GPB.MAIN.v2v1),%l0
	or	%l0,%lo(GPB.MAIN.v2v1),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.v3v2),%l0
	or	%l0,%lo(GPB.MAIN.v3v2),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.v3v1),%l0
	or	%l0,%lo(GPB.MAIN.v3v1),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.denom),%l0
	or	%l0,%lo(GPB.MAIN.denom),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fdivs	%f4,%f2,%f2
	sethi	%hi(GPB.MAIN.arg),%l0
	or	%l0,%lo(GPB.MAIN.arg),%l0
	st	%f2,[%l0+0]

!  506	               IF (ARG .GT. 174.) GO TO 1500

	sethi	%hi(GPB.MAIN.arg),%l0
	or	%l0,%lo(GPB.MAIN.arg),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg20),%l0
	or	%l0,%lo(.L_cseg20),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L257
	nop

	! block 151
.L258:
	ba	.L240
	nop

	! block 152
.L257:

!  507	        DFIT = (F2 / RESP) * EXP (ARG)

	sethi	%hi(GPB.MAIN.f2),%l0
	or	%l0,%lo(GPB.MAIN.f2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.resp),%l0
	or	%l0,%lo(GPB.MAIN.resp),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f30
	st	%f30,[%fp-176]
	sethi	%hi(GPB.MAIN.arg),%l0
	or	%l0,%lo(GPB.MAIN.arg),%l0
	ld	[%l0+0],%f2
	st	%f2,[%sp+68]
	ld	[%sp+68],%o0
	call	__expf
	nop
	fmovs	%f0,%f2
	ld	[%fp-176],%f28
	fmuls	%f28,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+28]

	! block 153
.L240:

!  508	C
!  509	 1500      V = VFIT

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+20],%f2
	sethi	%hi(GPB.MAIN.v),%l0
	or	%l0,%lo(GPB.MAIN.v),%l0
	st	%f2,[%l0+0]

!  510	           W = WFIT

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+24],%f2
	sethi	%hi(GPB.MAIN.w),%l0
	or	%l0,%lo(GPB.MAIN.w),%l0
	st	%f2,[%l0+0]

!  511	           D = DFIT

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+28],%f2
	sethi	%hi(GPB.MAIN.d),%l0
	or	%l0,%lo(GPB.MAIN.d),%l0
	st	%f2,[%l0+0]

!  512	               IF (V .GT. 10. .AND. W .GT. 1. .AND. D .GT. .0001)

	sethi	%hi(GPB.MAIN.v),%l0
	or	%l0,%lo(GPB.MAIN.v),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg9),%l0
	or	%l0,%lo(.L_cseg9),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L259
	nop

	! block 154
.L262:
	sethi	%hi(GPB.MAIN.w),%l0
	or	%l0,%lo(GPB.MAIN.w),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg13),%l0
	or	%l0,%lo(.L_cseg13),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L259
	nop

	! block 155
.L263:
	sethi	%hi(GPB.MAIN.d),%l0
	or	%l0,%lo(GPB.MAIN.d),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg21),%l0
	or	%l0,%lo(.L_cseg21),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L259
	nop

	! block 156
.L264:
	ba	.L265
	nop

	! block 157
.L259:

!  513	     2            GO TO 1600
!  514	C
!  515	C    JUMP TO WRITE TAPE.
!  516	               GO TO 2050

	ba	.L33
	nop

	! block 158
.L265:

!  517	C
!  518	 1600          IF (DFIT .GT. 0) DFIT = 1.9011 * DFIT * WFIT

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+28],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbule	.L266
	nop

	! block 159
.L267:
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+28],%f3
	sethi	%hi(.L_cseg22),%l0
	or	%l0,%lo(.L_cseg22),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+24],%f2
	fmuls	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+28]

	! block 160
.L266:

!  519	C ---------------------------------------------------------------------
!  520	C     FIT BETA ANGLE.
!  521	C
!  522	C* 3-POINT DETERMINATION OF B
!  523	C    NOTE THAT B IS CONSTRAINED TO LIE IN THE SUNWARD QUADRANT.
!  524	C
!  525	               IF (MAXENE .EQ. J0) GO TO 2050

	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.j0),%l0
	or	%l0,%lo(GPB.MAIN.j0),%l0
	ld	[%l0+0],%l0
	cmp	%l1,%l0
	bne	.L268
	nop

	! block 161
.L269:
	ba	.L33
	nop

	! block 162
.L268:

!  526	               IF (MAXENE .EQ. J1) GO TO 2050

	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.j1),%l0
	or	%l0,%lo(GPB.MAIN.j1),%l0
	ld	[%l0+0],%l0
	cmp	%l1,%l0
	bne	.L270
	nop

	! block 163
.L271:
	ba	.L33
	nop

	! block 164
.L270:

!  527	C
!  528	      MATINA = MAXANG + MAXANG + MAXENE * 28 - 29

	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l3
	sethi	%hi(GPB.MAIN.maxene),%l0
	or	%l0,%lo(GPB.MAIN.maxene),%l0
	ld	[%l0+0],%l0
	sll	%l0,5,%l2
	sll	%l0,2,%l1
	sub	%l2,%l1,%l1
	add	%l3,%l1,%l0
	add	%l0,-29,%l1
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	st	%l1,[%l0+0]

!  529	          F1 = MATMM2 (MATINA)

	ld	[%fp-80],%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.f1),%l0
	or	%l0,%lo(GPB.MAIN.f1),%l0
	st	%f2,[%l0+0]

!  530	               IF (F1 .LE. 0) GO TO 2050

	sethi	%hi(GPB.MAIN.f1),%l0
	or	%l0,%lo(GPB.MAIN.f1),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L273
	nop

	! block 165
.L274:
	ba	.L33
	nop

	! block 166
.L273:

!  531	          F2 = MATMAT (MATINA)

	ld	[%fp-24],%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.f2),%l0
	or	%l0,%lo(GPB.MAIN.f2),%l0
	st	%f2,[%l0+0]

!  532	               IF (F2 .LE. 0) GO TO 2050

	sethi	%hi(GPB.MAIN.f2),%l0
	or	%l0,%lo(GPB.MAIN.f2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L275
	nop

	! block 167
.L276:
	ba	.L33
	nop

	! block 168
.L275:

!  533	          F3 = MATMP2 (MATINA)

	ld	[%fp-84],%l2
	sethi	%hi(GPB.MAIN.matina),%l0
	or	%l0,%lo(GPB.MAIN.matina),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.f3),%l0
	or	%l0,%lo(GPB.MAIN.f3),%l0
	st	%f2,[%l0+0]

!  534	               IF (F3 .LE. 0) GO TO 2050

	sethi	%hi(GPB.MAIN.f3),%l0
	or	%l0,%lo(GPB.MAIN.f3),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L278
	nop

	! block 169
.L279:
	ba	.L33
	nop

	! block 170
.L278:

!  535	C
!  536	         R21 = ALOG (F2 / F1)

	sethi	%hi(GPB.MAIN.f2),%l0
	or	%l0,%lo(GPB.MAIN.f2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.f1),%l0
	or	%l0,%lo(GPB.MAIN.f1),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	st	%f2,[%sp+68]
	ld	[%sp+68],%o0
	call	__logf
	nop
	fmovs	%f0,%f2
	sethi	%hi(GPB.MAIN.r21),%l0
	or	%l0,%lo(GPB.MAIN.r21),%l0
	st	%f2,[%l0+0]

!  537	         R23 = ALOG (F2 / F3)

	sethi	%hi(GPB.MAIN.f2),%l0
	or	%l0,%lo(GPB.MAIN.f2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.f3),%l0
	or	%l0,%lo(GPB.MAIN.f3),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	st	%f2,[%sp+68]
	ld	[%sp+68],%o0
	call	__logf
	nop
	fmovs	%f0,%f2
	sethi	%hi(GPB.MAIN.r23),%l0
	or	%l0,%lo(GPB.MAIN.r23),%l0
	st	%f2,[%l0+0]

!  538	       DENOM = R21 + R23

	sethi	%hi(GPB.MAIN.r21),%l0
	or	%l0,%lo(GPB.MAIN.r21),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.r23),%l0
	or	%l0,%lo(GPB.MAIN.r23),%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f2
	sethi	%hi(GPB.MAIN.denom),%l0
	or	%l0,%lo(GPB.MAIN.denom),%l0
	st	%f2,[%l0+0]

!  539	C
!  540	               IF (DENOM .LE. 0) GO TO 2050

	sethi	%hi(GPB.MAIN.denom),%l0
	or	%l0,%lo(GPB.MAIN.denom),%l0
	ld	[%l0+0],%f3
	sethi	%hi(.L_cseg2),%l0
	or	%l0,%lo(.L_cseg2),%l0
	ld	[%l0+0],%f2
	fcmpes	%f3,%f2
	nop
	fbug	.L280
	nop

	! block 171
.L281:
	ba	.L33
	nop

	! block 172
.L280:

!  541	C    EXTRACT AVERAGE BETA FOR EACH POINT.
!  542	         JJJ = MAXANG + MODWID

	sethi	%hi(GPB.MAIN.maxang),%l0
	or	%l0,%lo(GPB.MAIN.maxang),%l0
	ld	[%l0+0],%l2
	sethi	%hi(GPB.MAIN.modwid),%l0
	or	%l0,%lo(GPB.MAIN.modwid),%l0
	ld	[%l0+0],%l1
	add	%l2,%l1,%l1
	sethi	%hi(GPB.MAIN.jjj),%l0
	or	%l0,%lo(GPB.MAIN.jjj),%l0
	st	%l1,[%l0+0]

!  543	          X1 = BBARM1 (JJJ)

	ld	[%fp-88],%l2
	sethi	%hi(GPB.MAIN.jjj),%l0
	or	%l0,%lo(GPB.MAIN.jjj),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.x1),%l0
	or	%l0,%lo(GPB.MAIN.x1),%l0
	st	%f2,[%l0+0]

!  544	          X2 = BBAR2 (JJJ)

	ld	[%fp-40],%l2
	sethi	%hi(GPB.MAIN.jjj),%l0
	or	%l0,%lo(GPB.MAIN.jjj),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.x2),%l0
	or	%l0,%lo(GPB.MAIN.x2),%l0
	st	%f2,[%l0+0]

!  545	          X3 = BBARP1 (JJJ)

	ld	[%fp-92],%l2
	sethi	%hi(GPB.MAIN.jjj),%l0
	or	%l0,%lo(GPB.MAIN.jjj),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%f2
	sethi	%hi(GPB.MAIN.x3),%l0
	or	%l0,%lo(GPB.MAIN.x3),%l0
	st	%f2,[%l0+0]

!  546	        BFIT = .5 * ((X3 + X2) * R21 + (X2 + X1) * R23) / DENOM

	sethi	%hi(GPB.MAIN.x3),%l0
	or	%l0,%lo(GPB.MAIN.x3),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.x2),%l0
	or	%l0,%lo(GPB.MAIN.x2),%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.r21),%l0
	or	%l0,%lo(GPB.MAIN.r21),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f4
	sethi	%hi(GPB.MAIN.x2),%l0
	or	%l0,%lo(GPB.MAIN.x2),%l0
	ld	[%l0+0],%f3
	sethi	%hi(GPB.MAIN.x1),%l0
	or	%l0,%lo(GPB.MAIN.x1),%l0
	ld	[%l0+0],%f2
	fadds	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.r23),%l0
	or	%l0,%lo(GPB.MAIN.r23),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fadds	%f4,%f2,%f3
	sethi	%hi(.L_cseg18),%l0
	or	%l0,%lo(.L_cseg18),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f3
	sethi	%hi(GPB.MAIN.denom),%l0
	or	%l0,%lo(GPB.MAIN.denom),%l0
	ld	[%l0+0],%f2
	fdivs	%f3,%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+36]

	! block 173
.L33:

!  547	C ---------------------------------------------------------------------
!  548	C      CHECK  FOR  IMP8  SPIN  FLIP.
!  549	C    ADOPTED FLIP TIME : 4DEC73 1800 HRS.
!  550	 2050 ITSKIP=59

	mov	59,%l1
	sethi	%hi(GPB.MAIN.itskip),%l0
	or	%l0,%lo(GPB.MAIN.itskip),%l0
	st	%l1,[%l0+0]

!  551	      IF(ITIME(6).EQ.7) GO TO 2510

	ld	[%fp-44],%l0
	add	%l0,24,%l0
	ld	[%l0+0],%l0
	cmp	%l0,7
	bne	.L284
	nop

	! block 174
.L285:
	ba	.L286
	nop

	! block 175
.L284:

!  552	      ITSKIP=29

	mov	29,%l1
	sethi	%hi(GPB.MAIN.itskip),%l0
	or	%l0,%lo(GPB.MAIN.itskip),%l0
	st	%l1,[%l0+0]

!  553	       IF(ITIME(1).GT.1973) GO TO 2252

	ld	[%fp-44],%l0
	add	%l0,4,%l0
	ld	[%l0+0],%l0
	cmp	%l0,1973
	ble	.L287
	nop

	! block 176
.L288:
	ba	.L289
	nop

	! block 177
.L287:

!  554	      IF(ITIME(2) - 338) 2510, 2153, 2252

	ld	[%fp-44],%l0
	add	%l0,8,%l0
	ld	[%l0+0],%l0
	add	%l0,-338,%l0
	st	%l0,[%fp-160]
	ld	[%fp-160],%l0
	cmp	%l0,0
	bg	.L289
	nop

	! block 178
.L291:
	ld	[%fp-160],%l0
	cmp	%l0,0
	bl	.L286
	nop

	! block 179
.L292:
.L290:

!  555	 2153  IF(ITIME(3).LT.18) GO TO 2510

	ld	[%fp-44],%l0
	add	%l0,12,%l0
	ld	[%l0+0],%l0
	cmp	%l0,18
	bge	.L293
	nop

	! block 180
.L294:
	ba	.L286
	nop

	! block 181
.L293:
.L289:

!  556	 2252 AEST =-AEST

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+12],%f2
	fnegs	%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+12]

!  557	       BFIT = -BFIT

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+36],%f2
	fnegs	%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+36]

!  558	       BEST = -BEST

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+16],%f2
	fnegs	%f2,%f2
	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	st	%f2,[%l0+16]

	! block 182
.L286:

!  559	 2510 continue


!  560	      iarray(1) = mode

	sethi	%hi(readst_),%l0
	or	%l0,%lo(readst_),%l0
	ld	[%l0+0],%l1
	ld	[%fp-96],%l0
	add	%l0,4,%l0
	st	%l1,[%l0+0]

!  561	      do 2512 ixyz= 1, 7

	mov	1,%l1
	sethi	%hi(GPB.MAIN.ixyz),%l0
	or	%l0,%lo(GPB.MAIN.ixyz),%l0
	st	%l1,[%l0+0]

	! block 183
.L298:

!  562	         iarray(ixyz + 1) = itime(ixyz)

	ld	[%fp-44],%l2
	sethi	%hi(GPB.MAIN.ixyz),%l0
	or	%l0,%lo(GPB.MAIN.ixyz),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	ld	[%l0+0],%l3
	ld	[%fp-96],%l0
	add	%l0,4,%l2
	sethi	%hi(GPB.MAIN.ixyz),%l0
	or	%l0,%lo(GPB.MAIN.ixyz),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	st	%l3,[%l0+0]

	! block 184
.L296:

!  563	 2512 continue

	sethi	%hi(GPB.MAIN.ixyz),%l0
	or	%l0,%lo(GPB.MAIN.ixyz),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.ixyz),%l0
	or	%l0,%lo(GPB.MAIN.ixyz),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.ixyz),%l0
	or	%l0,%lo(GPB.MAIN.ixyz),%l0
	ld	[%l0+0],%l0
	cmp	%l0,7
	ble	.L298
	nop

	! block 185
.L301:
.L297:

!  564	      warray(9) = vint

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+40],%f2
	ld	[%fp-100],%l0
	add	%l0,36,%l0
	st	%f2,[%l0+0]

!  565	      warray(10) = vfit

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+20],%f2
	ld	[%fp-100],%l0
	add	%l0,40,%l0
	st	%f2,[%l0+0]

!  566	      warray(11) = vest

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+0],%f2
	ld	[%fp-100],%l0
	add	%l0,44,%l0
	st	%f2,[%l0+0]

!  567	      warray(12) = wint

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+44],%f2
	ld	[%fp-100],%l0
	add	%l0,48,%l0
	st	%f2,[%l0+0]

!  568	      warray(13) = wfit

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+24],%f2
	ld	[%fp-100],%l0
	add	%l0,52,%l0
	st	%f2,[%l0+0]

!  569	      warray(14) = west

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+4],%f2
	ld	[%fp-100],%l0
	add	%l0,56,%l0
	st	%f2,[%l0+0]

!  570	      warray(15) = dint

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+48],%f2
	ld	[%fp-100],%l0
	add	%l0,60,%l0
	st	%f2,[%l0+0]

!  571	      warray(16) = dfit

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+28],%f2
	ld	[%fp-100],%l0
	add	%l0,64,%l0
	st	%f2,[%l0+0]

!  572	      warray(17) = dest

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+8],%f2
	ld	[%fp-100],%l0
	add	%l0,68,%l0
	st	%f2,[%l0+0]

!  573	      warray(18) = aint

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+52],%f2
	ld	[%fp-100],%l0
	add	%l0,72,%l0
	st	%f2,[%l0+0]

!  574	      warray(19) = afit

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+32],%f2
	ld	[%fp-100],%l0
	add	%l0,76,%l0
	st	%f2,[%l0+0]

!  575	      warray(20) = aest

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+12],%f2
	ld	[%fp-100],%l0
	add	%l0,80,%l0
	st	%f2,[%l0+0]

!  576	      warray(21) = bint

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+56],%f2
	ld	[%fp-100],%l0
	add	%l0,84,%l0
	st	%f2,[%l0+0]

!  577	      warray(22) = bfit

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+36],%f2
	ld	[%fp-100],%l0
	add	%l0,88,%l0
	st	%f2,[%l0+0]

!  578	      warray(23) = best

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+16],%f2
	ld	[%fp-100],%l0
	add	%l0,92,%l0
	st	%f2,[%l0+0]

!  579	      call twritebat (wout, warray, 92)

	sethi	%hi(GPB.MAIN.wout),%l0
	or	%l0,%lo(GPB.MAIN.wout),%l0
	sethi	%hi(GPC.MAINEQUIV1_13),%l1
	or	%l1,%lo(GPC.MAINEQUIV1_13),%l1
	sethi	%hi(.L_cseg23),%l2
	or	%l2,%lo(.L_cseg23),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	twritebat_
	nop

!  580	      IF (MOD (ITALLY,ITSKIP).NE.0) GO TO 10

	sethi	%hi(GPB.MAIN.itally),%l0
	or	%l0,%lo(GPB.MAIN.itally),%l0
	ld	[%l0+0],%l1
	sethi	%hi(GPB.MAIN.itskip),%l0
	or	%l0,%lo(GPB.MAIN.itskip),%l0
	ld	[%l0+0],%l0
	mov	%l1,%o0
	mov	%l0,%o1
	call	.rem
	nop
	mov	%o0,%l0
	cmp	%l0,0
	be	.L303
	nop

	! block 186
.L304:
	ba	.L22
	nop

	! block 187
.L303:

!  581	      ITALLY = ITALLY+1

	sethi	%hi(GPB.MAIN.itally),%l0
	or	%l0,%lo(GPB.MAIN.itally),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.itally),%l0
	or	%l0,%lo(GPB.MAIN.itally),%l0
	st	%l1,[%l0+0]

!  582	      JINT = BINT*1.00001

	sethi	%hi(impanw_),%l0
	or	%l0,%lo(impanw_),%l0
	ld	[%l0+56],%f3
	sethi	%hi(.L_cseg24),%l0
	or	%l0,%lo(.L_cseg24),%l0
	ld	[%l0+0],%f2
	fmuls	%f3,%f2,%f2
	fstoi	%f2,%f2
	st	%f2,[%fp-164]
	ld	[%fp-164],%l1
	sethi	%hi(GPB.MAIN.jint),%l0
	or	%l0,%lo(GPB.MAIN.jint),%l0
	st	%l1,[%l0+0]

!  583	      PRINT 92250,MODE,(ITIME(I),I=1,6),

	sethi	%hi(GPB.MAIN.IO.306+24),%l0
	or	%l0,%lo(GPB.MAIN.IO.306+24),%l0
	st	%fp,[%l0+0]
	sethi	%hi(GPB.MAIN.IO.306),%l0
	or	%l0,%lo(GPB.MAIN.IO.306),%l0
	mov	%l0,%o0
	call	__s_wsFe_nv
	nop
	sethi	%hi(.L_cseg25),%l0
	or	%l0,%lo(.L_cseg25),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(readst_),%l2
	or	%l2,%lo(readst_),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	mov	1,%l1
	sethi	%hi(GPB.MAIN.i),%l0
	or	%l0,%lo(GPB.MAIN.i),%l0
	st	%l1,[%l0+0]

	! block 188
.L309:
	sethi	%hi(.L_cseg25),%l3
	or	%l3,%lo(.L_cseg25),%l3
	sethi	%hi(.L_cseg0),%l5
	or	%l5,%lo(.L_cseg0),%l5
	ld	[%fp-44],%l2
	sethi	%hi(GPB.MAIN.i),%l0
	or	%l0,%lo(GPB.MAIN.i),%l0
	ld	[%l0+0],%l0
	sll	%l0,2,%l1
	add	%l2,%l1,%l0
	mov	4,%l1
	mov	%l3,%o0
	mov	%l5,%o1
	mov	%l0,%o2
	mov	%l1,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(GPB.MAIN.i),%l0
	or	%l0,%lo(GPB.MAIN.i),%l0
	ld	[%l0+0],%l0
	add	%l0,1,%l1
	sethi	%hi(GPB.MAIN.i),%l0
	or	%l0,%lo(GPB.MAIN.i),%l0
	st	%l1,[%l0+0]
	sethi	%hi(GPB.MAIN.i),%l0
	or	%l0,%lo(GPB.MAIN.i),%l0
	ld	[%l0+0],%l0
	cmp	%l0,6
	ble	.L309
	nop

	! block 189
.L312:
.L308:
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_),%l2
	or	%l2,%lo(impanw_),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+20),%l2
	or	%l2,%lo(impanw_+20),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+4),%l2
	or	%l2,%lo(impanw_+4),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+24),%l2
	or	%l2,%lo(impanw_+24),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+8),%l2
	or	%l2,%lo(impanw_+8),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+28),%l2
	or	%l2,%lo(impanw_+28),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+12),%l2
	or	%l2,%lo(impanw_+12),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+16),%l2
	or	%l2,%lo(impanw_+16),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+36),%l2
	or	%l2,%lo(impanw_+36),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+40),%l2
	or	%l2,%lo(impanw_+40),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+44),%l2
	or	%l2,%lo(impanw_+44),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+48),%l2
	or	%l2,%lo(impanw_+48),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+52),%l2
	or	%l2,%lo(impanw_+52),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg25),%l0
	or	%l0,%lo(.L_cseg25),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(GPB.MAIN.jint),%l2
	or	%l2,%lo(GPB.MAIN.jint),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	sethi	%hi(.L_cseg26),%l0
	or	%l0,%lo(.L_cseg26),%l0
	sethi	%hi(.L_cseg0),%l1
	or	%l1,%lo(.L_cseg0),%l1
	sethi	%hi(impanw_+32),%l2
	or	%l2,%lo(impanw_+32),%l2
	mov	4,%l3
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	mov	%l3,%o3
	call	__do_f_out_nv
	nop
	call	__e_wsfe
	nop

!  584	     1   VEST,VFIT,WEST,WFIT,DEST,DFIT,AEST,BEST,BFIT,
!  585	     2   VINT,WINT,DINT,AINT,JINT,AFIT
!  586	92250 FORMAT (1X,I1,I5,I4,2(I3,I2),2F7.1,7F6.1,1P4E9.1,I5,0P1F12.4)
!  587	C
!  588	C    JUMP TO CALL READST.
!  589	               GO TO 10

	ba	.L22
	nop

	! block 190

!  590	C =====================================================================
!  591	C                                                                IMPANA
!  592	C    NORMAL TERMINATION IS PROVIDED BY READST.
!  593	C
!  594	               E N D

.L12:
.L13:
	jmp	%i7+8
	restore
	.size	MAIN_,(.-MAIN_)
	.align	8
	.align	8
	.skip	16

	! block 0

	.global	main
	.type	main,2
main:
	save	%sp,-96,%sp
	st	%i5,[%fp+88]
	st	%i4,[%fp+84]
	st	%i3,[%fp+80]
	st	%i2,[%fp+76]
	st	%i1,[%fp+72]
	st	%i0,[%fp+68]

	! block 1
.L315:
.L314:
	add	%fp,68,%l0
	add	%fp,72,%l1
	add	%fp,76,%l2
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	call	f77_init
	nop
	ld	[%fp+68],%l0
	ld	[%fp+72],%l1
	ld	[%fp+76],%l2
	mov	%l0,%o0
	mov	%l1,%o1
	mov	%l2,%o2
	call	__f77_init
	nop
	call	MAIN_
	nop
	mov	0,%l0
	mov	%l0,%o0
	call	__f77_exit
	nop
	mov	0,%l0
	mov	%l0,%i0
	jmp	%i7+8
	restore
	.size	main,(.-main)
	.align	8
	.common	readst_,3620,8
	.common	impanw_,108,8
	.common	proc_,4116,8

	.section	".data",#alloc,#write
	.align	8
GPB.MAIN.IO.306:
	.word	0x1000000
	.skip	4
	.word	0x6
	.skip	4
	.word	GPB.MAIN.FORMAT.305
	.skip	8
	.type	GPB.MAIN.IO.306,#object
	.size	GPB.MAIN.IO.306,28

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.maxap1:
	.skip	4
	.type	GPB.MAIN.maxap1,#object
	.size	GPB.MAIN.maxap1,4
	.align	8
GPB.MAIN.v3v2:
	.skip	4
	.type	GPB.MAIN.v3v2,#object
	.size	GPB.MAIN.v3v2,4
	.align	8
GPB.MAIN.jint:
	.skip	4
	.type	GPB.MAIN.jint,#object
	.size	GPB.MAIN.jint,4

	.section	".data",#alloc,#write
	.align	8
	.global	GPC.MAINEQUIV1_12
GPC.MAINEQUIV1_12:
	.skip	4
	.word	0x42ab999a,0x42c30000,0x42d40000,0x42ea0000
	.word	0x43010000,0x430f0000,0x431f0000,0x432f0000
	.word	0x43410000,0x43560000,0x436a0000,0x43830000
	.word	0x43918000,0x43a08000,0x43b20000,0x43c60000
	.word	0x43da8000,0x43f28000,0x44068000,0x44154000
	.word	0x44250000,0x4437c000,0x444c0000,0x44614000
	.word	0x447a4000,0x44892000
	.skip	4
	.type	GPC.MAINEQUIV1_12,#object
	.size	GPC.MAINEQUIV1_12,112

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.decor:
	.skip	4
	.type	GPB.MAIN.decor,#object
	.size	GPB.MAIN.decor,4
	.align	8
GPB.MAIN.ianmod:
	.skip	4
	.type	GPB.MAIN.ianmod,#object
	.size	GPB.MAIN.ianmod,4
	.align	8
GPB.MAIN.v2:
	.skip	4
	.type	GPB.MAIN.v2,#object
	.size	GPB.MAIN.v2,4
	.align	8
GPB.MAIN.itskip:
	.skip	4
	.type	GPB.MAIN.itskip,#object
	.size	GPB.MAIN.itskip,4
	.align	8
GPB.MAIN.vmean:
	.skip	4
	.type	GPB.MAIN.vmean,#object
	.size	GPB.MAIN.vmean,4

	.section	".data",#alloc,#write
	.align	4
GPB.MAIN.resp:
	.word	0x3f800000
	.type	GPB.MAIN.resp,#object
	.size	GPB.MAIN.resp,4

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.wfit2:
	.skip	4
	.type	GPB.MAIN.wfit2,#object
	.size	GPB.MAIN.wfit2,4

	.section	".data",#alloc,#write
	.align	4
GPB.MAIN.dnorm:
	.word	0x3dc31ceb
	.type	GPB.MAIN.dnorm,#object
	.size	GPB.MAIN.dnorm,4

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.x1:
	.skip	4
	.type	GPB.MAIN.x1,#object
	.size	GPB.MAIN.x1,4
	.align	8
GPB.MAIN.i:
	.skip	4
	.type	GPB.MAIN.i,#object
	.size	GPB.MAIN.i,4

	.section	".data",#alloc,#write
	.align	4
GPB.MAIN.x:
	.word	0x37338cbd
	.type	GPB.MAIN.x,#object
	.size	GPB.MAIN.x,4

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.maxang:
	.skip	4
	.type	GPB.MAIN.maxang,#object
	.size	GPB.MAIN.maxang,4
	.align	8
GPB.MAIN.jj:
	.skip	4
	.type	GPB.MAIN.jj,#object
	.size	GPB.MAIN.jj,4
	.align	8
GPB.MAIN.abot:
	.skip	4
	.type	GPB.MAIN.abot,#object
	.size	GPB.MAIN.abot,4
	.align	8
GPB.MAIN.j2:
	.skip	4
	.type	GPB.MAIN.j2,#object
	.size	GPB.MAIN.j2,4
	.align	8
GPB.MAIN.jvdvmx:
	.skip	4
	.type	GPB.MAIN.jvdvmx,#object
	.size	GPB.MAIN.jvdvmx,4
	.align	8
	.global	GPC.MAINEQUIV1_13
GPC.MAINEQUIV1_13:
	.skip	92
	.type	GPC.MAINEQUIV1_13,#object
	.size	GPC.MAINEQUIV1_13,92
	.align	8
GPB.MAIN.atop:
	.skip	4
	.type	GPB.MAIN.atop,#object
	.size	GPB.MAIN.atop,4
	.align	8
GPB.MAIN.vtemp:
	.skip	4
	.type	GPB.MAIN.vtemp,#object
	.size	GPB.MAIN.vtemp,4
	.align	8
GPB.MAIN.ii:
	.skip	4
	.type	GPB.MAIN.ii,#object
	.size	GPB.MAIN.ii,4
	.align	8
GPB.MAIN.i1:
	.skip	4
	.type	GPB.MAIN.i1,#object
	.size	GPB.MAIN.i1,4
	.align	8
GPB.MAIN.f1:
	.skip	4
	.type	GPB.MAIN.f1,#object
	.size	GPB.MAIN.f1,4

	.section	".data",#alloc,#write
	.align	4
GPB.MAIN.wout:
	.word	0x66743233
	.type	GPB.MAIN.wout,#object
	.size	GPB.MAIN.wout,4

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.maxene:
	.skip	4
	.type	GPB.MAIN.maxene,#object
	.size	GPB.MAIN.maxene,4
	.align	8
GPB.MAIN.iangle:
	.skip	4
	.type	GPB.MAIN.iangle,#object
	.size	GPB.MAIN.iangle,4
	.align	8
GPB.MAIN.v3:
	.skip	4
	.type	GPB.MAIN.v3,#object
	.size	GPB.MAIN.v3,4
	.align	8
	.global	GPC.MAINEQUIV1_4
GPC.MAINEQUIV1_4:
	.skip	112
	.type	GPC.MAINEQUIV1_4,#object
	.size	GPC.MAINEQUIV1_4,112
	.align	8
GPB.MAIN.j:
	.skip	4
	.type	GPB.MAIN.j,#object
	.size	GPB.MAIN.j,4
	.align	8
GPB.MAIN.x2:
	.skip	4
	.type	GPB.MAIN.x2,#object
	.size	GPB.MAIN.x2,4

	.section	".data",#alloc,#write
	.align	8
	.global	GPC.MAINEQUIV1_5
GPC.MAINEQUIV1_5:
	.word	0x42340000,0x42340000,0x4222b852,0x41340000
	.word	0x41340000,0x41340000,0x41340000,0x41340000
	.word	0x41340000,0x41340000,0x41340000,0x42340000
	.word	0x42340000,0x42340000,0x42340000,0x42340000
	.word	0x4222b852,0x41340000,0x41340000,0x41340000
	.word	0x41340000,0x41340000,0x41340000,0x41340000
	.word	0x41340000,0x42340000,0x42340000,0x42340000
	.word	0x42340000,0x42340000,0x42340000,0x42340000
	.word	0x42340000,0x42340000,0x42340000,0x4222b852
	.skip	24
	.type	GPC.MAINEQUIV1_5,#object
	.size	GPC.MAINEQUIV1_5,168

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.r23:
	.skip	4
	.type	GPB.MAIN.r23,#object
	.size	GPB.MAIN.r23,4
	.align	8
GPB.MAIN.eod:
	.skip	4
	.type	GPB.MAIN.eod,#object
	.size	GPB.MAIN.eod,4
	.align	8
GPB.MAIN.bvdvmx:
	.skip	4
	.type	GPB.MAIN.bvdvmx,#object
	.size	GPB.MAIN.bvdvmx,4
	.align	8
GPB.MAIN.ebot:
	.skip	4
	.type	GPB.MAIN.ebot,#object
	.size	GPB.MAIN.ebot,4

	.section	".data",#alloc,#write
	.align	8
	.global	GPC.MAINEQUIV1_7
GPC.MAINEQUIV1_7:
	.skip	4
	.word	0x41a66666,0x4189999a,0x4174cccd,0x41980000
	.word	0x41880000,0x41a00000,0x41980000,0x41600000
	.word	0x41a80000,0x41b00000,0x41d00000,0x420c0000
	.word	0x42040000,0x41f80000,0x42100000,0x42180000
	.word	0x42300000,0x42340000,0x424c0000,0x425c0000
	.word	0x42780000,0x42920000,0x429e0000,0x42be0000
	.word	0x42be0000,0x42d40000
	.skip	4
	.type	GPC.MAINEQUIV1_7,#object
	.size	GPC.MAINEQUIV1_7,112

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.etop:
	.skip	4
	.type	GPB.MAIN.etop,#object
	.size	GPB.MAIN.etop,4
	.align	8
GPB.MAIN.arg:
	.skip	4
	.type	GPB.MAIN.arg,#object
	.size	GPB.MAIN.arg,4
	.align	8
GPB.MAIN.inergy:
	.skip	4
	.type	GPB.MAIN.inergy,#object
	.size	GPB.MAIN.inergy,4
	.align	8
GPB.MAIN.bmxtes:
	.skip	4
	.type	GPB.MAIN.bmxtes,#object
	.size	GPB.MAIN.bmxtes,4
	.align	8
GPB.MAIN.f2:
	.skip	4
	.type	GPB.MAIN.f2,#object
	.size	GPB.MAIN.f2,4
	.align	8
GPB.MAIN.modswi:
	.skip	4
	.type	GPB.MAIN.modswi,#object
	.size	GPB.MAIN.modswi,4
	.align	8
GPB.MAIN.jjj:
	.skip	4
	.type	GPB.MAIN.jjj,#object
	.size	GPB.MAIN.jjj,4

	.section	".data",#alloc,#write
	.align	4
GPB.MAIN.ilim:
	.word	0xe,0xe,0x8
	.type	GPB.MAIN.ilim,#object
	.size	GPB.MAIN.ilim,12

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.v:
	.skip	4
	.type	GPB.MAIN.v,#object
	.size	GPB.MAIN.v,4
	.align	8
GPB.MAIN.v2v1:
	.skip	4
	.type	GPB.MAIN.v2v1,#object
	.size	GPB.MAIN.v2v1,4
	.align	8
GPB.MAIN.curvme:
	.skip	4
	.type	GPB.MAIN.curvme,#object
	.size	GPB.MAIN.curvme,4
	.align	8
GPB.MAIN.curab:
	.skip	4
	.type	GPB.MAIN.curab,#object
	.size	GPB.MAIN.curab,4
	.align	8
GPB.MAIN.j0:
	.skip	4
	.type	GPB.MAIN.j0,#object
	.size	GPB.MAIN.j0,4
	.align	8
GPB.MAIN.denom:
	.skip	4
	.type	GPB.MAIN.denom,#object
	.size	GPB.MAIN.denom,4

	.section	".data",#alloc,#write
	.align	8
	.global	GPC.MAINEQUIV1_2
GPC.MAINEQUIV1_2:
	.skip	4
	.word	0xc31d8000,0xc2e10000,0xc28f70a4,0xc21d8000
	.word	0xc1e10000,0xc1870000,0xc0b40000,0x40b40000
	.word	0x41870000,0x41e10000,0x421d8000,0x42870000
	.word	0x42e10000,0x431d8000,0xc31d8000,0xc2e10000
	.word	0xc28f70a4,0xc21d8000,0xc1e10000,0xc1870000
	.word	0xc0b40000,0x40b40000,0x41870000,0x41e10000
	.word	0x421d8000,0x42870000,0x42e10000,0x431d8000
	.word	0xc31d8000,0xc2e10000,0xc28f70a4,0xc1b40000
	.word	0x41b40000,0x42870000,0x42e10000,0x431d8000
	.skip	28
	.type	GPC.MAINEQUIV1_2,#object
	.size	GPC.MAINEQUIV1_2,176

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.x3:
	.skip	4
	.type	GPB.MAIN.x3,#object
	.size	GPB.MAIN.x3,4
	.align	8
GPB.MAIN.ijk:
	.skip	4
	.type	GPB.MAIN.ijk,#object
	.size	GPB.MAIN.ijk,4
	.align	8
GPB.MAIN.matina:
	.skip	4
	.type	GPB.MAIN.matina,#object
	.size	GPB.MAIN.matina,4
	.align	8
GPB.MAIN.ixyz:
	.skip	4
	.type	GPB.MAIN.ixyz,#object
	.size	GPB.MAIN.ixyz,4
	.align	8
GPB.MAIN.rmat:
	.skip	4
	.type	GPB.MAIN.rmat,#object
	.size	GPB.MAIN.rmat,4
	.align	8
GPB.MAIN.expwv:
	.skip	4
	.type	GPB.MAIN.expwv,#object
	.size	GPB.MAIN.expwv,4
	.align	8
GPB.MAIN.maxep1:
	.skip	4
	.type	GPB.MAIN.maxep1,#object
	.size	GPB.MAIN.maxep1,4
	.align	8
GPB.MAIN.modwid:
	.skip	4
	.type	GPB.MAIN.modwid,#object
	.size	GPB.MAIN.modwid,4
	.align	8
GPB.MAIN.j1m1:
	.skip	4
	.type	GPB.MAIN.j1m1,#object
	.size	GPB.MAIN.j1m1,4
	.align	8
GPB.MAIN.cur:
	.skip	4
	.type	GPB.MAIN.cur,#object
	.size	GPB.MAIN.cur,4
	.align	8
GPB.MAIN.ja:
	.skip	4
	.type	GPB.MAIN.ja,#object
	.size	GPB.MAIN.ja,4
	.align	8
GPB.MAIN.matine:
	.skip	4
	.type	GPB.MAIN.matine,#object
	.size	GPB.MAIN.matine,4
	.align	8
GPB.MAIN.v3v1:
	.skip	4
	.type	GPB.MAIN.v3v1,#object
	.size	GPB.MAIN.v3v1,4
	.align	8
GPB.MAIN.d:
	.skip	4
	.type	GPB.MAIN.d,#object
	.size	GPB.MAIN.d,4
	.align	8
GPB.MAIN.v1:
	.skip	4
	.type	GPB.MAIN.v1,#object
	.size	GPB.MAIN.v1,4
	.align	8
GPB.MAIN.f3:
	.skip	4
	.type	GPB.MAIN.f3,#object
	.size	GPB.MAIN.f3,4
	.align	8
GPB.MAIN.ck:
	.skip	4
	.type	GPB.MAIN.ck,#object
	.size	GPB.MAIN.ck,4
	.align	8
GPB.MAIN.v22:
	.skip	4
	.type	GPB.MAIN.v22,#object
	.size	GPB.MAIN.v22,4
	.align	8
GPB.MAIN.r21:
	.skip	4
	.type	GPB.MAIN.r21,#object
	.size	GPB.MAIN.r21,4
	.align	8
GPB.MAIN.w:
	.skip	4
	.type	GPB.MAIN.w,#object
	.size	GPB.MAIN.w,4
	.align	8
GPB.MAIN.j1:
	.skip	4
	.type	GPB.MAIN.j1,#object
	.size	GPB.MAIN.j1,4
	.align	8
GPB.MAIN.argwv:
	.skip	4
	.type	GPB.MAIN.argwv,#object
	.size	GPB.MAIN.argwv,4

	.section	".data",#alloc,#write
	.align	4
GPB.MAIN.hftofl:
	.skip	4
	.word	0x3c75c28f,0x3d343958,0x3d9ba5e3,0x3ddb22d1
	.word	0x3e0d4fdf,0x3e2c0831,0x3e48b439,0x3e656042
	.word	0x3e800000,0x3e8d4fdf,0x3e99999a,0x3ea56042
	.word	0x3eb126e9,0x3ebbe76d,0x3ec624dd,0x3ecfdf3b
	.word	0x3ed9999a,0x3ee2d0e5,0x3eeb851f,0x3ef3b646
	.word	0x3efb645a,0x3f000000,0x3f024dd3,0x3f0624dd
	.word	0x3f0a7efa,0x3f0e978d,0x3f133333,0x3f181062
	.word	0x3f1ced91,0x3f220c4a,0x3f276c8b,0x3f2d4fdf
	.word	0x3f333333,0x3f395810,0x3f400000,0x3f46a7f0
	.word	0x3f4dd2f2,0x3f54fdf4,0x3f5cac08,0x3f645a1d
	.word	0x3f6c8b44,0x3f74bc6a,0x3f7c28f6,0x3f800000
	.type	GPB.MAIN.hftofl,#object
	.size	GPB.MAIN.hftofl,180

	.section	".bss",#alloc,#write
	.align	8
GPB.MAIN.matinb:
	.skip	4
	.type	GPB.MAIN.matinb,#object
	.size	GPB.MAIN.matinb,4
	.align	8
GPB.MAIN.itally:
	.skip	4
	.type	GPB.MAIN.itally,#object
	.size	GPB.MAIN.itally,4
	.align	8
GPB.MAIN.cura:
	.skip	4
	.type	GPB.MAIN.cura,#object
	.size	GPB.MAIN.cura,4
	.align	8
GPB.MAIN.ccmax:
	.skip	4
	.type	GPB.MAIN.ccmax,#object
	.size	GPB.MAIN.ccmax,4
	.align	8
GPB.MAIN.dencur:
	.skip	4
	.type	GPB.MAIN.dencur,#object
	.size	GPB.MAIN.dencur,4

	.section	".rodata",#alloc
	.align	4
.L_cseg0:
	.word	0x1
	.type	.L_cseg0,#object
	.size	.L_cseg0,4
	.align	4
.L_cseg1:
	.word	0xf
	.type	.L_cseg1,#object
	.size	.L_cseg1,4
	.align	4
.L_cseg2:
	.skip	4
	.type	.L_cseg2,#object
	.size	.L_cseg2,4
	.align	4
.L_cseg3:
	.skip	3
	.type	.L_cseg3,#object
	.size	.L_cseg3,3
	.align	4
.L_cseg4:
	.word	0x68
	.type	.L_cseg4,#object
	.size	.L_cseg4,4
	.align	4
.L_cseg5:
	.word	0xc2c80000
	.type	.L_cseg5,#object
	.size	.L_cseg5,4
	.align	4
.L_cseg6:
	.word	0x3f86742a
	.type	.L_cseg6,#object
	.size	.L_cseg6,4
	.align	4
.L_cseg7:
	.word	0x3f7317ad
	.type	.L_cseg7,#object
	.size	.L_cseg7,4
	.align	4
.L_cseg8:
	.word	0x3dcccccd
	.type	.L_cseg8,#object
	.size	.L_cseg8,4
	.align	4
.L_cseg9:
	.word	0x41200000
	.type	.L_cseg9,#object
	.size	.L_cseg9,4
	.align	4
.L_cseg10:
	.word	0x42c80000
	.type	.L_cseg10,#object
	.size	.L_cseg10,4
	.align	4
.L_cseg11:
	.word	0x447a0000
	.type	.L_cseg11,#object
	.size	.L_cseg11,4
	.align	4
.L_cseg12:
	.word	0x461c4000
	.type	.L_cseg12,#object
	.size	.L_cseg12,4
	.align	4
.L_cseg13:
	.word	0x3f800000
	.type	.L_cseg13,#object
	.size	.L_cseg13,4
	.align	4
.L_cseg14:
	.word	0x3dc6a2b1
	.type	.L_cseg14,#object
	.size	.L_cseg14,4
	.align	4
.L_cseg15:
	.word	0x3f91eb85
	.type	.L_cseg15,#object
	.size	.L_cseg15,4
	.align	4
.L_cseg16:
	.word	0x40000000
	.type	.L_cseg16,#object
	.size	.L_cseg16,4
	.align	4
.L_cseg17:
	.word	0xc2380000
	.type	.L_cseg17,#object
	.size	.L_cseg17,4
	.align	4
.L_cseg18:
	.word	0x3f000000
	.type	.L_cseg18,#object
	.size	.L_cseg18,4
	.align	4
.L_cseg19:
	.word	0x3e800000
	.type	.L_cseg19,#object
	.size	.L_cseg19,4
	.align	4
.L_cseg20:
	.word	0x432e0000
	.type	.L_cseg20,#object
	.size	.L_cseg20,4
	.align	4
.L_cseg21:
	.word	0x38d1b717
	.type	.L_cseg21,#object
	.size	.L_cseg21,4
	.align	4
.L_cseg22:
	.word	0x3ff3573f
	.type	.L_cseg22,#object
	.size	.L_cseg22,4
	.align	4
.L_cseg23:
	.word	0x5c
	.type	.L_cseg23,#object
	.size	.L_cseg23,4
	.align	4
.L_cseg24:
	.word	0x3f800054
	.type	.L_cseg24,#object
	.size	.L_cseg24,4
	.align	4
.L_cseg25:
	.word	0x3
	.type	.L_cseg25,#object
	.size	.L_cseg25,4
	.align	4
.L_cseg26:
	.word	0x6
	.type	.L_cseg26,#object
	.size	.L_cseg26,4

	.section	".data",#alloc,#write
	.align	4
GPB.MAIN.FORMAT.305:
	.word	0x1
	.skip	12
	.word	0x4,0x1
	.skip	8
	.word	0x6,0x1
	.skip	8
	.word	0x7,0x1,0x1
	.skip	4
	.word	0x6,0x1
	.skip	8
	.word	0x7,0x5,0x1
	.skip	4
	.word	0x6,0x1
	.skip	8
	.word	0x7,0x4,0x1
	.skip	4
	.word	0x6,0x2
	.skip	8
	.word	0x1,0x8
	.skip	8
	.word	0x6,0x1
	.skip	8
	.word	0x7,0x3,0x1
	.skip	4
	.word	0x6,0x1
	.skip	8
	.word	0x7,0x2,0x1
	.skip	4
	.word	0x3
	.skip	12
	.word	0x6,0x2
	.skip	8
	.word	0x17,0x7,0x1
	.skip	4
	.word	0x6,0x7
	.skip	8
	.word	0x17,0x6,0x1
	.skip	4
	.word	0x14,0x1
	.skip	8
	.word	0x6,0x4
	.skip	8
	.word	0x18,0x9,0x1,0x2
	.word	0x6,0x1
	.skip	8
	.word	0x7,0x5,0x1
	.skip	4
	.word	0x14
	.skip	12
	.word	0x6,0x1
	.skip	8
	.word	0x17,0xc,0x4
	.skip	4
	.word	0x2,0x8
	.skip	8
	.type	GPB.MAIN.FORMAT.305,#object
	.size	GPB.MAIN.FORMAT.305,448

	.file	"impanal.f"
	.xstabs	".stab.index","V=3.1;R=3.0",60,0,0,842629697
	.xstabs	".stab.index","/amd/plas5/h1/vgr/src/imp;/opt/SUNWspro/bin/../SC4.0/bin/f77 -sbfast   impanal.f",52,0,0,0
	.xstabs	".stab.index","MAIN",36,0,0,0
	.xstabs	".stab.index","MAIN",42,0,0,0
	.xstabs	".stab.index","main",36,0,0,0
	.xstabs	".stab.sbfocus","impanal.f.0yUuhA.bd",72,0,0,0

	.global	__fsr_init_value
__fsr_init_value = 0x0
