#include <perms.h>

                                                                //      1  !%ROUTINESPEC READ SYMBOL(%INTEGERNAME I)
                                                                //      2  !%INTEGERFNSPEC NEXT SYMBOL
                                                                //      3  !%ROUTINESPEC SKIP SYMBOL
                                                                //      4  !%ROUTINESPEC PRINT SYMBOL(%INTEGER I)
                                                                //      5  !%ROUTINESPEC READ(%INTEGERNAME I)
                                                                //      6  !%ROUTINESPEC WRITE(%INTEGER I,J)
                                                                //      7  !%ROUTINESPEC SPACE
                                                                //      8  !%ROUTINESPEC SPACES(%INTEGER I)
                                                                //      9  !%ROUTINESPEC NEWLINE
                                                                //     10  !%ROUTINESPEC NEWLINES(%INTEGER I)
                                                                //     11  !%ROUTINESPEC NEWPAGE
                                                                //     12  
                                                                //     13  %BEGIN
#line 13 "regression-compile-tmp/skimp77.imp"
int main(int argc, char **argv) {
  _imp_initialise(argc, argv);
                                                                //     14  %ROUTINESPEC READ PS
#line 14 "regression-compile-tmp/skimp77.imp"
auto void READPS( void );
                                                                //     15  %ROUTINESPEC READ LINE
#line 15 "regression-compile-tmp/skimp77.imp"
auto void READLINE( void );
                                                                //     16  %INTEGERFNSPEC COMPARE
#line 16 "regression-compile-tmp/skimp77.imp"
auto int COMPARE( void );
                                                                //     17  %ROUTINESPEC SS
#line 17 "regression-compile-tmp/skimp77.imp"
auto void SS( void );
                                                                //     18  %ROUTINESPEC FAULT(%INTEGER A,B,C,D)
#line 18 "regression-compile-tmp/skimp77.imp"
auto void FAULT( int A, int B, int C, int D );
                                                                //     19  %INTEGERFNSPEC CHNEXT
#line 19 "regression-compile-tmp/skimp77.imp"
auto int CHNEXT( void );
                                                                //     20  %INTEGERFNSPEC NEWCELL
#line 20 "regression-compile-tmp/skimp77.imp"
auto int NEWCELL( void );
                                                                //     21  %INTEGERFNSPEC RETURN CELL(%INTEGER I)
#line 21 "regression-compile-tmp/skimp77.imp"
auto int RETURNCELL( int I );
                                                                //     22  %ROUTINESPEC PRINT NAME(%INTEGER I)
#line 22 "regression-compile-tmp/skimp77.imp"
auto void PRINTNAME( int I );
                                                                //     23  %INTEGER AP,APP,TP,PSP,ASL,BTN,CTN,CHP,FAULTS,LEVEL,CA,COMP,SCF
#line 23 "regression-compile-tmp/skimp77.imp"
int AP;
#line 23 "regression-compile-tmp/skimp77.imp"
int APP;
#line 23 "regression-compile-tmp/skimp77.imp"
int TP;
#line 23 "regression-compile-tmp/skimp77.imp"
int PSP;
#line 23 "regression-compile-tmp/skimp77.imp"
int ASL;
#line 23 "regression-compile-tmp/skimp77.imp"
int BTN;
#line 23 "regression-compile-tmp/skimp77.imp"
int CTN;
#line 23 "regression-compile-tmp/skimp77.imp"
int CHP;
#line 23 "regression-compile-tmp/skimp77.imp"
int FAULTS;
#line 23 "regression-compile-tmp/skimp77.imp"
int LEVEL;
#line 23 "regression-compile-tmp/skimp77.imp"
int CA;
#line 23 "regression-compile-tmp/skimp77.imp"
int COMP;
#line 23 "regression-compile-tmp/skimp77.imp"
int SCF;
                                                                //     24  %INTEGERARRAY PS(-1000:-600)                 ;! REDUCED PHRASE STRUCTURE
#line 24 "regression-compile-tmp/skimp77.imp"
int PS[401];
                                                                //     25  %INTEGERARRAY TAG,LINK(0:1023)               ;! TAGS LISTS
#line 25 "regression-compile-tmp/skimp77.imp"
int TAG[1024];
#line 25 "regression-compile-tmp/skimp77.imp"
int LINK[1024];
                                                                //     26  %INTEGERARRAY A(1:200)                       ;! ANALYSIS RECORD
#line 26 "regression-compile-tmp/skimp77.imp"
int A[200];
                                                                //     27  %INTEGERARRAY T(1:300)                       ;! SOURCE TEXT
#line 27 "regression-compile-tmp/skimp77.imp"
int T[300];
                                                                //     28  %INTEGERARRAY BAT,COT(0:1023)                ;! BRANCH, CONST TABLES
#line 28 "regression-compile-tmp/skimp77.imp"
int BAT[1024];
#line 28 "regression-compile-tmp/skimp77.imp"
int COT[1024];
                                                                //     29  %INTEGERARRAY CH(1:512)                      ;! NAME CHAR TABLE
#line 29 "regression-compile-tmp/skimp77.imp"
int CH[512];
                                                                //     30  %INTEGERARRAY JUMP,STAR,BRT,NAME,RTP,BR,CHPP,START,RAD(0:15)  ;! LEVEL INFORMATION
#line 30 "regression-compile-tmp/skimp77.imp"
int JUMP[16];
#line 30 "regression-compile-tmp/skimp77.imp"
int STAR[16];
#line 30 "regression-compile-tmp/skimp77.imp"
int BRT[16];
#line 30 "regression-compile-tmp/skimp77.imp"
int NAME[16];
#line 30 "regression-compile-tmp/skimp77.imp"
int RTP[16];
#line 30 "regression-compile-tmp/skimp77.imp"
int BR[16];
#line 30 "regression-compile-tmp/skimp77.imp"
int CHPP[16];
#line 30 "regression-compile-tmp/skimp77.imp"
int START[16];
#line 30 "regression-compile-tmp/skimp77.imp"
int RAD[16];
                                                                //     31  %INTEGERARRAY TRUE,FALSE(1:6)                ;! CONDITIONAL BRANCH INSTRUCTIONS
#line 31 "regression-compile-tmp/skimp77.imp"
int TRUE[6];
#line 31 "regression-compile-tmp/skimp77.imp"
int FALSE[6];
                                                                //     32  %INTEGERARRAY PREC,UCN(1:12)                 ;! OPERATOR PRECEDENCES, TYPES
#line 32 "regression-compile-tmp/skimp77.imp"
int PREC[12];
#line 32 "regression-compile-tmp/skimp77.imp"
int UCN[12];
                                                                //     33  %INTEGERARRAY OPR(0:12)                      ;! MACHINE OPERATIONS
#line 33 "regression-compile-tmp/skimp77.imp"
int OPR[13];
                                                                //     34  %INTEGERARRAY PT,PN,PTC(1:15)                ;! FOR RT SPECS, HEADINGS
#line 34 "regression-compile-tmp/skimp77.imp"
int PT[15];
#line 34 "regression-compile-tmp/skimp77.imp"
int PN[15];
#line 34 "regression-compile-tmp/skimp77.imp"
int PTC[15];
                                                                //     35       READ PS                             ;! READ IN AND REDUCE PHRASE STRUCTURE
#line 35 "regression-compile-tmp/skimp77.imp"
READPS();
                                                                //     36       ASL=0                               ;! CLEAR HASHING AREA &
#line 36 "regression-compile-tmp/skimp77.imp"
ASL = 0;
                                                                //     37  L10:  TAG(ASL)=0                          ;!  CREATE AVAILABLE SPACE LIST
#line 37 "regression-compile-tmp/skimp77.imp"
U_1000:;
#line 37 "regression-compile-tmp/skimp77.imp"
TAG[ASL] = 0;
                                                                //     38       LINK(ASL)=0                         ;!  IN REMAINDER
#line 38 "regression-compile-tmp/skimp77.imp"
LINK[ASL] = 0;
                                                                //     39       %IF ASL>=256 %AND ASL<1023 %THEN LINK(ASL)=ASL+1
#line 39 "regression-compile-tmp/skimp77.imp"
if (((ASL) < (256))) goto L_0002;
#line 39 "regression-compile-tmp/skimp77.imp"
if (((ASL) >= (1023))) goto L_0002;
#line 39 "regression-compile-tmp/skimp77.imp"
LINK[ASL] = (((int)(ASL)) + (1));
#line 39 "regression-compile-tmp/skimp77.imp"
L_0002:;
                                                                //     40       ASL=ASL+1
#line 40 "regression-compile-tmp/skimp77.imp"
ASL = (((int)(ASL)) + (1));
                                                                //     41       %IF ASL<=1023 %THEN ->L10
#line 41 "regression-compile-tmp/skimp77.imp"
if (((ASL) > (1023))) goto L_0003;
#line 41 "regression-compile-tmp/skimp77.imp"
goto U_1000;
#line 41 "regression-compile-tmp/skimp77.imp"
L_0003:;
                                                                //     42       ASL=256                             ;! AVAILABLE SPACE LIST POINTER
#line 42 "regression-compile-tmp/skimp77.imp"
ASL = 256;
                                                                //     43       BR(0)=M'BR0'                        ;! BASE REGISTER MNEMONICS
#line 43 "regression-compile-tmp/skimp77.imp"
BR[0] = 4346416;
                                                                //     44       BR(1)=M'BR1'
#line 44 "regression-compile-tmp/skimp77.imp"
BR[1] = 4346417;
                                                                //     45       BR(2)=M'BR2'
#line 45 "regression-compile-tmp/skimp77.imp"
BR[2] = 4346418;
                                                                //     46       BR(3)=M'BR3'
#line 46 "regression-compile-tmp/skimp77.imp"
BR[3] = 4346419;
                                                                //     47       BR(4)=M'BR4'
#line 47 "regression-compile-tmp/skimp77.imp"
BR[4] = 4346420;
                                                                //     48       BR(5)=M'BR5'
#line 48 "regression-compile-tmp/skimp77.imp"
BR[5] = 4346421;
                                                                //     49       BR(6)=M'BR6'
#line 49 "regression-compile-tmp/skimp77.imp"
BR[6] = 4346422;
                                                                //     50       BR(7)=M'BR7'
#line 50 "regression-compile-tmp/skimp77.imp"
BR[7] = 4346423;
                                                                //     51       BR(8)=M'BR8'
#line 51 "regression-compile-tmp/skimp77.imp"
BR[8] = 4346424;
                                                                //     52       BR(9)=M'BR9'
#line 52 "regression-compile-tmp/skimp77.imp"
BR[9] = 4346425;
                                                                //     53       BR(10)=M'BR10'
#line 53 "regression-compile-tmp/skimp77.imp"
BR[10] = 1112682800;
                                                                //     54       BR(11)=M'BR11'
#line 54 "regression-compile-tmp/skimp77.imp"
BR[11] = 1112682801;
                                                                //     55       BR(12)=M'BR12'
#line 55 "regression-compile-tmp/skimp77.imp"
BR[12] = 1112682802;
                                                                //     56       BR(13)=M'BR13'
#line 56 "regression-compile-tmp/skimp77.imp"
BR[13] = 1112682803;
                                                                //     57       BR(14)=M'BR14'
#line 57 "regression-compile-tmp/skimp77.imp"
BR[14] = 1112682804;
                                                                //     58       BR(15)=M'BR15'
#line 58 "regression-compile-tmp/skimp77.imp"
BR[15] = 1112682805;
                                                                //     59       TRUE(1)=M'BZ'                       ;! CONDITIONAL BRANCH MNEMONICS
#line 59 "regression-compile-tmp/skimp77.imp"
TRUE[0] = 16986;
                                                                //     60       FALSE(1)=M'BNZ'
#line 60 "regression-compile-tmp/skimp77.imp"
FALSE[0] = 4345434;
                                                                //     61       TRUE(2)=M'BNZ'
#line 61 "regression-compile-tmp/skimp77.imp"
TRUE[1] = 4345434;
                                                                //     62       FALSE(2)=M'BZ'
#line 62 "regression-compile-tmp/skimp77.imp"
FALSE[1] = 16986;
                                                                //     63       TRUE(3)=M'BNG'
#line 63 "regression-compile-tmp/skimp77.imp"
TRUE[2] = 4345415;
                                                                //     64       FALSE(3)=M'BG'
#line 64 "regression-compile-tmp/skimp77.imp"
FALSE[2] = 16967;
                                                                //     65       TRUE(4)=M'BL'
#line 65 "regression-compile-tmp/skimp77.imp"
TRUE[3] = 16972;
                                                                //     66       FALSE(4)=M'BNL'
#line 66 "regression-compile-tmp/skimp77.imp"
FALSE[3] = 4345420;
                                                                //     67       TRUE(5)=M'BNL'
#line 67 "regression-compile-tmp/skimp77.imp"
TRUE[4] = 4345420;
                                                                //     68       FALSE(5)=M'BL'
#line 68 "regression-compile-tmp/skimp77.imp"
FALSE[4] = 16972;
                                                                //     69       TRUE(6)=M'BG'
#line 69 "regression-compile-tmp/skimp77.imp"
TRUE[5] = 16967;
                                                                //     70       FALSE(6)=M'BNG'
#line 70 "regression-compile-tmp/skimp77.imp"
FALSE[5] = 4345415;
                                                                //     71       PREC(1)=3                           ;! OPERATOR PRECEDENCES
#line 71 "regression-compile-tmp/skimp77.imp"
PREC[0] = 3;
                                                                //     72       PREC(2)=3                           ;! 4 : HIGHEST
#line 72 "regression-compile-tmp/skimp77.imp"
PREC[1] = 3;
                                                                //     73       PREC(3)=2                           ;! 1 : LOWEST
#line 73 "regression-compile-tmp/skimp77.imp"
PREC[2] = 2;
                                                                //     74       PREC(4)=1
#line 74 "regression-compile-tmp/skimp77.imp"
PREC[3] = 1;
                                                                //     75       PREC(5)=1
#line 75 "regression-compile-tmp/skimp77.imp"
PREC[4] = 1;
                                                                //     76       PREC(6)=3
#line 76 "regression-compile-tmp/skimp77.imp"
PREC[5] = 3;
                                                                //     77       PREC(7)=2
#line 77 "regression-compile-tmp/skimp77.imp"
PREC[6] = 2;
                                                                //     78       PREC(8)=2
#line 78 "regression-compile-tmp/skimp77.imp"
PREC[7] = 2;
                                                                //     79       PREC(9)=1
#line 79 "regression-compile-tmp/skimp77.imp"
PREC[8] = 1;
                                                                //     80       PREC(10)=1
#line 80 "regression-compile-tmp/skimp77.imp"
PREC[9] = 1;
                                                                //     81       PREC(11)=1
#line 81 "regression-compile-tmp/skimp77.imp"
PREC[10] = 1;
                                                                //     82       PREC(12)=4
#line 82 "regression-compile-tmp/skimp77.imp"
PREC[11] = 4;
                                                                //     83       OPR(0)=M'LOAD'                      ;! MACHINE INSTRUCTION MNEMONICS
#line 83 "regression-compile-tmp/skimp77.imp"
OPR[0] = 1280262468;
                                                                //     84       OPR(1)=M'SHL'
#line 84 "regression-compile-tmp/skimp77.imp"
OPR[1] = 5457996;
                                                                //     85       OPR(2)=M'SHR'
#line 85 "regression-compile-tmp/skimp77.imp"
OPR[2] = 5458002;
                                                                //     86       OPR(3)=M'AND'
#line 86 "regression-compile-tmp/skimp77.imp"
OPR[3] = 4279876;
                                                                //     87       OPR(4)=M'XOR'
#line 87 "regression-compile-tmp/skimp77.imp"
OPR[4] = 5787474;
                                                                //     88       OPR(5)=M'OR'
#line 88 "regression-compile-tmp/skimp77.imp"
OPR[5] = 20306;
                                                                //     89       OPR(6)=M'EXP'
#line 89 "regression-compile-tmp/skimp77.imp"
OPR[6] = 4544592;
                                                                //     90       OPR(7)=M'DIV'
#line 90 "regression-compile-tmp/skimp77.imp"
OPR[7] = 4475222;
                                                                //     91       OPR(8)=M'MLT'
#line 91 "regression-compile-tmp/skimp77.imp"
OPR[8] = 5065812;
                                                                //     92       OPR(9)=M'ADD'
#line 92 "regression-compile-tmp/skimp77.imp"
OPR[9] = 4277316;
                                                                //     93       OPR(10)=M'SUB'
#line 93 "regression-compile-tmp/skimp77.imp"
OPR[10] = 5461314;
                                                                //     94       OPR(11)=M'NEG'
#line 94 "regression-compile-tmp/skimp77.imp"
OPR[11] = 5129543;
                                                                //     95       OPR(12)=M'NOT'
#line 95 "regression-compile-tmp/skimp77.imp"
OPR[12] = 5132116;
                                                                //     96       UCN(1)=3                            ;! OPERATOR TYPES
#line 96 "regression-compile-tmp/skimp77.imp"
UCN[0] = 3;
                                                                //     97       UCN(2)=3                            ;! 1 : UNARY
#line 97 "regression-compile-tmp/skimp77.imp"
UCN[1] = 3;
                                                                //     98       UCN(3)=2                            ;! 2 : BINARY COMMUTATIVE
#line 98 "regression-compile-tmp/skimp77.imp"
UCN[2] = 2;
                                                                //     99       UCN(3)=2                            ;! 3 : BINARY NON-COMMUTATIVE
#line 99 "regression-compile-tmp/skimp77.imp"
UCN[2] = 2;
                                                                //    100       UCN(4)=2
#line 100 "regression-compile-tmp/skimp77.imp"
UCN[3] = 2;
                                                                //    101       UCN(5)=2
#line 101 "regression-compile-tmp/skimp77.imp"
UCN[4] = 2;
                                                                //    102       UCN(6)=3
#line 102 "regression-compile-tmp/skimp77.imp"
UCN[5] = 3;
                                                                //    103       UCN(7)=3
#line 103 "regression-compile-tmp/skimp77.imp"
UCN[6] = 3;
                                                                //    104       UCN(8)=2
#line 104 "regression-compile-tmp/skimp77.imp"
UCN[7] = 2;
                                                                //    105       UCN(9)=2
#line 105 "regression-compile-tmp/skimp77.imp"
UCN[8] = 2;
                                                                //    106       UCN(10)=3
#line 106 "regression-compile-tmp/skimp77.imp"
UCN[9] = 3;
                                                                //    107       UCN(11)=1
#line 107 "regression-compile-tmp/skimp77.imp"
UCN[10] = 1;
                                                                //    108       UCN(12)=1
#line 108 "regression-compile-tmp/skimp77.imp"
UCN[11] = 1;
                                                                //    109       BTN=0                               ;! BRANCH TABLE POINTER
#line 109 "regression-compile-tmp/skimp77.imp"
BTN = 0;
                                                                //    110       CTN=0                               ;! CONSTANT TABLE POINTER
#line 110 "regression-compile-tmp/skimp77.imp"
CTN = 0;
                                                                //    111       CHP=1                               ;! NAME CHARACTER TABLE POINTER
#line 111 "regression-compile-tmp/skimp77.imp"
CHP = 1;
                                                                //    112       FAULTS=0                            ;! FAULT COUNT
#line 112 "regression-compile-tmp/skimp77.imp"
FAULTS = 0;
                                                                //    113       LEVEL=0                             ;! TEXTUAL LEVEL
#line 113 "regression-compile-tmp/skimp77.imp"
LEVEL = 0;
                                                                //    114       SCF=0                               ;! CONDITION FLAG
#line 114 "regression-compile-tmp/skimp77.imp"
SCF = 0;
                                                                //    115       JUMP(0)=0                           ;! JUMP LIST POINTER
#line 115 "regression-compile-tmp/skimp77.imp"
JUMP[0] = 0;
                                                                //    116       STAR(0)=0                           ;! STORAGE ALLOCATION POSITION IN COT
#line 116 "regression-compile-tmp/skimp77.imp"
STAR[0] = 0;
                                                                //    117       NAME(0)=0                           ;! NAME LIST POINTER
#line 117 "regression-compile-tmp/skimp77.imp"
NAME[0] = 0;
                                                                //    118       RTP(0)=-1                           ;! ROUTINE TYPE
#line 118 "regression-compile-tmp/skimp77.imp"
RTP[0] = (-1);
                                                                //    119       CHPP(0)=0                           ;! NAME CHARACTER TABLE POSITION
#line 119 "regression-compile-tmp/skimp77.imp"
CHPP[0] = 0;
                                                                //    120       START(0)=0                          ;! START/FINISH LIST
#line 120 "regression-compile-tmp/skimp77.imp"
START[0] = 0;
                                                                //    121       RAD(0)=10                           ;! NEXT RELATIVE ADDRESS TO BE ALLOCATED
#line 121 "regression-compile-tmp/skimp77.imp"
RAD[0] = 10;
                                                                //    122       CA=0                                ;! CURRENT CODE DUMPING ADDRESS
#line 122 "regression-compile-tmp/skimp77.imp"
CA = 0;
                                                                //    123       PRINT SYMBOL('P')
#line 123 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(80);
                                                                //    124       PRINT SYMBOL('R')
#line 124 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(82);
                                                                //    125       PRINT SYMBOL('G')
#line 125 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(71);
                                                                //    126       PRINT SYMBOL(':')
#line 126 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(58);
                                                                //    127  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    128  L1:   READ LINE
#line 128 "regression-compile-tmp/skimp77.imp"
U_1001:;
#line 128 "regression-compile-tmp/skimp77.imp"
READLINE();
                                                                //    129       TP=1                                      ;! TEXT POINTER
#line 129 "regression-compile-tmp/skimp77.imp"
TP = 1;
                                                                //    130  L2:   %IF T(TP)='!' %THEN ->L3                   ;! COMMENT - SKIP TO END
#line 130 "regression-compile-tmp/skimp77.imp"
U_1002:;
#line 130 "regression-compile-tmp/skimp77.imp"
if (((T[(((int)(TP)) - (1))]) != (33))) goto L_0004;
#line 130 "regression-compile-tmp/skimp77.imp"
goto U_1003;
#line 130 "regression-compile-tmp/skimp77.imp"
L_0004:;
                                                                //    131       PSP=-1000                                 ;! START OF <SS> IN PHRASE STRUCTURE TABLES
#line 131 "regression-compile-tmp/skimp77.imp"
PSP = (-1000);
                                                                //    132       AP=1
#line 132 "regression-compile-tmp/skimp77.imp"
AP = 1;
                                                                //    133       %IF COMPARE=1 %THEN %START                ;! SUCCESSFUL ANALYSIS
#line 133 "regression-compile-tmp/skimp77.imp"
if (((COMPARE()) != (1))) goto L_0005;
                                                                //    134          AP=1                                   ;! ANALYSIS RECORD POINTER
#line 134 "regression-compile-tmp/skimp77.imp"
AP = 1;
                                                                //    135          SS                                     ;! PROCESS SOURCE STATEMENT
#line 135 "regression-compile-tmp/skimp77.imp"
SS();
                                                                //    136          %IF T(TP-1)=';' %THEN ->L2              ;! FURTHER STATEMENT ON THIS LINE
#line 136 "regression-compile-tmp/skimp77.imp"
if (((T[(((int)((((int)(TP)) - (1)))) - (1))]) != (59))) goto L_0006;
#line 136 "regression-compile-tmp/skimp77.imp"
goto U_1002;
#line 136 "regression-compile-tmp/skimp77.imp"
L_0006:;
                                                                //    137          ->L1 ; %FINISH                          ;! GO TO READ NEXT LINE
#line 137 "regression-compile-tmp/skimp77.imp"
goto U_1001;
#line 137 "regression-compile-tmp/skimp77.imp"
L_0005:;
                                                                //    138       FAULT(M'SYNT',M'AX ?',M'    ',M'    ')    ;! UNSUCCESSFUL ANALYSIS
#line 138 "regression-compile-tmp/skimp77.imp"
FAULT(1398361684, 1096294463, 538976288, 538976288);
                                                                //    139  L5:   %IF T(TP)=10 %THEN ->L1                    ;! NEWLINE - READ NEXT LINE
#line 139 "regression-compile-tmp/skimp77.imp"
U_1004:;
#line 139 "regression-compile-tmp/skimp77.imp"
if (((T[(((int)(TP)) - (1))]) != (10))) goto L_0007;
#line 139 "regression-compile-tmp/skimp77.imp"
goto U_1001;
#line 139 "regression-compile-tmp/skimp77.imp"
L_0007:;
                                                                //    140       %IF T(TP)=';' %THEN %START                ;! END OF STATEMENT
#line 140 "regression-compile-tmp/skimp77.imp"
if (((T[(((int)(TP)) - (1))]) != (59))) goto L_0008;
                                                                //    141          TP=TP+1                                ;! TP TO START OF NEXT STATEMENT
#line 141 "regression-compile-tmp/skimp77.imp"
TP = (((int)(TP)) + (1));
                                                                //    142          ->L2 ; %FINISH                          ;! GO TO EXAMINE NEXT STATEMENT
#line 142 "regression-compile-tmp/skimp77.imp"
goto U_1002;
#line 142 "regression-compile-tmp/skimp77.imp"
L_0008:;
                                                                //    143  L3:   TP=TP+1                                   ;! SKIP TO NEXT CHARACTER OF STATEMENT
#line 143 "regression-compile-tmp/skimp77.imp"
U_1003:;
#line 143 "regression-compile-tmp/skimp77.imp"
TP = (((int)(TP)) + (1));
                                                                //    144       ->L5
#line 144 "regression-compile-tmp/skimp77.imp"
goto U_1004;
                                                                //    145  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //    146  %ROUTINE READ PS
#line 146 "regression-compile-tmp/skimp77.imp"
void READPS( void )
#line 146 "regression-compile-tmp/skimp77.imp"
{
                                                                //    147  ! READ IN AND REDUCE PHRASE STRUCTURE
                                                                //    148  %INTEGER PNP,ALT,P,I,J,K
#line 148 "regression-compile-tmp/skimp77.imp"
int PNP;
#line 148 "regression-compile-tmp/skimp77.imp"
int ALT;
#line 148 "regression-compile-tmp/skimp77.imp"
int P;
#line 148 "regression-compile-tmp/skimp77.imp"
int I;
#line 148 "regression-compile-tmp/skimp77.imp"
int J;
#line 148 "regression-compile-tmp/skimp77.imp"
int K;
                                                                //    149  %INTEGERARRAY PN,PSP(256:300)    ;! PHRASE NAME CHARS & POINTERS TO START OF PHRASES IN PS
#line 149 "regression-compile-tmp/skimp77.imp"
int PN[45];
#line 149 "regression-compile-tmp/skimp77.imp"
int PSP[45];
                                                                //    150  %ROUTINESPEC INSERT LIT
#line 150 "regression-compile-tmp/skimp77.imp"
auto void INSERTLIT( void );
                                                                //    151  %INTEGERFNSPEC GET PN
#line 151 "regression-compile-tmp/skimp77.imp"
auto int GETPN( void );
                                                                //    152       PNP=256                               ;! PN POINTER
#line 152 "regression-compile-tmp/skimp77.imp"
PNP = 256;
                                                                //    153       P=-1000                               ;! PS POINTER
#line 153 "regression-compile-tmp/skimp77.imp"
P = (-1000);
                                                                //    154  L1:   READ SYMBOL(I)
#line 154 "regression-compile-tmp/skimp77.imp"
U_1005:;
#line 154 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    155       %IF I='B' %THEN %START                ;! BUILT-IN PHRASE
#line 155 "regression-compile-tmp/skimp77.imp"
if (((I) != (66))) goto L_0009;
                                                                //    156  L2:      READ SYMBOL(I)                        ;! SKIP TO <
#line 156 "regression-compile-tmp/skimp77.imp"
U_1006:;
#line 156 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    157          %IF I\='<' %THEN ->L2
#line 157 "regression-compile-tmp/skimp77.imp"
if (((I) == (60))) goto L_000a;
#line 157 "regression-compile-tmp/skimp77.imp"
goto U_1006;
#line 157 "regression-compile-tmp/skimp77.imp"
L_000a:;
                                                                //    158          J=GET PN                           ;! READ PHRASE NAME & GET POSITION IN PSP
#line 158 "regression-compile-tmp/skimp77.imp"
J = GETPN();
                                                                //    159  L3:      READ SYMBOL(I)                        ;! SKIP TO =
#line 159 "regression-compile-tmp/skimp77.imp"
U_1007:;
#line 159 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    160          %IF I\='=' %THEN ->L3
#line 160 "regression-compile-tmp/skimp77.imp"
if (((I) == (61))) goto L_000b;
#line 160 "regression-compile-tmp/skimp77.imp"
goto U_1007;
#line 160 "regression-compile-tmp/skimp77.imp"
L_000b:;
                                                                //    161          READ(K)                            ;! READ PHRASE NUMBER
#line 161 "regression-compile-tmp/skimp77.imp"
_imp_READ(&K);
                                                                //    162          PSP(J)=K                           ;! FILL IN PHRASE NUMBER
#line 162 "regression-compile-tmp/skimp77.imp"
PSP[(((int)(J)) - (256))] = K;
                                                                //    163          ->L1 ; %FINISH                      ;! GO TO DEAL WITH NEXT PHRASE
#line 163 "regression-compile-tmp/skimp77.imp"
goto U_1005;
#line 163 "regression-compile-tmp/skimp77.imp"
L_0009:;
                                                                //    164       %IF I='P' %THEN %START                ;! PHRASE
#line 164 "regression-compile-tmp/skimp77.imp"
if (((I) != (80))) goto L_000c;
                                                                //    165  L4:      READ SYMBOL(I)                        ;! SKIP TO <
#line 165 "regression-compile-tmp/skimp77.imp"
U_1008:;
#line 165 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    166          %IF I\='<' %THEN ->L4
#line 166 "regression-compile-tmp/skimp77.imp"
if (((I) == (60))) goto L_000d;
#line 166 "regression-compile-tmp/skimp77.imp"
goto U_1008;
#line 166 "regression-compile-tmp/skimp77.imp"
L_000d:;
                                                                //    167          PSP(GET PN)=P                      ;! READ PHRASE NAME & FILL IN PS POSITION
#line 167 "regression-compile-tmp/skimp77.imp"
PSP[(((int)(GETPN())) - (256))] = P;
                                                                //    168  L7:      ALT=P                              ;! REMEMBER START POSITION IN PS OF THIS ALTERNATIVE
#line 168 "regression-compile-tmp/skimp77.imp"
U_1009:;
#line 168 "regression-compile-tmp/skimp77.imp"
ALT = P;
                                                                //    169  L6:      P=P+1                              ;! NEXT PS POSITION
#line 169 "regression-compile-tmp/skimp77.imp"
U_100a:;
#line 169 "regression-compile-tmp/skimp77.imp"
P = (((int)(P)) + (1));
                                                                //    170  L5:      READ SYMBOL(I)                        ;! START OF NEXT ITEM IN THIS ALTERNATIVE
#line 170 "regression-compile-tmp/skimp77.imp"
U_100b:;
#line 170 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    171          %IF I='''' %THEN %START            ;! LITERAL TEXT
#line 171 "regression-compile-tmp/skimp77.imp"
if (((I) != (39))) goto L_000e;
                                                                //    172             INSERT LIT                      ;! READ LITERAL & INSERT IN PS
#line 172 "regression-compile-tmp/skimp77.imp"
INSERTLIT();
                                                                //    173             ->L5 ; %FINISH                   ;! GO FOR NEXT ITEM
#line 173 "regression-compile-tmp/skimp77.imp"
goto U_100b;
#line 173 "regression-compile-tmp/skimp77.imp"
L_000e:;
                                                                //    174          %IF I='<' %THEN %START             ;! ITEM IS A PHRASE NAME
#line 174 "regression-compile-tmp/skimp77.imp"
if (((I) != (60))) goto L_000f;
                                                                //    175             PS(P)=GET PN                    ;! READ PHRASE NAME & FILL IN PS WITH PSP POSITION
#line 175 "regression-compile-tmp/skimp77.imp"
PS[((P) + ((int)(1000)))] = GETPN();
                                                                //    176             ->L6 ; %FINISH                   ;! GO FOR NEXT ITEM
#line 176 "regression-compile-tmp/skimp77.imp"
goto U_100a;
#line 176 "regression-compile-tmp/skimp77.imp"
L_000f:;
                                                                //    177          %IF I=',' %THEN %START             ;! END OF THIS ALTERNATIVE
#line 177 "regression-compile-tmp/skimp77.imp"
if (((I) != (44))) goto L_0010;
                                                                //    178             PS(ALT)=P                       ;! FILL IN POINTER TO END OF ALTERNATIVE
#line 178 "regression-compile-tmp/skimp77.imp"
PS[((ALT) + ((int)(1000)))] = P;
                                                                //    179             ->L7 ; %FINISH                   ;! GO FOR START OF NEXT ALTERNATIVE
#line 179 "regression-compile-tmp/skimp77.imp"
goto U_1009;
#line 179 "regression-compile-tmp/skimp77.imp"
L_0010:;
                                                                //    180          %IF I=';' %THEN %START             ;! END OF PHRASE DEFINITION
#line 180 "regression-compile-tmp/skimp77.imp"
if (((I) != (59))) goto L_0011;
                                                                //    181             PS(ALT)=P                       ;! FILL IN POINTER TO END OF ALTERNATIVE
#line 181 "regression-compile-tmp/skimp77.imp"
PS[((ALT) + ((int)(1000)))] = P;
                                                                //    182             PS(P)=0                         ;! FILL IN END OF PHRASE MARKER
#line 182 "regression-compile-tmp/skimp77.imp"
PS[((P) + ((int)(1000)))] = 0;
                                                                //    183             P=P+1                           ;! NEXT PS POSITION FOR START OF NEXT PHRASE DEFINITION
#line 183 "regression-compile-tmp/skimp77.imp"
P = (((int)(P)) + (1));
                                                                //    184             ->L1 ; %FINISH                   ;! GO FOR NEXT PHRASE
#line 184 "regression-compile-tmp/skimp77.imp"
goto U_1005;
#line 184 "regression-compile-tmp/skimp77.imp"
L_0011:;
                                                                //    185          ->L5 ; %FINISH                      ;! SKIP TO SOMETHING SIGNIFICANT
#line 185 "regression-compile-tmp/skimp77.imp"
goto U_100b;
#line 185 "regression-compile-tmp/skimp77.imp"
L_000c:;
                                                                //    186       %IF I='E' %THEN %START                ;! END OF PHRASE STRUCTURE DEFINITIONS
#line 186 "regression-compile-tmp/skimp77.imp"
if (((I) != (69))) goto L_0012;
                                                                //    187          I=-1000                            ;! REPLACE ALL POINTERS TO PSP WITH CORRECT PS POINTERS
#line 187 "regression-compile-tmp/skimp77.imp"
I = (-1000);
                                                                //    188  L8:      %IF PS(I)>=256 %THEN PS(I)=PSP(PS(I))
#line 188 "regression-compile-tmp/skimp77.imp"
U_100c:;
#line 188 "regression-compile-tmp/skimp77.imp"
if (((PS[((I) + ((int)(1000)))]) < (256))) goto L_0013;
#line 188 "regression-compile-tmp/skimp77.imp"
PS[((I) + ((int)(1000)))] = PSP[(((int)(PS[((I) + ((int)(1000)))])) - (256))];
#line 188 "regression-compile-tmp/skimp77.imp"
L_0013:;
                                                                //    189          I=I+1
#line 189 "regression-compile-tmp/skimp77.imp"
I = (((int)(I)) + (1));
                                                                //    190          %IF I\=P %THEN ->L8
#line 190 "regression-compile-tmp/skimp77.imp"
if (((I) == (P))) goto L_0014;
#line 190 "regression-compile-tmp/skimp77.imp"
goto U_100c;
#line 190 "regression-compile-tmp/skimp77.imp"
L_0014:;
                                                                //    191          %RETURN ; %FINISH
#line 191 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 191 "regression-compile-tmp/skimp77.imp"
L_0012:;
                                                                //    192       ->L1                                   ;! SKIP TO SOMETHING SIGNIFICANT
#line 192 "regression-compile-tmp/skimp77.imp"
goto U_1005;
                                                                //    193  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    194  %ROUTINE INSERT LIT
#line 194 "regression-compile-tmp/skimp77.imp"
void INSERTLIT( void )
#line 194 "regression-compile-tmp/skimp77.imp"
{
                                                                //    195  ! INSERT LITERAL TEXT INTO 'PS'
                                                                //    196  %INTEGER SH,I
#line 196 "regression-compile-tmp/skimp77.imp"
int SH;
#line 196 "regression-compile-tmp/skimp77.imp"
int I;
                                                                //    197       SH=0                                  ;! % SHIFT VALUE TO 0
#line 197 "regression-compile-tmp/skimp77.imp"
SH = 0;
                                                                //    198  L1:   READ SYMBOL(I)
#line 198 "regression-compile-tmp/skimp77.imp"
U_100d:;
#line 198 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    199       %IF I='''' %THEN %START
#line 199 "regression-compile-tmp/skimp77.imp"
if (((I) != (39))) goto L_0015;
                                                                //    200          %IF NEXT SYMBOL\='''' %THEN %RETURN    ;! END OF LITERAL
#line 200 "regression-compile-tmp/skimp77.imp"
if (((_imp_NEXTSYMBOL()) == (39))) goto L_0016;
#line 200 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 200 "regression-compile-tmp/skimp77.imp"
L_0016:;
                                                                //    201          READ SYMBOL(I)                    ;! QUOTE INSIDE LITERAL - IGNORE ONE
#line 201 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    202          %FINISH
#line 202 "regression-compile-tmp/skimp77.imp"
L_0015:;
                                                                //    203       %IF I='%' %THEN SH=128 %ELSE %START   ;! SHIFT VALUE TO 128 FOR %
#line 203 "regression-compile-tmp/skimp77.imp"
if (((I) != (37))) goto L_0017;
#line 203 "regression-compile-tmp/skimp77.imp"
SH = 128;
#line 203 "regression-compile-tmp/skimp77.imp"
goto L_0018;
#line 203 "regression-compile-tmp/skimp77.imp"
L_0017:;
                                                                //    204          %IF I<'A' %OR I>'Z' %THEN SH=0     ;! END OF KEYWORD - SHIFT VALUE TO 0
#line 204 "regression-compile-tmp/skimp77.imp"
if (((I) < (65))) goto L_0019;
#line 204 "regression-compile-tmp/skimp77.imp"
if (((I) <= (90))) goto L_001a;
#line 204 "regression-compile-tmp/skimp77.imp"
L_0019:;
#line 204 "regression-compile-tmp/skimp77.imp"
SH = 0;
#line 204 "regression-compile-tmp/skimp77.imp"
L_001a:;
                                                                //    205          PS(P)=I+SH                     ;! STORE SHIFTED (POSSIBLY) CHAR IN PS
#line 205 "regression-compile-tmp/skimp77.imp"
PS[((P) + ((int)(1000)))] = (((int)(I)) + (SH));
                                                                //    206          P=P+1                          ;! MOVE TO NEXT POSITION IN PS
#line 206 "regression-compile-tmp/skimp77.imp"
P = (((int)(P)) + (1));
                                                                //    207          %FINISH
#line 207 "regression-compile-tmp/skimp77.imp"
L_0018:;
                                                                //    208       ->L1
#line 208 "regression-compile-tmp/skimp77.imp"
goto U_100d;
                                                                //    209  %END
#line 209 "regression-compile-tmp/skimp77.imp"
return;
} // End of block INSERTLIT at level 3
                                                                //    210  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    211  %INTEGERFN GET PN
#line 211 "regression-compile-tmp/skimp77.imp"
int GETPN( void )
#line 211 "regression-compile-tmp/skimp77.imp"
{
                                                                //    212  ! READ IN PHRASE NAME AND GET INDEX IN 'PSP'
                                                                //    213  %INTEGER NP,S,I
#line 213 "regression-compile-tmp/skimp77.imp"
int NP;
#line 213 "regression-compile-tmp/skimp77.imp"
int S;
#line 213 "regression-compile-tmp/skimp77.imp"
int I;
                                                                //    214       NP=0                            ;! TO ACCUMULATE PHRASE NAME CHARS
#line 214 "regression-compile-tmp/skimp77.imp"
NP = 0;
                                                                //    215       S=24                            ;! INITIAL SHIFT VALUE TO PACK CHARS
#line 215 "regression-compile-tmp/skimp77.imp"
S = 24;
                                                                //    216  L1:   READ SYMBOL(I)
#line 216 "regression-compile-tmp/skimp77.imp"
U_100e:;
#line 216 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    217       %IF I\='>' %THEN %START         ;! NOT END OF NAME YET
#line 217 "regression-compile-tmp/skimp77.imp"
if (((I) == (62))) goto L_001b;
                                                                //    218          NP=NP!I<<S                   ;! PACK NEXT CHAR OF PHRASE NAME
#line 218 "regression-compile-tmp/skimp77.imp"
NP = ((NP) | (((I) << (S))));
                                                                //    219          S=S-8                        ;! REDUCE SHIFT VALUE FOR NEXT CHAR
#line 219 "regression-compile-tmp/skimp77.imp"
S = (((int)(S)) - (8));
                                                                //    220          ->L1 ; %FINISH
#line 220 "regression-compile-tmp/skimp77.imp"
goto U_100e;
#line 220 "regression-compile-tmp/skimp77.imp"
L_001b:;
                                                                //    221       %IF PNP\=256 %THEN %START       ;! NOT FIRST PHRASE NAME
#line 221 "regression-compile-tmp/skimp77.imp"
if (((PNP) == (256))) goto L_001c;
                                                                //    222          I=256                        ;! SCAN NAMES TO FIND IF ALREADY IN
#line 222 "regression-compile-tmp/skimp77.imp"
I = 256;
                                                                //    223  L2:      %IF NP=PN(I) %THEN %RESULT=I
#line 223 "regression-compile-tmp/skimp77.imp"
U_100f:;
#line 223 "regression-compile-tmp/skimp77.imp"
if (((NP) != (PN[(((int)(I)) - (256))]))) goto L_001d;
#line 223 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return I;
#line 223 "regression-compile-tmp/skimp77.imp"
L_001d:;
                                                                //    224          I=I+1
#line 224 "regression-compile-tmp/skimp77.imp"
I = (((int)(I)) + (1));
                                                                //    225          %IF I\=PNP %THEN ->L2
#line 225 "regression-compile-tmp/skimp77.imp"
if (((I) == (PNP))) goto L_001e;
#line 225 "regression-compile-tmp/skimp77.imp"
goto U_100f;
#line 225 "regression-compile-tmp/skimp77.imp"
L_001e:;
                                                                //    226          %FINISH
#line 226 "regression-compile-tmp/skimp77.imp"
L_001c:;
                                                                //    227       PN(PNP)=NP                      ;! INSERT NEW NAME IN DICTIONARY
#line 227 "regression-compile-tmp/skimp77.imp"
PN[(((int)(PNP)) - (256))] = NP;
                                                                //    228       PSP(PNP)=99999                  ;! UNDEFINED PHRASE MARKER
#line 228 "regression-compile-tmp/skimp77.imp"
PSP[(((int)(PNP)) - (256))] = 99999;
                                                                //    229       PNP=PNP+1                       ;! MOVE TO NEXT DICTIONARY POSITION
#line 229 "regression-compile-tmp/skimp77.imp"
PNP = (((int)(PNP)) + (1));
                                                                //    230       %RESULT=PNP-1
#line 230 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return (((int)(PNP)) - (1));
                                                                //    231  %END
#line 231 "regression-compile-tmp/skimp77.imp"
} // End of block GETPN at level 3
                                                                //    232  %END
#line 232 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block READPS at level 2
                                                                //    233  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //    234  %ROUTINE READ LINE
#line 234 "regression-compile-tmp/skimp77.imp"
void READLINE( void )
#line 234 "regression-compile-tmp/skimp77.imp"
{
                                                                //    235  ! LEXICAL PHASE - READ & CLEAN UP NEXT LINE OF TEXT
                                                                //    236  %ROUTINESPEC STORE(%INTEGER I)
#line 236 "regression-compile-tmp/skimp77.imp"
auto void STORE( int I );
                                                                //    237  %INTEGER SH,I
#line 237 "regression-compile-tmp/skimp77.imp"
int SH;
#line 237 "regression-compile-tmp/skimp77.imp"
int I;
                                                                //    238       NEWLINES(2)
#line 238 "regression-compile-tmp/skimp77.imp"
_imp_NEWLINES(2);
                                                                //    239       PRINT SYMBOL(';')
#line 239 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(59);
                                                                //    240       SH=0                                ;! % & LITERAL SHIFT VALUE TO 0
#line 240 "regression-compile-tmp/skimp77.imp"
SH = 0;
                                                                //    241       TP=1                                ;! POINTER TO TEXT ARRAY T
#line 241 "regression-compile-tmp/skimp77.imp"
TP = 1;
                                                                //    242  L1:   READ SYMBOL(I)
#line 242 "regression-compile-tmp/skimp77.imp"
U_1010:;
#line 242 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    243       %IF I=10 %AND TP=1 %THEN ->L1
#line 243 "regression-compile-tmp/skimp77.imp"
if (((I) != (10))) goto L_001f;
#line 243 "regression-compile-tmp/skimp77.imp"
if (((TP) != (1))) goto L_001f;
#line 243 "regression-compile-tmp/skimp77.imp"
goto U_1010;
#line 243 "regression-compile-tmp/skimp77.imp"
L_001f:;
                                                                //    244       PRINT SYMBOL(I)
#line 244 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(I);
                                                                //    245       %IF I='''' %THEN %START
#line 245 "regression-compile-tmp/skimp77.imp"
if (((I) != (39))) goto L_0020;
                                                                //    246          SH=128                           ;! SHIFT VALUE FOR LITERAL
#line 246 "regression-compile-tmp/skimp77.imp"
SH = 128;
                                                                //    247  L2:      STORE(I)                         ;! STORE SHIFTED CHAR IN TEXT ARRAY
#line 247 "regression-compile-tmp/skimp77.imp"
U_1011:;
#line 247 "regression-compile-tmp/skimp77.imp"
STORE(I);
                                                                //    248          READ SYMBOL(I)
#line 248 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    249          PRINT SYMBOL(I)
#line 249 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(I);
                                                                //    250          %IF I=10 %THEN PRINT SYMBOL(';')
#line 250 "regression-compile-tmp/skimp77.imp"
if (((I) != (10))) goto L_0021;
#line 250 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(59);
#line 250 "regression-compile-tmp/skimp77.imp"
L_0021:;
                                                                //    251          %IF I\='''' %THEN ->L2            ;! NOT END OF LITERAL YET
#line 251 "regression-compile-tmp/skimp77.imp"
if (((I) == (39))) goto L_0022;
#line 251 "regression-compile-tmp/skimp77.imp"
goto U_1011;
#line 251 "regression-compile-tmp/skimp77.imp"
L_0022:;
                                                                //    252          READ SYMBOL(I)
#line 252 "regression-compile-tmp/skimp77.imp"
_imp_READSYMBOL(&I);
                                                                //    253          PRINT SYMBOL(I)
#line 253 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(I);
                                                                //    254          %IF I='''' %THEN ->L2             ;! QUOTE IN LITERAL - IGNORE ONE
#line 254 "regression-compile-tmp/skimp77.imp"
if (((I) != (39))) goto L_0023;
#line 254 "regression-compile-tmp/skimp77.imp"
goto U_1011;
#line 254 "regression-compile-tmp/skimp77.imp"
L_0023:;
                                                                //    255          SH=0                             ;! SHIFT VALUE TO 0 FOR END OF LITERAL
#line 255 "regression-compile-tmp/skimp77.imp"
SH = 0;
                                                                //    256          STORE('''')                      ;! STORE UNSHIFTED VALUE TO MARK END
#line 256 "regression-compile-tmp/skimp77.imp"
STORE(39);
                                                                //    257          %FINISH
#line 257 "regression-compile-tmp/skimp77.imp"
L_0020:;
                                                                //    258       %IF I='%' %THEN SH=128 %ELSE %START ;! SHIFT VALUE TO 128 FOR KEYWORD
#line 258 "regression-compile-tmp/skimp77.imp"
if (((I) != (37))) goto L_0024;
#line 258 "regression-compile-tmp/skimp77.imp"
SH = 128;
#line 258 "regression-compile-tmp/skimp77.imp"
goto L_0025;
#line 258 "regression-compile-tmp/skimp77.imp"
L_0024:;
                                                                //    259          %IF I<'A' %OR I>'Z' %THEN SH=0   ;! SHIFT VALUE TO 0 FOR END OF KEYWORD
#line 259 "regression-compile-tmp/skimp77.imp"
if (((I) < (65))) goto L_0026;
#line 259 "regression-compile-tmp/skimp77.imp"
if (((I) <= (90))) goto L_0027;
#line 259 "regression-compile-tmp/skimp77.imp"
L_0026:;
#line 259 "regression-compile-tmp/skimp77.imp"
SH = 0;
#line 259 "regression-compile-tmp/skimp77.imp"
L_0027:;
                                                                //    260          %IF I\=' ' %THEN %START          ;! IGNORE SPACES
#line 260 "regression-compile-tmp/skimp77.imp"
if (((I) == (32))) goto L_0028;
                                                                //    261             STORE(I)
#line 261 "regression-compile-tmp/skimp77.imp"
STORE(I);
                                                                //    262             %IF I=10 %THEN %START         ;! NEWLINE CHAR
#line 262 "regression-compile-tmp/skimp77.imp"
if (((I) != (10))) goto L_0029;
                                                                //    263                %IF T(TP-2)='C'+128 %THEN %START
#line 263 "regression-compile-tmp/skimp77.imp"
if (((T[(((int)((((int)(TP)) - (2)))) - (1))]) != (195))) goto L_002a;
                                                                //    264                   TP=TP-2
#line 264 "regression-compile-tmp/skimp77.imp"
TP = (((int)(TP)) - (2));
                                                                //    265                   PRINT SYMBOL(';')
#line 265 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(59);
                                                                //    266                   %FINISH %ELSE %RETURN
#line 266 "regression-compile-tmp/skimp77.imp"
goto L_002b;
#line 266 "regression-compile-tmp/skimp77.imp"
L_002a:;
#line 266 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 266 "regression-compile-tmp/skimp77.imp"
L_002b:;
                                                                //    267                %FINISH
#line 267 "regression-compile-tmp/skimp77.imp"
L_0029:;
                                                                //    268             %FINISH
#line 268 "regression-compile-tmp/skimp77.imp"
L_0028:;
                                                                //    269          %FINISH
#line 269 "regression-compile-tmp/skimp77.imp"
L_0025:;
                                                                //    270       ->L1
#line 270 "regression-compile-tmp/skimp77.imp"
goto U_1010;
                                                                //    271  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    272  %ROUTINE STORE(%INTEGER I)
#line 272 "regression-compile-tmp/skimp77.imp"
void STORE( int I )
#line 272 "regression-compile-tmp/skimp77.imp"
{
                                                                //    273  ! STORE (POSSIBLY) SHIFTED CHARACTER IN TEXT ARRAY & CHECK LINE NOT TOO LONG
                                                                //    274       %IF TP>300 %THEN %START
#line 274 "regression-compile-tmp/skimp77.imp"
if (((TP) <= (300))) goto L_002c;
                                                                //    275          FAULT(M'STAT',M'MNT ',M'TOO ',M'LONG')
#line 275 "regression-compile-tmp/skimp77.imp"
FAULT(1398030676, 1296978976, 1414483744, 1280265799);
                                                                //    276          TP=1
#line 276 "regression-compile-tmp/skimp77.imp"
TP = 1;
                                                                //    277          %FINISH
#line 277 "regression-compile-tmp/skimp77.imp"
L_002c:;
                                                                //    278       T(TP)=I+SH                      ;! STORE CHAR IN TEXT ARRAY
#line 278 "regression-compile-tmp/skimp77.imp"
T[(((int)(TP)) - (1))] = (((int)(I)) + (SH));
                                                                //    279       TP=TP+1                         ;! MOVE TO NEXT POSITION
#line 279 "regression-compile-tmp/skimp77.imp"
TP = (((int)(TP)) + (1));
                                                                //    280  %END
#line 280 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block STORE at level 3
                                                                //    281  %END
#line 281 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block READLINE at level 2
                                                                //    282  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //    283  %INTEGERFN COMPARE
#line 283 "regression-compile-tmp/skimp77.imp"
int COMPARE( void )
#line 283 "regression-compile-tmp/skimp77.imp"
{
                                                                //    284  ! ANALYSE PHRASE
                                                                //    285  %INTEGERFNSPEC NAME            ;! BUILT-IN PHRASE NAME
#line 285 "regression-compile-tmp/skimp77.imp"
auto int NAME( void );
                                                                //    286  %INTEGERFNSPEC CNST            ;! BUILT-IN PHRASE <CNST>
#line 286 "regression-compile-tmp/skimp77.imp"
auto int CNST( void );
                                                                //    287  %INTEGER APP,TPP,PSPP,AE,N
#line 287 "regression-compile-tmp/skimp77.imp"
int APP;
#line 287 "regression-compile-tmp/skimp77.imp"
int TPP;
#line 287 "regression-compile-tmp/skimp77.imp"
int PSPP;
#line 287 "regression-compile-tmp/skimp77.imp"
int AE;
#line 287 "regression-compile-tmp/skimp77.imp"
int N;
                                                                //    288       TPP=TP                              ;! PRESERVE INITIAL TEXT POINTER
#line 288 "regression-compile-tmp/skimp77.imp"
TPP = TP;
                                                                //    289       APP=AP                              ;! PRESERVE INITIAL ANALYSIS RECORD
#line 289 "regression-compile-tmp/skimp77.imp"
APP = AP;
                                                                //    290       A(AP)=1                             ;! ALTERNATIVE 1 FIRST
#line 290 "regression-compile-tmp/skimp77.imp"
A[(((int)(AP)) - (1))] = 1;
                                                                //    291  L11:  AE=PS(PSP)                          ;! POINTER TO END OF ALTERNATIVE
#line 291 "regression-compile-tmp/skimp77.imp"
U_1012:;
#line 291 "regression-compile-tmp/skimp77.imp"
AE = PS[((PSP) + ((int)(1000)))];
                                                                //    292       PSP=PSP+1                           ;! FIRST ITEM OF ALTERNATIVE DEFN
#line 292 "regression-compile-tmp/skimp77.imp"
PSP = (((int)(PSP)) + (1));
                                                                //    293  L12:  %IF PSP=AE %THEN %RESULT=1          ;! END OF ALT REACHED - SUCCESS
#line 293 "regression-compile-tmp/skimp77.imp"
U_1013:;
#line 293 "regression-compile-tmp/skimp77.imp"
if (((PSP) != (AE))) goto L_002d;
#line 293 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return 1;
#line 293 "regression-compile-tmp/skimp77.imp"
L_002d:;
                                                                //    294       N=PS(PSP)                           ;! NEXT ITEM OF ALT DEFN
#line 294 "regression-compile-tmp/skimp77.imp"
N = PS[((PSP) + ((int)(1000)))];
                                                                //    295       PSP=PSP+1                           ;! FOR FOLLOWING ITEM
#line 295 "regression-compile-tmp/skimp77.imp"
PSP = (((int)(PSP)) + (1));
                                                                //    296       %IF N<0 %THEN %START                ;! SUB-PHRASE
#line 296 "regression-compile-tmp/skimp77.imp"
if (((N) >= (0))) goto L_002e;
                                                                //    297          PSPP=PSP                         ;! PRESERVE PS POINTER
#line 297 "regression-compile-tmp/skimp77.imp"
PSPP = PSP;
                                                                //    298          PSP=N                            ;! POINTER TO DEFN OF SUB-PHRASE
#line 298 "regression-compile-tmp/skimp77.imp"
PSP = N;
                                                                //    299          AP=AP+1                          ;! NEXT ANALYSIS RECORD POSITION
#line 299 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    300          N=COMPARE                        ;! RECURSIVE COMPARISON FOR SUB-PHRASE
#line 300 "regression-compile-tmp/skimp77.imp"
N = COMPARE();
                                                                //    301          PSP=PSPP                         ;! RESTORE PS POINTER
#line 301 "regression-compile-tmp/skimp77.imp"
PSP = PSPP;
                                                                //    302          %IF N=1 %THEN ->L12               ;! SUCCESSFUL COMPARISON - GO FOR NEXT ITEM
#line 302 "regression-compile-tmp/skimp77.imp"
if (((N) != (1))) goto L_002f;
#line 302 "regression-compile-tmp/skimp77.imp"
goto U_1013;
#line 302 "regression-compile-tmp/skimp77.imp"
L_002f:;
                                                                //    303          ->L13 ; %FINISH                   ;! UNSUCCESSFUL - GO FOR NEXT ALTERNATIVE
#line 303 "regression-compile-tmp/skimp77.imp"
goto U_1014;
#line 303 "regression-compile-tmp/skimp77.imp"
L_002e:;
                                                                //    304       %IF N=1 %THEN %START                ;! BUILT-IN PHRASE <NAME>
#line 304 "regression-compile-tmp/skimp77.imp"
if (((N) != (1))) goto L_0030;
                                                                //    305          %IF NAME=1 %THEN ->L12            ;! SUCCESS
#line 305 "regression-compile-tmp/skimp77.imp"
if (((NAME()) != (1))) goto L_0031;
#line 305 "regression-compile-tmp/skimp77.imp"
goto U_1013;
#line 305 "regression-compile-tmp/skimp77.imp"
L_0031:;
                                                                //    306          ->L13 ; %FINISH                   ;! FAILURE
#line 306 "regression-compile-tmp/skimp77.imp"
goto U_1014;
#line 306 "regression-compile-tmp/skimp77.imp"
L_0030:;
                                                                //    307       %IF N=2 %THEN %START                ;! BUILT-IN PHRASE CNST
#line 307 "regression-compile-tmp/skimp77.imp"
if (((N) != (2))) goto L_0032;
                                                                //    308          %IF CNST=1 %THEN ->L12            ;! SUCCESS
#line 308 "regression-compile-tmp/skimp77.imp"
if (((CNST()) != (1))) goto L_0033;
#line 308 "regression-compile-tmp/skimp77.imp"
goto U_1013;
#line 308 "regression-compile-tmp/skimp77.imp"
L_0033:;
                                                                //    309          ->L13 ; %FINISH                   ;! FAILURE
#line 309 "regression-compile-tmp/skimp77.imp"
goto U_1014;
#line 309 "regression-compile-tmp/skimp77.imp"
L_0032:;
                                                                //    310       %IF N=T(TP) %THEN %START            ;! LITERAL - MATCHES SOURCE CHAR
#line 310 "regression-compile-tmp/skimp77.imp"
if (((N) != (T[(((int)(TP)) - (1))]))) goto L_0034;
                                                                //    311          TP=TP+1                          ;! MOVE TO NEXT SOURCE CHAR
#line 311 "regression-compile-tmp/skimp77.imp"
TP = (((int)(TP)) + (1));
                                                                //    312          ->L12 ; %FINISH                   ;! GO FOR NEXT ITEM
#line 312 "regression-compile-tmp/skimp77.imp"
goto U_1013;
#line 312 "regression-compile-tmp/skimp77.imp"
L_0034:;
                                                                //    313  L13:  %IF PS(AE)=0 %THEN %RESULT=0        ;! END OF PHRASE
#line 313 "regression-compile-tmp/skimp77.imp"
U_1014:;
#line 313 "regression-compile-tmp/skimp77.imp"
if (((PS[((AE) + ((int)(1000)))]) != (0))) goto L_0035;
#line 313 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 313 "regression-compile-tmp/skimp77.imp"
L_0035:;
                                                                //    314       PSP=AE                              ;! START OF DEFN OF NEXT ALTERNATIVE
#line 314 "regression-compile-tmp/skimp77.imp"
PSP = AE;
                                                                //    315       TP=TPP                              ;! BACKTRACK SOURCE TEXT
#line 315 "regression-compile-tmp/skimp77.imp"
TP = TPP;
                                                                //    316       AP=APP                              ;!  AND ANALYSIS RECORD POINTERS
#line 316 "regression-compile-tmp/skimp77.imp"
AP = APP;
                                                                //    317       A(AP)=A(AP)+1                       ;! COUNT ALTERNATIVE NUMBER ON ONE
#line 317 "regression-compile-tmp/skimp77.imp"
A[(((int)(AP)) - (1))] = (((int)(A[(((int)(AP)) - (1))])) + (1));
                                                                //    318       ->L11                                ;! GO TO ANALYSE NEW ALTERNATIVE
#line 318 "regression-compile-tmp/skimp77.imp"
goto U_1012;
                                                                //    319  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    320  %INTEGERFN NAME
#line 320 "regression-compile-tmp/skimp77.imp"
int NAME( void )
#line 320 "regression-compile-tmp/skimp77.imp"
{
                                                                //    321  ! RECOGNISE AND INSERT NAME IN HASHING AREA OF TAG/LINK ARRAYS
                                                                //    322  %INTEGER I,J,K,L,M,N
#line 322 "regression-compile-tmp/skimp77.imp"
int I;
#line 322 "regression-compile-tmp/skimp77.imp"
int J;
#line 322 "regression-compile-tmp/skimp77.imp"
int K;
#line 322 "regression-compile-tmp/skimp77.imp"
int L;
#line 322 "regression-compile-tmp/skimp77.imp"
int M;
#line 322 "regression-compile-tmp/skimp77.imp"
int N;
                                                                //    323       I=T(TP)                             ;! FIRST SOURCE CHAR
#line 323 "regression-compile-tmp/skimp77.imp"
I = T[(((int)(TP)) - (1))];
                                                                //    324       %IF I<'A' %OR I>'Z' %OR (I='M' %AND T(TP+1)=''''+128) %THENRESULT=0
#line 324 "regression-compile-tmp/skimp77.imp"
if (((I) < (65))) goto L_0036;
#line 324 "regression-compile-tmp/skimp77.imp"
if (((I) > (90))) goto L_0036;
#line 324 "regression-compile-tmp/skimp77.imp"
if (((I) != (77))) goto L_0037;
#line 324 "regression-compile-tmp/skimp77.imp"
if (((T[(((int)((((int)(TP)) + (1)))) - (1))]) != (167))) goto L_0037;
#line 324 "regression-compile-tmp/skimp77.imp"
L_0036:;
#line 324 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 324 "regression-compile-tmp/skimp77.imp"
L_0037:;
                                                                //    325                                           ;! FAILURE - NOT A LETTER OR AN M-TYPE CONSTANT
                                                                //    326       J=CHP                               ;! NEXT POSITION IN CHARACTER ARRAY
#line 326 "regression-compile-tmp/skimp77.imp"
J = CHP;
                                                                //    327       K=I<<16                             ;! LEAVE HOLE FOR LENGTH & PACK FIRST CHAR
#line 327 "regression-compile-tmp/skimp77.imp"
K = ((I) << (16));
                                                                //    328       L=1                                 ;! NO OF CHARS
#line 328 "regression-compile-tmp/skimp77.imp"
L = 1;
                                                                //    329       M=8                                 ;! NEXT SHIFT VALUE FOR PACKING
#line 329 "regression-compile-tmp/skimp77.imp"
M = 8;
                                                                //    330       N=I                                 ;! SUM VALUE OF CHARS FOR HASHING
#line 330 "regression-compile-tmp/skimp77.imp"
N = I;
                                                                //    331  L1:   TP=TP+1
#line 331 "regression-compile-tmp/skimp77.imp"
U_100b:;
#line 331 "regression-compile-tmp/skimp77.imp"
TP = (((int)(TP)) + (1));
                                                                //    332       I=T(TP)                             ;! NEXT CHAR FROM TEXT ARRAY
#line 332 "regression-compile-tmp/skimp77.imp"
I = T[(((int)(TP)) - (1))];
                                                                //    333       %IF ('0'<=I %AND I<='9') %OR ('A'<=I %AND I<='Z') %THEN %START
#line 333 "regression-compile-tmp/skimp77.imp"
if (((48) > (I))) goto L_0038;
#line 333 "regression-compile-tmp/skimp77.imp"
if (((I) <= (57))) goto L_0039;
#line 333 "regression-compile-tmp/skimp77.imp"
L_0038:;
#line 333 "regression-compile-tmp/skimp77.imp"
if (((65) > (I))) goto L_003a;
#line 333 "regression-compile-tmp/skimp77.imp"
if (((I) > (90))) goto L_003a;
#line 333 "regression-compile-tmp/skimp77.imp"
L_0039:;
                                                                //    334                                           ;! A DIGIT OR A LETTER
                                                                //    335          K=K!I<<M                         ;! PACK NEXT LETTER
#line 335 "regression-compile-tmp/skimp77.imp"
K = ((K) | (((I) << (M))));
                                                                //    336          L=L+1                            ;! CHARACTER COUNT
#line 336 "regression-compile-tmp/skimp77.imp"
L = (((int)(L)) + (1));
                                                                //    337          M=M-8                            ;! NEXT SHIFT
#line 337 "regression-compile-tmp/skimp77.imp"
M = (((int)(M)) - (8));
                                                                //    338          N=N+I                            ;! SUM OF LETTERS
#line 338 "regression-compile-tmp/skimp77.imp"
N = (((int)(N)) + (I));
                                                                //    339          %IF M<0 %THEN %START             ;! PACKED WORD OF CHARS FULL
#line 339 "regression-compile-tmp/skimp77.imp"
if (((M) >= (0))) goto L_003b;
                                                                //    340             CH(CH NEXT)=K                 ;! STORE WORD IN CHAR ARRAY
#line 340 "regression-compile-tmp/skimp77.imp"
CH[(((int)(CHNEXT())) - (1))] = K;
                                                                //    341             K=0                           ;! PACKING WORD TO ZERO
#line 341 "regression-compile-tmp/skimp77.imp"
K = 0;
                                                                //    342             M=24                          ;! NEW SHIFT VALUE
#line 342 "regression-compile-tmp/skimp77.imp"
M = 24;
                                                                //    343             %FINISH
#line 343 "regression-compile-tmp/skimp77.imp"
L_003b:;
                                                                //    344          ->L1 ; %FINISH                    ;! GO FOR NEXT CHAR
#line 344 "regression-compile-tmp/skimp77.imp"
goto U_100b;
#line 344 "regression-compile-tmp/skimp77.imp"
L_003a:;
                                                                //    345       %IF K\=0 %THEN CH(CH NEXT)=K        ;! STORE ANY REMAINING CHARS IN CHAR ARRAY
#line 345 "regression-compile-tmp/skimp77.imp"
if (((K) == (0))) goto L_003c;
#line 345 "regression-compile-tmp/skimp77.imp"
CH[(((int)(CHNEXT())) - (1))] = K;
#line 345 "regression-compile-tmp/skimp77.imp"
L_003c:;
                                                                //    346       CH(J)=CH(J)!L<<24                   ;! FILL IN LENGTH IN HOLE LEFT IN FIRST WORD
#line 346 "regression-compile-tmp/skimp77.imp"
CH[(((int)(J)) - (1))] = ((CH[(((int)(J)) - (1))]) | (((L) << (24))));
                                                                //    347       I=(N&15)<<4!N>>4&15                 ;! HASH VALUE
#line 347 "regression-compile-tmp/skimp77.imp"
I = ((((((N) & (15))) << (4))) | ((((int)((((unsigned int)(N)) >> (4)))) & (15))));
                                                                //    348       K=I                                 ;! SCAN DICTIONARY FOR NAME
#line 348 "regression-compile-tmp/skimp77.imp"
K = I;
                                                                //    349  L2:   %IF TAG(K)\=0 %THEN %START          ;! A NAME IN THIS POSITION
#line 349 "regression-compile-tmp/skimp77.imp"
U_100c:;
#line 349 "regression-compile-tmp/skimp77.imp"
if (((TAG[K]) == (0))) goto L_003d;
                                                                //    350          L=TAG(K)                         ;! CHAR ARRAY POSITION
#line 350 "regression-compile-tmp/skimp77.imp"
L = TAG[K];
                                                                //    351          M=J                              ;! CHAR ARRAY POSITION OF NEW NAME
#line 351 "regression-compile-tmp/skimp77.imp"
M = J;
                                                                //    352  L4:      %IF CH(L)=CH(M) %THEN %START     ;! PACKED WORDS MATCH
#line 352 "regression-compile-tmp/skimp77.imp"
U_1015:;
#line 352 "regression-compile-tmp/skimp77.imp"
if (((CH[(((int)(L)) - (1))]) != (CH[(((int)(M)) - (1))]))) goto L_003e;
                                                                //    353             M=M+1                         ;! NEXT WORD OF NEW NAME
#line 353 "regression-compile-tmp/skimp77.imp"
M = (((int)(M)) + (1));
                                                                //    354             %IF M=CHP %THEN %START        ;! NAMES MATCH
#line 354 "regression-compile-tmp/skimp77.imp"
if (((M) != (CHP))) goto L_003f;
                                                                //    355                CHP=J                      ;! MOVE CHP BACK SINCE NAME ALREADY IN
#line 355 "regression-compile-tmp/skimp77.imp"
CHP = J;
                                                                //    356                ->L3 ; %FINISH
#line 356 "regression-compile-tmp/skimp77.imp"
goto U_1016;
#line 356 "regression-compile-tmp/skimp77.imp"
L_003f:;
                                                                //    357             L=L+1                         ;! NEXT WORD OF OLD NAME
#line 357 "regression-compile-tmp/skimp77.imp"
L = (((int)(L)) + (1));
                                                                //    358             ->L4 ; %FINISH                 ;! GO FOR NEXT WORD
#line 358 "regression-compile-tmp/skimp77.imp"
goto U_1015;
#line 358 "regression-compile-tmp/skimp77.imp"
L_003e:;
                                                                //    359          K=(K+1)&255                      ;! NO MATCH SO TRY NEXT DICTIONARY POSITION
#line 359 "regression-compile-tmp/skimp77.imp"
K = (((((int)(K)) + (1))) & (255));
                                                                //    360          %IF K=I %THEN %START             ;! STARTING POSITION REACHED AGAIN
#line 360 "regression-compile-tmp/skimp77.imp"
if (((K) != (I))) goto L_0040;
                                                                //    361             FAULT(M'DICT',M'IONA',M'RY F',M'ULL ')
#line 361 "regression-compile-tmp/skimp77.imp"
FAULT(1145652052, 1229934145, 1381572678, 1431063584);
                                                                //    362             %STOP ; %FINISH
#line 362 "regression-compile-tmp/skimp77.imp"
exit(0);
#line 362 "regression-compile-tmp/skimp77.imp"
L_0040:;
                                                                //    363          ->L2 ; %FINISH
#line 363 "regression-compile-tmp/skimp77.imp"
goto U_100c;
#line 363 "regression-compile-tmp/skimp77.imp"
L_003d:;
                                                                //    364       TAG(K)=J                            ;! STORE CHAR ARRAY POSITION OF NAME
#line 364 "regression-compile-tmp/skimp77.imp"
TAG[K] = J;
                                                                //    365  L3:   AP=AP+1                             ;! NEXT ANALYSIS RECORD POSITION
#line 365 "regression-compile-tmp/skimp77.imp"
U_1016:;
#line 365 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    366       A(AP)=K                             ;! STORE IDENTIFICATION NO OF NAME
#line 366 "regression-compile-tmp/skimp77.imp"
A[(((int)(AP)) - (1))] = K;
                                                                //    367       %RESULT=1                           ;! SUCCESS
#line 367 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //    368  %END
#line 368 "regression-compile-tmp/skimp77.imp"
} // End of block NAME at level 3
                                                                //    369  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    370  %INTEGERFN CNST
#line 370 "regression-compile-tmp/skimp77.imp"
int CNST( void )
#line 370 "regression-compile-tmp/skimp77.imp"
{
                                                                //    371  ! RECOGNISE INTEGER AND LITERAL TEXT CONSTANTS
                                                                //    372  %INTEGER I,J,K
#line 372 "regression-compile-tmp/skimp77.imp"
int I;
#line 372 "regression-compile-tmp/skimp77.imp"
int J;
#line 372 "regression-compile-tmp/skimp77.imp"
int K;
                                                                //    373       I=T(TP)                             ;! FIRST CHAR
#line 373 "regression-compile-tmp/skimp77.imp"
I = T[(((int)(TP)) - (1))];
                                                                //    374       %IF I='M' %AND T(TP+1)=''''+128 %THEN %START  ;! M-TYPE CONSTANT
#line 374 "regression-compile-tmp/skimp77.imp"
if (((I) != (77))) goto L_0041;
#line 374 "regression-compile-tmp/skimp77.imp"
if (((T[(((int)((((int)(TP)) + (1)))) - (1))]) != (167))) goto L_0041;
                                                                //    375          TP=TP+1                          ;! IGNORE THE M
#line 375 "regression-compile-tmp/skimp77.imp"
TP = (((int)(TP)) + (1));
                                                                //    376          I=T(TP)
#line 376 "regression-compile-tmp/skimp77.imp"
I = T[(((int)(TP)) - (1))];
                                                                //    377          %FINISH
#line 377 "regression-compile-tmp/skimp77.imp"
L_0041:;
                                                                //    378       %IF I=''''+128 %THEN %START         ;! START OF A LITERAL
#line 378 "regression-compile-tmp/skimp77.imp"
if (((I) != (167))) goto L_0042;
                                                                //    379          J=0                              ;! TO ACCUMULATE LITERAL VALUE
#line 379 "regression-compile-tmp/skimp77.imp"
J = 0;
                                                                //    380          K=0                              ;! CHARACTER COUNT
#line 380 "regression-compile-tmp/skimp77.imp"
K = 0;
                                                                //    381  L1:      TP=TP+1
#line 381 "regression-compile-tmp/skimp77.imp"
U_1008:;
#line 381 "regression-compile-tmp/skimp77.imp"
TP = (((int)(TP)) + (1));
                                                                //    382          I=T(TP)                          ;! NEXT CHAR
#line 382 "regression-compile-tmp/skimp77.imp"
I = T[(((int)(TP)) - (1))];
                                                                //    383          %IF I\='''' %THEN %START         ;! NOT END OF LITERAL
#line 383 "regression-compile-tmp/skimp77.imp"
if (((I) == (39))) goto L_0043;
                                                                //    384             J=J<<8!I&127                  ;! PACK CHAR
#line 384 "regression-compile-tmp/skimp77.imp"
J = ((((J) << (8))) | (((I) & (127))));
                                                                //    385             K=K+1                         ;! COUNT CHAR
#line 385 "regression-compile-tmp/skimp77.imp"
K = (((int)(K)) + (1));
                                                                //    386             ->L1 ; %FINISH
#line 386 "regression-compile-tmp/skimp77.imp"
goto U_1008;
#line 386 "regression-compile-tmp/skimp77.imp"
L_0043:;
                                                                //    387          TP=TP+1                          ;! POINTER AFTER QUOTE
#line 387 "regression-compile-tmp/skimp77.imp"
TP = (((int)(TP)) + (1));
                                                                //    388          %IF K>4 %THEN FAULT(M'STRI',M'NG T',M'OO L',M'ONG ')
#line 388 "regression-compile-tmp/skimp77.imp"
if (((K) <= (4))) goto L_0044;
#line 388 "regression-compile-tmp/skimp77.imp"
FAULT(1398035017, 1313284180, 1330585676, 1330530080);
#line 388 "regression-compile-tmp/skimp77.imp"
L_0044:;
                                                                //    389          ->L2 ; %FINISH
#line 389 "regression-compile-tmp/skimp77.imp"
goto U_1009;
#line 389 "regression-compile-tmp/skimp77.imp"
L_0042:;
                                                                //    390       %IF I<'0' %OR I>'9' %THEN %RESULT=0 ;! NOT A CONSTANT
#line 390 "regression-compile-tmp/skimp77.imp"
if (((I) < (48))) goto L_0045;
#line 390 "regression-compile-tmp/skimp77.imp"
if (((I) <= (57))) goto L_0046;
#line 390 "regression-compile-tmp/skimp77.imp"
L_0045:;
#line 390 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 390 "regression-compile-tmp/skimp77.imp"
L_0046:;
                                                                //    391       J=0
#line 391 "regression-compile-tmp/skimp77.imp"
J = 0;
                                                                //    392  L3:   J=10*J+I-'0'                        ;! ACCUMULATE DECIMAL VALUE
#line 392 "regression-compile-tmp/skimp77.imp"
U_100a:;
#line 392 "regression-compile-tmp/skimp77.imp"
J = (((int)((((int)((((int)(10)) * (J)))) + (I)))) - (48));
                                                                //    393       TP=TP+1
#line 393 "regression-compile-tmp/skimp77.imp"
TP = (((int)(TP)) + (1));
                                                                //    394       I=T(TP)                             ;! NEXT CHAR
#line 394 "regression-compile-tmp/skimp77.imp"
I = T[(((int)(TP)) - (1))];
                                                                //    395       %IF '0'<=I %AND I<='9' %THEN ->L3    ;! A DIGIT - STILL PART OF CONSTANT
#line 395 "regression-compile-tmp/skimp77.imp"
if (((48) > (I))) goto L_0047;
#line 395 "regression-compile-tmp/skimp77.imp"
if (((I) > (57))) goto L_0047;
#line 395 "regression-compile-tmp/skimp77.imp"
goto U_100a;
#line 395 "regression-compile-tmp/skimp77.imp"
L_0047:;
                                                                //    396  L2:   AP=AP+1                             ;! NEXT ANALYSIS RECORD POSITION
#line 396 "regression-compile-tmp/skimp77.imp"
U_1009:;
#line 396 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    397       A(AP)=J                             ;! FILL IN VALUE OF CONSTANT
#line 397 "regression-compile-tmp/skimp77.imp"
A[(((int)(AP)) - (1))] = J;
                                                                //    398       %RESULT=1                           ;! SUCCESS
#line 398 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //    399  %END
#line 399 "regression-compile-tmp/skimp77.imp"
} // End of block CNST at level 3
                                                                //    400  %END
#line 400 "regression-compile-tmp/skimp77.imp"
/*_imp_signal(8, 4, 0, "");*/
fprintf(stderr, "%%RESULT missing in %s in file %s:%d\n", __PRETTY_FUNCTION__, (_imp_current_file != 0 ? _imp_current_file : __FILE__), (_imp_current_line != 0 ? _imp_current_line : __LINE__));
exit(1);
} // End of block COMPARE at level 2
                                                                //    401  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //    402  %ROUTINE SS
#line 402 "regression-compile-tmp/skimp77.imp"
void SS( void )
#line 402 "regression-compile-tmp/skimp77.imp"
{
                                                                //    403  ! COMPILE SOURCE STATEMENT
                                                                //    404  %ROUTINESPEC UI
#line 404 "regression-compile-tmp/skimp77.imp"
auto void UI( void );
                                                                //    405  %ROUTINESPEC SCCOND(%INTEGERNAME LABEL)
#line 405 "regression-compile-tmp/skimp77.imp"
auto void SCCOND( int /*name*/*LABEL );
                                                                //    406  %ROUTINESPEC SEXPR
#line 406 "regression-compile-tmp/skimp77.imp"
auto void SEXPR( void );
                                                                //    407  %INTEGERFNSPEC FIND LABEL
#line 407 "regression-compile-tmp/skimp77.imp"
auto int FINDLABEL( void );
                                                                //    408  %ROUTINESPEC CHECK
#line 408 "regression-compile-tmp/skimp77.imp"
auto void CHECK( void );
                                                                //    409  %ROUTINESPEC UNSET
#line 409 "regression-compile-tmp/skimp77.imp"
auto void UNSET( void );
                                                                //    410  %ROUTINESPEC PUSH START(%INTEGER FLAG,LABEL)
#line 410 "regression-compile-tmp/skimp77.imp"
auto void PUSHSTART( int FLAG, int LABEL );
                                                                //    411  %INTEGERFNSPEC BT NEXT
#line 411 "regression-compile-tmp/skimp77.imp"
auto int BTNEXT( void );
                                                                //    412  %INTEGERFNSPEC CT NEXT
#line 412 "regression-compile-tmp/skimp77.imp"
auto int CTNEXT( void );
                                                                //    413  %INTEGERFNSPEC WS NEXT
#line 413 "regression-compile-tmp/skimp77.imp"
auto int WSNEXT( void );
                                                                //    414  %ROUTINESPEC STORE TAG(%INTEGER NAME,FORM,TYPE,DIM,LEV,AD)
#line 414 "regression-compile-tmp/skimp77.imp"
auto void STORETAG( int NAME, int FORM, int TYPE, int DIM, int LEV, int AD );
                                                                //    415  %ROUTINESPEC DUMP(%INTEGER OP,REG,BASE,DISP)
#line 415 "regression-compile-tmp/skimp77.imp"
auto void DUMP( int OP, int REG, int BASE, int DISP );
                                                                //    416  %ROUTINESPEC SKIP SEXPR
#line 416 "regression-compile-tmp/skimp77.imp"
auto void SKIPSEXPR( void );
                                                                //    417  %ROUTINESPEC SKIP APP
#line 417 "regression-compile-tmp/skimp77.imp"
auto void SKIPAPP( void );
                                                                //    418  %ROUTINESPEC RT
#line 418 "regression-compile-tmp/skimp77.imp"
auto void RT( void );
                                                                //    419  %ROUTINESPEC ARRAD
#line 419 "regression-compile-tmp/skimp77.imp"
auto void ARRAD( void );
                                                                //    420  %ROUTINESPEC ENTER(%INTEGER TYPE,ALLOC)
#line 420 "regression-compile-tmp/skimp77.imp"
auto void ENTER( int TYPE, int ALLOC );
                                                                //    421  %ROUTINESPEC RETURN
#line 421 "regression-compile-tmp/skimp77.imp"
auto void RETURN( void );
                                                                //    422  %INTEGER I,J,K,L,M,N,P,Q,R,WS,LABEL
#line 422 "regression-compile-tmp/skimp77.imp"
int I;
#line 422 "regression-compile-tmp/skimp77.imp"
int J;
#line 422 "regression-compile-tmp/skimp77.imp"
int K;
#line 422 "regression-compile-tmp/skimp77.imp"
int L;
#line 422 "regression-compile-tmp/skimp77.imp"
int M;
#line 422 "regression-compile-tmp/skimp77.imp"
int N;
#line 422 "regression-compile-tmp/skimp77.imp"
int P;
#line 422 "regression-compile-tmp/skimp77.imp"
int Q;
#line 422 "regression-compile-tmp/skimp77.imp"
int R;
#line 422 "regression-compile-tmp/skimp77.imp"
int WS;
#line 422 "regression-compile-tmp/skimp77.imp"
int LABEL;
                                                                //    423       I=A(AP)                             ;! ANALYSIS RECORD ENTRY
#line 423 "regression-compile-tmp/skimp77.imp"
I = A[(((int)(AP)) - (1))];
                                                                //    424       AP=AP+1                             ;! FOR FOLLOWING ENTRY
#line 424 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    425       WS=2                                ;! SET WORKSPACE POINTER
#line 425 "regression-compile-tmp/skimp77.imp"
WS = 2;
                                                                //    426       %IF I=1 %THEN ->L10                  ;! UNCONDITIONAL INSTRUCTION
#line 426 "regression-compile-tmp/skimp77.imp"
if (((I) != (1))) goto L_0048;
#line 426 "regression-compile-tmp/skimp77.imp"
goto U_1017;
#line 426 "regression-compile-tmp/skimp77.imp"
L_0048:;
                                                                //    427       %IF I=2 %THEN ->L20                  ;! CONDITIONAL STATEMENT
#line 427 "regression-compile-tmp/skimp77.imp"
if (((I) != (2))) goto L_0049;
#line 427 "regression-compile-tmp/skimp77.imp"
goto U_1018;
#line 427 "regression-compile-tmp/skimp77.imp"
L_0049:;
                                                                //    428       %IF I=3 %THEN ->L30                  ;! LABEL
#line 428 "regression-compile-tmp/skimp77.imp"
if (((I) != (3))) goto L_004a;
#line 428 "regression-compile-tmp/skimp77.imp"
goto U_1019;
#line 428 "regression-compile-tmp/skimp77.imp"
L_004a:;
                                                                //    429       %IF I=4 %THEN ->L40                  ;! %FINISH
#line 429 "regression-compile-tmp/skimp77.imp"
if (((I) != (4))) goto L_004b;
#line 429 "regression-compile-tmp/skimp77.imp"
goto U_101a;
#line 429 "regression-compile-tmp/skimp77.imp"
L_004b:;
                                                                //    430       %IF I=5 %THEN ->L50                  ;! DECLARATIONS
#line 430 "regression-compile-tmp/skimp77.imp"
if (((I) != (5))) goto L_004c;
#line 430 "regression-compile-tmp/skimp77.imp"
goto U_101b;
#line 430 "regression-compile-tmp/skimp77.imp"
L_004c:;
                                                                //    431       %IF I=6 %THEN ->L60                  ;! ROUTINE/FN SPEC
#line 431 "regression-compile-tmp/skimp77.imp"
if (((I) != (6))) goto L_004d;
#line 431 "regression-compile-tmp/skimp77.imp"
goto U_101c;
#line 431 "regression-compile-tmp/skimp77.imp"
L_004d:;
                                                                //    432       %IF I=7 %THEN ->L70                  ;! %END
#line 432 "regression-compile-tmp/skimp77.imp"
if (((I) != (7))) goto L_004e;
#line 432 "regression-compile-tmp/skimp77.imp"
goto U_101d;
#line 432 "regression-compile-tmp/skimp77.imp"
L_004e:;
                                                                //    433       %IF I=8 %THEN ->L80                  ;! %BEGIN
#line 433 "regression-compile-tmp/skimp77.imp"
if (((I) != (8))) goto L_004f;
#line 433 "regression-compile-tmp/skimp77.imp"
goto U_101e;
#line 433 "regression-compile-tmp/skimp77.imp"
L_004f:;
                                                                //    434       %IF I=9 %THEN ->L90                  ;! %ENDOFPROGRAM
#line 434 "regression-compile-tmp/skimp77.imp"
if (((I) != (9))) goto L_0050;
#line 434 "regression-compile-tmp/skimp77.imp"
goto U_101f;
#line 434 "regression-compile-tmp/skimp77.imp"
L_0050:;
                                                                //    435       %RETURN                             ;! <SEP>
#line 435 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    436  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    437  ! UI
                                                                //    438  L10:  UI                                  ;! COMPILE UNCONDITIONAL INSTRUCTION
#line 438 "regression-compile-tmp/skimp77.imp"
U_1017:;
#line 438 "regression-compile-tmp/skimp77.imp"
UI();
                                                                //    439       %RETURN
#line 439 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    440  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    441  ! %IF . . . %THEN . . .  %ELSE
                                                                //    442  L20:  SCCOND(I)                           ;! COMPILE CONDITION
#line 442 "regression-compile-tmp/skimp77.imp"
U_1018:;
#line 442 "regression-compile-tmp/skimp77.imp"
SCCOND(&I);
                                                                //    443       %IF A(AP)=2 %THEN %START            ;! AP ON <UI> - JUMP INSTRUCTION
#line 443 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (2))) goto L_0051;
                                                                //    444          AP=AP+2                          ;! AP ON <ELSE>
#line 444 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (2));
                                                                //    445          J=-1                             ;! MARKER FOR 'JUMP'
#line 445 "regression-compile-tmp/skimp77.imp"
J = (-1);
                                                                //    446          %FINISH %ELSE %START             ;! NOT A JUMP
#line 446 "regression-compile-tmp/skimp77.imp"
goto L_0052;
#line 446 "regression-compile-tmp/skimp77.imp"
L_0051:;
                                                                //    447          %IF A(AP)=3 %THEN %START         ;! %START
#line 447 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (3))) goto L_0053;
                                                                //    448             %IF A(AP+1)=1 %THEN FAULT(M'%STA',M'RT %',M'ELSE',M' ?  ')
#line 448 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) + (1)))) - (1))]) != (1))) goto L_0054;
#line 448 "regression-compile-tmp/skimp77.imp"
FAULT(626218049, 1381244965, 1162629957, 541007904);
#line 448 "regression-compile-tmp/skimp77.imp"
L_0054:;
                                                                //    449             PUSH START(0,I)
#line 449 "regression-compile-tmp/skimp77.imp"
PUSHSTART(0, I);
                                                                //    450             %RETURN ; %FINISH
#line 450 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 450 "regression-compile-tmp/skimp77.imp"
L_0053:;
                                                                //    451          UI                               ;! COMPILE REMAINING UNCOND. INSTNS.
#line 451 "regression-compile-tmp/skimp77.imp"
UI();
                                                                //    452          J=0                              ;! 'NOT JUMP' MARKER
#line 452 "regression-compile-tmp/skimp77.imp"
J = 0;
                                                                //    453          %FINISH
#line 453 "regression-compile-tmp/skimp77.imp"
L_0052:;
                                                                //    454       %IF A(AP)=1 %THEN %START            ;! <ELSE>-CLAUSE PRESENT
#line 454 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_0055;
                                                                //    455          %IF J=0 %THEN %START             ;! <UI> WAS NOT A JUMP
#line 455 "regression-compile-tmp/skimp77.imp"
if (((J) != (0))) goto L_0056;
                                                                //    456             J=BT NEXT                     ;! JUMP ROUND <ELSE>-CLAUSE <UI>
#line 456 "regression-compile-tmp/skimp77.imp"
J = BTNEXT();
                                                                //    457             DUMP('B',0,M'BT',J)
#line 457 "regression-compile-tmp/skimp77.imp"
DUMP(66, 0, 16980, J);
                                                                //    458             %FINISH
#line 458 "regression-compile-tmp/skimp77.imp"
L_0056:;
                                                                //    459          %IF I>=0 %THEN BAT(I)=CA         ;! FILL IN LABEL ON <ELSE>-CLAUSE <UI>
#line 459 "regression-compile-tmp/skimp77.imp"
if (((I) < (0))) goto L_0057;
#line 459 "regression-compile-tmp/skimp77.imp"
BAT[I] = CA;
#line 459 "regression-compile-tmp/skimp77.imp"
L_0057:;
                                                                //    460          AP=AP+1                          ;! AP ON <UI>
#line 460 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    461          %IF A(AP)=3 %THEN %START         ;! %START
#line 461 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (3))) goto L_0058;
                                                                //    462             PUSH START(1,J)
#line 462 "regression-compile-tmp/skimp77.imp"
PUSHSTART(1, J);
                                                                //    463             %RETURN ; %FINISH
#line 463 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 463 "regression-compile-tmp/skimp77.imp"
L_0058:;
                                                                //    464          UI                               ;! COMPILE REMAINING <UI>S
#line 464 "regression-compile-tmp/skimp77.imp"
UI();
                                                                //    465          I=J                              ;! JUMP AROUND LABEL
#line 465 "regression-compile-tmp/skimp77.imp"
I = J;
                                                                //    466          %FINISH
#line 466 "regression-compile-tmp/skimp77.imp"
L_0055:;
                                                                //    467       %IF I>=0 %THEN BAT(I)=CA            ;! TO BRANCH ROUND THE UI
#line 467 "regression-compile-tmp/skimp77.imp"
if (((I) < (0))) goto L_0059;
#line 467 "regression-compile-tmp/skimp77.imp"
BAT[I] = CA;
#line 467 "regression-compile-tmp/skimp77.imp"
L_0059:;
                                                                //    468       %RETURN
#line 468 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    469  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    470  ! CONST: . . .
                                                                //    471  L30:  I=FIND LABEL                        ;! LOCATE/INSERT LABEL IN JUMP LIST
#line 471 "regression-compile-tmp/skimp77.imp"
U_1019:;
#line 471 "regression-compile-tmp/skimp77.imp"
I = FINDLABEL();
                                                                //    472       %IF I>=0 %THEN %START               ;! VALID LABEL
#line 472 "regression-compile-tmp/skimp77.imp"
if (((I) < (0))) goto L_005a;
                                                                //    473          %IF BAT(I)>=0 %THEN %START
#line 473 "regression-compile-tmp/skimp77.imp"
if (((BAT[I]) < (0))) goto L_005b;
                                                                //    474             WRITE(LABEL,1)
#line 474 "regression-compile-tmp/skimp77.imp"
_imp_WRITE(LABEL, 1);
                                                                //    475             SPACES(2)
#line 475 "regression-compile-tmp/skimp77.imp"
_imp_SPACES(2);
                                                                //    476             FAULT(M'LABE',M'L SE',M'T TW',M'ICE ')
#line 476 "regression-compile-tmp/skimp77.imp"
FAULT(1279345221, 1277186885, 1411404887, 1229145376);
                                                                //    477             %FINISH
#line 477 "regression-compile-tmp/skimp77.imp"
L_005b:;
                                                                //    478          BAT(I)=CA                        ;! FILL IN LABEL ADDRESS
#line 478 "regression-compile-tmp/skimp77.imp"
BAT[I] = CA;
                                                                //    479          %FINISH
#line 479 "regression-compile-tmp/skimp77.imp"
L_005a:;
                                                                //    480       SS                                  ;! COMPILE STATEMENT AFTER LABEL
#line 480 "regression-compile-tmp/skimp77.imp"
SS();
                                                                //    481       %RETURN
#line 481 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    482  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    483  ! %FINISH . . .
                                                                //    484  L40:  I=START(LEVEL)                           ;! LINK TO FIRST CELL IN START LIST
#line 484 "regression-compile-tmp/skimp77.imp"
U_101a:;
#line 484 "regression-compile-tmp/skimp77.imp"
I = START[LEVEL];
                                                                //    485       %IF I=0 %THEN %START                     ;! NO CELLS IN LIST
#line 485 "regression-compile-tmp/skimp77.imp"
if (((I) != (0))) goto L_005c;
                                                                //    486          FAULT(M'SPUR',M'IOUS',M' %FI',M'NISH')
#line 486 "regression-compile-tmp/skimp77.imp"
FAULT(1397773650, 1229935955, 539313737, 1313428296);
                                                                //    487          %RETURN ; %FINISH
#line 487 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 487 "regression-compile-tmp/skimp77.imp"
L_005c:;
                                                                //    488       J=TAG(I)&65535                           ;! JUMP AROUND LABEL
#line 488 "regression-compile-tmp/skimp77.imp"
J = ((TAG[I]) & (65535));
                                                                //    489       K=TAG(I)>>16                             ;! BEFORE OR AFTER %ELSE MARKER
#line 489 "regression-compile-tmp/skimp77.imp"
K = (int)((((unsigned int)(TAG[I])) >> (16)));
                                                                //    490       START(LEVEL)=RETURN CELL(I)              ;! POP UP CELL
#line 490 "regression-compile-tmp/skimp77.imp"
START[LEVEL] = RETURNCELL(I);
                                                                //    491       %IF A(AP)=1 %THEN %START                 ;! %ELSE PRESENT
#line 491 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_005d;
                                                                //    492          %IF K=1 %THEN FAULT(M'TWO ',M'%ELS',M'ES !',M'    ')
#line 492 "regression-compile-tmp/skimp77.imp"
if (((K) != (1))) goto L_005e;
#line 492 "regression-compile-tmp/skimp77.imp"
FAULT(1415008032, 625298515, 1163075617, 538976288);
#line 492 "regression-compile-tmp/skimp77.imp"
L_005e:;
                                                                //    493          K=BT NEXT                             ;! JUMP AROUND <UI>
#line 493 "regression-compile-tmp/skimp77.imp"
K = BTNEXT();
                                                                //    494          DUMP('B',0,M'BT',K)
#line 494 "regression-compile-tmp/skimp77.imp"
DUMP(66, 0, 16980, K);
                                                                //    495          %IF J\=65535 %THEN BAT(J)=CA          ;! FILL IN LABEL ON <UI> IF NECESSARY
#line 495 "regression-compile-tmp/skimp77.imp"
if (((J) == (65535))) goto L_005f;
#line 495 "regression-compile-tmp/skimp77.imp"
BAT[J] = CA;
#line 495 "regression-compile-tmp/skimp77.imp"
L_005f:;
                                                                //    496          AP=AP+1                               ;! AP ON <UI>
#line 496 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    497          %IF A(AP)=3 %THEN %START              ;! %START
#line 497 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (3))) goto L_0060;
                                                                //    498             PUSH START(1,K)
#line 498 "regression-compile-tmp/skimp77.imp"
PUSHSTART(1, K);
                                                                //    499             %RETURN ; %FINISH
#line 499 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 499 "regression-compile-tmp/skimp77.imp"
L_0060:;
                                                                //    500          UI                                    ;! COMPILE REMAINING <UI>S
#line 500 "regression-compile-tmp/skimp77.imp"
UI();
                                                                //    501          J=K                                   ;! JUMP AROUND LABEL
#line 501 "regression-compile-tmp/skimp77.imp"
J = K;
                                                                //    502          %FINISH
#line 502 "regression-compile-tmp/skimp77.imp"
L_005d:;
                                                                //    503       %IF J\=65535 %THEN BAT(J)=CA             ;! FILL IN JUMP AROUND LABEL IF NECESSARY
#line 503 "regression-compile-tmp/skimp77.imp"
if (((J) == (65535))) goto L_0061;
#line 503 "regression-compile-tmp/skimp77.imp"
BAT[J] = CA;
#line 503 "regression-compile-tmp/skimp77.imp"
L_0061:;
                                                                //    504       %RETURN
#line 504 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    505  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    506  ! DECLARATIONS
                                                                //    507  L50:  %IF A(AP)=1 %THEN %START                        ;! <ARR> = %ARRAY
#line 507 "regression-compile-tmp/skimp77.imp"
U_101b:;
#line 507 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_0062;
                                                                //    508          APP=AP                                       ;! SAVE AP
#line 508 "regression-compile-tmp/skimp77.imp"
APP = AP;
                                                                //    509  L51:     AP=AP+2                                      ;! AP ON <NAMS>
#line 509 "regression-compile-tmp/skimp77.imp"
U_1020:;
#line 509 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (2));
                                                                //    510          %IF A(AP)=1 %THEN ->L51                       ;! SKIP DOWN TO END OF LIST OF NAMES
#line 510 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_0063;
#line 510 "regression-compile-tmp/skimp77.imp"
goto U_1020;
#line 510 "regression-compile-tmp/skimp77.imp"
L_0063:;
                                                                //    511          AP=AP+1                                      ;! AP ON <+-\>
#line 511 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    512          SEXPR                                        ;! COMPILE EXPRESSION - LOWER BOUND
#line 512 "regression-compile-tmp/skimp77.imp"
SEXPR();
                                                                //    513          DUMP(M'STR',M'ACC',BR(LEVEL),WS NEXT)        ;! STORE VALUE IN WORKSPACE
#line 513 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], WSNEXT());
                                                                //    514          SEXPR                                        ;! COMPILE EXPRESSION - UPPER BOUND
#line 514 "regression-compile-tmp/skimp77.imp"
SEXPR();
                                                                //    515          DUMP(M'LDA',M'ACC',M'ACC',1)                 ;! INCREMENT VALUE BY 1
#line 515 "regression-compile-tmp/skimp77.imp"
DUMP(4998209, 4277059, 4277059, 1);
                                                                //    516          %IF A(AP)=1 %THEN %START                     ;! 2-DIM ARRAYS
#line 516 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_0064;
                                                                //    517             DUMP(M'SUB',M'ACC',BR(LEVEL),WS-1)        ;! PERFORM 2-DIM ARRAY DECLARATION CALCULATIONS
#line 517 "regression-compile-tmp/skimp77.imp"
DUMP(5461314, 4277059, BR[LEVEL], (((int)(WS)) - (1)));
                                                                //    518             DUMP(M'STR',M'ACC',BR(LEVEL),WS NEXT)
#line 518 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], WSNEXT());
                                                                //    519             AP=AP+1
#line 519 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    520             SEXPR                                     ;! LOWER BOUND EXPR FOR 2ND DIM
#line 520 "regression-compile-tmp/skimp77.imp"
SEXPR();
                                                                //    521             DUMP(M'MLT',M'ACC',BR(LEVEL),WS-1)
#line 521 "regression-compile-tmp/skimp77.imp"
DUMP(5065812, 4277059, BR[LEVEL], (((int)(WS)) - (1)));
                                                                //    522             DUMP(M'STR',M'ACC',BR(LEVEL),WS NEXT)
#line 522 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], WSNEXT());
                                                                //    523             SEXPR                                     ;! UPPER BOUND EXPR FOR 2ND DIM
#line 523 "regression-compile-tmp/skimp77.imp"
SEXPR();
                                                                //    524             DUMP(M'LDA',M'ACC',M'ACC',1)
#line 524 "regression-compile-tmp/skimp77.imp"
DUMP(4998209, 4277059, 4277059, 1);
                                                                //    525             DUMP(M'MLT',M'ACC',BR(LEVEL),WS-2)
#line 525 "regression-compile-tmp/skimp77.imp"
DUMP(5065812, 4277059, BR[LEVEL], (((int)(WS)) - (2)));
                                                                //    526             DUMP(M'STR',M'ACC',BR(LEVEL),WS NEXT)
#line 526 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], WSNEXT());
                                                                //    527             WS=WS-4                                   ;! RESTORE WORKSPACE POINTER
#line 527 "regression-compile-tmp/skimp77.imp"
WS = (((int)(WS)) - (4));
                                                                //    528             I=2                                       ;! NO OF DIMS
#line 528 "regression-compile-tmp/skimp77.imp"
I = 2;
                                                                //    529             %FINISH %ELSE %START                      ;! 1-DIM ARRAYS
#line 529 "regression-compile-tmp/skimp77.imp"
goto L_0065;
#line 529 "regression-compile-tmp/skimp77.imp"
L_0064:;
                                                                //    530             DUMP(M'STR',M'ACC',BR(LEVEL),WS NEXT)
#line 530 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], WSNEXT());
                                                                //    531             WS=WS-2                                   ;! RESTORE WORKSPACE POINTER
#line 531 "regression-compile-tmp/skimp77.imp"
WS = (((int)(WS)) - (2));
                                                                //    532             I=1                                       ;! NO OF DIMS
#line 532 "regression-compile-tmp/skimp77.imp"
I = 1;
                                                                //    533             %FINISH
#line 533 "regression-compile-tmp/skimp77.imp"
L_0065:;
                                                                //    534          J=2                                          ;! TAG FOR 'ARRAY'
#line 534 "regression-compile-tmp/skimp77.imp"
J = 2;
                                                                //    535          AP=APP                                       ;! RESTORE AP TO BEFORE LIST OF NAMES
#line 535 "regression-compile-tmp/skimp77.imp"
AP = APP;
                                                                //    536          %FINISH %ELSE %START                         ;! SCALAR DECLARATIONS
#line 536 "regression-compile-tmp/skimp77.imp"
goto L_0066;
#line 536 "regression-compile-tmp/skimp77.imp"
L_0062:;
                                                                //    537          I=0                                          ;! DIMS=0 FOR SCALARS
#line 537 "regression-compile-tmp/skimp77.imp"
I = 0;
                                                                //    538          J=0                                          ;! TAG FOR SCALAR
#line 538 "regression-compile-tmp/skimp77.imp"
J = 0;
                                                                //    539          %FINISH
#line 539 "regression-compile-tmp/skimp77.imp"
L_0066:;
                                                                //    540  L52:  STORE TAG(A(AP+1),J,1,I,LEVEL,RAD(LEVEL))       ;! PUSHDOWN TAG FOR THIS NAME
#line 540 "regression-compile-tmp/skimp77.imp"
U_1021:;
#line 540 "regression-compile-tmp/skimp77.imp"
STORETAG(A[(((int)((((int)(AP)) + (1)))) - (1))], J, 1, I, LEVEL, RAD[LEVEL]);
                                                                //    541       %IF I=0 %THEN RAD(LEVEL)=RAD(LEVEL)+1 %ELSE %START;! ONE RELATIVE LOCATION FOR SCALARS
#line 541 "regression-compile-tmp/skimp77.imp"
if (((I) != (0))) goto L_0067;
#line 541 "regression-compile-tmp/skimp77.imp"
RAD[LEVEL] = (((int)(RAD[LEVEL])) + (1));
#line 541 "regression-compile-tmp/skimp77.imp"
goto L_0068;
#line 541 "regression-compile-tmp/skimp77.imp"
L_0067:;
                                                                //    542          %IF I=1 %THEN %START                         ;! 1-DIM ARRAYS
#line 542 "regression-compile-tmp/skimp77.imp"
if (((I) != (1))) goto L_0069;
                                                                //    543             DUMP(M'SUB',M'STP',BR(LEVEL),WS)
#line 543 "regression-compile-tmp/skimp77.imp"
DUMP(5461314, 5461072, BR[LEVEL], WS);
                                                                //    544             DUMP(M'STR',M'STP',BR(LEVEL),RAD(LEVEL))
#line 544 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 5461072, BR[LEVEL], RAD[LEVEL]);
                                                                //    545             DUMP(M'ADD',M'STP',BR(LEVEL),WS+1)
#line 545 "regression-compile-tmp/skimp77.imp"
DUMP(4277316, 5461072, BR[LEVEL], (((int)(WS)) + (1)));
                                                                //    546             %FINISH %ELSE %START                      ;! 2-DIM ARRAYS
#line 546 "regression-compile-tmp/skimp77.imp"
goto L_006a;
#line 546 "regression-compile-tmp/skimp77.imp"
L_0069:;
                                                                //    547             DUMP(M'LOAD',M'ACC',BR(LEVEL),WS+1)
#line 547 "regression-compile-tmp/skimp77.imp"
DUMP(1280262468, 4277059, BR[LEVEL], (((int)(WS)) + (1)));
                                                                //    548             DUMP(M'STR',M'ACC',BR(LEVEL),RAD(LEVEL))
#line 548 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], RAD[LEVEL]);
                                                                //    549             DUMP(M'SUB',M'STP',BR(LEVEL),WS+2)
#line 549 "regression-compile-tmp/skimp77.imp"
DUMP(5461314, 5461072, BR[LEVEL], (((int)(WS)) + (2)));
                                                                //    550             DUMP(M'LDA',M'ACC',M'STP',0)
#line 550 "regression-compile-tmp/skimp77.imp"
DUMP(4998209, 4277059, 5461072, 0);
                                                                //    551             DUMP(M'SUB',M'ACC',BR(LEVEL),WS)
#line 551 "regression-compile-tmp/skimp77.imp"
DUMP(5461314, 4277059, BR[LEVEL], WS);
                                                                //    552             DUMP(M'STR',M'ACC',BR(LEVEL),RAD(LEVEL)+1)
#line 552 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], (((int)(RAD[LEVEL])) + (1)));
                                                                //    553             DUMP(M'ADD',M'STP',BR(LEVEL),WS+3)
#line 553 "regression-compile-tmp/skimp77.imp"
DUMP(4277316, 5461072, BR[LEVEL], (((int)(WS)) + (3)));
                                                                //    554             %FINISH
#line 554 "regression-compile-tmp/skimp77.imp"
L_006a:;
                                                                //    555          RAD(LEVEL)=RAD(LEVEL)+2                      ;! 2 RELATIVE LOCATIONS FOR ARRAYS
#line 555 "regression-compile-tmp/skimp77.imp"
RAD[LEVEL] = (((int)(RAD[LEVEL])) + (2));
                                                                //    556          %FINISH
#line 556 "regression-compile-tmp/skimp77.imp"
L_0068:;
                                                                //    557       AP=AP+2                                         ;! AP ON <NAMS>
#line 557 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (2));
                                                                //    558       %IF A(AP)=1 %THEN ->L52                          ;! MORE NAMES IN LIST OF NAMES
#line 558 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_006b;
#line 558 "regression-compile-tmp/skimp77.imp"
goto U_1021;
#line 558 "regression-compile-tmp/skimp77.imp"
L_006b:;
                                                                //    559       %RETURN
#line 559 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    560  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    561  ! RT SPEC? . . .
                                                                //    562  L60:  I=A(AP)-1                                          ;! ROUTINE/FN
#line 562 "regression-compile-tmp/skimp77.imp"
U_101c:;
#line 562 "regression-compile-tmp/skimp77.imp"
I = (((int)(A[(((int)(AP)) - (1))])) - (1));
                                                                //    563       J=A(AP+1)                                          ;! SPEC ?
#line 563 "regression-compile-tmp/skimp77.imp"
J = A[(((int)((((int)(AP)) + (1)))) - (1))];
                                                                //    564       K=A(AP+2)                                          ;! NAME OF ROUTIINE OR FN
#line 564 "regression-compile-tmp/skimp77.imp"
K = A[(((int)((((int)(AP)) + (2)))) - (1))];
                                                                //    565       AP=AP+3                                            ;! AP ON <FPP>
#line 565 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (3));
                                                                //    566       L=0                                                ;! PARAMETER COUNT
#line 566 "regression-compile-tmp/skimp77.imp"
L = 0;
                                                                //    567       M=10                                               ;! FIRST RELATIVE ADDRESS TO BE ALLOCATED
#line 567 "regression-compile-tmp/skimp77.imp"
M = 10;
                                                                //    568  L63:  %IF A(AP)=1 %THEN %START                           ;! PARAMETERS PRESENT
#line 568 "regression-compile-tmp/skimp77.imp"
U_1022:;
#line 568 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_006c;
                                                                //    569          AP=AP+1                                         ;! AP ON <ARRN>
#line 569 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    570          %IF A(AP)=1 %THEN N=3 %ELSE N=3-A(AP)           ;! SET TAG FOR PARAMETER FORM
#line 570 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_006d;
#line 570 "regression-compile-tmp/skimp77.imp"
N = 3;
#line 570 "regression-compile-tmp/skimp77.imp"
goto L_006e;
#line 570 "regression-compile-tmp/skimp77.imp"
L_006d:;
#line 570 "regression-compile-tmp/skimp77.imp"
N = (((int)(3)) - (A[(((int)(AP)) - (1))]));
#line 570 "regression-compile-tmp/skimp77.imp"
L_006e:;
                                                                //    571          P=N<<28!1<<24!(LEVEL+1)<<16                     ;! SET UP PATTERN FOR WHOLE TAG
#line 571 "regression-compile-tmp/skimp77.imp"
P = ((((((N) << (28))) | (((1) << (24))))) | ((((((int)(LEVEL)) + (1))) << (16))));
                                                                //    572  L62:     L=L+1                                           ;! PARAMETER COUNT
#line 572 "regression-compile-tmp/skimp77.imp"
U_1023:;
#line 572 "regression-compile-tmp/skimp77.imp"
L = (((int)(L)) + (1));
                                                                //    573          %IF L>15 %THEN %START
#line 573 "regression-compile-tmp/skimp77.imp"
if (((L) <= (15))) goto L_006f;
                                                                //    574             FAULT(M'TOO ',M'MANY',M' PAR',M'AMS ')
#line 574 "regression-compile-tmp/skimp77.imp"
FAULT(1414483744, 1296125529, 542130514, 1095586592);
                                                                //    575             ->L61 ; %FINISH                               ;! IGNORE SUPERFLUOUS PARAMS
#line 575 "regression-compile-tmp/skimp77.imp"
goto U_1024;
#line 575 "regression-compile-tmp/skimp77.imp"
L_006f:;
                                                                //    576          PT(L)=P!M                                       ;! STORE TAG FOR THIS PARAM
#line 576 "regression-compile-tmp/skimp77.imp"
PT[(((int)(L)) - (1))] = ((P) | (M));
                                                                //    577          PN(L)=A(AP+1)                                   ;! STORE THE NAMES IDENT. NO
#line 577 "regression-compile-tmp/skimp77.imp"
PN[(((int)(L)) - (1))] = A[(((int)((((int)(AP)) + (1)))) - (1))];
                                                                //    578          %IF N=3 %THEN M=M+2 %ELSE M=M+1                 ;! NEXT RELATIVE ADDRESS
#line 578 "regression-compile-tmp/skimp77.imp"
if (((N) != (3))) goto L_0070;
#line 578 "regression-compile-tmp/skimp77.imp"
M = (((int)(M)) + (2));
#line 578 "regression-compile-tmp/skimp77.imp"
goto L_0071;
#line 578 "regression-compile-tmp/skimp77.imp"
L_0070:;
#line 578 "regression-compile-tmp/skimp77.imp"
M = (((int)(M)) + (1));
#line 578 "regression-compile-tmp/skimp77.imp"
L_0071:;
                                                                //    579          AP=AP+2                                         ;! AP ON <NAMS>
#line 579 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (2));
                                                                //    580          %IF A(AP)=1 %THEN ->L62                          ;! MORE NAMES IN LIST
#line 580 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_0072;
#line 580 "regression-compile-tmp/skimp77.imp"
goto U_1023;
#line 580 "regression-compile-tmp/skimp77.imp"
L_0072:;
                                                                //    581          AP=AP+1                                         ;! AP ON <FPS>
#line 581 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    582          ->L63 ; %FINISH
#line 582 "regression-compile-tmp/skimp77.imp"
goto U_1022;
#line 582 "regression-compile-tmp/skimp77.imp"
L_006c:;
                                                                //    583  L61:  N=LINK(K)                                          ;! LINK TO TAG FOR NAME OF ROUTINE OR FN
#line 583 "regression-compile-tmp/skimp77.imp"
U_1024:;
#line 583 "regression-compile-tmp/skimp77.imp"
N = LINK[K];
                                                                //    584       %IF N=0 %OR TAG(N)>>16&15<LEVEL %THEN %START       ;! NAME NOT SET OR SET AT LOWER LEVEL
#line 584 "regression-compile-tmp/skimp77.imp"
if (((N) == (0))) goto L_0073;
#line 584 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(TAG[N])) >> (16)))) & (15))) >= (LEVEL))) goto L_0074;
#line 584 "regression-compile-tmp/skimp77.imp"
L_0073:;
                                                                //    585          %IF L>0 %THEN %START                            ;! PARAMETERS PRESENT
#line 585 "regression-compile-tmp/skimp77.imp"
if (((L) <= (0))) goto L_0075;
                                                                //    586             P=1                                          ;! PARAMETER COUNT
#line 586 "regression-compile-tmp/skimp77.imp"
P = 1;
                                                                //    587             Q=K                                          ;! 'INSERT AFTER' POINTER
#line 587 "regression-compile-tmp/skimp77.imp"
Q = K;
                                                                //    588  L64:        R=NEWCELL                                    ;! PUSHDOWN TAG FOR PARAMETER
#line 588 "regression-compile-tmp/skimp77.imp"
U_1025:;
#line 588 "regression-compile-tmp/skimp77.imp"
R = NEWCELL();
                                                                //    589             TAG(R)=PT(P)
#line 589 "regression-compile-tmp/skimp77.imp"
TAG[R] = PT[(((int)(P)) - (1))];
                                                                //    590             LINK(R)=LINK(Q)
#line 590 "regression-compile-tmp/skimp77.imp"
LINK[R] = LINK[Q];
                                                                //    591             PTC(P)=R                                     ;! SAVE POINTER TO TAG CELL
#line 591 "regression-compile-tmp/skimp77.imp"
PTC[(((int)(P)) - (1))] = R;
                                                                //    592             LINK(Q)=R
#line 592 "regression-compile-tmp/skimp77.imp"
LINK[Q] = R;
                                                                //    593             Q=R                                          ;! NEW VALUE FOR 'INSERT AFTER' POINTER
#line 593 "regression-compile-tmp/skimp77.imp"
Q = R;
                                                                //    594             P=P+1                                        ;! PARAMETER COUNT
#line 594 "regression-compile-tmp/skimp77.imp"
P = (((int)(P)) + (1));
                                                                //    595             %IF P<=L %THEN ->L64                          ;! MORE PARAMETERS YET
#line 595 "regression-compile-tmp/skimp77.imp"
if (((P) > (L))) goto L_0076;
#line 595 "regression-compile-tmp/skimp77.imp"
goto U_1025;
#line 595 "regression-compile-tmp/skimp77.imp"
L_0076:;
                                                                //    596             %FINISH
#line 596 "regression-compile-tmp/skimp77.imp"
L_0075:;
                                                                //    597          STORE TAG(K,4,I,L,LEVEL,BT NEXT)                ;! PUSHDOWN TAG FOR NAME OF ROUTINE OR FN
#line 597 "regression-compile-tmp/skimp77.imp"
STORETAG(K, 4, I, L, LEVEL, BTNEXT());
                                                                //    598          %IF LEVEL=0 %THEN BAT(BTN-1)=K+65536            ;! FLAG FOR EXTERNAL SPECS
#line 598 "regression-compile-tmp/skimp77.imp"
if (((LEVEL) != (0))) goto L_0077;
#line 598 "regression-compile-tmp/skimp77.imp"
BAT[(((int)(BTN)) - (1))] = (((int)(K)) + (65536));
#line 598 "regression-compile-tmp/skimp77.imp"
L_0077:;
                                                                //    599          %FINISH %ELSE %START                            ;! NAME ALREADY SET AT THIS LEVEL
#line 599 "regression-compile-tmp/skimp77.imp"
goto L_0078;
#line 599 "regression-compile-tmp/skimp77.imp"
L_0074:;
                                                                //    600          %IF J=2 %AND TAG(N)>>28=4 %THEN %START          ;! STATEMENT NOT A SPEC & FORM OF NAME IS RT
#line 600 "regression-compile-tmp/skimp77.imp"
if (((J) != (2))) goto L_0079;
#line 600 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(TAG[N])) >> (28)))) != (4))) goto L_0079;
                                                                //    601             %IF TAG(N)>>24&15\=I %THEN %START
#line 601 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(TAG[N])) >> (24)))) & (15))) == (I))) goto L_007a;
                                                                //    602                PRINT NAME(K)
#line 602 "regression-compile-tmp/skimp77.imp"
PRINTNAME(K);
                                                                //    603                FAULT(M'RT N',M'OT A',M'S SP',M'EC  ')
#line 603 "regression-compile-tmp/skimp77.imp"
FAULT(1381245006, 1330913345, 1394627408, 1162027040);
                                                                //    604                %FINISH
#line 604 "regression-compile-tmp/skimp77.imp"
L_007a:;
                                                                //    605             %IF BAT(TAG(N)&65535)>=0 %THEN %START
#line 605 "regression-compile-tmp/skimp77.imp"
if (((BAT[((TAG[N]) & (65535))]) < (0))) goto L_007b;
                                                                //    606                PRINT NAME(K)
#line 606 "regression-compile-tmp/skimp77.imp"
PRINTNAME(K);
                                                                //    607                FAULT(M'RT A',M'PPEA',M'RS T',M'WICE')
#line 607 "regression-compile-tmp/skimp77.imp"
FAULT(1381244993, 1347437889, 1381179476, 1464419141);
                                                                //    608                %FINISH
#line 608 "regression-compile-tmp/skimp77.imp"
L_007b:;
                                                                //    609             P=TAG(N)>>20&15                              ;! NO OF PARAMS IN SPEC
#line 609 "regression-compile-tmp/skimp77.imp"
P = (((int)((((unsigned int)(TAG[N])) >> (20)))) & (15));
                                                                //    610             %IF L\=P %THEN %START
#line 610 "regression-compile-tmp/skimp77.imp"
if (((L) == (P))) goto L_007c;
                                                                //    611                FAULT(M'PARS',M' NOT',M' AS ',M'SPEC')
#line 611 "regression-compile-tmp/skimp77.imp"
FAULT(1346458195, 542003028, 541152032, 1397769539);
                                                                //    612                %IF L>P %THEN L=P                         ;! IGNORE SUPERFLUOUS PARAMS
#line 612 "regression-compile-tmp/skimp77.imp"
if (((L) <= (P))) goto L_007d;
#line 612 "regression-compile-tmp/skimp77.imp"
L = P;
#line 612 "regression-compile-tmp/skimp77.imp"
L_007d:;
                                                                //    613                %FINISH
#line 613 "regression-compile-tmp/skimp77.imp"
L_007c:;
                                                                //    614             %IF L>0 %THEN %START                         ;! PARAMS PRESENT
#line 614 "regression-compile-tmp/skimp77.imp"
if (((L) <= (0))) goto L_007e;
                                                                //    615                P=1                                       ;! PARAM COUNT
#line 615 "regression-compile-tmp/skimp77.imp"
P = 1;
                                                                //    616                Q=LINK(N)                                 ;! LINK TO TAG OF FIRST PARAM
#line 616 "regression-compile-tmp/skimp77.imp"
Q = LINK[N];
                                                                //    617  L67:           %IF PT(P)!TAG(Q)&15<<20\=TAG(Q) %THEN %START
#line 617 "regression-compile-tmp/skimp77.imp"
U_1026:;
#line 617 "regression-compile-tmp/skimp77.imp"
if (((((PT[(((int)(P)) - (1))]) | (((TAG[Q]) & (((15) << (20))))))) == (TAG[Q]))) goto L_007f;
                                                                //    618                   PRINT NAME(PN(P))
#line 618 "regression-compile-tmp/skimp77.imp"
PRINTNAME(PN[(((int)(P)) - (1))]);
                                                                //    619                   FAULT(M'PAR ',M'NOT ',M'AS S',M'PEC ')
#line 619 "regression-compile-tmp/skimp77.imp"
FAULT(1346458144, 1313821728, 1095966803, 1346716448);
                                                                //    620                   %FINISH
#line 620 "regression-compile-tmp/skimp77.imp"
L_007f:;
                                                                //    621                PTC(P)=Q                                  ;! SAVE POINTER TO TAG CELL
#line 621 "regression-compile-tmp/skimp77.imp"
PTC[(((int)(P)) - (1))] = Q;
                                                                //    622                P=P+1                                     ;! PARAM COUNT
#line 622 "regression-compile-tmp/skimp77.imp"
P = (((int)(P)) + (1));
                                                                //    623                Q=LINK(Q)                                 ;! NEXT TAG CELL
#line 623 "regression-compile-tmp/skimp77.imp"
Q = LINK[Q];
                                                                //    624                %IF P<=L %THEN ->L67                       ;! MORE PARAMS
#line 624 "regression-compile-tmp/skimp77.imp"
if (((P) > (L))) goto L_0080;
#line 624 "regression-compile-tmp/skimp77.imp"
goto U_1026;
#line 624 "regression-compile-tmp/skimp77.imp"
L_0080:;
                                                                //    625                %FINISH
#line 625 "regression-compile-tmp/skimp77.imp"
L_007e:;
                                                                //    626             %FINISH %ELSE %START
#line 626 "regression-compile-tmp/skimp77.imp"
goto L_0081;
#line 626 "regression-compile-tmp/skimp77.imp"
L_0079:;
                                                                //    627             PRINT NAME(K)
#line 627 "regression-compile-tmp/skimp77.imp"
PRINTNAME(K);
                                                                //    628             FAULT(M'NAME',M' SET',M' TWI',M'CE  ')
#line 628 "regression-compile-tmp/skimp77.imp"
FAULT(1312902469, 542328148, 542398281, 1128603680);
                                                                //    629             %FINISH
#line 629 "regression-compile-tmp/skimp77.imp"
L_0081:;
                                                                //    630          %FINISH
#line 630 "regression-compile-tmp/skimp77.imp"
L_0078:;
                                                                //    631  L68:  %IF J=2 %THEN %START                               ;! STATEMENT NOT A SPEC
#line 631 "regression-compile-tmp/skimp77.imp"
U_1027:;
#line 631 "regression-compile-tmp/skimp77.imp"
if (((J) != (2))) goto L_0082;
                                                                //    632          BRT(LEVEL)=BT NEXT                              ;! BRANCH ROUND ROUTINE OR FN
#line 632 "regression-compile-tmp/skimp77.imp"
BRT[LEVEL] = BTNEXT();
                                                                //    633          DUMP('B',0,M'BT',BRT(LEVEL))
#line 633 "regression-compile-tmp/skimp77.imp"
DUMP(66, 0, 16980, BRT[LEVEL]);
                                                                //    634          BAT(TAG(LINK(K))&65535)=CA                      ;! FILL IN ADDRESS OF THIS ROUTINE OR FN
#line 634 "regression-compile-tmp/skimp77.imp"
BAT[((TAG[LINK[K]]) & (65535))] = CA;
                                                                //    635          %IF LEVEL=15 %THEN FAULT(M'TOO ',M'MANY',M' LEV',M'ELS ') %C
#line 635 "regression-compile-tmp/skimp77.imp"
if (((LEVEL) != (15))) goto L_0083;
#line 635 "regression-compile-tmp/skimp77.imp"
FAULT(1414483744, 1296125529, 541869398, 1162629920);
#line 635 "regression-compile-tmp/skimp77.imp"
goto L_0084;
#line 635 "regression-compile-tmp/skimp77.imp"
L_0083:;
#line 635 "regression-compile-tmp/skimp77.imp"
LEVEL = (((int)(LEVEL)) + (1));
#line 635 "regression-compile-tmp/skimp77.imp"
L_0084:;
                                                                //    636                                %ELSE LEVEL=LEVEL+1       ;! NEXT TEXTUAL LEVEL
                                                                //    637          ENTER(I,M)
#line 637 "regression-compile-tmp/skimp77.imp"
ENTER(I, M);
                                                                //    638          %IF L>0 %THEN %START                            ;! PARAMS PRESENT
#line 638 "regression-compile-tmp/skimp77.imp"
if (((L) <= (0))) goto L_0085;
                                                                //    639             P=1                                          ;! PARAM COUNT
#line 639 "regression-compile-tmp/skimp77.imp"
P = 1;
                                                                //    640  L69:        I=PT(P)                                      ;! PUSHDOWN TAGS FOR PARAMS
#line 640 "regression-compile-tmp/skimp77.imp"
U_1028:;
#line 640 "regression-compile-tmp/skimp77.imp"
I = PT[(((int)(P)) - (1))];
                                                                //    641             %IF I>>28=3 %THEN STORE TAG(PN(P),3,1,0,LEVEL,PTC(P)) %C
#line 641 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(I)) >> (28)))) != (3))) goto L_0086;
#line 641 "regression-compile-tmp/skimp77.imp"
STORETAG(PN[(((int)(P)) - (1))], 3, 1, 0, LEVEL, PTC[(((int)(P)) - (1))]);
#line 641 "regression-compile-tmp/skimp77.imp"
goto L_0087;
#line 641 "regression-compile-tmp/skimp77.imp"
L_0086:;
#line 641 "regression-compile-tmp/skimp77.imp"
STORETAG(PN[(((int)(P)) - (1))], (int)((((unsigned int)(I)) >> (28))), 1, 0, LEVEL, ((I) & (65535)));
#line 641 "regression-compile-tmp/skimp77.imp"
L_0087:;
                                                                //    642                %ELSE STORE TAG(PN(P),I>>28,1,0,LEVEL,I&65535) ;! TREAT ARRAYNAMES SPECIALLY
                                                                //    643             P=P+1
#line 643 "regression-compile-tmp/skimp77.imp"
P = (((int)(P)) + (1));
                                                                //    644             %IF P<=L %THEN ->L69                          ;! MORE PARAMS YET
#line 644 "regression-compile-tmp/skimp77.imp"
if (((P) > (L))) goto L_0088;
#line 644 "regression-compile-tmp/skimp77.imp"
goto U_1028;
#line 644 "regression-compile-tmp/skimp77.imp"
L_0088:;
                                                                //    645             %FINISH
#line 645 "regression-compile-tmp/skimp77.imp"
L_0085:;
                                                                //    646          %FINISH
#line 646 "regression-compile-tmp/skimp77.imp"
L_0082:;
                                                                //    647       %RETURN
#line 647 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    648  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    649  ! %END
                                                                //    650  L70:  CHECK                                       ;! CHECK LABELS & START/FINISH BLOCKS
#line 650 "regression-compile-tmp/skimp77.imp"
U_101d:;
#line 650 "regression-compile-tmp/skimp77.imp"
CHECK();
                                                                //    651       COT(STAR(LEVEL))=RAD(LEVEL)                 ;! STORE STATIC ALLOCATION FOR THIS LEVEL
#line 651 "regression-compile-tmp/skimp77.imp"
COT[STAR[LEVEL]] = RAD[LEVEL];
                                                                //    652       UNSET                                       ;! UNSET NAMES DECLARED AT THIS LEVEL
#line 652 "regression-compile-tmp/skimp77.imp"
UNSET();
                                                                //    653       CHP=CHPP(LEVEL)
#line 653 "regression-compile-tmp/skimp77.imp"
CHP = CHPP[LEVEL];
                                                                //    654       %IF RTP(LEVEL)\=0 %THEN DUMP(M'STOP',0,0,0) ;! %STOP FOR FNS
#line 654 "regression-compile-tmp/skimp77.imp"
if (((RTP[LEVEL]) == (0))) goto L_0089;
#line 654 "regression-compile-tmp/skimp77.imp"
DUMP(1398034256, 0, 0, 0);
#line 654 "regression-compile-tmp/skimp77.imp"
L_0089:;
                                                                //    655       RETURN                                      ;! DUMP %RETURN CODE
#line 655 "regression-compile-tmp/skimp77.imp"
RETURN();
                                                                //    656       LEVEL=LEVEL-1                               ;! DECREMENT TEXTUAL LEVEL COUNT
#line 656 "regression-compile-tmp/skimp77.imp"
LEVEL = (((int)(LEVEL)) - (1));
                                                                //    657       %IF LEVEL<1 %THEN %START                    ;! NOT BACK AT OUTER LEVEL YET
#line 657 "regression-compile-tmp/skimp77.imp"
if (((LEVEL) >= (1))) goto L_008a;
                                                                //    658          FAULT(M'EXCE',M'SS %',M'END ',M'    ')
#line 658 "regression-compile-tmp/skimp77.imp"
FAULT(1163412293, 1397956645, 1162757152, 538976288);
                                                                //    659          ->L71 ; %FINISH                           ;! TREAT AS %ENDOFPROGRAM
#line 659 "regression-compile-tmp/skimp77.imp"
goto U_1029;
#line 659 "regression-compile-tmp/skimp77.imp"
L_008a:;
                                                                //    660       BAT(BRT(LEVEL))=CA                          ;! FILL ADDR FOR BRANCH ROUND ROUTINE/FN
#line 660 "regression-compile-tmp/skimp77.imp"
BAT[BRT[LEVEL]] = CA;
                                                                //    661       %RETURN
#line 661 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    662  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    663  ! %BEGIN
                                                                //    664  L80:  %IF LEVEL\=0 %THEN %START
#line 664 "regression-compile-tmp/skimp77.imp"
U_101e:;
#line 664 "regression-compile-tmp/skimp77.imp"
if (((LEVEL) == (0))) goto L_008b;
                                                                //    665          FAULT(M'%BEG',M'IN E',M'XTRA',M'    ')   ;! NO INTERNAL BLOCKS ALLOWED
#line 665 "regression-compile-tmp/skimp77.imp"
FAULT(625100103, 1229856837, 1481921089, 538976288);
                                                                //    666          %RETURN ; %FINISH
#line 666 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 666 "regression-compile-tmp/skimp77.imp"
L_008b:;
                                                                //    667       %IF CA\=0 %OR RAD(0)\=10 %THEN %START
#line 667 "regression-compile-tmp/skimp77.imp"
if (((CA) != (0))) goto L_008c;
#line 667 "regression-compile-tmp/skimp77.imp"
if (((RAD[0]) == (10))) goto L_008d;
#line 667 "regression-compile-tmp/skimp77.imp"
L_008c:;
                                                                //    668          FAULT(M'%BEG',M'IN N',M'OT F',M'IRST')
#line 668 "regression-compile-tmp/skimp77.imp"
FAULT(625100103, 1229856846, 1330913350, 1230132052);
                                                                //    669          %RETURN ; %FINISH
#line 669 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 669 "regression-compile-tmp/skimp77.imp"
L_008d:;
                                                                //    670       LEVEL=1                                ;! TEXTUAL LEVEL COUNT TO 1
#line 670 "regression-compile-tmp/skimp77.imp"
LEVEL = 1;
                                                                //    671       ENTER(-1,10)
#line 671 "regression-compile-tmp/skimp77.imp"
ENTER((-1), 10);
                                                                //    672       %RETURN
#line 672 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    673  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    674  ! %ENDOFPROGRAM
                                                                //    675  L90:  CHECK                                  ;! CHECK LABELS & START/FINISHES
#line 675 "regression-compile-tmp/skimp77.imp"
U_101f:;
#line 675 "regression-compile-tmp/skimp77.imp"
CHECK();
                                                                //    676       COT(STAR(LEVEL))=RAD(LEVEL)            ;! FILL IN STATIC ALLOCATION FOR OUTER BLOCK
#line 676 "regression-compile-tmp/skimp77.imp"
COT[STAR[LEVEL]] = RAD[LEVEL];
                                                                //    677       UNSET                                  ;! UNSET NAMES DECLARED AT THIS LEVEL
#line 677 "regression-compile-tmp/skimp77.imp"
UNSET();
                                                                //    678       %IF LEVEL\=1 %THEN FAULT(M'TOO ',M'FEW ',M'%END',M'S   ')
#line 678 "regression-compile-tmp/skimp77.imp"
if (((LEVEL) == (1))) goto L_008e;
#line 678 "regression-compile-tmp/skimp77.imp"
FAULT(1414483744, 1178949408, 625299012, 1394614304);
#line 678 "regression-compile-tmp/skimp77.imp"
L_008e:;
                                                                //    679  L71:  DUMP(M'STOP',0,0,0)                    ;! %STOP
#line 679 "regression-compile-tmp/skimp77.imp"
U_1029:;
#line 679 "regression-compile-tmp/skimp77.imp"
DUMP(1398034256, 0, 0, 0);
                                                                //    680       PRINT SYMBOL('B')                      ;! PRINT OUT BRANCH TABLE
#line 680 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(66);
                                                                //    681       PRINT SYMBOL('T')
#line 681 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(84);
                                                                //    682       PRINT SYMBOL(':')
#line 682 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(58);
                                                                //    683       NEWLINE
#line 683 "regression-compile-tmp/skimp77.imp"
_imp_NEWLINE();
                                                                //    684       CA=0
#line 684 "regression-compile-tmp/skimp77.imp"
CA = 0;
                                                                //    685  L93:  %IF CA\=BTN %THEN %START
#line 685 "regression-compile-tmp/skimp77.imp"
U_102a:;
#line 685 "regression-compile-tmp/skimp77.imp"
if (((CA) == (BTN))) goto L_008f;
                                                                //    686          DUMP('B',0,M'PRG',BAT(CA))          ;! BRANCH RELATIVE TO START OF PROGRAM
#line 686 "regression-compile-tmp/skimp77.imp"
DUMP(66, 0, 5263943, BAT[CA]);
                                                                //    687          ->L93 ; %FINISH
#line 687 "regression-compile-tmp/skimp77.imp"
goto U_102a;
#line 687 "regression-compile-tmp/skimp77.imp"
L_008f:;
                                                                //    688       PRINT SYMBOL('C')                      ;! PRINT OUT CONSTANT TABLE
#line 688 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(67);
                                                                //    689       PRINT SYMBOL('T')
#line 689 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(84);
                                                                //    690       PRINT SYMBOL(':')
#line 690 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(58);
                                                                //    691       NEWLINE
#line 691 "regression-compile-tmp/skimp77.imp"
_imp_NEWLINE();
                                                                //    692       I=0
#line 692 "regression-compile-tmp/skimp77.imp"
I = 0;
                                                                //    693  L91:  %IF I\=CTN %THEN %START
#line 693 "regression-compile-tmp/skimp77.imp"
U_102b:;
#line 693 "regression-compile-tmp/skimp77.imp"
if (((I) == (CTN))) goto L_0090;
                                                                //    694          WRITE(COT(I),10)
#line 694 "regression-compile-tmp/skimp77.imp"
_imp_WRITE(COT[I], 10);
                                                                //    695          NEWLINE
#line 695 "regression-compile-tmp/skimp77.imp"
_imp_NEWLINE();
                                                                //    696          I=I+1
#line 696 "regression-compile-tmp/skimp77.imp"
I = (((int)(I)) + (1));
                                                                //    697          ->L91 ; %FINISH
#line 697 "regression-compile-tmp/skimp77.imp"
goto U_102b;
#line 697 "regression-compile-tmp/skimp77.imp"
L_0090:;
                                                                //    698       PRINT SYMBOL(';')
#line 698 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(59);
                                                                //    699       WRITE(FAULTS,1)                        ;! NUMBER OF PROGRAM FAULTS
#line 699 "regression-compile-tmp/skimp77.imp"
_imp_WRITE(FAULTS, 1);
                                                                //    700       FAULT(M' FAU',M'LTS ',M'IN P',M'ROGM')
#line 700 "regression-compile-tmp/skimp77.imp"
FAULT(541475157, 1280594720, 1229856848, 1380927309);
                                                                //    701       %STOP
#line 701 "regression-compile-tmp/skimp77.imp"
exit(0);
                                                                //    702  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //    703  %ROUTINE UI
#line 703 "regression-compile-tmp/skimp77.imp"
void UI( void )
#line 703 "regression-compile-tmp/skimp77.imp"
{
                                                                //    704  ! COMPILE UNCONDITIONAL INSTRUCTION
                                                                //    705  %INTEGER I,J,K,L
#line 705 "regression-compile-tmp/skimp77.imp"
int I;
#line 705 "regression-compile-tmp/skimp77.imp"
int J;
#line 705 "regression-compile-tmp/skimp77.imp"
int K;
#line 705 "regression-compile-tmp/skimp77.imp"
int L;
                                                                //    706       I=A(AP)                            ;! NEXT ANALYSIS RECORD ENTRY
#line 706 "regression-compile-tmp/skimp77.imp"
I = A[(((int)(AP)) - (1))];
                                                                //    707       AP=AP+1
#line 707 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    708       %IF I=1 %THEN ->L10                 ;! ROUTINE CALL OR ASSIGNMENT STATEMENT
#line 708 "regression-compile-tmp/skimp77.imp"
if (((I) != (1))) goto L_0091;
#line 708 "regression-compile-tmp/skimp77.imp"
goto U_102c;
#line 708 "regression-compile-tmp/skimp77.imp"
L_0091:;
                                                                //    709       %IF I=2 %THEN ->L20                 ;! JUMP INSTRUCTION
#line 709 "regression-compile-tmp/skimp77.imp"
if (((I) != (2))) goto L_0092;
#line 709 "regression-compile-tmp/skimp77.imp"
goto U_102d;
#line 709 "regression-compile-tmp/skimp77.imp"
L_0092:;
                                                                //    710       %IF I=3 %THEN ->L30                 ;! %START
#line 710 "regression-compile-tmp/skimp77.imp"
if (((I) != (3))) goto L_0093;
#line 710 "regression-compile-tmp/skimp77.imp"
goto U_102e;
#line 710 "regression-compile-tmp/skimp77.imp"
L_0093:;
                                                                //    711       %IF I=4 %THEN ->L40                 ;! %RETURN
#line 711 "regression-compile-tmp/skimp77.imp"
if (((I) != (4))) goto L_0094;
#line 711 "regression-compile-tmp/skimp77.imp"
goto U_102f;
#line 711 "regression-compile-tmp/skimp77.imp"
L_0094:;
                                                                //    712       %IF I=5 %THEN ->L50                 ;! %RESULT=
#line 712 "regression-compile-tmp/skimp77.imp"
if (((I) != (5))) goto L_0095;
#line 712 "regression-compile-tmp/skimp77.imp"
goto U_1030;
#line 712 "regression-compile-tmp/skimp77.imp"
L_0095:;
                                                                //    713       DUMP(M'STOP',0,0,0)                ;! %STOP
#line 713 "regression-compile-tmp/skimp77.imp"
DUMP(1398034256, 0, 0, 0);
                                                                //    714       %RETURN
#line 714 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    715  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    716  ! NAME APP ASS
                                                                //    717  L10:  I=LINK(A(AP))                             ;! POINTER TO NAME TAGS
#line 717 "regression-compile-tmp/skimp77.imp"
U_102c:;
#line 717 "regression-compile-tmp/skimp77.imp"
I = LINK[A[(((int)(AP)) - (1))]];
                                                                //    718       %IF I=0 %THEN %START
#line 718 "regression-compile-tmp/skimp77.imp"
if (((I) != (0))) goto L_0096;
                                                                //    719          PRINT NAME(A(AP))
#line 719 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)(AP)) - (1))]);
                                                                //    720          FAULT(M'NAME',M' NOT',M' SET',0)
#line 720 "regression-compile-tmp/skimp77.imp"
FAULT(1312902469, 542003028, 542328148, 0);
                                                                //    721          %FINISH %ELSE I=TAG(I)                ;! NAME TAGS OR ZERO TO AVOID DIAGNOSTICS
#line 721 "regression-compile-tmp/skimp77.imp"
goto L_0097;
#line 721 "regression-compile-tmp/skimp77.imp"
L_0096:;
#line 721 "regression-compile-tmp/skimp77.imp"
I = TAG[I];
#line 721 "regression-compile-tmp/skimp77.imp"
L_0097:;
                                                                //    722       J=AP                                      ;! PRESERVE ANALYSIS RECORD POINTER
#line 722 "regression-compile-tmp/skimp77.imp"
J = AP;
                                                                //    723       AP=AP+1                                   ;! AP ON <APP>
#line 723 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    724       SKIP APP                                  ;! SKIP TO <ASS>
#line 724 "regression-compile-tmp/skimp77.imp"
SKIPAPP();
                                                                //    725       %IF A(AP)=2 %THEN %START                  ;! ROUTINE CALL
#line 725 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (2))) goto L_0098;
                                                                //    726          %IF I>>24=64 %THEN %START              ;! 'FORM/TYPE' IS ROUTINE
#line 726 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(I)) >> (24)))) != (64))) goto L_0099;
                                                                //    727             AP=J                                ;! RESTORE AP TO <NAME>
#line 727 "regression-compile-tmp/skimp77.imp"
AP = J;
                                                                //    728             RT                                  ;! CALL ROUTINE
#line 728 "regression-compile-tmp/skimp77.imp"
RT();
                                                                //    729             %FINISH %ELSE %START
#line 729 "regression-compile-tmp/skimp77.imp"
goto L_009a;
#line 729 "regression-compile-tmp/skimp77.imp"
L_0099:;
                                                                //    730             %IF I\=0 %THEN %START
#line 730 "regression-compile-tmp/skimp77.imp"
if (((I) == (0))) goto L_009b;
                                                                //    731                PRINT NAME(A(J))
#line 731 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)(J)) - (1))]);
                                                                //    732                FAULT(M'NOT ',M'ROUT',M'INE ',M'NAME')
#line 732 "regression-compile-tmp/skimp77.imp"
FAULT(1313821728, 1380930900, 1229866272, 1312902469);
                                                                //    733                %FINISH
#line 733 "regression-compile-tmp/skimp77.imp"
L_009b:;
                                                                //    734             %FINISH
#line 734 "regression-compile-tmp/skimp77.imp"
L_009a:;
                                                                //    735          AP=AP+1                                ;! AP AFTER <UI>
#line 735 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    736          %RETURN ; %FINISH
#line 736 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 736 "regression-compile-tmp/skimp77.imp"
L_0098:;
                                                                //    737       K=I>>28                                   ;! 'FORM' OF NAME
#line 737 "regression-compile-tmp/skimp77.imp"
K = (int)((((unsigned int)(I)) >> (28)));
                                                                //    738       %IF K=4 %THEN %START
#line 738 "regression-compile-tmp/skimp77.imp"
if (((K) != (4))) goto L_009c;
                                                                //    739          PRINT NAME(A(J))
#line 739 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)(J)) - (1))]);
                                                                //    740          FAULT(M'NAME',M' NOT',M' A D',M'ESTN') ;! ROUTINE/FN FORM
#line 740 "regression-compile-tmp/skimp77.imp"
FAULT(1312902469, 542003028, 541139012, 1163088974);
                                                                //    741          I=0                                    ;! CLEAR TAGS TO AVOID FURTHER DIAGNOSTIC
#line 741 "regression-compile-tmp/skimp77.imp"
I = 0;
                                                                //    742          %FINISH
#line 742 "regression-compile-tmp/skimp77.imp"
L_009c:;
                                                                //    743       AP=AP+1                                   ;! AP ON <+-\>
#line 743 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    744       SEXPR
#line 744 "regression-compile-tmp/skimp77.imp"
SEXPR();
                                                                //    745       %IF I=0 %THEN %RETURN                     ;! LHS NAME NOT SET
#line 745 "regression-compile-tmp/skimp77.imp"
if (((I) != (0))) goto L_009d;
#line 745 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 745 "regression-compile-tmp/skimp77.imp"
L_009d:;
                                                                //    746       %IF K>=2 %THEN %START                     ;! LHS AN ARRAY TYPE
#line 746 "regression-compile-tmp/skimp77.imp"
if (((K) < (2))) goto L_009e;
                                                                //    747          DUMP(M'STR',M'ACC',BR(LEVEL),WS NEXT)  ;! PRESERVE ACCUMMULATOR
#line 747 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], WSNEXT());
                                                                //    748          K=AP                                   ;! PRESERVE AP
#line 748 "regression-compile-tmp/skimp77.imp"
K = AP;
                                                                //    749          AP=J                                    ;! RESTORE INITIALANAL REC POINTER
#line 749 "regression-compile-tmp/skimp77.imp"
AP = J;
                                                                //    750          ARRAD                                  ;! CALCULATE ARRAY ELEMENT ADDRESS
#line 750 "regression-compile-tmp/skimp77.imp"
ARRAD();
                                                                //    751          WS=WS-1                                ;! RESTORE WORKSPACE POINTER
#line 751 "regression-compile-tmp/skimp77.imp"
WS = (((int)(WS)) - (1));
                                                                //    752          DUMP(M'LOAD',M'WK',BR(LEVEL),WS)       ;! RESTORE ACCUMMULATOR
#line 752 "regression-compile-tmp/skimp77.imp"
DUMP(1280262468, 22347, BR[LEVEL], WS);
                                                                //    753          DUMP(M'STR',M'WK',M'ACC',0)            ;! DUMP ASSIGNMENT
#line 753 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 22347, 4277059, 0);
                                                                //    754          AP=K                                   ;! RESTORE AP TO AFTER <UI>
#line 754 "regression-compile-tmp/skimp77.imp"
AP = K;
                                                                //    755          %RETURN ; %FINISH
#line 755 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 755 "regression-compile-tmp/skimp77.imp"
L_009e:;
                                                                //    756       %IF K=1 %THEN %START
#line 756 "regression-compile-tmp/skimp77.imp"
if (((K) != (1))) goto L_009f;
                                                                //    757          DUMP(M'LOAD',M'WK',BR(I>>16&15),I&65535);! INDIRECT ASSIGMENT
#line 757 "regression-compile-tmp/skimp77.imp"
DUMP(1280262468, 22347, BR[(((int)((((unsigned int)(I)) >> (16)))) & (15))], ((I) & (65535)));
                                                                //    758          DUMP(M'STR',M'ACC',M'WK',0)
#line 758 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, 22347, 0);
                                                                //    759          %FINISH %ELSE DUMP(M'STR',M'ACC',BR(I>>16&15),I&65535)
#line 759 "regression-compile-tmp/skimp77.imp"
goto L_00a0;
#line 759 "regression-compile-tmp/skimp77.imp"
L_009f:;
#line 759 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[(((int)((((unsigned int)(I)) >> (16)))) & (15))], ((I) & (65535)));
#line 759 "regression-compile-tmp/skimp77.imp"
L_00a0:;
                                                                //    760       %IF A(J+1)=1 %THEN %START
#line 760 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(J)) + (1)))) - (1))]) != (1))) goto L_00a1;
                                                                //    761          PRINT NAME(A(J))
#line 761 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)(J)) - (1))]);
                                                                //    762          FAULT(M'SCAL',M'AR H',M'AS P',M'ARAM')
#line 762 "regression-compile-tmp/skimp77.imp"
FAULT(1396916556, 1095901256, 1095966800, 1095909709);
                                                                //    763          %FINISH
#line 763 "regression-compile-tmp/skimp77.imp"
L_00a1:;
                                                                //    764       %RETURN
#line 764 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    765  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    766  ! -> CONST
                                                                //    767  L20:  DUMP('B',0,M'BT',FIND LABEL)              ;! SCAN/INSERT JUMP LIST AND DUMP JUMP
#line 767 "regression-compile-tmp/skimp77.imp"
U_102d:;
#line 767 "regression-compile-tmp/skimp77.imp"
DUMP(66, 0, 16980, FINDLABEL());
                                                                //    768       %RETURN
#line 768 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    769  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    770  ! %START
                                                                //    771  L30:  FAULT(M'%STA',M'RT ?',M'    ',M'    ')    ;! %START ALONE SHOULD NOT BE A SOURCE STATEMENT
#line 771 "regression-compile-tmp/skimp77.imp"
U_102e:;
#line 771 "regression-compile-tmp/skimp77.imp"
FAULT(626218049, 1381244991, 538976288, 538976288);
                                                                //    772       %RETURN
#line 772 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    773  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    774  ! %RETURN
                                                                //    775  L40:  %IF RTP(LEVEL)\=0 %THEN FAULT(M'%RET',M'URN ',M'CONT',M'EXT ')
#line 775 "regression-compile-tmp/skimp77.imp"
U_102f:;
#line 775 "regression-compile-tmp/skimp77.imp"
if (((RTP[LEVEL]) == (0))) goto L_00a2;
#line 775 "regression-compile-tmp/skimp77.imp"
FAULT(626148692, 1431457312, 1129270868, 1163416608);
#line 775 "regression-compile-tmp/skimp77.imp"
L_00a2:;
                                                                //    776       RETURN                                    ;! DUMP %RETURN CODE  -  INCORRECT FOR FN
#line 776 "regression-compile-tmp/skimp77.imp"
RETURN();
                                                                //    777       %RETURN
#line 777 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    778  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    779  ! %RESULT=
                                                                //    780  L50:  I=RTP(LEVEL)                              ;! ROUTINE/FN TYPE
#line 780 "regression-compile-tmp/skimp77.imp"
U_1030:;
#line 780 "regression-compile-tmp/skimp77.imp"
I = RTP[LEVEL];
                                                                //    781       %IF I<=0 %THEN FAULT(M'%RES',M'ULT ',M'CONT',M'EXT ') ;! %BEGIN/%ROUTINE
#line 781 "regression-compile-tmp/skimp77.imp"
if (((I) > (0))) goto L_00a3;
#line 781 "regression-compile-tmp/skimp77.imp"
FAULT(626148691, 1431065632, 1129270868, 1163416608);
#line 781 "regression-compile-tmp/skimp77.imp"
L_00a3:;
                                                                //    782       SEXPR                                     ;! COMPILE RESULT EXPRESSION
#line 782 "regression-compile-tmp/skimp77.imp"
SEXPR();
                                                                //    783       RETURN                                    ;! LEAVE RESULT IN ACC & DUMP RETURN CODE
#line 783 "regression-compile-tmp/skimp77.imp"
RETURN();
                                                                //    784  %END
#line 784 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block UI at level 3
                                                                //    785  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //    786  %ROUTINE SEXPR
#line 786 "regression-compile-tmp/skimp77.imp"
void SEXPR( void )
#line 786 "regression-compile-tmp/skimp77.imp"
{
                                                                //    787  ! COMPILE ARITHMETIC EXPRESSION
                                                                //    788  %ROUTINESPEC TORP
#line 788 "regression-compile-tmp/skimp77.imp"
auto void TORP( void );
                                                                //    789  %ROUTINESPEC PSEVAL
#line 789 "regression-compile-tmp/skimp77.imp"
auto void PSEVAL( void );
                                                                //    790  %ROUTINESPEC EVAL(%INTEGER P)
#line 790 "regression-compile-tmp/skimp77.imp"
auto void EVAL( int P );
                                                                //    791  %INTEGER RPP,APP
#line 791 "regression-compile-tmp/skimp77.imp"
int RPP;
#line 791 "regression-compile-tmp/skimp77.imp"
int APP;
                                                                //    792  %INTEGERARRAY RP,PT(1:32)                   ;! REVERSE POLISH, POINTER/TYPE ARRAYS
#line 792 "regression-compile-tmp/skimp77.imp"
int RP[32];
#line 792 "regression-compile-tmp/skimp77.imp"
int PT[32];
                                                                //    793       RPP=1                                  ;! RP POINTER
#line 793 "regression-compile-tmp/skimp77.imp"
RPP = 1;
                                                                //    794       TORP                                   ;! EXPR TO REV POLISH
#line 794 "regression-compile-tmp/skimp77.imp"
TORP();
                                                                //    795       %IF SCF=1 %THEN %START                 ;! PART OF A SIMPLE CONDITION
#line 795 "regression-compile-tmp/skimp77.imp"
if (((SCF) != (1))) goto L_00a4;
                                                                //    796          SCF=0                               ;! RESET FLAG
#line 796 "regression-compile-tmp/skimp77.imp"
SCF = 0;
                                                                //    797          COMP=A(AP)                          ;! COMPARATOR NUMBER
#line 797 "regression-compile-tmp/skimp77.imp"
COMP = A[(((int)(AP)) - (1))];
                                                                //    798          %IF A(AP+3)=0 %AND A(AP+4)=2 %THEN AP=AP+5 %ELSE %START
#line 798 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) + (3)))) - (1))]) != (0))) goto L_00a5;
#line 798 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) + (4)))) - (1))]) != (2))) goto L_00a5;
#line 798 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (5));
#line 798 "regression-compile-tmp/skimp77.imp"
goto L_00a6;
#line 798 "regression-compile-tmp/skimp77.imp"
L_00a5:;
                                                                //    799             AP=AP+1                          ;! 2ND EXPR NON-ZERO
#line 799 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    800             TORP                             ;! 2ND EXPRESSION TO REVERSE POLISH
#line 800 "regression-compile-tmp/skimp77.imp"
TORP();
                                                                //    801             RP(RPP)=10                       ;! CODE FOR '-' I.E. (1ST-2ND)
#line 801 "regression-compile-tmp/skimp77.imp"
RP[(((int)(RPP)) - (1))] = 10;
                                                                //    802             PT(RPP)=1                        ;! FLAG=OPERATOR
#line 802 "regression-compile-tmp/skimp77.imp"
PT[(((int)(RPP)) - (1))] = 1;
                                                                //    803             RPP=RPP+1                        ;! INCREMENT RP POINTER
#line 803 "regression-compile-tmp/skimp77.imp"
RPP = (((int)(RPP)) + (1));
                                                                //    804             %FINISH
#line 804 "regression-compile-tmp/skimp77.imp"
L_00a6:;
                                                                //    805          %FINISH
#line 805 "regression-compile-tmp/skimp77.imp"
L_00a4:;
                                                                //    806       APP=AP                                 ;! SAVE FINAL ANAL REC POINTER
#line 806 "regression-compile-tmp/skimp77.imp"
APP = AP;
                                                                //    807       PSEVAL                                 ;! PSEUDO-EVALUATE EXPRESSION
#line 807 "regression-compile-tmp/skimp77.imp"
PSEVAL();
                                                                //    808       EVAL(RPP-1)                            ;! DUMP CODE FOR EXPR EVALUATION
#line 808 "regression-compile-tmp/skimp77.imp"
EVAL((((int)(RPP)) - (1)));
                                                                //    809       AP=APP                                 ;! RESTORE FINAL ANAL REC POINTER
#line 809 "regression-compile-tmp/skimp77.imp"
AP = APP;
                                                                //    810  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    811  %ROUTINE TORP
#line 811 "regression-compile-tmp/skimp77.imp"
void TORP( void )
#line 811 "regression-compile-tmp/skimp77.imp"
{
                                                                //    812  ! TRANSFORM EXPRESSION TO REVERSE POLISH
                                                                //    813  %ROUTINESPEC STORE(%INTEGER I,J)
#line 813 "regression-compile-tmp/skimp77.imp"
auto void STORE( int I, int J );
                                                                //    814  %INTEGERARRAY OP(1:4)
#line 814 "regression-compile-tmp/skimp77.imp"
int OP[4];
                                                                //    815  %INTEGER OPP,I
#line 815 "regression-compile-tmp/skimp77.imp"
int OPP;
#line 815 "regression-compile-tmp/skimp77.imp"
int I;
                                                                //    816       OPP=0                              ;! OPERATOR STACK POINTER
#line 816 "regression-compile-tmp/skimp77.imp"
OPP = 0;
                                                                //    817       I=A(AP)                            ;! <+-\>
#line 817 "regression-compile-tmp/skimp77.imp"
I = A[(((int)(AP)) - (1))];
                                                                //    818       AP=AP+1
#line 818 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    819       %IF I=1 %OR I=4 %THEN ->L1          ;! + OR NULL
#line 819 "regression-compile-tmp/skimp77.imp"
if (((I) == (1))) goto L_00a7;
#line 819 "regression-compile-tmp/skimp77.imp"
if (((I) != (4))) goto L_00a8;
#line 819 "regression-compile-tmp/skimp77.imp"
L_00a7:;
#line 819 "regression-compile-tmp/skimp77.imp"
goto U_1031;
#line 819 "regression-compile-tmp/skimp77.imp"
L_00a8:;
                                                                //    820       I=I+9                              ;! CODES FOR - & \&
#line 820 "regression-compile-tmp/skimp77.imp"
I = (((int)(I)) + (9));
                                                                //    821  L3:   OPP=OPP+1                          ;! STACK OPERATOR
#line 821 "regression-compile-tmp/skimp77.imp"
U_1032:;
#line 821 "regression-compile-tmp/skimp77.imp"
OPP = (((int)(OPP)) + (1));
                                                                //    822       OP(OPP)=I
#line 822 "regression-compile-tmp/skimp77.imp"
OP[(((int)(OPP)) - (1))] = I;
                                                                //    823  L1:   I=A(AP)                            ;! <OPD>
#line 823 "regression-compile-tmp/skimp77.imp"
U_1031:;
#line 823 "regression-compile-tmp/skimp77.imp"
I = A[(((int)(AP)) - (1))];
                                                                //    824       %IF I=3 %THEN %START               ;! SUB-EXPRESSION
#line 824 "regression-compile-tmp/skimp77.imp"
if (((I) != (3))) goto L_00a9;
                                                                //    825          AP=AP+1                         ;! AP TO <+-\>
#line 825 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    826          TORP                            ;! TRANSFORM SUB-EXPR TO REV POL
#line 826 "regression-compile-tmp/skimp77.imp"
TORP();
                                                                //    827          %FINISH %ELSE %START
#line 827 "regression-compile-tmp/skimp77.imp"
goto L_00aa;
#line 827 "regression-compile-tmp/skimp77.imp"
L_00a9:;
                                                                //    828          STORE(AP,0)                     ;! STORE ANAL REC POSITION OF OPERAND
#line 828 "regression-compile-tmp/skimp77.imp"
STORE(AP, 0);
                                                                //    829          AP=AP+2                         ;! AP ON <APP> OR AFTER <CNST>
#line 829 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (2));
                                                                //    830          %IF I=1 %THEN SKIP APP          ;! OPERAND A NAME
#line 830 "regression-compile-tmp/skimp77.imp"
if (((I) != (1))) goto L_00ab;
#line 830 "regression-compile-tmp/skimp77.imp"
SKIPAPP();
#line 830 "regression-compile-tmp/skimp77.imp"
L_00ab:;
                                                                //    831          %FINISH
#line 831 "regression-compile-tmp/skimp77.imp"
L_00aa:;
                                                                //    832       %IF A(AP)=2 %THEN %START           ;! END OF <EXPR>
#line 832 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (2))) goto L_00ac;
                                                                //    833          AP=AP+1                         ;! AP AFTER EXPRESSION
#line 833 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    834  L2:      %IF OPP=0 %THEN %RETURN         ;! OPERATOR STACK EMPTIED
#line 834 "regression-compile-tmp/skimp77.imp"
U_1033:;
#line 834 "regression-compile-tmp/skimp77.imp"
if (((OPP) != (0))) goto L_00ad;
#line 834 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 834 "regression-compile-tmp/skimp77.imp"
L_00ad:;
                                                                //    835          STORE(OP(OPP),1)                ;! UNSTACK REMAINING OPERATORS
#line 835 "regression-compile-tmp/skimp77.imp"
STORE(OP[(((int)(OPP)) - (1))], 1);
                                                                //    836          OPP=OPP-1
#line 836 "regression-compile-tmp/skimp77.imp"
OPP = (((int)(OPP)) - (1));
                                                                //    837          ->L2 ; %FINISH
#line 837 "regression-compile-tmp/skimp77.imp"
goto U_1033;
#line 837 "regression-compile-tmp/skimp77.imp"
L_00ac:;
                                                                //    838       I=A(AP+1)                          ;! <OP>
#line 838 "regression-compile-tmp/skimp77.imp"
I = A[(((int)((((int)(AP)) + (1)))) - (1))];
                                                                //    839       AP=AP+2                            ;! AP ON <EXPR>
#line 839 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (2));
                                                                //    840  L4:   %IF OPP=0 %OR PREC(I)>PREC(OP(OPP)) %THEN ->L3 ;! OP STACK EMPTY OR NEW OP HIGHER PREC
#line 840 "regression-compile-tmp/skimp77.imp"
U_1034:;
#line 840 "regression-compile-tmp/skimp77.imp"
if (((OPP) == (0))) goto L_00ae;
#line 840 "regression-compile-tmp/skimp77.imp"
if (((PREC[(((int)(I)) - (1))]) <= (PREC[(((int)(OP[(((int)(OPP)) - (1))])) - (1))]))) goto L_00af;
#line 840 "regression-compile-tmp/skimp77.imp"
L_00ae:;
#line 840 "regression-compile-tmp/skimp77.imp"
goto U_1032;
#line 840 "regression-compile-tmp/skimp77.imp"
L_00af:;
                                                                //    841       STORE(OP(OPP),1)                   ;! UNSTACK TOP OPERATOR
#line 841 "regression-compile-tmp/skimp77.imp"
STORE(OP[(((int)(OPP)) - (1))], 1);
                                                                //    842       OPP=OPP-1
#line 842 "regression-compile-tmp/skimp77.imp"
OPP = (((int)(OPP)) - (1));
                                                                //    843       ->L4
#line 843 "regression-compile-tmp/skimp77.imp"
goto U_1034;
                                                                //    844  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    845  %ROUTINE STORE(%INTEGER I,J)
#line 845 "regression-compile-tmp/skimp77.imp"
void STORE( int I, int J )
#line 845 "regression-compile-tmp/skimp77.imp"
{
                                                                //    846  ! STORE IN RP & PT ARRAYS, I=ANAL REC PTR , J= OP/OPD FLAG
                                                                //    847       %IF RPP>32 %THEN %START             ;! REV POL ARRAY FULL
#line 847 "regression-compile-tmp/skimp77.imp"
if (((RPP) <= (32))) goto L_00b0;
                                                                //    848          FAULT(M'EXPR',M' TOO',M' LON',M'G   ')
#line 848 "regression-compile-tmp/skimp77.imp"
FAULT(1163415634, 542396239, 541871950, 1193287712);
                                                                //    849          RPP=1                            ;! IN ORDER TO CONTINUE
#line 849 "regression-compile-tmp/skimp77.imp"
RPP = 1;
                                                                //    850          %FINISH
#line 850 "regression-compile-tmp/skimp77.imp"
L_00b0:;
                                                                //    851       RP(RPP)=I                           ;! STORE OP/OPD
#line 851 "regression-compile-tmp/skimp77.imp"
RP[(((int)(RPP)) - (1))] = I;
                                                                //    852       PT(RPP)=J                           ;! STORE FLAG
#line 852 "regression-compile-tmp/skimp77.imp"
PT[(((int)(RPP)) - (1))] = J;
                                                                //    853       RPP=RPP+1                           ;! NEXT POSITION
#line 853 "regression-compile-tmp/skimp77.imp"
RPP = (((int)(RPP)) + (1));
                                                                //    854  %END
#line 854 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block STORE at level 5
                                                                //    855  %END
#line 855 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block TORP at level 4
                                                                //    856  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    857  %ROUTINE PSEVAL
#line 857 "regression-compile-tmp/skimp77.imp"
void PSEVAL( void )
#line 857 "regression-compile-tmp/skimp77.imp"
{
                                                                //    858  ! PSEUDO-EVALUATION, CHECKING OPERANDS
                                                                //    859  %INTEGERARRAY PST(1:32)                      ;! OPERAND POINTER STACK
#line 859 "regression-compile-tmp/skimp77.imp"
int PST[32];
                                                                //    860  %INTEGER PSTP,I,J,K
#line 860 "regression-compile-tmp/skimp77.imp"
int PSTP;
#line 860 "regression-compile-tmp/skimp77.imp"
int I;
#line 860 "regression-compile-tmp/skimp77.imp"
int J;
#line 860 "regression-compile-tmp/skimp77.imp"
int K;
                                                                //    861       PSTP=0                                  ;! PST POINTER
#line 861 "regression-compile-tmp/skimp77.imp"
PSTP = 0;
                                                                //    862       I=1                                     ;! REV POL ARRAY POINTER
#line 862 "regression-compile-tmp/skimp77.imp"
I = 1;
                                                                //    863  L3:   AP=RP(I)                                ;! ANAL REC POSITION OF OPERAND
#line 863 "regression-compile-tmp/skimp77.imp"
U_1032:;
#line 863 "regression-compile-tmp/skimp77.imp"
AP = RP[(((int)(I)) - (1))];
                                                                //    864       %IF A(AP)=1 %THEN %START                ;! OPERAND A NAME
#line 864 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_00b1;
                                                                //    865          J=LINK(A(AP+1))                      ;! LINK TO TAG OF NAME
#line 865 "regression-compile-tmp/skimp77.imp"
J = LINK[A[(((int)((((int)(AP)) + (1)))) - (1))]];
                                                                //    866          %IF J=0 %THEN %START
#line 866 "regression-compile-tmp/skimp77.imp"
if (((J) != (0))) goto L_00b2;
                                                                //    867             PRINT NAME(A(AP+1))
#line 867 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)((((int)(AP)) + (1)))) - (1))]);
                                                                //    868             FAULT(M'NAME',M' NOT',M' SET',0)
#line 868 "regression-compile-tmp/skimp77.imp"
FAULT(1312902469, 542003028, 542328148, 0);
                                                                //    869             K=0                               ;! DUMMY TAG VALUE
#line 869 "regression-compile-tmp/skimp77.imp"
K = 0;
                                                                //    870             ->L1 ; %FINISH
#line 870 "regression-compile-tmp/skimp77.imp"
goto U_1033;
#line 870 "regression-compile-tmp/skimp77.imp"
L_00b2:;
                                                                //    871          K=TAG(J)                             ;! TAG OF NAME
#line 871 "regression-compile-tmp/skimp77.imp"
K = TAG[J];
                                                                //    872          J=K>>28                              ;! 'FORM' OF NAME
#line 872 "regression-compile-tmp/skimp77.imp"
J = (int)((((unsigned int)(K)) >> (28)));
                                                                //    873          %IF J>1 %THEN %START                 ;! ARRAY OR ROUTINE/FN TYPE
#line 873 "regression-compile-tmp/skimp77.imp"
if (((J) <= (1))) goto L_00b3;
                                                                //    874             RP(I)=AP+1                        ;! STORE ANAL REC POSITION OF <NAME>
#line 874 "regression-compile-tmp/skimp77.imp"
RP[(((int)(I)) - (1))] = (((int)(AP)) + (1));
                                                                //    875             %IF J=4 %THEN %START              ;! NAME IS ROUTINE/FN TYPE
#line 875 "regression-compile-tmp/skimp77.imp"
if (((J) != (4))) goto L_00b4;
                                                                //    876                %IF K>>24&15=0 %THEN %START
#line 876 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(K)) >> (24)))) & (15))) != (0))) goto L_00b5;
                                                                //    877                   PRINT NAME(A(AP+1))
#line 877 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)((((int)(AP)) + (1)))) - (1))]);
                                                                //    878                   FAULT(M'RT N',M'AME ',M'IN E',M'XPR ')
#line 878 "regression-compile-tmp/skimp77.imp"
FAULT(1381245006, 1095583008, 1229856837, 1481658912);
                                                                //    879                   K=0                         ;! DUMMY TAG VALUE
#line 879 "regression-compile-tmp/skimp77.imp"
K = 0;
                                                                //    880                   ->L1 ; %FINISH
#line 880 "regression-compile-tmp/skimp77.imp"
goto U_1033;
#line 880 "regression-compile-tmp/skimp77.imp"
L_00b5:;
                                                                //    881                PT(I)=-1                       ;! FLAG FOR FUNCTION
#line 881 "regression-compile-tmp/skimp77.imp"
PT[(((int)(I)) - (1))] = (-1);
                                                                //    882                %FINISH %ELSE PT(I)=-2         ;! FLAG FOR ARRAY
#line 882 "regression-compile-tmp/skimp77.imp"
goto L_00b6;
#line 882 "regression-compile-tmp/skimp77.imp"
L_00b4:;
#line 882 "regression-compile-tmp/skimp77.imp"
PT[(((int)(I)) - (1))] = (-2);
#line 882 "regression-compile-tmp/skimp77.imp"
L_00b6:;
                                                                //    883             ->L2 ; %FINISH                     ;! GO TO STACK POINTER
#line 883 "regression-compile-tmp/skimp77.imp"
goto U_1034;
#line 883 "regression-compile-tmp/skimp77.imp"
L_00b3:;
                                                                //    884          %IF A(AP+2)=1 %THEN %START
#line 884 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) + (2)))) - (1))]) != (1))) goto L_00b7;
                                                                //    885             PRINT NAME(A(AP+1))
#line 885 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)((((int)(AP)) + (1)))) - (1))]);
                                                                //    886             FAULT(M'SCAL',M'AR H',M'AS P',M'ARAM')
#line 886 "regression-compile-tmp/skimp77.imp"
FAULT(1396916556, 1095901256, 1095966800, 1095909709);
                                                                //    887             %FINISH
#line 887 "regression-compile-tmp/skimp77.imp"
L_00b7:;
                                                                //    888  L1:      RP(I)=K                              ;! STORE TAG OF NAME FOR SCALARS
#line 888 "regression-compile-tmp/skimp77.imp"
U_1033:;
#line 888 "regression-compile-tmp/skimp77.imp"
RP[(((int)(I)) - (1))] = K;
                                                                //    889          PT(I)=-3                             ;! FLAG FOR SCALARS
#line 889 "regression-compile-tmp/skimp77.imp"
PT[(((int)(I)) - (1))] = (-3);
                                                                //    890          %FINISH %ELSE %START                 ;! OPERAND IS A <CNST>
#line 890 "regression-compile-tmp/skimp77.imp"
goto L_00b8;
#line 890 "regression-compile-tmp/skimp77.imp"
L_00b1:;
                                                                //    891          RP(I)=A(AP+1)                        ;! STORE VALUE OF CONSTANT
#line 891 "regression-compile-tmp/skimp77.imp"
RP[(((int)(I)) - (1))] = A[(((int)((((int)(AP)) + (1)))) - (1))];
                                                                //    892          PT(I)=-4                             ;! FLAG FOR CONSTANTS
#line 892 "regression-compile-tmp/skimp77.imp"
PT[(((int)(I)) - (1))] = (-4);
                                                                //    893          %FINISH
#line 893 "regression-compile-tmp/skimp77.imp"
L_00b8:;
                                                                //    894  L2:   PSTP=PSTP+1                             ;! STACK OPERAND POINTER
#line 894 "regression-compile-tmp/skimp77.imp"
U_1034:;
#line 894 "regression-compile-tmp/skimp77.imp"
PSTP = (((int)(PSTP)) + (1));
                                                                //    895  L4:   PST(PSTP)=I
#line 895 "regression-compile-tmp/skimp77.imp"
U_1035:;
#line 895 "regression-compile-tmp/skimp77.imp"
PST[(((int)(PSTP)) - (1))] = I;
                                                                //    896       I=I+1                                   ;! REV POL ARRAY POINTER
#line 896 "regression-compile-tmp/skimp77.imp"
I = (((int)(I)) + (1));
                                                                //    897       %IF I<RPP %THEN %START                  ;! NOT END OF REV POL YET
#line 897 "regression-compile-tmp/skimp77.imp"
if (((I) >= (RPP))) goto L_00b9;
                                                                //    898          %IF PT(I)=0 %THEN ->L3                ;! AN OPERAND IS NEXT
#line 898 "regression-compile-tmp/skimp77.imp"
if (((PT[(((int)(I)) - (1))]) != (0))) goto L_00ba;
#line 898 "regression-compile-tmp/skimp77.imp"
goto U_1032;
#line 898 "regression-compile-tmp/skimp77.imp"
L_00ba:;
                                                                //    899          %IF RP(I)<=10 %THEN %START           ;! BINARY OPERATORS
#line 899 "regression-compile-tmp/skimp77.imp"
if (((RP[(((int)(I)) - (1))]) > (10))) goto L_00bb;
                                                                //    900             PSTP=PSTP-1                       ;! PSEUDO-EVALUATE POINTERS
#line 900 "regression-compile-tmp/skimp77.imp"
PSTP = (((int)(PSTP)) - (1));
                                                                //    901             PT(I)=PST(PSTP)                   ;! STACK POINTER TO RESULT
#line 901 "regression-compile-tmp/skimp77.imp"
PT[(((int)(I)) - (1))] = PST[(((int)(PSTP)) - (1))];
                                                                //    902             %FINISH
#line 902 "regression-compile-tmp/skimp77.imp"
L_00bb:;
                                                                //    903          ->L4 ; %FINISH
#line 903 "regression-compile-tmp/skimp77.imp"
goto U_1035;
#line 903 "regression-compile-tmp/skimp77.imp"
L_00b9:;
                                                                //    904  %END
#line 904 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PSEVAL at level 4
                                                                //    905  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    906  %ROUTINE EVAL(%INTEGER P)
#line 906 "regression-compile-tmp/skimp77.imp"
void EVAL( int P )
#line 906 "regression-compile-tmp/skimp77.imp"
{
                                                                //    907  ! DUMP CODE FOR EVALUATION OF EXPRESSION
                                                                //    908  %ROUTINESPEC OPN(%INTEGER OP,L)
#line 908 "regression-compile-tmp/skimp77.imp"
auto void OPN( int OP, int L );
                                                                //    909  %INTEGER I,J,K
#line 909 "regression-compile-tmp/skimp77.imp"
int I;
#line 909 "regression-compile-tmp/skimp77.imp"
int J;
#line 909 "regression-compile-tmp/skimp77.imp"
int K;
                                                                //    910       I=PT(P)                                       ;! POINTER/TYPE OF LAST REV POL ENTRY
#line 910 "regression-compile-tmp/skimp77.imp"
I = PT[(((int)(P)) - (1))];
                                                                //    911       %IF I<0 %THEN %START                          ;! OPERAND
#line 911 "regression-compile-tmp/skimp77.imp"
if (((I) >= (0))) goto L_00bc;
                                                                //    912          OPN(0,P)                                   ;! LOAD OPERAND
#line 912 "regression-compile-tmp/skimp77.imp"
OPN(0, P);
                                                                //    913          %RETURN ; %FINISH
#line 913 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 913 "regression-compile-tmp/skimp77.imp"
L_00bc:;
                                                                //    914       J=RP(P)                                       ;! OPERATOR
#line 914 "regression-compile-tmp/skimp77.imp"
J = RP[(((int)(P)) - (1))];
                                                                //    915       K=P-1                                         ;! START OF 2ND OPERAND
#line 915 "regression-compile-tmp/skimp77.imp"
K = (((int)(P)) - (1));
                                                                //    916       %IF UCN(J)=1 %THEN %START                     ;! UNARY OPERATOR
#line 916 "regression-compile-tmp/skimp77.imp"
if (((UCN[(((int)(J)) - (1))]) != (1))) goto L_00bd;
                                                                //    917          %IF PT(K)>=-2 %THEN EVAL(K) %ELSE OPN(0,K) ;! EVAL IF NODE OTHERWISE LOAD OPERAND
#line 917 "regression-compile-tmp/skimp77.imp"
if (((PT[(((int)(K)) - (1))]) < ((-2)))) goto L_00be;
#line 917 "regression-compile-tmp/skimp77.imp"
EVAL(K);
#line 917 "regression-compile-tmp/skimp77.imp"
goto L_00bf;
#line 917 "regression-compile-tmp/skimp77.imp"
L_00be:;
#line 917 "regression-compile-tmp/skimp77.imp"
OPN(0, K);
#line 917 "regression-compile-tmp/skimp77.imp"
L_00bf:;
                                                                //    918          DUMP(OPR(J),M'ACC',0,0)                    ;! DUMP UNARY OPERATION
#line 918 "regression-compile-tmp/skimp77.imp"
DUMP(OPR[J], 4277059, 0, 0);
                                                                //    919          %RETURN ; %FINISH
#line 919 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 919 "regression-compile-tmp/skimp77.imp"
L_00bd:;
                                                                //    920       %IF PT(I)>=-2 %THEN %START                    ;! FIRST OPERAND A NODE
#line 920 "regression-compile-tmp/skimp77.imp"
if (((PT[(((int)(I)) - (1))]) < ((-2)))) goto L_00c0;
                                                                //    921          %IF PT(K)>=-2 %THEN %START                 ;! SECOND OPERAND A NODE
#line 921 "regression-compile-tmp/skimp77.imp"
if (((PT[(((int)(K)) - (1))]) < ((-2)))) goto L_00c1;
                                                                //    922             EVAL(K)                                 ;! EVALUATE 2ND OPERAND
#line 922 "regression-compile-tmp/skimp77.imp"
EVAL(K);
                                                                //    923             DUMP(M'STR',M'ACC',BR(LEVEL),WS NEXT)   ;!  & STORE IT IN WORKSPACE
#line 923 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], WSNEXT());
                                                                //    924             EVAL(I)                                 ;! EVALUATE 1ST OPERAND
#line 924 "regression-compile-tmp/skimp77.imp"
EVAL(I);
                                                                //    925             WS=WS-1                                 ;! RESTORE WORKSPACE POINTER
#line 925 "regression-compile-tmp/skimp77.imp"
WS = (((int)(WS)) - (1));
                                                                //    926             DUMP(OPR(J),M'ACC',BR(LEVEL),WS)        ;! DUMP OPERATION
#line 926 "regression-compile-tmp/skimp77.imp"
DUMP(OPR[J], 4277059, BR[LEVEL], WS);
                                                                //    927             %FINISH %ELSE %START                    ;! 2ND OPERAND NOT A NODE
#line 927 "regression-compile-tmp/skimp77.imp"
goto L_00c2;
#line 927 "regression-compile-tmp/skimp77.imp"
L_00c1:;
                                                                //    928             EVAL(I)                                 ;! EVALUATE 1ST OPERAND
#line 928 "regression-compile-tmp/skimp77.imp"
EVAL(I);
                                                                //    929             OPN(J,K)                                ;! OPERATION WITH 2ND OPERAND
#line 929 "regression-compile-tmp/skimp77.imp"
OPN(J, K);
                                                                //    930             %FINISH
#line 930 "regression-compile-tmp/skimp77.imp"
L_00c2:;
                                                                //    931          %FINISH %ELSE %START                       ;! 1ST OPERAND NOT A NODE
#line 931 "regression-compile-tmp/skimp77.imp"
goto L_00c3;
#line 931 "regression-compile-tmp/skimp77.imp"
L_00c0:;
                                                                //    932          %IF PT(K)>=-2 %THEN %START                 ;! 2ND OPERAND A NODE
#line 932 "regression-compile-tmp/skimp77.imp"
if (((PT[(((int)(K)) - (1))]) < ((-2)))) goto L_00c4;
                                                                //    933             EVAL(K)                                 ;! EVALUATE 2ND OPERAND
#line 933 "regression-compile-tmp/skimp77.imp"
EVAL(K);
                                                                //    934             %IF UCN(J)=2 %THEN %START               ;! OPERATOR IS COMMUTATIVE
#line 934 "regression-compile-tmp/skimp77.imp"
if (((UCN[(((int)(J)) - (1))]) != (2))) goto L_00c5;
                                                                //    935                OPN(J,I)                             ;! OPERATION WITH 1ST OPERAND
#line 935 "regression-compile-tmp/skimp77.imp"
OPN(J, I);
                                                                //    936                %RETURN ; %FINISH
#line 936 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 936 "regression-compile-tmp/skimp77.imp"
L_00c5:;
                                                                //    937             DUMP(M'STR',M'ACC',BR(LEVEL),WS NEXT)   ;! STORE VALUE OF 2ND OPERAND IN WORKSPACE
#line 937 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], WSNEXT());
                                                                //    938             OPN(0,I)                                ;! LOAD 1ST OPERAND
#line 938 "regression-compile-tmp/skimp77.imp"
OPN(0, I);
                                                                //    939             WS=WS-1                                 ;! RESTORE WORKSPACE POINTER
#line 939 "regression-compile-tmp/skimp77.imp"
WS = (((int)(WS)) - (1));
                                                                //    940             DUMP(OPR(J),M'ACC',BR(LEVEL),WS)        ;! DUMP OPERATION WITH 2ND OPERAND
#line 940 "regression-compile-tmp/skimp77.imp"
DUMP(OPR[J], 4277059, BR[LEVEL], WS);
                                                                //    941             %FINISH %ELSE %START                    ;! 2ND OPERAND NOT A NODE
#line 941 "regression-compile-tmp/skimp77.imp"
goto L_00c6;
#line 941 "regression-compile-tmp/skimp77.imp"
L_00c4:;
                                                                //    942             OPN(0,I)                                ;! LOAD 1ST OPERAND
#line 942 "regression-compile-tmp/skimp77.imp"
OPN(0, I);
                                                                //    943             OPN(J,K)                                ;! OPERATION WITH 2ND OPERAND
#line 943 "regression-compile-tmp/skimp77.imp"
OPN(J, K);
                                                                //    944             %FINISH
#line 944 "regression-compile-tmp/skimp77.imp"
L_00c6:;
                                                                //    945          %FINISH
#line 945 "regression-compile-tmp/skimp77.imp"
L_00c3:;
                                                                //    946       %RETURN
#line 946 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    947  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //    948  %ROUTINE OPN(%INTEGER OP,L)
#line 948 "regression-compile-tmp/skimp77.imp"
void OPN( int OP, int L )
#line 948 "regression-compile-tmp/skimp77.imp"
{
                                                                //    949  ! DUMP SIMPLE OPERATION, OP=OPERATOR, L=RP POSITION OF OPERAND
                                                                //    950  %INTEGER I,J
#line 950 "regression-compile-tmp/skimp77.imp"
int I;
#line 950 "regression-compile-tmp/skimp77.imp"
int J;
                                                                //    951       I=PT(L)                                         ;! KIND OF OPERAND
#line 951 "regression-compile-tmp/skimp77.imp"
I = PT[(((int)(L)) - (1))];
                                                                //    952       AP=RP(L)                                        ;! ANAL REC POINTER OR NAME TAGS
#line 952 "regression-compile-tmp/skimp77.imp"
AP = RP[(((int)(L)) - (1))];
                                                                //    953       %IF I=-1 %THEN %START                           ;! ROUTINE/FN TYPE
#line 953 "regression-compile-tmp/skimp77.imp"
if (((I) != ((-1)))) goto L_00c7;
                                                                //    954          RT                                           ;! DUMP CALL ON FUNCTION
#line 954 "regression-compile-tmp/skimp77.imp"
RT();
                                                                //    955          %RETURN ; %FINISH
#line 955 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 955 "regression-compile-tmp/skimp77.imp"
L_00c7:;
                                                                //    956       %IF I=-2 %THEN %START                           ;! ARRAY ACCESS
#line 956 "regression-compile-tmp/skimp77.imp"
if (((I) != ((-2)))) goto L_00c8;
                                                                //    957          ARRAD                                        ;! CALCULATE ARRAY ELEMENT ADDRESS
#line 957 "regression-compile-tmp/skimp77.imp"
ARRAD();
                                                                //    958          DUMP(M'LOAD',M'ACC',M'ACC',0)                ;! LOAD VALUE
#line 958 "regression-compile-tmp/skimp77.imp"
DUMP(1280262468, 4277059, 4277059, 0);
                                                                //    959          %RETURN ; %FINISH
#line 959 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 959 "regression-compile-tmp/skimp77.imp"
L_00c8:;
                                                                //    960       %IF I=-3 %THEN %START                           ;! SCALAR TYPE
#line 960 "regression-compile-tmp/skimp77.imp"
if (((I) != ((-3)))) goto L_00c9;
                                                                //    961          %IF AP>>28=1 %THEN %START                    ;! %NAME TYPE
#line 961 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(AP)) >> (28)))) != (1))) goto L_00ca;
                                                                //    962             DUMP(M'LOAD',M'WK',BR(AP>>16&15),AP&65535) ;! LOAD INDIRECT
#line 962 "regression-compile-tmp/skimp77.imp"
DUMP(1280262468, 22347, BR[(((int)((((unsigned int)(AP)) >> (16)))) & (15))], ((AP) & (65535)));
                                                                //    963             DUMP(OPR(OP),M'ACC',M'WK',0)
#line 963 "regression-compile-tmp/skimp77.imp"
DUMP(OPR[OP], 4277059, 22347, 0);
                                                                //    964             %FINISH %ELSE DUMP(OPR(OP),M'ACC',BR(AP>>16&15),AP&65535)
#line 964 "regression-compile-tmp/skimp77.imp"
goto L_00cb;
#line 964 "regression-compile-tmp/skimp77.imp"
L_00ca:;
#line 964 "regression-compile-tmp/skimp77.imp"
DUMP(OPR[OP], 4277059, BR[(((int)((((unsigned int)(AP)) >> (16)))) & (15))], ((AP) & (65535)));
#line 964 "regression-compile-tmp/skimp77.imp"
L_00cb:;
                                                                //    965          %RETURN ; %FINISH
#line 965 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 965 "regression-compile-tmp/skimp77.imp"
L_00c9:;
                                                                //    966       %IF OP\=0 %OR AP>65535 %THEN %START             ;! CONSTANT NOT 'LDA'-ABLE
#line 966 "regression-compile-tmp/skimp77.imp"
if (((OP) != (0))) goto L_00cc;
#line 966 "regression-compile-tmp/skimp77.imp"
if (((AP) <= (65535))) goto L_00cd;
#line 966 "regression-compile-tmp/skimp77.imp"
L_00cc:;
                                                                //    967          J=CT NEXT                                    ;! NEXT HOLE IN CONSTANT TABLE
#line 967 "regression-compile-tmp/skimp77.imp"
J = CTNEXT();
                                                                //    968          COT(J)=AP                                    ;! STORE VALUE
#line 968 "regression-compile-tmp/skimp77.imp"
COT[J] = AP;
                                                                //    969          DUMP(OPR(OP),M'ACC',M'CT',J)
#line 969 "regression-compile-tmp/skimp77.imp"
DUMP(OPR[OP], 4277059, 17236, J);
                                                                //    970          %FINISH %ELSE DUMP(M'LDA',M'ACC',0,AP)
#line 970 "regression-compile-tmp/skimp77.imp"
goto L_00ce;
#line 970 "regression-compile-tmp/skimp77.imp"
L_00cd:;
#line 970 "regression-compile-tmp/skimp77.imp"
DUMP(4998209, 4277059, 0, AP);
#line 970 "regression-compile-tmp/skimp77.imp"
L_00ce:;
                                                                //    971  %END
#line 971 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block OPN at level 5
                                                                //    972  %END
#line 972 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block EVAL at level 4
                                                                //    973  %END
#line 973 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SEXPR at level 3
                                                                //    974  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //    975  %ROUTINE SKIP SEXPR
#line 975 "regression-compile-tmp/skimp77.imp"
void SKIPSEXPR( void )
#line 975 "regression-compile-tmp/skimp77.imp"
{
                                                                //    976  ! SKIP PAST <+-\><OPD><EXPR> IN ANALYSIS RECORD, AP INITIALLY ON <+-\>
                                                                //    977  L1:   AP=AP+2                                       ;! AP ON <OPD>+1
#line 977 "regression-compile-tmp/skimp77.imp"
U_1036:;
#line 977 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (2));
                                                                //    978       %IF A(AP-1)=3 %THEN SKIP SEXPR %ELSE %START   ;! SKIP SUB-EXPR ELSE <NAME> OR <CNST>
#line 978 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) - (1)))) - (1))]) != (3))) goto L_00cf;
#line 978 "regression-compile-tmp/skimp77.imp"
SKIPSEXPR();
#line 978 "regression-compile-tmp/skimp77.imp"
goto L_00d0;
#line 978 "regression-compile-tmp/skimp77.imp"
L_00cf:;
                                                                //    979          AP=AP+1                                    ;! AP ON <APP> OR AFTER <CNST>
#line 979 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    980          %IF A(AP-2)=1 %THEN SKIP APP               ;! OPERAND IS A NAME
#line 980 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) - (2)))) - (1))]) != (1))) goto L_00d1;
#line 980 "regression-compile-tmp/skimp77.imp"
SKIPAPP();
#line 980 "regression-compile-tmp/skimp77.imp"
L_00d1:;
                                                                //    981          %FINISH
#line 981 "regression-compile-tmp/skimp77.imp"
L_00d0:;
                                                                //    982       AP=AP+1                                       ;! AP AFTER <EXPR>
#line 982 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    983       %IF A(AP-1)=1 %THEN ->L1                       ;! MORE OPERANDS
#line 983 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) - (1)))) - (1))]) != (1))) goto L_00d2;
#line 983 "regression-compile-tmp/skimp77.imp"
goto U_1036;
#line 983 "regression-compile-tmp/skimp77.imp"
L_00d2:;
                                                                //    984  %END
#line 984 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SKIPSEXPR at level 3
                                                                //    985  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //    986  %ROUTINE SKIP APP
#line 986 "regression-compile-tmp/skimp77.imp"
void SKIPAPP( void )
#line 986 "regression-compile-tmp/skimp77.imp"
{
                                                                //    987  ! SKIP PAST <APP> IN ANALYSIS RECORD
                                                                //    988  L1:   AP=AP+1                                       ;! POINTER TO <APP>+1 OR <EXPS>+1
#line 988 "regression-compile-tmp/skimp77.imp"
U_1036:;
#line 988 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //    989       %IF A(AP-1)=1 %THEN %START                    ;! EXPRESSIONS TO SKIP
#line 989 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) - (1)))) - (1))]) != (1))) goto L_00d3;
                                                                //    990          SKIP SEXPR
#line 990 "regression-compile-tmp/skimp77.imp"
SKIPSEXPR();
                                                                //    991          ->L1 ; %FINISH
#line 991 "regression-compile-tmp/skimp77.imp"
goto U_1036;
#line 991 "regression-compile-tmp/skimp77.imp"
L_00d3:;
                                                                //    992  %END
#line 992 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SKIPAPP at level 3
                                                                //    993  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //    994  %ROUTINE SCCOND(%INTEGERNAME LABEL)
#line 994 "regression-compile-tmp/skimp77.imp"
void SCCOND( int /*name*/*LABEL )
#line 994 "regression-compile-tmp/skimp77.imp"
{
                                                                //    995  ! COMPILE CONDITION I.E. <SC><COND>, LABEL SET FOR POSITION AFTER UI
                                                                //    996  %ROUTINESPEC SC
#line 996 "regression-compile-tmp/skimp77.imp"
auto void SC( void );
                                                                //    997  %ROUTINESPEC COND
#line 997 "regression-compile-tmp/skimp77.imp"
auto void COND( void );
                                                                //    998  %ROUTINESPEC STORE(%INTEGER FT)
#line 998 "regression-compile-tmp/skimp77.imp"
auto void STORE( int FT );
                                                                //    999  %INTEGER I,J,K,L,APP
#line 999 "regression-compile-tmp/skimp77.imp"
int I;
#line 999 "regression-compile-tmp/skimp77.imp"
int J;
#line 999 "regression-compile-tmp/skimp77.imp"
int K;
#line 999 "regression-compile-tmp/skimp77.imp"
int L;
#line 999 "regression-compile-tmp/skimp77.imp"
int APP;
                                                                //   1000  %INTEGERARRAY CAP,LVL,TF,JMP,LBL(1:16)             ;! ANAL REC POINTERS, NESTING LEVEL,
#line 1000 "regression-compile-tmp/skimp77.imp"
int CAP[16];
#line 1000 "regression-compile-tmp/skimp77.imp"
int LVL[16];
#line 1000 "regression-compile-tmp/skimp77.imp"
int TF[16];
#line 1000 "regression-compile-tmp/skimp77.imp"
int JMP[16];
#line 1000 "regression-compile-tmp/skimp77.imp"
int LBL[16];
                                                                //   1001                                                     ;!  TRUE/FALSE, JUMP & LABEL ARRAYS
                                                                //   1002       I=1                                           ;! INDEX TO ARRAYS
#line 1002 "regression-compile-tmp/skimp77.imp"
I = 1;
                                                                //   1003       L=0                                           ;! NESTING LEVEL
#line 1003 "regression-compile-tmp/skimp77.imp"
L = 0;
                                                                //   1004       SC                                            ;! PROCESS <SC>
#line 1004 "regression-compile-tmp/skimp77.imp"
SC();
                                                                //   1005       COND                                          ;! PROCESS <COND>
#line 1005 "regression-compile-tmp/skimp77.imp"
COND();
                                                                //   1006       APP=AP                                        ;! PRESERVE FINAL ANAL REC POINTER
#line 1006 "regression-compile-tmp/skimp77.imp"
APP = AP;
                                                                //   1007       L=-1
#line 1007 "regression-compile-tmp/skimp77.imp"
L = (-1);
                                                                //   1008       STORE(1)                                      ;! PSEUDO-FALSE AT LEVEL -1
#line 1008 "regression-compile-tmp/skimp77.imp"
STORE(1);
                                                                //   1009       L=-2
#line 1009 "regression-compile-tmp/skimp77.imp"
L = (-2);
                                                                //   1010       STORE(2)                                      ;! PSEUDO-TRUE AT LEVEL -2
#line 1010 "regression-compile-tmp/skimp77.imp"
STORE(2);
                                                                //   1011       K=I-1                                         ;! LAST POSITION FILLED IN IN ARRAYS
#line 1011 "regression-compile-tmp/skimp77.imp"
K = (((int)(I)) - (1));
                                                                //   1012       I=1
#line 1012 "regression-compile-tmp/skimp77.imp"
I = 1;
                                                                //   1013  L2:   J=I                                           ;! FIND POSITIONS TO JUMP TO
#line 1013 "regression-compile-tmp/skimp77.imp"
U_1034:;
#line 1013 "regression-compile-tmp/skimp77.imp"
J = I;
                                                                //   1014  L1:   J=J+1                                         ;!    AFTER COMPARISONS
#line 1014 "regression-compile-tmp/skimp77.imp"
U_1035:;
#line 1014 "regression-compile-tmp/skimp77.imp"
J = (((int)(J)) + (1));
                                                                //   1015       %IF LVL(J)>=LVL(I) %OR TF(J)=TF(I) %THEN ->L1  ;! SKIP HIGHER LEVELS ETC
#line 1015 "regression-compile-tmp/skimp77.imp"
if (((LVL[(((int)(J)) - (1))]) >= (LVL[(((int)(I)) - (1))]))) goto L_00d4;
#line 1015 "regression-compile-tmp/skimp77.imp"
if (((TF[(((int)(J)) - (1))]) != (TF[(((int)(I)) - (1))]))) goto L_00d5;
#line 1015 "regression-compile-tmp/skimp77.imp"
L_00d4:;
#line 1015 "regression-compile-tmp/skimp77.imp"
goto U_1035;
#line 1015 "regression-compile-tmp/skimp77.imp"
L_00d5:;
                                                                //   1016       JMP(I)=J                                      ;! JUMP TO COMPARISON POSITION J
#line 1016 "regression-compile-tmp/skimp77.imp"
JMP[(((int)(I)) - (1))] = J;
                                                                //   1017       I=I+1
#line 1017 "regression-compile-tmp/skimp77.imp"
I = (((int)(I)) + (1));
                                                                //   1018       %IF I<K %THEN ->L2                             ;! MORE JUMPS TO FILL IN YET
#line 1018 "regression-compile-tmp/skimp77.imp"
if (((I) >= (K))) goto L_00d6;
#line 1018 "regression-compile-tmp/skimp77.imp"
goto U_1034;
#line 1018 "regression-compile-tmp/skimp77.imp"
L_00d6:;
                                                                //   1019       %IF A(AP)\=2 %THEN ->L3                        ;! UI NOT A JUMP INSTRUCTION
#line 1019 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) == (2))) goto L_00d7;
#line 1019 "regression-compile-tmp/skimp77.imp"
goto U_1037;
#line 1019 "regression-compile-tmp/skimp77.imp"
L_00d7:;
                                                                //   1020       AP=AP+1                                       ;! TO <CONST>
#line 1020 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //   1021       J=K-1                                         ;! LAST POSITION FILLED IN
#line 1021 "regression-compile-tmp/skimp77.imp"
J = (((int)(K)) - (1));
                                                                //   1022       TF(J)=2                                       ;! SET AS 'TRUE'
#line 1022 "regression-compile-tmp/skimp77.imp"
TF[(((int)(J)) - (1))] = 2;
                                                                //   1023       JMP(J)=J                                      ;! SET JUMP AS THE UI JUMP
#line 1023 "regression-compile-tmp/skimp77.imp"
JMP[(((int)(J)) - (1))] = J;
                                                                //   1024       LBL(J)=FIND LABEL                             ;! FILL IN BRANCH TABLE POSITION
#line 1024 "regression-compile-tmp/skimp77.imp"
LBL[(((int)(J)) - (1))] = FINDLABEL();
                                                                //   1025  L3:   I=1                                           ;! FILL IN PSEUDO-LABELS FOR INNER JUMPS
#line 1025 "regression-compile-tmp/skimp77.imp"
U_1037:;
#line 1025 "regression-compile-tmp/skimp77.imp"
I = 1;
                                                                //   1026  L4:   %IF LBL(JMP(I))<0 %THEN LBL(JMP(I))=BT NEXT   ;! NEXT BAT POSITION
#line 1026 "regression-compile-tmp/skimp77.imp"
U_1038:;
#line 1026 "regression-compile-tmp/skimp77.imp"
if (((LBL[(((int)(JMP[(((int)(I)) - (1))])) - (1))]) >= (0))) goto L_00d8;
#line 1026 "regression-compile-tmp/skimp77.imp"
LBL[(((int)(JMP[(((int)(I)) - (1))])) - (1))] = BTNEXT();
#line 1026 "regression-compile-tmp/skimp77.imp"
L_00d8:;
                                                                //   1027       I=I+1
#line 1027 "regression-compile-tmp/skimp77.imp"
I = (((int)(I)) + (1));
                                                                //   1028       %IF I<K %THEN ->L4                             ;! MORE TO FILL IN
#line 1028 "regression-compile-tmp/skimp77.imp"
if (((I) >= (K))) goto L_00d9;
#line 1028 "regression-compile-tmp/skimp77.imp"
goto U_1038;
#line 1028 "regression-compile-tmp/skimp77.imp"
L_00d9:;
                                                                //   1029       I=1
#line 1029 "regression-compile-tmp/skimp77.imp"
I = 1;
                                                                //   1030  L7:   AP=CAP(I)                                     ;! ANAL REC POINTER FOR 1ST EXPR OF COMP
#line 1030 "regression-compile-tmp/skimp77.imp"
U_1039:;
#line 1030 "regression-compile-tmp/skimp77.imp"
AP = CAP[(((int)(I)) - (1))];
                                                                //   1031       SCF=1                                         ;! SET FLAG FOR SEXPR
#line 1031 "regression-compile-tmp/skimp77.imp"
SCF = 1;
                                                                //   1032       SEXPR                                         ;! TO EVALUATE (1ST - 2ND)
#line 1032 "regression-compile-tmp/skimp77.imp"
SEXPR();
                                                                //   1033       %IF TF(I)=1 %THEN L=FALSE(COMP) %ELSE L=TRUE(COMP)
#line 1033 "regression-compile-tmp/skimp77.imp"
if (((TF[(((int)(I)) - (1))]) != (1))) goto L_00da;
#line 1033 "regression-compile-tmp/skimp77.imp"
L = FALSE[(((int)(COMP)) - (1))];
#line 1033 "regression-compile-tmp/skimp77.imp"
goto L_00db;
#line 1033 "regression-compile-tmp/skimp77.imp"
L_00da:;
#line 1033 "regression-compile-tmp/skimp77.imp"
L = TRUE[(((int)(COMP)) - (1))];
#line 1033 "regression-compile-tmp/skimp77.imp"
L_00db:;
                                                                //   1034       DUMP(L,M'ACC',M'BT',LBL(JMP(I)))              ;! BRANCH TO REQUIRED POSITION
#line 1034 "regression-compile-tmp/skimp77.imp"
DUMP(L, 4277059, 16980, LBL[(((int)(JMP[(((int)(I)) - (1))])) - (1))]);
                                                                //   1035       %IF LBL(I)>=0 %AND (I\=K-1 %OR TF(I)=1) %THEN BAT(LBL(I))=CA
#line 1035 "regression-compile-tmp/skimp77.imp"
if (((LBL[(((int)(I)) - (1))]) < (0))) goto L_00dc;
#line 1035 "regression-compile-tmp/skimp77.imp"
if (((I) != ((((int)(K)) - (1))))) goto L_00dd;
#line 1035 "regression-compile-tmp/skimp77.imp"
if (((TF[(((int)(I)) - (1))]) != (1))) goto L_00dc;
#line 1035 "regression-compile-tmp/skimp77.imp"
L_00dd:;
#line 1035 "regression-compile-tmp/skimp77.imp"
BAT[LBL[(((int)(I)) - (1))]] = CA;
#line 1035 "regression-compile-tmp/skimp77.imp"
L_00dc:;
                                                                //   1036       I=I+1                                         ;!         FILL IN LABEL ADDRESS
#line 1036 "regression-compile-tmp/skimp77.imp"
I = (((int)(I)) + (1));
                                                                //   1037       %IF I<K %THEN ->L7                             ;! MORE COMPARISONS YET
#line 1037 "regression-compile-tmp/skimp77.imp"
if (((I) >= (K))) goto L_00de;
#line 1037 "regression-compile-tmp/skimp77.imp"
goto U_1039;
#line 1037 "regression-compile-tmp/skimp77.imp"
L_00de:;
                                                                //   1038       LABEL=LBL(K)                                  ;! FINAL LABEL
#line 1038 "regression-compile-tmp/skimp77.imp"
*LABEL = LBL[(((int)(K)) - (1))];
                                                                //   1039       AP=APP                                        ;! FINAL ANALYSIS RECORD POINTER
#line 1039 "regression-compile-tmp/skimp77.imp"
AP = APP;
                                                                //   1040  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //   1041  %ROUTINE STORE(%INTEGER FT)
#line 1041 "regression-compile-tmp/skimp77.imp"
void STORE( int FT )
#line 1041 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1042  ! STORE LEVEL & TRUE/FALSE FLAG
                                                                //   1043       %IF I>16 %THEN %START                     ;! ARRAYS FULL
#line 1043 "regression-compile-tmp/skimp77.imp"
if (((I) <= (16))) goto L_00df;
                                                                //   1044          FAULT(M'COND',M'N TO',M'O LO',M'NG  ')
#line 1044 "regression-compile-tmp/skimp77.imp"
FAULT(1129270852, 1310741583, 1327516751, 1313284128);
                                                                //   1045          I=1                                    ;! TO CONTINUE
#line 1045 "regression-compile-tmp/skimp77.imp"
I = 1;
                                                                //   1046          %FINISH
#line 1046 "regression-compile-tmp/skimp77.imp"
L_00df:;
                                                                //   1047       LVL(I)=L                                  ;! SAVE NESTING LEVEL
#line 1047 "regression-compile-tmp/skimp77.imp"
LVL[(((int)(I)) - (1))] = L;
                                                                //   1048       TF(I)=FT                                  ;! SAVE TRUE/FALSE FLAG
#line 1048 "regression-compile-tmp/skimp77.imp"
TF[(((int)(I)) - (1))] = FT;
                                                                //   1049       LBL(I)=-1                                 ;! SET 'LABEL NOT FILLED IN YET' FLAG
#line 1049 "regression-compile-tmp/skimp77.imp"
LBL[(((int)(I)) - (1))] = (-1);
                                                                //   1050       I=I+1                                     ;! NEXT ARRAY POSITION
#line 1050 "regression-compile-tmp/skimp77.imp"
I = (((int)(I)) + (1));
                                                                //   1051  %END
#line 1051 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block STORE at level 4
                                                                //   1052  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //   1053  %ROUTINE SC
#line 1053 "regression-compile-tmp/skimp77.imp"
void SC( void )
#line 1053 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1054       AP=AP+1
#line 1054 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //   1055       %IF A(AP-1)=2 %THEN %START
#line 1055 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) - (1)))) - (1))]) != (2))) goto L_00e0;
                                                                //   1056          L=L+1                               ;! NESTING LEVEL UP 1 FOR SUB-CONDITION
#line 1056 "regression-compile-tmp/skimp77.imp"
L = (((int)(L)) + (1));
                                                                //   1057          SC                                  ;! PROCESS SUB-<SC>
#line 1057 "regression-compile-tmp/skimp77.imp"
SC();
                                                                //   1058          COND                                ;! PROCESS SUB-<COND>
#line 1058 "regression-compile-tmp/skimp77.imp"
COND();
                                                                //   1059          L=L-1                               ;! NESTING LEVEL DOWN AFTER SUB-CONDITION
#line 1059 "regression-compile-tmp/skimp77.imp"
L = (((int)(L)) - (1));
                                                                //   1060          %FINISH %ELSE %START
#line 1060 "regression-compile-tmp/skimp77.imp"
goto L_00e1;
#line 1060 "regression-compile-tmp/skimp77.imp"
L_00e0:;
                                                                //   1061          CAP(I)=AP                           ;! ANAL REC POINTER FOR SIMPLE COMPARISON
#line 1061 "regression-compile-tmp/skimp77.imp"
CAP[(((int)(I)) - (1))] = AP;
                                                                //   1062          SKIP SEXPR                          ;! SKIP 1ST EXPR OF COMPARISON
#line 1062 "regression-compile-tmp/skimp77.imp"
SKIPSEXPR();
                                                                //   1063          AP=AP+1                             ;! SKIP COMPARATOR
#line 1063 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //   1064          SKIP SEXPR                          ;! SKIP 2ND EXPR
#line 1064 "regression-compile-tmp/skimp77.imp"
SKIPSEXPR();
                                                                //   1065          %FINISH
#line 1065 "regression-compile-tmp/skimp77.imp"
L_00e1:;
                                                                //   1066  %END
#line 1066 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SC at level 4
                                                                //   1067  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //   1068  %ROUTINE COND
#line 1068 "regression-compile-tmp/skimp77.imp"
void COND( void )
#line 1068 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1069  ! PROCESS <COND> FOR SIMPLE COMPARISONS
                                                                //   1070  %INTEGER I
#line 1070 "regression-compile-tmp/skimp77.imp"
int I;
                                                                //   1071       I=A(AP)                                ;! <COND>
#line 1071 "regression-compile-tmp/skimp77.imp"
I = A[(((int)(AP)) - (1))];
                                                                //   1072       AP=AP+1                                ;! AP ON <SC>
#line 1072 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //   1073       %IF I\=3 %THEN %START                  ;! NOT NULL ALTERNATIVE OF <COND>
#line 1073 "regression-compile-tmp/skimp77.imp"
if (((I) == (3))) goto L_00e2;
                                                                //   1074  L1:      STORE(I)                            ;! SAVE %AND OR %OR TYPE OF CONDITION
#line 1074 "regression-compile-tmp/skimp77.imp"
U_103a:;
#line 1074 "regression-compile-tmp/skimp77.imp"
STORE(I);
                                                                //   1075          SC                                  ;! PROCESS <SC>
#line 1075 "regression-compile-tmp/skimp77.imp"
SC();
                                                                //   1076          AP=AP+1                             ;! POINTER ON <ANDC>+1 OR <ORC>+1
#line 1076 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //   1077          %IF A(AP-1)=1 %THEN ->L1             ;! MORE %ANDS OR %ORS
#line 1077 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) - (1)))) - (1))]) != (1))) goto L_00e3;
#line 1077 "regression-compile-tmp/skimp77.imp"
goto U_103a;
#line 1077 "regression-compile-tmp/skimp77.imp"
L_00e3:;
                                                                //   1078          %FINISH
#line 1078 "regression-compile-tmp/skimp77.imp"
L_00e2:;
                                                                //   1079  %END
#line 1079 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block COND at level 4
                                                                //   1080  %END
#line 1080 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SCCOND at level 3
                                                                //   1081  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1082  %ROUTINE CHECK
#line 1082 "regression-compile-tmp/skimp77.imp"
void CHECK( void )
#line 1082 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1083  ! CHECK LABELS ALL SET & STARTS MATCH FINISHES
                                                                //   1084  %INTEGER I,J
#line 1084 "regression-compile-tmp/skimp77.imp"
int I;
#line 1084 "regression-compile-tmp/skimp77.imp"
int J;
                                                                //   1085       I=JUMP(LEVEL)                              ;! POINTER TO JUMP LIST FOR THIS LEVEL
#line 1085 "regression-compile-tmp/skimp77.imp"
I = JUMP[LEVEL];
                                                                //   1086  L1:   %IF I\=0 %THEN %START                      ;! NO LABELS OR JUMPS USED AT THIS LEVEL
#line 1086 "regression-compile-tmp/skimp77.imp"
U_103b:;
#line 1086 "regression-compile-tmp/skimp77.imp"
if (((I) == (0))) goto L_00e4;
                                                                //   1087          %IF BAT(TAG(I)&65535)<0 %THEN %START    ;! LABEL SET INCORRECTLY
#line 1087 "regression-compile-tmp/skimp77.imp"
if (((BAT[((TAG[I]) & (65535))]) >= (0))) goto L_00e5;
                                                                //   1088             WRITE(TAG(I)>>16,1)                  ;! PRINT OUT LABEL NO OF LABEL NOT SET
#line 1088 "regression-compile-tmp/skimp77.imp"
_imp_WRITE((int)((((unsigned int)(TAG[I])) >> (16))), 1);
                                                                //   1089             FAULT(M' LAB',M'EL N',M'OT S',M'ET  ')
#line 1089 "regression-compile-tmp/skimp77.imp"
FAULT(541868354, 1162616910, 1330913363, 1163141152);
                                                                //   1090             %FINISH
#line 1090 "regression-compile-tmp/skimp77.imp"
L_00e5:;
                                                                //   1091          I=RETURN CELL(I)                        ;! RETURN JUMP LIST CELL TO ASL
#line 1091 "regression-compile-tmp/skimp77.imp"
I = RETURNCELL(I);
                                                                //   1092          ->L1 ; %FINISH
#line 1092 "regression-compile-tmp/skimp77.imp"
goto U_103b;
#line 1092 "regression-compile-tmp/skimp77.imp"
L_00e4:;
                                                                //   1093       I=START(LEVEL)                             ;! LINK TO START LIST
#line 1093 "regression-compile-tmp/skimp77.imp"
I = START[LEVEL];
                                                                //   1094  L2:   %IF I\=0 %THEN %START                      ;! A CELL STILL IN LIST
#line 1094 "regression-compile-tmp/skimp77.imp"
U_103c:;
#line 1094 "regression-compile-tmp/skimp77.imp"
if (((I) == (0))) goto L_00e6;
                                                                //   1095          FAULT(M'%FIN',M'ISH ',M'MISS',M'ING ')
#line 1095 "regression-compile-tmp/skimp77.imp"
FAULT(625363278, 1230194720, 1296651091, 1229866784);
                                                                //   1096          I=RETURN CELL(I)                        ;! POP UP CELL
#line 1096 "regression-compile-tmp/skimp77.imp"
I = RETURNCELL(I);
                                                                //   1097          ->L2 ; %FINISH
#line 1097 "regression-compile-tmp/skimp77.imp"
goto U_103c;
#line 1097 "regression-compile-tmp/skimp77.imp"
L_00e6:;
                                                                //   1098  %END
#line 1098 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block CHECK at level 3
                                                                //   1099  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1100  %ROUTINE UNSET
#line 1100 "regression-compile-tmp/skimp77.imp"
void UNSET( void )
#line 1100 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1101  ! UNSET NAMES AND CHECK FOR MISSING ROUTINES
                                                                //   1102  %INTEGER I,J,K
#line 1102 "regression-compile-tmp/skimp77.imp"
int I;
#line 1102 "regression-compile-tmp/skimp77.imp"
int J;
#line 1102 "regression-compile-tmp/skimp77.imp"
int K;
                                                                //   1103       I=NAME(LEVEL)                               ;! NAME LIST POINTER
#line 1103 "regression-compile-tmp/skimp77.imp"
I = NAME[LEVEL];
                                                                //   1104  L1:   %IF I\=0 %THEN %START                       ;! UNSET NAMES DECLARED AT THIS LEVEL
#line 1104 "regression-compile-tmp/skimp77.imp"
U_103c:;
#line 1104 "regression-compile-tmp/skimp77.imp"
if (((I) == (0))) goto L_00e7;
                                                                //   1105          J=TAG(I)                                 ;! NAME IDENT NO
#line 1105 "regression-compile-tmp/skimp77.imp"
J = TAG[I];
                                                                //   1106          K=TAG(LINK(J))                           ;! TAG WORD AT TOP OF LIST
#line 1106 "regression-compile-tmp/skimp77.imp"
K = TAG[LINK[J]];
                                                                //   1107          LINK(J)=RETURN CELL(LINK(J))             ;! POP UP CELL
#line 1107 "regression-compile-tmp/skimp77.imp"
LINK[J] = RETURNCELL(LINK[J]);
                                                                //   1108          %IF K>>28=4 %THEN %START                 ;! ROUTINE/FN TYPE
#line 1108 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(K)) >> (28)))) != (4))) goto L_00e8;
                                                                //   1109             %IF BAT(K&65535)<0 %THEN %START
#line 1109 "regression-compile-tmp/skimp77.imp"
if (((BAT[((K) & (65535))]) >= (0))) goto L_00e9;
                                                                //   1110                PRINT NAME(J)
#line 1110 "regression-compile-tmp/skimp77.imp"
PRINTNAME(J);
                                                                //   1111                FAULT(M'ROUT',M'INE ',M'MISS',M'ING ')
#line 1111 "regression-compile-tmp/skimp77.imp"
FAULT(1380930900, 1229866272, 1296651091, 1229866784);
                                                                //   1112                %FINISH
#line 1112 "regression-compile-tmp/skimp77.imp"
L_00e9:;
                                                                //   1113             K=K>>20&15                            ;! NO OF PARAMS
#line 1113 "regression-compile-tmp/skimp77.imp"
K = (((int)((((unsigned int)(K)) >> (20)))) & (15));
                                                                //   1114  L2:         %IF K\=0 %THEN %START                 ;! PARAMS PRESENT
#line 1114 "regression-compile-tmp/skimp77.imp"
U_102c:;
#line 1114 "regression-compile-tmp/skimp77.imp"
if (((K) == (0))) goto L_00ea;
                                                                //   1115                LINK(J)=RETURN CELL(LINK(J))       ;! POP UP CELLS
#line 1115 "regression-compile-tmp/skimp77.imp"
LINK[J] = RETURNCELL(LINK[J]);
                                                                //   1116                K=K-1                              ;! PARAM COUNT
#line 1116 "regression-compile-tmp/skimp77.imp"
K = (((int)(K)) - (1));
                                                                //   1117                ->L2 ; %FINISH
#line 1117 "regression-compile-tmp/skimp77.imp"
goto U_102c;
#line 1117 "regression-compile-tmp/skimp77.imp"
L_00ea:;
                                                                //   1118             %FINISH
#line 1118 "regression-compile-tmp/skimp77.imp"
L_00e8:;
                                                                //   1119          %IF LINK(J)=0 %THEN TAG(J)=0             ;! A PREVIOUS DECLARATION OF SAME NAME
#line 1119 "regression-compile-tmp/skimp77.imp"
if (((LINK[J]) != (0))) goto L_00eb;
#line 1119 "regression-compile-tmp/skimp77.imp"
TAG[J] = 0;
#line 1119 "regression-compile-tmp/skimp77.imp"
L_00eb:;
                                                                //   1120          I=RETURN CELL(I)                         ;! RETURN NAME LIST CELL
#line 1120 "regression-compile-tmp/skimp77.imp"
I = RETURNCELL(I);
                                                                //   1121          ->L1 ; %FINISH
#line 1121 "regression-compile-tmp/skimp77.imp"
goto U_103c;
#line 1121 "regression-compile-tmp/skimp77.imp"
L_00e7:;
                                                                //   1122  %END
#line 1122 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block UNSET at level 3
                                                                //   1123  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1124  %ROUTINE PUSH START(%INTEGER FLAG,LABEL)
#line 1124 "regression-compile-tmp/skimp77.imp"
void PUSHSTART( int FLAG, int LABEL )
#line 1124 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1125  ! PUSHDOWN START/FINISH BLOCK INFORMATION
                                                                //   1126  %INTEGER I
#line 1126 "regression-compile-tmp/skimp77.imp"
int I;
                                                                //   1127       I=NEWCELL
#line 1127 "regression-compile-tmp/skimp77.imp"
I = NEWCELL();
                                                                //   1128       TAG(I)=FLAG<<16!LABEL&65535                 ;! PACK FLAG & LABEL
#line 1128 "regression-compile-tmp/skimp77.imp"
TAG[I] = ((((FLAG) << (16))) | (((LABEL) & (65535))));
                                                                //   1129       LINK(I)=START(LEVEL)                        ;! PUSH CELL DOWN
#line 1129 "regression-compile-tmp/skimp77.imp"
LINK[I] = START[LEVEL];
                                                                //   1130       START(LEVEL)=I                              ;!  ONTO START LIST
#line 1130 "regression-compile-tmp/skimp77.imp"
START[LEVEL] = I;
                                                                //   1131  %END
#line 1131 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PUSHSTART at level 3
                                                                //   1132  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1133  %ROUTINE ENTER(%INTEGER TYPE,ALLOC)
#line 1133 "regression-compile-tmp/skimp77.imp"
void ENTER( int TYPE, int ALLOC )
#line 1133 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1134  ! DUMP CODE FOR NEW LEVEL & INITIALISE LEVEL ARRAYS
                                                                //   1135  %INTEGER I
#line 1135 "regression-compile-tmp/skimp77.imp"
int I;
                                                                //   1136       DUMP(M'STR',BR(LEVEL),M'STP',0)            ;! ENTRY SEQUENCE
#line 1136 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, BR[LEVEL], 5461072, 0);
                                                                //   1137       DUMP(M'LDA',BR(LEVEL),M'STP',0)
#line 1137 "regression-compile-tmp/skimp77.imp"
DUMP(4998209, BR[LEVEL], 5461072, 0);
                                                                //   1138       DUMP(M'STR',M'WK',M'STP',1)
#line 1138 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 22347, 5461072, 1);
                                                                //   1139       I=CT NEXT                                  ;! STATIC ALLOCATION HOLE IN CONST TABLE
#line 1139 "regression-compile-tmp/skimp77.imp"
I = CTNEXT();
                                                                //   1140       DUMP(M'ADD',M'STP',M'CT',I)
#line 1140 "regression-compile-tmp/skimp77.imp"
DUMP(4277316, 5461072, 17236, I);
                                                                //   1141       STAR(LEVEL)=I                             ;! REMEMBER POSITION OF HOLE
#line 1141 "regression-compile-tmp/skimp77.imp"
STAR[LEVEL] = I;
                                                                //   1142       JUMP(LEVEL)=0                              ;! NO JUMPS AT NEW LEVEL YET
#line 1142 "regression-compile-tmp/skimp77.imp"
JUMP[LEVEL] = 0;
                                                                //   1143       NAME(LEVEL)=0                              ;! NO NAMES AT NEW LEVEL YET
#line 1143 "regression-compile-tmp/skimp77.imp"
NAME[LEVEL] = 0;
                                                                //   1144       RTP(LEVEL)=TYPE                            ;! BLOCK/ROUTINE/FN TYPE
#line 1144 "regression-compile-tmp/skimp77.imp"
RTP[LEVEL] = TYPE;
                                                                //   1145       CHPP(LEVEL)=CHP                            ;! SAVE CHARACTER ARRAY POINTER
#line 1145 "regression-compile-tmp/skimp77.imp"
CHPP[LEVEL] = CHP;
                                                                //   1146       START(LEVEL)=0                             ;! NO START/FINISH BLOCKS YET
#line 1146 "regression-compile-tmp/skimp77.imp"
START[LEVEL] = 0;
                                                                //   1147       RAD(LEVEL)=ALLOC                           ;! NEXT RELATIVE ADDRESS TO BE ASSIGNED
#line 1147 "regression-compile-tmp/skimp77.imp"
RAD[LEVEL] = ALLOC;
                                                                //   1148  %END
#line 1148 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block ENTER at level 3
                                                                //   1149  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1150  %ROUTINE RETURN
#line 1150 "regression-compile-tmp/skimp77.imp"
void RETURN( void )
#line 1150 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1151  ! DUMP CODE FOR %RETURN
                                                                //   1152       DUMP(M'LDA',M'STP',BR(LEVEL),0)             ;! RESTORE DIJKSTRA DISPLAY
#line 1152 "regression-compile-tmp/skimp77.imp"
DUMP(4998209, 5461072, BR[LEVEL], 0);
                                                                //   1153       DUMP(M'LOAD',BR(LEVEL),M'STP',0)
#line 1153 "regression-compile-tmp/skimp77.imp"
DUMP(1280262468, BR[LEVEL], 5461072, 0);
                                                                //   1154       DUMP(M'LOAD',M'WK',M'STP',1)
#line 1154 "regression-compile-tmp/skimp77.imp"
DUMP(1280262468, 22347, 5461072, 1);
                                                                //   1155       DUMP('B',0,M'WK',0)                         ;! BRANCH TO RETURN ADDRESS
#line 1155 "regression-compile-tmp/skimp77.imp"
DUMP(66, 0, 22347, 0);
                                                                //   1156  %END
#line 1156 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RETURN at level 3
                                                                //   1157  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1158  %ROUTINE RT
#line 1158 "regression-compile-tmp/skimp77.imp"
void RT( void )
#line 1158 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1159  ! DUMP CODE FOR A ROUTINE OR FUNCTION CALL
                                                                //   1160  %INTEGER I,J,K,L,M,N,P
#line 1160 "regression-compile-tmp/skimp77.imp"
int I;
#line 1160 "regression-compile-tmp/skimp77.imp"
int J;
#line 1160 "regression-compile-tmp/skimp77.imp"
int K;
#line 1160 "regression-compile-tmp/skimp77.imp"
int L;
#line 1160 "regression-compile-tmp/skimp77.imp"
int M;
#line 1160 "regression-compile-tmp/skimp77.imp"
int N;
#line 1160 "regression-compile-tmp/skimp77.imp"
int P;
                                                                //   1161       I=LINK(A(AP))                                      ;! LINK TO TAG FOR NAME
#line 1161 "regression-compile-tmp/skimp77.imp"
I = LINK[A[(((int)(AP)) - (1))]];
                                                                //   1162       AP=AP+1                                            ;! AP ON <APP>
#line 1162 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //   1163       J=TAG(I)                                           ;! TAG OF NAME
#line 1163 "regression-compile-tmp/skimp77.imp"
J = TAG[I];
                                                                //   1164       K=J>>20&15+1                                       ;! NO OF PARAMS +1
#line 1164 "regression-compile-tmp/skimp77.imp"
K = (((int)((((int)((((unsigned int)(J)) >> (20)))) & (15)))) + (1));
                                                                //   1165  L1:   K=K-1                                              ;! COUNT PARAMS
#line 1165 "regression-compile-tmp/skimp77.imp"
U_102f:;
#line 1165 "regression-compile-tmp/skimp77.imp"
K = (((int)(K)) - (1));
                                                                //   1166       AP=AP+1                                            ;! AP ON <APP>+1
#line 1166 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //   1167       %IF A(AP-1)=2 %THEN %START                         ;! PARAMS ABSENT OR NO MORE TO PROCESS
#line 1167 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) - (1)))) - (1))]) != (2))) goto L_00ec;
                                                                //   1168          DUMP(M'BAL',M'WK',M'BT',J&65535)                ;! DUMP BRANCH TO ROUTINE/FN
#line 1168 "regression-compile-tmp/skimp77.imp"
DUMP(4342092, 22347, 16980, ((J) & (65535)));
                                                                //   1169          %IF K>0 %THEN FAULT(M'TOO ',M'FEW ',M'PARA',M'MS  ')
#line 1169 "regression-compile-tmp/skimp77.imp"
if (((K) <= (0))) goto L_00ed;
#line 1169 "regression-compile-tmp/skimp77.imp"
FAULT(1414483744, 1178949408, 1346458177, 1297293344);
#line 1169 "regression-compile-tmp/skimp77.imp"
L_00ed:;
                                                                //   1170          %RETURN ; %FINISH
#line 1170 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1170 "regression-compile-tmp/skimp77.imp"
L_00ec:;
                                                                //   1171       %IF K<=0 %THEN %START                              ;! MORE PARAMS THAN SPEC
#line 1171 "regression-compile-tmp/skimp77.imp"
if (((K) > (0))) goto L_00ee;
                                                                //   1172          %IF K=0 %THEN FAULT(M'TOO ',M'MANY',M' PAR',M'AMS ') ;! ONLY MONITOR ONCE
#line 1172 "regression-compile-tmp/skimp77.imp"
if (((K) != (0))) goto L_00ef;
#line 1172 "regression-compile-tmp/skimp77.imp"
FAULT(1414483744, 1296125529, 542130514, 1095586592);
#line 1172 "regression-compile-tmp/skimp77.imp"
L_00ef:;
                                                                //   1173          ->L2 ; %FINISH
#line 1173 "regression-compile-tmp/skimp77.imp"
goto U_1030;
#line 1173 "regression-compile-tmp/skimp77.imp"
L_00ee:;
                                                                //   1174       I=LINK(I)                                          ;! LINK TO NEXT PARAM CELL
#line 1174 "regression-compile-tmp/skimp77.imp"
I = LINK[I];
                                                                //   1175       L=TAG(I)                                           ;! TAG OF PARAM
#line 1175 "regression-compile-tmp/skimp77.imp"
L = TAG[I];
                                                                //   1176       %IF L>>28=0 %THEN %START                           ;! SCALAR VALUE
#line 1176 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(L)) >> (28)))) != (0))) goto L_00f0;
                                                                //   1177          SEXPR                                           ;! COMPILE EXPRESSION
#line 1177 "regression-compile-tmp/skimp77.imp"
SEXPR();
                                                                //   1178          ->L3 ; %FINISH
#line 1178 "regression-compile-tmp/skimp77.imp"
goto U_103d;
#line 1178 "regression-compile-tmp/skimp77.imp"
L_00f0:;
                                                                //   1179       %IF A(AP)=4 %AND A(AP+1)=1 %THEN ->L4               ;! <+-\> IS NULL & <OPD> IS A NAME
#line 1179 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (4))) goto L_00f1;
#line 1179 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) + (1)))) - (1))]) != (1))) goto L_00f1;
#line 1179 "regression-compile-tmp/skimp77.imp"
goto U_103e;
#line 1179 "regression-compile-tmp/skimp77.imp"
L_00f1:;
                                                                //   1180  L5:   FAULT(M'NOT ',M'A NA',M'ME P',M'ARAM')
#line 1180 "regression-compile-tmp/skimp77.imp"
U_1031:;
#line 1180 "regression-compile-tmp/skimp77.imp"
FAULT(1313821728, 1092636225, 1296375888, 1095909709);
                                                                //   1181  L2:   SKIP SEXPR                                         ;! SKIP INVALID PARAM TO CONTINUE
#line 1181 "regression-compile-tmp/skimp77.imp"
U_1030:;
#line 1181 "regression-compile-tmp/skimp77.imp"
SKIPSEXPR();
                                                                //   1182       ->L1
#line 1182 "regression-compile-tmp/skimp77.imp"
goto U_102f;
                                                                //   1183  L4:   M=LINK(A(AP+2))                                    ;! LINK TO TAG FOR PARAM NAME
#line 1183 "regression-compile-tmp/skimp77.imp"
U_103e:;
#line 1183 "regression-compile-tmp/skimp77.imp"
M = LINK[A[(((int)((((int)(AP)) + (2)))) - (1))]];
                                                                //   1184       %IF M=0 %THEN %START
#line 1184 "regression-compile-tmp/skimp77.imp"
if (((M) != (0))) goto L_00f2;
                                                                //   1185          PRINT NAME(A(AP+2))
#line 1185 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)((((int)(AP)) + (2)))) - (1))]);
                                                                //   1186          FAULT(M'NAME',M' NOT',M' SET',M'    ')
#line 1186 "regression-compile-tmp/skimp77.imp"
FAULT(1312902469, 542003028, 542328148, 538976288);
                                                                //   1187          ->L2 ; %FINISH
#line 1187 "regression-compile-tmp/skimp77.imp"
goto U_1030;
#line 1187 "regression-compile-tmp/skimp77.imp"
L_00f2:;
                                                                //   1188       N=TAG(M)                                           ;! TAG OF PARAM NAME
#line 1188 "regression-compile-tmp/skimp77.imp"
N = TAG[M];
                                                                //   1189       %IF L>>28=1 %THEN %START                           ;! PARAM IS SCALAR NAME TYPE
#line 1189 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(L)) >> (28)))) != (1))) goto L_00f3;
                                                                //   1190          %IF N>>28=4 %THEN %START                        ;! ACTUAL NAME IS ROUTINE/FN TYPE
#line 1190 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(N)) >> (28)))) != (4))) goto L_00f4;
                                                                //   1191             PRINT NAME(A(AP+2))
#line 1191 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)((((int)(AP)) + (2)))) - (1))]);
                                                                //   1192             ->L5 ; %FINISH
#line 1192 "regression-compile-tmp/skimp77.imp"
goto U_1031;
#line 1192 "regression-compile-tmp/skimp77.imp"
L_00f4:;
                                                                //   1193          %IF N>>28>=2 %THEN %START                       ;! ACTUAL NAME IS AN ARRAY
#line 1193 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(N)) >> (28)))) < (2))) goto L_00f5;
                                                                //   1194             AP=AP+2                                      ;! AP ON <NAME>
#line 1194 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (2));
                                                                //   1195             ARRAD                                        ;! CALCULATE ARRAY ELEMENT ADDRESS
#line 1195 "regression-compile-tmp/skimp77.imp"
ARRAD();
                                                                //   1196             AP=AP+1                                      ;! AP ON <EXPR>+1 - SHOULD BE <EXPS>
#line 1196 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //   1197             %IF A(AP-1)=1 %THEN ->L5                      ;! FURTHER OPERAND - INVALID
#line 1197 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) - (1)))) - (1))]) != (1))) goto L_00f6;
#line 1197 "regression-compile-tmp/skimp77.imp"
goto U_1031;
#line 1197 "regression-compile-tmp/skimp77.imp"
L_00f6:;
                                                                //   1198             ->L3 ; %FINISH
#line 1198 "regression-compile-tmp/skimp77.imp"
goto U_103d;
#line 1198 "regression-compile-tmp/skimp77.imp"
L_00f5:;
                                                                //   1199          %IF A(AP+3)=1 %THEN %START                      ;! <APP> NOT NULL
#line 1199 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) + (3)))) - (1))]) != (1))) goto L_00f7;
                                                                //   1200             PRINT NAME(A(AP+2))
#line 1200 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)((((int)(AP)) + (2)))) - (1))]);
                                                                //   1201             FAULT(M'SCAL',M'AR H',M'AS P',M'ARAM')
#line 1201 "regression-compile-tmp/skimp77.imp"
FAULT(1396916556, 1095901256, 1095966800, 1095909709);
                                                                //   1202             ->L2 ; %FINISH
#line 1202 "regression-compile-tmp/skimp77.imp"
goto U_1030;
#line 1202 "regression-compile-tmp/skimp77.imp"
L_00f7:;
                                                                //   1203          %IF A(AP+4)=1 %THEN ->L5                         ;! FURTHER OPERANDS - INVALID
#line 1203 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) + (4)))) - (1))]) != (1))) goto L_00f8;
#line 1203 "regression-compile-tmp/skimp77.imp"
goto U_1031;
#line 1203 "regression-compile-tmp/skimp77.imp"
L_00f8:;
                                                                //   1204          %IF N>>28=1 %THEN P=M'LOAD' %ELSE P=M'LDA'      ;! LOAD FOR NAME TYPE & LDA FOR VALUE TYPE
#line 1204 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(N)) >> (28)))) != (1))) goto L_00f9;
#line 1204 "regression-compile-tmp/skimp77.imp"
P = 1280262468;
#line 1204 "regression-compile-tmp/skimp77.imp"
goto L_00fa;
#line 1204 "regression-compile-tmp/skimp77.imp"
L_00f9:;
#line 1204 "regression-compile-tmp/skimp77.imp"
P = 4998209;
#line 1204 "regression-compile-tmp/skimp77.imp"
L_00fa:;
                                                                //   1205          DUMP(P,M'ACC',BR(N>>16&15),N&65535)
#line 1205 "regression-compile-tmp/skimp77.imp"
DUMP(P, 4277059, BR[(((int)((((unsigned int)(N)) >> (16)))) & (15))], ((N) & (65535)));
                                                                //   1206          %FINISH %ELSE %START                            ;! PARAM IS ARRAY NAME
#line 1206 "regression-compile-tmp/skimp77.imp"
goto L_00fb;
#line 1206 "regression-compile-tmp/skimp77.imp"
L_00f3:;
                                                                //   1207          %IF A(AP+3)\=2 %OR A(AP+4)\=2 %THEN ->L5         ;! <APP> NOT NULL OR MORE OPERANDS
#line 1207 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) + (3)))) - (1))]) != (2))) goto L_00fc;
#line 1207 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) + (4)))) - (1))]) == (2))) goto L_00fd;
#line 1207 "regression-compile-tmp/skimp77.imp"
L_00fc:;
#line 1207 "regression-compile-tmp/skimp77.imp"
goto U_1031;
#line 1207 "regression-compile-tmp/skimp77.imp"
L_00fd:;
                                                                //   1208          %IF N>>28&2=0 %THEN %START                      ;! 'FORM' OF ACTUAL IS NOT ARRAY
#line 1208 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(N)) >> (28)))) & (2))) != (0))) goto L_00fe;
                                                                //   1209             PRINT NAME(A(AP+2))
#line 1209 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)((((int)(AP)) + (2)))) - (1))]);
                                                                //   1210             FAULT(M'NOT ',M'AN A',M'RRAY',M' NME')
#line 1210 "regression-compile-tmp/skimp77.imp"
FAULT(1313821728, 1095639105, 1381122393, 542002501);
                                                                //   1211             ->L2 ; %FINISH
#line 1211 "regression-compile-tmp/skimp77.imp"
goto U_1030;
#line 1211 "regression-compile-tmp/skimp77.imp"
L_00fe:;
                                                                //   1212          %IF N>>28=3 %THEN %START                        ;! ACTUAL IS ARRAY NAME
#line 1212 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(N)) >> (28)))) != (3))) goto L_00ff;
                                                                //   1213             M=N&65535                                    ;! POINTER TO TAG CELL OF PARAM LIST
#line 1213 "regression-compile-tmp/skimp77.imp"
M = ((N) & (65535));
                                                                //   1214             N=TAG(M)                                     ;! CORRECT TAG FOR PARAM
#line 1214 "regression-compile-tmp/skimp77.imp"
N = TAG[M];
                                                                //   1215             %FINISH
#line 1215 "regression-compile-tmp/skimp77.imp"
L_00ff:;
                                                                //   1216          %IF N>>20&15\=L>>20&15 %THEN %START             ;! DIMENSIONS DIFFERENT
#line 1216 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(N)) >> (20)))) & (15))) == ((((int)((((unsigned int)(L)) >> (20)))) & (15))))) goto L_0100;
                                                                //   1217             %IF L>>20&15=0 %THEN %START                  ;! FORMAL PARAM DIMENSION UNKNOWN
#line 1217 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(L)) >> (20)))) & (15))) != (0))) goto L_0101;
                                                                //   1218                L=TAG(I)!N&15<<20                         ;! FILL FORMAL TAG WITH DIMENSION
#line 1218 "regression-compile-tmp/skimp77.imp"
L = ((TAG[I]) | (((N) & (((15) << (20))))));
                                                                //   1219                TAG(I)=L                                  ;!  OF ACTUAL PARAM
#line 1219 "regression-compile-tmp/skimp77.imp"
TAG[I] = L;
                                                                //   1220                %FINISH %ELSE %START                      ;! DIMENSION OF FORMAL KNOWN
#line 1220 "regression-compile-tmp/skimp77.imp"
goto L_0102;
#line 1220 "regression-compile-tmp/skimp77.imp"
L_0101:;
                                                                //   1221                %IF N>>20&15=0 %THEN TAG(M)=TAG(M)!L&15<<20 %ELSE %START
#line 1221 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(N)) >> (20)))) & (15))) != (0))) goto L_0103;
#line 1221 "regression-compile-tmp/skimp77.imp"
TAG[M] = ((TAG[M]) | (((L) & (((15) << (20))))));
#line 1221 "regression-compile-tmp/skimp77.imp"
goto L_0104;
#line 1221 "regression-compile-tmp/skimp77.imp"
L_0103:;
                                                                //   1222                                                          ;! FILL IN DIMENSION OF ACTUAL IF UNKNOWN
                                                                //   1223                   PRINT NAME(A(AP+2))
#line 1223 "regression-compile-tmp/skimp77.imp"
PRINTNAME(A[(((int)((((int)(AP)) + (2)))) - (1))]);
                                                                //   1224                   FAULT(M'ARRA',M'Y DI',M'MENS',M'ION?')
#line 1224 "regression-compile-tmp/skimp77.imp"
FAULT(1095914049, 1495286857, 1296387667, 1229934143);
                                                                //   1225                   ->L2 ; %FINISH
#line 1225 "regression-compile-tmp/skimp77.imp"
goto U_1030;
#line 1225 "regression-compile-tmp/skimp77.imp"
L_0104:;
                                                                //   1226                %FINISH
#line 1226 "regression-compile-tmp/skimp77.imp"
L_0102:;
                                                                //   1227             %FINISH
#line 1227 "regression-compile-tmp/skimp77.imp"
L_0100:;
                                                                //   1228          DUMP(M'LOAD',M'ACC',BR(N>>16&15),N&65535)
#line 1228 "regression-compile-tmp/skimp77.imp"
DUMP(1280262468, 4277059, BR[(((int)((((unsigned int)(N)) >> (16)))) & (15))], ((N) & (65535)));
                                                                //   1229          %IF L>>20&15\=1 %THEN %START                    ;! NOT 1-DIM ARRAY
#line 1229 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(L)) >> (20)))) & (15))) == (1))) goto L_0105;
                                                                //   1230             DUMP(M'STR',M'ACC',M'STP',L&65535)
#line 1230 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, 5461072, ((L) & (65535)));
                                                                //   1231             DUMP(M'LOAD',M'ACC',BR(N>>16&15),N&65535+1)
#line 1231 "regression-compile-tmp/skimp77.imp"
DUMP(1280262468, 4277059, BR[(((int)((((unsigned int)(N)) >> (16)))) & (15))], (((int)(((N) & (65535)))) + (1)));
                                                                //   1232             L=L+1
#line 1232 "regression-compile-tmp/skimp77.imp"
L = (((int)(L)) + (1));
                                                                //   1233             %FINISH
#line 1233 "regression-compile-tmp/skimp77.imp"
L_0105:;
                                                                //   1234          %FINISH
#line 1234 "regression-compile-tmp/skimp77.imp"
L_00fb:;
                                                                //   1235       AP=AP+5                                            ;! AP ON <EXPS>
#line 1235 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (5));
                                                                //   1236  L3:   DUMP(M'STR',M'ACC',M'STP',L&65535)
#line 1236 "regression-compile-tmp/skimp77.imp"
U_103d:;
#line 1236 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, 5461072, ((L) & (65535)));
                                                                //   1237       ->L1
#line 1237 "regression-compile-tmp/skimp77.imp"
goto U_102f;
                                                                //   1238  %END
#line 1238 "regression-compile-tmp/skimp77.imp"
return;
} // End of block RT at level 3
                                                                //   1239  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1240  %ROUTINE ARRAD
#line 1240 "regression-compile-tmp/skimp77.imp"
void ARRAD( void )
#line 1240 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1241  ! DUMP CODE TO CALCULATE ARRAY ELEMENT ADDRESS
                                                                //   1242  %INTEGER I,J,K,L
#line 1242 "regression-compile-tmp/skimp77.imp"
int I;
#line 1242 "regression-compile-tmp/skimp77.imp"
int J;
#line 1242 "regression-compile-tmp/skimp77.imp"
int K;
#line 1242 "regression-compile-tmp/skimp77.imp"
int L;
                                                                //   1243       L=A(AP)
#line 1243 "regression-compile-tmp/skimp77.imp"
L = A[(((int)(AP)) - (1))];
                                                                //   1244       I=LINK(L)                                          ;! LINK TO TAG FOR NAME OF ARRAY
#line 1244 "regression-compile-tmp/skimp77.imp"
I = LINK[L];
                                                                //   1245       J=TAG(I)
#line 1245 "regression-compile-tmp/skimp77.imp"
J = TAG[I];
                                                                //   1246       %IF J>>28=3 %THEN %START                           ;! NAME IS AN ARRAY NAME
#line 1246 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(J)) >> (28)))) != (3))) goto L_0106;
                                                                //   1247          I=J&65535                                       ;! SUBSTITUTE CORRECT TAG VALUE
#line 1247 "regression-compile-tmp/skimp77.imp"
I = ((J) & (65535));
                                                                //   1248          J=TAG(I)
#line 1248 "regression-compile-tmp/skimp77.imp"
J = TAG[I];
                                                                //   1249          %FINISH
#line 1249 "regression-compile-tmp/skimp77.imp"
L_0106:;
                                                                //   1250       AP=AP+2                                            ;! AP ON <APP>+1
#line 1250 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (2));
                                                                //   1251       %IF A(AP-1)=1 %THEN %START                         ;! INDEXES PRESENT
#line 1251 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) - (1)))) - (1))]) != (1))) goto L_0107;
                                                                //   1252          SEXPR                                           ;! COMPILE EXPR FOR FIRST INDEX
#line 1252 "regression-compile-tmp/skimp77.imp"
SEXPR();
                                                                //   1253          AP=AP+1                                         ;! AP ON <EXPS>+1
#line 1253 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //   1254          %IF A(AP-1)=1 %THEN %START                      ;! 2ND INDEX PRESENT
#line 1254 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)((((int)(AP)) - (1)))) - (1))]) != (1))) goto L_0108;
                                                                //   1255             DUMP(M'STR',M'ACC',BR(LEVEL),WS NEXT)        ;! STORE 1ST INDEX IN WORKSPACE
#line 1255 "regression-compile-tmp/skimp77.imp"
DUMP(5461074, 4277059, BR[LEVEL], WSNEXT());
                                                                //   1256             SEXPR                                        ;! COMPILE EXPR FOR 2ND INDEX
#line 1256 "regression-compile-tmp/skimp77.imp"
SEXPR();
                                                                //   1257             %IF A(AP)=1 %THEN %START                     ;! 3RD INDEX PRESENT
#line 1257 "regression-compile-tmp/skimp77.imp"
if (((A[(((int)(AP)) - (1))]) != (1))) goto L_0109;
                                                                //   1258                PRINT NAME(L)
#line 1258 "regression-compile-tmp/skimp77.imp"
PRINTNAME(L);
                                                                //   1259                FAULT(M'TOO ',M'MANY',M' IND',M'EXES')
#line 1259 "regression-compile-tmp/skimp77.imp"
FAULT(1414483744, 1296125529, 541675076, 1163412819);
                                                                //   1260                SKIP APP                                  ;! SKIP EXCESS INDEXES
#line 1260 "regression-compile-tmp/skimp77.imp"
SKIPAPP();
                                                                //   1261                %FINISH %ELSE AP=AP+1                     ;! AP AFTER EXPRESSION
#line 1261 "regression-compile-tmp/skimp77.imp"
goto L_010a;
#line 1261 "regression-compile-tmp/skimp77.imp"
L_0109:;
#line 1261 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
#line 1261 "regression-compile-tmp/skimp77.imp"
L_010a:;
                                                                //   1262             DUMP(M'MLT',M'ACC',BR(J>>16&15),J&65535)
#line 1262 "regression-compile-tmp/skimp77.imp"
DUMP(5065812, 4277059, BR[(((int)((((unsigned int)(J)) >> (16)))) & (15))], ((J) & (65535)));
                                                                //   1263             WS=WS-1                                      ;! RESTORE WORKSPACE POINTER
#line 1263 "regression-compile-tmp/skimp77.imp"
WS = (((int)(WS)) - (1));
                                                                //   1264             DUMP(M'ADD',M'ACC',BR(LEVEL),WS)
#line 1264 "regression-compile-tmp/skimp77.imp"
DUMP(4277316, 4277059, BR[LEVEL], WS);
                                                                //   1265             DUMP(M'ADD',M'ACC',BR(J>>16&15),J&65535+1)
#line 1265 "regression-compile-tmp/skimp77.imp"
DUMP(4277316, 4277059, BR[(((int)((((unsigned int)(J)) >> (16)))) & (15))], (((int)(((J) & (65535)))) + (1)));
                                                                //   1266             K=2                                          ;! DIMENSION MARKER
#line 1266 "regression-compile-tmp/skimp77.imp"
K = 2;
                                                                //   1267             %FINISH %ELSE %START                         ;! ONLY ONE INDEX PRESENT
#line 1267 "regression-compile-tmp/skimp77.imp"
goto L_010b;
#line 1267 "regression-compile-tmp/skimp77.imp"
L_0108:;
                                                                //   1268             DUMP(M'ADD',M'ACC',BR(J>>16&15),J&65535)
#line 1268 "regression-compile-tmp/skimp77.imp"
DUMP(4277316, 4277059, BR[(((int)((((unsigned int)(J)) >> (16)))) & (15))], ((J) & (65535)));
                                                                //   1269             K=1                                          ;! DIMENSION MARKER
#line 1269 "regression-compile-tmp/skimp77.imp"
K = 1;
                                                                //   1270             %FINISH
#line 1270 "regression-compile-tmp/skimp77.imp"
L_010b:;
                                                                //   1271          %IF K\=J>>20&15 %THEN %START                    ;! DIMS FOUND DO NOT AGREE WITH TAG
#line 1271 "regression-compile-tmp/skimp77.imp"
if (((K) == ((((int)((((unsigned int)(J)) >> (20)))) & (15))))) goto L_010c;
                                                                //   1272             %IF J>>20&15=0 %THEN TAG(I)=TAG(I)!K<<20 %ELSE %C
#line 1272 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(J)) >> (20)))) & (15))) != (0))) goto L_010d;
#line 1272 "regression-compile-tmp/skimp77.imp"
TAG[I] = ((TAG[I]) | (((K) << (20))));
#line 1272 "regression-compile-tmp/skimp77.imp"
goto L_010e;
#line 1272 "regression-compile-tmp/skimp77.imp"
L_010d:;
#line 1272 "regression-compile-tmp/skimp77.imp"
PRINTNAME(L);
#line 1272 "regression-compile-tmp/skimp77.imp"
L_010e:;
                                                                //   1273                PRINT NAME(L)
                                                                //   1274                FAULT(M'ARRA',M'Y DI',M'MENS',M'ION?')    ;! FILL IN DIMS IF UNKNOWN
#line 1274 "regression-compile-tmp/skimp77.imp"
FAULT(1095914049, 1495286857, 1296387667, 1229934143);
                                                                //   1275             %FINISH
#line 1275 "regression-compile-tmp/skimp77.imp"
L_010c:;
                                                                //   1276          %FINISH %ELSE %START
#line 1276 "regression-compile-tmp/skimp77.imp"
goto L_010f;
#line 1276 "regression-compile-tmp/skimp77.imp"
L_0107:;
                                                                //   1277          PRINT NAME(L)
#line 1277 "regression-compile-tmp/skimp77.imp"
PRINTNAME(L);
                                                                //   1278          FAULT(M'NO A',M'RRAY',M' IND',M'EXES')
#line 1278 "regression-compile-tmp/skimp77.imp"
FAULT(1313808449, 1381122393, 541675076, 1163412819);
                                                                //   1279          %FINISH
#line 1279 "regression-compile-tmp/skimp77.imp"
L_010f:;
                                                                //   1280  %END
#line 1280 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block ARRAD at level 3
                                                                //   1281  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1282  %INTEGERFN BT NEXT
#line 1282 "regression-compile-tmp/skimp77.imp"
int BTNEXT( void )
#line 1282 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1283  ! ALLOCATE NEXT POSITION IN BRANCH TABLE
                                                                //   1284       %IF BTN>1023 %THEN %START                 ;! FULL
#line 1284 "regression-compile-tmp/skimp77.imp"
if (((BTN) <= (1023))) goto L_0110;
                                                                //   1285          FAULT(M'TOO ',M'MANY',M'LABE',M'LS  ')
#line 1285 "regression-compile-tmp/skimp77.imp"
FAULT(1414483744, 1296125529, 1279345221, 1280516128);
                                                                //   1286          BTN=0                                  ;! TRY TO CONTINUE
#line 1286 "regression-compile-tmp/skimp77.imp"
BTN = 0;
                                                                //   1287          %FINISH
#line 1287 "regression-compile-tmp/skimp77.imp"
L_0110:;
                                                                //   1288       BAT(BTN)=-1                               ;! MARKER FOR ADDRESS NOT FILLED IN YET
#line 1288 "regression-compile-tmp/skimp77.imp"
BAT[BTN] = (-1);
                                                                //   1289       BTN=BTN+1                                 ;! NEXT POSITION
#line 1289 "regression-compile-tmp/skimp77.imp"
BTN = (((int)(BTN)) + (1));
                                                                //   1290       %RESULT=BTN-1                             ;! THIS POSITION
#line 1290 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return (((int)(BTN)) - (1));
                                                                //   1291  %END
#line 1291 "regression-compile-tmp/skimp77.imp"
} // End of block BTNEXT at level 3
                                                                //   1292  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1293  %INTEGERFN CT NEXT
#line 1293 "regression-compile-tmp/skimp77.imp"
int CTNEXT( void )
#line 1293 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1294  ! ALLOCATE NEXT POSITION IN CONSTANT TABLE
                                                                //   1295       %IF CTN>1023 %THEN %START                 ;! FULL
#line 1295 "regression-compile-tmp/skimp77.imp"
if (((CTN) <= (1023))) goto L_0111;
                                                                //   1296          FAULT(M'TOO ',M'MANY',M' CON',M'STS ')
#line 1296 "regression-compile-tmp/skimp77.imp"
FAULT(1414483744, 1296125529, 541282126, 1398035232);
                                                                //   1297          CTN=0                                  ;! TRY TO CONTINUE
#line 1297 "regression-compile-tmp/skimp77.imp"
CTN = 0;
                                                                //   1298          %FINISH
#line 1298 "regression-compile-tmp/skimp77.imp"
L_0111:;
                                                                //   1299       CTN=CTN+1                                 ;! NEXT POSITION
#line 1299 "regression-compile-tmp/skimp77.imp"
CTN = (((int)(CTN)) + (1));
                                                                //   1300       %RESULT=CTN-1                             ;! THIS POSITION
#line 1300 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return (((int)(CTN)) - (1));
                                                                //   1301  %END
#line 1301 "regression-compile-tmp/skimp77.imp"
} // End of block CTNEXT at level 3
                                                                //   1302  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1303  %INTEGERFN WS NEXT
#line 1303 "regression-compile-tmp/skimp77.imp"
int WSNEXT( void )
#line 1303 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1304  ! ALLOCATE NEXT WORK SPACE POSITION
                                                                //   1305       WS=WS+1
#line 1305 "regression-compile-tmp/skimp77.imp"
WS = (((int)(WS)) + (1));
                                                                //   1306       %IF WS=11 %THEN FAULT(M'COMP',M'ILER',M' WKS',M'PACE')
#line 1306 "regression-compile-tmp/skimp77.imp"
if (((WS) != (11))) goto L_0112;
#line 1306 "regression-compile-tmp/skimp77.imp"
FAULT(1129270608, 1229735250, 542591827, 1346454341);
#line 1306 "regression-compile-tmp/skimp77.imp"
L_0112:;
                                                                //   1307       %RESULT=WS-1
#line 1307 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return (((int)(WS)) - (1));
                                                                //   1308  %END
#line 1308 "regression-compile-tmp/skimp77.imp"
} // End of block WSNEXT at level 3
                                                                //   1309  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1310  %INTEGERFN FIND LABEL
#line 1310 "regression-compile-tmp/skimp77.imp"
int FINDLABEL( void )
#line 1310 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1311  ! CHECK & LOCATE OR INSERT LABEL IN JUMP LIST FOR THIS LEVEL
                                                                //   1312  %INTEGER I,J
#line 1312 "regression-compile-tmp/skimp77.imp"
int I;
#line 1312 "regression-compile-tmp/skimp77.imp"
int J;
                                                                //   1313       LABEL=A(AP)                               ;! VALUE OF CONST
#line 1313 "regression-compile-tmp/skimp77.imp"
LABEL = A[(((int)(AP)) - (1))];
                                                                //   1314       AP=AP+1                                   ;! AFTER <CONST>
#line 1314 "regression-compile-tmp/skimp77.imp"
AP = (((int)(AP)) + (1));
                                                                //   1315       %IF LABEL>>16\=0 %THEN %START             ;! INVALID LABEL NUMBER
#line 1315 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(LABEL)) >> (16)))) == (0))) goto L_0113;
                                                                //   1316          WRITE(LABEL,1)
#line 1316 "regression-compile-tmp/skimp77.imp"
_imp_WRITE(LABEL, 1);
                                                                //   1317          SPACES(2)
#line 1317 "regression-compile-tmp/skimp77.imp"
_imp_SPACES(2);
                                                                //   1318          FAULT(M'INVA',M'LID ',M'LABE',M'L   ')
#line 1318 "regression-compile-tmp/skimp77.imp"
FAULT(1229870657, 1279869984, 1279345221, 1277173792);
                                                                //   1319          %RESULT=-1                             ;! 'FAULTY' RESULT
#line 1319 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return (-1);
                                                                //   1320          %FINISH
#line 1320 "regression-compile-tmp/skimp77.imp"
L_0113:;
                                                                //   1321       I=JUMP(LEVEL)                             ;! JUMP LIST POINTER
#line 1321 "regression-compile-tmp/skimp77.imp"
I = JUMP[LEVEL];
                                                                //   1322  L1:   %IF I\=0 %THEN %START                     ;! SOMETHING IN LIST
#line 1322 "regression-compile-tmp/skimp77.imp"
U_103b:;
#line 1322 "regression-compile-tmp/skimp77.imp"
if (((I) == (0))) goto L_0114;
                                                                //   1323          %IF LABEL=TAG(I)>>16 %THEN %RESULT=TAG(I)&65535 ;! LABEL ALREADY IN
#line 1323 "regression-compile-tmp/skimp77.imp"
if (((LABEL) != ((int)((((unsigned int)(TAG[I])) >> (16)))))) goto L_0115;
#line 1323 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return ((TAG[I]) & (65535));
#line 1323 "regression-compile-tmp/skimp77.imp"
L_0115:;
                                                                //   1324          I=LINK(I)                              ;! NEXT CELL IN LIST
#line 1324 "regression-compile-tmp/skimp77.imp"
I = LINK[I];
                                                                //   1325          ->L1 ; %FINISH
#line 1325 "regression-compile-tmp/skimp77.imp"
goto U_103b;
#line 1325 "regression-compile-tmp/skimp77.imp"
L_0114:;
                                                                //   1326       I=NEWCELL                                 ;! LABEL NOT IN LIST SO GET NEW CELL
#line 1326 "regression-compile-tmp/skimp77.imp"
I = NEWCELL();
                                                                //   1327       J=BT NEXT                                 ;! GET NEXT BRANCH TABLE POSITION
#line 1327 "regression-compile-tmp/skimp77.imp"
J = BTNEXT();
                                                                //   1328       TAG(I)=LABEL<<16!J                        ;! FILL IN LIST ENTRY
#line 1328 "regression-compile-tmp/skimp77.imp"
TAG[I] = ((((LABEL) << (16))) | (J));
                                                                //   1329       LINK(I)=JUMP(LEVEL)                       ;! PUSHDOWN ONTO JUMP LIST
#line 1329 "regression-compile-tmp/skimp77.imp"
LINK[I] = JUMP[LEVEL];
                                                                //   1330       JUMP(LEVEL)=I                             ;! NEW JUMP LIST POINTER
#line 1330 "regression-compile-tmp/skimp77.imp"
JUMP[LEVEL] = I;
                                                                //   1331       %RESULT=J                                 ;! NEW BRANCH TABLE POSITION
#line 1331 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return J;
                                                                //   1332  %END
#line 1332 "regression-compile-tmp/skimp77.imp"
} // End of block FINDLABEL at level 3
                                                                //   1333  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1334  %ROUTINE STORE TAG(%INTEGER NAM,FORM,TYPE,DIM,LEV,AD)
#line 1334 "regression-compile-tmp/skimp77.imp"
void STORETAG( int NAM, int FORM, int TYPE, int DIM, int LEV, int AD )
#line 1334 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1335  ! STORE TAGS I.E. SET NAME & CHECK NOT SET ALREADY
                                                                //   1336  %INTEGER M,N
#line 1336 "regression-compile-tmp/skimp77.imp"
int M;
#line 1336 "regression-compile-tmp/skimp77.imp"
int N;
                                                                //   1337       M=LINK(NAM)                               ;! POINTER TO EXISTING TAGS WORD FOR THIS
#line 1337 "regression-compile-tmp/skimp77.imp"
M = LINK[NAM];
                                                                //   1338       %IF M\=0 %AND LEV=TAG(M)>>16&15 %AND FORM\=4 %THEN %START
#line 1338 "regression-compile-tmp/skimp77.imp"
if (((M) == (0))) goto L_0116;
#line 1338 "regression-compile-tmp/skimp77.imp"
if (((LEV) != ((((int)((((unsigned int)(TAG[M])) >> (16)))) & (15))))) goto L_0116;
#line 1338 "regression-compile-tmp/skimp77.imp"
if (((FORM) == (4))) goto L_0116;
                                                                //   1339          PRINT NAME(NAM)
#line 1339 "regression-compile-tmp/skimp77.imp"
PRINTNAME(NAM);
                                                                //   1340          FAULT(M'NAME',M' SET',M' TWI',M'CE  ')
#line 1340 "regression-compile-tmp/skimp77.imp"
FAULT(1312902469, 542328148, 542398281, 1128603680);
                                                                //   1341          %RETURN ; %FINISH
#line 1341 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1341 "regression-compile-tmp/skimp77.imp"
L_0116:;
                                                                //   1342       N=NEWCELL                                 ;! NEW CELL FOR TAGS
#line 1342 "regression-compile-tmp/skimp77.imp"
N = NEWCELL();
                                                                //   1343       TAG(N)=FORM<<28!TYPE<<24!DIM<<20!LEV<<16!AD ;! FILL IN TAGS
#line 1343 "regression-compile-tmp/skimp77.imp"
TAG[N] = ((((((((((FORM) << (28))) | (((TYPE) << (24))))) | (((DIM) << (20))))) | (((LEV) << (16))))) | (AD));
                                                                //   1344       LINK(N)=LINK(NAM)                         ;! PUSHDOWN ONTO TAGS LIST FOR THIS NAME
#line 1344 "regression-compile-tmp/skimp77.imp"
LINK[N] = LINK[NAM];
                                                                //   1345       LINK(NAM)=N
#line 1345 "regression-compile-tmp/skimp77.imp"
LINK[NAM] = N;
                                                                //   1346       N=NEWCELL
#line 1346 "regression-compile-tmp/skimp77.imp"
N = NEWCELL();
                                                                //   1347       TAG(N)=NAM                                ;! PUSHDOWN NEW CELL ONTO NAME LIST
#line 1347 "regression-compile-tmp/skimp77.imp"
TAG[N] = NAM;
                                                                //   1348       LINK(N)=NAME(LEVEL)                       ;!  FOR NAMES DECLARED AT THIS LEVEL
#line 1348 "regression-compile-tmp/skimp77.imp"
LINK[N] = NAME[LEVEL];
                                                                //   1349       NAME(LEVEL)=N
#line 1349 "regression-compile-tmp/skimp77.imp"
NAME[LEVEL] = N;
                                                                //   1350  %END
#line 1350 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block STORETAG at level 3
                                                                //   1351  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1352  %ROUTINE DUMP(%INTEGER OP,REG,BASE,DISP)
#line 1352 "regression-compile-tmp/skimp77.imp"
void DUMP( int OP, int REG, int BASE, int DISP )
#line 1352 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1353  ! PRINT OUT CURRENT ADDRESS, OPERATION MNEMONIC & OPERANDS
                                                                //   1354  %ROUTINESPEC PMN(%INTEGER I)
#line 1354 "regression-compile-tmp/skimp77.imp"
auto void PMN( int I );
                                                                //   1355  %INTEGER COM
#line 1355 "regression-compile-tmp/skimp77.imp"
int COM;
                                                                //   1356       SPACES(10)
#line 1356 "regression-compile-tmp/skimp77.imp"
_imp_SPACES(10);
                                                                //   1357       COM=' '
#line 1357 "regression-compile-tmp/skimp77.imp"
COM = 32;
                                                                //   1358       PMN(OP)                                   ;! OPERATOR MNEMONIC
#line 1358 "regression-compile-tmp/skimp77.imp"
PMN(OP);
                                                                //   1359       COM=','
#line 1359 "regression-compile-tmp/skimp77.imp"
COM = 44;
                                                                //   1360       PMN(REG)                                  ;! REGISTER MNEMONIC
#line 1360 "regression-compile-tmp/skimp77.imp"
PMN(REG);
                                                                //   1361       %IF DISP>=65536 %THEN %START
#line 1361 "regression-compile-tmp/skimp77.imp"
if (((DISP) < (65536))) goto L_0117;
                                                                //   1362          PRINT SYMBOL(',')
#line 1362 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(44);
                                                                //   1363          SPACES(7)
#line 1363 "regression-compile-tmp/skimp77.imp"
_imp_SPACES(7);
                                                                //   1364          PRINT NAME(DISP-65536)
#line 1364 "regression-compile-tmp/skimp77.imp"
PRINTNAME((((int)(DISP)) - (65536)));
                                                                //   1365          %FINISH %ELSE %START
#line 1365 "regression-compile-tmp/skimp77.imp"
goto L_0118;
#line 1365 "regression-compile-tmp/skimp77.imp"
L_0117:;
                                                                //   1366          %IF BASE=M'BT' %OR BASE=M'CT' %OR BASE=M'PRG' %THEN %START
#line 1366 "regression-compile-tmp/skimp77.imp"
if (((BASE) == (16980))) goto L_0119;
#line 1366 "regression-compile-tmp/skimp77.imp"
if (((BASE) == (17236))) goto L_0119;
#line 1366 "regression-compile-tmp/skimp77.imp"
if (((BASE) != (5263943))) goto L_011a;
#line 1366 "regression-compile-tmp/skimp77.imp"
L_0119:;
                                                                //   1367             PRINT SYMBOL(',')
#line 1367 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(44);
                                                                //   1368             SPACES(7)
#line 1368 "regression-compile-tmp/skimp77.imp"
_imp_SPACES(7);
                                                                //   1369             %FINISH
#line 1369 "regression-compile-tmp/skimp77.imp"
L_011a:;
                                                                //   1370          PMN(BASE)                              ;! BASE MNEMONIC
#line 1370 "regression-compile-tmp/skimp77.imp"
PMN(BASE);
                                                                //   1371          WRITE(DISP,1)                          ;! DISPLACEMENT
#line 1371 "regression-compile-tmp/skimp77.imp"
_imp_WRITE(DISP, 1);
                                                                //   1372          %FINISH
#line 1372 "regression-compile-tmp/skimp77.imp"
L_0118:;
                                                                //   1373       NEWLINE
#line 1373 "regression-compile-tmp/skimp77.imp"
_imp_NEWLINE();
                                                                //   1374       CA=CA+1                                   ;! INCREMENT CURRENT ADDRESS COUNT
#line 1374 "regression-compile-tmp/skimp77.imp"
CA = (((int)(CA)) + (1));
                                                                //   1375  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //   1376  %ROUTINE PMN(%INTEGER I)
#line 1376 "regression-compile-tmp/skimp77.imp"
void PMN( int I )
#line 1376 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1377  ! PRINT MNEMONIC - CHARS INTO ONE WORD
                                                                //   1378  %INTEGER J,K,L
#line 1378 "regression-compile-tmp/skimp77.imp"
int J;
#line 1378 "regression-compile-tmp/skimp77.imp"
int K;
#line 1378 "regression-compile-tmp/skimp77.imp"
int L;
                                                                //   1379       J=2                                   ;! AT LEAST TWO SPACES
#line 1379 "regression-compile-tmp/skimp77.imp"
J = 2;
                                                                //   1380       K=24                                  ;! FIRST SHIFT VALUE
#line 1380 "regression-compile-tmp/skimp77.imp"
K = 24;
                                                                //   1381  L1:   L=I>>K&255                            ;! UNPACK NEXT CHARACTER
#line 1381 "regression-compile-tmp/skimp77.imp"
U_103e:;
#line 1381 "regression-compile-tmp/skimp77.imp"
L = (((int)((((unsigned int)(I)) >> (K)))) & (255));
                                                                //   1382       %IF L=0 %THEN J=J+1 %ELSE PRINT SYMBOL(L)
#line 1382 "regression-compile-tmp/skimp77.imp"
if (((L) != (0))) goto L_011b;
#line 1382 "regression-compile-tmp/skimp77.imp"
J = (((int)(J)) + (1));
#line 1382 "regression-compile-tmp/skimp77.imp"
goto L_011c;
#line 1382 "regression-compile-tmp/skimp77.imp"
L_011b:;
#line 1382 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(L);
#line 1382 "regression-compile-tmp/skimp77.imp"
L_011c:;
                                                                //   1383       K=K-8                                 ;! NEXT SHIFT VALUE
#line 1383 "regression-compile-tmp/skimp77.imp"
K = (((int)(K)) - (8));
                                                                //   1384       %IF K>=0 %THEN ->L1                    ;! MORE CHARS POSSIBLY YET
#line 1384 "regression-compile-tmp/skimp77.imp"
if (((K) < (0))) goto L_011d;
#line 1384 "regression-compile-tmp/skimp77.imp"
goto U_103e;
#line 1384 "regression-compile-tmp/skimp77.imp"
L_011d:;
                                                                //   1385       %IF I=M'BT' %OR I=M'CT' %OR I=M'PRG' %THEN %C
#line 1385 "regression-compile-tmp/skimp77.imp"
if (((I) == (16980))) goto L_011e;
#line 1385 "regression-compile-tmp/skimp77.imp"
if (((I) == (17236))) goto L_011e;
#line 1385 "regression-compile-tmp/skimp77.imp"
if (((I) != (5263943))) goto L_011f;
#line 1385 "regression-compile-tmp/skimp77.imp"
L_011e:;
#line 1385 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(43);
#line 1385 "regression-compile-tmp/skimp77.imp"
goto L_0120;
#line 1385 "regression-compile-tmp/skimp77.imp"
L_011f:;
                                                                //   1386             PRINT SYMBOL('+') %ELSE %START
                                                                //   1387          PRINT SYMBOL(COM)
#line 1387 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(COM);
                                                                //   1388          SPACES(J)                          ;! TO ALLIGN FIELDS CORRECTLY
#line 1388 "regression-compile-tmp/skimp77.imp"
_imp_SPACES(J);
                                                                //   1389          %FINISH
#line 1389 "regression-compile-tmp/skimp77.imp"
L_0120:;
                                                                //   1390  %END
#line 1390 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PMN at level 4
                                                                //   1391  %END
#line 1391 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DUMP at level 3
                                                                //   1392  %END
#line 1392 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SS at level 2
                                                                //   1393  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1394  %ROUTINE FAULT(%INTEGER A,B,C,D)
#line 1394 "regression-compile-tmp/skimp77.imp"
void FAULT( int A, int B, int C, int D )
#line 1394 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1395  ! MONITOR FAULT - A 'PRINT STRING' ROUTINE
                                                                //   1396  %ROUTINESPEC OUT(%INTEGER I)
#line 1396 "regression-compile-tmp/skimp77.imp"
auto void OUT( int I );
                                                                //   1397       OUT(A)
#line 1397 "regression-compile-tmp/skimp77.imp"
OUT(A);
                                                                //   1398       OUT(B)
#line 1398 "regression-compile-tmp/skimp77.imp"
OUT(B);
                                                                //   1399       OUT(C)
#line 1399 "regression-compile-tmp/skimp77.imp"
OUT(C);
                                                                //   1400       OUT(D)
#line 1400 "regression-compile-tmp/skimp77.imp"
OUT(D);
                                                                //   1401       NEWLINE
#line 1401 "regression-compile-tmp/skimp77.imp"
_imp_NEWLINE();
                                                                //   1402       FAULTS=FAULTS+1                     ;! INCREMENT FAULT COUNT
#line 1402 "regression-compile-tmp/skimp77.imp"
FAULTS = (((int)(FAULTS)) + (1));
                                                                //   1403  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
                                                                //   1404  %ROUTINE OUT(%INTEGER I)
#line 1404 "regression-compile-tmp/skimp77.imp"
void OUT( int I )
#line 1404 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1405  ! PRINT OUT PACKED CHARS
                                                                //   1406       PRINT SYMBOL(I>>24) %if I>>24 # 0
#line 1406 "regression-compile-tmp/skimp77.imp"
if ((((int)((((unsigned int)(I)) >> (24)))) == (0))) goto L_0121;
#line 1406 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL((int)((((unsigned int)(I)) >> (24))));
#line 1406 "regression-compile-tmp/skimp77.imp"
L_0121:;
                                                                //   1407       PRINT SYMBOL(I>>16&255) %if I>>16&255 # 0
#line 1407 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(I)) >> (16)))) & (255))) == (0))) goto L_0122;
#line 1407 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL((((int)((((unsigned int)(I)) >> (16)))) & (255)));
#line 1407 "regression-compile-tmp/skimp77.imp"
L_0122:;
                                                                //   1408       PRINT SYMBOL(I>>8&255) %if I>>8&255 # 0
#line 1408 "regression-compile-tmp/skimp77.imp"
if ((((((int)((((unsigned int)(I)) >> (8)))) & (255))) == (0))) goto L_0123;
#line 1408 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL((((int)((((unsigned int)(I)) >> (8)))) & (255)));
#line 1408 "regression-compile-tmp/skimp77.imp"
L_0123:;
                                                                //   1409       PRINT SYMBOL(I&255) %if I&255 # 0
#line 1409 "regression-compile-tmp/skimp77.imp"
if (((((I) & (255))) == (0))) goto L_0124;
#line 1409 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL(((I) & (255)));
#line 1409 "regression-compile-tmp/skimp77.imp"
L_0124:;
                                                                //   1410  %END
#line 1410 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block OUT at level 3
                                                                //   1411  %END
#line 1411 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block FAULT at level 2
                                                                //   1412  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1413  %INTEGERFN CH NEXT
#line 1413 "regression-compile-tmp/skimp77.imp"
int CHNEXT( void )
#line 1413 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1414  ! ALLOCATE NEXT POSITION IN 'CH' ARRAY
                                                                //   1415       %IF CHP>512 %THEN %START            ;! CHARACTER ARRAY FULL
#line 1415 "regression-compile-tmp/skimp77.imp"
if (((CHP) <= (512))) goto L_0125;
                                                                //   1416          FAULT(M'NAME',M'S TO',M'O LO',M'NG  ')
#line 1416 "regression-compile-tmp/skimp77.imp"
FAULT(1312902469, 1394627663, 1327516751, 1313284128);
                                                                //   1417          %STOP ; %FINISH
#line 1417 "regression-compile-tmp/skimp77.imp"
exit(0);
#line 1417 "regression-compile-tmp/skimp77.imp"
L_0125:;
                                                                //   1418       CHP=CHP+1
#line 1418 "regression-compile-tmp/skimp77.imp"
CHP = (((int)(CHP)) + (1));
                                                                //   1419       %RESULT=CHP-1
#line 1419 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return (((int)(CHP)) - (1));
                                                                //   1420  %END
#line 1420 "regression-compile-tmp/skimp77.imp"
} // End of block CHNEXT at level 2
                                                                //   1421  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1422  %INTEGERFN NEWCELL
#line 1422 "regression-compile-tmp/skimp77.imp"
int NEWCELL( void )
#line 1422 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1423  ! ALLOCATE NEW CELL FOR LIST PROCESSING
                                                                //   1424  %INTEGER I
#line 1424 "regression-compile-tmp/skimp77.imp"
int I;
                                                                //   1425       %IF ASL=0 %THEN %START              ;! END OF AVAILABLE SPACE LIST
#line 1425 "regression-compile-tmp/skimp77.imp"
if (((ASL) != (0))) goto L_0126;
                                                                //   1426          FAULT(M'ASL ',M'EMPT',M'Y   ',M'   ')
#line 1426 "regression-compile-tmp/skimp77.imp"
FAULT(1095978016, 1162694740, 1495277600, 2105376);
                                                                //   1427          %STOP ; %FINISH
#line 1427 "regression-compile-tmp/skimp77.imp"
exit(0);
#line 1427 "regression-compile-tmp/skimp77.imp"
L_0126:;
                                                                //   1428       I=ASL                               ;! POINTER TO TOP CELL OF ASL
#line 1428 "regression-compile-tmp/skimp77.imp"
I = ASL;
                                                                //   1429       ASL=LINK(ASL)                       ;! ASL POINTER TO NEXT CELL DOWN
#line 1429 "regression-compile-tmp/skimp77.imp"
ASL = LINK[ASL];
                                                                //   1430       TAG(I)=0                            ;! CLEAR NEW CELL OUT
#line 1430 "regression-compile-tmp/skimp77.imp"
TAG[I] = 0;
                                                                //   1431       LINK(I)=0
#line 1431 "regression-compile-tmp/skimp77.imp"
LINK[I] = 0;
                                                                //   1432       %RESULT=I                           ;! INDEX TO NEW CELL
#line 1432 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return I;
                                                                //   1433  %END
#line 1433 "regression-compile-tmp/skimp77.imp"
} // End of block NEWCELL at level 2
                                                                //   1434  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1435  %INTEGERFN RETURN CELL(%INTEGER I)
#line 1435 "regression-compile-tmp/skimp77.imp"
int RETURNCELL( int I )
#line 1435 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1436  ! DEALLOCATE CELL AND RETURN IT TO ASL
                                                                //   1437  %INTEGER J
#line 1437 "regression-compile-tmp/skimp77.imp"
int J;
                                                                //   1438       J=LINK(I)                           ;! PRESENT LINK VALUE OF CELL
#line 1438 "regression-compile-tmp/skimp77.imp"
J = LINK[I];
                                                                //   1439       LINK(I)=ASL                         ;! LINK TO TOP OF ASL
#line 1439 "regression-compile-tmp/skimp77.imp"
LINK[I] = ASL;
                                                                //   1440       ASL=I                               ;! ASL POINTER TO RETURNED CELL
#line 1440 "regression-compile-tmp/skimp77.imp"
ASL = I;
                                                                //   1441       %RESULT=J                           ;! RETURN VALUE OF LINK
#line 1441 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return J;
                                                                //   1442  %END
#line 1442 "regression-compile-tmp/skimp77.imp"
} // End of block RETURNCELL at level 2
                                                                //   1443  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1444  %ROUTINE PRINT NAME(%INTEGER I)
#line 1444 "regression-compile-tmp/skimp77.imp"
void PRINTNAME( int I )
#line 1444 "regression-compile-tmp/skimp77.imp"
{
                                                                //   1445  ! PRINT NAME FROM HASH POSITION
                                                                //   1446  %INTEGER J,K,L,M
#line 1446 "regression-compile-tmp/skimp77.imp"
int J;
#line 1446 "regression-compile-tmp/skimp77.imp"
int K;
#line 1446 "regression-compile-tmp/skimp77.imp"
int L;
#line 1446 "regression-compile-tmp/skimp77.imp"
int M;
                                                                //   1447       J=TAG(I)                             ;! POINTER TO CH ARRAY
#line 1447 "regression-compile-tmp/skimp77.imp"
J = TAG[I];
                                                                //   1448       K=CH(J)                              ;! LENGTH & FIRST 3 CHARS
#line 1448 "regression-compile-tmp/skimp77.imp"
K = CH[(((int)(J)) - (1))];
                                                                //   1449       L=K>>24                              ;! NUMBER OF CHARS IN NAME
#line 1449 "regression-compile-tmp/skimp77.imp"
L = (int)((((unsigned int)(K)) >> (24)));
                                                                //   1450       M=16                                 ;! FIRST SHIFT VALUE
#line 1450 "regression-compile-tmp/skimp77.imp"
M = 16;
                                                                //   1451  L1:   PRINT SYMBOL(K>>M&255)
#line 1451 "regression-compile-tmp/skimp77.imp"
U_103f:;
#line 1451 "regression-compile-tmp/skimp77.imp"
_imp_PRINTSYMBOL((((int)((((unsigned int)(K)) >> (M)))) & (255)));
                                                                //   1452       L=L-1
#line 1452 "regression-compile-tmp/skimp77.imp"
L = (((int)(L)) - (1));
                                                                //   1453       %IF L=0 %THEN %START
#line 1453 "regression-compile-tmp/skimp77.imp"
if (((L) != (0))) goto L_0127;
                                                                //   1454          SPACES(2)
#line 1454 "regression-compile-tmp/skimp77.imp"
_imp_SPACES(2);
                                                                //   1455          %RETURN ; %FINISH
#line 1455 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1455 "regression-compile-tmp/skimp77.imp"
L_0127:;
                                                                //   1456       M=M-8                                ;! NEXT SHIFT VALUE
#line 1456 "regression-compile-tmp/skimp77.imp"
M = (((int)(M)) - (8));
                                                                //   1457       %IF M<0 %THEN %START
#line 1457 "regression-compile-tmp/skimp77.imp"
if (((M) >= (0))) goto L_0128;
                                                                //   1458          J=J+1
#line 1458 "regression-compile-tmp/skimp77.imp"
J = (((int)(J)) + (1));
                                                                //   1459          K=CH(J)                           ;! NEXT WORD OF CHARS
#line 1459 "regression-compile-tmp/skimp77.imp"
K = CH[(((int)(J)) - (1))];
                                                                //   1460          M=24
#line 1460 "regression-compile-tmp/skimp77.imp"
M = 24;
                                                                //   1461          %FINISH
#line 1461 "regression-compile-tmp/skimp77.imp"
L_0128:;
                                                                //   1462       ->L1
#line 1462 "regression-compile-tmp/skimp77.imp"
goto U_103f;
                                                                //   1463  %END
#line 1463 "regression-compile-tmp/skimp77.imp"
return;
} // End of block PRINTNAME at level 2
                                                                //   1464  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                                //   1465  %ENDOFPROGRAM
#line 1465 "regression-compile-tmp/skimp77.imp"
/* Remove %on %event handler here if present for this block */
return 0;
} // End of block _imp_main at level 1
#line 1465 "regression-compile-tmp/skimp77.imp"
// End of file
