         Edinburgh IMP77 Compiler - Version 8.4
    1 %BEGIN;                               !HAL-70
		.Ltext0:
		_imp_EVENT:
		.LFB0:
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	8(%ebp), %edx
				movl	_imp_event@GOT(%eax), %eax
				movl	%eax, %ebx
				movl	$173, %eax
				movl	%edx, %edi
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				movl	8(%ebp), %eax
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret	$4
		.LFE0:
		_imp_OUTDEV:
		.LFB86:
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				subl	$12, %esp
				leal	__PRETTY_FUNCTION__.5593@GOTOFF(%ebx), %eax
				pushl	%eax
				call	check_outstream@PLT
				addl	$16, %esp
				movl	_imp_OutStream@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE86:
		_imp_SELECTINPUT:
		.LFB93:
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				cmpl	$0, 8(%ebp)
				js	.L8
				movl	_imp_InStream@GOT(%eax), %edx
				movl	8(%ebp), %ecx
				movl	%ecx, (%edx)
				movl	_imp_infile@GOT(%eax), %ecx
				movl	8(%ebp), %edx
				imull	$276, %edx, %edx
				addl	%ecx, %edx
				addl	$4, %edx
				movl	(%edx), %ecx
				movl	_imp_InFile@GOT(%eax), %edx
				movl	%ecx, (%edx)
				subl	$12, %esp
				leal	__PRETTY_FUNCTION__.5621@GOTOFF(%eax), %edx
				pushl	%edx
				movl	%eax, %ebx
				call	check_instream@PLT
				addl	$16, %esp
				jmp	.L5
		.L8:
				nop
		.L5:
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE93:
		_imp_SELECTOUTPUT:
		.LFB94:
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				cmpl	$0, 8(%ebp)
				js	.L12
				movl	_imp_OutStream@GOT(%eax), %edx
				movl	8(%ebp), %ecx
				movl	%ecx, (%edx)
				movl	_imp_outfile@GOT(%eax), %ecx
				movl	8(%ebp), %edx
				imull	$276, %edx, %edx
				addl	%ecx, %edx
				addl	$4, %edx
				movl	(%edx), %ecx
				movl	_imp_OutFile@GOT(%eax), %edx
				movl	%ecx, (%edx)
				subl	$12, %esp
				leal	__PRETTY_FUNCTION__.5625@GOTOFF(%eax), %edx
				pushl	%edx
				movl	%eax, %ebx
				call	check_outstream@PLT
				addl	$16, %esp
				jmp	.L9
		.L12:
				nop
		.L9:
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE94:
				.section	.rodata
				.align 32
		.LC5:
				.byte	33
				.string	"Integer fetch was not aligned at "
				.zero	221
		INTEGER.6096:
		.LFB190:
				leal	4(%esp), %ecx
				andl	$-16, %esp
				pushl	-4(%ecx)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				pushl	%ecx
				subl	$4696, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%esi, -4704(%ebp)
				movl	%ecx, %eax
				movl	4(%eax), %edx
				movl	%edx, -4700(%ebp)
				movl	%gs:20, %ebx
				movl	%ebx, -28(%ebp)
				xorl	%ebx, %ebx
				leal	8(%ebp), %edx
				movl	%edx, -4548(%ebp)
				subl	$8, %esp
				pushl	-4700(%ebp)
				pushl	(%eax)
				movl	%esi, %ebx
				call	_imp_initialise@PLT
				addl	$16, %esp
    2 !    INPUT/OUTPUT STREAMS
    3 %OWNINTEGER MAIN=1, PRE=2;            !INPUT
    4 %OWNINTEGER BIN=1, LIS=2;             !OUTPUT
    5 !    OPERAND TYPES
    6 %OWNINTEGER OPMASK=16_F000;           !MACHINE INSTRUCTION OR MACRO
    7 %OWNINTEGER MACRO=16_A000
    8 %OWNINTEGER SINGLE=16_5000
    9 %OWNINTEGER FMASK=16_0800;            !FORWARD REF
   10 %OWNINTEGER OPFMASK=16_F800;          !=OPMASK+FMASK
   11 %OWNINTEGER UMASK=16_0200;            !UNDEF (FORWARD REF)
   12 %OWNINTEGER BMASK=16_0100;            !BYTE
   13 %OWNINTEGER REG=16_0080;              !REGISTER
   14 %OWNINTEGER MEMMASK=16_0040;          !MEM REF
   15 %OWNINTEGER RELMASK=16_0020;          !RELOCATABLE
   16 %OWNINTEGER XMASK=16_0010;            !INDEXED
   17 %OWNINTEGER REGXMASK=16_0090;         !=REG+XMASK
   18 %OWNINTEGER RELUXMASK=16_0230;        !=RELMASK+UMASK+XMASK
   19 !    TEXT POINTERS (BYTE ADDRESSES)
   20 %OWNINTEGER CODEPOS;                  !(NOT ACTUALLY BYTE)
   21 %OWNINTEGER STARTPOS;                 !START OF CURRENT LINE
   22 %OWNINTEGER GETPOS;                   !INPUT POINTER (NEXT)
   23 %OWNINTEGER PUTPOS
   24 %OWNINTEGER PSEUDOLIM
   25 %OWNINTEGER PRINTPOS;                 !START OF PRINT LINE
   26 %OWNINTEGER FAULTPOS
   27 %OWNINTEGER MACLIM;                   !MACRO DEF LIMIT
   28 !    OTHER POINTERS (WORD ADDRESSES)
   29 %OWNINTEGER MP;                       !MACRO-CALL PARAMETERS
   30 %OWNINTEGER QBASE,QSTART,QLIM,TRANSF; !OPERAND QUEUE
   31 %OWNINTEGER DEFMIN;                   !TAG MIN (DOWN - RESET)
   32 %OWNINTEGER DEFLIM;                   !TAG LIM (FIXED)
   33 %OWNINTEGER ALMAX;                    !ASSEMBLER LAB MAX (UP - RESET)
   34 %OWNINTEGER LABMIN;                   !USER LAB MIN (DOWN - RESET)
   35 %OWNINTEGER LABLIM;                   !USER LAB LIM (FIXED)
   36 %OWNINTEGER BP;                       !BLOCK POINTER (UP - DOWN)
   37 %OWNINTEGER NP;                       !NEST POINTER (DOWN - UP)
   38 %OWNINTEGER STORELIM;                 !(FIXED)
   39
   40 %INTEGER SYM;                         !CURRENT SYMBOL
   41 %INTEGER TERM;                        !TAG TERMINATOR
   42 %INTEGER FSYM;                        !FAULT FLAG SYMBOL
   43 %OWNINTEGER CHARS=0;                  !PRINT CHAR COUNT
   44 %OWNINTEGER LINES=0;                  !PRINT LINE COUNT
   45 %OWNINTEGER BINCOUNT=0;               !OUTPUT RECORD ITEM COUNT
   46 %OWNINTEGER CHECK=0;                  !OUTPUT RECORD CHECKSUM
   47 %OWNINTEGER PASS=-1;                  !CURRENT PASS (-1,0,1)
   48 %OWNINTEGER LIST=-1;                  !LISTING CONTROL
   49 %INTEGER ASSCOND,SKIP;                !ASSEMBLY CONDITIONS (BIT NEST)
   50 %OWNINTEGER SAVE=1;                   !REG SAVE DISPLACEMENT
   51 %OWNINTEGER TEMPS=12;                 !TEMPORARY REGISTER SET (2,3)
   52 %INTEGER LOCTYPE,LOC;                 !LOCATION COUNTER
   53 %INTEGER ACC,ATYPE,AVAL;              !MAIN TEMP REGISTER
   54 %INTEGER CREG,CTYPE,CVAL;             !CONDITION CODE
   55 %INTEGER COND;                        !CONDITION CODE MASK
   56 %INTEGER DREG,DUSE;                   !DESTINATION REGISTER
   57 %INTEGER TYPE,VAL;                    !CURRENT TYPE,VALUE
   58 %INTEGER TAG1,TAG2;                   !TAG (CHARS 1:3, 4:6)
   59 %INTEGER MODE;                        !ASSEMBLY MODE
   60 %INTEGER PEND;                        !TAG ALREADY RECOGNISED
   61 %INTEGER FLAG;                        !JUMPS / AHM
   62 %OWNINTEGER QQ='?'
   63
   64 %OWNINTEGERARRAY BREC(1:52);          !BINARY OUTPUT RECORD
				leal	-4544(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	BREC.6091@GOTOFF(%esi), %eax
				movl	%eax, -4544(%ebp)
				movl	$4, -4540(%ebp)
   65
   66 !!%INTEGER SBOUND
   67 %constINTEGER SBOUND = 16_7F00
   68 !!    SBOUND = FREESTORE-260;           !ALLOW FOR INPUT BUFFER
   69 !!    SBOUND = SBOUND-256 %IF OUTDEV = 2
   70     SELECT OUTPUT(LIS)
				movl	LIS.6024@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_SELECTOUTPUT
				addl	$16, %esp
   71 !!    SBOUND = SBOUND-256 %IF OUTDEV = 2
   72
   73 !! Simulate 18-bit word-addressed PDP9/15 memory:
   74
   75 %ownINTEGERARRAY STORE(1:SBOUND)
				leal	-4476(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	STORE.6093@GOTOFF(%esi), %eax
				movl	%eax, -4476(%ebp)
				movl	$4, -4472(%ebp)
   76
   77 %integerfn integer(%integer p)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$556, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, -556(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
		.LBB71:
   78     %if p&1 # 0 %start
   79       printstring("Integer fetch was not aligned at "); write(p, -1); newline
				leal	-284(%ebp), %eax
				leal	.LC5@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-540(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-284(%ebp), %eax
				leal	-540(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE71:
		.LBB72:
		.LBB73:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-284(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE73:
		.LBE72:
				subl	$8, %esp
				pushl	$-1
				pushl	8(%ebp)
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB74:
		.LBB75:
				call	_imp_newline@PLT
				movl	$0, -544(%ebp)
		.LBE75:
		.LBE74:
		.LBB76:
		.LBB77:
				subl	$12, %esp
				pushl	-544(%ebp)
				call	exit@PLT
		.LBE77:
		.LBE76:
		.LFE190:
				.section	.rodata
				.align 32
		.LC0:
				.byte	18
				.string	"interdata/test.hal"
				.zero	236
				.align 32
		.LC1:
				.byte	19
				.string	"interdata/hal70.def"
				.zero	235
				.align 32
		.LC2:
				.byte	18
				.string	"interdata/test.bin"
				.zero	236
				.align 32
		.LC3:
				.byte	18
				.string	"interdata/test.lis"
				.zero	236
				.globl	main
		main:
		.LFB189:
   80       %stop
   81     %finish
   82     %result = store(P>>1)
   83 %end
   84
   85 %INTEGERFN CHAR(%INTEGER P)
				pushl	%ebp
				movl	%esp, %ebp
				subl	$20, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, -20(%ebp)
   86 !BYTE FETCH
   87
   88     %integer val = store(p>>1)
				movl	8(%ebp), %edx
				shrl	%edx
				subl	$1, %edx
				movl	STORE.6093@GOTOFF(%eax,%edx,4), %eax
				movl	%eax, -4(%ebp)
   89     %if p&1 = 0 %start
				movl	8(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L472
				nop
		.L469:
   90       %result = val&255
				movl	-4(%ebp), %eax
				movzbl	%al, %eax
				jmp	.L470
		.L472:
   91     %else
   92       %result = (val>>8)&255
				movl	-4(%ebp), %eax
				shrl	$8, %eax
				movzbl	%al, %eax
		.L470:
   93     %finish
   94
   95 !!    %OPR 2064;!RCR;  %DAC P
   96 !!    %LAC* P;  %OPR 768;!SZL;  %JMP L1
   97 !!    %OPR 1040;!RTR;  %OPR 1040
   98 !!    %OPR 1040;  %OPR 1040
   99 !!L1: %AND #255;  %JMP* CHAR
  100 !!    %STOP
  101
  102 %END
				leave
				ret
		.LFE191:
		SETINTEGER.6108:
		.LFB192:
  103
  104 %routine set integer(%integer p, k)
				pushl	%ebp
				movl	%esp, %ebp
				subl	$4, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, -4(%ebp)
  105     store(p>>1) = k
				movl	8(%ebp), %edx
				shrl	%edx
				leal	-1(%edx), %ecx
				movl	12(%ebp), %edx
				movl	%edx, STORE.6093@GOTOFF(%eax,%ecx,4)
  106 %end
				nop
				leave
				ret
		.LFE192:
		PUTCHAR.6111:
		.LFB193:
  107
  108 %ROUTINE PUT CHAR(%INTEGER K)
				pushl	%ebp
				movl	%esp, %ebp
				subl	$20, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, -20(%ebp)
  109 !AT PUTPOS WITH POST-INCREMENT
  110 %INTEGER P
  111 !!    %MONITOR 21 %IF PUTPOS>>1-DEFMIN >= 0
  112 !{}    %signal 2,1 %IF PUTPOS>>1-DEFMIN >= 0
  113
  114     p = store(putpos>>1)
				movl	PUTPOS.6041@GOTOFF(%eax), %edx
				shrl	%edx
				subl	$1, %edx
				movl	STORE.6093@GOTOFF(%eax,%edx,4), %edx
				movl	%edx, -4(%ebp)
  115     %if putpos&1 = 0 %start
				movl	PUTPOS.6041@GOTOFF(%eax), %edx
				andl	$1, %edx
				testl	%edx, %edx
				jne	.L481
				nop
		.L477:
  116       p = (p&16_FF00) ! (K&255)
				movl	-4(%ebp), %edx
				movl	%edx, %ecx
				andl	$65280, %ecx
				movl	8(%ebp), %edx
				movzbl	%dl, %edx
				orl	%ecx, %edx
				movl	%edx, -4(%ebp)
  117     %else
				jmp	.L478
		.L481:
  118       p = (p&16_00FF) ! ((K&255)<<8)
				movl	-4(%ebp), %edx
				movzbl	%dl, %ecx
				movl	8(%ebp), %edx
				sall	$8, %edx
				movzwl	%dx, %edx
				orl	%ecx, %edx
				movl	%edx, -4(%ebp)
		.L478:
  119     %finish
  120     store(putpos>>1) = p
				movl	PUTPOS.6041@GOTOFF(%eax), %edx
				shrl	%edx
				leal	-1(%edx), %ecx
				movl	-4(%ebp), %edx
				movl	%edx, STORE.6093@GOTOFF(%eax,%ecx,4)
  121
  122 !!    %LAC PUTPOS;  %OPR 2064;!RCR;  %DAC P
  123 !!    %OPR 768;!SZL;  %JMP L1
  124 !!    %LAC K;  %OPR 1032;!RTL;  %OPR 1032
  125 !!    %OPR 1032;  %OPR 1032;  %DAC K
  126 !!    %LAC #-256;  %OPR 513;!SKP!CMA
  127 !!L1: %LAC #-256;  %AND* P;  %TAD K;  %DAC* P
  128 !!    %ISZ PUTPOS
  129
  130     putpos = putpos+1
				movl	PUTPOS.6041@GOTOFF(%eax), %edx
				addl	$1, %edx
				movl	%edx, PUTPOS.6041@GOTOFF(%eax)
  131 %END
				nop
				leave
				ret
		.LFE193:
		FAULT.6117:
		.LFB194:
  132
  133 %ROUTINE FAULT(%INTEGER K)
				pushl	%ebp
				movl	%esp, %ebp
				subl	$4, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %eax
				movl	%ecx, -4(%ebp)
  134 !RECORD (FIRST) FAULT
  135 !NOT NECESSARILY CULPABLE IN PASS 0
  136     FSYM = K %IF FSYM = ' '
				movl	80(%eax), %edx
				cmpl	$32, %edx
				jne	.L486
				movl	8(%ebp), %edx
				movl	%edx, 80(%eax)
				nop
		.L484:
  137 %END
				jmp	.L484
		.L486:
				nop
				leave
				ret
		.LFE194:
		PRINT.6121:
		.LFB195:
  138
  139 %ROUTINE PRINT(%INTEGER K)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -12(%ebp)
  140 !!    INTEGER(CODEPOS+CHARS) = K
  141     set INTEGER(CODEPOS+CHARS, K)
				movl	CODEPOS.6038@GOTOFF(%ebx), %edx
				movl	CHARS.6062@GOTOFF(%ebx), %eax
				addl	%edx, %eax
				pushl	8(%ebp)
				pushl	%eax
				movl	%esi, %ecx
				call	SETINTEGER.6108
				addl	$8, %esp
  142     CHARS = CHARS+1
				movl	CHARS.6062@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, CHARS.6062@GOTOFF(%ebx)
  143 %END
				nop
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE195:
		PRINTHIT.6127:
		.LFB197:
  144
  145 %ROUTINE PRINT WORD(%INTEGER V)
				pushl	%ebp
				movl	%esp, %ebp
				subl	$40, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %eax
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %edx
				movl	%edx, -12(%ebp)
				xorl	%edx, %edx
				leal	8(%ebp), %edx
				movl	%edx, -16(%ebp)
				movl	%eax, -20(%ebp)
  146     %ROUTINE PRINT HIT(%INTEGER V)
				pushl	%ebp
				movl	%esp, %ebp
				subl	$4, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %edx
				movl	%ecx, -4(%ebp)
  147         V = V&15+'0';  V = V+7 %IF V > '9'
				movl	8(%ebp), %eax
				andl	$15, %eax
				addl	$48, %eax
				movl	%eax, 8(%ebp)
				cmpl	$57, 8(%ebp)
				jle	.L493
				addl	$7, 8(%ebp)
				jmp	.L491
		.L493:
				nop
		.L491:
  148         PRINT(V)
				movl	(%edx), %eax
				pushl	8(%ebp)
				movl	%eax, %ecx
				call	PRINT.6121
				addl	$4, %esp
  149     %END
				nop
				leave
				ret
		.LFE197:
		PRINTWORD.6124:
		.LFB196:
  150     %ROUTINE PRINT1(%INTEGER V)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %ebx
				movl	%ecx, -8(%ebp)
  151         PRINT HIT(V>>4);  PRINT HIT(V)
				movl	8(%ebp), %eax
				shrl	$4, %eax
				pushl	%eax
				movl	%ebx, %ecx
				call	PRINTHIT.6127
				addl	$4, %esp
				pushl	8(%ebp)
				movl	%ebx, %ecx
				call	PRINTHIT.6127
				addl	$4, %esp
  152     %END
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE198:
		PRINTLOC.6134:
		.LFB199:
  153     PRINT1(V>>8);  PRINT1(V)
				movl	8(%ebp), %eax
				shrl	$8, %eax
				movl	%eax, %edx
				subl	$12, %esp
				leal	-20(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	PRINT1.6131
				addl	$16, %esp
				subl	$12, %esp
				leal	-20(%ebp), %eax
				pushl	8(%ebp)
				movl	%eax, %ecx
				call	PRINT1.6131
				addl	$16, %esp
  154 %END
				nop
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L496
				call	__stack_chk_fail_local
		.L496:
				leave
				ret
		.LFE196:
		PRINT1.6131:
		.LFB198:
  155
  156 %ROUTINE PRINT LOC
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$16, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -12(%ebp)
  157     PRINT WORD(LOC)
				movl	76(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	PRINTWORD.6124
				addl	$16, %esp
  158     %IF LOCTYPE&RELMASK # 0 %THEN PRINT('''') %ELSE PRINT(' ')
				movl	RELMASK.6034@GOTOFF(%esi), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	72(%ebx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L505
				subl	$12, %esp
				pushl	$39
				movl	%ebx, %ecx
				call	PRINT.6121
				addl	$16, %esp
				jmp	.L502
		.L505:
				nop
		.L501:
				subl	$12, %esp
				pushl	$32
				movl	%ebx, %ecx
				call	PRINT.6121
				addl	$16, %esp
		.L502:
  159     PRINT(' ')
				subl	$12, %esp
				pushl	$32
				movl	%ebx, %ecx
				call	PRINT.6121
				addl	$16, %esp
  160 %END
				nop
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE199:
		DONEWLINE.6139:
		.LFB200:
  161
  162 %ROUTINE DO NEWLINE
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$36, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, -28(%ebp)
		.LBB98:
		.LBB99:
				call	_imp_newline@PLT
		.LBE99:
		.LBE98:
  163     NEWLINE;  LINES = LINES+1
				movl	LINES.6063@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, LINES.6063@GOTOFF(%ebx)
  164     NEWLINES(2) %AND LINES = 0 %IF LINES = 61
				movl	LINES.6063@GOTOFF(%ebx), %eax
				cmpl	$61, %eax
				jne	.L510
				movl	$2, -12(%ebp)
		.LBB100:
		.LBB101:
				subl	$12, %esp
				pushl	-12(%ebp)
				call	_imp_newlines@PLT
				addl	$16, %esp
		.LBE101:
		.LBE100:
				movl	$0, LINES.6063@GOTOFF(%ebx)
				nop
		.L508:
  165 %END
				jmp	.L508
		.L510:
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE200:
		PRINTIT.6146:
		.LFB202:
  166
  167 %ROUTINE PRINT LINE
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -16(%ebp)
				movl	%esi, -20(%ebp)
  168    %ROUTINE PRINTIT(%INTEGER SUB)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$48, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -44(%ebp)
  169    %OWNINTEGER MARKER=124;            !VERTICAL BAR
  170    %INTEGER P,Q,K
  171        %RETURN %IF CHARS = 0 %AND CHAR(PRINTPOS) = NL
				movl	CHARS.6062@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L531
				movl	PRINTPOS.6043@GOTOFF(%ebx), %edx
				movl	(%esi), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	CHAR.6102
				addl	$4, %esp
				cmpl	$10, %eax
				je	.L532
				jmp	.L513
		.L531:
				nop
		.L513:
				nop
				jmp	.L511
		.L534:
  172        PRINT SYMBOL(FSYM);  SPACE
				movl	(%esi), %eax
				movl	80(%eax), %eax
				movsbl	%al, %eax
				movb	%al, -29(%ebp)
		.LBB102:
		.LBB103:
				movsbl	-29(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE103:
		.LBE102:
		.LBB104:
		.LBB105:
				call	_imp_space@PLT
		.LBE105:
		.LBE104:
  173        P = CODEPOS;  Q = P+CHARS
				movl	CODEPOS.6038@GOTOFF(%ebx), %eax
				movl	%eax, -24(%ebp)
				movl	CHARS.6062@GOTOFF(%ebx), %edx
				movl	-24(%ebp), %eax
				addl	%edx, %eax
				movl	%eax, -16(%ebp)
		.L516:
  174        PRINT SYMBOL(INTEGER(P)) %AND P=P+1 %WHILE P # Q
				movl	-24(%ebp), %eax
				cmpl	-16(%ebp), %eax
				je	.L533
				movl	(%esi), %eax
				subl	$12, %esp
				pushl	-24(%ebp)
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movsbl	%al, %eax
				movb	%al, -28(%ebp)
		.LBB106:
		.LBB107:
				movsbl	-28(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE107:
		.LBE106:
				addl	$1, -24(%ebp)
				jmp	.L516
		.L533:
				nop
		.L518:
  175        %RETURN %IF PRINTPOS = 0
				movl	PRINTPOS.6043@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L534
				nop
		.L520:
				nop
				jmp	.L511
		.L537:
  176        SPACES(17-CHARS)
				movl	CHARS.6062@GOTOFF(%ebx), %eax
				movl	$17, %edx
				subl	%eax, %edx
				movl	%edx, %eax
				movl	%eax, -12(%ebp)
		.LBB108:
		.LBB109:
				subl	$12, %esp
				pushl	-12(%ebp)
				call	_imp_spaces@PLT
				addl	$16, %esp
		.LBE109:
		.LBE108:
  177        P = PRINTPOS;  Q = 0
				movl	PRINTPOS.6043@GOTOFF(%ebx), %eax
				movl	%eax, -24(%ebp)
				movl	$0, -16(%ebp)
		.L521:
  178        %CYCLE
  179           PRINT SYMBOL(MARKER) %IF P = FAULTPOS
				movl	FAULTPOS.6044@GOTOFF(%ebx), %eax
				cmpl	%eax, -24(%ebp)
				jne	.L535
				movl	MARKER.6148@GOTOFF(%ebx), %eax
				movsbl	%al, %eax
				movb	%al, -27(%ebp)
		.LBB110:
		.LBB111:
				movsbl	-27(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
				jmp	.L523
		.L535:
		.LBE111:
		.LBE110:
				nop
		.L523:
  180           K = CHAR(P);  K = SUB %IF P = PSEUDOLIM
				movl	(%esi), %eax
				subl	$12, %esp
				pushl	-24(%ebp)
				movl	%eax, %ecx
				call	CHAR.6102
				addl	$16, %esp
				movl	%eax, -20(%ebp)
				movl	PSEUDOLIM.6042@GOTOFF(%ebx), %eax
				cmpl	%eax, -24(%ebp)
				jne	.L536
				movl	8(%ebp), %eax
				movl	%eax, -20(%ebp)
				jmp	.L529
		.L525:
		.L536:
				nop
		.L529:
				movb	$39, -26(%ebp)
		.LBB112:
		.LBB113:
				movsbl	-26(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.L526:
		.LBE113:
		.LBE112:
  181           PRINT SYMBOL('''') %IF (K!!Q)&128 # 0
  182           %RETURN %IF K = NL
				cmpl	$10, -20(%ebp)
				je	.L537
				nop
		.L528:
				nop
		.L511:
  183           PRINT SYMBOL(K&127)
				movl	-20(%ebp), %eax
				movsbl	%al, %eax
				andl	$127, %eax
				movb	%al, -25(%ebp)
		.LBB114:
		.LBB115:
				movsbl	-25(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE115:
		.LBE114:
  184           P = P+1;  Q = K
				addl	$1, -24(%ebp)
				movl	-20(%ebp), %eax
				movl	%eax, -16(%ebp)
  185        %REPEAT
				jmp	.L521
		.L532:
  186    %END
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE202:
		PRINTLINE.6143:
		.LFB201:
  187     %RETURN %IF PASS = 0
				movl	PASS.6066@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L557
				nop
		.L540:
				nop
		.L538:
  188     %UNLESS LIST < 0 %OR (PRINTPOS=0 %AND FSYM=' ' %AND LIST&1=0) %START
				movl	LIST.6067@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				js	.L558
				movl	PRINTPOS.6043@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L559
				movl	80(%esi), %eax
				cmpl	$32, %eax
				jmp	.L545
		.L559:
				nop
		.L545:
				nop
		.L543:
  189        NEWLINES(3) %IF LINES = 0
				movl	LINES.6063@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L560
				movl	$3, -24(%ebp)
		.LBB116:
		.LBB117:
				subl	$12, %esp
				pushl	-24(%ebp)
				call	_imp_newlines@PLT
				addl	$16, %esp
				jmp	.L548
		.L560:
		.LBE117:
		.LBE116:
				nop
		.L548:
  190        PRINTIT(' ')
				subl	$12, %esp
				leal	-20(%ebp), %eax
				pushl	$32
				movl	%eax, %ecx
				call	PRINTIT.6146
				addl	$16, %esp
  191        DO NEWLINE
				movl	%esi, %ecx
				call	DONEWLINE.6139
				jmp	.L543
		.L558:
  192     %FINISH
  193     %IF FSYM # ' ' %AND OUTDEV # 1 %START
				movl	80(%esi), %eax
				cmpl	$32, %eax
				je	.L561
				call	_imp_OUTDEV
				cmpl	$1, %eax
				je	.L562
				nop
				jmp	.L550
		.L562:
				nop
		.L550:
  194        SELECT OUTPUT(0)
				subl	$12, %esp
				pushl	$0
				call	_imp_SELECTOUTPUT
				addl	$16, %esp
  195        PRINTPOS = STARTPOS %IF PRINTPOS = 0
				movl	PRINTPOS.6043@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L563
				movl	STARTPOS.6039@GOTOFF(%ebx), %eax
				movl	%eax, PRINTPOS.6043@GOTOFF(%ebx)
				jmp	.L553
		.L563:
				nop
		.L553:
  196        PRINT LOC %IF CHARS = 0
				movl	CHARS.6062@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L564
				movl	%esi, %ecx
				call	PRINTLOC.6134
				jmp	.L555
		.L564:
				nop
		.L555:
  197        PRINTIT(NL)
				subl	$12, %esp
				leal	-20(%ebp), %eax
				pushl	$10
				movl	%eax, %ecx
				call	PRINTIT.6146
				addl	$16, %esp
		.LBB118:
		.LBB119:
				call	_imp_newline@PLT
		.LBE119:
		.LBE118:
  198        NEWLINE
  199        SELECT OUTPUT(LIS)
				movl	LIS.6024@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_SELECTOUTPUT
				addl	$16, %esp
				jmp	.L550
		.L561:
  200     %FINISH
  201     FSYM = ' ';  PRINTPOS = 0;  CHARS = 0
				movl	$32, %eax
				movl	%eax, 80(%esi)
				movl	$0, PRINTPOS.6043@GOTOFF(%ebx)
				movl	$0, CHARS.6062@GOTOFF(%ebx)
  202 %END
				nop
				jmp	.L538
		.L557:
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L556
				call	__stack_chk_fail_local
		.L556:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE201:
		PUT.6169:
		.LFB203:
  203
  204 %ROUTINE PUT(%INTEGER V)
				pushl	%ebp
				movl	%esp, %ebp
				subl	$4, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, -4(%ebp)
  205 !STORE 4-BIT ITEM IN BINARY RECORD
  206 %OWNINTEGER HOLD=0
  207     V = V&15
				andl	$15, 8(%ebp)
  208     HOLD = HOLD<<4+V
				movl	HOLD.6171@GOTOFF(%eax), %edx
				movl	%edx, %ecx
				sall	$4, %ecx
				movl	8(%ebp), %edx
				addl	%ecx, %edx
				movl	%edx, HOLD.6171@GOTOFF(%eax)
  209     BINCOUNT = BINCOUNT+1
				movl	BINCOUNT.6064@GOTOFF(%eax), %edx
				addl	$1, %edx
				movl	%edx, BINCOUNT.6064@GOTOFF(%eax)
  210     %IF BINCOUNT&3 = 0 %START
				movl	BINCOUNT.6064@GOTOFF(%eax), %edx
				andl	$1, %edx
				testl	%edx, %edx
				jne	.L569
				nop
		.L567:
  211        BREC(BINCOUNT>>2) = HOLD
				movl	BINCOUNT.6064@GOTOFF(%eax), %edx
				shrl	$2, %edx
				leal	-1(%edx), %ecx
				movl	HOLD.6171@GOTOFF(%eax), %edx
				movl	%edx, BREC.6091@GOTOFF(%eax,%ecx,4)
  212        CHECK = CHECK!!HOLD
				movl	CHECK.6065@GOTOFF(%eax), %ecx
				movl	HOLD.6171@GOTOFF(%eax), %edx
				xorl	%ecx, %edx
				movl	%edx, CHECK.6065@GOTOFF(%eax)
  213        HOLD = 0
				movl	$0, HOLD.6171@GOTOFF(%eax)
  214     %FINISH
  215 %END
				jmp	.L567
		.L569:
				nop
				leave
				ret
		.LFE203:
		PUT1.6177:
		.LFB205:
  216
  217 %ROUTINE PUT WORD(%INTEGER V)
				pushl	%ebp
				movl	%esp, %ebp
				subl	$40, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %eax
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %edx
				movl	%edx, -12(%ebp)
				xorl	%edx, %edx
				leal	8(%ebp), %edx
				movl	%edx, -16(%ebp)
				movl	%eax, -20(%ebp)
  218     %ROUTINE PUT1(%INTEGER V)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %ebx
				movl	%ecx, -8(%ebp)
  219         PUT(V>>4);  PUT(V)
				movl	8(%ebp), %eax
				shrl	$4, %eax
				movl	%eax, %edx
				movl	(%ebx), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	PUT.6169
				addl	$4, %esp
				movl	(%ebx), %eax
				pushl	8(%ebp)
				movl	%eax, %ecx
				call	PUT.6169
				addl	$4, %esp
  220     %END
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE205:
		PUTWORD.6174:
		.LFB204:
  221     PUT1(V>>8);  PUT1(V)
				movl	8(%ebp), %eax
				shrl	$8, %eax
				movl	%eax, %edx
				leal	-20(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	PUT1.6177
				addl	$4, %esp
				leal	-20(%ebp), %eax
				pushl	8(%ebp)
				movl	%eax, %ecx
				call	PUT1.6177
				addl	$4, %esp
  222 %END
				nop
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L574
				call	__stack_chk_fail_local
		.L574:
				leave
				ret
		.LFE204:
		OUTPUTWORD.6185:
		.LFB207:
  223
  224 %ROUTINE OUTPUT RECORD
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -20(%ebp)
		.L578:
  225 %OWNINTEGER SEQ=0
  226 %INTEGER I
  227     %ROUTINE OUTPUT WORD(%INTEGER W)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$36, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, -28(%ebp)
  228         PRINT CH(W>>8&255);  PRINT CH(W&255)
				movl	8(%ebp), %eax
				shrl	$8, %eax
				movsbl	%al, %eax
				movb	%al, -9(%ebp)
		.LBB120:
		.LBB121:
				movsbl	-9(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printch@PLT
				addl	$16, %esp
		.LBE121:
		.LBE120:
				movl	8(%ebp), %eax
				movsbl	%al, %eax
				movb	%al, -10(%ebp)
		.LBB122:
		.LBB123:
				movsbl	-10(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printch@PLT
				addl	$16, %esp
		.LBE123:
		.LBE122:
  229     %END
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE207:
		OUTPUTRECORD.6180:
		.LFB206:
  230     PUT(0) %WHILE BINCOUNT # 208
				movl	BINCOUNT.6064@GOTOFF(%ebx), %eax
				cmpl	$208, %eax
				je	.L592
				pushl	$0
				movl	%esi, %ecx
				call	PUT.6169
				addl	$4, %esp
				jmp	.L578
		.L592:
				nop
		.L580:
  231     SELECT OUTPUT(BIN)
				movl	BIN.6023@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_SELECTOUTPUT
				addl	$16, %esp
  232     %CYCLE I = 1,1,10
				movl	$0, -16(%ebp)
		.L581:
				cmpl	$10, -16(%ebp)
				je	.L593
				addl	$1, -16(%ebp)
				movb	$0, -22(%ebp)
		.LBB124:
		.LBB125:
				movsbl	-22(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printch@PLT
				addl	$16, %esp
		.LBE125:
		.LBE124:
				nop
		.L583:
				movb	$-16, -21(%ebp)
		.LBB126:
		.LBB127:
				movsbl	-21(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printch@PLT
				addl	$16, %esp
		.LBE127:
		.LBE126:
  233        PRINT CH(0);                   !RUNOUT
  234     %REPEAT
				jmp	.L581
		.L593:
  235     PRINT CH(16_F0);                  !HEADER CODE
  236     SEQ = SEQ-1
				movl	SEQ.6182@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, SEQ.6182@GOTOFF(%ebx)
  237     OUTPUT WORD(SEQ);                 !SEQUENCE NUMBER
				movl	SEQ.6182@GOTOFF(%ebx), %edx
				subl	$12, %esp
				leal	-20(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	OUTPUTWORD.6185
				addl	$16, %esp
  238     OUTPUT WORD(\(CHECK!!SEQ));       !CHECKSUM
				movl	CHECK.6065@GOTOFF(%ebx), %edx
				movl	SEQ.6182@GOTOFF(%ebx), %eax
				xorl	%edx, %eax
				notl	%eax
				movl	%eax, %edx
				subl	$12, %esp
				leal	-20(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	OUTPUTWORD.6185
				addl	$16, %esp
  239     %CYCLE I = 1,1,52
				movl	$0, -16(%ebp)
		.L584:
				cmpl	$52, -16(%ebp)
				je	.L594
				addl	$1, -16(%ebp)
				nop
		.L586:
  240        OUTPUT WORD(BREC(I))
				movl	-16(%ebp), %eax
				subl	$1, %eax
				movl	BREC.6091@GOTOFF(%ebx,%eax,4), %edx
				subl	$12, %esp
				leal	-20(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	OUTPUTWORD.6185
				addl	$16, %esp
  241     %REPEAT
				jmp	.L584
		.L594:
  242     BINCOUNT = 0;  CHECK = 0
				movl	$0, BINCOUNT.6064@GOTOFF(%ebx)
				movl	$0, CHECK.6065@GOTOFF(%ebx)
  243     SELECT OUTPUT(LIS)
				movl	LIS.6024@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_SELECTOUTPUT
				addl	$16, %esp
  244 %END
				nop
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L588
				call	__stack_chk_fail_local
		.L588:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE206:
		PLANTVAL.6194:
		.LFB208:
  245
  246 %ROUTINE PLANT VAL
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -28(%ebp)
  247 %INTEGER I,J
  248     TYPE = 0 %IF TYPE = SINGLE
				movl	SINGLE.6027@GOTOFF(%esi), %eax
				movl	68(%ebx), %edx
				cmpl	%eax, %edx
				jne	.L628
				movl	$0, %eax
				movl	%eax, 68(%ebx)
				jmp	.L597
		.L628:
				nop
		.L597:
  249     I = 2;  I = 4 %IF TYPE&OPMASK # 0
				movl	$2, -16(%ebp)
				movl	OPMASK.6025@GOTOFF(%esi), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	68(%ebx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L629
				movl	$4, -16(%ebp)
				jmp	.L599
		.L629:
				nop
		.L599:
  250     %IF PASS > 0 %START
				movl	PASS.6066@GOTOFF(%esi), %eax
				testl	%eax, %eax
				jle	.L630
				nop
				jmp	.L622
		.L639:
  251        OUTPUT RECORD %IF BINCOUNT+I+I >= 208
				movl	BINCOUNT.6064@GOTOFF(%esi), %edx
				movl	-16(%ebp), %eax
				addl	%eax, %edx
				movl	-16(%ebp), %eax
				addl	%edx, %eax
				cmpl	$207, %eax
				jle	.L631
				movl	%ebx, %ecx
				call	OUTPUTRECORD.6180
				jmp	.L603
		.L631:
				nop
		.L603:
  252        %IF I = 4 %START
				cmpl	$4, -16(%ebp)
				jne	.L632
				nop
		.L605:
  253           %IF TYPE&16_4000 = 0 %START
				movl	68(%ebx), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L633
				nop
		.L607:
  254              PUT(11);  J = TYPE!!OPMASK
				subl	$12, %esp
				pushl	$11
				movl	%ebx, %ecx
				call	PUT.6169
				addl	$16, %esp
				movl	OPMASK.6025@GOTOFF(%esi), %eax
				movl	68(%ebx), %edx
				xorl	%edx, %eax
				movl	%eax, -12(%ebp)
  255              TYPE = RELMASK
				movl	RELMASK.6034@GOTOFF(%esi), %eax
				movl	%eax, 68(%ebx)
  256           %finish %ELSE %START
				jmp	.L608
		.L633:
  257              PUT(10);  J = TYPE;  TYPE = 0
				subl	$12, %esp
				pushl	$10
				movl	%ebx, %ecx
				call	PUT.6169
				addl	$16, %esp
				movl	68(%ebx), %eax
				movl	%eax, -12(%ebp)
				movl	$0, %eax
				movl	%eax, 68(%ebx)
		.L608:
  258           %FINISH
  259           PUT WORD(J)
				subl	$12, %esp
				pushl	-12(%ebp)
				movl	%ebx, %ecx
				call	PUTWORD.6174
				addl	$16, %esp
  260           PRINT LINE %IF CHARS # 0
				movl	CHARS.6062@GOTOFF(%esi), %eax
				testl	%eax, %eax
				je	.L634
				movl	%ebx, %ecx
				call	PRINTLINE.6143
				jmp	.L610
		.L634:
				nop
		.L610:
  261           PRINT LOC
				movl	%ebx, %ecx
				call	PRINTLOC.6134
  262           PRINT WORD(J);  PRINT(' ')
				subl	$12, %esp
				pushl	-12(%ebp)
				movl	%ebx, %ecx
				call	PRINTWORD.6124
				addl	$16, %esp
				subl	$12, %esp
				pushl	$32
				movl	%ebx, %ecx
				call	PRINT.6121
				addl	$16, %esp
  263        %finish %ELSE %START
				jmp	.L617
		.L632:
  264           %IF TYPE&RELMASK # 0 %THEN PUT(9) %ELSE PUT(8)
				movl	RELMASK.6034@GOTOFF(%esi), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	68(%ebx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L635
				subl	$12, %esp
				pushl	$9
				movl	%ebx, %ecx
				call	PUT.6169
				addl	$16, %esp
				jmp	.L614
		.L635:
				nop
		.L613:
				subl	$12, %esp
				pushl	$8
				movl	%ebx, %ecx
				call	PUT.6169
				addl	$16, %esp
		.L614:
  265           %IF CHARS # 0 %THEN PRINT(' ') %ELSE PRINT LOC
				movl	CHARS.6062@GOTOFF(%esi), %eax
				testl	%eax, %eax
				je	.L636
				subl	$12, %esp
				pushl	$32
				movl	%ebx, %ecx
				call	PRINT.6121
				addl	$16, %esp
				jmp	.L617
		.L636:
				nop
		.L616:
				movl	%ebx, %ecx
				call	PRINTLOC.6134
		.L611:
		.L617:
  266        %FINISH
  267        PUT WORD(VAL);  PRINT WORD(VAL)
				movl	64(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	PUTWORD.6174
				addl	$16, %esp
				movl	64(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	PRINTWORD.6124
				addl	$16, %esp
  268        PRINT('''') %IF TYPE&RELMASK # 0
				movl	RELMASK.6034@GOTOFF(%esi), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	68(%ebx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L637
				subl	$12, %esp
				pushl	$39
				movl	%ebx, %ecx
				call	PRINT.6121
				addl	$16, %esp
				jmp	.L619
		.L637:
				nop
		.L619:
  269        PRINT LINE %IF TYPE&RELMASK#0 %OR CHARS=15
				movl	RELMASK.6034@GOTOFF(%esi), %eax
				testl	%eax, %eax
				setne	%al
				movzbl	%al, %eax
				movl	68(%ebx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L638
				movl	CHARS.6062@GOTOFF(%esi), %eax
				cmpl	$15, %eax
				jne	.L639
				jmp	.L621
		.L638:
				nop
		.L621:
				movl	%ebx, %ecx
				call	PRINTLINE.6143
				jmp	.L622
		.L601:
		.L630:
				nop
		.L622:
  270     %FINISH
  271     LOC = LOC+I
				movl	76(%ebx), %edx
				movl	-16(%ebp), %eax
				addl	%edx, %eax
				movl	%eax, 76(%ebx)
  272 %END
				nop
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE208:
		NEST.6215:
		.LFB209:
  273
  274 %ROUTINE NEST(%INTEGER K)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %ebx
				movl	%ecx, -8(%ebp)
  275 !!    NP = NP-1;  %MONITOR 23 %IF NP = BP
  276     NP = NP-1;  !{}%signal 2,3 %IF NP = BP
				movl	NP.6057@GOTOFF(%eax), %edx
				subl	$1, %edx
				movl	%edx, NP.6057@GOTOFF(%eax)
  277 !!    INTEGER(NP) = K
  278     set INTEGER(NP, K)
				movl	NP.6057@GOTOFF(%eax), %eax
				pushl	8(%ebp)
				pushl	%eax
				movl	%ebx, %ecx
				call	SETINTEGER.6108
				addl	$8, %esp
  279 %END
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE209:
		SETLAB.6218:
		.LFB210:
  280
  281 %ROUTINE SET LAB(%INTEGER DEST)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -28(%ebp)
  282 %INTEGER D
  283     D = DEST
				movl	8(%ebp), %eax
				movl	%eax, -12(%ebp)
		.L643:
  284     %CYCLE
  285        TYPE = INTEGER(NP)&16_FFF+DEFLIM; !DEST SLOT
				movl	NP.6057@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				andl	$4095, %eax
				movl	%eax, %edx
				movl	DEFLIM.6052@GOTOFF(%esi), %eax
				addl	%edx, %eax
				movl	%eax, 68(%ebx)
  286        NP = NP+1
				movl	NP.6057@GOTOFF(%esi), %eax
				addl	$1, %eax
				movl	%eax, NP.6057@GOTOFF(%esi)
  287        VAL = INTEGER(NP);             !LOC OF JUMP
				movl	NP.6057@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 64(%ebx)
  288        NP = NP+1
				movl	NP.6057@GOTOFF(%esi), %eax
				addl	$1, %eax
				movl	%eax, NP.6057@GOTOFF(%esi)
  289        ATYPE = -1;  CREG = -1
				movl	$-1, %eax
				movl	%eax, 60(%ebx)
				movl	$-1, %eax
				movl	%eax, 56(%ebx)
  290        FLAG = 0;  FLAG = 2 %IF (D-VAL)>>1+PASS <= 16
				movl	$0, %eax
				movl	%eax, 52(%ebx)
				movl	-12(%ebp), %eax
				movl	64(%ebx), %edx
				subl	%edx, %eax
				shrl	%eax
				movl	%eax, %edx
				movl	PASS.6066@GOTOFF(%esi), %eax
				addl	%edx, %eax
				cmpl	$16, %eax
				ja	.L665
				movl	$2, %eax
				movl	%eax, 52(%ebx)
				jmp	.L645
		.L665:
				nop
		.L645:
  291        VAL = VAL-FLAG
				movl	64(%ebx), %edx
				movl	52(%ebx), %eax
				subl	%eax, %edx
				movl	%edx, %eax
				movl	%eax, 64(%ebx)
  292        %IF PASS = 0 %START
				movl	PASS.6066@GOTOFF(%esi), %eax
				testl	%eax, %eax
				jne	.L666
				nop
		.L647:
  293 !!          D = D-FLAG;  INTEGER(TYPE) = D
  294           D = D-FLAG;  set INTEGER(TYPE, D)
				movl	52(%ebx), %eax
				subl	%eax, -12(%ebp)
				movl	68(%ebx), %eax
				subl	$8, %esp
				pushl	-12(%ebp)
				pushl	%eax
				movl	%ebx, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
  295           %IF FLAG # 0 %START
				movl	52(%ebx), %eax
				testl	%eax, %eax
				je	.L667
				nop
				jmp	.L655
		.L668:
  296              LOC = LOC-2;  DEST = DEST-2
				movl	76(%ebx), %eax
				subl	$2, %eax
				movl	%eax, 76(%ebx)
				subl	$2, 8(%ebp)
		.L650:
  297              %WHILE TYPE # ALMAX %CYCLE
				movl	ALMAX.6053@GOTOFF(%esi), %eax
				movl	68(%ebx), %edx
				cmpl	%eax, %edx
				je	.L668
				nop
		.L652:
  298 !!                TYPE = TYPE+1;  INTEGER(TYPE) = INTEGER(TYPE)-2
  299                 TYPE = TYPE+1;  set INTEGER(TYPE,  INTEGER(TYPE)-2)
				movl	68(%ebx), %eax
				addl	$1, %eax
				movl	%eax, 68(%ebx)
				movl	68(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				leal	-2(%eax), %edx
				movl	68(%ebx), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				movl	%ebx, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
  300              %REPEAT
				jmp	.L650
		.L649:
		.L667:
  301           %FINISH
  302        %finish %ELSE %START
				jmp	.L655
		.L666:
  303           FAULT('P') %IF INTEGER(TYPE) # D
				movl	68(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				cmpl	%eax, -12(%ebp)
				je	.L669
				subl	$12, %esp
				pushl	$80
				movl	%ebx, %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L655
		.L653:
		.L669:
				nop
		.L655:
  304        %FINISH
  305        %RETURN %UNLESS INTEGER(NP)&16_1000 # 0
				movl	NP.6057@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				andl	$1, %eax
				testl	%eax, %eax
				je	.L670
				nop
		.L657:
				nop
  306        %IF INTEGER(NP)&16_2000 # 0 %START; !OR
				movl	NP.6057@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
  307           D = VAL+4 %IF D = DEST
				movl	-12(%ebp), %eax
				cmpl	8(%ebp), %eax
				jne	.L671
				movl	64(%ebx), %eax
				addl	$4, %eax
				movl	%eax, -12(%ebp)
				nop
		.L660:
		.L672:
  308        %finish %ELSE %START
				jmp	.L672
		.L671:
				nop
		.L661:
  309           D = DEST
  310        %FINISH
  311     %REPEAT
				jmp	.L643
		.L670:
  312 %END
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE210:
		FORMINST.6296:
		.LFB212:
  313
  314 %ROUTINE ASSEMBLE
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$1132, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%esi, -1136(%ebp)
				movl	%ecx, -1132(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -1056(%ebp)
				movl	%esi, -1060(%ebp)
  315 !   INTERDATA OP-CODES (+FORMATS)
  316 %OWNINTEGER LOAD=16_080F, LB=16_9303
  317 %OWNINTEGER ADD=16_0A0F, SUB=16_0B0F, AND=16_0407
  318 %OWNINTEGER OR=16_0607, XOR=16_0707
  319 %OWNINTEGER SLLS=16_7508, SRLS=16_7408, SLHL=16_0D04, SRHL=16_0C04
  320 %OWNINTEGER COMP=16_0907, CLB=16_9402
  321 %OWNINTEGER STORE=16_0002, STB=16_9202, AHM=16_2102
  322 %OWNINTEGER BT=16_0203, BF=16_0303
  323 !    FORMAT CODES
  324 %OWNINTEGER REGISTER=1, MEM=2, LIT=4, SHORT=8
  325
  326 %OWNINTEGER ZQUERY=0
  327 %INTEGER OP,K,Q,LITVAL,NQ,TYPE1,VAL1,FREE
  328 %SWITCH ASS(-30:-1)
  329
  330 %ROUTINE FORM INST(%INTEGER CODE)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$20, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -28(%ebp)
  331 !    LS 4 BITS OF CODE DEFINE VALID FORMATS
  332 !    INTERDATA OP-CODES FOR DIFFERENT FORMATS
  333 !    ARE SYSTEMATICALLY RELATED
  334 !    SHORT=REGISTER+SINC, LIT=REGISTER+LINC, MEM=REGISTER+MINC
  335 %OWNINTEGER SINC=16_1C00, LINC=16_C000, MINC=16_4000
  336 %INTEGER OP
  337     OP = CODE&16_FFF0
				movl	8(%ebp), %eax
				andl	$65520, %eax
				movl	%eax, -16(%ebp)
  338     %IF TYPE = REG %START
				movl	REG.6032@GOTOFF(%esi), %edx
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				cmpl	%edx, %eax
				jne	.L700
				nop
		.L675:
  339        %IF CODE&REGISTER # 0 %START
				movl	REGISTER.6254@GOTOFF(%esi), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				andl	8(%ebp), %eax
				testl	%eax, %eax
				jne	.L701
				nop
		.L677:
  340           TYPE = SINGLE;  VAL = OP+VAL
				movl	12(%ebx), %eax
				movl	SINGLE.6027@GOTOFF(%esi), %edx
				movl	%edx, 68(%eax)
				movl	12(%ebx), %eax
				movl	64(%eax), %ecx
				movl	12(%ebx), %eax
				movl	-16(%ebp), %edx
				addl	%ecx, %edx
				movl	%edx, 64(%eax)
  341           %RETURN
				jmp	.L673
		.L701:
  342        %FINISH
  343        TYPE = XMASK+VAL;  VAL = 0;    !COERCE TO INDEXED IMMEDIATE
				movl	XMASK.6035@GOTOFF(%esi), %edx
				movl	12(%ebx), %eax
				movl	64(%eax), %ecx
				movl	12(%ebx), %eax
				addl	%ecx, %edx
				movl	%edx, 68(%eax)
				movl	12(%ebx), %eax
				movl	$0, %edx
				movl	%edx, 64(%eax)
				jmp	.L675
		.L700:
  344     %FINISH
  345 !!    %IF TYPE=0 %AND !VAL!<=15 %AND CODE&SHORT#0 %START; !SHORT
  346     %IF TYPE=0 %AND |VAL|<=15 %AND CODE&SHORT#0 %START; !SHORT
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				testl	%eax, %eax
				jne	.L702
				movl	12(%ebx), %eax
				movl	64(%eax), %eax
				movl	%eax, -12(%ebp)
		.LBB128:
		.LBB129:
				movl	-12(%ebp), %eax
				cltd
				movl	%edx, %eax
				xorl	-12(%ebp), %eax
				subl	%edx, %eax
		.LBE129:
		.LBE128:
				cmpl	$15, %eax
				jg	.L703
				movl	SHORT.6257@GOTOFF(%esi), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				andl	8(%ebp), %eax
				testl	%eax, %eax
				jne	.L704
				nop
				jmp	.L680
		.L703:
				nop
				jmp	.L680
		.L704:
				nop
		.L680:
  347        VAL = -VAL %AND OP = OP!!16_100 %IF VAL < 0
				movl	12(%ebx), %eax
				movl	64(%eax), %eax
				testl	%eax, %eax
				jns	.L705
				movl	12(%ebx), %eax
				movl	64(%eax), %edx
				movl	12(%ebx), %eax
				negl	%edx
				movl	%edx, 64(%eax)
				xorl	$256, -16(%ebp)
				jmp	.L685
		.L705:
				nop
		.L685:
  348        TYPE = SINGLE;  VAL = OP+SINC+VAL
				movl	12(%ebx), %eax
				movl	SINGLE.6027@GOTOFF(%esi), %edx
				movl	%edx, 68(%eax)
				movl	SINC.6298@GOTOFF(%esi), %edx
				movl	-16(%ebp), %eax
				leal	(%edx,%eax), %ecx
				movl	12(%ebx), %eax
				movl	64(%eax), %edx
				movl	12(%ebx), %eax
				addl	%ecx, %edx
				movl	%edx, 64(%eax)
  349     %finish %ELSE %START
				jmp	.L686
		.L702:
  350        FAULT('R') %IF TYPE&31 = XMASK; !R0 AS INDEX
				movl	XMASK.6035@GOTOFF(%esi), %eax
				cmpl	$31, %eax
				setne	%al
				movzbl	%al, %edx
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L706
				movl	12(%ebx), %eax
				pushl	$82
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$4, %esp
				jmp	.L688
		.L706:
				nop
		.L688:
  351        %IF TYPE&MEMMASK = 0 %START;   !IMMEDIATE
				movl	MEMMASK.6033@GOTOFF(%esi), %eax
				testl	%eax, %eax
				setne	%al
				movzbl	%al, %edx
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L707
				nop
		.L690:
  352           FAULT('I') %IF CODE&LIT = 0
				movl	LIT.6256@GOTOFF(%esi), %eax
				testl	%eax, %eax
				setne	%al
				movzbl	%al, %eax
				andl	8(%ebp), %eax
				testl	%eax, %eax
				jne	.L708
				movl	12(%ebx), %eax
				pushl	$73
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$4, %esp
				jmp	.L692
		.L708:
				nop
		.L692:
  353           OP = OP+LINC
				movl	LINC.6299@GOTOFF(%esi), %eax
				addl	%eax, -16(%ebp)
  354        %finish %ELSE %START;                  !MEMORY
				jmp	.L693
		.L707:
  355           FAULT('I') %IF CODE&MEM = 0
				movl	MEM.6255@GOTOFF(%esi), %eax
				testl	%eax, %eax
				setne	%al
				movzbl	%al, %eax
				andl	8(%ebp), %eax
				testl	%eax, %eax
				jne	.L709
				movl	12(%ebx), %eax
				pushl	$73
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$4, %esp
				jmp	.L695
		.L709:
				nop
		.L695:
  356           OP = OP+MINC
				movl	MINC.6300@GOTOFF(%esi), %eax
				addl	%eax, -16(%ebp)
		.L693:
  357        %FINISH
  358        OP = OP!!OPMASK %IF TYPE&RELMASK # 0
				movl	RELMASK.6034@GOTOFF(%esi), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %edx
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L710
				movl	OPMASK.6025@GOTOFF(%esi), %eax
				xorl	%eax, -16(%ebp)
				jmp	.L697
		.L710:
				nop
		.L697:
  359        TYPE = TYPE&15+OP
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				andl	$15, %eax
				movl	%eax, %ecx
				movl	12(%ebx), %eax
				movl	-16(%ebp), %edx
				addl	%ecx, %edx
				movl	%edx, 68(%eax)
		.L686:
  360     %FINISH
  361 %END
				nop
		.L673:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE212:
				.section	.rodata
		.LC6:
				.string	"test-in/hal70.imp"
				.align 4
		.LC7:
				.string	"->ASS(%d) out of bounds at %s line %d"
				.align 4
		.LC8:
				.string	"switch jump to undefined label ASS(%d): at %s line %d"
				.align 32
		.LC4:
				.byte	17
				.string	"test-in/hal70.imp"
				.zero	237
		ASSEMBLE.6234:
		.LFB211:
  362
  363 %ROUTINE PLANT JUMP
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -28(%ebp)
  364 %INTEGER I,OP
  365     OP = BF;  COND=\COND %AND OP=BT %IF COND < 0
				movl	BF.6253@GOTOFF(%esi), %eax
				movl	%eax, -20(%ebp)
				movl	12(%ebx), %eax
				movl	48(%eax), %eax
				testl	%eax, %eax
				jns	.L1052
				movl	12(%ebx), %eax
				movl	48(%eax), %edx
				movl	12(%ebx), %eax
				notl	%edx
				movl	%edx, 48(%eax)
				movl	BT.6252@GOTOFF(%esi), %eax
				movl	%eax, -20(%ebp)
				jmp	.L1034
		.L1052:
				nop
		.L1034:
  366     %IF TYPE&(\UMASK) = LOCTYPE %START
				movl	UMASK.6030@GOTOFF(%esi), %eax
				notl	%eax
				movl	%eax, %edx
				movl	12(%ebx), %eax
				movl	72(%eax), %eax
				cmpl	%edx, %eax
				setne	%al
				movzbl	%al, %edx
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1053
				nop
				jmp	.L1049
		.L1056:
  367        I = LOC>>1-VAL>>1
				movl	12(%ebx), %eax
				movl	76(%eax), %eax
				shrl	%eax
				movl	%eax, %edx
				movl	12(%ebx), %eax
				movl	64(%eax), %eax
				shrl	%eax
				subl	%eax, %edx
				movl	%edx, %eax
				movl	%eax, -24(%ebp)
  368 !!       FAULT('J') %AND I=0 %IF FLAG # 0 %AND !I! > 15
  369        FAULT('J') %AND I=0 %IF FLAG # 0 %AND |I| > 15
				movl	12(%ebx), %eax
				movl	52(%eax), %eax
				testl	%eax, %eax
				je	.L1054
				movl	-24(%ebp), %eax
				movl	%eax, -16(%ebp)
		.LBB140:
		.LBB141:
				movl	-16(%ebp), %eax
				cltd
				movl	%edx, %eax
				xorl	-16(%ebp), %eax
				subl	%edx, %eax
		.LBE141:
		.LBE140:
				cmpl	$15, %eax
				jle	.L1055
				movl	12(%ebx), %eax
				pushl	$74
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$4, %esp
				movl	$0, -24(%ebp)
				jmp	.L1038
		.L1054:
				nop
				jmp	.L1038
		.L1055:
				nop
		.L1038:
				movl	-24(%ebp), %eax
				movl	%eax, -12(%ebp)
		.LBB142:
		.LBB143:
				movl	-12(%ebp), %eax
				cltd
				movl	%edx, %eax
				xorl	-12(%ebp), %eax
				subl	%edx, %eax
		.LBE143:
		.LBE142:
  370 !!       %IF !I! <= 15 %START
  371        %IF |I| <= 15 %START
				cmpl	$15, %eax
				jg	.L1056
				nop
				jmp	.L1049
		.L1059:
  372           %IF TYPE&UMASK = 0 %OR FLAG # 0 %START
				movl	UMASK.6030@GOTOFF(%esi), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %edx
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1057
				movl	12(%ebx), %eax
				movl	52(%eax), %eax
				testl	%eax, %eax
				je	.L1058
				jmp	.L1044
		.L1057:
				nop
		.L1044:
				nop
		.L1045:
  373              OP = OP<<1+2;            !0408, 0608
				movl	-20(%ebp), %eax
				addl	%eax, %eax
				addl	$2, %eax
				movl	%eax, -20(%ebp)
  374              TYPE = 0;  VAL = I
				movl	12(%ebx), %eax
				movl	$0, %edx
				movl	%edx, 68(%eax)
				movl	12(%ebx), %eax
				movl	-24(%ebp), %edx
				movl	%edx, 64(%eax)
  375           %finish %ELSE %START
				jmp	.L1049
		.L1058:
  376              FAULT('S') %IF LIST >= 0 %AND LIST&8 # 0
				movl	LIST.6067@GOTOFF(%esi), %eax
				testl	%eax, %eax
				js	.L1059
				movl	12(%ebx), %eax
				pushl	$83
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$4, %esp
				jmp	.L1049
		.L1036:
		.L1047:
		.L1048:
		.L1053:
				nop
		.L1049:
  377           %FINISH
  378        %FINISH
  379     %FINISH
  380     FORM INST(COND<<4+OP)
				movl	12(%ebx), %eax
				movl	48(%eax), %eax
				sall	$4, %eax
				movl	%eax, %edx
				movl	-20(%ebp), %eax
				addl	%edx, %eax
				pushl	%eax
				movl	%ebx, %ecx
				call	FORMINST.6296
				addl	$4, %esp
  381     PLANT VAL
				movl	12(%ebx), %eax
				movl	%eax, %ecx
				call	PLANTVAL.6194
  382     COND = 0
				movl	12(%ebx), %eax
				movl	$0, %edx
				movl	%edx, 48(%eax)
  383 %END
				nop
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE213:
		SETJUMP.6327:
		.LFB214:
  384
  385 %ROUTINE SET JUMP(%INTEGER CASE)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$44, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -44(%ebp)
  386 %INTEGER THOLD,VHOLD,FHOLD
  387 !!    ALMAX = ALMAX+1;  %MONITOR 22 %IF ALMAX = LABMIN
  388     ALMAX = ALMAX+1;  !{}%signal 2,2 %IF ALMAX = LABMIN
				movl	ALMAX.6053@GOTOFF(%esi), %eax
				addl	$1, %eax
				movl	%eax, ALMAX.6053@GOTOFF(%esi)
  389     NEST(LOC);  NEST(ALMAX-DEFLIM+CASE)
				movl	12(%ebx), %eax
				movl	76(%eax), %edx
				movl	12(%ebx), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	NEST.6215
				addl	$4, %esp
				movl	ALMAX.6053@GOTOFF(%esi), %edx
				movl	DEFLIM.6052@GOTOFF(%esi), %eax
				subl	%eax, %edx
				movl	8(%ebp), %eax
				addl	%eax, %edx
				movl	12(%ebx), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	NEST.6215
				addl	$4, %esp
  390     THOLD = TYPE;  VHOLD = VAL;  FHOLD = FLAG
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				movl	%eax, -36(%ebp)
				movl	12(%ebx), %eax
				movl	64(%eax), %eax
				movl	%eax, -32(%ebp)
				movl	12(%ebx), %eax
				movl	52(%eax), %eax
				movl	%eax, -28(%ebp)
  391     TYPE = LOCTYPE;  VAL = INTEGER(ALMAX);  FLAG = 0
				movl	12(%ebx), %edx
				movl	12(%ebx), %eax
				movl	72(%edx), %edx
				movl	%edx, 68(%eax)
				movl	ALMAX.6053@GOTOFF(%esi), %edx
				movl	12(%ebx), %edi
				movl	12(%ebx), %eax
				subl	$12, %esp
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 64(%edi)
				movl	12(%ebx), %eax
				movl	$0, %edx
				movl	%edx, 52(%eax)
  392     TYPE = TYPE+UMASK %IF PASS = 0
				movl	PASS.6066@GOTOFF(%esi), %eax
				testl	%eax, %eax
				jne	.L1064
				movl	UMASK.6030@GOTOFF(%esi), %edx
				movl	12(%ebx), %eax
				movl	68(%eax), %ecx
				movl	12(%ebx), %eax
				addl	%ecx, %edx
				movl	%edx, 68(%eax)
				jmp	.L1062
		.L1064:
				nop
		.L1062:
  393     COND = \COND
				movl	12(%ebx), %eax
				movl	48(%eax), %edx
				movl	12(%ebx), %eax
				notl	%edx
				movl	%edx, 48(%eax)
  394     PLANT JUMP
				movl	%ebx, %ecx
				call	PLANTJUMP.6314
  395     TYPE = THOLD;  VAL = VHOLD;  FLAG = FHOLD
				movl	12(%ebx), %eax
				movl	-36(%ebp), %edx
				movl	%edx, 68(%eax)
				movl	12(%ebx), %eax
				movl	-32(%ebp), %edx
				movl	%edx, 64(%eax)
				movl	12(%ebx), %eax
				movl	-28(%ebp), %edx
				movl	%edx, 52(%eax)
  396 %END
				nop
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE214:
		PLANTINST.6334:
		.LFB215:
  397
  398 %ROUTINE PLANT INST(%INTEGER CODE)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$20, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %ebx
				movl	%ecx, -12(%ebp)
  399     FORM INST(CODE)
				pushl	8(%ebp)
				movl	%ebx, %ecx
				call	FORMINST.6296
				addl	$4, %esp
  400     SET JUMP(16_1000) %IF COND # 0
				movl	12(%ebx), %eax
				movl	48(%eax), %eax
				testl	%eax, %eax
				je	.L1069
				subl	$12, %esp
				pushl	$4096
				movl	%ebx, %ecx
				call	SETJUMP.6327
				addl	$16, %esp
				jmp	.L1067
		.L1069:
				nop
		.L1067:
  401     PLANT VAL
				movl	12(%ebx), %eax
				movl	%eax, %ecx
				call	PLANTVAL.6194
  402 %END
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE215:
		LOADREG.6338:
		.LFB216:
  403
  404 %ROUTINE LOAD REG(%INTEGER R)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -28(%ebp)
  405 %INTEGER OP
  406     %IF ATYPE = TYPE %AND AVAL = VAL %START
				movl	12(%ebx), %eax
				movl	60(%eax), %edx
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				cmpl	%eax, %edx
				jne	.L1093
				movl	12(%ebx), %eax
				movl	44(%eax), %edx
				movl	12(%ebx), %eax
				movl	64(%eax), %eax
				cmpl	%eax, %edx
				jne	.L1094
				nop
				jmp	.L1076
		.L1094:
				nop
		.L1076:
  407        TYPE = REG;  VAL = ACC
				movl	12(%ebx), %eax
				movl	REG.6032@GOTOFF(%esi), %edx
				movl	%edx, 68(%eax)
				movl	12(%ebx), %edx
				movl	12(%ebx), %eax
				movl	40(%edx), %edx
				movl	%edx, 64(%eax)
  408        %RETURN %IF R = ACC
				movl	12(%ebx), %eax
				movl	40(%eax), %eax
				cmpl	%eax, 8(%ebp)
				je	.L1095
				jmp	.L1076
		.L1072:
		.L1093:
				nop
		.L1070:
  409     %FINISH
  410     ATYPE = TYPE %AND AVAL = VAL %IF R = ACC
				movl	12(%ebx), %eax
				movl	40(%eax), %eax
				cmpl	%eax, 8(%ebp)
				jne	.L1096
				movl	12(%ebx), %edx
				movl	12(%ebx), %eax
				movl	68(%edx), %edx
				movl	%edx, 60(%eax)
				movl	12(%ebx), %edx
				movl	12(%ebx), %eax
				movl	64(%edx), %edx
				movl	%edx, 44(%eax)
				jmp	.L1078
		.L1096:
				nop
		.L1078:
  411     ATYPE = -1 %IF (ATYPE=REG %AND AVAL=R) %OR ATYPE&15=R#0
				movl	REG.6032@GOTOFF(%esi), %edx
				movl	12(%ebx), %eax
				movl	60(%eax), %eax
				cmpl	%edx, %eax
				jne	.L1097
				movl	12(%ebx), %eax
				movl	44(%eax), %eax
				cmpl	8(%ebp), %eax
				je	.L1098
				jmp	.L1080
		.L1097:
				nop
		.L1080:
		.LBB144:
				movl	8(%ebp), %eax
				movl	%eax, -16(%ebp)
				cmpl	$15, -16(%ebp)
				setne	%al
				movzbl	%al, %edx
				movl	12(%ebx), %eax
				movl	60(%eax), %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1099
				cmpl	$0, -16(%ebp)
				je	.L1100
		.LBE144:
				jmp	.L1081
		.L1098:
				nop
		.L1081:
				movl	12(%ebx), %eax
				movl	$-1, %edx
				movl	%edx, 60(%eax)
				jmp	.L1083
		.L1099:
		.LBB145:
				nop
				jmp	.L1083
		.L1100:
				nop
		.L1083:
		.LBE145:
  412     %IF TYPE&BMASK = 0 %START
				movl	BMASK.6031@GOTOFF(%esi), %eax
				testl	%eax, %eax
				setne	%al
				movzbl	%al, %edx
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1101
				nop
		.L1085:
  413        OP = LOAD
				movl	LOAD.6236@GOTOFF(%esi), %eax
				movl	%eax, -20(%ebp)
		.LBB146:
  414        OP = ADD %AND TYPE = 0 %IF TYPE!!XMASK = R # 0
				movl	8(%ebp), %eax
				movl	%eax, -12(%ebp)
				movl	XMASK.6035@GOTOFF(%esi), %eax
				cmpl	%eax, -12(%ebp)
				setne	%al
				movzbl	%al, %edx
				movl	12(%ebx), %eax
				movl	68(%eax), %eax
				cmpl	%edx, %eax
				jne	.L1102
				cmpl	$0, -12(%ebp)
				je	.L1103
		.LBE146:
				movl	ADD.6238@GOTOFF(%esi), %eax
				movl	%eax, -20(%ebp)
				movl	12(%ebx), %eax
				movl	$0, %edx
				movl	%edx, 68(%eax)
				jmp	.L1087
		.L1102:
		.LBB147:
				nop
				jmp	.L1087
		.L1103:
				nop
		.L1087:
		.LBE147:
  415        CREG = R;  CTYPE = 0;  CVAL = 0
				movl	12(%ebx), %eax
				movl	8(%ebp), %edx
				movl	%edx, 56(%eax)
				movl	12(%ebx), %eax
				movl	$0, %edx
				movl	%edx, 36(%eax)
				movl	12(%ebx), %eax
				movl	$0, %edx
				movl	%edx, 32(%eax)
  416     %finish %ELSE %START
				jmp	.L1091
		.L1101:
  417        OP = LB
				movl	LB.6237@GOTOFF(%esi), %eax
				movl	%eax, -20(%ebp)
  418        CREG = -1 %IF CREG = R
				movl	12(%ebx), %eax
				movl	56(%eax), %eax
				cmpl	8(%ebp), %eax
				jne	.L1104
				movl	12(%ebx), %eax
				movl	$-1, %edx
				movl	%edx, 56(%eax)
				jmp	.L1091
		.L1089:
		.L1104:
				nop
		.L1091:
  419     %FINISH
  420     PLANT INST(R<<4+OP)
				movl	8(%ebp), %eax
				sall	$4, %eax
				movl	%eax, %edx
				movl	-20(%ebp), %eax
				addl	%edx, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	PLANTINST.6334
				addl	$16, %esp
  421     TYPE = REG;  VAL = R
				movl	12(%ebx), %eax
				movl	REG.6032@GOTOFF(%esi), %edx
				movl	%edx, 68(%eax)
				movl	12(%ebx), %eax
				movl	8(%ebp), %edx
				movl	%edx, 64(%eax)
  422 %END
				nop
				jmp	.L1070
		.L1095:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE216:
		RELEASE.6354:
		.LFB217:
  423
  424 %ROUTINE RELEASE
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$20, %esp
				call	__x86.get_pc_thunk.dx
				addl	$_GLOBAL_OFFSET_TABLE_, %edx
				movl	%ecx, %eax
				movl	%ecx, -24(%ebp)
  425 %INTEGER I
  426     %RETURN %IF TYPE&REGXMASK = 0
				movl	REGXMASK.6036@GOTOFF(%edx), %ecx
				testl	%ecx, %ecx
				setne	%cl
				movzbl	%cl, %ebx
				movl	12(%eax), %ecx
				movl	68(%ecx), %ecx
				andl	%ebx, %ecx
				testl	%ecx, %ecx
				je	.L1117
				nop
		.L1107:
				nop
		.L1105:
  427     I = TYPE&15;  I = VAL %IF I = 0
				movl	12(%eax), %ecx
				movl	68(%ecx), %ecx
				andl	$15, %ecx
				movl	%ecx, -8(%ebp)
				cmpl	$0, -8(%ebp)
				jne	.L1118
				movl	12(%eax), %ecx
				movl	64(%ecx), %ecx
				movl	%ecx, -8(%ebp)
				jmp	.L1110
		.L1118:
				nop
		.L1110:
  428     %IF I = DREG %START
				movl	12(%eax), %ecx
				movl	28(%ecx), %ecx
				cmpl	%ecx, -8(%ebp)
				jne	.L1119
				nop
		.L1112:
  429        DUSE = DUSE-1
				movl	12(%eax), %edx
				movl	24(%edx), %edx
				movl	12(%eax), %eax
				subl	$1, %edx
				movl	%edx, 24(%eax)
  430     %finish %ELSE %START
				jmp	.L1115
		.L1119:
  431        I = 1<<I
				movl	-8(%ebp), %ecx
				movl	$1, %ebx
				sall	%cl, %ebx
				movl	%ebx, %ecx
				movl	%ecx, -8(%ebp)
  432        FREE = FREE!I %IF TEMPS&I # 0
				cmpl	$0, -8(%ebp)
				sete	%cl
				movzbl	%cl, %ecx
				movl	TEMPS.6071@GOTOFF(%edx), %edx
				andl	%ecx, %edx
				testl	%edx, %edx
				jne	.L1120
				movl	8(%eax), %edx
				orl	-8(%ebp), %edx
				movl	%edx, 8(%eax)
				nop
		.L1115:
  433     %FINISH
  434 %END
				jmp	.L1115
		.L1113:
		.L1120:
				nop
				jmp	.L1105
		.L1117:
				addl	$20, %esp
				popl	%ebx
				popl	%ebp
				ret
		.LFE217:
				.section	.rodata
				.align 4
		.LC9:
				.string	"Illegal cycle I = ZQUERY, 1, 15"
		LOADTEMP.6363:
		.LFB218:
  435
  436 %ROUTINE LOAD TEMP
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$828, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%esi, -832(%ebp)
				movl	%ecx, -828(%ebp)
				movl	%gs:20, %ecx
				movl	%ecx, -28(%ebp)
				xorl	%ecx, %ecx
  437 %INTEGER I,J
  438     RELEASE
				movl	%esi, %ecx
				call	RELEASE.6354
  439     %IF DREG >= ZQUERY %AND DUSE = 0 %START
				movl	ZQUERY.6258@GOTOFF(%ebx), %edx
				movl	%esi, %eax
				movl	12(%eax), %eax
				movl	28(%eax), %eax
				cmpl	%edx, %eax
				jl	.L1141
				movl	-832(%ebp), %eax
				movl	12(%eax), %eax
				movl	24(%eax), %eax
				testl	%eax, %eax
				jne	.L1142
				nop
				jmp	.L1123
		.L1142:
				nop
		.L1123:
  440        I = DREG;  DUSE = 1
				movl	-832(%ebp), %edi
				movl	12(%edi), %eax
				movl	28(%eax), %eax
				movl	%eax, -812(%ebp)
				movl	12(%edi), %eax
				movl	$1, %edx
				movl	%edx, 24(%eax)
  441     %finish %ELSE %START
				jmp	.L1125
		.L1141:
  442        J = 1+ZQUERY
				movl	ZQUERY.6258@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, -808(%ebp)
		.LBB148:
  443        %CYCLE I = ZQUERY,1,15
				movl	ZQUERY.6258@GOTOFF(%ebx), %eax
				movl	%eax, -804(%ebp)
		.LBB149:
				movl	$15, %eax
				subl	-804(%ebp), %eax
				movl	%eax, -800(%ebp)
				movl	-800(%ebp), %eax
				xorl	$1, %eax
				shrl	$31, %eax
				movzbl	%al, %eax
		.LBE149:
				testl	%eax, %eax
				je	.L1126
				leal	-540(%ebp), %eax
				subl	$8, %esp
				leal	.LC9@GOTOFF(%ebx), %edx
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L1127
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -836(%ebp)
				jmp	.L1128
		.L1127:
				movl	$443, -836(%ebp)
		.L1128:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L1129
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-284(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L1130
		.L1129:
		.LBB150:
				leal	-284(%ebp), %eax
				leal	.LC4@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-796(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE150:
				leal	-284(%ebp), %eax
				leal	-796(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L1130:
				pushl	$0
				pushl	$1
				pushl	$5
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-540(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				pushl	-836(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-284(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_event@PLT
				addl	$528, %esp
		.L1126:
				movl	-804(%ebp), %eax
				subl	$1, %eax
				movl	%eax, -812(%ebp)
		.L1131:
				cmpl	$15, -812(%ebp)
				je	.L1143
				addl	$1, -812(%ebp)
				nop
		.L1133:
		.LBE148:
  444           ->OK %IF FREE&J # 0 %AND I # DREG
				cmpl	$0, -808(%ebp)
				sete	%al
				movzbl	%al, %eax
				movl	-832(%ebp), %ecx
				movl	8(%ecx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1144
				movl	-832(%ebp), %eax
				movl	12(%eax), %eax
				movl	28(%eax), %eax
				cmpl	%eax, -812(%ebp)
				jne	.L1145
				jmp	.L1135
		.L1144:
				nop
		.L1135:
				nop
		.L1137:
		.LBE151:
  445           J = J<<1
				sall	-808(%ebp)
  446        %REPEAT
				jmp	.L1131
		.L1143:
  447        FAULT('R')
				movl	-832(%ebp), %eax
				movl	12(%eax), %eax
				subl	$12, %esp
				pushl	$82
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L1137
		.L1145:
		.LBB151:
  448 OK:    FREE = FREE-J
				movl	-832(%ebp), %esi
				movl	8(%esi), %eax
				subl	-808(%ebp), %eax
				movl	%eax, 8(%esi)
		.L1125:
  449     %FINISH
  450     LOAD REG(I)
				subl	$12, %esp
				pushl	-812(%ebp)
				movl	-832(%ebp), %ecx
				call	LOADREG.6338
				addl	$16, %esp
  451 %END
				nop
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1139
				call	__stack_chk_fail_local
		.L1139:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE218:
		SWOP.6379:
		.LFB219:
  452
  453 %ROUTINE SWOP
				pushl	%ebp
				movl	%esp, %ebp
				subl	$20, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %eax
				movl	%ecx, -20(%ebp)
  454 %INTEGER K
  455     K = TYPE1;  TYPE1 = TYPE;  TYPE = K
				movl	4(%eax), %edx
				movl	%edx, -4(%ebp)
				movl	12(%eax), %edx
				movl	68(%edx), %edx
				movl	%edx, 4(%eax)
				movl	12(%eax), %edx
				movl	-4(%ebp), %ecx
				movl	%ecx, 68(%edx)
  456     K = VAL1;  VAL1 = VAL;  VAL = K
				movl	(%eax), %edx
				movl	%edx, -4(%ebp)
				movl	12(%eax), %edx
				movl	64(%edx), %edx
				movl	%edx, (%eax)
				movl	12(%eax), %eax
				movl	-4(%ebp), %edx
				movl	%edx, 64(%eax)
  457 %END
				nop
				leave
				ret
		.LFE219:
		PROGREF.6383:
		.LFB220:
  458
  459 %ROUTINE PROGREF
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.dx
				addl	$_GLOBAL_OFFSET_TABLE_, %edx
				movl	%ecx, %eax
				movl	%ecx, -8(%ebp)
  460     %IF TYPE&RELUXMASK = XMASK %AND VAL = 0 %START
				movl	RELUXMASK.6037@GOTOFF(%edx), %ebx
				movl	XMASK.6035@GOTOFF(%edx), %ecx
				cmpl	%ecx, %ebx
				setne	%cl
				movzbl	%cl, %ebx
				movl	12(%eax), %ecx
				movl	68(%ecx), %ecx
				andl	%ebx, %ecx
				testl	%ecx, %ecx
				jne	.L1155
				movl	12(%eax), %ecx
				movl	64(%ecx), %ecx
				testl	%ecx, %ecx
				jne	.L1156
				nop
				jmp	.L1150
		.L1156:
				nop
		.L1150:
  461        VAL = TYPE&15;  TYPE = REG
				movl	12(%eax), %ecx
				movl	68(%ecx), %ebx
				movl	12(%eax), %ecx
				andl	$15, %ebx
				movl	%ebx, 64(%ecx)
				movl	12(%eax), %ecx
				movl	REG.6032@GOTOFF(%edx), %ebx
				movl	%ebx, 68(%ecx)
				jmp	.L1150
		.L1155:
  462     %FINISH
  463     TYPE = TYPE!MEMMASK %IF TYPE # REG
				movl	REG.6032@GOTOFF(%edx), %ebx
				movl	12(%eax), %ecx
				movl	68(%ecx), %ecx
				cmpl	%ebx, %ecx
				je	.L1157
				movl	MEMMASK.6033@GOTOFF(%edx), %ecx
				movl	12(%eax), %edx
				movl	68(%edx), %edx
				movl	12(%eax), %eax
				orl	%ecx, %edx
				movl	%edx, 68(%eax)
				nop
		.L1153:
  464 %END
				jmp	.L1153
		.L1157:
				nop
				addl	$4, %esp
				popl	%ebx
				popl	%ebp
				ret
		.LFE220:
		TEMP.6394:
		.LFB221:
  465
  466     Q = QSTART
				movl	QSTART.6048@GOTOFF(%ebx), %eax
				movl	%eax, -1108(%ebp)
		.L712:
  467 NEW:NQ = QSTART;  FREE = TEMPS
				movl	QSTART.6048@GOTOFF(%ebx), %eax
				movl	%eax, -1100(%ebp)
				movl	TEMPS.6071@GOTOFF(%ebx), %eax
				movl	%eax, -1064(%ebp)
  468     TYPE = INTEGER(Q);  Q = Q+1
				subl	$12, %esp
				pushl	-1108(%ebp)
				movl	-1136(%ebp), %esi
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 68(%esi)
				addl	$1, -1108(%ebp)
  469     VAL = INTEGER(Q);  Q = Q+1
				subl	$12, %esp
				pushl	-1108(%ebp)
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 64(%esi)
				addl	$1, -1108(%ebp)
		.L713:
		.L714:
  470
  471 GET:%CYCLE
  472        %RETURN %IF Q = QLIM
				movl	QLIM.6049@GOTOFF(%ebx), %eax
				cmpl	%eax, -1108(%ebp)
				je	.L942
				nop
		.L716:
				nop
				jmp	.L711
		.L1001:
  473        K = INTEGER(Q);  Q = Q+1
				subl	$12, %esp
				pushl	-1108(%ebp)
				movl	-1136(%ebp), %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, -1112(%ebp)
				addl	$1, -1108(%ebp)
  474        ->ASS(K) %IF K < 0
				cmpl	$0, -1112(%ebp)
				jns	.L943
				movl	$474, -1096(%ebp)
				leal	.LC6@GOTOFF(%ebx), %eax
				movl	%eax, -1092(%ebp)
				movl	-1112(%ebp), %eax
				movl	%eax, -1088(%ebp)
				nop
		.L720:
				nop
		.L719:
  475 !!       INTEGER(NQ) = TYPE1;  INTEGER(NQ+1) = VAL1
  476        set INTEGER(NQ, TYPE1);  set INTEGER(NQ+1, VAL1)
				movl	-1068(%ebp), %eax
				subl	$8, %esp
				pushl	%eax
				pushl	-1100(%ebp)
				movl	-1136(%ebp), %edi
				movl	%edi, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
				movl	-1100(%ebp), %eax
				leal	1(%eax), %edx
				movl	-1072(%ebp), %eax
				subl	$8, %esp
				pushl	%eax
				pushl	%edx
				movl	%edi, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
  477        NQ = NQ+2
				addl	$2, -1100(%ebp)
  478        TYPE1 = TYPE;  VAL1 = VAL
				movl	68(%edi), %eax
				movl	%eax, -1068(%ebp)
				movl	64(%edi), %eax
				movl	%eax, -1072(%ebp)
  479        TYPE = K;  VAL = INTEGER(Q);  Q = Q+1
				movl	-1112(%ebp), %eax
				movl	%eax, 68(%edi)
				subl	$12, %esp
				pushl	-1108(%ebp)
				movl	%edi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 64(%edi)
				addl	$1, -1108(%ebp)
  480     %REPEAT
				jmp	.L713
		.L964:
  481
  482 %PREDICATE TEMP
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.dx
				addl	$_GLOBAL_OFFSET_TABLE_, %edx
				movl	%ecx, %eax
				movl	%ecx, -8(%ebp)
  483     %FALSE %IF TYPE1 # REG
				movl	REG.6032@GOTOFF(%edx), %ecx
				movl	4(%eax), %ebx
				cmpl	%ecx, %ebx
				je	.L1172
				movl	$0, %eax
				jmp	.L1161
		.L1172:
				nop
		.L1160:
  484     %IF VAL1 = DREG %START
				movl	(%eax), %ebx
				movl	12(%eax), %ecx
				movl	28(%ecx), %ecx
				cmpl	%ecx, %ebx
				jne	.L1173
				nop
		.L1163:
  485        %FALSE %IF DUSE # 1
				movl	12(%eax), %eax
				movl	24(%eax), %eax
				cmpl	$1, %eax
				je	.L1174
				movl	$0, %eax
				jmp	.L1161
		.L1174:
				nop
		.L1165:
  486     %finish %ELSE %START
				jmp	.L1168
		.L1173:
  487        %FALSE %IF 1<<VAL1&TEMPS = 0
				movl	TEMPS.6071@GOTOFF(%edx), %edx
				testl	%edx, %edx
				setne	%dl
				movzbl	%dl, %edx
				movl	(%eax), %eax
				movl	%eax, %ecx
				sarl	%cl, %edx
				movl	%edx, %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1175
				movl	$0, %eax
				jmp	.L1161
		.L1166:
		.L1175:
				nop
		.L1168:
  488     %FINISH
  489     %TRUE
				movl	$1, %eax
		.L1161:
  490 %END
				addl	$4, %esp
				popl	%ebx
				popl	%ebp
				ret
		.LFE221:
		LOOKUP.6496:
		.LFB222:
  491
  492 NOP: K = 0;                           !NOT SYMMETRIC
				movl	$0, -1112(%ebp)
				jmp	.L722
		.L967:
  493 BOP:%IF MODE <= 0 %OR (TYPE = 0 %AND TYPE1 = 0) %START
				movl	-1136(%ebp), %eax
				movl	20(%eax), %eax
				testl	%eax, %eax
				jle	.L944
				movl	-1136(%ebp), %eax
				movl	68(%eax), %eax
				testl	%eax, %eax
				jne	.L945
				movl	-1068(%ebp), %eax
				testl	%eax, %eax
				jne	.L946
				jmp	.L724
		.L944:
				nop
		.L724:
				nop
				jmp	.L726
		.L946:
				nop
		.L726:
  494        FAULT('A') %IF TYPE # 0
				movl	-1136(%ebp), %eax
				movl	68(%eax), %eax
				testl	%eax, %eax
				je	.L947
				subl	$12, %esp
				pushl	$65
				movl	-1136(%ebp), %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L728
		.L947:
				nop
		.L728:
  495        TYPE = TYPE1;  VAL = LITVAL
				movl	-1068(%ebp), %eax
				movl	-1136(%ebp), %esi
				movl	%eax, 68(%esi)
				movl	-1104(%ebp), %eax
				movl	%eax, 64(%esi)
  496     %finish %ELSE %START
				jmp	.L750
		.L945:
  497        %IF %NOT TEMP %OR (TYPE=REG %AND VAL=DREG %AND DUSE=1 %AND K#0) %START
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	TEMP.6394
				testl	%eax, %eax
				je	.L948
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1136(%ebp), %edi
				movl	68(%edi), %edx
				cmpl	%eax, %edx
				jne	.L949
				movl	-1136(%ebp), %eax
				movl	64(%eax), %edx
				movl	28(%eax), %eax
				cmpl	%eax, %edx
				jne	.L950
				movl	-1136(%ebp), %eax
				movl	24(%eax), %eax
				cmpl	$1, %eax
				jne	.L951
				cmpl	$0, -1112(%ebp)
				je	.L952
				jmp	.L731
		.L948:
				nop
		.L731:
				nop
				jmp	.L738
		.L950:
				nop
				jmp	.L738
		.L951:
				nop
				jmp	.L738
		.L952:
				nop
				jmp	.L738
		.L954:
  498           SWOP
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	SWOP.6379
  499           %IF K = 0 %OR %NOT TEMP %START
				cmpl	$0, -1112(%ebp)
				je	.L953
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	TEMP.6394
				testl	%eax, %eax
				jne	.L954
				jmp	.L737
		.L953:
				nop
		.L737:
				nop
		.L738:
  500              LOAD TEMP;  SWOP
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	LOADTEMP.6363
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	SWOP.6379
				jmp	.L738
		.L733:
		.L949:
  501           %FINISH
  502        %FINISH
  503        LOAD TEMP %IF TYPE&BMASK # 0 %OR (OP&MEM=0 %AND TYPE&MEMMASK#0)
				movl	BMASK.6031@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				setne	%al
				movzbl	%al, %eax
				movl	-1136(%ebp), %esi
				movl	68(%esi), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L955
				movl	MEM.6255@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				setne	%al
				movzbl	%al, %eax
				andl	-1116(%ebp), %eax
				testl	%eax, %eax
				jne	.L956
				movl	MEMMASK.6033@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-1136(%ebp), %ecx
				movl	68(%ecx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L957
				jmp	.L740
		.L955:
				nop
		.L740:
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	LOADTEMP.6363
				jmp	.L742
		.L956:
				nop
				jmp	.L742
		.L957:
				nop
		.L742:
  504        RELEASE
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	RELEASE.6354
  505        PLANT INST(VAL1<<4+OP)
				movl	-1072(%ebp), %eax
				sall	$4, %eax
				movl	%eax, %edx
				movl	-1116(%ebp), %eax
				addl	%eax, %edx
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	PLANTINST.6334
				addl	$16, %esp
  506        TYPE = REG;  VAL = VAL1
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1136(%ebp), %esi
				movl	%eax, 68(%esi)
				movl	-1072(%ebp), %eax
				movl	%eax, 64(%esi)
  507        CREG = VAL;  CTYPE = 0;  CVAL = 0
				movl	64(%esi), %eax
				movl	%eax, 56(%esi)
				movl	$0, %eax
				movl	%eax, 36(%esi)
				movl	$0, %eax
				movl	%eax, 32(%esi)
  508        ATYPE = -1 %IF ACC = VAL %OR ATYPE&15 = VAL # 0
				movl	%esi, %eax
				movl	40(%eax), %edx
				movl	%esi, %eax
				movl	64(%eax), %eax
				cmpl	%eax, %edx
				je	.L958
		.LBB130:
				movl	-1136(%ebp), %edi
				movl	64(%edi), %eax
				movl	%eax, -1076(%ebp)
				cmpl	$15, -1076(%ebp)
				setne	%al
				movzbl	%al, %eax
				movl	60(%edi), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L959
				cmpl	$0, -1076(%ebp)
				je	.L960
		.LBE130:
				jmp	.L744
		.L958:
				nop
		.L744:
				movl	$-1, %eax
				movl	-1136(%ebp), %edi
				movl	%eax, 60(%edi)
				jmp	.L746
		.L959:
		.LBB131:
				nop
				jmp	.L746
		.L960:
				nop
		.L746:
		.LBE131:
  509        ATYPE = -1 %IF ATYPE = REG %AND AVAL = VAL
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1136(%ebp), %esi
				movl	60(%esi), %edx
				cmpl	%eax, %edx
				jne	.L961
				movl	-1136(%ebp), %eax
				movl	44(%eax), %edx
				movl	64(%eax), %eax
				cmpl	%eax, %edx
				jne	.L962
				movl	$-1, %eax
				movl	-1136(%ebp), %ecx
				movl	%eax, 60(%ecx)
				jmp	.L750
		.L729:
		.L749:
		.L961:
				nop
				jmp	.L750
		.L962:
				nop
		.L750:
  510     %FINISH
  511
  512 POP:NQ = NQ-2
				subl	$2, -1100(%ebp)
  513     TYPE1 = INTEGER(NQ);  VAL1 = INTEGER(NQ+1)
				subl	$12, %esp
				pushl	-1100(%ebp)
				movl	-1136(%ebp), %esi
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, -1068(%ebp)
				movl	-1100(%ebp), %eax
				addl	$1, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, -1072(%ebp)
  514     ->GET
				jmp	.L713
		.L751:
  515
  516 ASS(-2):
  517     OP = SUB
				movl	SUB.6239@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
  518     ->NOP %IF MODE > 0 %AND TYPE # 0
				nop
		.L721:
				movl	-1136(%ebp), %eax
				movl	20(%eax), %eax
				testl	%eax, %eax
				jle	.L963
				movl	-1136(%ebp), %eax
				movl	68(%eax), %eax
				testl	%eax, %eax
				jne	.L964
				jmp	.L754
		.L963:
				nop
		.L754:
  519     TYPE1 = 0 %AND TYPE = 0 %IF MODE <= 0 %AND TYPE1 = TYPE
				movl	-1136(%ebp), %eax
				movl	20(%eax), %eax
				testl	%eax, %eax
				jg	.L965
				movl	-1136(%ebp), %eax
				movl	68(%eax), %eax
				movl	-1068(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L966
				movl	$0, %eax
				movl	%eax, -1068(%ebp)
				movl	$0, %eax
				movl	-1136(%ebp), %edi
				movl	%eax, 68(%edi)
				jmp	.L757
		.L965:
				nop
				jmp	.L757
		.L966:
				nop
		.L757:
  520     VAL = -VAL
				movl	-1136(%ebp), %ecx
				movl	64(%ecx), %eax
				negl	%eax
				movl	%eax, 64(%ecx)
		.L759:
  521 ASS(-1):
  522     OP = ADD;  LITVAL = VAL1+VAL
				movl	ADD.6238@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
				movl	-1136(%ebp), %esi
				movl	64(%esi), %eax
				movl	-1072(%ebp), %edx
				addl	%edx, %eax
				movl	%eax, -1104(%ebp)
  523     ->BOP %UNLESS TYPE = 0
				nop
				jmp	.L722
		.L971:
				movl	68(%esi), %eax
				testl	%eax, %eax
				jne	.L967
				nop
		.L761:
  524     %IF TYPE1&MEMMASK # 0 %AND MODE > 0 %START
				movl	MEMMASK.6033@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-1068(%ebp), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L968
				movl	-1136(%ebp), %eax
				movl	20(%eax), %eax
				testl	%eax, %eax
				jle	.L969
				nop
				jmp	.L763
		.L969:
				nop
		.L763:
  525        SWOP;  LOAD TEMP;  SWOP
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	SWOP.6379
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	LOADTEMP.6363
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	SWOP.6379
				jmp	.L763
		.L968:
  526     %FINISH
  527     %IF TYPE1 = REG %START
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1068(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L970
				nop
		.L766:
  528        ->BOP %IF VAL1 = 0
				nop
		.L722:
				movl	-1072(%ebp), %eax
				testl	%eax, %eax
				je	.L971
				nop
		.L768:
  529        TYPE1 = XMASK+VAL1;  LITVAL = VAL
				movl	XMASK.6035@GOTOFF(%ebx), %eax
				movl	-1072(%ebp), %edx
				addl	%edx, %eax
				movl	%eax, -1068(%ebp)
				movl	-1136(%ebp), %eax
				movl	64(%eax), %eax
				movl	%eax, -1104(%ebp)
				jmp	.L766
		.L970:
  530     %FINISH
  531     TYPE = TYPE1;  VAL = LITVAL
				movl	-1068(%ebp), %eax
				movl	-1136(%ebp), %edi
				movl	%eax, 68(%edi)
				movl	-1104(%ebp), %eax
				movl	%eax, 64(%edi)
  532     ->POP
				jmp	.L750
		.L769:
  533 ASS(-3):
  534     OP = AND;  LITVAL = VAL1&VAL
				movl	AND.6240@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
				movl	-1136(%ebp), %eax
				movl	64(%eax), %eax
				movl	-1072(%ebp), %edx
				andl	%edx, %eax
				movl	%eax, -1104(%ebp)
  535     ->BOP
				jmp	.L722
		.L770:
  536 ASS(-4):
  537     OP = OR;  LITVAL = VAL1!VAL
				movl	OR.6241@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
				movl	-1136(%ebp), %eax
				movl	64(%eax), %eax
				movl	-1072(%ebp), %edx
				orl	%edx, %eax
				movl	%eax, -1104(%ebp)
  538     ->BOP
				jmp	.L722
		.L771:
  539 ASS(-5):
  540     OP = XOR;  LITVAL = VAL1!!VAL
				movl	XOR.6242@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
				movl	-1136(%ebp), %eax
				movl	64(%eax), %eax
				movl	-1072(%ebp), %edx
				xorl	%edx, %eax
				movl	%eax, -1104(%ebp)
  541     ->BOP
				jmp	.L722
		.L772:
  542 ASS(-6):
  543     OP = SLLS;  LITVAL = VAL1<<VAL
				movl	SLLS.6243@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
				movl	-1136(%ebp), %esi
				movl	64(%esi), %eax
				movl	-1072(%ebp), %edx
				movl	%eax, %ecx
				sall	%cl, %edx
				movl	%edx, %eax
				movl	%eax, -1104(%ebp)
  544     OP = SLHL %IF TYPE # 0
				movl	68(%esi), %eax
				testl	%eax, %eax
				je	.L972
				movl	SLHL.6245@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
				nop
		.L774:
  545     ->NOP
				jmp	.L721
		.L972:
				jmp	.L721
		.L775:
  546 ASS(-7):
  547     OP = SRLS;  LITVAL = VAL1>>VAL
				movl	SRLS.6244@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
				movl	-1072(%ebp), %eax
				movl	%eax, %edx
				movl	-1136(%ebp), %edi
				movl	64(%edi), %eax
				movl	%eax, %ecx
				shrl	%cl, %edx
				movl	%edx, %eax
				movl	%eax, -1104(%ebp)
  548     OP = SRHL %IF TYPE # 0
				movl	68(%edi), %eax
				testl	%eax, %eax
				je	.L973
				movl	SRHL.6246@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
				nop
		.L777:
  549     ->NOP
				jmp	.L721
		.L973:
				jmp	.L721
		.L778:
  550
  551 ASS(-8):                              !TYPE_VAL
  552     TYPE = VAL1
				movl	-1072(%ebp), %eax
				movl	-1136(%ebp), %ecx
				movl	%eax, 68(%ecx)
  553     TYPE = 0 %IF TYPE&OPMASK = MACRO; !SAFETY
				movl	OPMASK.6025@GOTOFF(%ebx), %edx
				movl	MACRO.6026@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				setne	%al
				movzbl	%al, %eax
				movl	68(%ecx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L974
				movl	$0, %eax
				movl	-1136(%ebp), %esi
				movl	%eax, 68(%esi)
				jmp	.L780
		.L974:
				nop
		.L780:
  554     TYPE = 0 %IF TYPE&(OPMASK+FMASK) = FMASK
				movl	OPMASK.6025@GOTOFF(%ebx), %edx
				movl	FMASK.6028@GOTOFF(%ebx), %eax
				addl	%eax, %edx
				movl	FMASK.6028@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				setne	%al
				movzbl	%al, %eax
				movl	-1136(%ebp), %ecx
				movl	68(%ecx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L975
				movl	$0, %eax
				movl	-1136(%ebp), %edi
				movl	%eax, 68(%edi)
				nop
		.L782:
  555     ->POP
				jmp	.L750
		.L975:
				jmp	.L750
		.L783:
  556
  557 ASS(-11):                             !COMPARE
  558     K = INTEGER(Q);  Q = Q+1
				subl	$12, %esp
				pushl	-1108(%ebp)
				movl	-1136(%ebp), %esi
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, -1112(%ebp)
				addl	$1, -1108(%ebp)
  559     %IF MODE <= 0 %START
				movl	%esi, %eax
				movl	20(%eax), %eax
				testl	%eax, %eax
				jg	.L976
				nop
		.L785:
  560        VAL1 = TYPE1 %AND VAL = TYPE %IF TYPE1 # TYPE
				movl	-1136(%ebp), %eax
				movl	68(%eax), %eax
				movl	-1068(%ebp), %edx
				cmpl	%eax, %edx
				je	.L977
				movl	-1068(%ebp), %eax
				movl	%eax, -1072(%ebp)
				movl	-1136(%ebp), %ecx
				movl	68(%ecx), %eax
				movl	%eax, 64(%ecx)
				jmp	.L787
		.L977:
				nop
		.L787:
  561        LITVAL = \3
				movl	$-4, -1104(%ebp)
  562        LITVAL = 1 %IF VAL1 < VAL
				movl	-1136(%ebp), %eax
				movl	64(%eax), %eax
				movl	-1072(%ebp), %edx
				cmpl	%eax, %edx
				jge	.L978
				movl	$1, -1104(%ebp)
				jmp	.L789
		.L978:
				nop
		.L789:
  563        LITVAL = 2 %IF VAL1 > VAL
				movl	-1136(%ebp), %eax
				movl	64(%eax), %eax
				movl	-1072(%ebp), %edx
				cmpl	%eax, %edx
				jle	.L979
				movl	$2, -1104(%ebp)
				jmp	.L791
		.L979:
				nop
		.L791:
  564        K = K&LITVAL;  K = \0 %IF K # 0
				movl	-1104(%ebp), %eax
				andl	%eax, -1112(%ebp)
				cmpl	$0, -1112(%ebp)
				je	.L980
				movl	$-1, -1112(%ebp)
				nop
		.L793:
  565     %finish %ELSE %UNLESS CREG=16 %AND TYPE1=CTYPE %AND VAL1=CVAL %AND TYPE=VAL=0 %START
				jmp	.L824
		.L980:
				jmp	.L824
		.L976:
				movl	-1136(%ebp), %eax
				movl	56(%eax), %eax
				cmpl	$16, %eax
				jne	.L981
				movl	-1136(%ebp), %eax
				movl	36(%eax), %eax
				movl	-1068(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L982
				movl	-1136(%ebp), %eax
				movl	32(%eax), %eax
				movl	-1072(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L983
		.LBB132:
				movl	-1136(%ebp), %esi
				movl	64(%esi), %eax
				movl	%eax, -1084(%ebp)
				movl	68(%esi), %eax
				cmpl	%eax, -1084(%ebp)
				jne	.L984
				cmpl	$0, -1084(%ebp)
				je	.L985
		.LBE132:
				jmp	.L796
		.L981:
				nop
				jmp	.L796
		.L982:
				nop
				jmp	.L796
		.L983:
				nop
				jmp	.L796
		.L984:
		.LBB133:
				nop
		.L796:
		.LBE133:
				nop
				jmp	.L824
		.L992:
		.LBE137:
  566        %IF TYPE1 # REG %START
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1068(%ebp), %edx
				cmpl	%eax, %edx
				je	.L986
				nop
				jmp	.L807
		.L988:
  567           SWOP
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	SWOP.6379
  568           %IF TYPE1 # REG %START
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1068(%ebp), %edx
				cmpl	%eax, %edx
				je	.L987
				nop
		.L803:
  569              LOAD TEMP;  SWOP
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	LOADTEMP.6363
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	SWOP.6379
  570           %finish %ELSE %START
				jmp	.L807
		.L987:
  571              K = K!!3 %UNLESS K = 3 %OR K = \3
				cmpl	$3, -1112(%ebp)
				je	.L988
				cmpl	$-4, -1112(%ebp)
				je	.L989
				xorl	$3, -1112(%ebp)
				jmp	.L807
		.L801:
		.L806:
		.L986:
				nop
				jmp	.L807
		.L989:
				nop
		.L807:
  572           %FINISH
  573        %FINISH
  574        %UNLESS CREG = VAL1 %AND CTYPE = TYPE %AND CVAL = VAL %START
				movl	-1136(%ebp), %eax
				movl	56(%eax), %edx
				movl	-1072(%ebp), %eax
				cmpl	%eax, %edx
				jne	.L990
				movl	-1136(%ebp), %eax
				movl	36(%eax), %edx
				movl	68(%eax), %eax
				cmpl	%eax, %edx
				jne	.L991
				movl	-1136(%ebp), %eax
				movl	32(%eax), %edx
				movl	64(%eax), %eax
				cmpl	%eax, %edx
				je	.L992
				jmp	.L809
		.L990:
				nop
				jmp	.L809
		.L991:
				nop
		.L809:
				nop
		.L824:
  575           CREG = VAL1;  CTYPE = TYPE;  CVAL = VAL
				movl	-1072(%ebp), %eax
				movl	-1136(%ebp), %edi
				movl	%eax, 56(%edi)
				movl	68(%edi), %eax
				movl	%eax, 36(%edi)
				movl	64(%edi), %eax
				movl	%eax, 32(%edi)
		.LBB134:
  576           %UNLESS TYPE = VAL = 0 %START
				movl	64(%edi), %eax
				movl	%eax, -1080(%ebp)
				movl	68(%edi), %eax
				cmpl	%eax, -1080(%ebp)
				jne	.L993
				cmpl	$0, -1080(%ebp)
				je	.L994
		.LBE134:
				jmp	.L812
		.L993:
		.LBB135:
				nop
		.L812:
		.LBE135:
				nop
		.L813:
		.LBE136:
  577              OP = COMP
				movl	COMP.6247@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
  578              %IF TYPE = ATYPE %AND VAL = AVAL %START
				movl	-1136(%ebp), %eax
				movl	68(%eax), %edx
				movl	60(%eax), %eax
				cmpl	%eax, %edx
				jne	.L995
				movl	-1136(%ebp), %eax
				movl	64(%eax), %edx
				movl	44(%eax), %eax
				cmpl	%eax, %edx
				jne	.L996
				nop
				jmp	.L815
		.L996:
				nop
		.L815:
  579                 TYPE = REG;  VAL = ACC
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1136(%ebp), %esi
				movl	%eax, 68(%esi)
				movl	40(%esi), %eax
				movl	%eax, 64(%esi)
				jmp	.L815
		.L995:
  580              %FINISH
  581              %IF TYPE&BMASK # 0 %START
				movl	BMASK.6031@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-1136(%ebp), %esi
				movl	68(%esi), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L997
				nop
				jmp	.L822
		.L998:
  582                 OP = CLB
				movl	CLB.6248@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
  583                 FAULT('I') %UNLESS K = 3 %OR K = \3
				cmpl	$3, -1112(%ebp)
				je	.L998
				cmpl	$-4, -1112(%ebp)
				je	.L999
				subl	$12, %esp
				pushl	$73
				movl	-1136(%ebp), %ecx
				call	FAULT.6117
				addl	$16, %esp
				nop
				jmp	.L822
		.L999:
				nop
		.L821:
  584              %FINISH
  585           %finish %ELSE %START
				jmp	.L822
		.L818:
		.L997:
				jmp	.L822
		.L994:
		.LBB136:
  586              OP = LOAD
				movl	LOAD.6236@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
  587              TYPE = REG;  VAL = VAL1
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1136(%ebp), %edi
				movl	%eax, 68(%edi)
				movl	-1072(%ebp), %eax
				movl	%eax, 64(%edi)
		.L822:
  588           %FINISH
  589           PLANT INST(VAL1<<4+OP)
				movl	-1072(%ebp), %eax
				sall	$4, %eax
				movl	%eax, %edx
				movl	-1116(%ebp), %eax
				addl	%eax, %edx
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	PLANTINST.6334
				addl	$16, %esp
				jmp	.L824
		.L794:
		.L823:
		.L985:
		.LBB137:
  590        %FINISH
  591     %FINISH
  592     COND = K
				movl	-1112(%ebp), %eax
				movl	-1136(%ebp), %ecx
				movl	%eax, 48(%ecx)
  593     ->GET
				jmp	.L713
		.L825:
  594
  595 ASS(-12):                             !TEST CC
  596     COND = \VAL
				movl	-1136(%ebp), %ecx
				movl	64(%ecx), %eax
				notl	%eax
				movl	%eax, 48(%ecx)
  597     ->GET
				jmp	.L713
		.L826:
  598
  599 ASS(-13):                             !AND,WHILE
  600     %IF MODE > 0 %START
				movl	-1136(%ebp), %eax
				movl	20(%eax), %eax
				testl	%eax, %eax
				jle	.L1000
				nop
		.L828:
  601        SET JUMP(16_1000)
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	$4096
				movl	%eax, %ecx
				call	SETJUMP.6327
				addl	$16, %esp
  602     %finish %ELSE %START
				jmp	.L831
		.L1000:
  603        %RETURN %IF COND # 0;          !CONDITION FALSE
				movl	-1136(%ebp), %eax
				movl	48(%eax), %eax
				testl	%eax, %eax
				jne	.L1001
		.L829:
				nop
		.L831:
				nop
				jmp	.L711
		.L1002:
  604     %FINISH
  605     %RETURN %IF Q = QLIM
				movl	QLIM.6049@GOTOFF(%ebx), %eax
				cmpl	%eax, -1108(%ebp)
				je	.L1002
				nop
		.L833:
				nop
				jmp	.L711
		.L1004:
  606     ->NEW
				jmp	.L712
		.L834:
  607
  608 ASS(-14):                             !OR
  609     %IF MODE > 0 %START
				movl	-1136(%ebp), %eax
				movl	20(%eax), %eax
				testl	%eax, %eax
				jle	.L1003
				nop
		.L836:
  610        COND = \COND
				movl	-1136(%ebp), %esi
				movl	48(%esi), %eax
				notl	%eax
				movl	%eax, 48(%esi)
  611        SET JUMP(16_3000)
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	$12288
				movl	%eax, %ecx
				call	SETJUMP.6327
				addl	$16, %esp
  612     %finish %ELSE %START
				jmp	.L839
		.L1003:
  613        %RETURN %IF COND = 0;          !CONDITION TRUE
				movl	-1136(%ebp), %eax
				movl	48(%eax), %eax
				testl	%eax, %eax
				je	.L1004
		.L837:
				nop
		.L839:
				nop
		.L711:
  614     %FINISH
  615     ->NEW
				jmp	.L712
		.L840:
  616
  617 ASS(-15):                             !IF
  618     SET JUMP(16_2000)
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	$8192
				movl	%eax, %ecx
				call	SETJUMP.6327
				addl	$16, %esp
  619     %RETURN
				jmp	.L711
		.L841:
  620
  621 ASS(-16):                             !ELSE
  622     COND = \0
				movl	$-1, %eax
				movl	-1136(%ebp), %ebx
				movl	%eax, 48(%ebx)
  623     SET JUMP(16_4000)
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	$16384
				movl	%eax, %ecx
				call	SETJUMP.6327
				addl	$16, %esp
  624     %RETURN
				jmp	.L711
		.L842:
  625
  626 ASS(-17):                             !IF AFTER ELSE
  627     SET JUMP(16_6000)
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	$24576
				movl	%eax, %ecx
				call	SETJUMP.6327
				addl	$16, %esp
  628     %RETURN
				jmp	.L711
		.L843:
  629
  630 ASS(-18):                             !MACCALL IF
  631     SET JUMP(16_8000)
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	$32768
				movl	%eax, %ecx
				call	SETJUMP.6327
				addl	$16, %esp
  632     %RETURN
				jmp	.L711
		.L844:
  633
  634 ASS(-20):                             !HASH
  635     TYPE = TYPE&(UMASK+63)
				movl	UMASK.6030@GOTOFF(%ebx), %eax
				leal	63(%eax), %edx
				movl	-1136(%ebp), %edi
				movl	68(%edi), %eax
				andl	%edx, %eax
				movl	%eax, 68(%edi)
  636     ->GET
				jmp	.L713
		.L845:
  637
  638 ASS(-21):                             !INDEX
  639     FAULT('I') %IF TYPE1&REGXMASK # 0
				movl	REGXMASK.6036@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-1068(%ebp), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1005
				subl	$12, %esp
				pushl	$73
				movl	-1136(%ebp), %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L847
		.L1005:
				nop
		.L847:
  640     %IF TYPE&MEMMASK # 0 %START
				movl	MEMMASK.6033@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-1136(%ebp), %edi
				movl	68(%edi), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1006
				nop
		.L852:
  641        %IF MODE > 0 %START
				movl	-1136(%ebp), %eax
				movl	20(%eax), %eax
				testl	%eax, %eax
				jle	.L1007
				nop
		.L851:
  642           ZQUERY = 1
				movl	$1, ZQUERY.6258@GOTOFF(%ebx)
  643           LOAD TEMP
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	LOADTEMP.6363
  644           ZQUERY = 0
				movl	$0, ZQUERY.6258@GOTOFF(%ebx)
  645        %finish %ELSE FAULT('A')
				jmp	.L852
		.L1007:
				subl	$12, %esp
				pushl	$65
				movl	-1136(%ebp), %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L852
		.L849:
		.L1006:
  646     %FINISH
  647     %IF TYPE = REG %START
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1136(%ebp), %esi
				movl	68(%esi), %edx
				cmpl	%eax, %edx
				jne	.L1008
				nop
		.L854:
  648        TYPE = XMASK+VAL;  VAL = 0
				movl	XMASK.6035@GOTOFF(%ebx), %eax
				movl	-1136(%ebp), %edi
				movl	64(%edi), %edx
				addl	%edx, %eax
				movl	%eax, 68(%edi)
				movl	$0, %eax
				movl	%eax, 64(%edi)
				jmp	.L854
		.L1008:
  649     %FINISH
  650     ZQUERY = 0
				movl	$0, ZQUERY.6258@GOTOFF(%ebx)
  651     FAULT('I') %IF TYPE1&TYPE&RELMASK # 0
				movl	-1136(%ebp), %eax
				movl	68(%eax), %eax
				movl	-1068(%ebp), %edx
				andl	%eax, %edx
				movl	RELMASK.6034@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1009
				subl	$12, %esp
				pushl	$73
				movl	-1136(%ebp), %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L856
		.L1009:
				nop
		.L856:
  652     TYPE = TYPE1!TYPE!MEMMASK;  VAL = VAL1+VAL
				movl	-1136(%ebp), %edi
				movl	68(%edi), %eax
				movl	-1068(%ebp), %edx
				orl	%eax, %edx
				movl	MEMMASK.6033@GOTOFF(%ebx), %eax
				orl	%edx, %eax
				movl	%eax, 68(%edi)
				movl	64(%edi), %eax
				movl	-1072(%ebp), %edx
				addl	%edx, %eax
				movl	%eax, 64(%edi)
  653     ->POP
				jmp	.L750
		.L857:
  654
  655 ASS(-22):                             !MINST SEPARATOR
  656     %IF TYPE1&OPMASK = 16_7000 %START
				movl	OPMASK.6025@GOTOFF(%ebx), %eax
				cmpl	$28672, %eax
				setne	%al
				movzbl	%al, %eax
				movl	-1068(%ebp), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1010
				nop
		.L859:
  657        %IF TYPE1&16_10 = 0 %START;    !REG-TYPE INST
				movl	-1068(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1011
				nop
		.L861:
  658           FAULT('I') %IF TYPE # REG
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1136(%ebp), %ecx
				movl	68(%ecx), %edx
				cmpl	%eax, %edx
				je	.L1012
				subl	$12, %esp
				pushl	$73
				movl	-1136(%ebp), %ecx
				call	FAULT.6117
				addl	$16, %esp
				nop
		.L863:
  659        %finish %ELSE %START
				jmp	.L869
		.L1012:
				jmp	.L869
		.L1011:
  660           VAL = \VAL %AND VAL1 = VAL1!!16_0100 %IF VAL < 0
				movl	-1136(%ebp), %eax
				movl	64(%eax), %eax
				testl	%eax, %eax
				jns	.L1013
				movl	-1136(%ebp), %ecx
				movl	64(%ecx), %eax
				notl	%eax
				movl	%eax, 64(%ecx)
				movl	-1072(%ebp), %eax
				xorb	$1, %ah
				movl	%eax, -1072(%ebp)
				jmp	.L866
		.L1013:
				nop
		.L866:
  661           FAULT('I') %IF TYPE # 0 %OR VAL > 15
				movl	-1136(%ebp), %eax
				movl	68(%eax), %eax
				testl	%eax, %eax
				jne	.L1014
				movl	-1136(%ebp), %eax
				movl	64(%eax), %eax
				cmpl	$15, %eax
				jle	.L1015
				jmp	.L868
		.L1014:
				nop
		.L868:
				subl	$12, %esp
				pushl	$73
				movl	-1136(%ebp), %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L869
		.L864:
		.L1015:
				nop
		.L869:
  662        %FINISH
  663        TYPE = TYPE1+16_8000;  VAL = VAL1&16_FF0F+VAL<<4
				movl	-1068(%ebp), %eax
				addl	$32768, %eax
				movl	-1136(%ebp), %ecx
				movl	%eax, 68(%ecx)
				movl	-1072(%ebp), %eax
				andl	$65295, %eax
				movl	%eax, %edx
				movl	64(%ecx), %eax
				sall	$4, %eax
				addl	%edx, %eax
				movl	%eax, 64(%ecx)
  664     %finish %ELSE %IF TYPE1&OPMASK = 16_F000 %START
				jmp	.L870
		.L1010:
				movl	OPMASK.6025@GOTOFF(%ebx), %eax
				cmpl	$61440, %eax
				setne	%al
				movzbl	%al, %eax
				movl	-1068(%ebp), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1016
				nop
		.L872:
  665        PROGREF %IF VAL1&16_FC0F = 16_0003; !BAL,BTC,BFC
				movl	-1072(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1017
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	PROGREF.6383
				jmp	.L874
		.L1017:
				nop
		.L874:
  666        FORM INST(VAL1)
				movl	-1072(%ebp), %edx
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	FORMINST.6296
				addl	$16, %esp
  667     %finish %ELSE FAULT('I')
				jmp	.L870
		.L1016:
				subl	$12, %esp
				pushl	$73
				movl	-1136(%ebp), %ecx
				call	FAULT.6117
				addl	$16, %esp
  668     ->POP
				jmp	.L750
		.L870:
				jmp	.L750
		.L875:
  669
  670 ASS(-23):                             !MACHINE INST
  671     SET JUMP(16_1000) %IF COND # 0
				movl	-1136(%ebp), %eax
				movl	48(%eax), %eax
				testl	%eax, %eax
				je	.L1018
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	$4096
				movl	%eax, %ecx
				call	SETJUMP.6327
				addl	$16, %esp
				jmp	.L877
		.L1018:
				nop
		.L877:
  672     PLANT VAL
				movl	-1136(%ebp), %ebx
				movl	%ebx, %ecx
				call	PLANTVAL.6194
  673     CREG = -1;  ATYPE = -1
				movl	$-1, %eax
				movl	%eax, 56(%ebx)
				movl	$-1, %eax
				movl	%eax, 60(%ebx)
  674     %RETURN
				jmp	.L711
		.L878:
  675
  676 ASS(-24):                             !LOAD
  677     LOAD TEMP %IF TYPE # REG
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1136(%ebp), %edi
				movl	68(%edi), %edx
				cmpl	%eax, %edx
				je	.L1019
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	LOADTEMP.6363
				jmp	.L880
		.L1019:
				nop
		.L880:
  678     Q = QBASE
				movl	QBASE.6047@GOTOFF(%ebx), %eax
				movl	%eax, -1108(%ebp)
  679     ->GET
				jmp	.L713
		.L881:
  680
  681 ASS(-25):                             !STORE (TYPE1,VAL1 -> TYPE,VAL)
  682     %IF TYPE = REG %START
				movl	REG.6032@GOTOFF(%ebx), %eax
				movl	-1136(%ebp), %esi
				movl	68(%esi), %edx
				cmpl	%eax, %edx
				jne	.L1020
				nop
		.L883:
  683        SWOP %AND LOAD REG(VAL1) %IF VAL1 # VAL
				movl	-1136(%ebp), %eax
				movl	64(%eax), %eax
				movl	-1072(%ebp), %edx
				cmpl	%eax, %edx
				je	.L1021
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	SWOP.6379
				movl	-1072(%ebp), %edx
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	LOADREG.6338
				addl	$16, %esp
				nop
		.L885:
  684     %finish %ELSE %START
				jmp	.L886
		.L1021:
				jmp	.L886
		.L1020:
  685        ATYPE = -1 %IF ATYPE&MEMMASK # 0
				movl	MEMMASK.6033@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-1136(%ebp), %ecx
				movl	60(%ecx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1022
				movl	$-1, %eax
				movl	-1136(%ebp), %edi
				movl	%eax, 60(%edi)
				jmp	.L888
		.L1022:
				nop
		.L888:
  686        %IF FLAG = 0 %START
				movl	-1136(%ebp), %eax
				movl	52(%eax), %eax
				testl	%eax, %eax
				jne	.L1023
				nop
		.L890:
  687           %IF VAL1 = ACC %AND ATYPE < 0 %START
				movl	-1136(%ebp), %eax
				movl	40(%eax), %eax
				movl	-1072(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L1024
				movl	-1136(%ebp), %eax
				movl	60(%eax), %eax
				testl	%eax, %eax
				jns	.L1025
				nop
				jmp	.L896
		.L1025:
				nop
				jmp	.L896
		.L1027:
  688              K = TYPE&15
				movl	-1136(%ebp), %eax
				movl	68(%eax), %eax
				andl	$15, %eax
				movl	%eax, -1112(%ebp)
  689              ATYPE = TYPE %AND AVAL = VAL %IF K = 0 %OR 1<<K&TEMPS = 0
				cmpl	$0, -1112(%ebp)
				je	.L1026
				movl	TEMPS.6071@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				setne	%al
				movzbl	%al, %edx
				movl	-1112(%ebp), %eax
				movl	%eax, %ecx
				sarl	%cl, %edx
				movl	%edx, %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1027
				jmp	.L895
		.L1026:
				nop
		.L895:
				movl	-1136(%ebp), %ecx
				movl	68(%ecx), %eax
				movl	%eax, 60(%ecx)
				movl	64(%ecx), %eax
				movl	%eax, 44(%ecx)
				jmp	.L896
		.L892:
		.L1024:
				nop
		.L896:
  690           %FINISH
  691           OP = STORE;  OP = STB %IF TYPE&BMASK # 0
				movl	STORE.6249@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
				movl	BMASK.6031@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-1136(%ebp), %esi
				movl	68(%esi), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1028
				movl	STB.6250@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
				nop
		.L898:
  692        %finish %ELSE %START
				jmp	.L899
		.L1028:
				jmp	.L899
		.L1023:
  693           CREG = 16;  CTYPE = TYPE;  CVAL = VAL
				movl	$16, %eax
				movl	-1136(%ebp), %esi
				movl	%eax, 56(%esi)
				movl	68(%esi), %eax
				movl	%eax, 36(%esi)
				movl	64(%esi), %eax
				movl	%eax, 32(%esi)
  694           OP = AHM
				movl	AHM.6251@GOTOFF(%ebx), %eax
				movl	%eax, -1116(%ebp)
		.L899:
  695        %FINISH
  696        PLANT INST(VAL1<<4+OP)
				movl	-1072(%ebp), %eax
				sall	$4, %eax
				movl	%eax, %edx
				movl	-1116(%ebp), %eax
				addl	%eax, %edx
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	PLANTINST.6334
				addl	$16, %esp
  697     %FINISH
  698     %RETURN
				jmp	.L711
		.L886:
				jmp	.L711
		.L900:
  699
  700 ASS(-26):                             !JUMP
  701     SET JUMP(16_1000) %IF INTEGER(NP)&16_F000 = 16_3000; !OR
				movl	NP.6057@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	-1136(%ebp), %ecx
				call	INTEGER.6096
				addl	$16, %esp
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1029
				subl	$12, %esp
				leal	-1072(%ebp), %eax
				pushl	$4096
				movl	%eax, %ecx
				call	SETJUMP.6327
				addl	$16, %esp
				jmp	.L902
		.L1029:
				nop
		.L902:
  702     %IF FLAG < 0 %START;              !REPEAT
				movl	-1136(%ebp), %eax
				movl	52(%eax), %eax
				testl	%eax, %eax
				jns	.L1030
				nop
				jmp	.L908
		.L1031:
  703        FLAG = 0
				movl	$0, %eax
				movl	-1136(%ebp), %ecx
				movl	%eax, 52(%ecx)
  704        %IF PASS = 0 %START
				movl	PASS.6066@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L1031
				nop
		.L908:
  705           K = NP;  LITVAL = LOC
				movl	NP.6057@GOTOFF(%ebx), %eax
				movl	%eax, -1112(%ebp)
				movl	-1136(%ebp), %eax
				movl	76(%eax), %eax
				movl	%eax, -1104(%ebp)
		.L906:
  706           %WHILE INTEGER(K)&16_1000 # 0 %CYCLE
				subl	$12, %esp
				pushl	-1112(%ebp)
				movl	-1136(%ebp), %ecx
				call	INTEGER.6096
				addl	$16, %esp
  707              K = K+2;  LITVAL = LITVAL-2
				addl	$2, -1112(%ebp)
				subl	$2, -1104(%ebp)
  708           %REPEAT
				jmp	.L906
		.L904:
		.L907:
		.L1030:
  709           FLAG = 1 %IF LITVAL-VAL < 32
  710        %FINISH
  711     %FINISH
  712     PROGREF
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	PROGREF.6383
  713     PLANT JUMP
				leal	-1072(%ebp), %eax
				movl	%eax, %ecx
				call	PLANTJUMP.6314
  714     %RETURN
				jmp	.L711
		.L923:
  715
  716 %END;  !ASSEMBLE
				cmpl	$-30, -1088(%ebp)
				jl	.L909
				jmp	.L923
		.L943:
				cmpl	$0, -1088(%ebp)
				js	.L910
		.L909:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L911
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -1140(%ebp)
				jmp	.L912
		.L911:
				movl	$716, -1140(%ebp)
		.L912:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L913
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-540(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L914
		.L913:
		.LBB138:
				leal	-284(%ebp), %eax
				leal	.LC4@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1052(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE138:
				leal	-540(%ebp), %eax
				leal	-1052(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L914:
				pushl	-1096(%ebp)
				pushl	-1092(%ebp)
				pushl	-1088(%ebp)
				leal	.LC7@GOTOFF(%ebx), %eax
				pushl	%eax
				pushl	-1088(%ebp)
				pushl	$3
				pushl	$6
				pushl	-1140(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-540(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_eventf@PLT
				addl	$288, %esp
		.L910:
				movl	-1088(%ebp), %eax
				addl	$30, %eax
				movl	ASS.6270@GOTOFF(%ebx,%eax,4), %eax
				nop
				jmp	*%eax
		.L916:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L917
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -1136(%ebp)
				jmp	.L918
		.L917:
				movl	$716, -1136(%ebp)
		.L918:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L919
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-284(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L920
		.L919:
		.LBB139:
				leal	-284(%ebp), %eax
				leal	.LC4@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-796(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE139:
				leal	-284(%ebp), %eax
				leal	-796(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L920:
				pushl	-1096(%ebp)
				pushl	-1092(%ebp)
				pushl	-1088(%ebp)
				leal	.LC8@GOTOFF(%ebx), %eax
				pushl	%eax
				pushl	-1088(%ebp)
				pushl	$2
				pushl	$8
				pushl	-1136(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-284(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_eventf@PLT
				addl	$288, %esp
				jmp	.L711
		.L942:
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L921
				call	__stack_chk_fail_local
		.L921:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE211:
		PLANTJUMP.6314:
		.LFB213:
  717
  718 %ROUTINE LOOKUP(%INTEGER CONTROL)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -28(%ebp)
  719 !ALL DICT OPERATIONS LOCALISED HERE
  720 !CONTROL = 0 (LOOKUP ONLY), 1 (FORWARD OK),
  721 !          2 (REDEF), 3 (DEF),
  722 !          4 (MACPARM), 7 (LABEL)
  723 %INTEGER DP
  724     DP = DEFMIN;  DP = MP+5 %IF CONTROL = 4
				movl	DEFMIN.6051@GOTOFF(%esi), %eax
				movl	%eax, -12(%ebp)
				cmpl	$4, 8(%ebp)
				jne	.L1214
				movl	MP.6046@GOTOFF(%esi), %eax
				addl	$5, %eax
				movl	%eax, -12(%ebp)
				jmp	.L1186
		.L1178:
		.L1214:
				nop
		.L1179:
		.L1186:
  725
  726 {}    %WHILE INTEGER(DP) # 0 %CYCLE
				subl	$12, %esp
				pushl	-12(%ebp)
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1215
				nop
		.L1181:
  727 {}       ->YES %IF INTEGER(DP) = TAG1 %AND INTEGER(DP+1) = TAG2
				subl	$12, %esp
				pushl	-12(%ebp)
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, %edx
				movl	16(%ebx), %eax
				cmpl	%edx, %eax
				jne	.L1216
				movl	-12(%ebp), %eax
				addl	$1, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, %edx
				movl	12(%ebx), %eax
				cmpl	%edx, %eax
				je	.L1217
				jmp	.L1183
		.L1216:
				nop
		.L1183:
				nop
		.L1185:
  728 {}       DP = DP+4
				addl	$4, -12(%ebp)
  729 {}    %REPEAT
				jmp	.L1186
		.L1215:
  730
  731 !!%OWNINTEGER P
  732 !!    DP = DP-4
  733 !!REP:DP = DP+4
  734 !!    %LAC* DP; %OPR 640;!SNA; %JMP NO
  735 !!    %SAD TAG1; %OPR 512; %JMP REP
  736 !!    %LAC DP; %TAD #1; %DAC P
  737 !!    %LAC* P; %SAD TAG2; %JMP YES
  738 !!    ->REP
  739 !!NO:
  740     %RETURN %IF CONTROL&1 = 0;        !NO CREATION
				movl	8(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				je	.L1218
		.L1188:
				nop
				jmp	.L1190
		.L1221:
				nop
		.L1176:
  741 NEW:DEFMIN = DEFMIN-4;  DP = DEFMIN
				movl	DEFMIN.6051@GOTOFF(%esi), %eax
				subl	$4, %eax
				movl	%eax, DEFMIN.6051@GOTOFF(%esi)
				movl	DEFMIN.6051@GOTOFF(%esi), %eax
				movl	%eax, -12(%ebp)
  742 !!    %MONITOR 21 %IF DP-QLIM <= 0
  743     !{}%signal 2,1 %IF DP-QLIM <= 0
  744 !!    INTEGER(DP) = TAG1;  INTEGER(DP+1) = TAG2
  745     set INTEGER(DP, TAG1);  set INTEGER(DP+1,  TAG2)
				movl	16(%ebx), %eax
				subl	$8, %esp
				pushl	%eax
				pushl	-12(%ebp)
				movl	%ebx, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
				movl	-12(%ebp), %eax
				leal	1(%eax), %edx
				movl	12(%ebx), %eax
				subl	$8, %esp
				pushl	%eax
				pushl	%edx
				movl	%ebx, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
				jmp	.L1191
		.L1222:
  746 !!SET:INTEGER(DP+2) = TYPE;  INTEGER(DP+3) = VAL
  747 SET:set INTEGER(DP+2, TYPE);  set INTEGER(DP+3, VAL)
				movl	-12(%ebp), %eax
				leal	2(%eax), %edx
				movl	68(%ebx), %eax
				subl	$8, %esp
				pushl	%eax
				pushl	%edx
				movl	%ebx, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
				movl	-12(%ebp), %eax
				leal	3(%eax), %edx
				movl	64(%ebx), %eax
				subl	$8, %esp
				pushl	%eax
				pushl	%edx
				movl	%ebx, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
  748     %RETURN
				jmp	.L1176
		.L1217:
  749 YES:%IF CONTROL&2 = 0 %START;         !NOT DEF CLASS
				movl	8(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1219
				nop
		.L1193:
  750        TYPE = INTEGER(DP+2);  VAL = INTEGER(DP+3)
				movl	-12(%ebp), %eax
				addl	$2, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 68(%ebx)
				movl	-12(%ebp), %eax
				addl	$3, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 64(%ebx)
  751        %RETURN
				jmp	.L1176
		.L1219:
  752     %FINISH
  753     %IF CONTROL = 3 %START
				cmpl	$3, 8(%ebp)
				jne	.L1220
				nop
		.L1195:
  754        ->NEW %IF DP-INTEGER(BP) >= 0; !GLOBAL
				nop
				jmp	.L1190
		.L1226:
				movl	BP.6056@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, %edx
				movl	-12(%ebp), %eax
				subl	%edx, %eax
				testl	%eax, %eax
				jns	.L1221
				nop
		.L1197:
  755        FAULT('D')
				subl	$12, %esp
				pushl	$68
				movl	%ebx, %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L1195
		.L1220:
  756     %FINISH
  757     ->SET %IF CONTROL # 7
				nop
		.L1191:
				cmpl	$7, 8(%ebp)
				jne	.L1222
				nop
		.L1199:
  758     %IF INTEGER(DP+2)&OPFMASK = FMASK %START
				movl	-12(%ebp), %eax
				addl	$2, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, %ecx
				movl	OPFMASK.6029@GOTOFF(%esi), %edx
				movl	FMASK.6028@GOTOFF(%esi), %eax
				cmpl	%eax, %edx
				setne	%al
				movzbl	%al, %eax
				andl	%ecx, %eax
				testl	%eax, %eax
				jne	.L1223
				nop
		.L1201:
  759        VAL = INTEGER(DP+3)
				movl	-12(%ebp), %eax
				addl	$3, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 64(%ebx)
  760        %IF PASS = 0 %START
				movl	PASS.6066@GOTOFF(%esi), %eax
				testl	%eax, %eax
				jne	.L1224
				nop
		.L1203:
  761 !!          INTEGER(VAL) = LOC
  762           set INTEGER(VAL, LOC)
				movl	64(%ebx), %eax
				movl	76(%ebx), %edx
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				movl	%ebx, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
  763        %finish %ELSE %START
				jmp	.L1206
		.L1224:
  764           FAULT('P') %AND LOC=INTEGER(VAL) %IF INTEGER(VAL) # LOC
				movl	64(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, %edx
				movl	76(%ebx), %eax
				cmpl	%edx, %eax
				je	.L1225
				subl	$12, %esp
				pushl	$80
				movl	%ebx, %ecx
				call	FAULT.6117
				addl	$16, %esp
				movl	64(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 76(%ebx)
				jmp	.L1206
		.L1204:
		.L1225:
				nop
		.L1206:
  765        %FINISH
  766        VAL = LOC
				movl	76(%ebx), %eax
				movl	%eax, 64(%ebx)
  767     %finish %ELSE %START
				nop
		.L1207:
  768        ->NEW %IF DP-INTEGER(BP) >= 0
				nop
		.L1190:
				movl	BP.6056@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, %edx
				movl	-12(%ebp), %eax
				subl	%edx, %eax
				testl	%eax, %eax
				jns	.L1226
				nop
		.L1209:
  769        FAULT('D')
				subl	$12, %esp
				pushl	$68
				movl	%ebx, %ecx
				call	FAULT.6117
				addl	$16, %esp
  770     %FINISH
  771     ->SET
				jmp	.L1191
		.L1223:
				jmp	.L1191
		.L1218:
  772 %END
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE222:
		TAGREF.6518:
		.LFB223:
  773
  774 %ROUTINE TAGREF
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$16, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -12(%ebp)
  775 %OWNINTEGER B=2184, W=24717
  776     %IF TERM = '(' %START
				movl	8(%ebx), %eax
				cmpl	$40, %eax
				jne	.L1243
				nop
		.L1234:
  777        TYPE = 0;  VAL = 0
				movl	$0, %eax
				movl	%eax, 68(%ebx)
				movl	$0, %eax
				movl	%eax, 64(%ebx)
  778        %RETURN %IF TAG1 = W
				movl	W.6521@GOTOFF(%esi), %eax
				movl	16(%ebx), %edx
				cmpl	%eax, %edx
				je	.L1244
				nop
		.L1231:
				nop
				jmp	.L1227
		.L1245:
  779        TYPE = BMASK
				movl	BMASK.6031@GOTOFF(%esi), %eax
				movl	%eax, 68(%ebx)
  780        %RETURN %IF TAG1 = B
				movl	B.6520@GOTOFF(%esi), %eax
				movl	16(%ebx), %edx
				cmpl	%eax, %edx
				je	.L1245
				jmp	.L1234
		.L1229:
		.L1243:
				nop
		.L1227:
  781     %FINISH
  782     TYPE = LOCTYPE+FMASK+UMASK;  VAL = LABMIN-1
				movl	FMASK.6028@GOTOFF(%esi), %eax
				movl	72(%ebx), %edx
				addl	%eax, %edx
				movl	UMASK.6030@GOTOFF(%esi), %eax
				addl	%edx, %eax
				movl	%eax, 68(%ebx)
				movl	LABMIN.6054@GOTOFF(%esi), %eax
				subl	$1, %eax
				movl	%eax, 64(%ebx)
  783     LOOKUP(1)
				subl	$12, %esp
				pushl	$1
				movl	%ebx, %ecx
				call	LOOKUP.6496
				addl	$16, %esp
  784     %IF TYPE&OPFMASK = FMASK %START
				movl	OPFMASK.6029@GOTOFF(%esi), %edx
				movl	FMASK.6028@GOTOFF(%esi), %eax
				cmpl	%eax, %edx
				setne	%al
				movzbl	%al, %eax
				movl	68(%ebx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1246
				nop
		.L1236:
  785        %IF VAL = LABMIN-1 %START
				movl	LABMIN.6054@GOTOFF(%esi), %eax
				leal	-1(%eax), %edx
				movl	64(%ebx), %eax
				cmpl	%edx, %eax
				jne	.L1247
				nop
		.L1238:
  786 !!          LABMIN = VAL;  %MONITOR 22 %IF LABMIN = ALMAX
  787           LABMIN = VAL;  !{}%signal 2,2 %IF LABMIN = ALMAX
				movl	64(%ebx), %eax
				movl	%eax, LABMIN.6054@GOTOFF(%esi)
				jmp	.L1238
		.L1247:
  788        %FINISH
  789        %IF PASS > 0 %START
				movl	PASS.6066@GOTOFF(%esi), %eax
				testl	%eax, %eax
				jle	.L1248
				nop
				jmp	.L1242
		.L1249:
  790           VAL = INTEGER(VAL)
				movl	64(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 64(%ebx)
  791           FAULT('U') %IF VAL = 0
				movl	64(%ebx), %eax
				testl	%eax, %eax
				jne	.L1249
				subl	$12, %esp
				pushl	$85
				movl	%ebx, %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L1242
		.L1240:
		.L1248:
				nop
		.L1242:
  792        %FINISH
  793        TYPE = TYPE-FMASK
				movl	FMASK.6028@GOTOFF(%esi), %eax
				movl	68(%ebx), %edx
				subl	%eax, %edx
				movl	%edx, %eax
				movl	%eax, 68(%ebx)
  794     %FINISH
  795 %END
				jmp	.L1236
		.L1246:
				nop
				jmp	.L1227
		.L1244:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE223:
		GETSYM.6530:
		.LFB224:
  796
  797 %ROUTINE GET SYM
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
		.L1251:
  798     %CYCLE
  799        SYM = CHAR(GETPOS);  GETPOS = GETPOS+1
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				pushl	%eax
				movl	%esi, %ecx
				call	CHAR.6102
				addl	$4, %esp
				movl	%eax, 4(%esi)
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, GETPOS.6040@GOTOFF(%ebx)
  800        %RETURN %IF SYM # ' '
				movl	4(%esi), %eax
				cmpl	$32, %eax
				jne	.L1256
				nop
		.L1253:
				nop
  801     %REPEAT
				jmp	.L1251
		.L1256:
  802 %END
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1255
				call	__stack_chk_fail_local
		.L1255:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE224:
		S.6535:
		.LFB225:
  803
  804 %PREDICATE S(%INTEGER K)
				pushl	%ebp
				movl	%esp, %ebp
				subl	$40, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %eax
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %edx
				movl	%edx, -12(%ebp)
				xorl	%edx, %edx
  805     %FALSE %UNLESS K = SYM
				movl	4(%eax), %edx
				cmpl	%edx, 8(%ebp)
				je	.L1263
				movl	$0, %eax
				jmp	.L1260
		.L1263:
				nop
		.L1259:
  806     GET SYM
				movl	%eax, %ecx
				call	GETSYM.6530
  807     %TRUE
				movl	$1, %eax
		.L1260:
  808 %END
				movl	-12(%ebp), %edx
				xorl	%gs:20, %edx
				je	.L1261
				call	__stack_chk_fail_local
		.L1261:
				leave
				ret
		.LFE225:
		SS.6539:
		.LFB226:
  809
  810 %PREDICATE SS(%INTEGER K)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
		.LBB152:
  811     %FALSE %UNLESS K = SYM = CHAR(GETPOS)
				movl	4(%esi), %eax
				movl	%eax, -16(%ebp)
				movl	-16(%ebp), %eax
				cmpl	8(%ebp), %eax
				jne	.L1271
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				pushl	%eax
				movl	%esi, %ecx
				call	CHAR.6102
				addl	$4, %esp
				cmpl	%eax, -16(%ebp)
				je	.L1272
		.LBE152:
				jmp	.L1266
		.L1271:
		.LBB153:
				nop
		.L1266:
		.LBE153:
				movl	$0, %eax
				jmp	.L1268
		.L1272:
		.LBB154:
				nop
		.L1267:
		.LBE154:
  812     GETPOS = GETPOS+1
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, GETPOS.6040@GOTOFF(%ebx)
  813     GET SYM
				movl	%esi, %ecx
				call	GETSYM.6530
  814     %TRUE
				movl	$1, %eax
		.L1268:
  815 %END
				movl	-12(%ebp), %edx
				xorl	%gs:20, %edx
				je	.L1269
				call	__stack_chk_fail_local
		.L1269:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE226:
		CODESYM.6550:
		.LFB228:
  816
  817 %PREDICATE TAG
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$48, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -44(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -16(%ebp)
				movl	%ebx, -20(%ebp)
  818 %INTEGER J,K
  819     %ROUTINE CODE SYM
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
  820        SYM = CHAR(GETPOS);  GETPOS = GETPOS+1
				movl	GETPOS.6040@GOTOFF(%esi), %edx
				movl	8(%ebx), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	CHAR.6102
				addl	$4, %esp
				movl	%eax, %edx
				movl	8(%ebx), %eax
				movl	%edx, 4(%eax)
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				addl	$1, %eax
				movl	%eax, GETPOS.6040@GOTOFF(%esi)
  821        K = SYM-'0'
				movl	8(%ebx), %eax
				movl	4(%eax), %eax
				subl	$48, %eax
				movl	%eax, 4(%ebx)
  822        %IF K >= 0 %START
				movl	4(%ebx), %eax
				testl	%eax, %eax
				js	.L1285
				nop
				jmp	.L1282
		.L1287:
  823           TERM = -1 %AND %RETURN %IF K < 10
				movl	4(%ebx), %eax
				cmpl	$9, %eax
				jg	.L1286
				movl	8(%ebx), %eax
				movl	$-1, %edx
				movl	%edx, 8(%eax)
				jmp	.L1273
		.L1286:
				nop
		.L1277:
  824           K = SYM-'A'
				movl	8(%ebx), %eax
				movl	4(%eax), %eax
				subl	$65, %eax
				movl	%eax, 4(%ebx)
  825           %RETURN %IF K >= 0 %AND K < 26 %AND TERM = 0
				movl	4(%ebx), %eax
				testl	%eax, %eax
				js	.L1287
				movl	4(%ebx), %eax
				cmpl	$25, %eax
				jg	.L1288
				movl	8(%ebx), %eax
				movl	8(%eax), %eax
				testl	%eax, %eax
				je	.L1289
				jmp	.L1282
		.L1275:
		.L1285:
				nop
				jmp	.L1282
		.L1288:
				nop
		.L1282:
				nop
		.L1273:
  826        %FINISH
  827        TERM = SYM
				movl	8(%ebx), %edx
				movl	8(%ebx), %eax
				movl	4(%edx), %edx
				movl	%edx, 8(%eax)
  828     %END
				nop
				jmp	.L1273
		.L1289:
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1283
				call	__stack_chk_fail_local
		.L1283:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE228:
		TAG.6545:
		.LFB227:
  829     %ROUTINE PACK TRIPLE
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$20, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %ebx
				movl	%ecx, -12(%ebp)
  830        ->T1 %IF TERM < 0
				movl	8(%ebx), %eax
				movl	8(%eax), %eax
				testl	%eax, %eax
				js	.L1337
				nop
		.L1324:
				nop
		.L1325:
  831        J = ((K<<5+K)<<1+K)<<4+K+1111; !K*1073+1111
				movl	4(%ebx), %eax
				sall	$5, %eax
				movl	%eax, %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				leal	(%eax,%eax), %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				sall	$4, %eax
				movl	%eax, %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				addl	$1111, %eax
				movl	%eax, (%ebx)
  832        CODE SYM
				movl	%ebx, %ecx
				call	CODESYM.6550
  833        ->T2 %IF TERM # 0
				movl	8(%ebx), %eax
				movl	8(%eax), %eax
				testl	%eax, %eax
				jne	.L1338
				nop
		.L1327:
				nop
		.L1328:
  834        J = (K<<3+K)<<2+K+111+J;       !J+K*37+111
				movl	4(%ebx), %eax
				leal	0(,%eax,8), %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				leal	0(,%eax,4), %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				leal	111(%eax), %edx
				movl	(%ebx), %eax
				addl	%edx, %eax
				movl	%eax, (%ebx)
  835        CODE SYM
				movl	%ebx, %ecx
				call	CODESYM.6550
  836        ->T3 %IF TERM # 0
				movl	8(%ebx), %eax
				movl	8(%eax), %eax
				testl	%eax, %eax
				jne	.L1339
				nop
		.L1330:
				nop
		.L1331:
  837        J = J+K+11
				movl	(%ebx), %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				addl	$11, %eax
				movl	%eax, (%ebx)
  838        CODE SYM
				movl	%ebx, %ecx
				call	CODESYM.6550
  839        %RETURN
				jmp	.L1322
		.L1337:
  840 T1:    J = ((K<<1+K)<<1+K)<<4-K+1;    !K*111+1
				movl	4(%ebx), %eax
				leal	(%eax,%eax), %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				leal	(%eax,%eax), %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				sall	$4, %eax
				movl	%eax, %edx
				movl	4(%ebx), %eax
				subl	%eax, %edx
				movl	%edx, %eax
				addl	$1, %eax
				movl	%eax, (%ebx)
  841        CODE SYM
				movl	%ebx, %ecx
				call	CODESYM.6550
				jmp	.L1328
		.L1338:
  842 T2:    %RETURN %IF TERM > 0
				movl	8(%ebx), %eax
				movl	8(%eax), %eax
				testl	%eax, %eax
				jg	.L1340
				nop
		.L1334:
				nop
				jmp	.L1322
		.L1341:
  843        J = (K<<2+K)<<1+K+1+J;         !J+K*11+1
				movl	4(%ebx), %eax
				leal	0(,%eax,4), %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				leal	(%eax,%eax), %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				leal	1(%eax), %edx
				movl	(%ebx), %eax
				addl	%edx, %eax
				movl	%eax, (%ebx)
  844        CODE SYM
				movl	%ebx, %ecx
				call	CODESYM.6550
				jmp	.L1331
		.L1339:
  845 T3:    %RETURN %IF TERM > 0
				movl	8(%ebx), %eax
				movl	8(%eax), %eax
				testl	%eax, %eax
				jg	.L1341
				nop
		.L1336:
				nop
		.L1322:
  846        J = J+K+1
				movl	(%ebx), %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				addl	$1, %eax
				movl	%eax, (%ebx)
  847        CODE SYM
				movl	%ebx, %ecx
				call	CODESYM.6550
  848     %END
				nop
				jmp	.L1322
		.L1340:
				addl	$20, %esp
				popl	%ebx
				popl	%ebp
				ret
		.LFE229:
		TAGIF.6578:
		.LFB230:
  849     K = SYM-'A'
				movl	4(%ebx), %eax
				subl	$65, %eax
				movl	%eax, -24(%ebp)
  850     %FALSE %UNLESS K >= 0 %AND K < 26
				movl	-24(%ebp), %eax
				testl	%eax, %eax
				js	.L1314
				movl	-24(%ebp), %eax
				cmpl	$25, %eax
				jle	.L1315
				jmp	.L1292
		.L1314:
				nop
		.L1292:
				movl	$0, %eax
				jmp	.L1294
		.L1315:
				nop
		.L1293:
  851     %FALSE %IF SYM = 'X' %AND CHAR(GETPOS)&128 # 0
				movl	4(%ebx), %eax
				cmpl	$88, %eax
				jne	.L1316
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				pushl	%eax
				movl	%ebx, %ecx
				call	CHAR.6102
				addl	$4, %esp
				movl	$0, %eax
				jmp	.L1294
		.L1316:
				nop
		.L1296:
  852     TERM = 0
				movl	$0, %eax
				movl	%eax, 8(%ebx)
  853     PACK TRIPLE
				leal	-28(%ebp), %eax
				movl	%eax, %ecx
				call	PACKTRIPLE.6556
  854     TAG1 = J
				movl	-28(%ebp), %eax
				movl	%eax, 16(%ebx)
		.L1297:
  855     %CYCLE
  856        J = 0
				movl	$0, %eax
				movl	%eax, -28(%ebp)
  857        PACK TRIPLE %IF TERM <= 0
				movl	8(%ebx), %eax
				testl	%eax, %eax
				jg	.L1317
				leal	-28(%ebp), %eax
				movl	%eax, %ecx
				call	PACKTRIPLE.6556
				jmp	.L1299
		.L1317:
				nop
		.L1299:
  858        TAG2 = J
				movl	-28(%ebp), %eax
				movl	%eax, 12(%ebx)
		.L1300:
  859        CODE SYM %WHILE TERM <= 0
				movl	8(%ebx), %eax
				testl	%eax, %eax
				jg	.L1318
				leal	-28(%ebp), %eax
				movl	%eax, %ecx
				call	CODESYM.6550
				jmp	.L1300
		.L1318:
				nop
		.L1302:
  860        %EXIT %UNLESS TERM = QQ
				movl	QQ.6090@GOTOFF(%esi), %eax
				movl	8(%ebx), %edx
				cmpl	%eax, %edx
				jne	.L1319
				nop
		.L1304:
				nop
		.L1305:
  861        TYPE = 1;  LOOKUP(0)
				movl	$1, %eax
				movl	%eax, 68(%ebx)
				subl	$12, %esp
				pushl	$0
				movl	%ebx, %ecx
				call	LOOKUP.6496
				addl	$16, %esp
  862        FAULT('U') %IF TYPE # 0
				movl	68(%ebx), %eax
				testl	%eax, %eax
				je	.L1320
				subl	$12, %esp
				pushl	$85
				movl	%ebx, %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L1307
		.L1320:
				nop
		.L1307:
  863        TAG1 = VAL
				movl	64(%ebx), %eax
				movl	%eax, 16(%ebx)
  864        TERM = 0;  CODE SYM
				movl	$0, %eax
				movl	%eax, 8(%ebx)
				leal	-28(%ebp), %eax
				movl	%eax, %ecx
				call	CODESYM.6550
  865     %REPEAT
				jmp	.L1297
		.L1319:
  866     GET SYM %IF TERM = ' '
				movl	8(%ebx), %eax
				cmpl	$32, %eax
				jne	.L1321
				movl	%ebx, %ecx
				call	GETSYM.6530
				jmp	.L1309
		.L1321:
				nop
		.L1309:
  867     %TRUE
				movl	$1, %eax
		.L1294:
  868 %END
				movl	-12(%ebp), %edx
				xorl	%gs:20, %edx
				je	.L1310
				call	__stack_chk_fail_local
		.L1310:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE227:
		PACKTRIPLE.6556:
		.LFB229:
  869
  870 %PREDICATE TAGIF
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
  871     %FALSE %UNLESS SYM='I' %AND CHAR(GETPOS)='F' %AND CHAR(GETPOS+1)=' '
				movl	4(%esi), %eax
				cmpl	$73, %eax
				jne	.L1350
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				pushl	%eax
				movl	%esi, %ecx
				call	CHAR.6102
				addl	$4, %esp
				cmpl	$70, %eax
				jne	.L1351
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				addl	$1, %eax
				pushl	%eax
				movl	%esi, %ecx
				call	CHAR.6102
				addl	$4, %esp
				cmpl	$32, %eax
				je	.L1352
				jmp	.L1344
		.L1350:
				nop
				jmp	.L1344
		.L1351:
				nop
		.L1344:
				movl	$0, %eax
				jmp	.L1347
		.L1352:
				nop
		.L1346:
  872     GETPOS = GETPOS+2
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				addl	$2, %eax
				movl	%eax, GETPOS.6040@GOTOFF(%ebx)
  873     GET SYM
				movl	%esi, %ecx
				call	GETSYM.6530
  874     %TRUE
				movl	$1, %eax
		.L1347:
  875 %END
				movl	-12(%ebp), %edx
				xorl	%gs:20, %edx
				je	.L1348
				call	__stack_chk_fail_local
		.L1348:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE230:
		QUEUE.6583:
		.LFB231:
  876
  877 %ROUTINE QUEUE(%INTEGER K)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %edx
				movl	%ecx, -8(%ebp)
  878 !!    INTEGER(QLIM) = K
  879     set INTEGER(QLIM, K)
				movl	QLIM.6049@GOTOFF(%ebx), %eax
				pushl	8(%ebp)
				pushl	%eax
				movl	%edx, %ecx
				call	SETINTEGER.6108
				addl	$8, %esp
  880 !!    QLIM = QLIM+1;  %MONITOR 21 %IF QLIM = DEFMIN
  881     QLIM = QLIM+1;  !{}%signal 2,1 %IF QLIM = DEFMIN
				movl	QLIM.6049@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, QLIM.6049@GOTOFF(%ebx)
  882 %END
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE231:
		GETEXP.6586:
		.LFB232:
  883
  884 %ROUTINE GET EXP
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$48, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -44(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
  885 %INTEGER I,NBASE
  886
  887     NBASE = NP
				movl	NP.6057@GOTOFF(%esi), %eax
				movl	%eax, -32(%ebp)
  888     ->E3 %IF PEND # 0
				movl	(%ebx), %eax
				testl	%eax, %eax
				jne	.L1472
		.L1357:
		.L1359:
				nop
		.L1360:
		.L1363:
				nop
		.L1358:
  889 E1: NEST(0) %WHILE S('(')
				subl	$12, %esp
				pushl	$40
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1473
				subl	$12, %esp
				pushl	$0
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				jmp	.L1363
		.L1473:
				nop
		.L1362:
  890     NEST(-20) %IF S('#')
				subl	$12, %esp
				pushl	$35
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1474
				subl	$12, %esp
				pushl	$-20
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				jmp	.L1365
		.L1474:
				nop
		.L1365:
  891     %IF TAG %START
				movl	%ebx, %ecx
				call	TAG.6545
				testl	%eax, %eax
				je	.L1475
				nop
		.L1366:
		.LBB155:
  892 E3:    TAGREF %IF PEND >= 0
				jmp	.L1358
		.L1472:
				movl	(%ebx), %eax
				testl	%eax, %eax
				js	.L1476
				movl	%ebx, %ecx
				call	TAGREF.6518
				jmp	.L1368
		.L1476:
				nop
		.L1368:
  893        PEND = 0
				movl	$0, %eax
				movl	%eax, (%ebx)
  894        %IF TYPE = REG %AND TERM = '(' %START
				movl	REG.6032@GOTOFF(%esi), %eax
				movl	68(%ebx), %edx
				cmpl	%eax, %edx
				jne	.L1477
				movl	8(%ebx), %eax
				cmpl	$40, %eax
				jne	.L1478
				nop
				jmp	.L1370
		.L1478:
				nop
		.L1370:
  895           TYPE = 0 %IF SAVE&1 = 0;  VAL = VAL+VAL+SAVE
				movl	SAVE.6070@GOTOFF(%esi), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1479
				movl	$0, %eax
				movl	%eax, 68(%ebx)
				jmp	.L1373
		.L1479:
				nop
		.L1373:
				movl	64(%ebx), %eax
				leal	(%eax,%eax), %edx
				movl	SAVE.6070@GOTOFF(%esi), %eax
				addl	%edx, %eax
				movl	%eax, 64(%ebx)
				jmp	.L1370
		.L1477:
  896        %FINISH
  897        FAULT('I') %AND TYPE=0 %IF TYPE&OPMASK # 0
				movl	OPMASK.6025@GOTOFF(%esi), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	68(%ebx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1480
				subl	$12, %esp
				pushl	$73
				movl	%ebx, %ecx
				call	FAULT.6117
				addl	$16, %esp
				movl	$0, %eax
				movl	%eax, 68(%ebx)
				jmp	.L1375
		.L1480:
				nop
		.L1375:
  898        %IF MODE # 0 %START
				movl	20(%ebx), %eax
				testl	%eax, %eax
				je	.L1481
				nop
				jmp	.L1383
		.L1482:
  899           %IF TYPE&REGXMASK # 0 %START
				movl	REGXMASK.6036@GOTOFF(%esi), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	68(%ebx), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1482
				nop
				jmp	.L1383
		.L1484:
  900              I = TYPE&15;  I = VAL %IF I = 0
				movl	68(%ebx), %eax
				andl	$15, %eax
				movl	%eax, -36(%ebp)
				cmpl	$0, -36(%ebp)
				jne	.L1483
				movl	64(%ebx), %eax
				movl	%eax, -36(%ebp)
				jmp	.L1380
		.L1483:
				nop
		.L1380:
  901              DUSE = DUSE+1 %IF I = DREG
				movl	28(%ebx), %eax
				cmpl	%eax, -36(%ebp)
				jne	.L1484
				movl	24(%ebx), %eax
				addl	$1, %eax
				movl	%eax, 24(%ebx)
				jmp	.L1383
		.L1377:
		.L1382:
		.L1481:
				nop
		.L1383:
  902           %FINISH
  903        %FINISH
  904        %IF TERM = '(' %START
				movl	8(%ebx), %eax
				cmpl	$40, %eax
				jne	.L1485
				nop
		.L1385:
  905           GET SYM
				movl	%ebx, %ecx
				call	GETSYM.6530
  906           I = TYPE&31
				movl	68(%ebx), %eax
				andl	$31, %eax
				movl	%eax, -36(%ebp)
  907           QUEUE(TYPE-I);  QUEUE(VAL)
				movl	68(%ebx), %eax
				subl	-36(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
				movl	64(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
  908           NEST(-21);  NEST(0)
				subl	$12, %esp
				pushl	$-21
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				subl	$12, %esp
				pushl	$0
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
  909           %IF I # 0 %START
				cmpl	$0, -36(%ebp)
				je	.L1486
				nop
		.L1387:
  910              QUEUE(REG);  QUEUE(I&15)
				movl	REG.6032@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
				movl	-36(%ebp), %eax
				andl	$15, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
  911              NEST(-1)
				subl	$12, %esp
				pushl	$-1
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
  912           %FINISH
  913           ->E1
				jmp	.L1363
		.L1486:
				jmp	.L1363
		.L1485:
  914        %FINISH
  915     %finish %ELSE %IF '0' <= SYM <= '9' %START
				jmp	.L1388
		.L1475:
				movl	4(%ebx), %eax
				movl	%eax, -28(%ebp)
				cmpl	$47, -28(%ebp)
				jle	.L1487
				cmpl	$57, -28(%ebp)
				jg	.L1488
		.LBE155:
				nop
				jmp	.L1390
		.L1488:
				nop
		.L1390:
		.LBE159:
  916        TYPE = 0;  VAL = SYM-'0'
				movl	$0, %eax
				movl	%eax, 68(%ebx)
				movl	4(%ebx), %eax
				subl	$48, %eax
				movl	%eax, 64(%ebx)
		.L1392:
  917        %CYCLE
  918           SYM = CHAR(GETPOS)-'0'
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	CHAR.6102
				addl	$16, %esp
				subl	$48, %eax
				movl	%eax, 4(%ebx)
		.LBB156:
  919           %EXIT %UNLESS 0 <= SYM <= 9
				movl	4(%ebx), %eax
				movl	%eax, -24(%ebp)
				cmpl	$0, -24(%ebp)
				js	.L1489
				cmpl	$9, -24(%ebp)
				jle	.L1490
		.LBE156:
				jmp	.L1394
		.L1489:
		.LBB157:
				nop
		.L1394:
		.LBE157:
				nop
		.L1396:
				nop
		.L1395:
		.LBE158:
  920           VAL = (VAL<<2+VAL)<<1+SYM
				movl	64(%ebx), %eax
				leal	0(,%eax,4), %edx
				movl	64(%ebx), %eax
				addl	%edx, %eax
				leal	(%eax,%eax), %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				movl	%eax, 64(%ebx)
  921           GETPOS = GETPOS+1
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				addl	$1, %eax
				movl	%eax, GETPOS.6040@GOTOFF(%esi)
  922        %REPEAT
				jmp	.L1392
		.L1487:
		.LBB159:
  923        GET SYM
				movl	%ebx, %ecx
				call	GETSYM.6530
  924     %finish %ELSE %IF SYM = 'X' %START
				jmp	.L1388
		.L1490:
		.LBB158:
				movl	4(%ebx), %eax
				cmpl	$88, %eax
				jne	.L1491
				nop
  925        TYPE = 0;  VAL = 0
				movl	$0, %eax
				movl	%eax, 68(%ebx)
				movl	$0, %eax
				movl	%eax, 64(%ebx)
		.L1399:
  926        %CYCLE
  927           SYM = CHAR(GETPOS)-128
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	CHAR.6102
				addl	$16, %esp
				addl	$-128, %eax
				movl	%eax, 4(%ebx)
  928           %EXIT %IF SYM < 0
				movl	4(%ebx), %eax
				testl	%eax, %eax
				js	.L1492
				nop
		.L1401:
				nop
		.L1402:
  929           SYM = SYM-32 %IF SYM >= 96; !ENSURE UPPER-CASE
				movl	4(%ebx), %eax
				cmpl	$95, %eax
				jle	.L1493
				movl	4(%ebx), %eax
				subl	$32, %eax
				movl	%eax, 4(%ebx)
				jmp	.L1404
		.L1493:
				nop
		.L1404:
		.LBB160:
  930           %IF '0' <= SYM <= '9' %OR 'A' <= SYM <= 'F' %START
				movl	4(%ebx), %eax
				movl	%eax, -20(%ebp)
				cmpl	$47, -20(%ebp)
				jle	.L1494
				cmpl	$57, -20(%ebp)
				jle	.L1495
		.LBE160:
				jmp	.L1406
		.L1494:
		.LBB161:
				nop
		.L1406:
		.LBE161:
		.LBB162:
				movl	4(%ebx), %eax
				movl	%eax, -16(%ebp)
				cmpl	$64, -16(%ebp)
				jle	.L1496
				cmpl	$70, -16(%ebp)
				jg	.L1497
		.LBE162:
				jmp	.L1407
		.L1495:
		.LBB163:
				nop
		.L1407:
		.LBE163:
				nop
				jmp	.L1409
		.L1497:
				nop
		.L1409:
		.LBE164:
  931              VAL = VAL<<4+SYM-'0'
				movl	64(%ebx), %eax
				sall	$4, %eax
				movl	%eax, %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				subl	$48, %eax
				movl	%eax, 64(%ebx)
  932              VAL = VAL-7 %IF SYM >= 'A'
				movl	4(%ebx), %eax
				cmpl	$64, %eax
				jle	.L1498
				movl	64(%ebx), %eax
				subl	$7, %eax
				movl	%eax, 64(%ebx)
				nop
		.L1411:
  933           %finish %ELSE FAULT('H')
				jmp	.L1412
		.L1498:
				jmp	.L1412
		.L1496:
		.LBB164:
				subl	$12, %esp
				pushl	$72
				movl	%ebx, %ecx
				call	FAULT.6117
				addl	$16, %esp
		.L1412:
  934           GETPOS = GETPOS+1
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				addl	$1, %eax
				movl	%eax, GETPOS.6040@GOTOFF(%esi)
  935        %REPEAT
				jmp	.L1399
		.L1492:
  936        GET SYM
				movl	%ebx, %ecx
				call	GETSYM.6530
  937     %finish %ELSE %IF SYM&128 # 0 %START
				jmp	.L1388
		.L1398:
		.L1491:
  938        TYPE = 0;  VAL = SYM-128
				movl	$0, %eax
				movl	%eax, 68(%ebx)
				movl	4(%ebx), %eax
				addl	$-128, %eax
				movl	%eax, 64(%ebx)
  939        GET SYM
				movl	%ebx, %ecx
				call	GETSYM.6530
  940        %IF MODE >= 0 %AND SYM&128 # 0 %START
				movl	20(%ebx), %eax
				testl	%eax, %eax
				js	.L1499
				nop
		.L1414:
		.L1500:
  941           VAL = VAL<<8+SYM-128;  GET SYM
				movl	64(%ebx), %eax
				sall	$8, %eax
				movl	%eax, %edx
				movl	4(%ebx), %eax
				addl	%edx, %eax
				addl	$-128, %eax
				movl	%eax, 64(%ebx)
				movl	%ebx, %ecx
				call	GETSYM.6530
  942        %FINISH
  943     %finish %ELSE %IF S('.') %START
				jmp	.L1500
		.L1499:
				nop
		.L1388:
  944        ->ERR %IF %NOT TAG
  945        TYPE = 0;  VAL = TAG1
  946     %finish %ELSE %IF S('*') %START
  947        TYPE = LOCTYPE&63;  VAL = LOC
  948        %IF SYM = 'L' %START;          !FOR NOW
  949           TYPE = 0;  VAL = LIST %IF TAG
  950        %FINISH
  951     %finish %ELSE %IF SYM = '-' %START
  952        TYPE = 0;  VAL = 0
  953     %finish %ELSE %IF SYM = '\' %START
  954        TYPE = 0;  VAL = \0
  955     %finish %ELSE ->ERR
  956     QUEUE(TYPE);  QUEUE(VAL)
				movl	68(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
				movl	64(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
		.L1415:
  957
  958     %WHILE NP # NBASE %CYCLE
				movl	NP.6057@GOTOFF(%esi), %eax
				cmpl	%eax, -32(%ebp)
				je	.L1501
				nop
				jmp	.L1417
		.L1503:
  959        %IF INTEGER(NP) < 0 %START
				movl	NP.6057@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				testl	%eax, %eax
				jns	.L1502
				nop
		.L1419:
  960           QUEUE(INTEGER(NP))
				movl	NP.6057@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				subl	$12, %esp
				pushl	%eax
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
  961        %finish %ELSE %START
				jmp	.L1422
		.L1502:
  962           %EXIT %IF %NOT S(')')
				subl	$12, %esp
				pushl	$41
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1503
		.L1420:
				nop
		.L1422:
				nop
		.L1417:
  963        %FINISH
  964        NP = NP+1
				movl	NP.6057@GOTOFF(%esi), %eax
				addl	$1, %eax
				movl	%eax, NP.6057@GOTOFF(%esi)
  965     %REPEAT
				jmp	.L1415
		.L1501:
  966
  967     I = 1
				movl	$1, -36(%ebp)
  968     NEST(-1) %AND ->E8 %IF S('+')
				subl	$12, %esp
				pushl	$43
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1504
				subl	$12, %esp
				pushl	$-1
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				jmp	.L1425
		.L1504:
				nop
		.L1424:
  969     NEST(-2) %AND ->E8 %IF S('-')
				subl	$12, %esp
				pushl	$45
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1505
				subl	$12, %esp
				pushl	$-2
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				jmp	.L1425
		.L1505:
				nop
		.L1427:
  970     NEST(-3) %AND ->E9 %IF S('&')
				subl	$12, %esp
				pushl	$38
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1506
				subl	$12, %esp
				pushl	$-3
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				jmp	.L1430
		.L1506:
				nop
		.L1429:
  971     NEST(-4) %AND ->E9 %IF S('!')
				subl	$12, %esp
				pushl	$33
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1507
				subl	$12, %esp
				pushl	$-4
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				jmp	.L1430
		.L1507:
				nop
		.L1432:
  972     NEST(-5) %AND ->E9 %IF S('\')
				subl	$12, %esp
				pushl	$92
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1508
				subl	$12, %esp
				pushl	$-5
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				jmp	.L1430
		.L1508:
				nop
		.L1434:
  973     NEST(-6) %AND ->E9 %IF SS('<')
				subl	$12, %esp
				pushl	$60
				movl	%ebx, %ecx
				call	SS.6539
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1509
				subl	$12, %esp
				pushl	$-6
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				jmp	.L1430
		.L1509:
				nop
		.L1436:
  974     NEST(-7) %AND ->E9 %IF SS('>')
				subl	$12, %esp
				pushl	$62
				movl	%ebx, %ecx
				call	SS.6539
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1510
				subl	$12, %esp
				pushl	$-7
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				jmp	.L1430
		.L1510:
				nop
		.L1438:
  975     NEST(-8) %AND ->E9 %IF S('_')
				subl	$12, %esp
				pushl	$95
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1511
				subl	$12, %esp
				pushl	$-8
				movl	%ebx, %ecx
				call	NEST.6215
				addl	$16, %esp
				jmp	.L1430
		.L1511:
				nop
		.L1440:
  976     %RETURN %IF NP = NBASE
				movl	NP.6057@GOTOFF(%esi), %eax
				cmpl	%eax, -32(%ebp)
				je	.L1512
				nop
		.L1442:
		.L1444:
				nop
  977 ERR:NP = NBASE
				movl	-32(%ebp), %eax
				movl	%eax, NP.6057@GOTOFF(%esi)
		.L1425:
  978 !!    %MONITOR 19
  979
  980 E8: I = 0
				movl	$0, -36(%ebp)
		.L1430:
  981 E9: ->E1 %UNLESS MODE = 2 %AND NP+1 = NBASE
				movl	20(%ebx), %eax
				cmpl	$2, %eax
				jne	.L1513
				movl	NP.6057@GOTOFF(%esi), %eax
				addl	$1, %eax
				cmpl	%eax, -32(%ebp)
				je	.L1514
				jmp	.L1446
		.L1513:
				nop
		.L1446:
				jmp	.L1363
		.L1514:
				nop
		.L1447:
  982     %IF FLAG = I %THEN FLAG = QLIM %ELSE FLAG = -1
				movl	52(%ebx), %eax
				cmpl	-36(%ebp), %eax
				jne	.L1515
				movl	QLIM.6049@GOTOFF(%esi), %eax
				movl	%eax, 52(%ebx)
				nop
		.L1450:
				nop
		.L1449:
				movl	$-1, %eax
				movl	%eax, 52(%ebx)
  983     ->E1
				jmp	.L1363
		.L1515:
				jmp	.L1363
		.L1512:
  984 %END
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1451
				call	__stack_chk_fail_local
		.L1451:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE232:
		CONDIT.6658:
		.LFB233:
  985
  986 %ROUTINE CONDIT(%INTEGER QVAL)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -28(%ebp)
  987 %OWNINTEGER AND=1717, OR=16873
  988 %INTEGER J,K
  989     TRANSF = QSTART;  QSTART = QLIM
				movl	QSTART.6048@GOTOFF(%esi), %eax
				movl	%eax, TRANSF.6050@GOTOFF(%esi)
				movl	QLIM.6049@GOTOFF(%esi), %eax
				movl	%eax, QSTART.6048@GOTOFF(%esi)
  990     J = 0
				movl	$0, -16(%ebp)
		.L1517:
  991     %CYCLE
  992        GET EXP
				movl	%ebx, %ecx
				call	GETEXP.6586
  993        %IF S('=') %START
				subl	$12, %esp
				pushl	$61
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1550
				nop
		.L1519:
  994           K = 3
				movl	$3, -12(%ebp)
  995        %finish %ELSE %IF S('#') %START
				jmp	.L1520
		.L1550:
				subl	$12, %esp
				pushl	$35
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1551
				nop
		.L1522:
  996           K = \3
				movl	$-4, -12(%ebp)
  997        %finish %ELSE %IF S('<') %START
				jmp	.L1520
		.L1551:
				subl	$12, %esp
				pushl	$60
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1552
				nop
		.L1524:
  998           K = \1;  K = 2 %IF S('=')
				movl	$-2, -12(%ebp)
				subl	$12, %esp
				pushl	$61
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1553
				movl	$2, -12(%ebp)
				nop
		.L1526:
  999        %finish %ELSE %IF S('>') %START
				jmp	.L1520
		.L1553:
				jmp	.L1520
		.L1552:
				subl	$12, %esp
				pushl	$62
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1554
				nop
		.L1528:
 1000           K = \2;  K = 1 %IF S('=')
				movl	$-3, -12(%ebp)
				subl	$12, %esp
				pushl	$61
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1555
				movl	$1, -12(%ebp)
				nop
		.L1530:
 1001        %finish %ELSE %START
				jmp	.L1520
		.L1555:
				jmp	.L1520
		.L1554:
 1002           QUEUE(-12)
				subl	$12, %esp
				pushl	$-12
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1003           ->ANDOR
				jmp	.L1531
		.L1520:
 1004        %FINISH
 1005        GET EXP
				movl	%ebx, %ecx
				call	GETEXP.6586
 1006        QUEUE(-11);  QUEUE(K)
				subl	$12, %esp
				pushl	$-11
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
				subl	$12, %esp
				pushl	-12(%ebp)
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
		.L1531:
 1007 ANDOR:
 1008        %EXIT %IF %NOT TAG
				movl	%ebx, %ecx
				call	TAG.6545
				testl	%eax, %eax
				je	.L1556
				nop
		.L1533:
				nop
		.L1534:
 1009        %IF TAG1 = AND %AND TAG2 = 0 %START
				movl	AND.6660@GOTOFF(%esi), %eax
				movl	16(%ebx), %edx
				cmpl	%eax, %edx
				jne	.L1557
				movl	12(%ebx), %eax
				testl	%eax, %eax
				jne	.L1558
				nop
				jmp	.L1536
		.L1558:
				nop
		.L1536:
 1010 !!          %MONITOR 19 %IF J < 0
 1011           J = 1;  QUEUE(-13)
				movl	$1, -16(%ebp)
				subl	$12, %esp
				pushl	$-13
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1012        %finish %ELSE %START
				jmp	.L1538
		.L1557:
 1013 !!          %MONITOR 19 %IF TAG1 # OR %OR J > 0
 1014           J = -1;  QUEUE(-14)
				movl	$-1, -16(%ebp)
				subl	$12, %esp
				pushl	$-14
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
		.L1538:
 1015        %FINISH
 1016     %REPEAT
				jmp	.L1517
		.L1556:
 1017     QUEUE(QVAL) %IF QVAL # 0
				cmpl	$0, 8(%ebp)
				je	.L1559
				subl	$12, %esp
				pushl	8(%ebp)
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
				jmp	.L1540
		.L1559:
				nop
		.L1540:
 1018     ASSEMBLE
				movl	%ebx, %ecx
				call	ASSEMBLE.6234
 1019     ATYPE=-1 %AND CREG=-1 %IF J < 0
				cmpl	$0, -16(%ebp)
				jns	.L1560
				movl	$-1, %eax
				movl	%eax, 60(%ebx)
				movl	$-1, %eax
				movl	%eax, 56(%ebx)
				nop
		.L1542:
 1020 %END
				jmp	.L1542
		.L1560:
				nop
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE233:
		GETINST.6680:
		.LFB234:
?OR unused
 1021
 1022 %ROUTINE GET INST
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$20, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %ebx
				movl	%ecx, -12(%ebp)
 1023 %INTEGER I
 1024 !OPMASK VALUES
 1025 !    0100,0110,1100,1101,1110: DOUBLE WORD INSTRUCTIONS
 1026 !    1011,1001,0011,0010,0001: AS ABOVE BUT RELOCATABLE
 1027 !    0101: SINGLE WORD INSTRUCTION
 1028 !    0111: 2 OPERANDS TO COME
 1029 !    1111: 1 OPERAND TO COME
 1030 !    1010: MACRO
 1031     QUEUE(TYPE);  QUEUE(VAL)
				movl	68(%ebx), %eax
				pushl	%eax
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$4, %esp
				movl	64(%ebx), %eax
				pushl	%eax
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$4, %esp
 1032     %RETURN %IF TYPE&16_7000 # 16_7000
				movl	68(%ebx), %eax
				andl	$1, %eax
				testl	%eax, %eax
				je	.L1570
				nop
		.L1563:
				nop
				jmp	.L1561
		.L1571:
 1033     %RETURN %IF TERM # ' ';           !NO OPERAND FOLLOWING =>
				movl	8(%ebx), %eax
				cmpl	$32, %eax
				jne	.L1571
				nop
		.L1566:
		.L1567:
				nop
				jmp	.L1561
		.L1572:
 1034     %CYCLE
 1035        GET EXP
				movl	%ebx, %ecx
				call	GETEXP.6586
 1036        QUEUE(-22)
				subl	$12, %esp
				pushl	$-22
				movl	%ebx, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1037        %RETURN %IF %NOT S(',')
				subl	$12, %esp
				pushl	$44
				movl	%ebx, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1572
				nop
		.L1569:
				nop
		.L1561:
 1038     %REPEAT
				jmp	.L1566
		.L1570:
 1039 %END
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE234:
		READLINE.6688:
		.LFB235:
?I unused
 1040
 1041 %ROUTINE READ LINE
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$48, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -44(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
 1042 %INTEGER Q
 1043     PUTPOS = STARTPOS
				movl	STARTPOS.6039@GOTOFF(%ebx), %eax
				movl	%eax, PUTPOS.6041@GOTOFF(%ebx)
 1044     %IF MP = 0 %START
				movl	MP.6046@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L1632
				nop
		.L1575:
 1045        Q = 0;  PSEUDOLIM = 0
				movl	$0, -28(%ebp)
				movl	$0, PSEUDOLIM.6042@GOTOFF(%ebx)
		.L1576:
 1046        %CYCLE
 1047           READ SYMBOL(SYM)
				leal	4(%esi), %eax
				movl	%eax, -24(%ebp)
		.LBB165:
		.LBB166:
				subl	$12, %esp
				pushl	-24(%ebp)
				call	_imp_readsymbol@PLT
				addl	$16, %esp
		.LBE166:
		.LBE165:
 1048           READ SYMBOL(SYM) %AND Q=Q!!128 %IF SYM = ''''
				movl	4(%esi), %eax
				cmpl	$39, %eax
				jne	.L1633
				leal	4(%esi), %eax
				movl	%eax, -20(%ebp)
		.LBB167:
		.LBB168:
				subl	$12, %esp
				pushl	-20(%ebp)
				call	_imp_readsymbol@PLT
				addl	$16, %esp
		.LBE168:
		.LBE167:
				xorl	$128, -28(%ebp)
				jmp	.L1578
		.L1633:
				nop
		.L1578:
 1049           %EXIT %IF SYM = NL
				movl	4(%esi), %eax
				cmpl	$10, %eax
				je	.L1634
				nop
		.L1580:
				nop
				jmp	.L1581
		.L1637:
 1050           SYM = SYM-32 %IF SYM-Q >= 96; !LOWER-CASE -> UPPER-CASE
				movl	4(%esi), %eax
				subl	-28(%ebp), %eax
				cmpl	$95, %eax
				jle	.L1635
				movl	4(%esi), %eax
				subl	$32, %eax
				movl	%eax, 4(%esi)
				jmp	.L1583
		.L1635:
				nop
		.L1583:
 1051           SYM = SYM+Q
				movl	4(%esi), %edx
				movl	-28(%ebp), %eax
				addl	%edx, %eax
				movl	%eax, 4(%esi)
 1052           %EXIT %IF SYM = '/' %AND PSEUDOLIM # 0
				movl	4(%esi), %eax
				cmpl	$47, %eax
				jne	.L1636
				movl	PSEUDOLIM.6042@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L1637
				jmp	.L1585
		.L1636:
				nop
		.L1585:
				nop
		.L1581:
 1053           %IF SYM = ' ' %START
				movl	4(%esi), %eax
				cmpl	$32, %eax
				jne	.L1638
				nop
		.L1588:
 1054              PSEUDOLIM = PUTPOS %IF PSEUDOLIM = 0
				movl	PSEUDOLIM.6042@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L1639
				movl	PUTPOS.6041@GOTOFF(%ebx), %eax
				movl	%eax, PSEUDOLIM.6042@GOTOFF(%ebx)
				nop
		.L1590:
 1055           %finish %ELSE PSEUDOLIM = 0
				jmp	.L1591
		.L1639:
				jmp	.L1591
		.L1638:
				movl	$0, PSEUDOLIM.6042@GOTOFF(%ebx)
		.L1591:
 1056           PUT CHAR(SYM)
				movl	4(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	PUTCHAR.6111
				addl	$16, %esp
 1057        %REPEAT
				jmp	.L1576
		.L1634:
 1058        %IF PSEUDOLIM # 0 %START
				movl	PSEUDOLIM.6042@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L1640
				nop
		.L1594:
		.L1598:
 1059           Q = PUTPOS;  PUTPOS = PSEUDOLIM
				movl	PUTPOS.6041@GOTOFF(%ebx), %eax
				movl	%eax, -28(%ebp)
				movl	PSEUDOLIM.6042@GOTOFF(%ebx), %eax
				movl	%eax, PUTPOS.6041@GOTOFF(%ebx)
 1060           PUT CHAR(NL)
				subl	$12, %esp
				pushl	$10
				movl	%esi, %ecx
				call	PUTCHAR.6111
				addl	$16, %esp
 1061           PUTPOS = Q
				movl	-28(%ebp), %eax
				movl	%eax, PUTPOS.6041@GOTOFF(%ebx)
				jmp	.L1598
		.L1593:
		.L1640:
 1062        %FINISH
 1063        %CYCLE
 1064           PUT CHAR(SYM)
				movl	4(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	PUTCHAR.6111
				addl	$16, %esp
 1065           %EXIT %IF SYM = NL
				movl	4(%esi), %eax
				cmpl	$10, %eax
				je	.L1641
				nop
		.L1596:
				nop
		.L1597:
 1066           READ SYMBOL(SYM)
				leal	4(%esi), %eax
				movl	%eax, -16(%ebp)
		.LBB169:
		.LBB170:
				subl	$12, %esp
				pushl	-16(%ebp)
				call	_imp_readsymbol@PLT
				addl	$16, %esp
		.LBE170:
		.LBE169:
 1067        %REPEAT
				jmp	.L1598
		.L1641:
 1068        PRINTPOS = STARTPOS
				movl	STARTPOS.6039@GOTOFF(%ebx), %eax
				movl	%eax, PRINTPOS.6043@GOTOFF(%ebx)
 1069     %finish %ELSE %START
				jmp	.L1599
		.L1632:
 1070        GETPOS = INTEGER(MP)
				movl	MP.6046@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, GETPOS.6040@GOTOFF(%ebx)
 1071        %IF CHAR(GETPOS) = 0 %START
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	CHAR.6102
				addl	$16, %esp
				testl	%eax, %eax
				jne	.L1642
				nop
 1072           QBASE = MP
				movl	MP.6046@GOTOFF(%ebx), %eax
				movl	%eax, QBASE.6047@GOTOFF(%ebx)
 1073           GETPOS = INTEGER(MP+2)
				movl	MP.6046@GOTOFF(%ebx), %eax
				addl	$2, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, GETPOS.6040@GOTOFF(%ebx)
 1074           STARTPOS = INTEGER(MP+3)
				movl	MP.6046@GOTOFF(%ebx), %eax
				addl	$3, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, STARTPOS.6039@GOTOFF(%ebx)
 1075           MP = INTEGER(MP+4)
				movl	MP.6046@GOTOFF(%ebx), %eax
				addl	$4, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, MP.6046@GOTOFF(%ebx)
 1076           %IF MP < 0 %START
				movl	MP.6046@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jns	.L1643
				nop
		.L1625:
 1077              MP = MP-8_700000
				movl	MP.6046@GOTOFF(%ebx), %eax
				subl	$229376, %eax
				movl	%eax, MP.6046@GOTOFF(%ebx)
		.L1604:
 1078              %WHILE INTEGER(NP)&16_8000 = 0 %CYCLE
				movl	NP.6057@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1644
				nop
		.L1606:
 1079                 FAULT('C');  NP = NP+2
				subl	$12, %esp
				pushl	$67
				movl	%esi, %ecx
				call	FAULT.6117
				addl	$16, %esp
				movl	NP.6057@GOTOFF(%ebx), %eax
				addl	$2, %eax
				movl	%eax, NP.6057@GOTOFF(%ebx)
 1080              %REPEAT
				jmp	.L1604
		.L1644:
 1081              SET LAB(LOC)
				movl	76(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	SETLAB.6218
				addl	$16, %esp
				jmp	.L1625
		.L1603:
		.L1643:
 1082           %FINISH
 1083           PRINTPOS = 0 %IF LIST&2 # 0
				movl	$0, PRINTPOS.6043@GOTOFF(%ebx)
		.L1607:
 1084           GET SYM;                    !TERMINATOR
				movl	%esi, %ecx
				call	GETSYM.6530
 1085           GET SYM %IF SYM = ';'
				movl	4(%esi), %eax
				cmpl	$59, %eax
				jne	.L1645
				movl	%esi, %ecx
				call	GETSYM.6530
				nop
		.L1609:
 1086           %RETURN
				jmp	.L1573
		.L1645:
				jmp	.L1573
		.L1601:
		.L1642:
 1087        %FINISH
 1088        PRINTPOS = STARTPOS %IF LIST&2 # 0
				movl	STARTPOS.6039@GOTOFF(%ebx), %eax
				movl	%eax, PRINTPOS.6043@GOTOFF(%ebx)
		.L1611:
 1089        QQ = 0
				movl	$0, QQ.6090@GOTOFF(%ebx)
		.L1612:
 1090        %CYCLE
 1091           SYM = CHAR(GETPOS);  GETPOS = GETPOS+1
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	CHAR.6102
				addl	$16, %esp
				movl	%eax, 4(%esi)
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, GETPOS.6040@GOTOFF(%ebx)
 1092           %IF TAG %START
				movl	%esi, %ecx
				call	TAG.6545
				testl	%eax, %eax
				je	.L1646
				nop
				jmp	.L1619
		.L1648:
 1093              SYM=TERM %AND GETPOS=GETPOS-1 %IF TERM = ' '
				movl	8(%esi), %eax
				cmpl	$32, %eax
				jne	.L1647
				movl	8(%esi), %eax
				movl	%eax, 4(%esi)
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, GETPOS.6040@GOTOFF(%ebx)
				jmp	.L1616
		.L1647:
				nop
		.L1616:
 1094              TYPE = INTEGER(MP);  VAL = GETPOS-1
				movl	MP.6046@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, 68(%esi)
				movl	GETPOS.6040@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, 64(%esi)
 1095              LOOKUP(4)
				subl	$12, %esp
				pushl	$4
				movl	%esi, %ecx
				call	LOOKUP.6496
				addl	$16, %esp
		.L1617:
 1096              %WHILE TYPE # VAL %CYCLE
				movl	68(%esi), %edx
				movl	64(%esi), %eax
				cmpl	%eax, %edx
				je	.L1648
				nop
		.L1619:
 1097                 PUT CHAR(CHAR(TYPE))
				movl	68(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	CHAR.6102
				addl	$16, %esp
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	PUTCHAR.6111
				addl	$16, %esp
 1098                 TYPE = TYPE+1
				movl	68(%esi), %eax
				addl	$1, %eax
				movl	%eax, 68(%esi)
 1099              %REPEAT
				jmp	.L1617
		.L1614:
		.L1646:
 1100           %FINISH
 1101           PUT CHAR(SYM)
				movl	4(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ecx
				call	PUTCHAR.6111
				addl	$16, %esp
 1102 !!          INTEGER(MP) = GETPOS
 1103           set INTEGER(MP, GETPOS)
				movl	GETPOS.6040@GOTOFF(%ebx), %edx
				movl	MP.6046@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				movl	%esi, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
 1104           %EXIT %IF SYM = NL
				movl	4(%esi), %eax
				cmpl	$10, %eax
				je	.L1649
				nop
		.L1621:
				nop
		.L1622:
 1105        %REPEAT
				jmp	.L1612
		.L1649:
 1106        QQ = '?'
				movl	$63, QQ.6090@GOTOFF(%ebx)
		.L1599:
 1107     %FINISH
 1108     QBASE = (PUTPOS+1)>>1
				movl	PUTPOS.6041@GOTOFF(%ebx), %eax
				addl	$1, %eax
				shrl	%eax
				movl	%eax, QBASE.6047@GOTOFF(%ebx)
 1109     GETPOS = STARTPOS;  GET SYM
				movl	STARTPOS.6039@GOTOFF(%ebx), %eax
				movl	%eax, GETPOS.6040@GOTOFF(%ebx)
				movl	%esi, %ecx
				call	GETSYM.6530
 1110 %END
				nop
		.L1573:
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1623
				call	__stack_chk_fail_local
		.L1623:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE235:
		SCANARG.6721:
		.LFB236:
 1111
 1112 %ROUTINE SCAN ARG
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%ecx, %ebx
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
 1113 !    SET TYPE,VAL TO START,LIM OF ARG IF NOT NULL
 1114 %INTEGER I,J
 1115     %RETURN %IF SYM='I' %AND CHAR(GETPOS)='F' %AND CHAR(GETPOS+1)=' '
				movl	4(%ebx), %eax
				cmpl	$73, %eax
				jne	.L1678
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				pushl	%eax
				movl	%ebx, %ecx
				call	CHAR.6102
				addl	$4, %esp
				cmpl	$70, %eax
				jne	.L1679
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				addl	$1, %eax
				pushl	%eax
				movl	%ebx, %ecx
				call	CHAR.6102
				addl	$4, %esp
				cmpl	$32, %eax
				je	.L1680
				jmp	.L1652
		.L1678:
				nop
				jmp	.L1652
		.L1679:
				nop
		.L1652:
				nop
		.L1650:
 1116     I = GETPOS-1;  I = GETPOS %IF SYM = '['
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				subl	$1, %eax
				movl	%eax, -20(%ebp)
				movl	4(%ebx), %eax
				cmpl	$91, %eax
				jne	.L1681
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				movl	%eax, -20(%ebp)
				jmp	.L1657
		.L1681:
				nop
		.L1657:
 1117     J = 0
				movl	$0, -16(%ebp)
		.L1658:
 1118     %CYCLE
 1119        %EXIT %IF SYM = NL
				movl	4(%ebx), %eax
				cmpl	$10, %eax
				je	.L1682
				nop
		.L1660:
				nop
				jmp	.L1661
		.L1686:
 1120        %EXIT %IF (SYM=' ' %OR SYM=',' %OR SYM=';') %AND J<=0
				movl	4(%ebx), %eax
				cmpl	$32, %eax
				je	.L1683
				movl	4(%ebx), %eax
				cmpl	$44, %eax
				je	.L1684
				movl	4(%ebx), %eax
				cmpl	$59, %eax
				jne	.L1685
				jmp	.L1663
		.L1683:
				nop
				jmp	.L1663
		.L1684:
				nop
		.L1663:
				cmpl	$0, -16(%ebp)
				jle	.L1686
				jmp	.L1665
		.L1685:
				nop
		.L1665:
				nop
				jmp	.L1661
		.L1689:
 1121        J = J+1 %IF SYM = '['
				movl	4(%ebx), %eax
				cmpl	$91, %eax
				jne	.L1687
				addl	$1, -16(%ebp)
				jmp	.L1668
		.L1687:
				nop
		.L1668:
 1122        %IF SYM = ']' %START
				movl	4(%ebx), %eax
				cmpl	$93, %eax
				jne	.L1688
				nop
		.L1672:
 1123           J = J-1;  %EXIT %IF J = 0
				subl	$1, -16(%ebp)
				cmpl	$0, -16(%ebp)
				je	.L1689
				jmp	.L1672
		.L1670:
		.L1688:
				nop
		.L1661:
 1124        %FINISH
 1125        SYM = CHAR(GETPOS);  GETPOS = GETPOS+1
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				pushl	%eax
				movl	%ebx, %ecx
				call	CHAR.6102
				addl	$4, %esp
				movl	%eax, 4(%ebx)
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				addl	$1, %eax
				movl	%eax, GETPOS.6040@GOTOFF(%esi)
 1126     %REPEAT
				jmp	.L1658
		.L1682:
 1127     %IF GETPOS-1 # I %START
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				subl	$1, %eax
				cmpl	%eax, -20(%ebp)
				je	.L1690
				nop
		.L1674:
 1128        TYPE = I;  VAL = GETPOS-1
				movl	-20(%ebp), %eax
				movl	%eax, 68(%ebx)
				movl	GETPOS.6040@GOTOFF(%esi), %eax
				subl	$1, %eax
				movl	%eax, 64(%ebx)
				jmp	.L1674
		.L1690:
 1129     %FINISH
 1130     GET SYM %IF SYM = ']'
				movl	4(%ebx), %eax
				cmpl	$93, %eax
				jne	.L1691
				movl	%ebx, %ecx
				call	GETSYM.6530
				nop
		.L1676:
 1131 %END
				jmp	.L1676
		.L1691:
				nop
				jmp	.L1650
		.L1680:
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1677
				call	__stack_chk_fail_local
		.L1677:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE236:
		SETACC.6738:
		.LFB237:
 1132
 1133
 1134 %ROUTINE SET ACC
				pushl	%ebp
				movl	%esp, %ebp
				subl	$20, %esp
				call	__x86.get_pc_thunk.dx
				addl	$_GLOBAL_OFFSET_TABLE_, %edx
				movl	%ecx, %eax
				movl	%ecx, -20(%ebp)
 1135 %INTEGER I
 1136     ACC = -1;  ATYPE = -1;  CREG = -1
				movl	$-1, %ecx
				movl	%ecx, 40(%eax)
				movl	$-1, %ecx
				movl	%ecx, 60(%eax)
				movl	$-1, %ecx
				movl	%ecx, 56(%eax)
 1137     I = TEMPS
				movl	TEMPS.6071@GOTOFF(%edx), %edx
				movl	%edx, -4(%ebp)
 1138     %RETURN %IF I = 0
				cmpl	$0, -4(%ebp)
				je	.L1697
				nop
		.L1694:
		.L1696:
				nop
		.L1692:
 1139     %CYCLE
 1140        ACC = ACC+1
				movl	40(%eax), %edx
				addl	$1, %edx
				movl	%edx, 40(%eax)
 1141        %RETURN %IF I&1 # 0
				nop
				jmp	.L1692
		.L1697:
 1142        I = I>>1
 1143     %REPEAT
 1144 %END
				leave
				ret
		.LFE237:
		BNEST.6944:
		.LFB238:
 1145
 1146 !MAIN PROGRAM
 1147
 1148 !RADIX 36 CONSTANTS
 1149 %OWNINTEGER B=2184, IF=9991, ELS=5950, E=5403, FIN=6907, ISH=10490
 1150 %OWNINTEGER JUM=11642, P=17206, PS=17983, DEF=4605, END=6009
 1151
 1152 %INTEGER I,J,K
 1153 !!%FAULT 19 ->ERR;                      !RECOGNITION ERROR
 1154 !!%FAULT 9 ->BEND;                      !INPUT ENDED
 1155
 1156     %on %event 9,1 %start
				subl	$8, %esp
				pushl	$1
				movl	_imp_event@GOT(%esi), %eax
				leal	532(%eax), %eax
				pushl	%eax
				movl	%esi, %ebx
				call	__sigsetjmp@PLT
				addl	$16, %esp
				testl	%eax, %eax
				jne	.L17
		.LBB78:
				movl	$1, -3640(%ebp)
				movl	$9, -3636(%ebp)
				movl	$0, -4668(%ebp)
		.LBB79:
				movl	$0, -4664(%ebp)
				jmp	.L18
		.L19:
				movl	-4664(%ebp), %eax
				movl	-3640(%ebp,%eax,4), %eax
				movl	$1, %edx
				movl	%eax, %ecx
				sall	%cl, %edx
				movl	%edx, %eax
				orl	%eax, -4668(%ebp)
				addl	$1, -4664(%ebp)
		.L18:
				cmpl	$1, -4664(%ebp)
				jbe	.L19
		.LBE79:
				movl	-4668(%ebp), %eax
		.LBE78:
				subl	$8, %esp
				pushl	%eax
				movl	-4704(%ebp), %ebx
				movl	_imp_event@GOT(%ebx), %eax
				pushl	%eax
				call	_imp_on_event_enter@PLT
				addl	$16, %esp
				testl	%eax, %eax
				jne	.L340
		.L17:
				nop
		.L20:
		.LBB82:
 1157        ->err %if event_event = 9
				leal	-2104(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_EVENT
				addl	$12, %esp
				movl	-2104(%ebp), %eax
				cmpl	$9, %eax
				je	.L341
				nop
		.L22:
				nop
				jmp	.L215
		.L347:
 1158        ->bend %if event_event = 1 %and event_sub = 9
				leal	-1412(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_EVENT
				addl	$12, %esp
				movl	-1412(%ebp), %eax
				cmpl	$1, %eax
				jne	.L342
				leal	-720(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_EVENT
				addl	$12, %esp
				movl	-716(%ebp), %eax
				cmpl	$9, %eax
				je	.L343
				jmp	.L25
		.L342:
				nop
		.L25:
				movl	$0, -4656(%ebp)
		.LBB80:
		.LBB81:
				subl	$12, %esp
				pushl	-4656(%ebp)
				movl	-4704(%ebp), %ebx
				call	exit@PLT
		.L340:
		.LBE81:
		.LBE80:
				nop
				jmp	.L27
		.L361:
 1159        %stop
 1160     %finish
 1161
 1162     open input(MAIN, "interdata/test.hal")
				leal	-3640(%ebp), %eax
				movl	-4704(%ebp), %ebx
				leal	.LC0@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-4408(%ebp), %eax
				leal	-3640(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE82:
				movl	MAIN.6021@GOTOFF(%ebx), %eax
				movl	%eax, -4652(%ebp)
				leal	-3128(%ebp), %eax
				leal	-4408(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBB83:
		.LBB84:
				subl	$12, %esp
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-3128(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				pushl	-4652(%ebp)
				movl	%ebx, %edi
				movl	%edi, %ebx
				call	_imp_openinput@PLT
				addl	$272, %esp
		.LBE84:
		.LBE83:
		.LBB85:
 1163     open input(PRE, "interdata/hal70.def")
				leal	-3640(%ebp), %eax
				movl	%edi, %ebx
				leal	.LC1@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-4152(%ebp), %eax
				leal	-3640(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE85:
				movl	PRE.6022@GOTOFF(%ebx), %eax
				movl	%eax, -4648(%ebp)
				leal	-2872(%ebp), %eax
				leal	-4152(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBB86:
		.LBB87:
				subl	$12, %esp
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-2872(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				pushl	-4648(%ebp)
				movl	%ebx, %edi
				movl	%edi, %ebx
				call	_imp_openinput@PLT
				addl	$272, %esp
		.LBE87:
		.LBE86:
		.LBB88:
 1164     open output(BIN, "interdata/test.bin")
				leal	-3640(%ebp), %eax
				movl	%edi, %ebx
				leal	.LC2@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-3896(%ebp), %eax
				leal	-3640(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE88:
				movl	BIN.6023@GOTOFF(%ebx), %eax
				movl	%eax, -4644(%ebp)
				leal	-2616(%ebp), %eax
				leal	-3896(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBB89:
		.LBB90:
				subl	$12, %esp
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-2616(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				pushl	-4644(%ebp)
				movl	%ebx, %edi
				movl	%edi, %ebx
				call	_imp_openoutput@PLT
				addl	$272, %esp
		.LBE90:
		.LBE89:
		.LBB91:
 1165     open output(LIS, "interdata/test.lis")
				leal	-3640(%ebp), %eax
				movl	%edi, %ebx
				leal	.LC3@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-3384(%ebp), %eax
				leal	-3640(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE91:
				movl	LIS.6024@GOTOFF(%ebx), %eax
				movl	%eax, -4640(%ebp)
				leal	-2360(%ebp), %eax
				leal	-3384(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBB92:
		.LBB93:
				subl	$12, %esp
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-2360(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				pushl	-4640(%ebp)
				call	_imp_openoutput@PLT
				addl	$272, %esp
		.LBE93:
		.LBE92:
 1166     select output(0)
				subl	$12, %esp
				pushl	$0
				call	_imp_SELECTOUTPUT
				addl	$16, %esp
 1167
 1168     %CYCLE I = 1,1,SBOUND
				movl	$0, -4676(%ebp)
		.L28:
				cmpl	$32512, -4676(%ebp)
				je	.L344
				addl	$1, -4676(%ebp)
				nop
		.L30:
 1169        STORE(I) = 0
				movl	-4676(%ebp), %eax
				subl	$1, %eax
				movl	-4704(%ebp), %ecx
				movl	$0, STORE.6093@GOTOFF(%ecx,%eax,4)
 1170     %REPEAT
				jmp	.L28
		.L344:
 1171 !!    CODEPOS = ADDR(STORE(1))
 1172 {}    CODEPOS = 1
				movl	-4704(%ebp), %ebx
				movl	$1, CODEPOS.6038@GOTOFF(%ebx)
 1173     MACLIM = (CODEPOS+20)<<1
				movl	CODEPOS.6038@GOTOFF(%ebx), %eax
				addl	$20, %eax
				addl	%eax, %eax
				movl	%eax, MACLIM.6045@GOTOFF(%ebx)
 1174 !!    STORELIM = ADDR(STORE(SBOUND))
 1175 {}    STORELIM = sbound
				movl	$32512, STORELIM.6058@GOTOFF(%ebx)
 1176     NP = STORELIM
				movl	STORELIM.6058@GOTOFF(%ebx), %eax
				movl	%eax, NP.6057@GOTOFF(%ebx)
 1177     LABLIM = NP-60
				movl	NP.6057@GOTOFF(%ebx), %eax
				subl	$60, %eax
				movl	%eax, LABLIM.6055@GOTOFF(%ebx)
 1178     BP = LABLIM
				movl	LABLIM.6055@GOTOFF(%ebx), %eax
				movl	%eax, BP.6056@GOTOFF(%ebx)
 1179     DEFLIM = BP-(SBOUND>>2)
				movl	BP.6056@GOTOFF(%ebx), %eax
				subl	$8128, %eax
				movl	%eax, DEFLIM.6052@GOTOFF(%ebx)
 1180     DEFMIN = DEFLIM
				movl	DEFLIM.6052@GOTOFF(%ebx), %eax
				movl	%eax, DEFMIN.6051@GOTOFF(%ebx)
 1181 !!    INTEGER(BP) = DEFLIM
 1182     set INTEGER(BP, DEFLIM)
				movl	DEFLIM.6052@GOTOFF(%ebx), %ecx
				movl	BP.6056@GOTOFF(%ebx), %edx
				subl	$8, %esp
				leal	-4632(%ebp), %eax
				pushl	%ecx
				pushl	%edx
				movl	%eax, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
 1183     SELECT INPUT(PRE)
				movl	PRE.6022@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_SELECTINPUT
				addl	$16, %esp
				jmp	.L31
		.L465:
 1184 DO PASS:
 1185     STARTPOS = MACLIM
				movl	-4704(%ebp), %edi
				movl	MACLIM.6045@GOTOFF(%edi), %eax
				movl	%eax, STARTPOS.6039@GOTOFF(%edi)
 1186     MP = 0
				movl	$0, MP.6046@GOTOFF(%edi)
 1187     ALMAX = DEFLIM
				movl	DEFLIM.6052@GOTOFF(%edi), %eax
				movl	%eax, ALMAX.6053@GOTOFF(%edi)
 1188     LABMIN = LABLIM
				movl	%edi, %eax
				movl	LABLIM.6055@GOTOFF(%eax), %eax
				movl	%eax, LABMIN.6054@GOTOFF(%edi)
 1189     ASSCOND = 1;  SKIP = 0
				movl	$1, -4684(%ebp)
				movl	$0, -4680(%ebp)
 1190     LOCTYPE = MEMMASK+RELMASK;  LOC = 0
				movl	%edi, %eax
				movl	MEMMASK.6033@GOTOFF(%eax), %edx
				movl	%edi, %eax
				movl	RELMASK.6034@GOTOFF(%eax), %eax
				addl	%edx, %eax
				movl	%eax, -4560(%ebp)
				movl	$0, %eax
				movl	%eax, -4556(%ebp)
 1191     SET ACC
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	SETACC.6738
				jmp	.L32
		.L421:
 1192 READ: FSYM = ' ';  FAULTPOS = 0
				movl	$32, %eax
				movl	%eax, -4552(%ebp)
				movl	-4704(%ebp), %eax
				movl	$0, FAULTPOS.6044@GOTOFF(%eax)
 1193     READ LINE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	READLINE.6688
		.L33:
 1194 NEXT:
 1195     DREG = -1
				movl	$-1, %eax
				movl	%eax, -4604(%ebp)
 1196     MODE = 0
				movl	$0, %eax
				movl	%eax, -4612(%ebp)
 1197     PEND = 0;  COND = 0
				movl	$0, %eax
				movl	%eax, -4632(%ebp)
				movl	$0, %eax
				movl	%eax, -4584(%ebp)
 1198     QSTART = QBASE;  QLIM = QSTART
				movl	-4704(%ebp), %esi
				movl	QBASE.6047@GOTOFF(%esi), %eax
				movl	%eax, QSTART.6048@GOTOFF(%esi)
				movl	QSTART.6048@GOTOFF(%esi), %eax
				movl	%eax, QLIM.6049@GOTOFF(%esi)
 1199     FLAG = 0
				movl	$0, %eax
				movl	%eax, -4580(%ebp)
 1200     %IF S('$') %START
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$36
				movl	%eax, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L345
				nop
		.L35:
 1201        ->NEWPAGE %IF SYM = '/'
				movl	-4628(%ebp), %eax
				cmpl	$47, %eax
				je	.L346
				nop
		.L37:
				nop
				jmp	.L264
		.L460:
 1202        ->ERR %IF %NOT TAG
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAG.6545
				testl	%eax, %eax
				je	.L347
				nop
		.L40:
				nop
				jmp	.L215
		.L369:
 1203        ->ASSIF %IF TAG1 = IF
				movl	-4704(%ebp), %eax
				movl	IF.6745@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				je	.L348
				nop
		.L42:
				nop
		.L43:
 1204        ->ASSELSE %IF TAG1 = ELS
				movl	-4704(%ebp), %eax
				movl	ELS.6746@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				je	.L349
				nop
		.L45:
				nop
		.L46:
 1205        ->ASSFIN %IF TAG1 = FIN
				movl	-4704(%ebp), %eax
				movl	FIN.6748@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				je	.L350
				nop
		.L48:
				nop
		.L49:
 1206        ->LEND %IF SKIP # 0
				cmpl	$0, -4680(%ebp)
				jne	.L351
				nop
		.L51:
				nop
				jmp	.L52
		.L364:
 1207        ->DEFINE %IF TAG1 = DEF
				movl	-4704(%ebp), %eax
				movl	DEF.6753@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				je	.L352
				nop
		.L54:
				nop
				jmp	.L55
		.L353:
 1208        ->DEFINE %IF TAG1 = 19625;     !RED
				movl	-4616(%ebp), %eax
				cmpl	$19625, %eax
				je	.L353
				nop
		.L57:
				nop
		.L55:
 1209        ->LISTC %IF TAG1 = 13350;      !LIS
				movl	-4616(%ebp), %eax
				cmpl	$13350, %eax
				je	.L354
				nop
		.L59:
				nop
		.L60:
 1210        ->TEMP %IF TAG1 = 21780;       !TEM
				movl	-4616(%ebp), %eax
				cmpl	$21780, %eax
				je	.L355
				nop
		.L62:
				nop
		.L63:
 1211        ->LOCC %IF TAG1 = 13556;       !LOC
				movl	-4616(%ebp), %eax
				cmpl	$13556, %eax
				je	.L356
				nop
		.L65:
				nop
				jmp	.L66
		.L357:
 1212        ->LOCC %IF TAG1 = 1917;        !ASS
				movl	-4616(%ebp), %eax
				cmpl	$1917, %eax
				je	.L357
				nop
		.L68:
				nop
		.L66:
 1213        ->SAVC %IF TAG1 = 20568;       !SAV
				movl	-4616(%ebp), %eax
				cmpl	$20568, %eax
				je	.L358
				nop
		.L70:
				nop
		.L71:
 1214        ->MACDEF %IF TAG1 = 14111;     !MAC
				movl	-4616(%ebp), %eax
				cmpl	$14111, %eax
				je	.L359
				nop
		.L73:
				nop
		.L74:
 1215        ->BEGIN %IF TAG1 = 2460;       !BEG
				movl	-4616(%ebp), %eax
				cmpl	$2460, %eax
				je	.L360
				nop
		.L76:
				nop
		.L77:
 1216        ->BEND %IF TAG1 = END
				movl	-4704(%ebp), %eax
				movl	END.6754@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				je	.L361
				nop
		.L79:
				nop
		.L27:
 1217        FAULT('U')
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$85
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
 1218        ->LEND
				jmp	.L52
		.L345:
 1219     %FINISH
 1220     ->LEND %IF SKIP # 0 %OR SYM = '/'
				cmpl	$0, -4680(%ebp)
				jne	.L362
				movl	-4628(%ebp), %eax
				cmpl	$47, %eax
				jne	.L363
				jmp	.L81
		.L362:
				nop
		.L81:
				jmp	.L52
		.L363:
				nop
		.L82:
 1221     ->LEND %IF SYM = NL
				movl	-4628(%ebp), %eax
				cmpl	$10, %eax
				je	.L364
				nop
		.L84:
				nop
				jmp	.L52
		.L418:
 1222     %IF TAG %START
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAG.6545
				testl	%eax, %eax
				je	.L365
				nop
		.L86:
 1223        ->LABDEF %IF TERM = ':'
				movl	-4624(%ebp), %eax
				cmpl	$58, %eax
				je	.L366
				nop
		.L88:
				nop
		.L89:
 1224        MODE = 1
				movl	$1, %eax
				movl	%eax, -4612(%ebp)
 1225        ->ASSIGN %IF TERM = '(' %OR SYM = '='
				movl	-4624(%ebp), %eax
				cmpl	$40, %eax
				je	.L367
				movl	-4628(%ebp), %eax
				cmpl	$61, %eax
				jne	.L368
				jmp	.L91
		.L367:
				nop
		.L91:
				nop
		.L93:
				nop
		.L92:
 1226        ->JUMP %IF TAG1 = JUM %AND (TAG2=P %OR TAG2=PS)
				movl	-4704(%ebp), %eax
				movl	JUM.6750@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L370
				movl	-4704(%ebp), %eax
				movl	P.6751@GOTOFF(%eax), %eax
				movl	-4620(%ebp), %edx
				cmpl	%eax, %edx
				je	.L371
				movl	-4704(%ebp), %eax
				movl	PS.6752@GOTOFF(%eax), %eax
				movl	-4620(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L372
				jmp	.L97
		.L371:
				nop
		.L97:
				nop
		.L98:
				nop
				jmp	.L95
		.L372:
				nop
		.L95:
 1227        ->IFC %IF TAG1 = IF
				movl	-4704(%ebp), %eax
				movl	IF.6745@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				je	.L373
				nop
		.L100:
				nop
		.L101:
 1228        ->ELSE %IF TAG1 = ELS %AND TAG2 = E
				movl	-4704(%ebp), %eax
				movl	ELS.6746@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L374
				movl	-4704(%ebp), %eax
				movl	E.6747@GOTOFF(%eax), %eax
				movl	-4620(%ebp), %edx
				cmpl	%eax, %edx
				je	.L375
				jmp	.L103
		.L374:
				nop
		.L103:
				nop
		.L105:
 1229        ->FINISH %IF TAG1 = FIN %AND TAG2 = ISH
				movl	-4704(%ebp), %eax
				movl	FIN.6748@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L376
				movl	-4704(%ebp), %eax
				movl	ISH.6749@GOTOFF(%eax), %eax
				movl	-4620(%ebp), %edx
				cmpl	%eax, %edx
				je	.L377
				jmp	.L107
		.L376:
				nop
		.L107:
				nop
		.L109:
 1230        ->WHILE %IF TAG1 = 25106 %AND TAG2 = 13173
				movl	-4616(%ebp), %eax
				cmpl	$25106, %eax
				jne	.L378
				movl	-4620(%ebp), %eax
				cmpl	$13173, %eax
				je	.L379
				jmp	.L111
		.L378:
				nop
		.L111:
				nop
		.L113:
 1231        ->CYCLE %IF TAG1 = 4269 %AND TAG2 = 13173
				movl	-4616(%ebp), %eax
				cmpl	$4269, %eax
				jne	.L380
				movl	-4620(%ebp), %eax
				cmpl	$13173, %eax
				je	.L381
				jmp	.L115
		.L380:
				nop
		.L115:
				nop
		.L117:
 1232        ->REPEAT %IF TAG1 = 19637 %AND TAG2 = 5544
				movl	-4616(%ebp), %eax
				cmpl	$19637, %eax
				jne	.L382
				movl	-4620(%ebp), %eax
				cmpl	$5544, %eax
				je	.L383
				jmp	.L119
		.L382:
				nop
		.L119:
				nop
		.L121:
 1233        MODE=-2 %AND ->DATA %IF TAG1 = B
				movl	-4704(%ebp), %eax
				movl	B.6744@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L384
				movl	$-2, %eax
				movl	%eax, -4612(%ebp)
				jmp	.L159
		.L384:
				nop
		.L123:
 1234        TYPE = UMASK;  LOOKUP(0)
				movl	-4704(%ebp), %esi
				movl	UMASK.6030@GOTOFF(%esi), %eax
				movl	%eax, -4564(%ebp)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	LOOKUP.6496
				addl	$16, %esp
 1235        ->MACCALL %IF TYPE&OPMASK = MACRO
				movl	OPMASK.6025@GOTOFF(%esi), %edx
				movl	MACRO.6026@GOTOFF(%esi), %eax
				cmpl	%eax, %edx
				setne	%al
				movzbl	%al, %eax
				movl	-4564(%ebp), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				je	.L385
				nop
		.L126:
				nop
		.L127:
 1236        ->MINST %IF TYPE&OPMASK # 0
				movl	-4704(%ebp), %eax
				movl	OPMASK.6025@GOTOFF(%eax), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-4564(%ebp), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				je	.L386
				nop
		.L129:
				nop
		.L130:
 1237        FAULT('U') %AND ->LEND %IF TYPE&UMASK # 0
				movl	-4704(%ebp), %eax
				movl	UMASK.6030@GOTOFF(%eax), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-4564(%ebp), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L387
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$85
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L52
		.L387:
				nop
		.L132:
 1238        PEND = -1
				movl	$-1, %eax
				movl	%eax, -4632(%ebp)
				jmp	.L86
		.L365:
 1239     %FINISH
 1240     MODE = -1
				movl	$-1, %eax
				movl	%eax, -4612(%ebp)
		.L124:
		.L133:
		.L159:
 1241 DATA:
 1242     %CYCLE
 1243        GET EXP;  ASSEMBLE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	ASSEMBLE.6234
 1244        FAULT('I') %IF TYPE&REGXMASK # 0
				movl	-4704(%ebp), %eax
				movl	REGXMASK.6036@GOTOFF(%eax), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-4564(%ebp), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L388
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$73
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L135
		.L388:
				nop
		.L135:
 1245        I = 1
				movl	$1, -4676(%ebp)
 1246        %IF S('$') %START
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$36
				movl	%eax, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L389
				nop
		.L140:
		.L150:
 1247           I = VAL %IF VAL < 1000
				movl	-4568(%ebp), %eax
				cmpl	$999, %eax
				jg	.L390
				movl	-4568(%ebp), %eax
				movl	%eax, -4676(%ebp)
				jmp	.L139
		.L390:
				nop
		.L139:
 1248           QLIM = QSTART
				movl	-4704(%ebp), %esi
				movl	QSTART.6048@GOTOFF(%esi), %eax
				movl	%eax, QLIM.6049@GOTOFF(%esi)
 1249           GET EXP;  ASSEMBLE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	ASSEMBLE.6234
				jmp	.L150
		.L137:
		.L389:
 1250        %FINISH
 1251        %WHILE I > 0 %CYCLE
				cmpl	$0, -4676(%ebp)
				jle	.L391
				nop
		.L142:
 1252           %IF MODE # -1 %START
				movl	-4612(%ebp), %eax
				cmpl	$-1, %eax
				je	.L392
				nop
		.L144:
 1253              FAULT('T') %IF VAL&16_FF00 # 0
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$84
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
		.L145:
 1254              %IF MODE = -2 %START
				movl	-4612(%ebp), %eax
				cmpl	$-2, %eax
				jne	.L393
				nop
		.L147:
 1255                 J = VAL<<8;  MODE = -3
				movl	-4568(%ebp), %eax
				sall	$8, %eax
				movl	%eax, -4672(%ebp)
				movl	$-3, %eax
				movl	%eax, -4612(%ebp)
 1256              %finish %ELSE %START
				nop
		.L148:
 1257                 VAL = VAL+J;  MODE = -2
				movl	-4568(%ebp), %edx
				movl	-4672(%ebp), %eax
				addl	%edx, %eax
				movl	%eax, -4568(%ebp)
				movl	$-2, %eax
				movl	%eax, -4612(%ebp)
 1258                 PLANT VAL;  VAL = VAL&255
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	PLANTVAL.6194
				movl	-4568(%ebp), %eax
				movzbl	%al, %eax
				movl	%eax, -4568(%ebp)
 1259              %FINISH
 1260           %finish %ELSE %START
				jmp	.L149
		.L393:
				jmp	.L149
		.L392:
 1261              PLANT VAL
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	PLANTVAL.6194
		.L149:
 1262           %FINISH
 1263           I = I-1
				subl	$1, -4676(%ebp)
 1264        %REPEAT
				jmp	.L150
		.L391:
 1265        %EXIT %UNLESS S(',') %OR SYM&128 # 0
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$44
				movl	%eax, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				jne	.L394
				movl	-4628(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				je	.L395
				jmp	.L152
		.L394:
				nop
		.L152:
				nop
		.L154:
 1266        %IF SYM = NL %START
				movl	-4628(%ebp), %eax
				cmpl	$10, %eax
				jne	.L396
				nop
		.L156:
 1267           PRINT LINE %IF PRINTPOS # 0;  READ LINE
				movl	-4704(%ebp), %eax
				movl	PRINTPOS.6043@GOTOFF(%eax), %eax
				testl	%eax, %eax
				je	.L397
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	PRINTLINE.6143
				jmp	.L158
		.L397:
				nop
		.L158:
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	READLINE.6688
 1268           QSTART = QBASE
				movl	-4704(%ebp), %ebx
				movl	QBASE.6047@GOTOFF(%ebx), %eax
				movl	%eax, QSTART.6048@GOTOFF(%ebx)
				jmp	.L156
		.L396:
 1269        %FINISH
 1270        QLIM = QSTART
				movl	-4704(%ebp), %ecx
				movl	QSTART.6048@GOTOFF(%ecx), %eax
				movl	%eax, QLIM.6049@GOTOFF(%ecx)
 1271     %REPEAT
				jmp	.L159
		.L395:
 1272     VAL=J %AND PLANT VAL %IF MODE = -3
				movl	-4612(%ebp), %eax
				cmpl	$-3, %eax
				jne	.L398
				movl	-4672(%ebp), %eax
				movl	%eax, -4568(%ebp)
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	PLANTVAL.6194
				nop
		.L161:
 1273     ->SEND
				jmp	.L162
		.L398:
				jmp	.L162
		.L366:
 1274
 1275 LABDEF:
 1276     CREG = -1;  ATYPE = -1
				movl	$-1, %eax
				movl	%eax, -4576(%ebp)
				movl	$-1, %eax
				movl	%eax, -4572(%ebp)
 1277     GET SYM
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETSYM.6530
 1278     FAULT('C') %AND NP=STORELIM %IF NP # STORELIM
				movl	-4704(%ebp), %eax
				movl	NP.6057@GOTOFF(%eax), %edx
				movl	STORELIM.6058@GOTOFF(%eax), %eax
				cmpl	%eax, %edx
				je	.L399
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$67
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
				movl	-4704(%ebp), %edx
				movl	STORELIM.6058@GOTOFF(%edx), %eax
				movl	%eax, NP.6057@GOTOFF(%edx)
				jmp	.L164
		.L399:
				nop
		.L164:
 1279     TYPE = LOCTYPE;  VAL = LOC
				movl	-4560(%ebp), %eax
				movl	%eax, -4564(%ebp)
				movl	-4556(%ebp), %eax
				movl	%eax, -4568(%ebp)
 1280     LOOKUP(7)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$7
				movl	%eax, %ecx
				call	LOOKUP.6496
				addl	$16, %esp
 1281     ->NEXT
				jmp	.L33
		.L321:
 1282
 1283 ASSIGN:
 1284     PEND = 1
				movl	$1, %eax
				movl	%eax, -4632(%ebp)
 1285     GET EXP
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
 1286     ->ERR %IF %NOT S('=')
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$61
				movl	%eax, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L369
				jmp	.L321
		.L368:
				nop
		.L166:
				nop
				jmp	.L215
		.L419:
 1287     QUEUE(-25);                       !'STORE'
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$-25
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1288     %IF INTEGER(QBASE) = REG %START
				movl	-4704(%ebp), %edi
				movl	QBASE.6047@GOTOFF(%edi), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, %edx
				movl	REG.6032@GOTOFF(%edi), %eax
				cmpl	%eax, %edx
				jne	.L400
				nop
		.L168:
 1289        DREG = INTEGER(QBASE+1)
				movl	-4704(%ebp), %eax
				movl	QBASE.6047@GOTOFF(%eax), %eax
				leal	1(%eax), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, -4604(%ebp)
 1290        DUSE = 0
				movl	$0, %eax
				movl	%eax, -4608(%ebp)
				jmp	.L168
		.L400:
 1291     %FINISH
 1292     QSTART = QLIM;  MODE = 2
				movl	-4704(%ebp), %esi
				movl	QLIM.6049@GOTOFF(%esi), %eax
				movl	%eax, QSTART.6048@GOTOFF(%esi)
				movl	$2, %eax
				movl	%eax, -4612(%ebp)
 1293     GET EXP
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
 1294     %IF FLAG # 0 %START
				movl	-4580(%ebp), %eax
				testl	%eax, %eax
				je	.L401
				nop
		.L184:
 1295        %IF DREG<0 %AND FLAG-QSTART=QSTART-QBASE-1 %C
				movl	-4604(%ebp), %eax
				testl	%eax, %eax
				jns	.L402
				movl	-4704(%ebp), %ebx
				movl	QSTART.6048@GOTOFF(%ebx), %eax
				movl	-4580(%ebp), %edx
				subl	%eax, %edx
				movl	%edx, %ecx
				movl	QSTART.6048@GOTOFF(%ebx), %edx
				movl	QBASE.6047@GOTOFF(%ebx), %eax
				subl	%eax, %edx
				movl	%edx, %eax
				subl	$1, %eax
				cmpl	%eax, %ecx
				jne	.L403
				movl	-4704(%ebp), %ebx
				movl	QBASE.6047@GOTOFF(%ebx), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, %edx
				movl	BMASK.6031@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				setne	%al
				movzbl	%al, %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L404
				nop
				jmp	.L172
		.L403:
				nop
				jmp	.L172
		.L404:
				nop
		.L172:
 1296           %AND INTEGER(QBASE)&BMASK=0 %START
 1297        I = QBASE;  J = QSTART
				movl	-4704(%ebp), %ecx
				movl	QBASE.6047@GOTOFF(%ecx), %eax
				movl	%eax, -4676(%ebp)
				movl	QSTART.6048@GOTOFF(%ecx), %eax
				movl	%eax, -4672(%ebp)
		.L175:
 1298        I = I+1 %AND J=J+1 %WHILE INTEGER(I) = INTEGER(J)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	-4676(%ebp)
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, %esi
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	-4672(%ebp)
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				cmpl	%eax, %esi
				jne	.L405
				addl	$1, -4676(%ebp)
				addl	$1, -4672(%ebp)
				jmp	.L175
		.L405:
				nop
		.L177:
 1299        %IF J = FLAG %START
				movl	-4580(%ebp), %eax
				cmpl	%eax, -4672(%ebp)
				jne	.L406
				nop
		.L179:
 1300           %IF INTEGER(QLIM-1) = -2 %START; !MINUS
				movl	-4704(%ebp), %eax
				movl	QLIM.6049@GOTOFF(%eax), %eax
				leal	-1(%eax), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				cmpl	$-2, %eax
				jne	.L407
				nop
		.L181:
 1301              QSTART = J-2
				movl	-4672(%ebp), %eax
				subl	$2, %eax
				movl	-4704(%ebp), %edi
				movl	%eax, QSTART.6048@GOTOFF(%edi)
 1302 !!             INTEGER(QSTART) = 0;  INTEGER(QSTART+1) = 0
 1303              set INTEGER(QSTART, 0);  set INTEGER(QSTART+1, 0)
				movl	QSTART.6048@GOTOFF(%edi), %edx
				subl	$8, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				pushl	%edx
				movl	%eax, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
				movl	QSTART.6048@GOTOFF(%edi), %eax
				leal	1(%eax), %edx
				subl	$8, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				pushl	%edx
				movl	%eax, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
 1304           %ELSE
				nop
		.L182:
 1305              QSTART = J;  QLIM = QLIM-1
				movl	-4672(%ebp), %eax
				movl	-4704(%ebp), %esi
				movl	%eax, QSTART.6048@GOTOFF(%esi)
				movl	QLIM.6049@GOTOFF(%esi), %eax
				subl	$1, %eax
				movl	%eax, QLIM.6049@GOTOFF(%esi)
 1306           %FINISH
 1307        %finish %ELSE FLAG = 0
				jmp	.L183
		.L407:
				jmp	.L183
		.L406:
				movl	$0, %eax
				movl	%eax, -4580(%ebp)
 1308        %finish %ELSE FLAG = 0
				jmp	.L184
		.L183:
				jmp	.L184
		.L402:
				movl	$0, %eax
				movl	%eax, -4580(%ebp)
				jmp	.L184
		.L170:
		.L401:
 1309     %FINISH
 1310     QUEUE(-24);                       !'LOAD'
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$-24
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
		.L185:
 1311
 1312 CONDQ:
 1313     %IF TAGIF %START
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAGIF.6578
				testl	%eax, %eax
				je	.L408
				nop
		.L187:
 1314        MODE = MODE+4;  DREG = DREG-16; !SCARIFY
				movl	-4612(%ebp), %eax
				addl	$4, %eax
				movl	%eax, -4612(%ebp)
				movl	-4604(%ebp), %eax
				subl	$16, %eax
				movl	%eax, -4604(%ebp)
 1315        CONDIT(0)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	CONDIT.6658
				addl	$16, %esp
 1316        MODE = MODE-4;  DREG = DREG+16; !RESTORE
				movl	-4612(%ebp), %eax
				subl	$4, %eax
				movl	%eax, -4612(%ebp)
				movl	-4604(%ebp), %eax
				addl	$16, %eax
				movl	%eax, -4604(%ebp)
 1317        QLIM = QSTART;  QSTART = TRANSF
				movl	-4704(%ebp), %edi
				movl	QSTART.6048@GOTOFF(%edi), %eax
				movl	%eax, QLIM.6049@GOTOFF(%edi)
				movl	TRANSF.6050@GOTOFF(%edi), %eax
				movl	%eax, QSTART.6048@GOTOFF(%edi)
				jmp	.L187
		.L408:
 1318     %FINISH
 1319     ASSEMBLE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	ASSEMBLE.6234
 1320     ->SEND
				jmp	.L162
		.L386:
 1321
 1322 JUMP:
 1323     FLAG = TAG2-P;                    !POSITIVE IF SHORT
				movl	-4704(%ebp), %eax
				movl	P.6751@GOTOFF(%eax), %eax
				movl	-4620(%ebp), %edx
				subl	%eax, %edx
				movl	%edx, %eax
				movl	%eax, -4580(%ebp)
 1324     GET EXP
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
 1325     QUEUE(-26);                       !'JUMP'
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$-26
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1326     ->CONDQ
				jmp	.L185
		.L370:
 1327
 1328 MINST:
 1329     MODE = -1
				movl	$-1, %eax
				movl	%eax, -4612(%ebp)
 1330     GET INST
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETINST.6680
 1331     QUEUE(-23);                       !'PLANT'
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$-23
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1332     ->CONDQ
				jmp	.L185
		.L385:
 1333
 1334 MACCALL:
 1335     QUEUE(0);                         !(DEFPOS)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1336     QUEUE(0);                         !SPARE
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1337     QUEUE(0);                         !(CALLPOS)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1338     QUEUE(STARTPOS)
				movl	-4704(%ebp), %ebx
				movl	STARTPOS.6039@GOTOFF(%ebx), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1339     QUEUE(MP)
				movl	MP.6046@GOTOFF(%ebx), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1340     J = VAL;  QQ = 0
				movl	-4568(%ebp), %eax
				movl	%eax, -4672(%ebp)
				movl	$0, QQ.6090@GOTOFF(%ebx)
		.L188:
 1341     %CYCLE
 1342        %EXIT %IF CHAR(J) = NL;        !END OF MAC DEF
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	-4672(%ebp)
				movl	%eax, %ecx
				call	CHAR.6102
				addl	$16, %esp
				cmpl	$10, %eax
				je	.L409
				nop
		.L190:
				nop
		.L191:
 1343        I = GETPOS-1;                  !SAVE CALLPOS
				movl	-4704(%ebp), %edi
				movl	GETPOS.6040@GOTOFF(%edi), %eax
				subl	$1, %eax
				movl	%eax, -4676(%ebp)
 1344        GETPOS = J;  GET SYM
				movl	-4672(%ebp), %eax
				movl	%eax, GETPOS.6040@GOTOFF(%edi)
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETSYM.6530
 1345 !!       %MONITOR 24 %IF %NOT TAG
 1346        TYPE = 0;  VAL = 0
				movl	$0, %eax
				movl	%eax, -4564(%ebp)
				movl	$0, %eax
				movl	%eax, -4568(%ebp)
 1347        SCAN ARG
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	SCANARG.6721
 1348        GET SYM %IF SYM = ','
				movl	-4628(%ebp), %eax
				cmpl	$44, %eax
				jne	.L410
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETSYM.6530
				jmp	.L193
		.L410:
				nop
		.L193:
 1349        J = GETPOS-1;                  !SAVE DEFPOS
				movl	-4704(%ebp), %edx
				movl	GETPOS.6040@GOTOFF(%edx), %eax
				subl	$1, %eax
				movl	%eax, -4672(%ebp)
 1350        GETPOS = I;  GET SYM;          !RESTORE CALLPOS
				movl	-4676(%ebp), %eax
				movl	%eax, GETPOS.6040@GOTOFF(%edx)
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETSYM.6530
 1351        SCAN ARG
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	SCANARG.6721
 1352        GET SYM %IF SYM = ','
				movl	-4628(%ebp), %eax
				cmpl	$44, %eax
				jne	.L411
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETSYM.6530
				jmp	.L195
		.L411:
				nop
		.L195:
 1353        QUEUE(TAG1);  QUEUE(TAG2)
				movl	-4616(%ebp), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
				movl	-4620(%ebp), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1354        QUEUE(TYPE);  QUEUE(VAL)
				movl	-4564(%ebp), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
				movl	-4568(%ebp), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1355     %REPEAT
				jmp	.L188
		.L409:
 1356     QQ = '?'
				movl	-4704(%ebp), %eax
				movl	$63, QQ.6090@GOTOFF(%eax)
 1357     GET SYM %IF SYM = ' '
				movl	-4628(%ebp), %eax
				cmpl	$32, %eax
				jne	.L412
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETSYM.6530
				jmp	.L197
		.L412:
				nop
		.L197:
 1358     %IF TAGIF %START
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAGIF.6578
				testl	%eax, %eax
				je	.L413
				nop
		.L199:
 1359        CONDIT(-18)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$-18
				movl	%eax, %ecx
				call	CONDIT.6658
				addl	$16, %esp
 1360        QLIM = QSTART
				movl	-4704(%ebp), %ebx
				movl	QSTART.6048@GOTOFF(%ebx), %eax
				movl	%eax, QLIM.6049@GOTOFF(%ebx)
 1361 !!       INTEGER(QBASE+4) = MP+8_700000
 1362        set INTEGER(QBASE+4, MP+8_700000)
				movl	MP.6046@GOTOFF(%ebx), %eax
				leal	229376(%eax), %ecx
				movl	QBASE.6047@GOTOFF(%ebx), %eax
				leal	4(%eax), %edx
				subl	$8, %esp
				leal	-4632(%ebp), %eax
				pushl	%ecx
				pushl	%edx
				movl	%eax, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
				jmp	.L199
		.L413:
 1363     %FINISH
 1364     QUEUE(0)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1365     STARTPOS = QLIM<<1
				movl	-4704(%ebp), %edi
				movl	QLIM.6049@GOTOFF(%edi), %eax
				addl	%eax, %eax
				movl	%eax, STARTPOS.6039@GOTOFF(%edi)
 1366     MP = QBASE
				movl	QBASE.6047@GOTOFF(%edi), %eax
				movl	%eax, MP.6046@GOTOFF(%edi)
 1367 !!    INTEGER(MP) = J+1;                !START OF BODY
 1368     set INTEGER(MP, J+1);                !START OF BODY
				movl	-4672(%ebp), %eax
				leal	1(%eax), %ecx
				movl	MP.6046@GOTOFF(%edi), %edx
				subl	$8, %esp
				leal	-4632(%ebp), %eax
				pushl	%ecx
				pushl	%edx
				movl	%eax, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
 1369 !!    INTEGER(MP+2) = GETPOS-1
 1370     set INTEGER(MP+2, GETPOS-1)
				movl	GETPOS.6040@GOTOFF(%edi), %eax
				leal	-1(%eax), %ecx
				movl	MP.6046@GOTOFF(%edi), %eax
				leal	2(%eax), %edx
				subl	$8, %esp
				leal	-4632(%ebp), %eax
				pushl	%ecx
				pushl	%edx
				movl	%eax, %ecx
				call	SETINTEGER.6108
				addl	$16, %esp
 1371     ->LEND
				jmp	.L52
		.L373:
 1372
 1373 !CODING OF JUMPS: 1000 (SINGLE INST), 2000 (MAIN IF)
 1374 !                 4000 (ELSE), 6000 (IF AFTER ELSE)
 1375
 1376 IFC:
 1377     CONDIT(-15)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$-15
				movl	%eax, %ecx
				call	CONDIT.6658
				addl	$16, %esp
 1378     ->SEND
				jmp	.L162
		.L375:
 1379
 1380 ELSE:
 1381     ->CERR %IF INTEGER(NP)&16_2000 = 0
				movl	-4704(%ebp), %eax
				movl	NP.6057@GOTOFF(%eax), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				andl	$1, %eax
				testl	%eax, %eax
				je	.L414
				nop
		.L201:
				nop
				jmp	.L202
		.L416:
 1382     QUEUE(0);  QUEUE(0)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1383     QUEUE(-16);  ASSEMBLE
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$-16
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	ASSEMBLE.6234
 1384     ATYPE = -1; CREG = -1
				movl	$-1, %eax
				movl	%eax, -4572(%ebp)
				movl	$-1, %eax
				movl	%eax, -4576(%ebp)
 1385     %IF TAGIF %START
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAGIF.6578
				testl	%eax, %eax
				je	.L415
				nop
		.L204:
 1386        CONDIT(-17)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$-17
				movl	%eax, %ecx
				call	CONDIT.6658
				addl	$16, %esp
 1387     %FINISH
 1388     ->SEND
				jmp	.L162
		.L415:
				jmp	.L162
		.L377:
 1389
 1390 FINISH:
 1391     ->CERR %IF INTEGER(NP)&16_6000 = 0
				movl	-4704(%ebp), %eax
				movl	NP.6057@GOTOFF(%eax), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				andl	$1, %eax
				testl	%eax, %eax
				je	.L416
				nop
		.L206:
				nop
				jmp	.L202
		.L417:
 1392     I = LOC
				movl	-4556(%ebp), %eax
				movl	%eax, -4676(%ebp)
		.L207:
 1393     %WHILE INTEGER(NP)&16_4000 # 0 %CYCLE
				movl	-4704(%ebp), %esi
				movl	NP.6057@GOTOFF(%esi), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
 1394        %IF INTEGER(NP)&16_2000 # 0 %START; !IF AFTER ELSE
				movl	NP.6057@GOTOFF(%esi), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
 1395           SET LAB(I)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	-4676(%ebp)
				movl	%eax, %ecx
				call	SETLAB.6218
				addl	$16, %esp
 1396        %finish %ELSE %START
				nop
		.L208:
 1397           SET LAB(LOC)
 1398           I = VAL+4
 1399        %FINISH
 1400     %REPEAT
				jmp	.L207
		.L379:
 1401     SET LAB(I)
 1402     ->SEND
 1403
 1404 WHILE:
 1405     I = LOC;  ATYPE = -1;  CREG = -1
				movl	-4556(%ebp), %eax
				movl	%eax, -4676(%ebp)
				movl	$-1, %eax
				movl	%eax, -4572(%ebp)
				movl	$-1, %eax
				movl	%eax, -4576(%ebp)
 1406     CONDIT(-13)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$-13
				movl	%eax, %ecx
				call	CONDIT.6658
				addl	$16, %esp
 1407     NEST(I);  NEST(1)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	-4676(%ebp)
				movl	%eax, %ecx
				call	NEST.6215
				addl	$16, %esp
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$1
				movl	%eax, %ecx
				call	NEST.6215
				addl	$16, %esp
 1408     ->SEND
				jmp	.L162
		.L381:
 1409
 1410 CYCLE:
 1411     NEST(LOC);  NEST(1)
				movl	-4556(%ebp), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	NEST.6215
				addl	$16, %esp
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$1
				movl	%eax, %ecx
				call	NEST.6215
				addl	$16, %esp
 1412     ATYPE = -1;  CREG = -1
				movl	$-1, %eax
				movl	%eax, -4572(%ebp)
				movl	$-1, %eax
				movl	%eax, -4576(%ebp)
 1413     ->SEND
				jmp	.L162
		.L383:
 1414
 1415 REPEAT:
 1416     ->CERR %IF INTEGER(NP) # 1
				movl	-4704(%ebp), %eax
				movl	NP.6057@GOTOFF(%eax), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				cmpl	$1, %eax
				jne	.L417
				nop
		.L210:
				nop
				jmp	.L202
		.L430:
 1417     QUEUE(LOCTYPE);  QUEUE(INTEGER(NP+1))
				movl	-4560(%ebp), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
				movl	-4704(%ebp), %edi
				movl	NP.6057@GOTOFF(%edi), %eax
				leal	1(%eax), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1418     NP = NP+2
				movl	NP.6057@GOTOFF(%edi), %eax
				addl	$2, %eax
				movl	%eax, NP.6057@GOTOFF(%edi)
 1419     QUEUE(-26);                       !'JUMP'
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$-26
				movl	%eax, %ecx
				call	QUEUE.6583
				addl	$16, %esp
 1420     FLAG = -1
				movl	$-1, %eax
				movl	%eax, -4580(%ebp)
 1421     ->CONDQ
				jmp	.L185
		.L414:
 1422
 1423 CERR:
 1424     FAULT('C')
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$67
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
 1425     ->LEND
				jmp	.L52
		.L162:
 1426
 1427 SEND:
 1428     SET LAB(LOC) %IF INTEGER(NP)&16_1000 # 0
				movl	-4704(%ebp), %eax
				movl	NP.6057@GOTOFF(%eax), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	-4556(%ebp), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	SETLAB.6218
				addl	$16, %esp
		.L211:
 1429     ->LEND %IF SYM = NL
				movl	-4628(%ebp), %eax
				cmpl	$10, %eax
				je	.L418
				nop
		.L213:
				nop
				jmp	.L52
		.L427:
 1430     ->NEXT %IF S(';')
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$59
				movl	%eax, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L419
				jmp	.L33
		.L23:
		.L341:
				nop
				jmp	.L215
		.L451:
 1431
 1432 ERR:FSYM = 'F';  FAULTPOS = GETPOS-1
				movl	$70, %eax
				movl	%eax, -4552(%ebp)
				movl	-4704(%ebp), %edi
				movl	GETPOS.6040@GOTOFF(%edi), %eax
				subl	$1, %eax
				movl	%eax, FAULTPOS.6044@GOTOFF(%edi)
 1433     PRINTPOS = STARTPOS
				movl	STARTPOS.6039@GOTOFF(%edi), %eax
				movl	%eax, PRINTPOS.6043@GOTOFF(%edi)
				jmp	.L52
		.L351:
 1434
 1435 LEND:
 1436     ->READ %IF SKIP # 0 %AND LIST&4 = 0
				nop
		.L32:
				cmpl	$0, -4680(%ebp)
				je	.L420
				movl	-4704(%ebp), %eax
				movl	LIST.6067@GOTOFF(%eax), %eax
				andl	$1, %eax
				testl	%eax, %eax
				je	.L421
				jmp	.L217
		.L420:
				nop
		.L217:
 1437     ->READ %IF FSYM = ' ' %AND CHARS = 0 %AND %C
				movl	-4552(%ebp), %eax
				cmpl	$32, %eax
				jne	.L422
				movl	-4704(%ebp), %eax
				movl	CHARS.6062@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jne	.L423
				movl	-4704(%ebp), %eax
				movl	PRINTPOS.6043@GOTOFF(%eax), %eax
				testl	%eax, %eax
				je	.L424
				movl	-4704(%ebp), %eax
				movl	MP.6046@GOTOFF(%eax), %eax
				testl	%eax, %eax
				je	.L425
				movl	-4704(%ebp), %eax
				movl	LIST.6067@GOTOFF(%eax), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L426
				jmp	.L223
		.L424:
				nop
		.L223:
				jmp	.L32
		.L422:
				nop
				jmp	.L220
		.L423:
				nop
				jmp	.L220
		.L425:
				nop
				jmp	.L220
		.L426:
				nop
		.L220:
 1438      (PRINTPOS = 0 %OR (MP#0 %AND LIST&2=0))
 1439     PRINT LINE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	PRINTLINE.6143
 1440     ->READ
				jmp	.L32
		.L348:
 1441
 1442 ASSIF:
 1443     ASSCOND = ASSCOND<<1
				sall	-4684(%ebp)
 1444     ->LEND %IF SKIP # 0
				nop
				jmp	.L52
		.L431:
				cmpl	$0, -4680(%ebp)
				jne	.L427
		.L226:
				nop
				jmp	.L227
		.L432:
 1445 A1: CONDIT(0)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	CONDIT.6658
				addl	$16, %esp
 1446     SKIP = ASSCOND %IF COND # 0
				movl	-4584(%ebp), %eax
				testl	%eax, %eax
				je	.L428
				movl	-4684(%ebp), %eax
				movl	%eax, -4680(%ebp)
				jmp	.L229
		.L428:
				nop
		.L229:
 1447     PRINT LINE %IF PRINTPOS # 0
				movl	-4704(%ebp), %eax
				movl	PRINTPOS.6043@GOTOFF(%eax), %eax
				testl	%eax, %eax
				je	.L429
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	PRINTLINE.6143
				nop
		.L231:
 1448     ->LEND
				jmp	.L52
		.L429:
				jmp	.L52
		.L349:
 1449
 1450 ASSELSE:
 1451     %IF SKIP = 0 %START
				cmpl	$0, -4680(%ebp)
				je	.L430
				nop
		.L233:
 1452        ->CERR %IF ASSCOND&1 # 0
				nop
				jmp	.L202
		.L433:
 1453        SKIP = ASSCOND
 1454     %finish %ELSE %START
 1455        ->LEND %IF SKIP # ASSCOND
				nop
				jmp	.L52
		.L464:
				movl	-4680(%ebp), %eax
				cmpl	-4684(%ebp), %eax
				jne	.L431
				nop
		.L235:
 1456        SKIP = 0
				movl	$0, -4680(%ebp)
 1457        ->A1 %IF TAGIF
				nop
		.L227:
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAGIF.6578
				testl	%eax, %eax
				jne	.L432
				nop
		.L237:
		.L238:
 1458     %FINISH
 1459     ASSCOND = ASSCOND+1
				addl	$1, -4684(%ebp)
 1460     ->LEND
				jmp	.L52
		.L350:
 1461
 1462 ASSFIN:
 1463     ->CERR %IF ASSCOND = 1
				nop
				jmp	.L202
		.L450:
				cmpl	$1, -4684(%ebp)
				je	.L433
				nop
		.L240:
 1464     ASSCOND = ASSCOND>>1
				movl	-4684(%ebp), %eax
				shrl	%eax
				movl	%eax, -4684(%ebp)
 1465     SKIP = 0 %IF SKIP>>1 = ASSCOND
				movl	-4680(%ebp), %eax
				shrl	%eax
				movl	%eax, %edx
				movl	-4684(%ebp), %eax
				cmpl	%eax, %edx
				jne	.L434
				movl	$0, -4680(%ebp)
				nop
		.L242:
 1466     ->LEND
				jmp	.L52
		.L434:
				jmp	.L52
		.L352:
 1467
 1468 DEFINE:
 1469     FAULT('C') %IF NP # STORELIM
				movl	-4704(%ebp), %eax
				movl	NP.6057@GOTOFF(%eax), %edx
				movl	STORELIM.6058@GOTOFF(%eax), %eax
				cmpl	%eax, %edx
				je	.L435
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$67
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L244
		.L435:
				nop
		.L244:
 1470     I = TAG1
				movl	-4616(%ebp), %eax
				movl	%eax, -4676(%ebp)
		.L245:
 1471     %CYCLE
 1472        ->ERR %IF %NOT (TAG %AND S('='))
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAG.6545
				testl	%eax, %eax
				je	.L436
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$61
				movl	%eax, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				jne	.L437
				jmp	.L247
		.L436:
				nop
		.L247:
				jmp	.L215
		.L437:
				nop
		.L248:
 1473        J = TAG1;  K = TAG2
				movl	-4616(%ebp), %eax
				movl	%eax, -4672(%ebp)
				movl	-4620(%ebp), %eax
				movl	%eax, -4660(%ebp)
 1474        %IF TAG %START
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAG.6545
				testl	%eax, %eax
				je	.L438
				nop
		.L250:
 1475           TAGREF
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAGREF.6518
 1476           %IF TYPE&OPMASK # 0 %START
				movl	-4704(%ebp), %eax
				movl	OPMASK.6025@GOTOFF(%eax), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				movl	-4564(%ebp), %edx
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L439
				nop
		.L252:
 1477              GET INST
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETINST.6680
 1478           %finish %ELSE %START
				nop
		.L253:
 1479              PEND = -1;  GET EXP
				movl	$-1, %eax
				movl	%eax, -4632(%ebp)
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
 1480           %FINISH
 1481        %finish %ELSE GET EXP
				jmp	.L254
		.L439:
				jmp	.L254
		.L438:
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
		.L254:
 1482        ASSEMBLE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	ASSEMBLE.6234
 1483        TAG1 = J;  TAG2 = K
				movl	-4672(%ebp), %eax
				movl	%eax, -4616(%ebp)
				movl	-4660(%ebp), %eax
				movl	%eax, -4620(%ebp)
 1484        %IF I=DEF %THEN LOOKUP(3) %ELSE LOOKUP(2)
				movl	-4704(%ebp), %eax
				movl	DEF.6753@GOTOFF(%eax), %eax
				cmpl	%eax, -4676(%ebp)
				jne	.L440
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$3
				movl	%eax, %ecx
				call	LOOKUP.6496
				addl	$16, %esp
				jmp	.L257
		.L440:
				nop
		.L256:
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$2
				movl	%eax, %ecx
				call	LOOKUP.6496
				addl	$16, %esp
		.L257:
 1485        %EXIT %UNLESS S(',')
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$44
				movl	%eax, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L441
				nop
		.L259:
				nop
		.L260:
 1486        QLIM = QSTART
				movl	-4704(%ebp), %ebx
				movl	QSTART.6048@GOTOFF(%ebx), %eax
				movl	%eax, QLIM.6049@GOTOFF(%ebx)
 1487     %REPEAT
				jmp	.L245
		.L441:
 1488     ->SEND
				jmp	.L162
		.L38:
		.L346:
 1489
 1490 NEWPAGE:
 1491     DO NEWLINE %WHILE LINES # 0
				movl	-4704(%ebp), %eax
				movl	LINES.6063@GOTOFF(%eax), %eax
				testl	%eax, %eax
				je	.L442
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	DONEWLINE.6139
				jmp	.L264
		.L442:
				nop
		.L263:
 1492     ->LEND
				jmp	.L52
		.L354:
 1493
 1494 LISTC:
 1495     GET EXP;  ASSEMBLE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	ASSEMBLE.6234
 1496     LIST = VAL
				movl	-4568(%ebp), %eax
				movl	-4704(%ebp), %edx
				movl	%eax, LIST.6067@GOTOFF(%edx)
 1497     ->SEND
				jmp	.L162
		.L355:
 1498
 1499 TEMP:
 1500     I = 0
				movl	$0, -4676(%ebp)
 1501     %IF SYM # NL %START
				movl	-4628(%ebp), %eax
				cmpl	$10, %eax
				je	.L443
				nop
				jmp	.L271
		.L445:
 1502        %CYCLE
				nop
		.L265:
 1503           GET EXP
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
 1504           FAULT('I') %IF TYPE # REG
				movl	-4704(%ebp), %eax
				movl	REG.6032@GOTOFF(%eax), %eax
				movl	-4564(%ebp), %edx
				cmpl	%eax, %edx
				je	.L444
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$73
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L268
		.L444:
				nop
		.L268:
 1505           I = I!1<<VAL
				movl	-4568(%ebp), %eax
				movl	$1, %edx
				movl	%eax, %ecx
				sall	%cl, %edx
				movl	%edx, %eax
				orl	%eax, -4676(%ebp)
 1506           %EXIT %UNLESS S(',')
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$44
				movl	%eax, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L445
				nop
		.L270:
				nop
		.L271:
 1507        %REPEAT
				jmp	.L265
		.L266:
		.L443:
 1508     %FINISH
 1509     TEMPS = I
				movl	-4676(%ebp), %eax
				movl	-4704(%ebp), %edi
				movl	%eax, TEMPS.6071@GOTOFF(%edi)
 1510     SET ACC
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	SETACC.6738
 1511     ->SEND
				jmp	.L162
		.L356:
 1512
 1513 LOCC:
 1514     I = TAG1
				movl	-4616(%ebp), %eax
				movl	%eax, -4676(%ebp)
 1515     GET EXP;  ASSEMBLE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	ASSEMBLE.6234
 1516     %IF TYPE&16_FF80 = 0 %START
				movl	-4564(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L446
				nop
		.L273:
 1517        %IF I = 13556 %START;          !LOC
				cmpl	$13556, -4676(%ebp)
				jne	.L447
				nop
		.L275:
 1518           OUTPUT RECORD %IF BINCOUNT >= 203
				movl	-4704(%ebp), %eax
				movl	BINCOUNT.6064@GOTOFF(%eax), %eax
				cmpl	$202, %eax
				jle	.L448
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	OUTPUTRECORD.6180
				jmp	.L277
		.L448:
				nop
		.L277:
 1519           PUT(3) %IF (LOCTYPE!!TYPE)&RELMASK # 0
				movl	-4560(%ebp), %edx
				movl	-4564(%ebp), %eax
				xorl	%eax, %edx
				movl	-4704(%ebp), %eax
				movl	RELMASK.6034@GOTOFF(%eax), %eax
				testl	%eax, %eax
				sete	%al
				movzbl	%al, %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L449
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$3
				movl	%eax, %ecx
				call	PUT.6169
				addl	$16, %esp
				jmp	.L279
		.L449:
				nop
		.L279:
 1520           PUT(5);  PUT WORD(VAL)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$5
				movl	%eax, %ecx
				call	PUT.6169
				addl	$16, %esp
				movl	-4568(%ebp), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	PUTWORD.6174
				addl	$16, %esp
				jmp	.L275
		.L447:
 1521        %FINISH
 1522        LOCTYPE = TYPE&63+MEMMASK;  LOC = VAL
				movl	-4564(%ebp), %eax
				andl	$63, %eax
				movl	%eax, %edx
				movl	-4704(%ebp), %eax
				movl	MEMMASK.6033@GOTOFF(%eax), %eax
				addl	%edx, %eax
				movl	%eax, -4560(%ebp)
				movl	-4568(%ebp), %eax
				movl	%eax, -4556(%ebp)
 1523     %finish %ELSE FAULT('I')
				nop
		.L280:
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$73
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
 1524     ->SEND
				jmp	.L162
		.L446:
				jmp	.L162
		.L358:
 1525
 1526 SAVC:
 1527     GET EXP;  ASSEMBLE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	GETEXP.6586
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	ASSEMBLE.6234
 1528     SAVE = VAL
				movl	-4568(%ebp), %eax
				movl	-4704(%ebp), %edx
				movl	%eax, SAVE.6070@GOTOFF(%edx)
 1529     ->SEND
				jmp	.L162
		.L359:
 1530
 1531 MACDEF:
 1532     ->CERR %IF MP # 0
				nop
		.L202:
				movl	-4704(%ebp), %eax
				movl	MP.6046@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jne	.L450
				nop
		.L282:
 1533     ->ERR %IF %NOT TAG
				nop
				jmp	.L215
		.L453:
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAG.6545
				testl	%eax, %eax
				je	.L451
				nop
		.L284:
 1534     J = TAG1;  K = TAG2
				movl	-4616(%ebp), %eax
				movl	%eax, -4672(%ebp)
				movl	-4620(%ebp), %eax
				movl	%eax, -4660(%ebp)
 1535     I = GETPOS-1
				movl	-4704(%ebp), %eax
				movl	GETPOS.6040@GOTOFF(%eax), %eax
				subl	$1, %eax
				movl	%eax, -4676(%ebp)
 1536     %IF SYM # NL %START
				movl	-4628(%ebp), %eax
				cmpl	$10, %eax
				je	.L452
				nop
				jmp	.L291
		.L454:
 1537        %CYCLE
				nop
		.L285:
 1538           ->ERR %IF %NOT TAG
				nop
				jmp	.L215
		.L455:
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAG.6545
				testl	%eax, %eax
				je	.L453
				nop
		.L288:
 1539           SCAN ARG
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	SCANARG.6721
 1540           %EXIT %IF %NOT S(',')
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$44
				movl	%eax, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L454
				nop
		.L290:
				nop
		.L291:
 1541        %REPEAT
				jmp	.L285
		.L286:
		.L452:
 1542     %FINISH
 1543     ->ERR %IF SYM # NL
				nop
		.L215:
				movl	-4628(%ebp), %eax
				cmpl	$10, %eax
				jne	.L455
				nop
		.L293:
 1544     TAG1 = J;  TAG2 = K
				movl	-4672(%ebp), %eax
				movl	%eax, -4616(%ebp)
				movl	-4660(%ebp), %eax
				movl	%eax, -4620(%ebp)
 1545     TYPE = MACRO;  VAL = I
				movl	-4704(%ebp), %eax
				movl	MACRO.6026@GOTOFF(%eax), %eax
				movl	%eax, -4564(%ebp)
				movl	-4676(%ebp), %eax
				movl	%eax, -4568(%ebp)
 1546     LOOKUP(3)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$3
				movl	%eax, %ecx
				call	LOOKUP.6496
				addl	$16, %esp
		.L294:
 1547     %CYCLE
 1548        PRINT LINE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	PRINTLINE.6143
 1549        %EXIT %IF S('$') %AND TAG %AND TAG1 = END
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$36
				movl	%eax, %ecx
				call	S.6535
				addl	$16, %esp
				testl	%eax, %eax
				je	.L456
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	TAG.6545
				testl	%eax, %eax
				je	.L457
				movl	-4704(%ebp), %eax
				movl	END.6754@GOTOFF(%eax), %eax
				movl	-4616(%ebp), %edx
				cmpl	%eax, %edx
				je	.L458
				jmp	.L296
		.L456:
				nop
				jmp	.L296
		.L457:
				nop
		.L296:
				nop
		.L299:
 1550        STARTPOS = PUTPOS
				movl	-4704(%ebp), %ebx
				movl	PUTPOS.6041@GOTOFF(%ebx), %eax
				movl	%eax, STARTPOS.6039@GOTOFF(%ebx)
 1551        STARTPOS = PSEUDOLIM+1 %IF PSEUDOLIM # 0
				movl	PSEUDOLIM.6042@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L459
				movl	-4704(%ebp), %edi
				movl	PSEUDOLIM.6042@GOTOFF(%edi), %eax
				addl	$1, %eax
				movl	%eax, STARTPOS.6039@GOTOFF(%edi)
				jmp	.L301
		.L459:
				nop
		.L301:
 1552        READ LINE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	READLINE.6688
 1553     %REPEAT
				jmp	.L294
		.L458:
 1554     PUTPOS = STARTPOS;  PUT CHAR(0)
				movl	-4704(%ebp), %esi
				movl	STARTPOS.6039@GOTOFF(%esi), %eax
				movl	%eax, PUTPOS.6041@GOTOFF(%esi)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	PUTCHAR.6111
				addl	$16, %esp
 1555     STARTPOS = PUTPOS
				movl	PUTPOS.6041@GOTOFF(%esi), %eax
				movl	%eax, STARTPOS.6039@GOTOFF(%esi)
 1556     MACLIM = STARTPOS
				movl	STARTPOS.6039@GOTOFF(%esi), %eax
				movl	%eax, MACLIM.6045@GOTOFF(%esi)
 1557     ->LEND
				jmp	.L52
		.L360:
 1558
 1559 %ROUTINE BNEST
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -12(%ebp)
 1560 !!    BP = BP+4;  %MONITOR 23 %IF BP-NP >= 0
 1561     BP = BP+4;  !{}%signal 2,3 %IF BP-NP >= 0
				movl	BP.6056@GOTOFF(%ebx), %eax
				addl	$4, %eax
				movl	%eax, BP.6056@GOTOFF(%ebx)
 1562 !!    INTEGER(BP-3) = SAVE;  INTEGER(BP-2) = TEMPS
 1563     set INTEGER(BP-3, SAVE);  set INTEGER(BP-2, TEMPS)
				movl	SAVE.6070@GOTOFF(%ebx), %eax
				movl	BP.6056@GOTOFF(%ebx), %edx
				subl	$3, %edx
				pushl	%eax
				pushl	%edx
				movl	%esi, %ecx
				call	SETINTEGER.6108
				addl	$8, %esp
				movl	TEMPS.6071@GOTOFF(%ebx), %eax
				movl	BP.6056@GOTOFF(%ebx), %edx
				subl	$2, %edx
				pushl	%eax
				pushl	%edx
				movl	%esi, %ecx
				call	SETINTEGER.6108
				addl	$8, %esp
 1564 !!    INTEGER(BP-1) = MACLIM;  INTEGER(BP) = DEFMIN
 1565     set INTEGER(BP-1, MACLIM);  set INTEGER(BP, DEFMIN)
				movl	MACLIM.6045@GOTOFF(%ebx), %eax
				movl	BP.6056@GOTOFF(%ebx), %edx
				subl	$1, %edx
				pushl	%eax
				pushl	%edx
				movl	%esi, %ecx
				call	SETINTEGER.6108
				addl	$8, %esp
				movl	DEFMIN.6051@GOTOFF(%ebx), %edx
				movl	BP.6056@GOTOFF(%ebx), %eax
				pushl	%edx
				pushl	%eax
				movl	%esi, %ecx
				call	SETINTEGER.6108
				addl	$8, %esp
 1566 %END
				nop
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE238:
				.comm	BREC.6091,208,32
				.data
				.align 4
		LIS.6024:
				.long	2
				.comm	STORE.6093,130048,32
				.align 4
		MAIN.6021:
				.long	1
				.align 4
		PRE.6022:
				.long	2
				.align 4
		BIN.6023:
				.long	1
				.comm	CODEPOS.6038,4,4
				.comm	MACLIM.6045,4,4
				.comm	STORELIM.6058,4,4
				.comm	NP.6057,4,4
				.comm	LABLIM.6055,4,4
				.comm	BP.6056,4,4
				.comm	DEFLIM.6052,4,4
				.comm	DEFMIN.6051,4,4
				.comm	STARTPOS.6039,4,4
				.comm	MP.6046,4,4
				.comm	ALMAX.6053,4,4
				.comm	LABMIN.6054,4,4
				.align 4
		MEMMASK.6033:
				.long	64
				.align 4
		RELMASK.6034:
				.long	32
				.comm	FAULTPOS.6044,4,4
				.comm	QBASE.6047,4,4
				.comm	QSTART.6048,4,4
				.comm	QLIM.6049,4,4
				.align 4
		IF.6745:
				.long	9991
				.align 4
		ELS.6746:
				.long	5950
				.align 4
		FIN.6748:
				.long	6907
				.align 4
		DEF.6753:
				.long	4605
				.align 4
		END.6754:
				.long	6009
				.align 4
		JUM.6750:
				.long	11642
				.align 4
		P.6751:
				.long	17206
				.align 4
		PS.6752:
				.long	17983
				.align 4
		E.6747:
				.long	5403
				.align 4
		ISH.6749:
				.long	10490
				.align 4
		B.6744:
				.long	2184
				.align 4
		UMASK.6030:
				.long	512
				.align 4
		OPMASK.6025:
				.long	61440
				.align 4
		MACRO.6026:
				.long	40960
				.align 4
		REGXMASK.6036:
				.long	144
				.comm	PRINTPOS.6043,4,4
				.align 4
		REG.6032:
				.long	128
				.align 4
		BMASK.6031:
				.long	256
				.comm	TRANSF.6050,4,4
				.align 4
		QQ.6090:
				.long	63
				.comm	GETPOS.6040,4,4
				.align 4
		LIST.6067:
				.long	-1
				.comm	CHARS.6062,4,4
				.comm	LINES.6063,4,4
				.align 4
		TEMPS.6071:
				.long	12
				.comm	BINCOUNT.6064,4,4
				.align 4
		SAVE.6070:
				.long	1
				.comm	PUTPOS.6041,4,4
				.comm	PSEUDOLIM.6042,4,4
				.align 4
		PASS.6066:
				.long	-1
				.comm	CHECK.6065,4,4
				.align 4
		RELUXMASK.6037:
				.long	560
				.align 4
		XMASK.6035:
				.long	16
				.align 4
		OPFMASK.6029:
				.long	63488
				.align 4
		FMASK.6028:
				.long	2048
				.align 4
		SINGLE.6027:
				.long	20480
				.section	.rodata
				.align 4
		__PRETTY_FUNCTION__.5625:
				.string	"_imp_SELECTOUTPUT"
				.data
				.align 4
		AND.6660:
				.long	1717
				.align 4
		OR.6661:
				.long	16873
				.align 4
		W.6521:
				.long	24717
				.align 4
		B.6520:
				.long	2184
				.align 4
		MEM.6255:
				.long	2
				.align 4
		SUB.6239:
				.long	2831
				.align 4
		ADD.6238:
				.long	2575
				.align 4
		AND.6240:
				.long	1031
				.align 4
		OR.6241:
				.long	1543
				.align 4
		XOR.6242:
				.long	1799
				.align 4
		SLLS.6243:
				.long	29960
				.align 4
		SLHL.6245:
				.long	3332
				.align 4
		SRLS.6244:
				.long	29704
				.align 4
		SRHL.6246:
				.long	3076
				.align 4
		COMP.6247:
				.long	2311
				.align 4
		CLB.6248:
				.long	37890
				.align 4
		LOAD.6236:
				.long	2063
				.comm	ZQUERY.6258,4,4
				.align 4
		STORE.6249:
				.long	2
				.align 4
		STB.6250:
				.long	37378
				.align 4
		AHM.6251:
				.long	8450
				.section	.data.rel.local,"aw",@progbits
				.align 32
		ASS.6270:
				.long	.L916
				.long	.L916
				.long	.L916
				.long	.L916
				.long	.L900
				.long	.L881
				.long	.L878
				.long	.L875
				.long	.L857
				.long	.L845
				.long	.L844
				.long	.L916
				.long	.L843
				.long	.L842
				.long	.L841
				.long	.L840
				.long	.L834
				.long	.L826
				.long	.L825
				.long	.L783
				.long	.L916
				.long	.L916
				.long	.L778
				.long	.L775
				.long	.L772
				.long	.L771
				.long	.L770
				.long	.L769
				.long	.L751
				.long	.L759
				.data
				.align 4
		SHORT.6257:
				.long	8
				.align 4
		LIT.6256:
				.long	4
				.align 4
		REGISTER.6254:
				.long	1
				.align 4
		BF.6253:
				.long	771
				.align 4
		BT.6252:
				.long	515
				.align 4
		LB.6237:
				.long	37635
				.align 4
		SINC.6298:
				.long	7168
				.align 4
		LINC.6299:
				.long	49152
				.align 4
		MINC.6300:
				.long	16384
				.section	.rodata
				.align 4
		__PRETTY_FUNCTION__.5621:
				.string	"_imp_SELECTINPUT"
				.comm	HOLD.6171,4,4
				.comm	SEQ.6182,4,4
				.align 4
		__PRETTY_FUNCTION__.5593:
				.string	"_imp_OUTDEV"
				.data
				.align 4
		MARKER.6148:
				.long	124
				.section	.text.__x86.get_pc_thunk.ax,"axG",@progbits,__x86.get_pc_thunk.ax,comdat
				.globl	__x86.get_pc_thunk.ax
				.hidden	__x86.get_pc_thunk.ax
		__x86.get_pc_thunk.ax:
		.LFB239:
				movl	(%esp), %eax
				ret
		.LFE239:
				.section	.text.__x86.get_pc_thunk.dx,"axG",@progbits,__x86.get_pc_thunk.dx,comdat
				.globl	__x86.get_pc_thunk.dx
				.hidden	__x86.get_pc_thunk.dx
		__x86.get_pc_thunk.dx:
		.LFB240:
				movl	(%esp), %edx
				ret
		.LFE240:
				.section	.text.__x86.get_pc_thunk.bx,"axG",@progbits,__x86.get_pc_thunk.bx,comdat
				.globl	__x86.get_pc_thunk.bx
				.hidden	__x86.get_pc_thunk.bx
		__x86.get_pc_thunk.bx:
		.LFB241:
				movl	(%esp), %ebx
				ret
		.LFE241:
				.section	.text.__x86.get_pc_thunk.si,"axG",@progbits,__x86.get_pc_thunk.si,comdat
				.globl	__x86.get_pc_thunk.si
				.hidden	__x86.get_pc_thunk.si
		__x86.get_pc_thunk.si:
		.LFB242:
				movl	(%esp), %esi
				ret
		.LFE242:
		.Letext0:
 1567
 1568 BEGIN:
 1569     BNEST
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	BNEST.6944
 1570     ->NEWPAGE %IF SYM # NL
				nop
		.L261:
		.L264:
				movl	-4628(%ebp), %eax
				cmpl	$10, %eax
				jne	.L460
				nop
		.L303:
 1571     ->LEND
				jmp	.L52
		.L343:
 1572
 1573 BEND:
 1574     FAULT('C') %IF NP # STORELIM %OR MP # 0
				movl	-4704(%ebp), %eax
				movl	NP.6057@GOTOFF(%eax), %edx
				movl	STORELIM.6058@GOTOFF(%eax), %eax
				cmpl	%eax, %edx
				jne	.L461
				movl	-4704(%ebp), %eax
				movl	MP.6046@GOTOFF(%eax), %eax
				testl	%eax, %eax
				je	.L462
				jmp	.L305
		.L461:
				nop
		.L305:
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$67
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
				jmp	.L306
		.L462:
				nop
		.L306:
 1575     MP = 0;  NP = STORELIM
				movl	-4704(%ebp), %ebx
				movl	%ebx, %eax
				movl	$0, MP.6046@GOTOFF(%eax)
				movl	%ebx, %eax
				movl	STORELIM.6058@GOTOFF(%eax), %eax
				movl	%eax, NP.6057@GOTOFF(%ebx)
 1576     %IF BP # LABLIM %START
				movl	%ebx, %eax
				movl	BP.6056@GOTOFF(%eax), %edx
				movl	%ebx, %eax
				movl	LABLIM.6055@GOTOFF(%eax), %eax
				cmpl	%eax, %edx
				je	.L463
				nop
		.L310:
		.LBB94:
		.LBB95:
				movl	-4704(%ebp), %edi
				movl	%edi, %ebx
				call	_imp_closeinput@PLT
		.LBE95:
		.LBE94:
 1577        SAVE = INTEGER(BP-3);  TEMPS = INTEGER(BP-2)
				movl	-4704(%ebp), %esi
				movl	BP.6056@GOTOFF(%esi), %eax
				leal	-3(%eax), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, SAVE.6070@GOTOFF(%esi)
				movl	BP.6056@GOTOFF(%esi), %eax
				leal	-2(%eax), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, TEMPS.6071@GOTOFF(%esi)
 1578        MACLIM = INTEGER(BP-1);  STARTPOS = MACLIM
				movl	BP.6056@GOTOFF(%esi), %eax
				leal	-1(%eax), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, MACLIM.6045@GOTOFF(%esi)
				movl	MACLIM.6045@GOTOFF(%esi), %eax
				movl	%eax, STARTPOS.6039@GOTOFF(%esi)
 1579        DEFMIN = INTEGER(BP)
				movl	BP.6056@GOTOFF(%esi), %edx
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	INTEGER.6096
				addl	$16, %esp
				movl	%eax, DEFMIN.6051@GOTOFF(%esi)
 1580        SET ACC
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	SETACC.6738
 1581        BP = BP-4
				movl	BP.6056@GOTOFF(%esi), %eax
				subl	$4, %eax
				movl	%eax, BP.6056@GOTOFF(%esi)
 1582        ->LEND %IF BP # LABLIM
				nop
		.L52:
				movl	BP.6056@GOTOFF(%esi), %edx
				movl	LABLIM.6055@GOTOFF(%esi), %eax
				cmpl	%eax, %edx
				jne	.L464
				jmp	.L310
		.L308:
		.L463:
 1583     %FINISH
 1584     CLOSE INPUT;  SELECT INPUT(MAIN)
				movl	MAIN.6021@GOTOFF(%edi), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_SELECTINPUT
				addl	$16, %esp
 1585     BNEST
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	BNEST.6944
 1586     LIST = 5
				movl	$5, LIST.6067@GOTOFF(%edi)
 1587     PASS = PASS+1
				movl	PASS.6066@GOTOFF(%edi), %eax
				addl	$1, %eax
				movl	%eax, PASS.6066@GOTOFF(%edi)
				movl	PASS.6066@GOTOFF(%edi), %eax
				cmpl	$2, %eax
				jne	.L465
				nop
		.L312:
 1588     ->DO PASS %IF PASS # 2
				nop
		.L31:
 1589
 1590     OUTPUT RECORD %IF BINCOUNT = 208
				movl	-4704(%ebp), %eax
				movl	BINCOUNT.6064@GOTOFF(%eax), %eax
				cmpl	$208, %eax
				jne	.L466
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	OUTPUTRECORD.6180
				jmp	.L314
		.L466:
				nop
		.L314:
 1591     PUT(1)
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$1
				movl	%eax, %ecx
				call	PUT.6169
				addl	$16, %esp
 1592     OUTPUT RECORD
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	OUTPUTRECORD.6180
 1593     FAULT('$')
				subl	$12, %esp
				leal	-4632(%ebp), %eax
				pushl	$36
				movl	%eax, %ecx
				call	FAULT.6117
				addl	$16, %esp
 1594     PRINT LOC;  PRINT LINE
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	PRINTLOC.6134
				leal	-4632(%ebp), %eax
				movl	%eax, %ecx
				call	PRINTLINE.6143
				movl	$0, -4636(%ebp)
		.LBB96:
		.LBB97:
				subl	$12, %esp
				pushl	-4636(%ebp)
				movl	-4704(%ebp), %ebx
				call	exit@PLT
		.LBE97:
		.LBE96:
		.LFE189:
		CHAR.6102:
		.LFB191:
 1595
 1596 %ENDOFPROGRAM
 1517 Statements compiled
