         Edinburgh IMP77 Compiler - Version 8.4
    1 %externalroutinespec debug(%string(255)s)
		.Ltext0:
		_imp_INPUTSTREAM:
		.LFB87:
				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__.5597@GOTOFF(%ebx), %eax
				pushl	%eax
				call	check_instream@PLT
				addl	$16, %esp
				movl	_imp_InStream@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE87:
		_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	.L6
				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	.L3
		.L6:
				nop
		.L3:
				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	.L10
				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	.L7
		.L10:
				nop
		.L7:
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE94:
		PRINTIDENT.6186:
		.LFB190:
    2
    3 !   Computer Science IMP77 Compiler   -   Version 8  First pass
    4 !                         23rd March 1981
    5 !
    6 %control 0
    7
    8 %external %string (15) %fn %spec date
    9 %external %string (15) %fn %spec time
   10
   11 %externalintegerfn pass1(%integer object tank)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$152012, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ebx, %esi
				movl	%esi, -151996(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -84(%ebp)
   12    %externalroutinespec put(%integer n)
   13    %externalroutinespec putword(%integer n)
   14    %externalroutinespec putlong(%integer n)
   15    %externalroutinespec putblock(%integer len, %bytename b)
   16    %externalroutinespec select output tank(%integer n)
   17    %systemroutinespec exit %alias "exit" (%integer status)
   18    %externalstring(63)%spec error message
   19    %externalstring(72)%fnspec sysmess(%integer n)
   20    %externalstring(127)%fnspec infilename
   21
   22    %externalstring(6) version = "V08.02"
				leal	-150668(%ebp), %edx
				movl	$0, %eax
				movl	$64, %ecx
				movl	%edx, %edi
				rep stosl
				movb	$6, -150668(%ebp)
				movl	$775434326, -150667(%ebp)
				movw	$12848, -150663(%ebp)
   23
   24    %externalintegerspec command
   25
   26    %constinteger warnbit = 8_200
   27    %constinteger listbit = 8_400
   28
   29    !configuration parameters
   30
   31    %CONSTINTEGER max int      = ((-1)>>1)//10
   32    %CONSTINTEGER max dig      = (-1)>>1-maxint*10
   33    %CONSTINTEGER byte size    = 8;            !bits per byte
   34    %CONSTINTEGER max tag      = 1200;          !max no. of tags
   35    %CONSTINTEGER max dict     = 9000;         !max extent of dictionary
   36    %CONSTINTEGER name bits    = 11
   37    %CONSTINTEGER max names    = 1<<namebits-1
   38    %OWNINTEGER   spare names  = max names
   39    %CONSTINTEGER max grammar  = 1800
   40    %CONSTINTEGER lit max      = 50;           !max no. of constants/stat.
   41    %CONSTINTEGER rec size     = 260;          !size of analysis record
   42    %CONSTINTEGER dim limit    = 6;            !maximum array dimension
   43
   44    !symbols
   45
   46    %CONSTINTEGER ff     = 12;              !form feed
   47    %CONSTINTEGER marker = '^';             !marker for faults
   48    %CONSTINTEGER squote = '"';             !string quote
   49    %CONSTINTEGER cquote = '''';            !character quote
   50
   51    !streams
   52
   53    %CONSTINTEGER   source = 1, prims = 2
   54    %CONSTINTEGER report = 0, listing = 2
   55
   56
   57    !types
   58
   59    %CONSTINTEGER integer = 1
   60    %CONSTINTEGER real    = 2
   61    %CONSTINTEGER stringv = 3
   62    %CONSTINTEGER record  = 4
   63
   64    !forms
   65
   66    %CONSTINTEGER iform = integer<<4+1
   67
   68    %CONSTINTEGER var = 91
   69    %CONSTINTEGER const   = 93
   70    %CONSTINTEGER swit    = 105
   71    %CONSTINTEGER comment = 22
   72    %CONSTINTEGER termin  = 20
   73    %CONSTINTEGER lab     = 3
   74    %CONSTINTEGER jump    = 54
   75
   76    %CONSTINTEGER recfm = 4
   77    %CONSTINTEGER proc  = 7;                     !class for proc
   78
   79    !phrase entries
   80
   81    %CONSTINTEGER escdec   = 252
   82    %CONSTINTEGER escproc  = 253
   83    %CONSTINTEGER escarray = 254
   84    %CONSTINTEGER escrec   = 255
   85
   86    %RECORDFORMAT arfm({GT:%SHORT}%INTEGER class,sub,link,ptype,papp,pformat,x,pos);!imp77:
   87
   88    %RECORDFORMAT tagfm(%INTEGER app, format, %C
   89                        {GT:%SHORT}%INTEGER flags, index, text, link)
   90
   91    !flags
   92
   93 !      *===.===.===.===.===.====.====.====.===.======.======*
   94 !      ! u ! c ! c ! p ! s ! a  ! o  ! pr ! s ! type ! form !
   95 !      ! 1 ! 1 ! 1 ! 1 ! 1 ! 1  ! 1  ! 1  ! 1 !  3   !  4   !
   96 !      *===^===^===^===^===^====^====^====^===^======^======*
   97 !        u   c   c   p   s   a    o    p    s    t      f
   98 !        s   l   o   a   u   n    w    r    p    y      o
   99 !        e   o   n   r   b   a    n    o    e    p      r
  100 !        d   s   s   a   n   m         t    c    e      m
  101 !            e   t   m   a   e
  102 !            d       s   m
  103 !                        e
  104 !
  105 !
  106
  107    %CONSTINTEGER used bit   = 2_1000000000000000,
  108                  closed     = 2_0100000000000000,
  109                  const bit  = 2_0010000000000000,
  110                  parameters = 2_0001000000000000,
  111                  subname    = 2_0000100000000000,
  112                  aname      = 2_0000010000000000,
  113                  own bit    = 2_0000001000000000,
  114                  prot       = 2_0000000100000000,
  115                  spec       = 2_0000000010000000
  116
  117    %CONSTINTEGER trans bit  = 16_4000
  118    %CONSTINTEGER error      = 16_8000
  119
  120    %CONSTINTEGER manifest = 120, figurative = 130
  121    %CONSTINTEGER actions  = 180, phrasal    = 200
  122
  123    %CONSTBYTEINTEGERARRAY amap(0:15) = %C
				movb	$89, -65892(%ebp)
				movb	$91, -65891(%ebp)
				movb	$92, -65890(%ebp)
				movb	$104, -65889(%ebp)
				movb	$94, -65888(%ebp)
				movb	$93, -65887(%ebp)
				movb	$105, -65886(%ebp)
				movb	$100, -65885(%ebp)
				movb	$101, -65884(%ebp)
				movb	$102, -65883(%ebp)
				movb	$103, -65882(%ebp)
				movb	$106, -65881(%ebp)
				movb	$107, -65880(%ebp)
				movb	$108, -65879(%ebp)
				movb	$109, -65878(%ebp)
				movb	$89, -65877(%ebp)
				leal	-151688(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				addl	$78888, %eax
				movl	%eax, -151688(%ebp)
				movl	$1, -151684(%ebp)
  124  89, 91, 92, 104, 94, const, swit, 100, 101, 102, 103, 106, 107, 108, 109, 89
  125 !?   v   n   l    fm  const  swit  rp   fp   mp   pp   a    an   na   nan  ?
  126
  127    %CONSTBYTEINTEGERARRAY atoms(0:15) = 89, 1, 1, 10,  9,  1, 10,  7,
				movb	$89, -65958(%ebp)
				movb	$1, -65957(%ebp)
				movb	$1, -65956(%ebp)
				movb	$10, -65955(%ebp)
				movb	$9, -65954(%ebp)
				movb	$1, -65953(%ebp)
				movb	$10, -65952(%ebp)
				movb	$7, -65951(%ebp)
				movb	$7, -65950(%ebp)
				movb	$7, -65949(%ebp)
				movb	$7, -65948(%ebp)
				movb	$4, -65947(%ebp)
				movb	$1, -65946(%ebp)
				movb	$4, -65945(%ebp)
				movb	$1, -65944(%ebp)
				movb	$89, -65943(%ebp)
				leal	-151620(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				addl	$78822, %eax
				movl	%eax, -151620(%ebp)
				movl	$1, -151616(%ebp)
  128                                          7, 7, 7,  4,  1,  4,  1, 89
  129
  130    %RECORD(arfm)%ARRAY ar(1:rec size)
				leal	-151552(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				movl	%eax, -151552(%ebp)
				movl	$32, -151548(%ebp)
  131
  132    %OWNINTEGER class = 0;                    !class of atom wanted
  133    %OWNINTEGER x = 0;                        !usually last tag
  134    %OWNINTEGER atom1 = 0;                    !atom class (major)
  135    %OWNINTEGER atom2 = 0;                    !atom class (minor)
  136    %OWNINTEGER subatom = 0;                  !extra info about atom
  137    %OWNINTEGER type = 0, app = 0, format = 0;!atom info
  138    %INTEGER hash value
  139    %OWNINTEGER faulty  = 0;                  !fault indicator
  140    %OWNINTEGER fault rate = 0;               !fault rate count
  141    %OWNINTEGER lines = 0;                    !current line number
  142    %OWNINTEGER text line = 0;                !starting line for string const
  143    %OWNINTEGER margin = 0;                   !statement start margin
  144    %OWNINTEGER error margin = 0, error sym = 0, column = 0
  145    %OWNINTEGER stats = 0;                    !statements compiled
  146    %OWNINTEGER mon pos = 0;                  !flag for diagnose
  147    %OWNINTEGER sym = nl;                     !current input symbol
  148    %OWNINTEGER symtype = 0;                  !type of current symbol
  149    %OWNINTEGER quote = 0;                    !>0 strings, <0 chars
  150    %owninteger end mark = 0;                  !%end flag
  151    %OWNINTEGER cont = ' ', csym = ' ';       !listing continuation marker
  152    %OWNINTEGER decl = 0;                     !current declarator flags
  153    %OWNINTEGER dim  = 0;                     !arrayname dimension
  154    %OWNINTEGER spec given = 0
  155
  156    %OWNINTEGER escape class = 0;             !when and where to escape
  157    %OWNINTEGER protection=0, atom flags=0
  158    %OWNINTEGER otype = 0;                    !current 'own' type
  159    %OWNINTEGER reals ln = 1;                 ! =4 for %REALSLONG
  160    %OWNINTEGER last1 = 0;                    !previous atom class
  161    %OWNINTEGER gen type = 0
  162    %OWNINTEGER ptype = 0;                    !current phrase type
  163    %OWNINTEGER papp = 0;                     !current phrase parameters
  164    %OWNINTEGER pformat = 0;                  !current phrase format
  165    %OWNINTEGER force = 0;                    !force next ptype
  166    %OWNINTEGER g = 0, gg = 0, map gg = 0;            !grammar entries
  167    %OWNINTEGER fdef  = 0;                    !current format definition
  168    %OWNINTEGER this  = -1;                   !current recordformat tag
  169    %OWNINTEGER nmin = 0;                     !analysis record atom pointer
  170    %OWNINTEGER nmax = 0;                     !analysis record phrase pointer
  171    %OWNINTEGER rbase = 0;                    !record format definition base
  172    %OWNINTEGER stbase = 0;                   !constant work area base
  173    %OWNINTEGER gmin = max grammar;           !upper bound on grammar
  174    %OWNINTEGER dmax = 1
  175    %OWNINTEGER tmin = max tag;               !upper bound on tags
  176    %OWNINTEGER ss      = 0;                  !source statement entry
  177       %STRING(63) include file
  178    %OWNINTEGER include list = 0
  179    %OWNINTEGER include = 0;                  !=0 unused, #0 being used
  180    %OWNINTEGER perm    = 1;                  !1 = compiling perm, 0 = program
  181    %OWNINTEGER progmode= 0;                  !-1 = file, 1 = begin/eop
  182    %OWNINTEGER sstype = 0;                   !-1:exec stat
  183                                              ! 0: declaration
  184                                              ! 1: block in
  185                                              ! 2: block out
  186    %OWNINTEGER spec mode = 0;                !>=0: definition
  187                                              ! -1: proc spec
  188                                              ! -2: recordformat
  189    %OWNINTEGER ocount  = -1;                 !own constants wanted
  190    %OWNINTEGER limit   = 0;                  !lookup limit
  191    %OWNINTEGER copy    = 0;                  !duplicate name flag
  192    %OWNINTEGER order   = 0;                  !out of sequence flag
  193    %OWNINTEGER for warn = 0;                 !non-local flag
  194    %OWNINTEGER dubious = 0;                  !flag for dubious statements
  195    %OWNINTEGER dp      = 1
  196    %OWNINTEGER pos1    = 0, pos2 = 0;        !error position
  197    %OWNINTEGER pos     = 0;                  !input line index
  198    %OWNINTEGER dimension = 0;                !current array dimension
  199    %OWNINTEGER local = 0;                    !search limit for locals
  200    %OWNINTEGER fm base = 0;                  !entry for format decls
  201    %OWNINTEGER search base = 0;              !entry for record_names
  202    %OWNINTEGER format list = 0;              !size of current format list
  203    %INTEGER recid
  204    %ownbyteintegername current char
  205    %OWNBYTEINTEGERARRAY char(0:133)=nl(134);  !input line
				leal	-151484(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				movl	%esi, %ebx
				leal	CHAR.6153@GOTOFF(%ebx), %eax
				movl	%eax, -151484(%ebp)
				movl	$1, -151480(%ebp)
  206    %INTEGERARRAY lit pool(0:lit max)
				leal	-151416(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				addl	$8320, %eax
				movl	%eax, -151416(%ebp)
				movl	$4, -151412(%ebp)
  207    %OWNINTEGER lit = 0;                      !current literal (integer)
  208    %OWNINTEGER lp = 0;                       !literals pointer
  209    %OWNINTEGER block x = 0;                  !block tag
  210    %OWNINTEGER list    = 2;                  !<= to enable
  211    %OWNINTEGER control = 0
  212    %OWNINTEGER diag = 0;                     !diagnose flags
  213    %SHORTINTEGERARRAY hash(0:max names)
				leal	-151348(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				addl	$73596, %eax
				movl	%eax, -151348(%ebp)
				movl	$2, -151344(%ebp)
  214    %RECORD(tagfm)%ARRAY tag(0:max tag)
				leal	-151280(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				addl	$44532, %eax
				movl	%eax, -151280(%ebp)
				movl	$24, -151276(%ebp)
  215    {GT:%SHORT}%INTEGERARRAY dict(1:max dict)
				leal	-151212(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				addl	$8532, %eax
				movl	%eax, -151212(%ebp)
				movl	$4, -151208(%ebp)
  216
  217 !*** start of generated tables ***
  218 !!   %include "tables.imp"
  219 !!   %endoflist
  220 %conststring(8)%array text(0:255) = %c
				leal	-65876(%ebp), %eax
				movl	$65536, %edx
				subl	$4, %esp
				pushl	%edx
				pushl	$0
				pushl	%eax
				movl	%esi, %ebx
				call	memset@PLT
				addl	$16, %esp
				movb	$1, -65876(%ebp)
				movl	$90, -65875(%ebp)
				movl	$0, -65871(%ebp)
				movb	$4, -65620(%ebp)
				movl	$1128612950, -65619(%ebp)
				movl	$0, -65615(%ebp)
				movb	$7, -65364(%ebp)
				movl	$1447974735, -65363(%ebp)
				movl	$4408644, -65359(%ebp)
				movb	$8, -65108(%ebp)
				movl	$1448368197, -65107(%ebp)
				movl	$1128616019, -65103(%ebp)
				movb	$4, -64852(%ebp)
				movl	$1128612929, -64851(%ebp)
				movl	$0, -64847(%ebp)
				movb	$7, -64596(%ebp)
				movl	$1095653199, -64595(%ebp)
				movl	$4408644, -64591(%ebp)
				movb	$8, -64340(%ebp)
				movl	$1096046661, -64339(%ebp)
				movl	$1128616019, -64335(%ebp)
				movb	$4, -64084(%ebp)
				movl	$1129271888, -64083(%ebp)
				movl	$0, -64079(%ebp)
				movb	$8, -63828(%ebp)
				movl	$1129271888, -63827(%ebp)
				movl	$1128616019, -63823(%ebp)
				movb	$7, -63572(%ebp)
				movl	$1297239878, -63571(%ebp)
				movl	$4408644, -63567(%ebp)
				movb	$5, -63316(%ebp)
				movl	$1162106707, -63315(%ebp)
				movl	$67, -63311(%ebp)
				movb	$4, -63060(%ebp)
				movl	$1128612940, -63059(%ebp)
				movl	$0, -63055(%ebp)
				movb	$8, -62804(%ebp)
				movl	$1297239878, -62803(%ebp)
				movl	$1128616019, -62799(%ebp)
				movb	$6, -61268(%ebp)
				movl	$1230262351, -61267(%ebp)
				movl	$20047, -61263(%ebp)
				movb	$5, -61012(%ebp)
				movl	$1296912195, -61011(%ebp)
				movl	$65, -61007(%ebp)
				movb	$1, -60756(%ebp)
				movl	$84, -60755(%ebp)
				movl	$0, -60751(%ebp)
				movb	$5, -60500(%ebp)
				movl	$1330401091, -60499(%ebp)
				movl	$78, -60495(%ebp)
				movb	$7, -60244(%ebp)
				movl	$1296912195, -60243(%ebp)
				movl	$5525061, -60239(%ebp)
				movb	$2, -59988(%ebp)
				movl	$16972, -59987(%ebp)
				movl	$0, -59983(%ebp)
				movb	$5, -59732(%ebp)
				movl	$1095322689, -59731(%ebp)
				movl	$83, -59727(%ebp)
				movb	$2, -59476(%ebp)
				movl	$16978, -59475(%ebp)
				movl	$0, -59471(%ebp)
				movb	$3, -59220(%ebp)
				movl	$4347219, -59219(%ebp)
				movl	$0, -59215(%ebp)
				movb	$6, -58964(%ebp)
				movl	$1095914049, -58963(%ebp)
				movl	$17497, -58959(%ebp)
				movb	$5, -58708(%ebp)
				movl	$1348031571, -58707(%ebp)
				movl	$69, -58703(%ebp)
				movb	$5, -58452(%ebp)
				movl	$1095914049, -58451(%ebp)
				movl	$89, -58447(%ebp)
				movb	$4, -58196(%ebp)
				movl	$1162690894, -58195(%ebp)
				movl	$0, -58191(%ebp)
				movb	$5, -57940(%ebp)
				movl	$1129271888, -57939(%ebp)
				movl	$68, -57935(%ebp)
				movb	$5, -57684(%ebp)
				movl	$1095585350, -57683(%ebp)
				movl	$80, -57679(%ebp)
				movb	$6, -57428(%ebp)
				movl	$1414092627, -57427(%ebp)
				movl	$18499, -57423(%ebp)
				movb	$3, -57172(%ebp)
				movl	$5134159, -57171(%ebp)
				movl	$0, -57167(%ebp)
				movb	$8, -56916(%ebp)
				movl	$1163155525, -56915(%ebp)
				movl	$1279348306, -56911(%ebp)
				movb	$6, -56660(%ebp)
				movl	$1230132307, -56659(%ebp)
				movl	$18254, -56655(%ebp)
				movb	$6, -56404(%ebp)
				movl	$1329808722, -56403(%ebp)
				movl	$17490, -56399(%ebp)
				movb	$6, -56148(%ebp)
				movl	$1297239878, -56147(%ebp)
				movl	$21569, -56143(%ebp)
				movb	$4, -55892(%ebp)
				movl	$1128616019, -55891(%ebp)
				movl	$0, -55887(%ebp)
				movb	$5, -55636(%ebp)
				movl	$1146045261, -55635(%ebp)
				movl	$69, -55631(%ebp)
				movb	$5, -55380(%ebp)
				movl	$1161969996, -55379(%ebp)
				movl	$76, -55375(%ebp)
				movb	$3, -55124(%ebp)
				movl	$3231823, -55123(%ebp)
				movl	$0, -55119(%ebp)
				movb	$3, -54868(%ebp)
				movl	$3297359, -54867(%ebp)
				movl	$0, -54863(%ebp)
				movb	$3, -54612(%ebp)
				movl	$3362895, -54611(%ebp)
				movl	$0, -54607(%ebp)
				movb	$4, -54356(%ebp)
				movl	$1313294675, -54355(%ebp)
				movl	$0, -54351(%ebp)
				movb	$3, -54100(%ebp)
				movl	$5263189, -54099(%ebp)
				movl	$0, -54095(%ebp)
				movb	$3, -53844(%ebp)
				movl	$4476749, -53843(%ebp)
				movl	$0, -53839(%ebp)
				movb	$3, -53588(%ebp)
				movl	$5525316, -53587(%ebp)
				movl	$0, -53583(%ebp)
				movb	$4, -53332(%ebp)
				movl	$1347243843, -53331(%ebp)
				movl	$0, -53327(%ebp)
				movb	$5, -53076(%ebp)
				movl	$1297040193, -53075(%ebp)
				movl	$80, -53071(%ebp)
				movb	$2, -52820(%ebp)
				movl	$20805, -52819(%ebp)
				movl	$0, -52815(%ebp)
				movb	$4, -52564(%ebp)
				movl	$1363497285, -52563(%ebp)
				movl	$0, -52559(%ebp)
				movb	$3, -52308(%ebp)
				movl	$5062986, -52307(%ebp)
				movl	$0, -52303(%ebp)
				movb	$4, -52052(%ebp)
				movl	$1347245386, -52051(%ebp)
				movl	$0, -52047(%ebp)
				movb	$5, -51796(%ebp)
				movl	$1330857298, -51795(%ebp)
				movl	$80, -51791(%ebp)
				movb	$3, -51540(%ebp)
				movl	$4476481, -51539(%ebp)
				movl	$0, -51535(%ebp)
				movb	$2, -51284(%ebp)
				movl	$21071, -51283(%ebp)
				movl	$0, -51279(%ebp)
				movb	$3, -51028(%ebp)
				movl	$5525326, -51027(%ebp)
				movl	$0, -51023(%ebp)
				movb	$5, -50772(%ebp)
				movl	$1279871063, -50771(%ebp)
				movl	$69, -50767(%ebp)
				movb	$5, -50516(%ebp)
				movl	$1230261845, -50515(%ebp)
				movl	$76, -50511(%ebp)
				movb	$3, -50260(%ebp)
				movl	$5394246, -50259(%ebp)
				movl	$0, -50255(%ebp)
				movb	$5, -50004(%ebp)
				movl	$1380931395, -50003(%ebp)
				movl	$68, -49999(%ebp)
				movb	$4, -49748(%ebp)
				movl	$1414092869, -49747(%ebp)
				movl	$0, -49743(%ebp)
				movb	$2, -49492(%ebp)
				movl	$20047, -49491(%ebp)
				movl	$0, -49487(%ebp)
				movb	$6, -49236(%ebp)
				movl	$1313294675, -49235(%ebp)
				movl	$19521, -49231(%ebp)
				movb	$4, -48980(%ebp)
				movl	$1313163348, -48979(%ebp)
				movl	$0, -48975(%ebp)
				movb	$5, -48724(%ebp)
				movl	$1380013139, -48723(%ebp)
				movl	$84, -48719(%ebp)
				movb	$4, -48468(%ebp)
				movl	$1163086917, -48467(%ebp)
				movl	$0, -48463(%ebp)
				movb	$6, -48212(%ebp)
				movl	$1229867334, -48211(%ebp)
				movl	$18515, -48207(%ebp)
				movb	$5, -47956(%ebp)
				movl	$1397507398, -47955(%ebp)
				movl	$69, -47951(%ebp)
				movb	$5, -47700(%ebp)
				movl	$1279482179, -47699(%ebp)
				movl	$69, -47695(%ebp)
				movb	$6, -47444(%ebp)
				movl	$1162888530, -47443(%ebp)
				movl	$21569, -47439(%ebp)
				movb	$7, -47188(%ebp)
				movl	$1196380752, -47187(%ebp)
				movl	$5062994, -47183(%ebp)
				movb	$5, -46932(%ebp)
				movl	$1229407554, -46931(%ebp)
				movl	$78, -46927(%ebp)
				movb	$3, -46676(%ebp)
				movl	$4476485, -46675(%ebp)
				movl	$0, -46671(%ebp)
				movb	$7, -46420(%ebp)
				movl	$1346653765, -46419(%ebp)
				movl	$4673362, -46415(%ebp)
				movb	$7, -46164(%ebp)
				movl	$1346653765, -46163(%ebp)
				movl	$5067333, -46159(%ebp)
				movb	$7, -45908(%ebp)
				movl	$1397051974, -45907(%ebp)
				movl	$5524565, -45903(%ebp)
				movb	$7, -45652(%ebp)
				movl	$1397051981, -45651(%ebp)
				movl	$5524565, -45647(%ebp)
				movb	$4, -45396(%ebp)
				movl	$1262698818, -45395(%ebp)
				movl	$0, -45391(%ebp)
				movb	$7, -45140(%ebp)
				movl	$1229868877, -45139(%ebp)
				movl	$5394260, -45135(%ebp)
				movb	$4, -44884(%ebp)
				movl	$1347376211, -44883(%ebp)
				movl	$0, -44879(%ebp)
				movb	$4, -44628(%ebp)
				movl	$1414744396, -44627(%ebp)
				movl	$0, -44623(%ebp)
				movb	$7, -44116(%ebp)
				movl	$1414418243, -44115(%ebp)
				movl	$5001042, -44111(%ebp)
				movb	$7, -43860(%ebp)
				movl	$1279479369, -43859(%ebp)
				movl	$4539477, -43855(%ebp)
				movb	$4, -43604(%ebp)
				movl	$1397965133, -43603(%ebp)
				movl	$0, -43599(%ebp)
				movb	$5, -43348(%ebp)
				movl	$1348031570, -43347(%ebp)
				movl	$69, -43343(%ebp)
				movb	$5, -43092(%ebp)
				movl	$1329873985, -43091(%ebp)
				movl	$80, -43087(%ebp)
				movb	$5, -42836(%ebp)
				movl	$1313162313, -42835(%ebp)
				movl	$84, -42831(%ebp)
				movb	$1, -42580(%ebp)
				movl	$86, -42579(%ebp)
				movl	$0, -42575(%ebp)
				movb	$1, -42324(%ebp)
				movl	$78, -42323(%ebp)
				movl	$0, -42319(%ebp)
				movb	$5, -42068(%ebp)
				movl	$1397641027, -42067(%ebp)
				movl	$84, -42063(%ebp)
				movb	$2, -41812(%ebp)
				movl	$19782, -41811(%ebp)
				movl	$0, -41807(%ebp)
				movb	$1, -41300(%ebp)
				movl	$82, -41299(%ebp)
				movl	$0, -41295(%ebp)
				movb	$1, -41044(%ebp)
				movl	$70, -41043(%ebp)
				movl	$0, -41039(%ebp)
				movb	$1, -40788(%ebp)
				movl	$77, -40787(%ebp)
				movl	$0, -40783(%ebp)
				movb	$1, -40532(%ebp)
				movl	$80, -40531(%ebp)
				movl	$0, -40527(%ebp)
				movb	$2, -40276(%ebp)
				movl	$20562, -40275(%ebp)
				movl	$0, -40271(%ebp)
				movb	$2, -40020(%ebp)
				movl	$20550, -40019(%ebp)
				movl	$0, -40015(%ebp)
				movb	$2, -39764(%ebp)
				movl	$20557, -39763(%ebp)
				movl	$0, -39759(%ebp)
				movb	$2, -39508(%ebp)
				movl	$20560, -39507(%ebp)
				movl	$0, -39503(%ebp)
				movb	$1, -39252(%ebp)
				movl	$76, -39251(%ebp)
				movl	$0, -39247(%ebp)
				movb	$1, -38996(%ebp)
				movl	$83, -38995(%ebp)
				movl	$0, -38991(%ebp)
				movb	$1, -38740(%ebp)
				movl	$65, -38739(%ebp)
				movl	$0, -38735(%ebp)
				movb	$2, -38484(%ebp)
				movl	$20033, -38483(%ebp)
				movl	$0, -38479(%ebp)
				movb	$2, -38228(%ebp)
				movl	$16718, -38227(%ebp)
				movl	$0, -38223(%ebp)
				movb	$3, -37972(%ebp)
				movl	$5128526, -37971(%ebp)
				movl	$0, -37967(%ebp)
				movb	$7, -35156(%ebp)
				movl	$1414745381, -35155(%ebp)
				movl	$5526081, -35151(%ebp)
				movb	$6, -34900(%ebp)
				movl	$1162625829, -34899(%ebp)
				movl	$21057, -34895(%ebp)
				movb	$5, -34644(%ebp)
				movl	$1163022373, -34643(%ebp)
				movl	$68, -34639(%ebp)
				movb	$8, -34132(%ebp)
				movl	$1112884261, -34131(%ebp)
				movl	$1398099785, -34127(%ebp)
				movb	$4, -33876(%ebp)
				movl	$1347765285, -33875(%ebp)
				movl	$0, -33871(%ebp)
				movb	$4, -33620(%ebp)
				movl	$1313427493, -33619(%ebp)
				movl	$0, -33615(%ebp)
				movb	$5, -33364(%ebp)
				movl	$1431261221, -33363(%ebp)
				movl	$84, -33359(%ebp)
				movb	$5, -33108(%ebp)
				movl	$1430537509, -33107(%ebp)
				movl	$80, -33103(%ebp)
				movb	$6, -32596(%ebp)
				movl	$1162103120, -32595(%ebp)
				movl	$21582, -32591(%ebp)
				movb	$6, -32340(%ebp)
				movl	$1162103107, -32339(%ebp)
				movl	$21582, -32335(%ebp)
				movb	$6, -32084(%ebp)
				movl	$1162103119, -32083(%ebp)
				movl	$21582, -32079(%ebp)
				movb	$5, -31828(%ebp)
				movl	$1296125510, -31827(%ebp)
				movl	$69, -31823(%ebp)
				movb	$4, -31572(%ebp)
				movl	$1145657171, -31571(%ebp)
				movl	$0, -31567(%ebp)
				movb	$4, -31316(%ebp)
				movl	$1280593732, -31315(%ebp)
				movl	$0, -31311(%ebp)
				movb	$4, -31060(%ebp)
				movl	$1381257028, -31059(%ebp)
				movl	$0, -31055(%ebp)
				movb	$4, -30804(%ebp)
				movl	$1346720577, -30803(%ebp)
				movl	$0, -30799(%ebp)
				movb	$4, -30548(%ebp)
				movl	$1346720579, -30547(%ebp)
				movl	$0, -30543(%ebp)
				movb	$4, -30292(%ebp)
				movl	$1346720591, -30291(%ebp)
				movl	$0, -30287(%ebp)
				movb	$4, -30036(%ebp)
				movl	$1346720592, -30035(%ebp)
				movl	$0, -30031(%ebp)
				movb	$3, -29780(%ebp)
				movl	$4346433, -29779(%ebp)
				movl	$0, -29775(%ebp)
				movb	$5, -29524(%ebp)
				movl	$1380732994, -29523(%ebp)
				movl	$66, -29519(%ebp)
				movb	$3, -29268(%ebp)
				movl	$4346447, -29267(%ebp)
				movl	$0, -29263(%ebp)
				movb	$3, -29012(%ebp)
				movl	$4346448, -29011(%ebp)
				movl	$0, -29007(%ebp)
				movb	$3, -28756(%ebp)
				movl	$4346435, -28755(%ebp)
				movl	$0, -28751(%ebp)
				movb	$4, -28500(%ebp)
				movl	$1112687442, -28499(%ebp)
				movl	$0, -28495(%ebp)
				movb	$5, -28244(%ebp)
				movl	$1380140370, -28243(%ebp)
				movl	$66, -28239(%ebp)
				movb	$5, -27988(%ebp)
				movl	$1279477074, -27987(%ebp)
				movl	$66, -27983(%ebp)
				movb	$3, -27732(%ebp)
				movl	$4342092, -27731(%ebp)
				movl	$0, -27727(%ebp)
				movb	$4, -27476(%ebp)
				movl	$1111575629, -27475(%ebp)
				movl	$0, -27471(%ebp)
				movb	$4, -27220(%ebp)
				movl	$1111575635, -27219(%ebp)
				movl	$0, -27215(%ebp)
				movb	$5, -26964(%ebp)
				movl	$1296125528, -26963(%ebp)
				movl	$69, -26959(%ebp)
				movb	$4, -26708(%ebp)
				movl	$1414420303, -26707(%ebp)
				movl	$0, -26703(%ebp)
				movb	$5, -26452(%ebp)
				movl	$1163084356, -26451(%ebp)
				movl	$80, -26447(%ebp)
				movb	$6, -26196(%ebp)
				movl	$1313817424, -26195(%ebp)
				movl	$21587, -26191(%ebp)
				movb	$4, -25940(%ebp)
				movl	$1146047811, -25939(%ebp)
				movl	$0, -25935(%ebp)
				movb	$5, -25684(%ebp)
				movl	$1195987779, -25683(%ebp)
				movl	$78, -25679(%ebp)
				movb	$4, -25428(%ebp)
				movl	$1347376451, -25427(%ebp)
				movl	$0, -25423(%ebp)
				movb	$4, -25172(%ebp)
				movl	$827346755, -25171(%ebp)
				movl	$0, -25167(%ebp)
				movb	$4, -24916(%ebp)
				movl	$844123971, -24915(%ebp)
				movl	$0, -24911(%ebp)
				movb	$4, -24660(%ebp)
				movl	$860901187, -24659(%ebp)
				movl	$0, -24655(%ebp)
				movb	$5, -24404(%ebp)
				movl	$1162104393, -24403(%ebp)
				movl	$70, -24399(%ebp)
				movb	$5, -24148(%ebp)
				movl	$1397507416, -24147(%ebp)
				movl	$69, -24143(%ebp)
				movb	$6, -23892(%ebp)
				movl	$1397051971, -23891(%ebp)
				movl	$20559, -23887(%ebp)
				movb	$4, -23636(%ebp)
				movl	$1111575630, -23635(%ebp)
				movl	$0, -23631(%ebp)
				movb	$6, -23380(%ebp)
				movl	$1414419794, -23379(%ebp)
				movl	$19529, -23375(%ebp)
				movb	$6, -23124(%ebp)
				movl	$1313817409, -23123(%ebp)
				movl	$21587, -23119(%ebp)
				movb	$4, -22868(%ebp)
				movl	$1112691279, -22867(%ebp)
				movl	$0, -22863(%ebp)
				movb	$5, -22612(%ebp)
				movl	$1312902470, -22611(%ebp)
				movl	$89, -22607(%ebp)
				movb	$7, -22356(%ebp)
				movl	$1381258063, -22355(%ebp)
				movl	$4673097, -22351(%ebp)
				movb	$4, -22100(%ebp)
				movl	$1112296774, -22099(%ebp)
				movl	$0, -22095(%ebp)
				movb	$4, -21844(%ebp)
				movl	$1112689990, -21843(%ebp)
				movl	$0, -21839(%ebp)
				movb	$4, -21588(%ebp)
				movl	$1380928838, -21587(%ebp)
				movl	$0, -21583(%ebp)
				movb	$7, -21332(%ebp)
				movl	$1196310866, -21331(%ebp)
				movl	$4346437, -21327(%ebp)
				movb	$4, -21076(%ebp)
				movl	$1145656134, -21075(%ebp)
				movl	$0, -21071(%ebp)
				movb	$6, -19540(%ebp)
				movl	$1297433637, -19539(%ebp)
				movl	$22861, -19535(%ebp)
				movb	$5, -19284(%ebp)
				movl	$1128612901, -19283(%ebp)
				movl	$76, -19279(%ebp)
				movb	$5, -19028(%ebp)
				movl	$1348031525, -19027(%ebp)
				movl	$69, -19023(%ebp)
				movb	$5, -18772(%ebp)
				movl	$1380276773, -18771(%ebp)
				movl	$79, -18767(%ebp)
				movb	$6, -18516(%ebp)
				movl	$1347436837, -18515(%ebp)
				movl	$22860, -18511(%ebp)
				movb	$5, -18260(%ebp)
				movl	$1330794533, -18259(%ebp)
				movl	$84, -18255(%ebp)
				movb	$8, -18004(%ebp)
				movl	$1413829413, -18003(%ebp)
				movl	$1414484560, -17999(%ebp)
				movb	$6, -17748(%ebp)
				movl	$1498697765, -17747(%ebp)
				movl	$17744, -17743(%ebp)
				movb	$5, -17492(%ebp)
				movl	$1346455333, -17491(%ebp)
				movl	$80, -17487(%ebp)
				movb	$6, -17236(%ebp)
				movl	$1129270309, -17235(%ebp)
				movl	$19521, -17231(%ebp)
				movb	$6, -16980(%ebp)
				movl	$1096107813, -16979(%ebp)
				movl	$17490, -16975(%ebp)
				movb	$6, -16724(%ebp)
				movl	$1329810725, -16723(%ebp)
				movl	$17732, -16719(%ebp)
				movb	$7, -16468(%ebp)
				movl	$1430536997, -16467(%ebp)
				movl	$5852493, -16463(%ebp)
				movb	$8, -16212(%ebp)
				movl	$1413829413, -16211(%ebp)
				movl	$1162893652, -16207(%ebp)
				movb	$5, -15956(%ebp)
				movl	$1162891045, -15955(%ebp)
				movl	$82, -15951(%ebp)
				movb	$6, -15700(%ebp)
				movl	$1380012069, -15699(%ebp)
				movl	$19777, -15695(%ebp)
				movb	$6, -15444(%ebp)
				movl	$1330397733, -15443(%ebp)
				movl	$19267, -15439(%ebp)
				movb	$6, -15188(%ebp)
				movl	$1213484837, -15187(%ebp)
				movl	$21061, -15183(%ebp)
				movb	$8, -14932(%ebp)
				movl	$1297040165, -14931(%ebp)
				movl	$1162627408, -14927(%ebp)
				movb	$3, -14676(%ebp)
				movl	$5263425, -14675(%ebp)
				movl	$0, -14671(%ebp)
				movb	$7, -14420(%ebp)
				movl	$1163084098, -14419(%ebp)
				movl	$5263425, -14415(%ebp)
				movb	$4, -14164(%ebp)
				movl	$844124225, -14163(%ebp)
				movl	$0, -14159(%ebp)
				movb	$4, -13908(%ebp)
				movl	$860901441, -13907(%ebp)
				movl	$0, -13903(%ebp)
				movb	$4, -13652(%ebp)
				movl	$877678657, -13651(%ebp)
				movl	$0, -13647(%ebp)
				movb	$4, -13396(%ebp)
				movl	$894455873, -13395(%ebp)
				movl	$0, -13391(%ebp)
				movb	$4, -13140(%ebp)
				movl	$911233089, -13139(%ebp)
				movl	$0, -13135(%ebp)
				movb	$5, -12884(%ebp)
				movl	$1178944577, -12883(%ebp)
				movl	$78, -12879(%ebp)
				movb	$5, -12628(%ebp)
				movl	$1380012110, -12627(%ebp)
				movl	$77, -12623(%ebp)
				movb	$5, -12372(%ebp)
				movl	$1162106707, -12371(%ebp)
				movl	$70, -12367(%ebp)
				movb	$5, -12116(%ebp)
				movl	$1145657171, -12115(%ebp)
				movl	$83, -12111(%ebp)
				movb	$5, -11860(%ebp)
				movl	$1480935747, -11859(%ebp)
				movl	$80, -11855(%ebp)
				movb	$6, -11604(%ebp)
				movl	$1313817426, -11603(%ebp)
				movl	$21587, -11599(%ebp)
				movb	$6, -11348(%ebp)
				movl	$1313817427, -11347(%ebp)
				movl	$21587, -11343(%ebp)
				movb	$6, -11092(%ebp)
				movl	$1095914049, -11091(%ebp)
				movl	$20569, -11087(%ebp)
				movb	$4, -10836(%ebp)
				movl	$1347242328, -10835(%ebp)
				movl	$0, -10831(%ebp)
				movb	$3, -10580(%ebp)
				movl	$5262665, -10579(%ebp)
				movl	$0, -10575(%ebp)
				movb	$4, -10324(%ebp)
				movl	$1145982787, -10323(%ebp)
				movl	$0, -10319(%ebp)
				movb	$5, -10068(%ebp)
				movl	$1313817427, -10067(%ebp)
				movl	$68, -10063(%ebp)
				movb	$4, -9812(%ebp)
				movl	$827349061, -9811(%ebp)
				movl	$0, -9807(%ebp)
				movb	$4, -9556(%ebp)
				movl	$844126277, -9555(%ebp)
				movl	$0, -9551(%ebp)
				movb	$4, -9300(%ebp)
				movl	$1347962195, -9299(%ebp)
				movl	$0, -9295(%ebp)
				movb	$4, -9044(%ebp)
				movl	$1347962185, -9043(%ebp)
				movl	$0, -9039(%ebp)
				movb	$5, -8788(%ebp)
				movl	$1347962185, -8787(%ebp)
				movl	$49, -8783(%ebp)
				movb	$5, -8532(%ebp)
				movl	$1347962185, -8531(%ebp)
				movl	$50, -8527(%ebp)
				movb	$5, -8276(%ebp)
				movl	$1480938313, -8275(%ebp)
				movl	$80, -8271(%ebp)
				movb	$3, -8020(%ebp)
				movl	$5326163, -8019(%ebp)
				movl	$0, -8015(%ebp)
				movb	$4, -7764(%ebp)
				movl	$1178944582, -7763(%ebp)
				movl	$0, -7759(%ebp)
				movb	$3, -7508(%ebp)
				movl	$5265477, -7507(%ebp)
				movl	$0, -7503(%ebp)
				movb	$7, -7252(%ebp)
				movl	$1381122382, -7251(%ebp)
				movl	$5265729, -7247(%ebp)
				movb	$6, -6996(%ebp)
				movl	$1431458899, -6995(%ebp)
				movl	$21571, -6991(%ebp)
				movb	$6, -6740(%ebp)
				movl	$1163085138, -6739(%ebp)
				movl	$20568, -6735(%ebp)
				movb	$3, -6484(%ebp)
				movl	$5001282, -6483(%ebp)
				movl	$0, -6479(%ebp)
				movb	$6, -6228(%ebp)
				movl	$1397641027, -6227(%ebp)
				movl	$16980, -6223(%ebp)
				movb	$5, -5972(%ebp)
				movl	$1163151686, -5971(%ebp)
				movl	$77, -5967(%ebp)
				movb	$5, -5716(%ebp)
				movl	$1163022157, -5715(%ebp)
				movl	$65, -5711(%ebp)
				movb	$5, -5460(%ebp)
				movl	$1397312579, -5459(%ebp)
				movl	$84, -5455(%ebp)
				movb	$3, -5204(%ebp)
				movl	$5263430, -5203(%ebp)
				movl	$0, -5199(%ebp)
				movb	$4, -4948(%ebp)
				movl	$810569798, -4947(%ebp)
				movl	$0, -4943(%ebp)
				movb	$4, -4692(%ebp)
				movl	$827347014, -4691(%ebp)
				movl	$0, -4687(%ebp)
				movb	$4, -4436(%ebp)
				movl	$844124230, -4435(%ebp)
				movl	$0, -4431(%ebp)
				movb	$7, -4180(%ebp)
				movl	$1414090313, -4179(%ebp)
				movl	$5390678, -4175(%ebp)
				movb	$6, -3924(%ebp)
				movl	$1162036562, -3923(%ebp)
				movl	$20568, -3919(%ebp)
				movb	$4, -3668(%ebp)
				movl	$1347242309, -3667(%ebp)
				movl	$0, -3663(%ebp)
				movb	$6, -3412(%ebp)
				movl	$1313162313, -3411(%ebp)
				movl	$21332, -3407(%ebp)
				movb	$5, -3156(%ebp)
				movl	$1196310866, -3155(%ebp)
				movl	$69, -3151(%ebp)
				movb	$7, -2900(%ebp)
				movl	$1313817426, -2899(%ebp)
				movl	$4346963, -2895(%ebp)
				movb	$4, -2644(%ebp)
				movl	$1347567958, -2643(%ebp)
				movl	$0, -2639(%ebp)
				movb	$7, -2388(%ebp)
				movl	$1414090313, -2387(%ebp)
				movl	$4408644, -2383(%ebp)
				movb	$6, -1364(%ebp)
				movl	$1145262917, -1363(%ebp)
				movl	$17221, -1359(%ebp)
				movb	$7, -1108(%ebp)
				movl	$1346589509, -1107(%ebp)
				movl	$4411218, -1103(%ebp)
				movb	$8, -852(%ebp)
				movl	$1094931269, -851(%ebp)
				movl	$1497453138, -847(%ebp)
				movb	$6, -596(%ebp)
				movl	$1380143941, -595(%ebp)
				movl	$17221, -591(%ebp)
				leal	-151144(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				addl	$78904, %eax
				movl	%eax, -151144(%ebp)
				movl	$256, -151140(%ebp)
  221 "Z","VDEC","OWNVDEC","EXTVSPEC","ADEC","OWNADEC",
  222 "EXTASPEC","PROC","PROCSPEC","FORMDEC","SWDEC","LDEC",
  223 "FORMSPEC","","","","","",
  224 "OPTION","COMMA","T","COLON","COMMENT","LB",
  225 "ALIAS","RB","SUB","ARRAYD","STYPE","ARRAY",
  226 "NAME","PROCD","FNMAP","SWITCH","OWN","EXTERNAL",
  227 "STRING","RECORD","FORMAT","SPEC","MCODE","LABEL",
  228 "OP1","OP2","OP3","SIGN","UOP","MOD",
  229 "DOT","COMP","ACOMP","EQ","EQEQ","JAM",
  230 "JUMP","RESOP","AND","OR","NOT","WHILE",
  231 "UNTIL","FOR","CWORD","EXIT","ON","SIGNAL",
  232 "THEN","START","ELSE","FINISH","FELSE","CYCLE",
  233 "REPEAT","PROGRAM","BEGIN","END","ENDPROG","ENDPERM",
  234 "FRESULT","MRESULT","BACK","MONITOR","STOP","LIST",
  235 "","CONTROL","INCLUDE","MASS","RTYPE","ADDOP",
  236 "IDENT","V","N","CONST","FM","",
  237 "R","F","M","P","RP","FP",
  238 "MP","PP","L","S","A","AN",
  239 "NA","NAN","","","","",
  240 "","","","","","",
  241 "%MSTART","%CLEAR","%PRED","","%DUBIOUS","%DUP",
  242 "%PIN","%POUT","%EDUP","","PIDENT","CIDENT",
  243 "OIDENT","FNAME","SWID","DOTL","DOTR","ASEP",
  244 "CSEP","OSEP","PSEP","ARB","BPLRB","ORB",
  245 "PRB","CRB","RCRB","RECRB","RECLB","LAB",
  246 "MLAB","SLAB","XNAME","OWNT","DBSEP","PCONST",
  247 "CMOD","CSIGN","CUOP","COP1","COP2","COP3",
  248 "INDEF","XELSE","CRESOP","NLAB","RUNTIL","ACONST",
  249 "ORRB","FMANY","OSTRING","FMLB","FMRB","FMOR",
  250 "RANGERB","FSID","","","","",
  251 "","%DUMMY","%DECL","%TYPE","%ZERO","%APPLY",
  252 "%PROT","%SETPROT","%PTYPE","%GAPP","%LOCAL","%GUARD",
  253 "%MCODE","%CDUMMY","%SETTYPE","%OPER","%PARAM","%BLOCK",
  254 "%OTHER","%COMPILE","APP","BASEAPP","APP2","APP3",
  255 "APP4","APP5","APP6","ADEFN","NPARM","SWDEF",
  256 "SWIDS","CIEXP","RCONST","SCONST","ARRAYP","XIMP",
  257 "IMP","COND","SCOND","EXP1","EXP2","SEXP",
  258 "IEXP","IEXP1","IEXP2","ISEXP","SEQ","FDEF",
  259 "EXP","NARRAYP","STRUCT","RESEXP","BPL","CONSTB",
  260 "FITEM","MOREA","CLIST","FPP","FPP0","FPP1",
  261 "FPP2","INITVAR","RECEXP","EIMP","IDENTS","RANGE",
  262 "RCONSTB","VARP","INITDEC","","","",
  263 "ESCDEC","ESCPROC","ESCARRAY","ESCREC"
  264 %constinteger gmax1=718
  265 %owninteger gmax=718
  266 %constinteger imp phrase =24
  267
  268 %ownshortintegerarray phrase(200:255) = %C
				leal	-151076(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				movl	%esi, %ebx
				leal	PHRASE.6172@GOTOFF(%ebx), %eax
				movl	%eax, -151076(%ebp)
				movl	$2, -151072(%ebp)
  269    0, 563, 564, 566, 568, 570, 572, 561,
  270  613, 202, 199, 601, 477, 479, 623, 297,
  271  205, 307, 317, 432, 425, 436, 443, 457,
  272  452, 460, 466, 481, 401, 626, 628, 602,
  273  520, 510, 485, 501, 574, 526, 527, 542,
  274  549, 577, 396, 286, 196, 635, 515, 620,
  275  166,   0,   0,   0, 639, 692, 700, 708
  276
  277 %constbyteintegerarray atomic(130:179) = %c
				movb	$90, -65942(%ebp)
				movb	$90, -65941(%ebp)
				movb	$90, -65940(%ebp)
				movb	$90, -65939(%ebp)
				movb	$90, -65938(%ebp)
				movb	$48, -65937(%ebp)
				movb	$48, -65936(%ebp)
				movb	$19, -65935(%ebp)
				movb	$19, -65934(%ebp)
				movb	$19, -65933(%ebp)
				movb	$19, -65932(%ebp)
				movb	$25, -65931(%ebp)
				movb	$25, -65930(%ebp)
				movb	$25, -65929(%ebp)
				movb	$25, -65928(%ebp)
				movb	$25, -65927(%ebp)
				movb	$25, -65926(%ebp)
				movb	$25, -65925(%ebp)
				movb	$23, -65924(%ebp)
				movb	$104, -65923(%ebp)
				movb	$104, -65922(%ebp)
				movb	$105, -65921(%ebp)
				movb	$30, -65920(%ebp)
				movb	$20, -65919(%ebp)
				movb	$21, -65918(%ebp)
				movb	$93, -65917(%ebp)
				movb	$47, -65916(%ebp)
				movb	$45, -65915(%ebp)
				movb	$46, -65914(%ebp)
				movb	$42, -65913(%ebp)
				movb	$43, -65912(%ebp)
				movb	$44, -65911(%ebp)
				movb	$40, -65910(%ebp)
				movb	$68, -65909(%ebp)
				movb	$55, -65908(%ebp)
				movb	$104, -65907(%ebp)
				movb	$60, -65906(%ebp)
				movb	$93, -65905(%ebp)
				movb	$25, -65904(%ebp)
				movb	$40, -65903(%ebp)
				movb	$93, -65902(%ebp)
				movb	$23, -65901(%ebp)
				movb	$25, -65900(%ebp)
				movb	$57, -65899(%ebp)
				movb	$25, -65898(%ebp)
				movb	$90, -65897(%ebp)
				movb	$-80, -65896(%ebp)
				movb	$-79, -65895(%ebp)
				movb	$-78, -65894(%ebp)
				movb	$-77, -65893(%ebp)
				leal	-151008(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				addl	$78838, %eax
				movl	%eax, -151008(%ebp)
				movl	$1, -151004(%ebp)
  278   90,  90,  90,  90,  90,  48,  48,  19,
  279   19,  19,  19,  25,  25,  25,  25,  25,
  280   25,  25,  23, 104, 104, 105,  30,  20,
  281   21,  93,  47,  45,  46,  42,  43,  44,
  282   40,  68,  55, 104,  60,  93,  25,  40,
  283   93,  23,  25,  57,  25,  90, 176, 177,
  284  178, 179
  285
  286 !  FLAG<1> 0<1> SS<2> 0<3> T<1> LINK<8>
  287 %constshortintegerarray initial(0:119) = %c
				leal	-71424(%ebp), %eax
				movl	%esi, %ebx
				leal	.LC0@GOTOFF(%ebx), %edx
				movl	$60, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-150940(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				addl	$73356, %eax
				movl	%eax, -150940(%ebp)
				movl	$2, -150936(%ebp)
  288       23,       0,       0,       0,       0,       0,       0,       0,
  289        0,       0,       0,       0,       0,       0,       0,       0,
  290        0,       0,      22,       0,       0,       0,       0,       0,
  291        0,       0,       0,       0,       0,       0,       0,       0,
  292        0,       0,       0,       0,       0,       0,       0,       0,
  293       20,       0,       0,       0,       0,       0,       0,       0,
  294        0,       0,       0,       0,       0,       0,  -32552,       0,
  295        0,       0,       0,      13,       0,      14,       4,  -32558,
  296       16,  -32551,       0,       0,       5,       6,       3,      12,
  297       15,       8,       7,       9,      10,      11,  -32559,  -32555,
  298   -32560,  -32553,  -32554,      18,       0,      17,      21,      19,
  299        0,       0,       0,  -32563,  -32561,       0,       0,       0,
  300   -32562,       0,       0,       0,       0,       0,       0,       0,
  301        1,       2,       0,  -32557,       0,  -32556,       0,       0,
  302        0,       0,       0,       0,       0,       0,       0,       0
  303
  304 !  MORE<1> 0<1> ORDER<2> TYPE<4> CLASS<8>
  305 %ownshortintegerarray gram(0:max grammar) = %c
				leal	-150872(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	GRAM.6178@GOTOFF(%ebx), %eax
				movl	%eax, -150872(%ebp)
				movl	$2, -150868(%ebp)
  306        0,  -28523,  -28521,  -28602,  -32706,  -28509,  -28603,  -24502,
  307   -24503,  -20405,  -20404,  -28595,  -32697,  -32709,  -16323,  -28600,
  308   -32704,  -28587,  -28589,  -32681,  -16344,  -28586,  -16366,  -32586,
  309      216,  -12287,  -16380,   -8185,   -8184,  -12285,  -12286,  -12283,
  310   -12282,  -12279,  -12276,  -16373,   20490,  -32706,  -32701,     216,
  311   -16364,  -28610,  -28613,  -28612,   16445,     217,  -16364,      62,
  312   -32701,   16450,  -16364,    5346,  -16364,     166,  -16344,    4332,
  313      130,  -16360,  -16361,     126,     217,  -32701,     216,  -16364,
  314    16450,  -32700,   16404,  -32701,  -32706,     216,   16405,   16407,
  315   -16222,    8414,     130,     217,  -32697,   16450,    1250,    4307,
  316     4318,     192,      93,     170,      90,     207,  -16365,   16404,
  317       90,  -16360,  -16365,   16404,     241,  -16365,   16404,     132,
  318      132,  -16360,    4329,  -16365,   16404,     133,     175,      90,
  319   -16365,   16404,     209,  -16365,   16404,    4313,     217,   16451,
  320     4263,   16384,   16384,     120,     216,  -32700,   16404,  -32706,
  321    16404,     243,   16409,     454,  -32685,   16404,     454,     248,
  322   -16365,   16404,    4263,     194,  -16360,    4329,  -32717,   16404,
  323     4263,   16407,     454,     237,     127,     215,     454,    4263,
  324    16384,  -16364,    1502,  -32629,  -16361,     153,  -32606,     222,
  325      143,  -32629,     153,     454,     126,   16409,     454,   16384,
  326      234,  -16365,  -32595,     147,  -32678,     234,     193,  -32677,
  327   -32676,  -32661,     109,  -32717,      53,      52,      52,      52,
  328      194,     194,     194,  -28581,    4188,     194,  -28566,    4203,
  329      194,  -28564,    4205,    4580,   16429,     183,     183,     186,
  330      186,  -28583,       0,    9437,      90,  -16365,       0,     134,
  331   -16365,       0,     210,    4329,     199,  -32677,  -32672,  -32676,
  332   -32688,  -32690,  -32705,  -32661,  -32659,  -32689,  -32686,  -32687,
  333   -16330,      65,  -32716,     186,  -28583,  -32717,  -32715,  -32713,
  334       52,  -32664,    4201,     186,  -32717,  -32715,      55,  -16328,
  335        0,     197,     197,      52,      52,     197,  -28581,  -28580,
  336      186,  -28581,    4188,    4318,     194,  -28581,    4188,    9437,
  337      194,     194,     454,   16407,     216,     194,  -28566,  -28565,
  338      186,  -28566,    4203,     194,  -28564,  -28563,     186,  -28564,
  339     4205,     183,     183,     186,     183,  -16365,       0,     183,
  340     4580,   16429,    5095,    9444,    5348,     186,  -28583,  -16328,
  341        0,   16409,  -16365,       0,    9437,    5348,     217,  -32701,
  342    16450,  -32701,     216,  -32700,       0,  -32701,  -32706,     216,
  343      243,     217,  -16318,       0,  -32552,       0,  -32700,       0,
  344   -32706,       0,     215,  -32550,     228,  -28616,  -28615,       0,
  345     4096,     218,     218,  -28616,       0,  -32677,  -32676,  -16361,
  346   -32710,  -32669,  -32662,  -32661,  -32660,  -32659,     740,  -32039,
  347      740,  -32719,    4096,     194,  -32719,  -32718,  -32604,  -32726,
  348   -32725,  -32724,  -32720,    4096,     710,    6116,  -32719,       0,
  349      710,    6116,  -28581,    4188,     218,     122,      50,   16409,
  350   -32726,  -32725,  -32724,  -32719,    4096,     710,     454,     195,
  351      195,     195,     454,  -28581,    4188,     194,  -28566,  -28565,
  352   -28564,    4205,     195,     195,     195,     710,    4836,    5095,
  353     4829,  -32726,  -32725,  -32724,  -32719,    4096,    4827,    4828,
  354      454,  -32720,  -32719,    4096,    4829,    4827,    4828,     194,
  355   -32719,       0,     710,    4836,  -16291,  -32677,      92,     184,
  356      121,  -28581,  -28580,  -32722,  -32723,    4317,  -32726,  -32725,
  357   -32724,       0,     183,  -32726,  -32725,  -32724,  -32720,       0,
  358     4316,     195,     195,     195,     454,  -28581,    4188,    4315,
  359      183,    4317,  -32726,  -32725,       0,     195,     195,    4315,
  360     4317,  -32726,       0,     195,  -32677,  -32676,  -16361,   16431,
  361      228,     228,      47,  -32610,  -32611,    5345,  -32609,  -32608,
  362   -32607,       0,    4320,    4319,    5345,  -32609,  -32608,       0,
  363     4319,    5345,  -32609,       0,  -32613,  -16361,   16431,     222,
  364      222,     156,  -32677,      92,     183,     186,    1222,   16435,
  365      228,   16403,    4324,     138,    8420,  -32723,    4189,      93,
  366      454,     148,  -32674,   16546,   16409,  -32597,     182,  -16383,
  367    16388,     234,  -16365,  -32595,     172,  -32678,     234,      90,
  368      244,     246,  -16365,       0,     235,  -32678,     234,  -16365,
  369      246,  -16365,       0,  -32678,     234,      90,   16407,     222,
  370    16405,     222,     145,   16407,     222,   16405,     222,     146,
  371    16407,    1252,     154,    5348,  -16365,     142,     126,     182,
  372   -16383,   16391,      90,  -16365,     127,  -32678,     238,      90,
  373      125,     239,  -16365,    8319,    8430,     128,     126,  -16361,
  374      127,     190,     240,     189,   16409,     182,  -16383,   16391,
  375       90,  -16365,       0,  -32678,     240,      90,   16623,  -16365,
  376        0,     244,     232,    1252,    1252,     137,    1252,     137,
  377     1252,     137,    1252,     137,    1252,     137,     222,  -16365,
  378        0,     131,     194,  -16360,  -16333,  -16332,     124,     181,
  379   -16292,  -16277,   16493,  -31802,    5342,  -28581,    4188,    4263,
  380      181,     186,     454,   16475,     183,  -28583,     199,    5598,
  381     9438,     222,  -32677,  -32676,   16407,     186,     228,     135,
  382    16409,  -32632,       0,  -32677,      92,  -32677,  -32676,  -32662,
  383   -32661,  -32660,  -32659,     165,  -32677,      92,     188,  -32662,
  384      107,     188,  -32660,     109,  -32732,      37,  -16344,    4318,
  385      148,  -32674,   16424,     222,   16405,     222,     174,  -28644,
  386   -32734,  -32680,  -28641,  -32733,  -32730,  -32735,  -32727,  -32738,
  387     4326,  -32738,  -32739,  -32741,  -32736,     199,  -28644,  -32680,
  388   -28641,    4326,  -32739,  -32741,     199,  -32738,  -32739,  -32741,
  389   -32736,  -32729,     199,  -32616,     199,  -32739,  -32741,  -32729,
  390      199,  -32616,  -32729,     199,  -28644,  -32680,    4326,  -32738,
  391   -32739,  -32741,     199,     245,    4318,     245,   16409,     152,
  392     4318,   16409,     152,     245,  -32672,  -32671,  -32670,      99,
  393    16407,     200,     144,     185,  -32677,      92,   16407,  -32582,
  394      200,     200,     187,     141,  -32677,      92,   16410,     191,
  395   -32677,  -32676,  -32662,  -32661,  -32660,     109,     198,
  396 0(max grammar-718)
  397
  398 %ownshortintegerarray glink(0:max grammar) = %c
				leal	-150804(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	GLINK.6180@GOTOFF(%ebx), %eax
				movl	%eax, -150804(%ebp)
				movl	$2, -150800(%ebp)
  399       -1,      70,      71,      37,      45,      46,      66,      66,
  400       74,      66,       0,      66,      50,      75,      78,      52,
  401       54,      79,      66,      80,      81,      82,      83,      25,
  402       40,      84,      85,      56,      56,      88,      92,      95,
  403       96,     101,     102,     103,     106,      45,      66,      66,
  404        0,     109,     109,     110,      51,      48,       0,      60,
  405       66,      61,       0,      66,       0,     110,     111,     111,
  406       57,     112,     113,     114,      63,      66,      65,     115,
  407      116,      67,       0,      66,     121,      66,       0,      72,
  408      122,     122,      66,      76,      66,      39,      76,      66,
  409       66,       0,     123,     126,     127,      86,      85,       0,
  410       89,     130,      88,       0,      93,      92,       0,     131,
  411       97,     136,      99,      96,       0,     137,      66,     104,
  412      103,       0,     107,     106,       0,      66,      66,      66,
  413      138,     139,     140,       0,     117,     119,     115,     141,
  414      115,      66,      70,     124,      66,       0,      66,     128,
  415       84,       0,     142,     132,     143,     134,     144,       0,
  416      155,     156,      58,     157,      66,     118,      90,     158,
  417      145,     144,     147,     145,     150,       0,     152,     152,
  418      153,     145,       0,      98,     159,      66,     133,     160,
  419      161,     164,     160,     140,     161,     161,     167,     171,
  420      173,     174,     175,     176,     177,     178,     181,     184,
  421      187,     188,     179,     189,     189,     182,     190,     190,
  422      185,     190,     190,       0,     187,     191,     192,     193,
  423        0,     195,       0,       0,     197,     196,       0,     200,
  424      199,       0,     203,     204,       0,     227,     231,     218,
  425      233,     234,       0,     235,     236,     237,       0,     231,
  426      225,     243,     244,     220,     247,     248,     249,     250,
  427      244,       0,     251,     228,     248,     249,     250,     252,
  428        0,       0,     187,     253,     259,     238,     268,     268,
  429      241,     190,     190,     269,     245,     271,     271,     228,
  430      272,     273,     274,     275,       0,     254,     265,     265,
  431      257,     266,     266,     260,     265,     265,     263,     266,
  432      266,     231,     267,     231,       0,     276,       0,     277,
  433      231,     272,     231,     281,     282,     278,     284,     252,
  434        0,       0,     285,       0,     231,       0,     287,       0,
  435      289,       0,     291,     293,       0,       0,     296,       0,
  436        0,     298,     300,       0,     302,       0,     304,       0,
  437      306,       0,       0,     309,     312,     313,     314,       0,
  438        0,     315,     310,     313,       0,     331,     331,     327,
  439      348,     349,     350,     350,     350,     350,     329,     281,
  440      351,     357,       0,     332,     340,     346,     358,     359,
  441      360,     361,     362,       0,     341,     342,     344,       0,
  442      345,       0,     268,     268,       0,       0,     365,     352,
  443      370,     371,     372,     373,       0,     374,     375,     376,
  444      382,     383,     363,     384,     384,     366,     268,     268,
  445      268,     268,     388,     389,     390,     391,     392,       0,
  446      377,     359,     360,     361,     340,       0,     378,     379,
  447      385,     362,     340,       0,     352,     353,     354,     374,
  448      394,       0,     395,       0,     399,     268,     268,     400,
  449        0,     410,     410,     405,     416,     406,     417,     418,
  450      419,       0,     411,     417,     418,     419,     420,       0,
  451      408,     405,     423,     416,     421,     424,     424,     407,
  452      414,     426,     429,     430,       0,     425,     431,     427,
  453      433,     435,       0,     432,     268,     268,     440,     441,
  454      281,     442,       0,     445,     450,     446,     445,     451,
  455      450,       0,     448,     447,     453,     452,     456,       0,
  456      454,     458,     457,       0,     268,     463,     464,     281,
  457      465,       0,     468,     468,     469,     470,     471,     472,
  458      473,     474,     475,     476,       0,     478,     268,     480,
  459        0,     482,     484,     484,     204,     489,     487,     495,
  460      496,     490,     493,     489,       0,     490,     490,       0,
  461      497,     498,     500,       0,       0,     503,     505,     509,
  462      498,     507,       0,     505,     505,     503,     511,     512,
  463      513,     514,       0,     516,     517,     518,     519,       0,
  464      521,     522,     523,     524,     521,       0,     527,     528,
  465      530,     535,     531,     533,       0,     531,       0,     536,
  466      537,     538,     540,     541,     541,       0,     543,     545,
  467        0,     546,     547,     548,     532,     550,     552,     557,
  468      553,     555,       0,     553,       0,     558,     559,     556,
  469        0,     562,     204,       0,     565,     563,     567,     564,
  470      569,     566,     571,     568,     573,     570,     575,     574,
  471        0,     578,     579,     591,     592,     583,     204,     584,
  472      587,     587,     587,     589,     204,     593,     593,     594,
  473      595,     596,     580,     599,     597,     600,       0,     204,
  474      204,     204,     605,     605,     606,     607,     608,     604,
  475      609,     611,       0,     192,     192,     192,     192,     192,
  476      192,     192,     192,       0,     622,     622,     191,     625,
  477      625,       0,     625,     625,     630,     632,     281,     281,
  478      633,     281,     281,     636,     637,     638,       0,     649,
  479      676,     683,     665,     654,     204,     204,     204,     204,
  480      649,     658,     667,     684,     665,       0,     661,     685,
  481      665,     661,     667,     684,       0,     669,     673,     688,
  482      665,     204,       0,     204,       0,     673,     688,     204,
  483        0,     665,     204,       0,     679,     691,     679,     658,
  484      667,     684,       0,     649,     686,     661,     687,     204,
  485      689,     690,     665,     679,     696,     696,     696,     696,
  486      697,     698,     699,       0,     702,     702,     703,     705,
  487      706,     707,     707,     699,     710,     710,     711,     712,
  488      718,     718,     718,     718,     718,     718,       0,
  489 0(max grammar-718)
  490
  491 %constshortintegerarray kdict(32:596) = %c
				leal	-67088(%ebp), %edx
				leal	.LC1@GOTOFF(%ebx), %eax
				movl	$282, %ecx
				movl	%edx, %edi
				movl	%eax, %esi
				rep movsl
				movl	%esi, %eax
				movl	%edi, %edx
				movzwl	(%eax), %ecx
				movw	%cx, (%edx)
				leal	-150736(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-144780(%ebp), %eax
				addl	$77692, %eax
				movl	%eax, -150736(%ebp)
				movl	$2, -150732(%ebp)
		.LBB462:
		.LBB463:
		.LBB464:
  492        0,     511,     131,     531,     131,     551,     559,     131,
  493      567,     575,     583,     603,     623,     631,     663,     671,
  494      129,     129,     129,     129,     129,     129,     129,     129,
  495      129,     129,     691,     698,     707,     751,     795,     131,
  496      131,     824,     900,     960,    1076,    1120,    1280,     128,
  497      128,    1392,     128,     128,    1460,    1556,    1592,    1660,
  498     1748,     128,    1828,    2000,    2196,    2228,     128,    2268,
  499      128,     128,     128,    2287,    2295,    2327,    2335,    2355,
  500      131,     131,     131,     131,     131,     131,     131,     131,
  501      131,     131,     131,     131,     131,     131,     131,     131,
  502      131,     131,     131,     131,     131,     131,     131,     131,
  503      131,     131,     131,     131,    2363,     131,    2335,  -32351,
  504    16428,      25,   16428,      29,  -32349,   16433,       1,   16434,
  505        1,  -16127,       0,   16427,      21,   16407,       0,   16409,
  506        0,  -32323,  -10840,      40,   16471,       0,  -32341,  -10580,
  507       32,   16473,     117,   16384,      19,  -31955,  -32322,  -10580,
  508       36,   -9290,       0,   16473,     113,   16432,      13,  -32337,
  509    16427,      46,   16427,      17,   16405,       0,   16404,       0,
  510   -31556,  -31939,  -32322,   -9551,       2,   16433,       1,   16433,
  511        5,   16426,       5,  -31606,  -32323,   -9807,       0,  -32374,
  512    -9678,       0,   16436,       0,   16435,       0,  -31939,  -32322,
  513    16433,       4,   16426,       9,   16433,       3,  -30772,  -31666,
  514    10578,   11457,  -32344,   16413,       2,   16411,       2,      68,
  515   -32374,   16440,       0,   16440,       0,    8393,      83,   16408,
  516        0,  -31291,   10841,      69,  -32311,   16412,      18,   10830,
  517     9157,   10565,   16412,      18,    9415,      78,   16458,       0,
  518   -32049,    8665,    8908,   16455,       0,  -30131,      78,  -31277,
  519       84,  -32055,   10194,      76,   16469,       0,   10958,      69,
  520    16447,      32,      84,  -32319,   16418,       2,   10830,   16418,
  521        2,    8909,   10830,   16406,       0,  -31927,   10073,    9921,
  522     8649,   16419,       5,    9153,   10190,    8915,   16469,       1,
  523   -27956,  -31282,      88,  -31927,    8916,   10066,    9793,   16419,
  524        3,      84,   16447,       4,      68,  -32305,   16459,       2,
  525       70,  -30650,  -31284,      80,  -31931,   10194,   10567,    9921,
  526    16460,       1,    9938,   16461,       0,   10697,      84,   16467,
  527        3,    9801,      69,   16460,       0,    8915,   16452,       0,
  528   -29631,  -30903,  -31282,  -31793,   10069,   10819,   10185,      78,
  529    16416,       9,      82,   16445,       0,   16416,       9,    9422,
  530     9299,  -32315,   16453,       0,   10700,      69,   16454,       0,
  531    10700,      69,   16464,    1210,  -30778,      78,  -31549,    8916,
  532     8903,      82,  -32344,   16412,      17,   16472,      17,   10956,
  533     8900,   16470,       0,   16446,      44,  -30143,  -30647,   10063,
  534       71,  -31671,  -32302,   16412,      20,    8389,      76,   16412,
  535       36,   10830,    9157,   10565,   16412,      20,   10835,   16467,
  536        1,    8898,      76,   16425,       6,  -31935,   10063,   10825,
  537    10575,   16465,     109,      80,   16416,      10,  -32191,   10831,
  538    16442,       0,    8909,  -32314,   16414,       1,  -31794,   10069,
  539    10819,   10185,      78,   16416,      10,   16416,      10,  -30770,
  540   -31408,  -32174,   10071,   16418,       1,  -32374,   16441,       2,
  541    16441,       2,    9428,   10063,   16402,       0,  -32315,   16448,
  542        0,    8918,   10830,   16448,       0,  -30523,      82,  -31419,
  543   -31927,    9167,    8402,      77,   16457,       0,      77,   16419,
  544        6,    9412,    8387,    8916,   16415,     123,    9938,   16419,
  545        7,  -31931,   10959,    9428,    8910,   16415,     104,  -28351,
  546   -30397,  -31024,  -32045,   10964,   10066,   16464,    1319,    9813,
  547     7892,  -32323,   16462,    1384,   16463,    1241,    8389,      84,
  548    16456,       0,   10575,      68,  -32314,   16421,      64,   10575,
  549     8397,      84,  -32301,   16422,       9,    8912,      67,   16422,
  550       12,      76,   16412,      33,  -27704,  -28983,  -29488,  -31276,
  551   -31913,   10713,    8916,      77,   16419,       4,   10825,    9283,
  552    16417,      12,  -31423,  -31921,    9426,    9166,      40,   16420,
  553       48,      80,   16466,     115,   10834,   16451,       0,    8645,
  554    16423,       0,   10055,    9793,  -32315,   16449,       0,    8918,
  555    10830,   16449,       0,   10575,      84,  -32311,   16412,      19,
  556    10830,    9157,   10565,   16412,      19,  -32056,   10962,      69,
  557    16464,    1354,   10053,   16450,       0,      78,  -32052,    9428,
  558       76,   16444,     182,   10693,      83,   16446,      46,    9416,
  559     8908,   16443,     180,   16407,       0,  -31939,  -32292,  -10454,
  560       51,   16426,      13,   16433,       1,   16409,       0,  -32290,
  561   -10454,      51,   16426,      13,   16410,       0,   16431,      14,
  562   -32323,   16430,      51,   16433,       1
  563 !!   %list
  564 !!%endoffile
  565 !***  end  of generated tables ***
  566
  567 %routine print ident(%integer p, mode)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$316, %esp
				call	__x86.get_pc_thunk.dx
				addl	$_GLOBAL_OFFSET_TABLE_, %edx
				movl	%ecx, %ebx
				movl	%ecx, -316(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
  568    %INTEGER j, ad
  569    p = tag(p)_text
				movl	8(%ebp), %ecx
				movl	%ecx, %eax
				addl	%eax, %eax
				addl	%ecx, %eax
				sall	$3, %eax
				addl	%ebx, %eax
				addl	$44548, %eax
				movl	(%eax), %eax
				movl	%eax, 8(%ebp)
  570    %IF p = 0 %START
				cmpl	$0, 8(%ebp)
				jne	.L29
				nop
		.L13:
  571       %IF mode = 0 %THEN printsymbol('?') %C
				cmpl	$0, 12(%ebp)
				jne	.L30
				movb	$63, -305(%ebp)
		.LBB449:
		.LBB450:
				movsbl	-305(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%edx, %ebx
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE450:
		.LBE449:
				nop
		.L16:
				nop
		.L15:
				subl	$12, %esp
				pushl	$63
				movl	%edx, %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L11
		.L29:
  572                    %ELSE put('?')
  573       %RETURN
				jmp	.L11
		.L30:
  574    %FINISH
  575    ad = addr(dict(p+1))
				movl	8(%ebp), %eax
				addl	$2132, %eax
				sall	$2, %eax
				addl	%ebx, %eax
				addl	$4, %eax
				movl	%eax, -300(%ebp)
		.LBB451:
		.LBB452:
				movl	-300(%ebp), %eax
		.LBE452:
		.LBE451:
				movl	%eax, -304(%ebp)
  576    %IF mode = 0 %THEN printstring(string(ad)) %ELSE %START
				cmpl	$0, 12(%ebp)
				jne	.L31
		.LBB453:
				movl	-304(%ebp), %eax
				movl	%eax, -296(%ebp)
		.LBB454:
		.LBB455:
				movl	-296(%ebp), %ecx
		.LBE455:
		.LBE454:
				leal	-284(%ebp), %eax
				movl	%ecx, %ebx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%ebx, %esi
				rep movsl
				leal	-284(%ebp), %ecx
				leal	-284(%ebp), %eax
				movl	%ecx, %ebx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%ebx, %esi
				rep movsl
		.LBE453:
		.LBB456:
		.LBB457:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %ebx
				leal	-284(%ebp), %eax
				movl	$64, %ecx
				movl	%ebx, %edi
				movl	%eax, %esi
				rep movsl
				movl	%edx, %ebx
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE457:
		.LBE456:
				jmp	.L22
		.L31:
				nop
		.L20:
  577       putblock(byteinteger(ad),byteinteger(ad+1))
				movl	-304(%ebp), %eax
				addl	$1, %eax
				movl	%eax, -288(%ebp)
		.LBB458:
		.LBB459:
				movl	-288(%ebp), %ecx
		.LBE459:
		.LBE458:
				movl	-304(%ebp), %eax
				movl	%eax, -292(%ebp)
		.LBB460:
		.LBB461:
				movl	-292(%ebp), %eax
		.LBE461:
		.LBE460:
				movzbl	(%eax), %eax
				movzbl	%al, %eax
				subl	$8, %esp
				pushl	%ecx
				pushl	%eax
				movl	%edx, %ebx
				call	PUTBLOCK@PLT
				addl	$16, %esp
		.L22:
  578    %finish
  579 %END
				nop
		.L11:
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L25
				call	__stack_chk_fail_local
		.L25:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE190:
				.section	.rodata
				.align 32
		.LC0:
				.align 32
		.LC1:
				.align 32
		.LC2:
				.byte	14
				.string	" *************"
				.zero	240
				.align 32
		.LC3:
				.byte	27
				.string	"ENTERED PASS1  object tank="
				.zero	227
				.align 32
		.LC4:
				.byte	16
				.string	"[3]%ON 9 %START:"
				.zero	238
				.align 32
		.LC5:
				.byte	4
				.string	" at "
				.zero	250
				.align 32
		.LC6:
				.byte	86
				.string	"\n      Computer Science VAX-11 IMP77 Compiler.  Version 8.02\n\n            Compiled on
				.zero	168
				.align 32
		.LC7:
				.byte	15
				.string	"select input(1)"
				.zero	239
				.align 32
		.LC8:
				.byte	16
				.string	"   Source file: "
				.zero	238
				.align 32
		.LC9:
				.byte	1
				.string	")"
				.zero	253
				.align 32
		.LC10:
				.byte	19
				.string	"select input(prims="
				.zero	235
				.align 32
		.LC11:
				.byte	31
				.string	"select output tank(object tank="
				.zero	223
				.globl	PASS1
		PASS1:
		.LFB189:
?J unused
  580 %ROUTINE abandon(%INTEGER n)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$1516, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, -1516(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
  581    %SWITCH reason(0:9)
  582    %INTEGER stream
  583    stream = listing
				movl	$2, -1504(%ebp)
		.L60:
  584    %CYCLE
  585       newline %IF sym # nl
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				je	.L80
		.LBB514:
		.LBB515:
				call	_imp_newline@PLT
				jmp	.L62
		.L80:
		.LBE515:
		.LBE514:
				nop
		.L62:
				movb	$42, -1507(%ebp)
		.LBB516:
		.LBB517:
				movsbl	-1507(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE517:
		.LBE516:
  586       printsymbol('*'); write(lines,4);  space
				movl	LINES.6088@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$4
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB518:
		.LBB519:
				call	_imp_space@PLT
				movb	$91, -1506(%ebp)
		.LBE519:
		.LBE518:
		.LBB520:
		.LBB521:
				movsbl	-1506(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE521:
		.LBE520:
  587 printsymbol('[')
  588 write(n,0)
				subl	$8, %esp
				pushl	$0
				pushl	8(%ebp)
				call	_imp_writeint@PLT
				addl	$16, %esp
				movb	$93, -1505(%ebp)
		.LBB522:
		.LBB523:
				movsbl	-1505(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE523:
		.LBE522:
  589 printsymbol(']')
  590       ->reason(n)
				movl	$590, -1500(%ebp)
				leal	.LC92@GOTOFF(%ebx), %eax
				movl	%eax, -1496(%ebp)
				movl	8(%ebp), %eax
				movl	%eax, -1492(%ebp)
				nop
		.L63:
  591 reason(*):debug("* Switch label not set: reason(".itos(n,0).")"); %stop
  592 reason(0):printstring("compiler error!");          ->more
  593 reason(1):printstring("switch vector too large");  ->more
  594 reason(2):printstring("too many names");           ->more
  595 reason(3):printstring("program too complex");      ->more
  596 reason(4):printstring("feature not implemented");  ->more
  597 {GT: reason(5):printstring(error message.sysmess(event_extra)) %and -> more %if event_sub # 1
  598
  599 reason(5):
  600           %if event_sub # 1 %start
  601             printstring("error message=""".error message.""" event_event=".itos(event_event,0)."  event_sub=".itos(event_sub, 0))
  602             {printstring("sysmess(event_extra)=""".sysmess(event_extra)."""")
  603             -> more
  604           %finish
  605
  606           %IF quote # 0 %START
  607             %IF quote < 0 %THEN printsymbol(cquote) %C
  608                           %ELSE printsymbol(squote)
  609           %ELSE
  610              printstring("%endof")
  611              %IF progmode >= 0 %THEN printstring("program") %C
  612                                %ELSE printstring("file")
  613           %FINISH
  614           printstring(" missing?");              ->more
  615 reason(6):printstring("too many faults!");   ->more
  616 reason(7):printstring("string constant too long"); ->more
  617 reason(8):printstring("dictionary full"); -> more
  618 reason(9): printstring("Included file ".include file." does not exist")
  619 more: newline
  620       printstring("***  compilation abandoned ***");  newline
  621       %EXIT %IF stream = report
  622       close output
  623       stream = report
  624       select output(report)
  625    %REPEAT
  626    %monitor %IF diag&4096 # 0
  627    exit(16_1000002c)    {1000002c is SS$_ABORT with the inhibit message bit set - could just use EXIT_FAILURE}
  628 %END
				cmpl	$0, -1492(%ebp)
				js	.L64
				cmpl	$9, -1492(%ebp)
				jle	.L65
		.L64:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L66
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -1520(%ebp)
				jmp	.L67
		.L66:
				movl	$628, -1520(%ebp)
		.L67:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L68
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-976(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L69
		.L68:
		.LBB524:
				leal	-720(%ebp), %eax
				leal	.LC21@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1488(%ebp), %eax
				leal	-720(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE524:
				leal	-976(%ebp), %eax
				leal	-1488(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L69:
				pushl	-1500(%ebp)
				pushl	-1496(%ebp)
				pushl	-1492(%ebp)
				leal	.LC93@GOTOFF(%ebx), %eax
				pushl	%eax
				pushl	-1492(%ebp)
				pushl	$3
				pushl	$6
				pushl	-1520(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-976(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_eventf@PLT
				addl	$288, %esp
		.L65:
				nop
		.L71:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L79
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -1520(%ebp)
				jmp	.L74
		.L79:
				movl	$628, -1520(%ebp)
		.L74:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L75
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-720(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L76
		.L75:
		.LBB525:
				leal	-720(%ebp), %eax
				leal	.LC21@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1232(%ebp), %eax
				leal	-720(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE525:
				leal	-720(%ebp), %eax
				leal	-1232(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L76:
				pushl	-1500(%ebp)
				pushl	-1496(%ebp)
				pushl	-1492(%ebp)
				leal	.LC94@GOTOFF(%ebx), %eax
				pushl	%eax
				pushl	-1492(%ebp)
				pushl	$2
				pushl	$8
				pushl	-1520(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-720(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_eventf@PLT
				addl	$288, %esp
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L78
				call	__stack_chk_fail_local
		.L78:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE191:
		OP.6307:
		.LFB192:
  629
  630 %routine op(%integer code, param)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$20, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, -12(%ebp)
  631    put(code);  putword(param)
				subl	$12, %esp
				pushl	8(%ebp)
				call	PUT@PLT
				addl	$16, %esp
				subl	$12, %esp
				pushl	12(%ebp)
				call	PUTWORD@PLT
				addl	$16, %esp
  632 %end
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE192:
		SETCONST.6310:
		.LFB193:
  633 %routine set const(%integer m)
				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)
  634    %integer v
  635    v = m;  v = -m %if v < 0
				movl	8(%ebp), %eax
				movl	%eax, -12(%ebp)
				cmpl	$0, -12(%ebp)
				jns	.L89
				movl	8(%ebp), %eax
				negl	%eax
				movl	%eax, -12(%ebp)
				jmp	.L85
		.L89:
				nop
		.L85:
  636    put('N');  putlong(v)
				subl	$12, %esp
				pushl	$78
				call	PUT@PLT
				addl	$16, %esp
				subl	$12, %esp
				pushl	-12(%ebp)
				call	PUTLONG@PLT
				addl	$16, %esp
  637    put('U') %if m < 0
				cmpl	$0, 8(%ebp)
				jns	.L90
				subl	$12, %esp
				pushl	$85
				call	PUT@PLT
				addl	$16, %esp
				nop
		.L87:
  638 %end
				jmp	.L87
		.L90:
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE193:
		PRINTSS.6356:
		.LFB196:
  639
  640
  641 %ROUTINE compile block(%INTEGER level, block tag, dmin, tmax, id)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$1676, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	16(%ebp), %edi
				movl	20(%ebp), %esi
				movl	24(%ebp), %edx
				movl	%ecx, -1680(%ebp)
				movl	%ecx, -1676(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -1568(%ebp)
				movl	8(%ebp), %eax
				movl	%eax, -1588(%ebp)
				movl	12(%ebp), %eax
				movl	%eax, -1624(%ebp)
				movl	%edi, -1596(%ebp)
				movl	%esi, -1584(%ebp)
				movl	%edx, -1592(%ebp)
				movl	-1680(%ebp), %esi
				movl	%esi, -1572(%ebp)
  642
  643    %INTEGERFNSPEC gapp
  644    %ROUTINESPEC delete names(%INTEGER quiet)
  645    %ROUTINESPEC analyse
  646    %ROUTINESPEC compile
  647
  648    %INTEGER open; open       = closed;      !zero if can return from proc
				movl	$16384, %eax
				movl	%eax, -1616(%ebp)
  649    %INTEGER dbase; dbase      = dmax;        !dictionary base
				movl	DMAX.6126@GOTOFF(%ebx), %eax
				movl	%eax, -1664(%ebp)
  650    %INTEGER tbase; tbase      = tmax;        !tag base
				movl	-1584(%ebp), %eax
				movl	%eax, -1580(%ebp)
  651    %INTEGER tstart; tstart    = tmax
				movl	-1584(%ebp), %eax
				movl	%eax, -1576(%ebp)
  652    %INTEGER label; label      = 4;           !first internal label
				movl	$4, %eax
				movl	%eax, -1628(%ebp)
  653    %INTEGER last array; last array = 0
				movl	$0, %eax
				movl	%eax, -1636(%ebp)
  654    %INTEGER access; access     = 1;           !non-zero if accessible
				movl	$1, %eax
				movl	%eax, -1612(%ebp)
  655    %INTEGER inhibit; inhibit    = 0;           !non-zero inhibits declaratons
				movl	$0, %eax
				movl	%eax, -1632(%ebp)
  656
  657    {GT:%SHORT}%INTEGERNAME bflags; bflags      == tag(block tag)_flags
				movl	-1624(%ebp), %edx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	$44528, %eax
				addl	%esi, %eax
				addl	$12, %eax
				movl	%eax, -1620(%ebp)
  658    %INTEGER block type;          block type   = bflags>>4&7
				movl	-1620(%ebp), %eax
				movl	(%eax), %eax
				shrl	$4, %eax
				andl	$7, %eax
				movl	%eax, -1604(%ebp)
  659    %INTEGER block form;          block form   = bflags&15
				movl	-1620(%ebp), %eax
				movl	(%eax), %eax
				andl	$15, %eax
				movl	%eax, -1600(%ebp)
  660    %INTEGER block fm;          block fm     = tag(block tag)_format
				movl	-1624(%ebp), %edx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%esi, %eax
				addl	$44536, %eax
				movl	(%eax), %eax
				movl	%eax, -1608(%ebp)
  661    %INTEGER block otype;          block otype  = otype
				movl	OTYPE.6108@GOTOFF(%ebx), %eax
				movl	%eax, -1660(%ebp)
  662    %INTEGERNAME block app;      block app   == tag(block tag)_app
				movl	-1624(%ebp), %edx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	$44528, %eax
				addl	%esi, %eax
				addl	$4, %eax
				movl	%eax, -1656(%ebp)
  663
  664    %INTEGER l, new app
  665
  666 %ROUTINE fault(%INTEGER n)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$2380, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, -2384(%ebp)
				movl	%ecx, -2380(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -2360(%ebp)
  667
  668     ! -5 : -1  - warnings
  669     !  1 : 22  - errors
  670
  671     %SWITCH fm(-5:22)
  672     %INTEGER st
  673
  674     %ROUTINE print ss
				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)
  675        %INTEGER s, p
  676        %RETURN %IF pos = 0
				movl	POS.6145@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L113
				nop
		.L93:
		.LBB526:
		.LBB527:
				call	_imp_space@PLT
		.LBE527:
		.LBE526:
				nop
		.L91:
  677        space
  678        p = 1
				movl	$1, -12(%ebp)
		.L95:
  679        %CYCLE
  680           printsymbol(marker) %IF p = pos1
				movl	POS1.6143@GOTOFF(%ebx), %eax
				cmpl	%eax, -12(%ebp)
				jne	.L114
				movb	$94, -18(%ebp)
		.LBB528:
		.LBB529:
				movsbl	-18(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
				jmp	.L97
		.L114:
		.LBE529:
		.LBE528:
				nop
		.L97:
  681           %EXIT %IF p = pos
				movl	POS.6145@GOTOFF(%ebx), %eax
				cmpl	%eax, -12(%ebp)
				je	.L115
				nop
		.L99:
				nop
		.L100:
  682           s = char(margin+p);  p = p+1
				movl	MARGIN.6090@GOTOFF(%ebx), %edx
				movl	-12(%ebp), %eax
				addl	%edx, %eax
				movzbl	CHAR.6153@GOTOFF(%ebx,%eax), %eax
				movzbl	%al, %eax
				movl	%eax, -16(%ebp)
				addl	$1, -12(%ebp)
  683           %EXIT %IF s = nl %OR (s='%' %AND p = pos)
				cmpl	$10, -16(%ebp)
				je	.L116
				cmpl	$37, -16(%ebp)
				jne	.L117
				movl	POS.6145@GOTOFF(%ebx), %eax
				cmpl	%eax, -12(%ebp)
				jne	.L118
				jmp	.L102
		.L116:
				nop
		.L102:
				jmp	.L100
		.L117:
				nop
				jmp	.L104
		.L118:
				nop
		.L104:
  684           %IF s < ' ' %START;         !beware of tabs
				cmpl	$31, -16(%ebp)
				jg	.L119
				nop
		.L109:
  685              %IF s = ff %THEN s = nl %ELSE s = ' '
				cmpl	$12, -16(%ebp)
				jne	.L120
				movl	$10, -16(%ebp)
				jmp	.L109
		.L120:
				nop
		.L108:
				movl	$32, -16(%ebp)
				jmp	.L109
		.L106:
		.L119:
  686           %FINISH
  687           printsymbol(s)
				movl	-16(%ebp), %eax
				movsbl	%al, %eax
				movb	%al, -17(%ebp)
		.LBB530:
		.LBB531:
				movsbl	-17(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE531:
		.LBE530:
  688        %REPEAT
				jmp	.L95
		.L115:
  689        pos = 0 %IF list <= 0
				movl	LIST.6160@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jg	.L121
				movl	$0, POS.6145@GOTOFF(%ebx)
				nop
		.L111:
  690     %END
				jmp	.L111
		.L121:
				nop
				jmp	.L91
		.L113:
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE196:
				.section	.rodata
				.align 4
		.LC95:
				.string	"->FM(%d) out of bounds at %s line %d"
				.align 4
		.LC96:
				.string	"switch jump to undefined label FM(%d): at %s line %d"
				.align 32
		.LC42:
				.byte	8
				.string	"      ! "
				.zero	246
				.align 32
		.LC43:
				.byte	5
				.string	"fault"
				.zero	249
		FAULT.6347:
		.LFB195:
  691
  692     pos1 = pos2 %IF pos2 > pos1
				movl	POS2.6144@GOTOFF(%ebx), %edx
				movl	POS1.6143@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				jle	.L186
				movl	POS2.6144@GOTOFF(%ebx), %eax
				movl	%eax, POS1.6143@GOTOFF(%ebx)
				jmp	.L124
		.L186:
				nop
		.L124:
  693    %if n >=0 %or command&warnbit # 0 %start
				cmpl	$0, 8(%ebp)
				nop
		.L126:
  694     newline %IF sym # nl
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				je	.L187
		.LBB532:
		.LBB533:
				call	_imp_newline@PLT
				jmp	.L128
		.L187:
		.LBE533:
		.LBE532:
				nop
		.L128:
  695     st = report
				movl	$0, -2356(%ebp)
  696     st = listing %IF n = -3;              !don't report unused on the console
				cmpl	$-3, 8(%ebp)
				jne	.L188
				movl	$2, -2356(%ebp)
				jmp	.L152
		.L130:
		.L188:
				nop
		.L131:
		.L152:
  697     %cycle
  698        SELECT OUTPUT(st)
				subl	$12, %esp
				pushl	-2356(%ebp)
				call	_imp_SELECTOUTPUT
				addl	$16, %esp
  699        %if n < 0 %then printsymbol('?') %and pos1 = 0 %else printsymbol('*')
				cmpl	$0, 8(%ebp)
				jns	.L189
				movb	$63, -2363(%ebp)
		.LBB534:
		.LBB535:
				movsbl	-2363(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE535:
		.LBE534:
				movl	$0, POS1.6143@GOTOFF(%ebx)
				jmp	.L134
		.L189:
				nop
		.L133:
				movb	$42, -2362(%ebp)
		.LBB536:
		.LBB537:
				movsbl	-2362(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.L134:
		.LBE537:
		.LBE536:
  700        %if st # report %start
				cmpl	$0, -2356(%ebp)
				je	.L190
				nop
		.L136:
  701           %if list <= 0 %and pos1 # 0 %start
				movl	LIST.6160@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jg	.L191
				movl	POS1.6143@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L192
				nop
				jmp	.L140
		.L192:
				nop
		.L138:
  702              spaces(pos1+margin);  PRINTSTRING("      ! ")
				movl	POS1.6143@GOTOFF(%ebx), %edx
				movl	MARGIN.6090@GOTOFF(%ebx), %eax
				addl	%edx, %eax
				movl	%eax, -2336(%ebp)
		.LBB538:
		.LBB539:
				subl	$12, %esp
				pushl	-2336(%ebp)
				call	_imp_spaces@PLT
				addl	$16, %esp
		.LBE539:
		.LBE538:
		.LBB540:
				leal	-1052(%ebp), %eax
				leal	.LC42@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-2332(%ebp), %eax
				leal	-1052(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-796(%ebp), %eax
				leal	-2332(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE540:
		.LBB541:
		.LBB542:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-796(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE542:
		.LBE541:
  703           %finish
  704        %finish %else %start
				jmp	.L140
		.L191:
				jmp	.L140
		.L190:
  705           PRINTSTRING(include file) %if include # 0
				movl	INCLUDE.6131@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L193
		.LBB543:
				movl	-2384(%ebp), %eax
				movl	68(%eax), %edx
				leal	-1052(%ebp), %eax
				addl	$144440, %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1052(%ebp), %edx
				leal	-540(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
		.LBE543:
		.LBB544:
		.LBB545:
				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	_imp_printstring@PLT
				addl	$256, %esp
				jmp	.L181
		.L142:
		.L193:
		.LBE545:
		.LBE544:
				nop
		.L181:
  706           write(lines, 4);  printsymbol(csym);  space
				movl	LINES.6088@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$4
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
				movl	CSYM.6101@GOTOFF(%ebx), %eax
				movsbl	%al, %eax
				movb	%al, -2361(%ebp)
		.LBB546:
		.LBB547:
				movsbl	-2361(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE547:
		.LBE546:
		.LBB548:
		.LBB549:
				call	_imp_space@PLT
		.L140:
		.LBE549:
		.LBE548:
		.LBB550:
  707        %finish
  708        ->fm(n) %if -5 <= n <= 22
				movl	8(%ebp), %eax
				movl	%eax, -2352(%ebp)
				cmpl	$-5, -2352(%ebp)
				jl	.L194
				cmpl	$22, -2352(%ebp)
				jg	.L195
		.LBE550:
				movl	$708, -2348(%ebp)
				leal	.LC92@GOTOFF(%ebx), %eax
				movl	%eax, -2344(%ebp)
				movl	8(%ebp), %eax
				movl	%eax, -2340(%ebp)
				nop
		.L146:
				nop
				jmp	.L144
		.L195:
				nop
		.L144:
		.LBE551:
		.LBB552:
  709        PRINTSTRING("fault");  write(n, 2);              ->ps
				leal	-1052(%ebp), %eax
				leal	.LC43@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-2076(%ebp), %eax
				leal	-1052(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-284(%ebp), %eax
				leal	-2076(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE552:
		.LBB553:
		.LBB554:
				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
		.LBE554:
		.LBE553:
				subl	$8, %esp
				pushl	$2
				pushl	8(%ebp)
				call	_imp_writeint@PLT
				addl	$16, %esp
				nop
		.L147:
  710 fm(*):debug("* Switch label not set: fm(".itos(n,0).")"); %stop
  711 fm(-5):PRINTSTRING("Dubious statement");  dubious = 0;  ->psd
  712 fm(-4):PRINTSTRING("Non-local")
  713        pos1 = for warn;  for warn = 0;      ->ps
  714 fm(-3):print ident(x, 0);  PRINTSTRING(" unused");      ->nps
  715 fm(-2):PRINTSTRING("""}""");                            ->miss
  716 fm(-1):PRINTSTRING("access");                           ->psd
  717
  718 fm(0): PRINTSTRING("form");                             ->ps
  719 fm(1): PRINTSTRING("atom");                             ->ps
  720 fm(2): PRINTSTRING("not declared");                     ->ps
  721 fm(3): PRINTSTRING("too complex");                      ->ps
  722 fm(4): PRINTSTRING("duplicate");                        ->ps
  723 fm(5): PRINTSTRING("type");                             ->ps
  724 fm(6): PRINTSTRING("match");                            ->psd
  725 fm(7): PRINTSTRING("context");                          ->psd
  726 fm(21):PRINTSTRING("context ");  print ident(this, 0);  ->ps
  727 fm(8): PRINTSTRING("%cycle");                           ->miss
  728 fm(9): PRINTSTRING("%start");                           ->miss
  729 fm(10):PRINTSTRING("size");  WRITE(lit, 1) %if pos1 = 0;->ps
  730 fm(11):PRINTSTRING("bounds")
  731        WRITE(ocount, 1) %unless ocount < 0;             ->ps
  732 fm(12):PRINTSTRING("index");                            ->ps
  733 fm(13):PRINTSTRING("order");                            ->psd
  734 fm(14):PRINTSTRING("not a location");                   ->ps
  735 fm(15):PRINTSTRING("%begin");                           ->miss
  736 fm(16):PRINTSTRING("%end");                             ->miss
  737 fm(17):PRINTSTRING("%repeat");                          ->miss
  738 fm(18):PRINTSTRING("%finish");                          ->miss
  739 fm(19):PRINTSTRING("result");                           ->miss
  740 fm(22):PRINTSTRING("format");                           ->ps
  741 fm(20):printsymbol('"');  print ident(x, 0);  printsymbol('"')
  742 miss:  PRINTSTRING(" missing");                         ->nps
  743 psd:   pos1 = 0
  744 ps:    print ss
				leal	-2360(%ebp), %eax
				movl	%eax, %ecx
				call	PRINTSS.6356
		.L148:
		.LBB555:
		.LBB556:
				call	_imp_newline@PLT
		.LBE556:
		.LBE555:
  745 nps:   NEWLINE
  746        %exit %if st = listing
				cmpl	$2, -2356(%ebp)
				je	.L196
				nop
		.L150:
				nop
		.L153:
  747        st = listing
				movl	$2, -2356(%ebp)
  748     %repeat
				jmp	.L152
		.L151:
		.L196:
  749    %finish
  750     %if n >= 0 %start
				cmpl	$0, 8(%ebp)
				js	.L197
				nop
				jmp	.L162
		.L200:
  751        %monitor %if diag&4096 # 0
				nop
		.L156:
  752        %if n # 13 %start;           !order is fairly safe
				cmpl	$13, 8(%ebp)
				je	.L198
				nop
		.L158:
  753           ocount = -1
				movl	$-1, OCOUNT.6136@GOTOFF(%ebx)
  754           gg = 0
				movl	$0, GG.6117@GOTOFF(%ebx)
  755           copy = 0;  quote = 0
				movl	$0, COPY.6138@GOTOFF(%ebx)
				movl	$0, QUOTE.6098@GOTOFF(%ebx)
  756           search base = 0;  escape class = 0
				movl	$0, SEARCHBASE.6149@GOTOFF(%ebx)
				movl	$0, ESCAPECLASS.6105@GOTOFF(%ebx)
  757           gg = 0
				movl	$0, GG.6117@GOTOFF(%ebx)
				jmp	.L158
		.L198:
  758        %finish
  759        faulty = faulty+1
				movl	FAULTY.6086@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, FAULTY.6086@GOTOFF(%ebx)
  760
  761        !check that there haven't been too many faults
  762
  763        fault rate = fault rate+3;  abandon(6) %IF fault rate > 30
				movl	FAULTRATE.6087@GOTOFF(%ebx), %eax
				addl	$3, %eax
				movl	%eax, FAULTRATE.6087@GOTOFF(%ebx)
				movl	FAULTRATE.6087@GOTOFF(%ebx), %eax
				cmpl	$30, %eax
				jle	.L199
				movl	-2384(%ebp), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	$6
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L160
		.L199:
				nop
		.L160:
  764        fault rate = 3 %IF fault rate <= 0
				movl	FAULTRATE.6087@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jg	.L200
				movl	$3, FAULTRATE.6087@GOTOFF(%ebx)
				jmp	.L162
		.L155:
		.L197:
				nop
		.L162:
  765     %FINISH
  766     tbase = tstart
				movl	-2384(%ebp), %esi
				movl	64(%esi), %eax
				movl	%eax, 60(%esi)
  767     %IF list <= 0 %AND sym # nl %START
				movl	LIST.6160@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jg	.L201
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				je	.L202
				nop
				jmp	.L122
		.L202:
				nop
		.L164:
  768        error margin = column
				movl	COLUMN.6093@GOTOFF(%ebx), %eax
				movl	%eax, ERRORMARGIN.6091@GOTOFF(%ebx)
  769        error sym = sym;  sym = nl
				movl	SYM.6096@GOTOFF(%ebx), %eax
				movl	%eax, ERRORSYM.6092@GOTOFF(%ebx)
				movl	$10, SYM.6096@GOTOFF(%ebx)
  770     %FINISH
  771 %END
				cmpl	$-5, -2340(%ebp)
				jl	.L167
				jmp	.L184
		.L194:
		.LBB551:
				jmp	.L122
		.L201:
				jmp	.L122
		.L184:
				cmpl	$22, -2340(%ebp)
				jle	.L168
		.L167:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L169
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -2384(%ebp)
				jmp	.L170
		.L169:
				movl	$771, -2384(%ebp)
		.L170:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L171
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-1308(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L172
		.L171:
		.LBB557:
				leal	-1052(%ebp), %eax
				leal	.LC21@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1820(%ebp), %eax
				leal	-1052(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE557:
				leal	-1308(%ebp), %eax
				leal	-1820(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L172:
				pushl	-2348(%ebp)
				pushl	-2344(%ebp)
				pushl	-2340(%ebp)
				leal	.LC95@GOTOFF(%ebx), %eax
				pushl	%eax
				pushl	-2340(%ebp)
				pushl	$3
				pushl	$6
				pushl	-2384(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-1308(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_eventf@PLT
				addl	$288, %esp
		.L168:
				nop
		.L174:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L185
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -2384(%ebp)
				jmp	.L177
		.L185:
				movl	$771, -2384(%ebp)
		.L177:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L178
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-1052(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L179
		.L178:
		.LBB558:
				leal	-1052(%ebp), %eax
				leal	.LC21@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1564(%ebp), %eax
				leal	-1052(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE558:
				leal	-1052(%ebp), %eax
				leal	-1564(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L179:
				pushl	-2348(%ebp)
				pushl	-2344(%ebp)
				pushl	-2340(%ebp)
				leal	.LC96@GOTOFF(%ebx), %eax
				pushl	%eax
				pushl	-2340(%ebp)
				pushl	$2
				pushl	$8
				pushl	-2384(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-1052(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_eventf@PLT
				addl	$288, %esp
		.L122:
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L180
				call	__stack_chk_fail_local
		.L180:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE195:
				.section	.rodata
				.align 32
		.LC12:
				.byte	5
				.string	"Begin"
				.zero	249
				.align 32
		.LC13:
				.byte	10
				.string	"Procedure "
				.zero	244
				.align 32
		.LC14:
				.byte	3
				.string	"End"
				.zero	251
		COMPILEBLOCK.6320:
		.LFB194:
  772
  773    dmin = dmin-1;  dict(dmin) = -1;            !end marker for starts & cycles
				movl	-1596(%ebp), %eax
				subl	$1, %eax
				movl	%eax, -1596(%ebp)
				movl	-1596(%ebp), %eax
				subl	$1, %eax
				addl	$2132, %eax
				movl	$-1, 4(%esi,%eax,4)
  774    abandon(2) %IF dmax = dmin
				movl	DMAX.6126@GOTOFF(%ebx), %eax
				movl	-1596(%ebp), %edx
				cmpl	%eax, %edx
				jne	.L253
				subl	$12, %esp
				pushl	$2
				movl	-1680(%ebp), %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L205
		.L253:
				nop
		.L205:
  775
  776    %IF list > 0 %AND level > 0 %START
				movl	LIST.6160@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jle	.L254
				movl	-1588(%ebp), %eax
				testl	%eax, %eax
				jle	.L255
				nop
				jmp	.L207
		.L255:
				nop
		.L207:
  777       write(lines, 5);  spaces(level*3-1)
				movl	LINES.6088@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$5
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
				movl	-1588(%ebp), %edx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				subl	$1, %eax
				movl	%eax, -1648(%ebp)
		.LBB559:
		.LBB560:
				subl	$12, %esp
				pushl	-1648(%ebp)
				call	_imp_spaces@PLT
				addl	$16, %esp
		.LBE560:
		.LBE559:
  778       %IF block tag = 0 %START
				movl	-1624(%ebp), %eax
				testl	%eax, %eax
				jne	.L256
		.LBB561:
				nop
		.L210:
		.LBB564:
  779          printstring("Begin")
				leal	-284(%ebp), %eax
				leal	.LC12@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1564(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-796(%ebp), %eax
				leal	-1564(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE561:
		.LBB562:
		.LBB563:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-796(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE563:
		.LBE562:
  780       %FINISH %ELSE %START
				jmp	.L211
		.L256:
  781          printstring("Procedure ");  print ident(block tag, 0)
				leal	-284(%ebp), %eax
				leal	.LC13@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1308(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-540(%ebp), %eax
				leal	-1308(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE564:
		.LBB565:
		.LBB566:
				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	_imp_printstring@PLT
				addl	$256, %esp
		.LBE566:
		.LBE565:
				movl	-1624(%ebp), %eax
				subl	$8, %esp
				pushl	$0
				pushl	%eax
				movl	-1680(%ebp), %ecx
				call	PRINTIDENT.6186
				addl	$16, %esp
		.L211:
		.LBB567:
		.LBB568:
				call	_imp_newline@PLT
				jmp	.L207
		.L254:
		.LBE568:
		.LBE567:
  782       %FINISH
  783       newline
  784    %FINISH
  785
  786    !deal with procedure definition (parameters)
  787
  788    %IF block tag # 0 %START;                   !proc
				movl	-1624(%ebp), %eax
				testl	%eax, %eax
				je	.L257
				nop
		.L213:
  789       analyse;  compile %IF ss # 0
				leal	-1640(%ebp), %eax
				movl	%eax, %ecx
				call	ANALYSE.6327
				movl	SS.6128@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L258
				leal	-1640(%ebp), %eax
				movl	%eax, %ecx
				call	COMPILE.6329
				jmp	.L215
		.L258:
				nop
		.L215:
  790
  791       %IF block otype # 0 %START;              !external-ish
				cmpl	$0, -1660(%ebp)
				je	.L259
				nop
				jmp	.L223
		.L260:
  792          %IF bflags&spec = 0 %START;           !definition
				movl	-1620(%ebp), %eax
				movl	(%eax), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L260
				nop
		.L223:
  793             %IF progmode <= 0 %AND level = 1 %THEN progmode = -1 %C
				movl	PROGMODE.6133@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jg	.L261
				movl	-1588(%ebp), %eax
				cmpl	$1, %eax
				jne	.L262
				movl	$-1, PROGMODE.6133@GOTOFF(%ebx)
				jmp	.L223
		.L261:
				nop
				jmp	.L220
		.L262:
				nop
		.L220:
				subl	$12, %esp
				leal	-1640(%ebp), %eax
				pushl	$7
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L223
		.L217:
		.L222:
		.L259:
  794                                              %ELSE fault(7)
  795 !!!!!    %FINISH %ELSE %START;                                !external spec
  796 !!!!!       bflags = bflags-spec;              !definition elsewhere
  797          %FINISH
  798       %FINISH
  799
  800       new app = gapp;                          !generate app grammar
				leal	-1640(%ebp), %eax
				movl	%eax, %ecx
				call	GAPP.6323
				movl	%eax, -1652(%ebp)
  801       %IF spec given # 0 %START;               !definition after spec
				movl	SPECGIVEN.6104@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L263
				nop
				jmp	.L227
		.L264:
  802          fault(6) %IF new app # block app;     !different from spec
				movl	-1656(%ebp), %eax
				movl	(%eax), %eax
				cmpl	%eax, -1652(%ebp)
				je	.L264
				subl	$12, %esp
				leal	-1640(%ebp), %eax
				pushl	$6
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L227
		.L225:
		.L263:
				nop
		.L227:
  803       %FINISH
  804       block app = new app;                     !use the latest
				movl	-1656(%ebp), %eax
				movl	-1652(%ebp), %edx
				movl	%edx, (%eax)
  805
  806       %IF level < 0 %START;                    !not procedure definition
				movl	-1588(%ebp), %eax
				testl	%eax, %eax
				jns	.L265
				nop
		.L229:
  807          delete names(0)
				subl	$12, %esp
				leal	-1640(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	DELETENAMES.6325
				addl	$16, %esp
  808          %RETURN
				jmp	.L203
		.L265:
  809       %FINISH
  810    %FINISH %ELSE %START
				jmp	.L245
		.L257:
  811       open = 0;                                !can return from a block?
				movl	$0, %eax
				movl	%eax, -1616(%ebp)
		.L231:
		.L232:
		.L245:
  812    %FINISH
  813
  814    %CYCLE
  815       analyse
				leal	-1640(%ebp), %eax
				movl	%eax, %ecx
				call	ANALYSE.6327
  816       %CONTINUE %IF ss = 0
				movl	SS.6128@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L266
				nop
		.L234:
				nop
				jmp	.L245
		.L268:
  817       compile
				leal	-1640(%ebp), %eax
				movl	%eax, %ecx
				call	COMPILE.6329
  818       fault(-5) %IF dubious # 0
				movl	DUBIOUS.6141@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L267
				subl	$12, %esp
				leal	-1640(%ebp), %eax
				pushl	$-5
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L237
		.L267:
				nop
		.L237:
  819       %IF sstype > 0 %START;                   !block in or out
				movl	SSTYPE.6134@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jle	.L268
				nop
		.L244:
  820          %EXIT %IF sstype = 2;               !out
				movl	SSTYPE.6134@GOTOFF(%ebx), %eax
				cmpl	$2, %eax
				je	.L269
				nop
		.L240:
				nop
				jmp	.L241
		.L270:
  821          compile block(spec mode, block x, dmin, tmax, id)
				movl	BLOCKX.6159@GOTOFF(%ebx), %edx
				movl	SPECMODE.6135@GOTOFF(%ebx), %eax
				movl	-1596(%ebp), %ecx
				movl	-1584(%ebp), %esi
				movl	-1592(%ebp), %edi
				subl	$12, %esp
				pushl	%edi
				pushl	%esi
				pushl	%ecx
				pushl	%edx
				pushl	%eax
				movl	-1680(%ebp), %ecx
				call	COMPILEBLOCK.6320
				addl	$32, %esp
  822          %EXIT %IF ss < 0;                   !endofprogram
				movl	SS.6128@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				js	.L270
				jmp	.L244
		.L235:
		.L243:
		.L266:
				nop
		.L241:
  823       %FINISH
  824    %REPEAT
				jmp	.L245
		.L269:
  825    %IF list > 1 %AND level > 0 %START
				movl	LIST.6160@GOTOFF(%ebx), %eax
				cmpl	$1, %eax
				jle	.L271
				movl	-1588(%ebp), %eax
				testl	%eax, %eax
				jle	.L272
				nop
				jmp	.L247
		.L272:
				nop
		.L247:
  826       write(lines, 5);  spaces(level*3-1)
				movl	LINES.6088@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$5
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
				movl	-1588(%ebp), %edx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				subl	$1, %eax
				movl	%eax, -1644(%ebp)
		.LBB569:
		.LBB570:
				subl	$12, %esp
				pushl	-1644(%ebp)
				call	_imp_spaces@PLT
				addl	$16, %esp
		.LBE570:
		.LBE569:
		.LBB571:
  827       printstring("End")
				leal	-284(%ebp), %eax
				leal	.LC14@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
				leal	-284(%ebp), %eax
				leal	-1052(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE571:
		.LBB572:
		.LBB573:
				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
		.LBE573:
		.LBE572:
		.LBB574:
		.LBB575:
				call	_imp_newline@PLT
				jmp	.L247
		.L271:
		.LBE575:
		.LBE574:
  828       newline
  829    %FINISH
  830    delete names(0)
				subl	$12, %esp
				leal	-1640(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	DELETENAMES.6325
				addl	$16, %esp
  831    %RETURN
				nop
		.L203:
  832
  833    %INTEGERFN gapp;                            !generate app grammar (backwards)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$320, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -316(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -272(%ebp)
  834       %CONSTINTEGER comma = 140;               !psep
  835       %ROUTINESPEC set cell(%INTEGER g, tt)
  836       %ROUTINESPEC class(%RECORD(tagfm)%NAME v);   !imp77:
  837       %RECORD(tagfm)%NAME v;                       !imp77:
  838       %INTEGER p, link, tp, c, ap, t
  839
  840       %RESULT = 0 %IF tmax = local;            !no app needed
				movl	LOCAL.6147@GOTOFF(%ebx), %eax
				movl	56(%esi), %edx
				cmpl	%eax, %edx
				jne	.L309
				movl	$0, %eax
				jmp	.L298
		.L309:
				nop
		.L297:
  841
  842       p = gmax1;  link = 0;  t = tmax
				movl	$718, %eax
				movl	%eax, -276(%ebp)
				movl	$0, %eax
				movl	%eax, -280(%ebp)
				movl	56(%esi), %eax
				movl	%eax, -300(%ebp)
		.L299:
  843
  844       %CYCLE
  845          v == tag(t);  t = t-1
				movl	68(%esi), %ecx
				movl	-300(%ebp), %edx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	$44528, %eax
				addl	%ecx, %eax
				addl	$4, %eax
				movl	%eax, -296(%ebp)
				subl	$1, -300(%ebp)
  846          class(v);                             !deduce class from tag
				subl	$12, %esp
				leal	-292(%ebp), %eax
				pushl	-296(%ebp)
				movl	%eax, %ecx
				call	CLASS.6543
				addl	$16, %esp
  847          %IF c < 0 %START;                     !insert %PARAM
				movl	-292(%ebp), %eax
				testl	%eax, %eax
				jns	.L310
				nop
		.L301:
  848             c = -c
				movl	-292(%ebp), %eax
				negl	%eax
				movl	%eax, -292(%ebp)
  849             set cell(196, tp)
				movl	-288(%ebp), %edx
				subl	$8, %esp
				leal	-292(%ebp), %eax
				pushl	%edx
				pushl	$196
				movl	%eax, %ecx
				call	SETCELL.6541
				addl	$16, %esp
  850             tp = -1
				movl	$-1, %eax
				movl	%eax, -288(%ebp)
				jmp	.L301
		.L310:
  851          %FINISH
  852          set cell(c, tp)
				movl	-292(%ebp), %edx
				movl	-288(%ebp), %ecx
				subl	$8, %esp
				leal	-292(%ebp), %eax
				pushl	%ecx
				pushl	%edx
				movl	%eax, %ecx
				call	SETCELL.6541
				addl	$16, %esp
  853          %EXIT %IF t = local;                  !end of parameters
				movl	LOCAL.6147@GOTOFF(%ebx), %eax
				cmpl	%eax, -300(%ebp)
				je	.L311
				nop
		.L303:
				nop
		.L304:
  854          set cell(comma, -1);                  !add the separating comma
				subl	$8, %esp
				leal	-292(%ebp), %eax
				pushl	$-1
				pushl	$140
				movl	%eax, %ecx
				call	SETCELL.6541
				addl	$16, %esp
  855       %REPEAT
				jmp	.L299
		.L311:
  856       abandon(3) %IF gmax > gmin
				movl	GMAX.6171@GOTOFF(%ebx), %edx
				movl	GMIN.6125@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				jle	.L312
				movl	68(%esi), %eax
				subl	$12, %esp
				pushl	$3
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L306
		.L312:
				nop
		.L306:
  857
  858       %RESULT = link
				movl	-280(%ebp), %eax
		.L298:
  859
  860       %ROUTINE set cell(%INTEGER g, tt)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%ebx
				subl	$4, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %edx
				movl	%ecx, -8(%ebp)
		.L274:
  861
  862          !add the cell to the grammar, combining common tails
  863
  864          %WHILE p # gmax %CYCLE
				movl	GMAX.6171@GOTOFF(%eax), %ecx
				movl	16(%edx), %ebx
				cmpl	%ecx, %ebx
				je	.L288
				nop
		.L276:
  865             p = p+1
				movl	16(%edx), %ecx
				addl	$1, %ecx
				movl	%ecx, 16(%edx)
  866             %IF glink(p) = link %AND gram(p) = g %START
				movl	16(%edx), %ecx
				movzwl	GLINK.6180@GOTOFF(%eax,%ecx,2), %ecx
				movswl	%cx, %ecx
				movl	12(%edx), %ebx
				cmpl	%ecx, %ebx
				jne	.L289
				movl	16(%edx), %ecx
				movzwl	GRAM.6178@GOTOFF(%eax,%ecx,2), %ecx
				movswl	%cx, %ecx
				cmpl	%ecx, 8(%ebp)
				jne	.L290
				nop
				jmp	.L274
		.L290:
				nop
				jmp	.L274
		.L292:
  867                %IF tt < 0 %OR (gram(p+1) = tt %AND glink(p+1)=ap) %START
				cmpl	$0, 12(%ebp)
				js	.L291
				movl	16(%edx), %ecx
				addl	$1, %ecx
				movzwl	GRAM.6178@GOTOFF(%eax,%ecx,2), %ecx
				movswl	%cx, %ecx
				cmpl	%ecx, 12(%ebp)
				jne	.L292
				movl	16(%edx), %ecx
				addl	$1, %ecx
				movzwl	GLINK.6180@GOTOFF(%eax,%ecx,2), %ecx
				movswl	%cx, %ecx
				movl	8(%edx), %ebx
				cmpl	%ecx, %ebx
				jne	.L293
				jmp	.L281
		.L291:
				nop
		.L281:
				nop
				jmp	.L274
		.L293:
				nop
		.L284:
  868                   link = p;                    !already there
				movl	16(%edx), %eax
				movl	%eax, 12(%edx)
  869                   %RETURN
				jmp	.L273
		.L278:
		.L289:
  870                %FINISH
  871             %FINISH
  872          %REPEAT
				jmp	.L274
		.L288:
  873
  874          !add a new cell
  875
  876          gmax = gmax+1
				movl	GMAX.6171@GOTOFF(%eax), %ecx
				addl	$1, %ecx
				movl	%ecx, GMAX.6171@GOTOFF(%eax)
  877          gram(gmax) = g
				movl	GMAX.6171@GOTOFF(%eax), %ecx
				movl	8(%ebp), %ebx
				movw	%bx, GRAM.6178@GOTOFF(%eax,%ecx,2)
  878          glink(gmax) = link
				movl	GMAX.6171@GOTOFF(%eax), %ecx
				movl	12(%edx), %ebx
				movw	%bx, GLINK.6180@GOTOFF(%eax,%ecx,2)
  879          link = gmax
				movl	GMAX.6171@GOTOFF(%eax), %ecx
				movl	%ecx, 12(%edx)
  880
  881          %IF tt >= 0 %START;             ! set type cell
				cmpl	$0, 12(%ebp)
				js	.L294
				nop
		.L286:
  882             gmax = gmax+1
				movl	GMAX.6171@GOTOFF(%eax), %ecx
				addl	$1, %ecx
				movl	%ecx, GMAX.6171@GOTOFF(%eax)
  883             gram(gmax) = tt
				movl	GMAX.6171@GOTOFF(%eax), %ecx
				movl	12(%ebp), %ebx
				movw	%bx, GRAM.6178@GOTOFF(%eax,%ecx,2)
  884             glink(gmax) = ap
				movl	GMAX.6171@GOTOFF(%eax), %ecx
				movl	8(%edx), %ebx
				movw	%bx, GLINK.6180@GOTOFF(%eax,%ecx,2)
				jmp	.L286
		.L294:
  885          %FINISH
  886
  887          p = gmax
				movl	GMAX.6171@GOTOFF(%eax), %eax
				movl	%eax, 16(%edx)
  888       %END
				nop
		.L273:
				addl	$4, %esp
				popl	%ebx
				popl	%ebp
				ret
		.LFE198:
		GAPP.6323:
		.LFB197:
  889
  890       %ROUTINE class(%RECORD(tagfm)%NAME v);  !imp77:
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%ebx
				subl	$176, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	8(%ebp), %eax
				movl	%eax, -172(%ebp)
				movl	%ecx, %edx
				movl	%ecx, -176(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
  891          %CONSTINTEGER err    = 89
  892          %CONSTINTEGER rtp    = 100
  893          %CONSTINTEGER fnp    = 101
  894          %CONSTINTEGER mapp   = 102
  895          %CONSTINTEGER predp  = 103
  896          %CONSTINTEGERARRAY class map(0:15) = %C
				movl	$89, -144(%ebp)
				movl	$1764, -140(%ebp)
				movl	$247, -136(%ebp)
				movl	$89, -132(%ebp)
				movl	$89, -128(%ebp)
				movl	$89, -124(%ebp)
				movl	$89, -120(%ebp)
				movl	$-100, -116(%ebp)
				movl	$-101, -112(%ebp)
				movl	$-102, -108(%ebp)
				movl	$-103, -104(%ebp)
				movl	$89, -100(%ebp)
				movl	$214, -96(%ebp)
				movl	$89, -92(%ebp)
				movl	$229, -88(%ebp)
				movl	$89, -84(%ebp)
				leal	-80(%ebp), %ebx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%ebx, %edi
				rep stosl
				leal	-144(%ebp), %eax
				movl	%eax, -80(%ebp)
				movl	$4, -76(%ebp)
  897          err,1764, 247, err(4), -rtp, -fnp, -mapp, -predp, err, 214,
  898          err, 229, err
  899          %INTEGER tags, type, form
  900          ap = 0
				movl	$0, %eax
				movl	%eax, 8(%edx)
  901          tags = v_flags
				movl	-172(%ebp), %eax
				movl	8(%eax), %eax
				movl	%eax, -156(%ebp)
  902          type = tags>>4&7;  form = tags&15
				movl	-156(%ebp), %eax
				shrl	$4, %eax
				andl	$7, %eax
				movl	%eax, -152(%ebp)
				movl	-156(%ebp), %eax
				andl	$15, %eax
				movl	%eax, -148(%ebp)
  903          tp = v_format<<3!type
				movl	-172(%ebp), %eax
				movl	4(%eax), %eax
				sall	$3, %eax
				orl	-152(%ebp), %eax
				movl	%eax, 4(%edx)
  904          c = class map(form)
				movl	-148(%ebp), %eax
				movl	-144(%ebp,%eax,4), %eax
				movl	%eax, (%edx)
  905          c = 208 %AND tp = 0 %IF type = 0 %AND form = 2;  !%NAME
				cmpl	$0, -152(%ebp)
				jne	.L321
				cmpl	$2, -148(%ebp)
				jne	.L322
				movl	$208, %eax
				movl	%eax, (%edx)
				movl	$0, %eax
				movl	%eax, 4(%edx)
				jmp	.L320
		.L315:
		.L321:
				nop
				jmp	.L320
		.L322:
				nop
		.L320:
  906          ap = v_app %IF tags&parameters # 0
				movl	-172(%ebp), %eax
				movl	(%eax), %eax
				movl	%eax, 8(%edx)
  907       %END
				nop
		.L317:
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L319
				call	__stack_chk_fail_local
		.L319:
				addl	$176, %esp
				popl	%ebx
				popl	%edi
				popl	%ebp
				ret
		.LFE199:
		DELETENAMES.6325:
		.LFB200:
  908    %END
				movl	-12(%ebp), %ebx
				xorl	%gs:20, %ebx
				je	.L307
				call	__stack_chk_fail_local
		.L307:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE197:
		CLASS.6543:
		.LFB199:
  909
  910 %ROUTINE delete names(%INTEGER quiet)
				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
		.L324:
  911    %INTEGER flags
  912    %RECORD(tagfm)%NAME tx;      !imp77:
  913    %WHILE tmax > tbase %CYCLE
				movl	56(%ebx), %edx
				movl	60(%ebx), %eax
				cmpl	%eax, %edx
				jle	.L338
				nop
		.L326:
  914       x = tmax;  tmax = tmax-1
				movl	56(%ebx), %eax
				movl	%eax, X.6078@GOTOFF(%esi)
				movl	56(%ebx), %eax
				subl	$1, %eax
				movl	%eax, 56(%ebx)
  915       tx == tag(x)
				movl	X.6078@GOTOFF(%esi), %edx
				movl	68(%ebx), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	$44528, %eax
				addl	%ecx, %eax
				addl	$4, %eax
				movl	%eax, -20(%ebp)
  916       flags = tx_flags
				movl	-20(%ebp), %eax
				movl	8(%eax), %eax
				movl	%eax, -16(%ebp)
  917       fault(20) %IF flags&spec # 0 %and flags&own bit = 0
				movl	-16(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L339
				subl	$12, %esp
				pushl	$20
				movl	%ebx, %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L328
		.L339:
				nop
		.L328:
  918                {spec with no definition & not external}
  919       %IF flags&used bit = 0 %AND level > 0 %AND list <= 0 %START
				movl	-16(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L340
				movl	52(%ebx), %eax
				testl	%eax, %eax
				jle	.L341
				movl	LIST.6160@GOTOFF(%esi), %eax
				testl	%eax, %eax
				jg	.L342
				nop
				jmp	.L334
		.L341:
				nop
				jmp	.L334
		.L342:
				nop
				jmp	.L334
		.L343:
  920          fault(-3) %IF quiet = 0;          !unused
				cmpl	$0, 8(%ebp)
				jne	.L343
				subl	$12, %esp
				pushl	$-3
				movl	%ebx, %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L334
		.L330:
		.L340:
				nop
		.L334:
  921       %FINISH
  922       dict(tx_text) = tx_link
				movl	-20(%ebp), %eax
				movl	16(%eax), %eax
				leal	-1(%eax), %ecx
				movl	-20(%ebp), %eax
				movl	20(%eax), %edx
				movl	68(%ebx), %eax
				addl	$2132, %ecx
				movl	%edx, 4(%eax,%ecx,4)
  923    %REPEAT
				jmp	.L324
		.L338:
  924 %END
				nop
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L336
				call	__stack_chk_fail_local
		.L336:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE200:
		SHOW.6618:
		.LFB203:
  925
  926 %ROUTINE analyse
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$7308, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %edi
				movl	%edi, -7296(%ebp)
				movl	%ecx, -7292(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -7200(%ebp)
				movl	%edi, -7204(%ebp)
  927
  928    %CONSTINTEGER order bits = 16_3000, order bit = 16_1000
  929    %CONSTINTEGER escape     = 16_1000
  930    %INTEGER strp, mark, flags, prot err, k, s, c
  931    %OWNINTEGER key = 0
  932    {GT:%SHORT}%INTEGER node;      !imp77:
  933    {GT:%SHORT}%INTEGERNAME z;     !imp77:
  934    %RECORD(arfm)%NAME arp;  !imp77:
  935    %SWITCH act(actions:phrasal), paction(0:15)
  936
  937    %ROUTINE trace analysis
				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	%ecx, -828(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -800(%ebp)
				movl	%esi, -804(%ebp)
  938       !diagnostic trace routine (diagnose&1 # 0)
  939       %INTEGER a
  940       %ROUTINE show(%INTEGER a)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$300, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -300(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
		.LBB576:
  941          %IF 0 < a < 130 %START
				movl	8(%ebp), %eax
				movl	%eax, -288(%ebp)
				cmpl	$0, -288(%ebp)
				jle	.L352
				cmpl	$129, -288(%ebp)
				jg	.L353
		.LBE576:
		.LBB577:
		.LBB578:
				call	_imp_space@PLT
		.LBE578:
		.LBE577:
		.LBB579:
				nop
				jmp	.L351
		.L353:
				nop
		.L351:
		.LBE582:
  942             space
  943             printstring(text(a))
				movl	(%esi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				movl	8(%ebp), %edx
				sall	$8, %edx
				addl	%edx, %eax
				leal	78896(%eax), %edx
				leal	-284(%ebp), %eax
				addl	$8, %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-284(%ebp), %edx
				leal	-284(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
		.LBE579:
		.LBB580:
		.LBB581:
				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
		.LBE581:
		.LBE580:
  944          %FINISH %ELSE write(a, 3)
				jmp	.L348
		.L346:
		.L352:
		.LBB582:
				subl	$8, %esp
				pushl	$3
				pushl	8(%ebp)
				call	_imp_writeint@PLT
				addl	$16, %esp
		.L348:
  945       %END
				nop
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L350
				call	__stack_chk_fail_local
		.L350:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE203:
				.section	.rodata
				.align 32
		.LC41:
				.byte	2
				.string	" ["
				.zero	252
		TRACEANALYSIS.6614:
		.LFB202:
  946       %OWNINTEGER la1=0, la2=0, lsa=0, lt=0
  947       newline %IF mon pos # pos %AND sym # nl
				movl	MONPOS.6095@GOTOFF(%ebx), %edx
				movl	POS.6145@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				je	.L368
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				je	.L369
		.LBB583:
		.LBB584:
				call	_imp_newline@PLT
				jmp	.L356
		.L368:
		.LBE584:
		.LBE583:
				nop
				jmp	.L356
		.L369:
				nop
		.L356:
  948       mon pos = pos
				movl	POS.6145@GOTOFF(%ebx), %eax
				movl	%eax, MONPOS.6095@GOTOFF(%ebx)
  949       write(g, 3)
				movl	G.6116@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$3
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB585:
		.LBB586:
				call	_imp_space@PLT
		.LBE586:
		.LBE585:
		.LBB587:
  950       space
  951       printstring(text(class))
				movl	CLASS.6077@GOTOFF(%ebx), %edx
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				sall	$8, %edx
				addl	%edx, %eax
				leal	78896(%eax), %edx
				leal	-284(%ebp), %eax
				addl	$8, %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-284(%ebp), %edx
				leal	-540(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
		.LBE587:
		.LBB588:
		.LBB589:
				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	_imp_printstring@PLT
				addl	$256, %esp
				movb	$34, -812(%ebp)
		.LBE589:
		.LBE588:
		.LBB590:
		.LBB591:
				movsbl	-812(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.L358:
		.LBE591:
		.LBE590:
  952       printsymbol('"') %IF gg&trans bit # 0
  953       a = gg>>8&15
				movl	GG.6117@GOTOFF(%ebx), %eax
				shrl	$8, %eax
				andl	$15, %eax
				movl	%eax, -808(%ebp)
  954       %IF a # 0 %START
				cmpl	$0, -808(%ebp)
				je	.L370
				movb	$123, -811(%ebp)
		.LBB592:
		.LBB593:
				movsbl	-811(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE593:
		.LBE592:
				nop
		.L360:
  955          printsymbol('{')
  956          write(a, 0)
				subl	$8, %esp
				pushl	$0
				pushl	-808(%ebp)
				call	_imp_writeint@PLT
				addl	$16, %esp
				movb	$125, -810(%ebp)
		.LBB594:
		.LBB595:
				movsbl	-810(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
				jmp	.L360
		.L370:
		.LBE595:
		.LBE594:
  957          printsymbol('}')
  958       %FINISH
  959       %IF atom1 # la1 %OR atom2 # la2 %OR lsa # subatom %C
				movl	ATOM1.6079@GOTOFF(%ebx), %edx
				movl	LA1.6625@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				jne	.L371
				movl	ATOM2.6080@GOTOFF(%ebx), %edx
				movl	LA2.6626@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				jne	.L372
				movl	LSA.6627@GOTOFF(%ebx), %edx
				movl	SUBATOM.6081@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				jne	.L373
				movl	LT.6628@GOTOFF(%ebx), %edx
				movl	TYPE.6082@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				je	.L374
				jmp	.L362
		.L371:
				nop
				jmp	.L362
		.L372:
				nop
				jmp	.L362
		.L373:
				nop
		.L362:
		.LBB596:
				nop
		.L365:
		.LBB601:
		.LBB602:
				call	_imp_newline@PLT
		.LBE602:
		.LBE601:
  960                       %OR lt # type %START
  961          printstring(" [")
				leal	-284(%ebp), %eax
				leal	.LC41@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
				leal	-284(%ebp), %eax
				leal	-796(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE596:
		.LBB597:
		.LBB598:
				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
		.LBE598:
		.LBE597:
  962          la1 = atom1
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				movl	%eax, LA1.6625@GOTOFF(%ebx)
  963          show(la1)
				movl	LA1.6625@GOTOFF(%ebx), %edx
				subl	$12, %esp
				leal	-804(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	SHOW.6618
				addl	$16, %esp
  964          la2 = atom2
				movl	ATOM2.6080@GOTOFF(%ebx), %eax
				movl	%eax, LA2.6626@GOTOFF(%ebx)
  965          show(la2)
				movl	LA2.6626@GOTOFF(%ebx), %edx
				subl	$12, %esp
				leal	-804(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	SHOW.6618
				addl	$16, %esp
  966          lsa = subatom
				movl	SUBATOM.6081@GOTOFF(%ebx), %eax
				movl	%eax, LSA.6627@GOTOFF(%ebx)
  967          write(lsa, 3)
				movl	LSA.6627@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$3
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
  968          lt = type
				movl	TYPE.6082@GOTOFF(%ebx), %eax
				movl	%eax, LT.6628@GOTOFF(%ebx)
  969          write(lt, 5)
				movl	LT.6628@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$5
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
				movb	$93, -809(%ebp)
		.LBB599:
		.LBB600:
				movsbl	-809(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
				jmp	.L365
		.L374:
		.LBE600:
		.LBE599:
  970          printsymbol(']')
  971       %FINISH
  972       newline
  973    %END
				nop
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L367
				call	__stack_chk_fail_local
		.L367:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE202:
				.section	.rodata
				.align 4
		.LC97:
				.string	"->ACT(%d) out of bounds at %s line %d"
				.align 4
		.LC98:
				.string	"switch jump to undefined label ACT(%d): at %s line %d"
				.align 4
		.LC99:
				.string	"->PACTION(%d) out of bounds at %s line %d"
				.align 4
		.LC100:
				.string	"switch jump to undefined label PACTION(%d): at %s line %d"
				.align 32
		.LC24:
				.byte	4
				.string	" gg="
				.zero	250
				.align 32
		.LC25:
				.byte	24
				.string	"gg = gram(g) = -1 ... g="
				.zero	230
				.align 32
		.LC29:
				.byte	7
				.string	"Atom1 ="
				.zero	247
				.align 32
		.LC30:
				.byte	9
				.string	"  Atom2 ="
				.zero	245
				.align 32
		.LC31:
				.byte	11
				.string	"  subatom ="
				.zero	243
				.align 32
		.LC32:
				.byte	6
				.string	"Type ="
				.zero	248
				.align 32
		.LC33:
				.byte	10
				.string	"   Ptype ="
				.zero	244
				.align 32
		.LC34:
				.byte	5
				.string	"App ="
				.zero	249
				.align 32
		.LC35:
				.byte	9
				.string	"   Papp ="
				.zero	245
				.align 32
		.LC36:
				.byte	8
				.string	"Format ="
				.zero	246
				.align 32
		.LC37:
				.byte	12
				.string	"   Pformat ="
				.zero	242
		ANALYSE.6327:
		.LFB201:
  974
  975 %ROUTINE read sym
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$1020, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, -1024(%ebp)
				movl	%ecx, -1020(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -1000(%ebp)
  976
  977 %routine get next source char
				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)
  978   %externalroutinespec readrecord(%integername len, %bytename b)
  979    %owninteger len=0
  980    %if sym = nl %start
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				jne	.L555
				nop
		.L551:
  981       current char == char(1)
				leal	1+CHAR.6153@GOTOFF(%ebx), %eax
				movl	%eax, CURRENTCHAR.6152@GOTOFF(%ebx)
  982       readrecord (len, current char)                    ;! BUG??? readrecord reads from tanks but there are none to be read from in pass1.
				movl	CURRENTCHAR.6152@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	%eax
				leal	LEN.6647@GOTOFF(%ebx), %eax
				pushl	%eax
				call	READRECORD@PLT
				addl	$16, %esp
  983       len = len + 1
				movl	LEN.6647@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, LEN.6647@GOTOFF(%ebx)
  984       char(len) = nl
				movl	LEN.6647@GOTOFF(%ebx), %eax
				movb	$10, CHAR.6153@GOTOFF(%ebx,%eax)
  985       pos = 0
				movl	$0, POS.6145@GOTOFF(%ebx)
  986       column = 0;           !???????????????????????????????????
				movl	$0, COLUMN.6093@GOTOFF(%ebx)
				jmp	.L551
		.L555:
  987    %finish
  988    pos = pos + 1
				movl	POS.6145@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, POS.6145@GOTOFF(%ebx)
  989    sym = current char
				movl	CURRENTCHAR.6152@GOTOFF(%ebx), %eax
				movzbl	(%eax), %eax
				movzbl	%al, %eax
				movl	%eax, SYM.6096@GOTOFF(%ebx)
  990 !!   current char == BYTEINTEGER(ADDR(current char)+1) ; !! WAS  ++ 1
  991    current char == current char++1
				movl	CURRENTCHAR.6152@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, CURRENTCHAR.6152@GOTOFF(%ebx)
  992    printsymbol(sym) %if list <= 0
				movl	LIST.6160@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jg	.L556
				movl	SYM.6096@GOTOFF(%ebx), %eax
				movsbl	%al, %eax
				movb	%al, -9(%ebp)
		.LBB656:
		.LBB657:
				movsbl	-9(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
				jmp	.L553
		.L556:
		.LBE657:
		.LBE656:
				nop
		.L553:
  993    column = column + 1
				movl	COLUMN.6093@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, COLUMN.6093@GOTOFF(%ebx)
  994 %end
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE205:
				.section	.rodata
				.align 32
		.LC39:
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	10
				.byte	0
				.byte	3
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	0
				.byte	33
				.byte	34
				.byte	35
				.byte	36
				.byte	1
				.byte	38
				.byte	39
				.byte	40
				.byte	41
				.byte	42
				.byte	43
				.byte	44
				.byte	45
				.byte	46
				.byte	47
				.byte	48
				.byte	49
				.byte	50
				.byte	51
				.byte	52
				.byte	53
				.byte	54
				.byte	55
				.byte	56
				.byte	57
				.byte	58
				.byte	59
				.byte	60
				.byte	61
				.byte	62
				.byte	63
				.byte	64
				.byte	65
				.byte	66
				.byte	67
				.byte	68
				.byte	69
				.byte	70
				.byte	71
				.byte	72
				.byte	73
				.byte	74
				.byte	75
				.byte	76
				.byte	77
				.byte	78
				.byte	79
				.byte	80
				.byte	81
				.byte	82
				.byte	83
				.byte	84
				.byte	85
				.byte	86
				.byte	87
				.byte	88
				.byte	89
				.byte	90
				.byte	91
				.byte	92
				.byte	93
				.byte	94
				.byte	95
				.byte	96
				.byte	65
				.byte	66
				.byte	67
				.byte	68
				.byte	69
				.byte	70
				.byte	71
				.byte	72
				.byte	73
				.byte	74
				.byte	75
				.byte	76
				.byte	77
				.byte	78
				.byte	79
				.byte	80
				.byte	81
				.byte	82
				.byte	83
				.byte	84
				.byte	85
				.byte	86
				.byte	87
				.byte	88
				.byte	89
				.byte	90
				.byte	2
				.byte	124
				.byte	125
				.byte	126
				.byte	0
				.align 32
		.LC40:
				.byte	2
				.string	" &"
				.zero	252
		READSYM.6639:
		.LFB204:
  995
  996 %CONSTBYTEINTEGERARRAY mapped(0:127) = %C
				leal	-156(%ebp), %eax
				leal	.LC39@GOTOFF(%ebx), %edx
				movl	$32, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-992(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-156(%ebp), %eax
				movl	%eax, -992(%ebp)
				movl	$1, -988(%ebp)
  997    0,  0,  0,  0,   0,  0,  0,  0,    0,  0, nl,  0,  3 ,  0,  0,  0,
  998    0,  0,  0,  0,   0,  0,  0,  0,    0,  0,  0,  0,   0,  0,  0,  0,
  999   0 ,'!','"','#', '$', 1 ,'&', 39,  '(',')','*','+', ',','-','.','/',
 1000  '0','1','2','3', '4','5','6','7',  '8','9',':',';', '<','=','>','?',
 1001  '@','A','B','C', 'D','E','F','G',  'H','I','J','K', 'L','M','N','O',
 1002  'P','Q','R','S', 'T','U','V','W',  'X','Y','Z','[', '\',']','^','_',
 1003  '`','A','B','C', 'D','E','F','G',  'H','I','J','K', 'L','M','N','O',
 1004  'P','Q','R','S', 'T','U','V','W',  'X','Y','Z', 2 , '|','}','~',  0
 1005
 1006 !!   0 = space
 1007 !!   1 = %
 1008 !!   2 = {
 1009 !!   3 = ff
 1010 !!   other values represent themselves
 1011
 1012    %IF sym = nl %START
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				jne	.L607
				nop
				jmp	.L574
		.L618:
 1013 s1:   lines = lines+1
				nop
		.L558:
				movl	LINES.6088@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, LINES.6088@GOTOFF(%ebx)
 1014       printsymbol(end mark) %if end mark # 0
				movl	ENDMARK.6099@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L608
				movl	ENDMARK.6099@GOTOFF(%ebx), %eax
				movsbl	%al, %eax
				movb	%al, -1003(%ebp)
		.LBB658:
		.LBB659:
				movsbl	-1003(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
				jmp	.L562
		.L561:
		.L608:
		.LBE659:
		.LBE658:
				nop
		.L562:
 1015 s11:  pos = 0;  pos1 = 0;  pos2 = 0;  margin = 0;  column = 0
				movl	$0, POS.6145@GOTOFF(%ebx)
				movl	$0, POS1.6143@GOTOFF(%ebx)
				movl	$0, POS2.6144@GOTOFF(%ebx)
				movl	$0, MARGIN.6090@GOTOFF(%ebx)
				movl	$0, COLUMN.6093@GOTOFF(%ebx)
 1016       end mark = 0
				movl	$0, ENDMARK.6099@GOTOFF(%ebx)
 1017       %IF list <= 0 %START
				movl	LIST.6160@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jg	.L609
				nop
				jmp	.L573
		.L611:
 1018          %IF include # 0 %START
				movl	INCLUDE.6131@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L610
		.LBB660:
				nop
 1019             printstring(" &");  write(lines, -4)
				leal	-924(%ebp), %eax
				leal	.LC40@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-668(%ebp), %eax
				leal	-924(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-412(%ebp), %eax
				leal	-668(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE660:
		.LBB661:
		.LBB662:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-412(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE662:
		.LBE661:
				movl	LINES.6088@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$-4
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
 1020          %FINISH %ELSE  write(lines, 5)
				jmp	.L567
		.L566:
		.L610:
				movl	LINES.6088@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$5
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.L567:
 1021          csym = cont;  printsymbol(csym)
				movl	CONT.6100@GOTOFF(%ebx), %eax
				movl	%eax, CSYM.6101@GOTOFF(%ebx)
				movl	CSYM.6101@GOTOFF(%ebx), %eax
				movsbl	%al, %eax
				movb	%al, -1002(%ebp)
		.LBB663:
		.LBB664:
				movsbl	-1002(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE664:
		.LBE663:
		.LBB665:
		.LBB666:
				call	_imp_space@PLT
		.LBE666:
		.LBE665:
 1022          space
 1023          %IF error margin # 0 %START
				movl	ERRORMARGIN.6091@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L611
				nop
				jmp	.L573
		.L612:
 1024             lines = lines-1
				movl	LINES.6088@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, LINES.6088@GOTOFF(%ebx)
 1025             spaces(error margin)
				movl	ERRORMARGIN.6091@GOTOFF(%ebx), %eax
				movl	%eax, -996(%ebp)
		.LBB667:
		.LBB668:
				subl	$12, %esp
				pushl	-996(%ebp)
				call	_imp_spaces@PLT
				addl	$16, %esp
		.LBE668:
		.LBE667:
 1026             error margin = 0
				movl	$0, ERRORMARGIN.6091@GOTOFF(%ebx)
 1027             %IF error sym # 0 %START
				movl	ERRORSYM.6092@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L612
				nop
				jmp	.L573
		.L616:
 1028                printsymbol(error sym)
				movl	ERRORSYM.6092@GOTOFF(%ebx), %eax
				movsbl	%al, %eax
				movb	%al, -1001(%ebp)
		.LBB669:
		.LBB670:
				movsbl	-1001(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				call	_imp_printsymbol@PLT
				addl	$16, %esp
		.LBE670:
		.LBE669:
 1029                pos = 1;  char(1) = error sym
				movl	$1, POS.6145@GOTOFF(%ebx)
				movl	ERRORSYM.6092@GOTOFF(%ebx), %eax
				movb	%al, 1+CHAR.6153@GOTOFF(%ebx)
 1030                sym = error sym;  error sym = 0
				movl	ERRORSYM.6092@GOTOFF(%ebx), %eax
				movl	%eax, SYM.6096@GOTOFF(%ebx)
				movl	$0, ERRORSYM.6092@GOTOFF(%ebx)
 1031                ->s5
				jmp	.L570
		.L564:
		.L571:
		.L572:
		.L609:
 1032             %FINISH
 1033          %FINISH
 1034       %FINISH
 1035 s2:   symtype = 1
				movl	$1, SYMTYPE.6097@GOTOFF(%ebx)
				jmp	.L574
		.L559:
		.L607:
 1036    %FINISH
 1037 s3:get next source char
				leal	-1000(%ebp), %eax
				movl	%eax, %ecx
				call	GETNEXTSOURCECHAR.6642
		.L570:
 1038 s5:%IF sym # nl %START
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				je	.L613
				nop
				jmp	.L600
		.L619:
 1039       %RETURN %IF quote # 0;                     !dont alter strings
				movl	QUOTE.6098@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L614
				nop
		.L578:
				nop
		.L557:
 1040       sym = mapped(sym&127)
				movl	SYM.6096@GOTOFF(%ebx), %eax
				andl	$127, %eax
				movzbl	-156(%ebp,%eax), %eax
				movzbl	%al, %eax
				movl	%eax, SYM.6096@GOTOFF(%ebx)
 1041       %IF sym <= 3 %START;                       !special symbol
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$3, %eax
				jg	.L615
				nop
		.L581:
 1042          ->s2 %IF sym = 0;                       !space (or dubious control)
				nop
		.L573:
				movl	SYM.6096@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L616
				nop
		.L583:
 1043          symtype = 2 %AND ->s3 %IF sym = 1;      !%
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$1, %eax
				jne	.L617
				movl	$2, SYMTYPE.6097@GOTOFF(%ebx)
				jmp	.L574
		.L617:
				nop
		.L585:
 1044          cont = '+' %AND ->s11 %IF sym = 3;      !ff
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$3, %eax
				je	.L586
				jmp	.L587
		.L586:
				movl	$43, CONT.6100@GOTOFF(%ebx)
				jmp	.L562
		.L587:
		.L588:
 1045          !must be {
 1046          %CYCLE
 1047             get next source char
				leal	-1000(%ebp), %eax
				movl	%eax, %ecx
				call	GETNEXTSOURCECHAR.6642
 1048             ->s3 %IF sym = '}'
				nop
		.L574:
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$125, %eax
				je	.L618
				nop
		.L590:
 1049             ->s4 %IF sym = nl
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				je	.L619
				nop
		.L592:
				nop
		.L600:
 1050          %REPEAT
				jmp	.L587
		.L615:
 1051       %FINISH
 1052       key = kdict(sym)
				movl	SYM.6096@GOTOFF(%ebx), %eax
				leal	-32(%eax), %edx
				movl	-1024(%ebp), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				addl	$38840, %edx
				movzwl	12(%eax,%edx,2), %eax
				cwtl
				movl	%eax, KEY.6599@GOTOFF(%ebx)
 1053       %IF key&3 = 0 %AND symtype = 2 %START;            !keyword
				movl	KEY.6599@GOTOFF(%ebx), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L620
				movl	SYMTYPE.6097@GOTOFF(%ebx), %eax
				cmpl	$2, %eax
				jne	.L621
				nop
				jmp	.L594
		.L621:
				nop
		.L594:
 1054          %IF sym = 'C' %AND current char = nl %START;     !%C...
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$67, %eax
				jne	.L622
				movl	CURRENTCHAR.6152@GOTOFF(%ebx), %eax
				movzbl	(%eax), %eax
				cmpb	$10, %al
				jne	.L623
				nop
				jmp	.L597
		.L623:
				nop
		.L597:
 1055             get next source char;  cont = '+';  ->s1
				leal	-1000(%ebp), %eax
				movl	%eax, %ecx
				call	GETNEXTSOURCECHAR.6642
				movl	$43, CONT.6100@GOTOFF(%ebx)
				jmp	.L558
		.L622:
 1056          %FINISH
 1057       %ELSE
				nop
		.L599:
 1058          symtype = key&3-2
				movl	KEY.6599@GOTOFF(%ebx), %eax
				andl	$3, %eax
				subl	$2, %eax
				movl	%eax, SYMTYPE.6097@GOTOFF(%ebx)
 1059       %FINISH
 1060       %RETURN
				jmp	.L557
		.L620:
				jmp	.L557
		.L576:
		.L613:
 1061    %FINISH
 1062 s4:cont = '+'
				movl	$43, CONT.6100@GOTOFF(%ebx)
 1063    symtype = quote
				movl	QUOTE.6098@GOTOFF(%ebx), %eax
				movl	%eax, SYMTYPE.6097@GOTOFF(%ebx)
 1064 %END
				nop
				jmp	.L557
		.L614:
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L602
				call	__stack_chk_fail_local
		.L602:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE204:
		FORMATSELECTED.6681:
		.LFB206:
 1065
 1066 %INTEGERFN format selected
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$32, %esp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
				movl	%ecx, %ebx
				movl	%ecx, -28(%ebp)
				movl	%gs:20, %esi
				movl	%esi, -12(%ebp)
				xorl	%esi, %esi
 1067    format list = tag(format)_app;          !number of names
				movl	FORMAT.6084@GOTOFF(%eax), %ecx
				movl	4(%ebx), %edx
				movl	68(%edx), %esi
				movl	%ecx, %edx
				addl	%edx, %edx
				addl	%ecx, %edx
				sall	$3, %edx
				addl	%esi, %edx
				addl	$44532, %edx
				movl	(%edx), %edx
				movl	%edx, FORMATLIST.6150@GOTOFF(%eax)
 1068    %IF format list < 0 %START;         !forward ref
				movl	FORMATLIST.6150@GOTOFF(%eax), %edx
				testl	%edx, %edx
				jns	.L632
				nop
		.L626:
 1069       atom1 = error+22
				movl	$32790, ATOM1.6079@GOTOFF(%eax)
 1070       %RESULT = 0
				movl	$0, %eax
				jmp	.L627
		.L632:
 1071    %FINISH
 1072    %IF sym = '_' %START
				movl	SYM.6096@GOTOFF(%eax), %edx
				cmpl	$95, %edx
				jne	.L633
				nop
		.L629:
 1073       escape class = esc rec
				movl	$255, ESCAPECLASS.6105@GOTOFF(%eax)
 1074       search base = tag(format)_format
				movl	FORMAT.6084@GOTOFF(%eax), %ecx
				movl	4(%ebx), %edx
				movl	68(%edx), %ebx
				movl	%ecx, %edx
				addl	%edx, %edx
				addl	%ecx, %edx
				sall	$3, %edx
				addl	%ebx, %edx
				addl	$44536, %edx
				movl	(%edx), %edx
				movl	%edx, SEARCHBASE.6149@GOTOFF(%eax)
				jmp	.L629
		.L633:
 1075    %FINISH
 1076    %RESULT = 1
				movl	$1, %eax
		.L627:
 1077 %END
				movl	-12(%ebp), %esi
				xorl	%gs:20, %esi
				je	.L630
				call	__stack_chk_fail_local
		.L630:
				addl	$32, %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE206:
				.section	.rodata
				.align 32
		.LC38:
				.byte	7
				.string	"lookup:"
				.zero	247
		LOOKUP.6699:
		.LFB208:
 1078
 1079 %ROUTINE code atom(%INTEGER target)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				addl	$-128, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -124(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -12(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -16(%ebp)
				movl	%esi, -20(%ebp)
		.L774:
 1080    %INTEGER dbase, da
 1081    %INTEGER base, n, mul, pend quote
 1082    %INTEGER j,k,l, pt
 1083
 1084    %ROUTINE lookup(%INTEGER d)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$604, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%esi, -608(%ebp)
				movl	%ecx, -604(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
 1085       %CONSTINTEGER magic = 6700421
 1086       %INTEGER new name, vid, k1, k2, form
 1087       %RECORD(tagfm)%NAME t;      !imp77:
 1088       %INTEGER new
 1089
 1090       !first locate the text of the name
 1091
 1092       new = addr(dict(dmax+1))
				movl	DMAX.6126@GOTOFF(%ebx), %edx
				movl	12(%esi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				sall	$2, %edx
				addl	%edx, %eax
				addl	$4, %eax
				movl	%eax, -556(%ebp)
		.LBB671:
		.LBB672:
				movl	-556(%ebp), %eax
		.LBE672:
		.LBE671:
				movl	%eax, -592(%ebp)
 1093
 1094             K2 = hash value*magic
				movl	12(%esi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				movl	8528(%eax), %eax
				imull	$6700421, %eax, %eax
				movl	%eax, -580(%ebp)
 1095
 1096             !*******************************************************
 1097
 1098       k2 = k2>>(32-2*name bits)!1;         !IMP77:
				movl	-580(%ebp), %eax
				shrl	$10, %eax
				orl	$1, %eax
				movl	%eax, -580(%ebp)
 1099       k1 = k2>>name bits;                       !giving name bits
				movl	-580(%ebp), %eax
				shrl	$11, %eax
				movl	%eax, -596(%ebp)
		.L636:
 1100       %CYCLE
 1101          newname = hash(k1)
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				movl	-596(%ebp), %edx
				addl	$36792, %edx
				movzwl	12(%eax,%edx,2), %eax
				cwtl
				movl	%eax, -588(%ebp)
 1102          %EXIT %IF newname = 0;                !not in
				cmpl	$0, -588(%ebp)
				je	.L735
				nop
		.L638:
				nop
		.L639:
 1103          ->in %IF string(addr(dict(newname+1))) = string(new)
				movl	-592(%ebp), %eax
				movl	%eax, -544(%ebp)
		.LBB673:
		.LBB674:
				movl	-544(%ebp), %edx
		.LBE674:
		.LBE673:
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				movl	-588(%ebp), %ecx
				addl	$2132, %ecx
				sall	$2, %ecx
				addl	%ecx, %eax
				addl	$4, %eax
				movl	%eax, -548(%ebp)
		.LBB675:
		.LBB676:
				movl	-548(%ebp), %eax
				movl	%eax, -552(%ebp)
		.LBE676:
		.LBE675:
		.LBB677:
		.LBB678:
				movl	-552(%ebp), %eax
		.LBE678:
		.LBE677:
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_strcmp@PLT
				addl	$16, %esp
				testl	%eax, %eax
				je	.L736
				nop
		.L644:
				nop
		.L645:
 1104          k1 = (k1+k2)&max names
				movl	-596(%ebp), %edx
				movl	-580(%ebp), %eax
				addl	%edx, %eax
				andl	$2047, %eax
				movl	%eax, -596(%ebp)
 1105       %REPEAT
				jmp	.L636
		.L735:
 1106
 1107       ! not found
 1108
 1109       spare names = spare names-1
				movl	SPARENAMES.6046@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, SPARENAMES.6046@GOTOFF(%ebx)
 1110       abandon(2) %IF spare names <= 0
				movl	SPARENAMES.6046@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jg	.L737
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	$2
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L647
		.L737:
				nop
		.L647:
 1111       hash(k1) = dmax;                !put it in
				movl	DMAX.6126@GOTOFF(%ebx), %eax
				movl	%eax, %ecx
				movl	-608(%ebp), %esi
				movl	12(%esi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				movl	-596(%ebp), %edx
				addl	$36792, %edx
				movw	%cx, 12(%eax,%edx,2)
 1112       dict(dmax) = -1
				movl	DMAX.6126@GOTOFF(%ebx), %eax
				leal	-1(%eax), %edx
				movl	12(%esi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				movl	$-1, 4(%eax,%edx,4)
 1113       newname = dmax;  dmax = dp;  ->not in
				movl	DMAX.6126@GOTOFF(%ebx), %eax
				movl	%eax, -588(%ebp)
				movl	DP.6142@GOTOFF(%ebx), %eax
				movl	%eax, DMAX.6126@GOTOFF(%ebx)
				jmp	.L701
		.L736:
 1114
 1115 in:   search base = rbase %IF this >= 0 %AND d # 0;  !record elem defn
				movl	THIS.6120@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				js	.L738
				cmpl	$0, 8(%ebp)
				je	.L739
				movl	RBASE.6123@GOTOFF(%ebx), %eax
				movl	%eax, SEARCHBASE.6149@GOTOFF(%ebx)
				jmp	.L650
		.L738:
				nop
				jmp	.L650
		.L739:
				nop
		.L650:
 1116       %IF search base # 0 %START;               !record subname
				movl	SEARCHBASE.6149@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L740
				nop
		.L653:
 1117          new = -1
				movl	$-1, -592(%ebp)
 1118          x = search base
				movl	SEARCHBASE.6149@GOTOFF(%ebx), %eax
				movl	%eax, X.6078@GOTOFF(%ebx)
		.L654:
 1119          %CYCLE
 1120             ->not in %IF x < format list
				movl	X.6078@GOTOFF(%ebx), %edx
				movl	FORMATLIST.6150@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				jl	.L741
				nop
		.L656:
				nop
				jmp	.L701
		.L743:
 1121             %EXIT %IF tag(x)_text = new name
				movl	X.6078@GOTOFF(%ebx), %edx
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44548, %eax
				movl	(%eax), %eax
				cmpl	%eax, -588(%ebp)
				je	.L742
				nop
		.L658:
				nop
		.L659:
 1122             x = x-1
				movl	X.6078@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, X.6078@GOTOFF(%ebx)
 1123          %REPEAT
				jmp	.L654
		.L742:
 1124       %FINISH %ELSE %START;                                  !hash in for normal names
				jmp	.L662
		.L740:
 1125          x = dict(newname)
				movl	-588(%ebp), %eax
				leal	-1(%eax), %edx
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				movl	%eax, X.6078@GOTOFF(%ebx)
 1126          ->not in %IF x <= limit;         !wrong level
				movl	X.6078@GOTOFF(%ebx), %edx
				movl	LIMIT.6137@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				jle	.L743
		.L660:
				nop
		.L662:
				nop
				jmp	.L701
		.L752:
 1127       %FINISH
 1128
 1129       subatom = x;                            !name found, extract info
				movl	X.6078@GOTOFF(%ebx), %eax
				movl	%eax, SUBATOM.6081@GOTOFF(%ebx)
 1130       t == tag(x)
				movl	X.6078@GOTOFF(%ebx), %edx
				movl	-608(%ebp), %edi
				movl	12(%edi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	$44528, %eax
				addl	%ecx, %eax
				addl	$4, %eax
				movl	%eax, -576(%ebp)
 1131       atom flags = t_flags
				movl	-576(%ebp), %eax
				movl	8(%eax), %eax
				movl	%eax, ATOMFLAGS.6107@GOTOFF(%ebx)
 1132       format = t_format;  app = t_app
				movl	-576(%ebp), %eax
				movl	4(%eax), %eax
				movl	%eax, FORMAT.6084@GOTOFF(%ebx)
				movl	-576(%ebp), %eax
				movl	(%eax), %eax
				movl	%eax, APP.6083@GOTOFF(%ebx)
 1133       protection = atom flags&prot
				movl	ATOMFLAGS.6107@GOTOFF(%ebx), %eax
				andl	$256, %eax
				movl	%eax, PROTECTION.6106@GOTOFF(%ebx)
 1134       type = atom flags>>4&7;  atom1 = amap(atom flags&15)
				movl	ATOMFLAGS.6107@GOTOFF(%ebx), %eax
				shrl	$4, %eax
				andl	$7, %eax
				movl	%eax, TYPE.6082@GOTOFF(%ebx)
				movl	ATOMFLAGS.6107@GOTOFF(%ebx), %eax
				andl	$15, %eax
				movl	%eax, %edx
				movl	12(%edi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				movzbl	78888(%eax,%edx), %eax
				movzbl	%al, %eax
				movl	%eax, ATOM1.6079@GOTOFF(%ebx)
		.LBB679:
 1135
 1136       %IF diag&8 # 0 %START
 1137          printstring("lookup:")
				leal	-284(%ebp), %eax
				leal	.LC38@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
		.LBE679:
		.LBB680:
		.LBB681:
				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
		.LBE681:
		.LBE680:
 1138          write(atom1, 3)
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$3
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
 1139          write(type, 1)
				movl	TYPE.6082@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$1
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
 1140          write(app, 3)
				movl	APP.6083@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$3
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
 1141          write(format, 5)
				movl	FORMAT.6084@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$5
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
 1142          write(atom flags, 3)
				movl	ATOMFLAGS.6107@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$3
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB682:
		.LBB683:
				call	_imp_newline@PLT
		.L663:
		.LBE683:
		.LBE682:
 1143          newline
 1144       %FINISH
 1145
 1146       %IF d = 0 %START;                                !old name wanted
				cmpl	$0, 8(%ebp)
				jne	.L744
				nop
		.L665:
 1147          t_flags <- t_flags!used bit
				movl	-576(%ebp), %eax
				movl	8(%eax), %eax
				orb	$-128, %ah
				movl	%eax, %edx
				movl	-576(%ebp), %eax
				movl	%edx, 8(%eax)
 1148          search base = 0
				movl	$0, SEARCHBASE.6149@GOTOFF(%ebx)
 1149
 1150          %IF atom flags&subname # 0 %AND format # 0 %START; !a record
				movl	FORMAT.6084@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L745
				nop
		.L725:
 1151             %RETURN %IF format selected = 0
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	%eax, %ecx
				call	FORMATSELECTED.6681
				testl	%eax, %eax
				je	.L746
				jmp	.L725
		.L667:
		.L670:
		.L745:
				nop
				jmp	.L634
		.L761:
 1152          %FINISH
 1153
 1154          %IF atom flags&parameters # 0 %START;        !proc or array
 1155
 1156             %IF app = 0 %START;                  !no parameters needed
				movl	APP.6083@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L747
				nop
		.L672:
 1157                atom2 = atom1
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				movl	%eax, ATOM2.6080@GOTOFF(%ebx)
 1158                atom1 = atom1-4
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				subl	$4, %eax
				movl	%eax, ATOM1.6079@GOTOFF(%ebx)
		.LBB684:
 1159                %IF 97 <= atom1 <= 98 %START
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				movl	%eax, -572(%ebp)
				cmpl	$96, -572(%ebp)
				jle	.L748
				cmpl	$98, -572(%ebp)
				jg	.L749
		.LBE684:
				nop
				jmp	.L681
		.L749:
				nop
		.L674:
		.LBE685:
 1160                   map gg = atom1;  atom1 = var
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				movl	%eax, MAPGG.6118@GOTOFF(%ebx)
				movl	$91, ATOM1.6079@GOTOFF(%ebx)
 1161                %FINISH
 1162             %FINISH %ELSE %START
				jmp	.L681
		.L748:
		.LBB685:
				jmp	.L681
		.L747:
 1163                %IF sym = '(' %START
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$40, %eax
				jne	.L750
				nop
		.L681:
 1164                   search base = 0;                  !ignore format for now
				movl	$0, SEARCHBASE.6149@GOTOFF(%ebx)
 1165                   %IF atom1 >= 106 %START;             !arrays
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				cmpl	$105, %eax
				jle	.L751
				nop
		.L679:
 1166                      app = phrase(app+200)
				movl	APP.6083@GOTOFF(%ebx), %eax
				movzwl	PHRASE.6172@GOTOFF(%ebx,%eax,2), %eax
				cwtl
				movl	%eax, APP.6083@GOTOFF(%ebx)
 1167                      escape class = esc array
				movl	$254, ESCAPECLASS.6105@GOTOFF(%ebx)
 1168                      atom1 = (atom1-106)>>1+91;     !a,an->v  na,nan->n
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				subl	$106, %eax
				shrl	%eax
				addl	$91, %eax
				movl	%eax, ATOM1.6079@GOTOFF(%ebx)
 1169                   %FINISH %ELSE %START;                            !procedures
				jmp	.L680
		.L751:
 1170                      escape class = esc proc
				movl	$253, ESCAPECLASS.6105@GOTOFF(%ebx)
 1171                      atom1 = atom1-4
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				subl	$4, %eax
				movl	%eax, ATOM1.6079@GOTOFF(%ebx)
		.L680:
 1172                   %FINISH
 1173                   phrase(200) = app
				movl	APP.6083@GOTOFF(%ebx), %eax
				movw	%ax, PHRASE.6172@GOTOFF(%ebx)
				jmp	.L681
		.L676:
		.L750:
 1174                %FINISH
 1175             %FINISH
 1176             pos2 = pos;  %return
				movl	POS.6145@GOTOFF(%ebx), %eax
				movl	%eax, POS2.6144@GOTOFF(%ebx)
				jmp	.L634
		.L744:
 1177          %FINISH
 1178
 1179          !deal with constintegers etc
 1180
 1181          %IF atom flags&const bit # 0 %AND atom1 = var %START
 1182                map gg = const;  atom2 = const
 1183                subatom = -subatom %IF type = integer
 1184          %FINISH
 1185          %RETURN
 1186
 1187       %FINISH
 1188                                                  !new name wanted
 1189       ->not in %IF tbase # tstart;               !dont fault proc parm-parm
				movl	-608(%ebp), %esi
				movl	12(%esi), %eax
				movl	4(%eax), %eax
				movl	60(%eax), %edx
				movl	12(%esi), %eax
				movl	4(%eax), %eax
				movl	64(%eax), %eax
				cmpl	%eax, %edx
				jne	.L752
				nop
		.L683:
				nop
				jmp	.L701
		.L762:
 1190       %IF d = lab+spec+used bit %START
				cmpl	$32899, 8(%ebp)
				jne	.L753
				nop
 1191          t_flags = t_flags!used bit
				movl	-576(%ebp), %eax
				movl	8(%eax), %eax
				orb	$-128, %ah
				movl	%eax, %edx
				movl	-576(%ebp), %eax
				movl	%edx, 8(%eax)
 1192          %RETURN
				jmp	.L634
		.L685:
		.L753:
 1193       %FINISH
 1194       %IF atom flags&spec # 0 %START;                 !a spec has been given
 1195          %IF d = lab %START;                     !define label
				cmpl	$3, 8(%ebp)
				jne	.L754
				nop
		.L687:
		.LBB686:
 1196             t_flags <- lab!used bit
				movl	-576(%ebp), %eax
				movl	$32771, 8(%eax)
 1197             %RETURN
				jmp	.L634
		.L754:
 1198          %FINISH
 1199          %IF 7 <= decl&15 <= 10 %AND decl&spec = 0 %START
				movl	DECL.6102@GOTOFF(%ebx), %eax
				andl	$15, %eax
				movl	%eax, -568(%ebp)
				cmpl	$6, -568(%ebp)
				jle	.L755
				cmpl	$10, -568(%ebp)
				jg	.L756
		.LBE686:
				movl	DECL.6102@GOTOFF(%ebx), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L757
				nop
				jmp	.L693
		.L756:
				nop
				jmp	.L693
		.L757:
		.LBE687:
				nop
				jmp	.L693
		.L758:
 1200
 1201             !procedure definition after spec
 1202
 1203             %IF (decl!!atom flags)&2_1111111 = 0 %START;  !correct type?
				movl	DECL.6102@GOTOFF(%ebx), %edx
				movl	ATOMFLAGS.6107@GOTOFF(%ebx), %eax
				xorl	%edx, %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L758
				nop
		.L693:
 1204                t_flags = t_flags-spec
				movl	-576(%ebp), %eax
				movl	8(%eax), %eax
				leal	-128(%eax), %edx
				movl	-576(%ebp), %eax
				movl	%edx, 8(%eax)
 1205                spec given = 1
				movl	$1, SPECGIVEN.6104@GOTOFF(%ebx)
 1206                %RETURN
				jmp	.L634
		.L689:
		.L755:
		.LBB687:
 1207             %FINISH
 1208
 1209             !note that an external procedure must be speced as a
 1210             !non-external procedure.
 1211
 1212          %FINISH
 1213          %IF decl&15 = recfm %START;                   !recordformat
				movl	DECL.6102@GOTOFF(%ebx), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L759
				nop
		.L696:
 1214             t_flags = record<<4+recfm
				movl	-576(%ebp), %eax
				movl	$68, 8(%eax)
 1215             t_format = fdef
				movl	FDEF.6119@GOTOFF(%ebx), %edx
				movl	-576(%ebp), %eax
				movl	%edx, 4(%eax)
 1216             %RETURN
				jmp	.L634
		.L695:
		.L759:
 1217          %FINISH
 1218       %FINISH
 1219       %RETURN %IF last1 = jump %AND atom1 = swit
				movl	LAST1.6110@GOTOFF(%ebx), %eax
				cmpl	$54, %eax
				jne	.L760
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				cmpl	$105, %eax
				je	.L761
				jmp	.L698
		.L760:
				nop
		.L698:
				nop
				jmp	.L634
		.L763:
 1220       copy = pos1 %IF copy = 0
				movl	COPY.6138@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L762
				movl	POS1.6143@GOTOFF(%ebx), %eax
				movl	%eax, COPY.6138@GOTOFF(%ebx)
				jmp	.L701
		.L648:
		.L741:
				nop
		.L701:
 1221
 1222 notin:app = 0;  vid = 0
				movl	$0, APP.6083@GOTOFF(%ebx)
				movl	$0, -584(%ebp)
 1223       atom1 = error+2
				movl	$32770, ATOM1.6079@GOTOFF(%ebx)
 1224
 1225       %return %if d = 0;                               !old name wanted
				cmpl	$0, 8(%ebp)
				je	.L763
				nop
		.L703:
				nop
		.L634:
 1226       type = d>>4&7;  form = d&15;  atom1 = amap(form)
				movl	8(%ebp), %eax
				shrl	$4, %eax
				andl	$7, %eax
				movl	%eax, TYPE.6082@GOTOFF(%ebx)
				movl	8(%ebp), %eax
				andl	$15, %eax
				movl	%eax, -564(%ebp)
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %edx
				movl	-564(%ebp), %eax
				addl	%edx, %eax
				addl	$78888, %eax
				movzbl	(%eax), %eax
				movzbl	%al, %eax
				movl	%eax, ATOM1.6079@GOTOFF(%ebx)
 1227
 1228       %IF this < 0 %START;                       !normal scope
				movl	THIS.6120@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jns	.L764
				nop
		.L705:
 1229          new = newname
				movl	-588(%ebp), %eax
				movl	%eax, -592(%ebp)
 1230          tmax = tmax+1;  x = tmax
				movl	-608(%ebp), %edi
				movl	12(%edi), %eax
				movl	4(%eax), %eax
				movl	56(%eax), %edx
				movl	12(%edi), %eax
				movl	4(%eax), %eax
				addl	$1, %edx
				movl	%edx, 56(%eax)
				movl	12(%edi), %eax
				movl	4(%eax), %eax
				movl	56(%eax), %eax
				movl	%eax, X.6078@GOTOFF(%ebx)
 1231       %FINISH %ELSE %START;                      !recordformat scope
				jmp	.L706
		.L764:
 1232          new = -1
				movl	$-1, -592(%ebp)
 1233          recid = recid-1;  vid = recid
				movl	-608(%ebp), %esi
				movl	12(%esi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				movl	8524(%eax), %edx
				movl	12(%esi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				subl	$1, %edx
				movl	%edx, 8524(%eax)
				movl	12(%esi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				movl	8524(%eax), %eax
				movl	%eax, -584(%ebp)
 1234          tmin = tmin-1;  x = tmin
				movl	TMIN.6127@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, TMIN.6127@GOTOFF(%ebx)
				movl	TMIN.6127@GOTOFF(%ebx), %eax
				movl	%eax, X.6078@GOTOFF(%ebx)
 1235          format list = tmin
				movl	TMIN.6127@GOTOFF(%ebx), %eax
				movl	%eax, FORMATLIST.6150@GOTOFF(%ebx)
		.L706:
		.LBB688:
 1236       %FINISH
 1237
 1238       %IF 11 <= form <= 14 %START;                     !arrays
				movl	-564(%ebp), %eax
				movl	%eax, -560(%ebp)
				cmpl	$10, -560(%ebp)
				jle	.L765
				cmpl	$14, -560(%ebp)
				jg	.L766
		.LBE688:
				nop
				jmp	.L708
		.L766:
				nop
		.L708:
		.LBE689:
 1239          dim = 1 %IF dim = 0;           !set dim for owns
				movl	DIM.6103@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L767
				movl	$1, DIM.6103@GOTOFF(%ebx)
				jmp	.L711
		.L767:
				nop
		.L711:
 1240          app = dim
				movl	DIM.6103@GOTOFF(%ebx), %eax
				movl	%eax, APP.6083@GOTOFF(%ebx)
				jmp	.L708
		.L765:
		.LBB689:
 1241       %FINISH
 1242
 1243       d = d!used bit %IF (otype > 2 %AND d&spec = 0) %OR perm # 0
				movl	OTYPE.6108@GOTOFF(%ebx), %eax
				cmpl	$2, %eax
				nop
		.L713:
				movl	PERM.6132@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L768
				nop
		.L714:
				orl	$32768, 8(%ebp)
				jmp	.L715
		.L768:
				nop
		.L715:
 1244
 1245       !external definitions need not be used in the file in which
 1246       !they are defined, so inhibit a useless unused warning.
 1247
 1248       t == tag(x)
				movl	X.6078@GOTOFF(%ebx), %edx
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	$44528, %eax
				addl	%ecx, %eax
				addl	$4, %eax
				movl	%eax, -576(%ebp)
 1249       %IF form = lab %START
				cmpl	$3, -564(%ebp)
				jne	.L769
				nop
		.L717:
 1250          id = id+1;  vid = id
				movl	-608(%ebp), %edi
				movl	12(%edi), %eax
				movl	4(%eax), %eax
				movl	48(%eax), %edx
				movl	12(%edi), %eax
				movl	4(%eax), %eax
				addl	$1, %edx
				movl	%edx, 48(%eax)
				movl	12(%edi), %eax
				movl	4(%eax), %eax
				movl	48(%eax), %eax
				movl	%eax, -584(%ebp)
				jmp	.L717
		.L769:
 1251       %FINISH
 1252       t_index = vid
				movl	-576(%ebp), %eax
				movl	-584(%ebp), %edx
				movl	%edx, 12(%eax)
 1253       t_text   = new name
				movl	-576(%ebp), %eax
				movl	-588(%ebp), %edx
				movl	%edx, 16(%eax)
 1254       t_flags <- d
				movl	-576(%ebp), %eax
				movl	8(%ebp), %edx
				movl	%edx, 8(%eax)
 1255       t_app    = app
				movl	APP.6083@GOTOFF(%ebx), %edx
				movl	-576(%ebp), %eax
				movl	%edx, (%eax)
 1256       t_format = fdef;  format = fdef
				movl	FDEF.6119@GOTOFF(%ebx), %edx
				movl	-576(%ebp), %eax
				movl	%edx, 4(%eax)
				movl	FDEF.6119@GOTOFF(%ebx), %eax
				movl	%eax, FORMAT.6084@GOTOFF(%ebx)
 1257       subatom = x
				movl	X.6078@GOTOFF(%ebx), %eax
				movl	%eax, SUBATOM.6081@GOTOFF(%ebx)
 1258
 1259       %IF new >= 0 %START;                             !insert into hash table
				cmpl	$0, -592(%ebp)
				js	.L770
				nop
				jmp	.L721
		.L771:
 1260          t_link = dict(new);  dict(new) = x
				movl	-592(%ebp), %eax
				leal	-1(%eax), %edx
				movl	-608(%ebp), %edi
				movl	12(%edi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %edx
				movl	-576(%ebp), %eax
				movl	%edx, 20(%eax)
				movl	-592(%ebp), %eax
				leal	-1(%eax), %ecx
				movl	X.6078@GOTOFF(%ebx), %edx
				movl	12(%edi), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				addl	$2132, %ecx
				movl	%edx, 4(%eax,%ecx,4)
 1261          %IF gmin = max grammar %START;                !proc param params
				movl	GMIN.6125@GOTOFF(%ebx), %eax
				cmpl	$1800, %eax
				jne	.L771
				nop
		.L721:
 1262             tmin = tmin-1;  subatom = tmin
				movl	TMIN.6127@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, TMIN.6127@GOTOFF(%ebx)
				movl	TMIN.6127@GOTOFF(%ebx), %eax
				movl	%eax, SUBATOM.6081@GOTOFF(%ebx)
 1263             tag(tmin) = t
				movl	TMIN.6127@GOTOFF(%ebx), %edx
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				leal	44528(%eax), %edx
				movl	-576(%ebp), %eax
				movl	(%eax), %ecx
				movl	%ecx, 4(%edx)
				movl	4(%eax), %ecx
				movl	%ecx, 8(%edx)
				movl	8(%eax), %ecx
				movl	%ecx, 12(%edx)
				movl	12(%eax), %ecx
				movl	%ecx, 16(%edx)
				movl	16(%eax), %ecx
				movl	%ecx, 20(%edx)
				movl	20(%eax), %eax
				movl	%eax, 24(%edx)
				jmp	.L721
		.L719:
		.L770:
 1264          %FINISH
 1265       %FINISH
 1266       abandon(3) %IF tmax >= tmin
				movl	TMIN.6127@GOTOFF(%ebx), %edx
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	4(%eax), %eax
				movl	56(%eax), %eax
				cmpl	%edx, %eax
				jl	.L772
				movl	-608(%ebp), %eax
				movl	12(%eax), %eax
				movl	4(%eax), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	$3
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				nop
		.L723:
 1267    %END
				jmp	.L723
		.L772:
				nop
				jmp	.L634
		.L746:
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L724
				call	__stack_chk_fail_local
		.L724:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE208:
		CODEATOM.6686:
		.LFB207:
 1268
 1269
 1270
 1271 top:  pos1 = pos
				movl	POS.6145@GOTOFF(%ebx), %eax
				movl	%eax, POS1.6143@GOTOFF(%ebx)
 1272       subatom = 0;  pend quote = 0
				movl	$0, SUBATOM.6081@GOTOFF(%ebx)
				movl	$0, -96(%ebp)
 1273
 1274       !app and format must be left for assigning to papp & pformat
 1275
 1276       ->name %IF symtype = -2;                   !letter
				movl	SYMTYPE.6097@GOTOFF(%ebx), %eax
				cmpl	$-2, %eax
				je	.L917
				nop
		.L776:
				nop
		.L777:
		.LBB706:
 1277       ->number %IF symtype < 0;                  !digit
				movl	SYMTYPE.6097@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				js	.L918
				nop
		.L779:
				nop
				jmp	.L780
		.L926:
 1278       %IF symtype = 0 %START
				movl	SYMTYPE.6097@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L919
				nop
		.L782:
 1279          atom1 = termin;  atom2 = 0
				movl	$20, ATOM1.6079@GOTOFF(%ebx)
				movl	$0, ATOM2.6080@GOTOFF(%ebx)
 1280          %RETURN
				jmp	.L773
		.L919:
 1281       %FINISH
 1282       %IF symtype # 2 %START;                    !catch keywords here
				movl	SYMTYPE.6097@GOTOFF(%ebx), %eax
				cmpl	$2, %eax
				je	.L920
				nop
				jmp	.L798
		.L924:
 1283          ->text %IF quote # 0;                   !completion of text
				movl	QUOTE.6098@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L921
				nop
		.L787:
				nop
		.L788:
 1284          ->strings %IF sym = squote;             !start of string
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$34, %eax
				je	.L922
				nop
		.L790:
				nop
		.L791:
 1285          ->symbols %IF sym = cquote;             !start of symbol
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$39, %eax
				je	.L923
				nop
		.L793:
				nop
				jmp	.L794
		.L956:
 1286          ->number %IF sym = '.' %AND '0' <= current char <= '9'
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$46, %eax
				jne	.L924
		.LBB690:
				movl	CURRENTCHAR.6152@GOTOFF(%ebx), %eax
				movzbl	(%eax), %eax
				movb	%al, -105(%ebp)
				cmpb	$47, -105(%ebp)
				jbe	.L925
				cmpb	$57, -105(%ebp)
				jbe	.L926
				jmp	.L798
		.L785:
		.L920:
		.LBE690:
				nop
				jmp	.L798
		.L925:
		.LBB691:
				nop
		.L798:
		.LBE691:
				nop
		.L780:
 1287       %FINISH
 1288
 1289                                                  !locate atom in fixed dict
 1290       k = key>>2;  read sym
				movl	KEY.6599@GOTOFF(%ebx), %eax
				shrl	$2, %eax
				movl	%eax, -92(%ebp)
				movl	%esi, %ecx
				call	READSYM.6639
		.L799:
 1291       %CYCLE
 1292          j = kdict(k)
				movl	-92(%ebp), %eax
				leal	-32(%eax), %edx
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				addl	$38840, %edx
				movzwl	12(%eax,%edx,2), %eax
				cwtl
				movl	%eax, -80(%ebp)
 1293          %EXIT %IF j&16_4000 # 0
				nop
		.L800:
 1294          %IF j&127 # sym %OR symtype < 0 %START
 1295             ->err %UNLESS j < 0
 1296             k = k+1
 1297          %FINISH %ELSE %START
 1298             l = j>>7&127;  read sym
 1299             %IF j > 0 %START
 1300                %IF l # 0 %START
 1301                   ->err %IF l # sym %OR symtype < 0
 1302                   read sym
 1303                %FINISH
 1304                l = 1
 1305             %FINISH
 1306             k = k+l
 1307          %FINISH
 1308       %REPEAT
 1309       atom1 = j&127
				movl	-80(%ebp), %eax
				andl	$127, %eax
				movl	%eax, ATOM1.6079@GOTOFF(%ebx)
 1310       %IF atom1 = 0 %START;                      !comma
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L927
				nop
		.L802:
 1311          atom1 = 19;  subatom = 19;  atom2 = 0
				movl	$19, ATOM1.6079@GOTOFF(%ebx)
				movl	$19, SUBATOM.6081@GOTOFF(%ebx)
				movl	$0, ATOM2.6080@GOTOFF(%ebx)
 1312          %IF sym = nl %START
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				jne	.L928
				nop
		.L804:
 1313             %RETURN %IF ocount >= 0
				movl	OCOUNT.6136@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jns	.L929
				nop
		.L806:
				nop
		.L773:
 1314
 1315             !special action needs to be taken with <comma nl> as
 1316             !const array lists can be enormous
 1317
 1318             read sym
				movl	%esi, %ecx
				call	READSYM.6639
 1319          %FINISH
 1320          %RETURN
				jmp	.L773
		.L928:
				jmp	.L773
		.L927:
 1321       %FINISH
 1322       atom2 = j>>7&127
				movl	-80(%ebp), %eax
				shrl	$7, %eax
				andl	$127, %eax
				movl	%eax, ATOM2.6080@GOTOFF(%ebx)
 1323       subatom = kdict(k+1)&16_3fff
				movl	-92(%ebp), %eax
				leal	-31(%eax), %edx
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				addl	$38840, %edx
				movzwl	12(%eax,%edx,2), %eax
				cwtl
				andl	$16383, %eax
				movl	%eax, SUBATOM.6081@GOTOFF(%ebx)
 1324       !!!!!cont = ' '
 1325       %RETURN
				jmp	.L773
		.L946:
 1326
 1327       !report an error. adjust the error marker (pos1) to point
 1328       !to the faulty character in an atom, but care needs to be taken
 1329       !to prevent misleading reports in cases like ...?????
 1330
 1331 err:  atom1 = error+1;  atom2 = 0
				movl	$32769, ATOM1.6079@GOTOFF(%ebx)
				movl	$0, ATOM2.6080@GOTOFF(%ebx)
 1332       pos1 = pos %IF pos-pos1 > 2
				movl	POS.6145@GOTOFF(%ebx), %edx
				movl	POS1.6143@GOTOFF(%ebx), %eax
				subl	%eax, %edx
				movl	%edx, %eax
				cmpl	$2, %eax
				jle	.L930
				movl	POS.6145@GOTOFF(%ebx), %eax
				movl	%eax, POS1.6143@GOTOFF(%ebx)
				nop
		.L809:
 1333       %RETURN
				jmp	.L773
		.L930:
				jmp	.L773
		.L923:
 1334
 1335         !take care with strings and symbol constants.
 1336         !make sure the constant is valid here before sucking it in
 1337         !(and potentially loosing many lines)
 1338
 1339 symbols:atom1 = var;  atom2 = const;  type = integer
				movl	$91, ATOM1.6079@GOTOFF(%ebx)
				movl	$93, ATOM2.6080@GOTOFF(%ebx)
				movl	$1, TYPE.6082@GOTOFF(%ebx)
 1340         map gg = const;  protection = prot
				movl	$93, MAPGG.6118@GOTOFF(%ebx)
				movl	$256, PROTECTION.6106@GOTOFF(%ebx)
 1341         subatom = lp;  abandon(3) %IF lp >= lit max
				movl	LP.6158@GOTOFF(%ebx), %eax
				movl	%eax, SUBATOM.6081@GOTOFF(%ebx)
				movl	LP.6158@GOTOFF(%ebx), %eax
				cmpl	$49, %eax
				jle	.L931
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	$3
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L811
		.L931:
				nop
		.L811:
 1342         quote = \pend quote
				movl	-96(%ebp), %eax
				notl	%eax
				movl	%eax, QUOTE.6098@GOTOFF(%ebx)
 1343         %RETURN
				jmp	.L773
		.L935:
 1344
 1345       !an integer constant is acceptable so get it in and
 1346       !get the next atom
 1347
 1348 chars:n = 0;  cont = cquote
				movl	$0, %eax
				movl	%eax, -28(%ebp)
				movl	$39, CONT.6100@GOTOFF(%ebx)
		.L813:
 1349       %CYCLE
 1350          read sym
				movl	%esi, %ecx
				call	READSYM.6639
 1351          %IF sym = cquote %START
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$39, %eax
				jne	.L932
				nop
		.L903:
 1352             %EXIT %IF current char # cquote
				movl	CURRENTCHAR.6152@GOTOFF(%ebx), %eax
				movzbl	(%eax), %eax
				cmpb	$39, %al
				jne	.L933
				nop
		.L817:
				nop
		.L818:
 1353             read sym
				movl	%esi, %ecx
				call	READSYM.6639
				jmp	.L903
		.L815:
		.L932:
 1354          %FINISH
 1355          %IF n&(\((-1)>>byte size)) # 0 %START; ! overflow
 1356             pos1 = pos;  atom1 = error+10;  %RETURN
				movl	POS.6145@GOTOFF(%ebx), %eax
				movl	%eax, POS1.6143@GOTOFF(%ebx)
				movl	$32778, ATOM1.6079@GOTOFF(%ebx)
				jmp	.L773
		.L933:
 1357          %FINISH
 1358          ->err %IF quote = 0
 1359          n = n<<byte size+sym
 1360          quote = quote+1
 1361       %REPEAT
 1362       quote = 0;  cont = ' '
				movl	$0, QUOTE.6098@GOTOFF(%ebx)
				movl	$32, CONT.6100@GOTOFF(%ebx)
 1363       readsym %IF sym # nl
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				je	.L934
				movl	%esi, %ecx
				call	READSYM.6639
				jmp	.L820
		.L934:
				nop
		.L820:
 1364       lit pool(lp) = n;  lp = lp+1
				movl	LP.6158@GOTOFF(%ebx), %ecx
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	-28(%ebp), %edx
				addl	$2080, %ecx
				movl	%edx, (%eax,%ecx,4)
				movl	LP.6158@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, LP.6158@GOTOFF(%ebx)
 1365       ->top
				jmp	.L774
		.L922:
 1366
 1367         !sniff the grammar before getting the string
 1368
 1369 strings:atom1 = var;  atom2 = const;  type = stringv
				movl	$91, ATOM1.6079@GOTOFF(%ebx)
				movl	$93, ATOM2.6080@GOTOFF(%ebx)
				movl	$3, TYPE.6082@GOTOFF(%ebx)
 1370         subatom = (strp-stbase)!16_4000
				movl	STBASE.6124@GOTOFF(%ebx), %eax
				movl	(%esi), %edx
				subl	%eax, %edx
				movl	%edx, %eax
				orb	$64, %ah
				movl	%eax, SUBATOM.6081@GOTOFF(%ebx)
 1371         map gg = const;  protection = prot
				movl	$93, MAPGG.6118@GOTOFF(%ebx)
				movl	$256, PROTECTION.6106@GOTOFF(%ebx)
 1372         quote = subatom
				movl	SUBATOM.6081@GOTOFF(%ebx), %eax
				movl	%eax, QUOTE.6098@GOTOFF(%ebx)
 1373         text line = lines;                  !in case of errors
				movl	LINES.6088@GOTOFF(%ebx), %eax
				movl	%eax, TEXTLINE.6089@GOTOFF(%ebx)
 1374         %RETURN
				jmp	.L773
		.L921:
 1375
 1376       !a string constant is ok here, so pull it in and get
 1377       !the next atom
 1378
 1379 text: ->chars %IF quote < 0;                    !character consts
				nop
		.L812:
				movl	QUOTE.6098@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				js	.L935
				nop
		.L822:
 1380       l = strp; n = strp
				movl	(%esi), %eax
				movl	%eax, -104(%ebp)
				movl	(%esi), %eax
				movl	%eax, -28(%ebp)
 1381       j = addr(glink(gmin-1));                  !absolute limit
				movl	GMIN.6125@GOTOFF(%ebx), %eax
				subl	$1, %eax
				leal	(%eax,%eax), %edx
				leal	GLINK.6180@GOTOFF(%ebx), %eax
				addl	%edx, %eax
				movl	%eax, -72(%ebp)
		.LBB692:
		.LBB693:
				movl	-72(%ebp), %eax
		.LBE693:
		.LBE692:
				movl	%eax, -80(%ebp)
 1382       k = l+256;                                !string length limit
				movl	-104(%ebp), %eax
				addl	$256, %eax
				movl	%eax, -92(%ebp)
 1383       k = j %IF j < k;                          !choose lower
				movl	-80(%ebp), %eax
				cmpl	-92(%ebp), %eax
				jge	.L936
				movl	-80(%ebp), %eax
				movl	%eax, -92(%ebp)
				jmp	.L840
		.L825:
		.L936:
				nop
		.L826:
		.L840:
 1384
 1385       %CYCLE
 1386          cont = squote;  quote = 1
				movl	$34, CONT.6100@GOTOFF(%ebx)
				movl	$1, QUOTE.6098@GOTOFF(%ebx)
		.L827:
 1387          %CYCLE
 1388             read sym
				movl	%esi, %ecx
				call	READSYM.6639
 1389             %IF sym = squote %START;               !terminator?
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$34, %eax
				jne	.L937
				nop
		.L829:
 1390                %EXIT %IF current char # squote;      !yes ->
				movl	CURRENTCHAR.6152@GOTOFF(%ebx), %eax
				movzbl	(%eax), %eax
				cmpb	$34, %al
				jne	.L938
				nop
		.L831:
				nop
		.L832:
 1391                read sym;                           ! skip quote
				movl	%esi, %ecx
				call	READSYM.6639
				jmp	.L829
		.L937:
 1392             %FINISH
 1393             l = l+1;  byteinteger(l) = sym
				addl	$1, -104(%ebp)
				movl	SYM.6096@GOTOFF(%ebx), %edx
				movl	-104(%ebp), %eax
				movl	%eax, -68(%ebp)
		.LBB694:
		.LBB695:
				movl	-68(%ebp), %eax
		.LBE695:
		.LBE694:
				movb	%dl, (%eax)
 1394             lines = text line %AND abandon(7) %IF l >= k;    !too many chars
				movl	-104(%ebp), %eax
				cmpl	-92(%ebp), %eax
				jl	.L939
				movl	TEXTLINE.6089@GOTOFF(%ebx), %eax
				movl	%eax, LINES.6088@GOTOFF(%ebx)
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	$7
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L827
		.L939:
				nop
		.L835:
 1395          %REPEAT
				jmp	.L827
		.L938:
 1396          byteinteger(n) = l-n;               !plug in length
				movl	-104(%ebp), %eax
				movl	%eax, %ecx
				movl	-28(%ebp), %eax
				movl	%eax, %edx
				movl	-28(%ebp), %eax
				movl	%eax, -64(%ebp)
		.LBB696:
		.LBB697:
				movl	-64(%ebp), %eax
		.LBE697:
		.LBE696:
				subl	%edx, %ecx
				movl	%ecx, %edx
				movb	%dl, (%eax)
 1397
 1398          strp = l+1;                               !ready for next string
				movl	-104(%ebp), %eax
				addl	$1, %eax
				movl	%eax, (%esi)
 1399          quote = 0;  cont = ' ';  read sym
				movl	$0, QUOTE.6098@GOTOFF(%ebx)
				movl	$32, CONT.6100@GOTOFF(%ebx)
				movl	%esi, %ecx
				call	READSYM.6639
 1400          code atom(target)
				subl	$12, %esp
				pushl	8(%ebp)
				movl	%esi, %ecx
				call	CODEATOM.6686
				addl	$16, %esp
 1401          %RETURN %UNLESS atom1 = 48 %AND sym = squote;    !fold "???"."+++"
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				cmpl	$48, %eax
				jne	.L940
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$34, %eax
				je	.L941
				jmp	.L838
		.L940:
				nop
		.L838:
				jmp	.L773
		.L941:
				nop
		.L839:
 1402       %REPEAT
				jmp	.L840
		.L918:
 1403
 1404       %ROUTINE get(%INTEGER limit)
				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)
 1405          %INTEGER s, shift
 1406          shift = 0
				movl	$0, -16(%ebp)
 1407          %IF base # 10 %START
				movl	8(%ebx), %eax
				cmpl	$10, %eax
				je	.L1003
				nop
				jmp	.L977
		.L1006:
 1408             %IF base = 16 %START
				movl	8(%ebx), %eax
				cmpl	$16, %eax
				jne	.L1004
				nop
		.L971:
 1409                shift = 4
				movl	$4, -16(%ebp)
 1410             %FINISH %ELSE %START
				jmp	.L977
		.L1004:
 1411                %IF base = 8 %START
				movl	8(%ebx), %eax
				cmpl	$8, %eax
				jne	.L1005
				nop
		.L973:
 1412                   shift = 3
				movl	$3, -16(%ebp)
 1413                %FINISH %ELSE %START
				jmp	.L977
		.L1005:
 1414                   %IF base = 2 %START
				movl	8(%ebx), %eax
				cmpl	$2, %eax
				jne	.L1006
				nop
		.L977:
 1415                      shift = 1
				movl	$1, -16(%ebp)
				jmp	.L977
		.L969:
		.L975:
		.L976:
		.L1003:
 1416                   %FINISH
 1417                %FINISH
 1418             %FINISH
 1419          %FINISH
 1420          n = 0
				movl	$0, %eax
				movl	%eax, 4(%ebx)
		.L978:
 1421          %CYCLE
 1422             %IF symtype = -1 %START;            !digit
				movl	SYMTYPE.6097@GOTOFF(%esi), %eax
				cmpl	$-1, %eax
				jne	.L1007
				nop
		.L980:
 1423                s = sym-'0'
				movl	SYM.6096@GOTOFF(%esi), %eax
				subl	$48, %eax
				movl	%eax, -20(%ebp)
 1424             %FINISH %ELSE %START
				jmp	.L985
		.L1007:
 1425                %IF symtype < 0 %START;                  !letter
				movl	SYMTYPE.6097@GOTOFF(%esi), %eax
				testl	%eax, %eax
				jns	.L1008
				nop
		.L983:
 1426                   s = sym-'A'+10
				movl	SYM.6096@GOTOFF(%esi), %eax
				subl	$55, %eax
				movl	%eax, -20(%ebp)
 1427                %FINISH %ELSE %START
				jmp	.L985
		.L1008:
 1428                   %RETURN
				jmp	.L967
		.L981:
		.L985:
 1429                %FINISH
 1430             %FINISH
 1431             %RETURN %IF s >= limit
				movl	-20(%ebp), %eax
				cmpl	8(%ebp), %eax
				jge	.L1009
				nop
		.L987:
				nop
		.L967:
 1432             pt = pt+1;  byteinteger(pt) = sym
				movl	(%ebx), %eax
				addl	$1, %eax
				movl	%eax, (%ebx)
				movl	SYM.6096@GOTOFF(%esi), %edx
				movl	(%ebx), %eax
				movl	%eax, -12(%ebp)
		.LBB714:
		.LBB715:
				movl	-12(%ebp), %eax
		.LBE715:
		.LBE714:
				movb	%dl, (%eax)
 1433             %IF base = 10 %START;            !check overflow
				movl	8(%ebx), %eax
				cmpl	$10, %eax
				jne	.L1010
				nop
				jmp	.L994
		.L1011:
 1434                %IF n >= max int %AND (s > max dig %OR n > max int) %START
				movl	4(%ebx), %eax
				cmpl	$214748363, %eax
				jle	.L1011
				cmpl	$7, -20(%ebp)
				jg	.L1012
				movl	4(%ebx), %eax
				cmpl	$214748364, %eax
				jle	.L1013
				jmp	.L993
		.L1012:
				nop
		.L993:
				nop
				jmp	.L994
		.L1013:
				nop
		.L994:
 1435
 1436                   !too big for an integer,
 1437                   !so call it a real
 1438
 1439                   base = 0;  type = real;  n = 0
				movl	$0, %eax
				movl	%eax, 8(%ebx)
				movl	$2, TYPE.6082@GOTOFF(%esi)
				movl	$0, %eax
				movl	%eax, 4(%ebx)
				jmp	.L994
		.L990:
		.L1010:
 1440                %FINISH
 1441             %FINISH
 1442             %IF shift = 0 %START
				cmpl	$0, -16(%ebp)
				jne	.L1014
				nop
		.L996:
 1443                n = n*base+s
				movl	4(%ebx), %edx
				movl	8(%ebx), %eax
				imull	%eax, %edx
				movl	-20(%ebp), %eax
				addl	%edx, %eax
				movl	%eax, 4(%ebx)
 1444             %FINISH %ELSE %START
				jmp	.L997
		.L1014:
 1445                n = n<<shift+s
				movl	4(%ebx), %edx
				movl	-16(%ebp), %eax
				movl	%eax, %ecx
				sall	%cl, %edx
				movl	-20(%ebp), %eax
				addl	%edx, %eax
				movl	%eax, 4(%ebx)
		.L997:
 1446             %FINISH
 1447             read sym
				movl	12(%ebx), %eax
				movl	%eax, %ecx
				call	READSYM.6639
 1448          %REPEAT
				jmp	.L978
		.L1009:
 1449       %END
				addl	$32, %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE209:
		DEFLAB.7311:
		.LFB213:
 1450
 1451 number:base = 10
				movl	$10, %eax
				movl	%eax, -24(%ebp)
		.L841:
 1452 bxk:   atom1 = var;  atom2 = const;  type = integer;  subatom = lp
				movl	$91, ATOM1.6079@GOTOFF(%ebx)
				movl	$93, ATOM2.6080@GOTOFF(%ebx)
				movl	$1, TYPE.6082@GOTOFF(%ebx)
				movl	LP.6158@GOTOFF(%ebx), %eax
				movl	%eax, SUBATOM.6081@GOTOFF(%ebx)
 1453        map gg = const;  protection = prot
				movl	$93, MAPGG.6118@GOTOFF(%ebx)
				movl	$256, PROTECTION.6106@GOTOFF(%ebx)
 1454        abandon(3) %IF lp >= lit max
				movl	LP.6158@GOTOFF(%ebx), %eax
				cmpl	$49, %eax
				jle	.L942
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	$3
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L843
		.L942:
				nop
		.L843:
 1455        pt = strp;  mul = 0
				movl	(%esi), %eax
				movl	%eax, -32(%ebp)
				movl	$0, -76(%ebp)
		.L844:
 1456        %CYCLE
 1457           get(base)
				movl	-24(%ebp), %edx
				subl	$12, %esp
				leal	-32(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	GET.6813
				addl	$16, %esp
 1458           %EXIT %UNLESS sym = '_' %AND base # 0 %AND pend quote = 0;    !change of base
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$95, %eax
				jne	.L943
				movl	-24(%ebp), %eax
				testl	%eax, %eax
				je	.L944
				cmpl	$0, -96(%ebp)
				je	.L945
				jmp	.L846
		.L943:
				nop
				jmp	.L846
		.L944:
				nop
		.L846:
				nop
		.L849:
				nop
		.L848:
 1459           read sym
				movl	%esi, %ecx
				call	READSYM.6639
 1460           base = n
				movl	-28(%ebp), %eax
				movl	%eax, -24(%ebp)
 1461        %REPEAT
				jmp	.L844
		.L850:
 1462
 1463        %IF pend quote # 0 %START
				cmpl	$0, -96(%ebp)
				jne	.L850
				jmp	.L851
		.L945:
 1464           ->err %IF sym # cquote
				nop
		.L807:
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$39, %eax
				jne	.L946
				nop
		.L853:
 1465           readsym
				movl	%esi, %ecx
				call	READSYM.6639
		.L851:
 1466        %FINISH
 1467        %IF sym = '.' %START;                        !a real constant
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$46, %eax
				jne	.L947
				nop
		.L855:
 1468           pt = pt+1;  byteinteger(pt) = '.'
				movl	-32(%ebp), %eax
				addl	$1, %eax
				movl	%eax, -32(%ebp)
				movl	-32(%ebp), %eax
				movl	%eax, -60(%ebp)
		.LBB698:
		.LBB699:
				movl	-60(%ebp), %eax
		.LBE699:
		.LBE698:
				movb	$46, (%eax)
 1469           read sym
				movl	%esi, %ecx
				call	READSYM.6639
 1470           type = real;  base = 0;  get(10)
				movl	$2, TYPE.6082@GOTOFF(%ebx)
				movl	$0, %eax
				movl	%eax, -24(%ebp)
				subl	$12, %esp
				leal	-32(%ebp), %eax
				pushl	$10
				movl	%eax, %ecx
				call	GET.6813
				addl	$16, %esp
				jmp	.L855
		.L947:
 1471        %FINISH
 1472        %IF sym = '@' %START;                        !an exponent
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$64, %eax
				jne	.L948
				nop
		.L858:
 1473           pt = pt+1;  byteinteger(pt) = '@';  k = pt
				movl	-32(%ebp), %eax
				addl	$1, %eax
				movl	%eax, -32(%ebp)
				movl	-32(%ebp), %eax
				movl	%eax, -56(%ebp)
		.LBB700:
		.LBB701:
				movl	-56(%ebp), %eax
		.LBE701:
		.LBE700:
				movb	$64, (%eax)
				movl	-32(%ebp), %eax
				movl	%eax, -92(%ebp)
 1474           readsym
				movl	%esi, %ecx
				call	READSYM.6639
 1475           type = integer;  base = 10
				movl	$1, TYPE.6082@GOTOFF(%ebx)
				movl	$10, %eax
				movl	%eax, -24(%ebp)
 1476           %IF sym = '-' %START
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$45, %eax
				jne	.L949
				nop
		.L861:
 1477              read sym;  get(10);  n = -n
				movl	%esi, %ecx
				call	READSYM.6639
				subl	$12, %esp
				leal	-32(%ebp), %eax
				pushl	$10
				movl	%eax, %ecx
				call	GET.6813
				addl	$16, %esp
				movl	-28(%ebp), %eax
				negl	%eax
				movl	%eax, -28(%ebp)
 1478           %FINISH %ELSE %START
				jmp	.L862
		.L949:
 1479              get(10)
				subl	$12, %esp
				leal	-32(%ebp), %eax
				pushl	$10
				movl	%eax, %ecx
				call	GET.6813
				addl	$16, %esp
		.L862:
 1480           %FINISH
 1481           pt = k+1;  byteinteger(pt) = lp;  litpool(lp) = n;  lp = lp+1
				movl	-92(%ebp), %eax
				addl	$1, %eax
				movl	%eax, -32(%ebp)
				movl	LP.6158@GOTOFF(%ebx), %edx
				movl	-32(%ebp), %eax
				movl	%eax, -52(%ebp)
		.LBB702:
		.LBB703:
				movl	-52(%ebp), %eax
		.LBE703:
		.LBE702:
				movb	%dl, (%eax)
				movl	LP.6158@GOTOFF(%ebx), %ecx
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	-28(%ebp), %edx
				addl	$2080, %ecx
				movl	%edx, (%eax,%ecx,4)
				movl	LP.6158@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, LP.6158@GOTOFF(%ebx)
 1482           atom1 = error+10 %IF base = 0
				movl	-24(%ebp), %eax
				testl	%eax, %eax
				jne	.L950
				movl	$32778, ATOM1.6079@GOTOFF(%ebx)
				jmp	.L865
		.L950:
				nop
		.L865:
 1483           type = real;                              !exponents force the type
				movl	$2, TYPE.6082@GOTOFF(%ebx)
				jmp	.L858
		.L948:
 1484        %FINISH
 1485
 1486        %IF type = real %START
				movl	TYPE.6082@GOTOFF(%ebx), %eax
				cmpl	$2, %eax
				jne	.L951
				nop
		.L867:
 1487           byteinteger(strp) = pt-strp
				movl	-32(%ebp), %eax
				movl	%eax, %ecx
				movl	(%esi), %eax
				movl	%eax, %edx
				movl	(%esi), %eax
				movl	%eax, -48(%ebp)
		.LBB704:
		.LBB705:
				movl	-48(%ebp), %eax
		.LBE705:
		.LBE704:
				subl	%edx, %ecx
				movl	%ecx, %edx
				movb	%dl, (%eax)
 1488           subatom = (strp-stbase)!16_2000;  strp = pt+1
				movl	STBASE.6124@GOTOFF(%ebx), %eax
				movl	(%esi), %edx
				subl	%eax, %edx
				movl	%edx, %eax
				orb	$32, %ah
				movl	%eax, SUBATOM.6081@GOTOFF(%ebx)
				movl	-32(%ebp), %eax
				addl	$1, %eax
				movl	%eax, (%esi)
 1489        %FINISH %ELSE %START
				nop
		.L869:
 1490           litpool(lp) = n
				movl	LP.6158@GOTOFF(%ebx), %ecx
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	-28(%ebp), %edx
				addl	$2080, %ecx
				movl	%edx, (%eax,%ecx,4)
 1491           lp = lp+1
				movl	LP.6158@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, LP.6158@GOTOFF(%ebx)
 1492        %FINISH
 1493        %RETURN
				jmp	.L773
		.L951:
				jmp	.L773
		.L917:
 1494
 1495 name: atom1 = 0 %AND %RETURN %IF 27 <= target <= 41
				movl	8(%ebp), %eax
				movl	%eax, -88(%ebp)
				cmpl	$26, -88(%ebp)
				jle	.L952
				cmpl	$41, -88(%ebp)
				jg	.L953
		.LBE706:
				movl	$0, ATOM1.6079@GOTOFF(%ebx)
				jmp	.L773
		.L952:
		.LBB707:
				nop
				jmp	.L871
		.L953:
				nop
		.L871:
		.LBE707:
 1496       hash value = 0
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	$0, %edx
				movl	%edx, 8528(%eax)
 1497
 1498       !*****************************
 1499       !*machine dependent for speed*
 1500       !*****************************
 1501
 1502       dp = dmax+1
				movl	DMAX.6126@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, DP.6142@GOTOFF(%ebx)
 1503       da = addr(dict(dp));  dbase = da
				movl	DP.6142@GOTOFF(%ebx), %eax
				leal	-1(%eax), %edx
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				sall	$2, %edx
				addl	%edx, %eax
				addl	$4, %eax
				movl	%eax, -44(%ebp)
		.LBB708:
		.LBB709:
				movl	-44(%ebp), %eax
		.LBE709:
		.LBE708:
				movl	%eax, -100(%ebp)
				movl	-100(%ebp), %eax
				movl	%eax, -84(%ebp)
		.L874:
 1504       %CYCLE
 1505          hash value = hash value+(hash value+sym);        !is this good enough?
				movl	SYM.6096@GOTOFF(%ebx), %edx
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	8528(%eax), %eax
				leal	(%eax,%edx), %ecx
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	8528(%eax), %edx
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				addl	%ecx, %edx
				movl	%edx, 8528(%eax)
 1506          da = da+1;  byteinteger(da) = sym
				addl	$1, -100(%ebp)
				movl	SYM.6096@GOTOFF(%ebx), %edx
				movl	-100(%ebp), %eax
				movl	%eax, -40(%ebp)
		.LBB710:
		.LBB711:
				movl	-40(%ebp), %eax
		.LBE711:
		.LBE710:
				movb	%dl, (%eax)
 1507          read sym
				movl	%esi, %ecx
				call	READSYM.6639
 1508          %EXIT %IF symtype >= 0
				movl	SYMTYPE.6097@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jns	.L954
				nop
		.L877:
				nop
		.L878:
 1509       %REPEAT
				jmp	.L874
		.L954:
 1510       %IF sym = cquote %START
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$39, %eax
				jne	.L955
				nop
		.L880:
 1511          pend quote = 100
				movl	$100, -96(%ebp)
 1512          ->symbols %IF hash value = 'M'
				nop
		.L794:
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	8528(%eax), %eax
				cmpl	$77, %eax
				je	.L956
				nop
		.L882:
 1513          read sym
				movl	%esi, %ecx
				call	READSYM.6639
 1514          %IF hash value = 'X' %THEN base = 16 %AND ->bxk
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	8528(%eax), %eax
				cmpl	$88, %eax
				jne	.L957
				movl	$16, %eax
				movl	%eax, -24(%ebp)
				jmp	.L841
		.L957:
				nop
		.L884:
 1515          %IF hash value = 'K' %C
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	8528(%eax), %eax
				cmpl	$75, %eax
				je	.L958
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	8528(%eax), %eax
				cmpl	$79, %eax
				jne	.L959
				jmp	.L886
		.L958:
				nop
		.L886:
				movl	$8, %eax
				movl	%eax, -24(%ebp)
				jmp	.L841
		.L959:
				nop
		.L887:
 1516          %OR hash value = 'O' %THEN base = 8 %AND ->bxk
 1517          %IF hash value = 'B' %THEN base = 2 %AND ->bxk
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				movl	8528(%eax), %eax
				cmpl	$66, %eax
				jne	.L960
				movl	$2, %eax
				movl	%eax, -24(%ebp)
				jmp	.L841
		.L960:
				nop
		.L889:
 1518          ->err
				jmp	.L807
		.L955:
 1519       %FINISH
 1520       n = da-dbase
				movl	-100(%ebp), %eax
				subl	-84(%ebp), %eax
				movl	%eax, -28(%ebp)
 1521       byteinteger(dbase) = n
				movl	-84(%ebp), %eax
				movl	%eax, -36(%ebp)
		.LBB712:
		.LBB713:
				movl	-36(%ebp), %eax
		.LBE713:
		.LBE712:
				movl	-28(%ebp), %edx
				movb	%dl, (%eax)
 1522       dp = dp+(n+2)>>1
				movl	-28(%ebp), %eax
				addl	$2, %eax
				shrl	%eax
				movl	%eax, %edx
				movl	DP.6142@GOTOFF(%ebx), %eax
				addl	%edx, %eax
				movl	%eax, DP.6142@GOTOFF(%ebx)
 1523       abandon(8) %IF dp >= dmin
				movl	DP.6142@GOTOFF(%ebx), %edx
				movl	4(%esi), %eax
				movl	44(%eax), %eax
				cmpl	%edx, %eax
				jg	.L961
				movl	4(%esi), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	$8
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L892
		.L961:
				nop
		.L892:
 1524
 1525       atom2 = 90;                  !ident
				movl	$90, ATOM2.6080@GOTOFF(%ebx)
 1526       %IF last1 = 0 %AND sym = ':' %START;           !label
				movl	LAST1.6110@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L962
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$58, %eax
				jne	.L963
				nop
				jmp	.L894
		.L963:
				nop
		.L894:
 1527          limit = local;  lookup(lab);  %RETURN
				movl	LOCAL.6147@GOTOFF(%ebx), %eax
				movl	%eax, LIMIT.6137@GOTOFF(%ebx)
				subl	$12, %esp
				leal	-32(%ebp), %eax
				pushl	$3
				movl	%eax, %ecx
				call	LOOKUP.6699
				addl	$16, %esp
				jmp	.L773
		.L962:
 1528       %FINISH
 1529       %IF last1 = jump %START;                 !->label
				movl	LAST1.6110@GOTOFF(%ebx), %eax
				cmpl	$54, %eax
				jne	.L964
				nop
		.L897:
 1530          limit = local;  lookup(lab+spec+used bit);  %RETURN
				movl	LOCAL.6147@GOTOFF(%ebx), %eax
				movl	%eax, LIMIT.6137@GOTOFF(%ebx)
				subl	$12, %esp
				leal	-32(%ebp), %eax
				pushl	$32899
				movl	%eax, %ecx
				call	LOOKUP.6699
				addl	$16, %esp
				jmp	.L773
		.L964:
 1531       %FINISH
 1532       %IF decl # 0 %AND target = 90 %START;    !identifier
				movl	DECL.6102@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L965
				cmpl	$90, 8(%ebp)
				jne	.L966
				nop
				jmp	.L899
		.L966:
				nop
		.L899:
 1533          search base = fm base
				movl	FMBASE.6148@GOTOFF(%ebx), %eax
				movl	%eax, SEARCHBASE.6149@GOTOFF(%ebx)
 1534          limit = local;  lookup(decl)
				movl	LOCAL.6147@GOTOFF(%ebx), %eax
				movl	%eax, LIMIT.6137@GOTOFF(%ebx)
				movl	DECL.6102@GOTOFF(%ebx), %edx
				subl	$12, %esp
				leal	-32(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	LOOKUP.6699
				addl	$16, %esp
 1535          search base = 0
				movl	$0, SEARCHBASE.6149@GOTOFF(%ebx)
 1536       %FINISH %ELSE %START
				jmp	.L901
		.L965:
 1537          limit = 0;  lookup(0)
				movl	$0, LIMIT.6137@GOTOFF(%ebx)
				subl	$12, %esp
				leal	-32(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	LOOKUP.6699
				addl	$16, %esp
		.L901:
 1538       %FINISH
 1539    %END
				nop
				jmp	.L773
		.L929:
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L902
				call	__stack_chk_fail_local
		.L902:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE207:
		GET.6813:
		.LFB209:
 1540
 1541    %INTEGERFN parsed machine code
 1542       !   *opcode_??????????
 1543       %routine octal(%integer n)
 1544          %integer m
 1545          m = n>>3
 1546          octal(m) %if m # 0
 1547          put(n&7+'0')
 1548       %end
 1549       atom1 = error %AND %RESULT=0 %UNLESS symtype = -2;  !starts with letter
 1550       put('w')
 1551       %CYCLE
 1552          put(sym)
 1553          read sym
 1554          %EXIT %IF symtype >= 0;           !pull in letters and digits
 1555       %REPEAT
 1556       put('_')
 1557       %IF symtype # 0 %START;                !not terminator
 1558          atom1 = error %AND %result=0 %UNLESS sym = '_'
 1559          read sym
 1560          %WHILE symtype # 0 %CYCLE
 1561             %IF symtype < 0 %START;             !complex
 1562                code atom(0);  %result=0 %IF atom1&error # 0
 1563                %IF atom2 = const %AND type = integer %START
 1564                   %IF subatom < 0 %THEN octal(tag(-subatom)_format) %C
 1565                                   %ELSE octal(litpool(subatom))
 1566                %FINISH %ELSE %START
 1567                   %IF 91 <= atom1 <= 109 %START
 1568                      put(' '); octal(tag(subatom)_index)
 1569                   %FINISH %ELSE %START
 1570                      atom1 = error;  %result=0
 1571                   %FINISH
 1572                %FINISH
 1573             %FINISH %ELSE %START
 1574                put(sym);  read sym
 1575             %FINISH
 1576          %REPEAT
 1577       %FINISH
 1578       put(';')
 1579       %RESULT=1
 1580    %END
 1581
 1582    cont = ' ' %IF gg = 0
				movl	GG.6117@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L515
				movl	$32, CONT.6100@GOTOFF(%ebx)
				jmp	.L377
		.L515:
				nop
		.L377:
 1583    last1 = 0;  mapgg = 0
				movl	$0, LAST1.6110@GOTOFF(%ebx)
				movl	$0, MAPGG.6118@GOTOFF(%ebx)
 1584    s = 0;  ss = 0;  sstype = -1; fdef = 0
				movl	$0, -7280(%ebp)
				movl	$0, SS.6128@GOTOFF(%ebx)
				movl	$-1, SSTYPE.6134@GOTOFF(%ebx)
				movl	$0, FDEF.6119@GOTOFF(%ebx)
 1585    fm base = 0
				movl	$0, FMBASE.6148@GOTOFF(%ebx)
 1586    app = 0
				movl	$0, APP.6083@GOTOFF(%ebx)
 1587
 1588    !deal with alignment following an error in one statement
 1589    !of several on a line
 1590
 1591    margin = column;                         !start of statement
				movl	COLUMN.6093@GOTOFF(%ebx), %eax
				movl	%eax, MARGIN.6090@GOTOFF(%ebx)
 1592
 1593    pos = 0
				movl	$0, POS.6145@GOTOFF(%ebx)
 1594    stbase = addr(glink(gmax+1));  strp = stbase;  lp = 0
				movl	GMAX.6171@GOTOFF(%ebx), %eax
				addl	$1, %eax
				leal	(%eax,%eax), %edx
				leal	GLINK.6180@GOTOFF(%ebx), %eax
				addl	%edx, %eax
				movl	%eax, -7228(%ebp)
		.LBB603:
		.LBB604:
				movl	-7228(%ebp), %eax
		.LBE604:
		.LBE603:
				movl	%eax, STBASE.6124@GOTOFF(%ebx)
				movl	STBASE.6124@GOTOFF(%ebx), %eax
				movl	%eax, -7208(%ebp)
				movl	$0, LP.6158@GOTOFF(%ebx)
 1595    tbase = tstart;               !??????????????
				movl	-7296(%ebp), %esi
				movl	64(%esi), %eax
				movl	%eax, 60(%esi)
 1596    local = tbase
				movl	60(%esi), %eax
				movl	%eax, LOCAL.6147@GOTOFF(%ebx)
 1597
 1598    %IF gg = 0 %or ocount >= 0 %START;            !data or not continuation(z)
				movl	GG.6117@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L516
				movl	OCOUNT.6136@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				js	.L517
				jmp	.L388
		.L380:
		.L382:
		.L516:
				nop
		.L383:
		.L388:
				nop
				jmp	.L395
		.L521:
 1599 again:%WHILE sym type = 0 %CYCLE;                !skip redundant terminators
				movl	SYMTYPE.6097@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L518
				nop
		.L385:
 1600          c = cont
				movl	CONT.6100@GOTOFF(%ebx), %eax
				movl	%eax, -7276(%ebp)
 1601          cont = ' ';  cont = '+' %IF ocount >= 0
				movl	$32, CONT.6100@GOTOFF(%ebx)
				movl	OCOUNT.6136@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				js	.L519
				movl	$43, CONT.6100@GOTOFF(%ebx)
				jmp	.L387
		.L519:
				nop
		.L387:
 1602          read sym
				leal	-7208(%ebp), %eax
				movl	%eax, %ecx
				call	READSYM.6639
 1603          cont = c
				movl	-7276(%ebp), %eax
				movl	%eax, CONT.6100@GOTOFF(%ebx)
 1604       %REPEAT
				jmp	.L388
		.L518:
 1605       ->skip %IF sym = '!';                      !comment
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$33, %eax
				je	.L520
				nop
		.L390:
				nop
		.L391:
 1606       this = -1
				movl	$-1, THIS.6120@GOTOFF(%ebx)
 1607       code atom(0)
				subl	$12, %esp
				leal	-7208(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	CODEATOM.6686
				addl	$16, %esp
 1608       %IF atom1 = comment %START
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				cmpl	$22, %eax
				jne	.L521
				nop
		.L395:
 1609 skip:    quote = 1
				jmp	.L391
		.L520:
				movl	$1, QUOTE.6098@GOTOFF(%ebx)
 1610          c = cont
				movl	CONT.6100@GOTOFF(%ebx), %eax
				movl	%eax, -7276(%ebp)
		.L392:
 1611          read sym %AND cont = c %WHILE sym # nl; !skip to end of line
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				je	.L522
				leal	-7208(%ebp), %eax
				movl	%eax, %ecx
				call	READSYM.6639
				movl	-7276(%ebp), %eax
				movl	%eax, CONT.6100@GOTOFF(%ebx)
				jmp	.L392
		.L522:
				nop
		.L394:
 1612          quote = 0;  symtype = 0
				movl	$0, QUOTE.6098@GOTOFF(%ebx)
				movl	$0, SYMTYPE.6097@GOTOFF(%ebx)
 1613          ->again
				jmp	.L388
		.L381:
		.L517:
 1614       %FINISH
 1615    %FINISH
 1616    decl = 0;  mark = 0
				movl	$0, DECL.6102@GOTOFF(%ebx)
				movl	$0, -7272(%ebp)
 1617    gentype = 0;  force = 0
				movl	$0, GENTYPE.6111@GOTOFF(%ebx)
				movl	$0, FORCE.6115@GOTOFF(%ebx)
 1618    dim = 0;  prot err = 0
				movl	$0, DIM.6103@GOTOFF(%ebx)
				movl	$0, -7268(%ebp)
 1619    node = 0;  nmax = 0;  nmin = rec size+1
				movl	$0, -7284(%ebp)
				movl	$0, NMAX.6122@GOTOFF(%ebx)
				movl	$261, NMIN.6121@GOTOFF(%ebx)
 1620    order = 1;  gmin = max grammar+1
				movl	$1, ORDER.6139@GOTOFF(%ebx)
				movl	$1801, GMIN.6125@GOTOFF(%ebx)
 1621    sstype = 0 %AND ->more %IF gg # 0;             !continuation
				movl	GG.6117@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L523
				movl	$0, SSTYPE.6134@GOTOFF(%ebx)
				jmp	.L398
		.L523:
				nop
		.L397:
 1622    ptype = 0;  spec given = 0
				movl	$0, PTYPE.6112@GOTOFF(%ebx)
				movl	$0, SPECGIVEN.6104@GOTOFF(%ebx)
 1623
 1624    stats = stats+1;  op('O', lines) %IF perm = 0
				movl	STATS.6094@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, STATS.6094@GOTOFF(%ebx)
				movl	PERM.6132@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L524
				movl	LINES.6088@GOTOFF(%ebx), %edx
				movl	-7296(%ebp), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$79
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				nop
 1625
 1626    ->fail1 %IF atom1&error # 0;                  !first atom faulty
				jmp	.L401
		.L400:
		.L524:
				jmp	.L401
		.L533:
 1627
 1628    %IF escape class # 0 %START;                  !enter the hard way after
 1629       g = imp phrase;  sstype = -1;  ->a3
 1630    %FINISH
 1631
 1632    g = initial(atom1);                           !pick up entry point
 1633    %IF g = 0 %START;                             !invalid first atom
 1634       g = initial(0);  sstype = 0;  ->a3;        !declarator?
 1635    %FINISH
 1636    %IF g < 0 %START;                             !phrase imp
 1637       g = g&255
 1638       nmax = 1
 1639       ar(1)_class = 0;  ar(1)_link = 0;  ar(1)_sub = imp phrase
 1640    %FINISH
 1641
 1642    gg = gram(g);  class = gg&255;  sstype = gg>>12&3-1
 1643    ->a1
 1644
 1645 act(194): ptype = type;  papp = app;  pformat = format;  ->more
 1646 act(196):k =g+1;  ->a610
 1647 act(188):k = ar(nmax)_sub+1
 1648 a610:     papp = glink(k)
 1649           k = gram(k)
 1650           ->more %IF k = 0;                        !%NAME
 1651           ptype = k&7;  pformat = k>>3
 1652 act(183):k = type;  gentype = k %IF gentype = 0 %OR k = real
 1653           %IF pformat < 0 %START;               !general type
 1654              app = papp;  format = pformat
 1655              k = real %IF ptype = real %AND type = integer
 1656              k = force %AND force = 0 %IF force # 0
 1657           %FINISH
 1658           ->fail2 %UNLESS papp = app %AND (ptype = k %OR ptype = 0)
 1659           ->more %IF pformat=format %OR pformat = 0 %OR format = 0
 1660           ->fail2
 1661 act(197):arp == ar(nmin)
 1662          k = arp_sub
 1663          ->fail3 %UNLESS block form = k&15
 1664          arp_sub = k>>4
 1665
 1666          type = block type
 1667          ptype = block type;  pformat = block fm;  papp = app
 1668          pformat = -1 %IF ptype # record
 1669          ->more
 1670 act(195):arp == ar(nmin)
 1671          k = arp_sub
 1672          arp_sub = k>>2
 1673          k = k&3
 1674                                                       !1 = check integer
 1675                                                       !2 = check real
 1676                                                       !3 = check real + int
 1677           ->more %IF k = 0;                             !no action
 1678           %IF k = 1 %START
 1679              force = integer
 1680              ->more %IF type = integer %OR type = 0
 1681              ->fail2
 1682           %FINISH
 1683           ->fail2 %UNLESS ptype = real %or ptype = 0
 1684           force = integer %IF k = 3
 1685           ->more
 1686 act(198):!%OTHER
 1687          k = gg>>8&15
 1688          %IF k = 0 %START;      !restore atom
 1689             atom1 = last1
 1690             ->more
 1691          %FINISH
 1692          %IF k = 1 %START;      !test string
 1693             ->fail2 %UNLESS type = stringv
 1694             ->more
 1695          %FINISH
 1696          %if k = 2 %start
 1697             ->fail2 %if type = record
 1698             -> more
 1699          %finish
 1700          %if k = 3 %start;         !check OWN variable coming
 1701             code atom(0)
 1702             ->A7 %if atom flags&own bit = 0
 1703             ->more
 1704          %finish
 1705          for warn = pos1 %IF x <= local;      !%FORTEST
 1706          ->more
 1707 paction(1):%IF type = record %THEN g = phrase(242) %ELSE pformat = -1
 1708                                                ->a3
 1709 paction(2):ptype = real;     pformat = -1;     ->a3
 1710 paction(3):ptype = stringv;  pformat = -1;     ->a3
 1711 paction(4):ptype = integer;  pformat = -1;     ->a3
 1712 paction(5):->a3 %if ptype = integer
 1713            g = phrase(212) %AND pformat=-1 %IF ptype = real
 1714            g = phrase(213) %IF ptype = stringv
 1715            ->a3
 1716 paction(6):ptype = gram(ar(nmax)_sub+1)&7;  pformat = -1;  ->a3
 1717 paction(7):ptype=real %IF ptype = integer;  pformat=-1; ->a3
 1718
 1719 a1:   last1 = class;  atom1 = 0;  s = subatom
				movl	CLASS.6077@GOTOFF(%ebx), %eax
				movl	%eax, LAST1.6110@GOTOFF(%ebx)
				movl	$0, ATOM1.6079@GOTOFF(%ebx)
				movl	SUBATOM.6081@GOTOFF(%ebx), %eax
				movl	%eax, -7280(%ebp)
				jmp	.L403
		.L440:
		.L537:
 1720
 1721 a2:   %IF gg&trans bit = 0 %START;                !insert into analysis record
				movl	GG.6117@GOTOFF(%ebx), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L525
				nop
		.L405:
 1722          z == node
				leal	-7284(%ebp), %eax
				movl	%eax, -7260(%ebp)
		.L406:
 1723          %CYCLE;                                  !insert cell in order
 1724             k = z
				movl	-7260(%ebp), %eax
				movl	(%eax), %eax
				movl	%eax, -7256(%ebp)
 1725             %EXIT %IF gg&order bits = 0 %OR k = 0
				cmpl	$0, -7256(%ebp)
				jne	.L526
				nop
		.L407:
				nop
		.L409:
				nop
		.L408:
 1726             gg = gg-order bit;  z == ar(k)_link
				movl	GG.6117@GOTOFF(%ebx), %eax
				subl	$4096, %eax
				movl	%eax, GG.6117@GOTOFF(%ebx)
				movl	-7256(%ebp), %eax
				leal	-1(%eax), %edx
				movl	-7296(%ebp), %eax
				movl	68(%eax), %eax
				sall	$5, %edx
				addl	%edx, %eax
				addl	$8, %eax
				movl	%eax, -7260(%ebp)
 1727          %REPEAT
				jmp	.L406
		.L410:
 1728          gg = map gg %IF map gg # 0 %AND gg&255 = var
				movl	MAPGG.6118@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L410
				jmp	.L411
		.L526:
				movl	GG.6117@GOTOFF(%ebx), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L527
				movl	MAPGG.6118@GOTOFF(%ebx), %eax
				movl	%eax, GG.6117@GOTOFF(%ebx)
				jmp	.L411
		.L527:
				nop
		.L411:
 1729          nmin = nmin-1;  ->fail0 %IF nmin = nmax
				movl	NMIN.6121@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, NMIN.6121@GOTOFF(%ebx)
				movl	NMIN.6121@GOTOFF(%ebx), %edx
				movl	NMAX.6122@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				je	.L528
				nop
		.L414:
				nop
				jmp	.L415
		.L540:
 1730          z = nmin
				movl	NMIN.6121@GOTOFF(%ebx), %edx
				movl	-7260(%ebp), %eax
				movl	%edx, (%eax)
 1731          arp == ar(nmin)
				movl	NMIN.6121@GOTOFF(%ebx), %eax
				leal	-1(%eax), %edx
				movl	-7296(%ebp), %eax
				movl	68(%eax), %eax
				sall	$5, %edx
				addl	%edx, %eax
				movl	%eax, -7252(%ebp)
 1732          arp_sub = s;  arp_class = (gg&255)!mark
				movl	-7252(%ebp), %eax
				movl	-7280(%ebp), %edx
				movl	%edx, 4(%eax)
				movl	GG.6117@GOTOFF(%ebx), %eax
				movzbl	%al, %eax
				orl	-7272(%ebp), %eax
				movl	%eax, %edx
				movl	-7252(%ebp), %eax
				movl	%edx, (%eax)
 1733          arp_link = k
				movl	-7252(%ebp), %eax
				movl	-7256(%ebp), %edx
				movl	%edx, 8(%eax)
				jmp	.L405
		.L525:
 1734       %FINISH
 1735       mark = 0;  map gg = 0
				movl	$0, -7272(%ebp)
				movl	$0, MAPGG.6118@GOTOFF(%ebx)
		.L398:
 1736
 1737 more: g = glink(g);                               !chain down the grammar
				movl	G.6116@GOTOFF(%ebx), %eax
				movzwl	GLINK.6180@GOTOFF(%ebx,%eax,2), %eax
				cwtl
				movl	%eax, G.6116@GOTOFF(%ebx)
		.L416:
		.L417:
 1738
 1739 paction(0):
 1740 a3:   gg = gram(g);  class = gg&255            ;! <------------------------------ gg set to -1...  THIS CAUSES MISSING SWITCH LABEL paction(15) BELOW
				movl	G.6116@GOTOFF(%ebx), %eax
				movzwl	GRAM.6178@GOTOFF(%ebx,%eax,2), %eax
				cwtl
				movl	%eax, GG.6117@GOTOFF(%ebx)
				movl	GG.6117@GOTOFF(%ebx), %eax
				movzbl	%al, %eax
				movl	%eax, CLASS.6077@GOTOFF(%ebx)
 1741 debug("gg = gram(g) = -1 ... g=".itos(g,0)." gg=".itos(gg,0)) %if gg = -1
				movl	GG.6117@GOTOFF(%ebx), %eax
				cmpl	$-1, %eax
				jne	.L529
		.LBB605:
		.LBB606:
		.LBB607:
				movl	GG.6117@GOTOFF(%ebx), %eax
				movl	%eax, -7216(%ebp)
				movl	$0, -7212(%ebp)
		.LBB608:
		.LBB609:
				leal	-2588(%ebp), %eax
				subl	$4, %esp
				pushl	-7212(%ebp)
				pushl	-7216(%ebp)
				pushl	%eax
				call	_imp_itos@PLT
				addl	$12, %esp
		.LBE609:
		.LBE608:
				leal	-284(%ebp), %eax
				leal	-2588(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-284(%ebp), %eax
				movl	%eax, -7300(%ebp)
		.LBE607:
		.LBB610:
		.LBB611:
				leal	-284(%ebp), %eax
				leal	.LC24@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-284(%ebp), %edi
				movl	%edi, -7304(%ebp)
		.LBE611:
		.LBB612:
		.LBB613:
				movl	G.6116@GOTOFF(%ebx), %eax
				movl	%eax, -7224(%ebp)
				movl	$0, -7220(%ebp)
		.LBB614:
		.LBB615:
				leal	-2844(%ebp), %eax
				subl	$4, %esp
				pushl	-7220(%ebp)
				pushl	-7224(%ebp)
				pushl	%eax
				call	_imp_itos@PLT
				addl	$12, %esp
		.LBE615:
		.LBE614:
				leal	-284(%ebp), %eax
				leal	-2844(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-284(%ebp), %esi
				movl	%esi, -7308(%ebp)
		.LBE613:
		.LBB616:
				leal	-284(%ebp), %edx
				leal	.LC25@GOTOFF(%ebx), %esi
				movl	$64, %eax
				movl	%edx, %edi
				movl	%eax, %ecx
				rep movsl
				leal	-284(%ebp), %edx
		.LBE616:
				leal	-284(%ebp), %eax
				subl	$4, %esp
				pushl	-7308(%ebp)
				pushl	%edx
				pushl	%eax
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-284(%ebp), %edx
		.LBE612:
				leal	-284(%ebp), %eax
				subl	$4, %esp
				pushl	-7304(%ebp)
				pushl	%edx
				pushl	%eax
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-284(%ebp), %edx
		.LBE610:
				leal	-284(%ebp), %eax
				subl	$4, %esp
				pushl	-7300(%ebp)
				pushl	%edx
				pushl	%eax
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-284(%ebp), %edx
		.LBE606:
				leal	-284(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
				leal	-284(%ebp), %eax
		.LBE605:
				subl	$256, %esp
				movl	%esp, %edx
				movl	%eax, %esi
				movl	$64, %eax
				movl	%edx, %edi
				movl	%eax, %ecx
				rep movsl
				call	DEBUG@PLT
				addl	$256, %esp
				jmp	.L499
		.L419:
		.L529:
				nop
		.L499:
 1742       trace analysis %IF diag&1 # 0
				leal	-7208(%ebp), %eax
				movl	%eax, %ecx
				call	TRACEANALYSIS.6614
		.L422:
 1743       ->a5 %IF class = 0;                         !end of phrase
				movl	CLASS.6077@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L530
				nop
		.L424:
				nop
		.L425:
 1744
 1745       %IF class < actions %START;                 !not a phrase or an action
				movl	CLASS.6077@GOTOFF(%ebx), %eax
				cmpl	$179, %eax
				jg	.L531
				nop
		.L427:
 1746          class = atomic(class) %IF class >= figurative
				movl	CLASS.6077@GOTOFF(%ebx), %eax
				cmpl	$129, %eax
				jle	.L532
				movl	CLASS.6077@GOTOFF(%ebx), %eax
				leal	-130(%eax), %edx
				movl	-7296(%ebp), %eax
				movl	68(%eax), %eax
				movzbl	78838(%eax,%edx), %eax
				movzbl	%al, %eax
				movl	%eax, CLASS.6077@GOTOFF(%ebx)
				jmp	.L429
		.L532:
				nop
		.L429:
 1747          ->a2 %IF class >= manifest
				nop
		.L403:
				movl	CLASS.6077@GOTOFF(%ebx), %eax
				cmpl	$119, %eax
				jg	.L533
				nop
		.L431:
 1748          code atom(class) %IF atom1 = 0
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L534
				movl	CLASS.6077@GOTOFF(%ebx), %edx
				subl	$12, %esp
				leal	-7208(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	CODEATOM.6686
				addl	$16, %esp
				jmp	.L433
		.L534:
				nop
		.L433:
 1749          %IF escape class # 0 %START;             !escape to new grammar
				movl	ESCAPECLASS.6105@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L535
				nop
		.L435:
 1750             class = escape class;  escape class = 0
				movl	ESCAPECLASS.6105@GOTOFF(%ebx), %eax
				movl	%eax, CLASS.6077@GOTOFF(%ebx)
				movl	$0, ESCAPECLASS.6105@GOTOFF(%ebx)
 1751             g = g+escape
				movl	G.6116@GOTOFF(%ebx), %eax
				addl	$4096, %eax
				movl	%eax, G.6116@GOTOFF(%ebx)
		.L436:
 1752
 1753             !note that following an escape the next item is
 1754             !forced to be transparent!
 1755
 1756 esc:        gg = 0
				movl	$0, GG.6117@GOTOFF(%ebx)
 1757             arp == ar(nmax+1)
				movl	NMAX.6122@GOTOFF(%ebx), %edx
				movl	-7296(%ebp), %eax
				movl	68(%eax), %eax
				sall	$5, %edx
				addl	%edx, %eax
				movl	%eax, -7252(%ebp)
 1758             arp_papp = papp;  arp_x = x;  ->a4
				movl	PAPP.6113@GOTOFF(%ebx), %edx
				movl	-7252(%ebp), %eax
				movl	%edx, 16(%eax)
				movl	X.6078@GOTOFF(%ebx), %edx
				movl	-7252(%ebp), %eax
				movl	%edx, 24(%eax)
				jmp	.L437
		.L535:
 1759          %FINISH
 1760
 1761          ->a1 %IF class = atom1 %OR class = atom2
				movl	CLASS.6077@GOTOFF(%ebx), %edx
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				je	.L536
				movl	CLASS.6077@GOTOFF(%ebx), %edx
				movl	ATOM2.6080@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				jne	.L537
				jmp	.L439
		.L536:
				nop
		.L439:
				nop
		.L402:
				nop
		.L441:
 1762
 1763 a7:      ->fail1 %IF gg >= 0;                     !no alternative
				movl	GG.6117@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jns	.L538
				nop
		.L443:
				nop
		.L401:
 1764          g = g+1
				movl	G.6116@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, G.6116@GOTOFF(%ebx)
 1765          ->a3
				jmp	.L416
		.L531:
 1766       %FINISH
 1767
 1768       %IF class >= phrasal %START;                !a phrase
				movl	CLASS.6077@GOTOFF(%ebx), %eax
				cmpl	$199, %eax
				jle	.L539
				nop
		.L444:
 1769 a4:      nmax = nmax+1;  ->fail0 %IF nmax = nmin
				nop
		.L437:
				movl	NMAX.6122@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, NMAX.6122@GOTOFF(%ebx)
				movl	NMAX.6122@GOTOFF(%ebx), %edx
				movl	NMIN.6121@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				je	.L540
				nop
		.L446:
				nop
		.L415:
 1770          arp == ar(nmax)
				movl	NMAX.6122@GOTOFF(%ebx), %eax
				leal	-1(%eax), %edx
				movl	-7296(%ebp), %eax
				movl	68(%eax), %eax
				sall	$5, %edx
				addl	%edx, %eax
				movl	%eax, -7252(%ebp)
 1771          arp_ptype = ptype
				movl	PTYPE.6112@GOTOFF(%ebx), %edx
				movl	-7252(%ebp), %eax
				movl	%edx, 12(%eax)
 1772          arp_pos = pos1
				movl	POS1.6143@GOTOFF(%ebx), %edx
				movl	-7252(%ebp), %eax
				movl	%edx, 28(%eax)
 1773          arp_pformat = pformat
				movl	PFORMAT.6114@GOTOFF(%ebx), %edx
				movl	-7252(%ebp), %eax
				movl	%edx, 20(%eax)
 1774          arp_link = gentype
				movl	GENTYPE.6111@GOTOFF(%ebx), %edx
				movl	-7252(%ebp), %eax
				movl	%edx, 8(%eax)
 1775          arp_class = node
				movl	-7284(%ebp), %edx
				movl	-7252(%ebp), %eax
				movl	%edx, (%eax)
 1776          arp_sub = g
				movl	G.6116@GOTOFF(%ebx), %edx
				movl	-7252(%ebp), %eax
				movl	%edx, 4(%eax)
 1777          node = 0
				movl	$0, -7284(%ebp)
 1778          g = phrase(class)
				movl	CLASS.6077@GOTOFF(%ebx), %eax
				subl	$200, %eax
				movzwl	PHRASE.6172@GOTOFF(%ebx,%eax,2), %eax
				cwtl
				movl	%eax, G.6116@GOTOFF(%ebx)
 1779          ptype = force %AND force = 0 %IF force # 0
				movl	FORCE.6115@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L541
				movl	FORCE.6115@GOTOFF(%ebx), %eax
				movl	%eax, PTYPE.6112@GOTOFF(%ebx)
				movl	$0, FORCE.6115@GOTOFF(%ebx)
				jmp	.L448
		.L541:
				nop
		.L448:
 1780          gentype = 0
				movl	$0, GENTYPE.6111@GOTOFF(%ebx)
 1781          ->paction(gg>>8&15)                                                       ;! <----------------- CAUSES CRASH
				movl	$1781, -7248(%ebp)
				leal	.LC92@GOTOFF(%ebx), %eax
				movl	%eax, -7264(%ebp)
				movl	GG.6117@GOTOFF(%ebx), %eax
				shrl	$8, %eax
				andl	$15, %eax
				movl	%eax, -7244(%ebp)
				jmp	.L449
		.L539:
 1782 paction(*):debug("* Switch label not set: paction(".itos(gg>>8&15,0).") {gg=".itos(gg,0)."}"); %stop {avoid executing random code}
 1783       %FINISH
 1784
 1785       ->act(class);                               !only actions left
				movl	$1785, -7236(%ebp)
				leal	.LC92@GOTOFF(%ebx), %eax
				movl	%eax, -7240(%ebp)
				movl	CLASS.6077@GOTOFF(%ebx), %eax
				movl	%eax, -7232(%ebp)
				nop
		.L450:
 1786 act(*):debug("* Switch label not set: act(".itos(class,0).")"); %stop
 1787 a5:   !reverse links
 1788
 1789       s = 0
				movl	$0, -7280(%ebp)
		.L451:
 1790       %WHILE node # 0 %CYCLE
				movl	-7284(%ebp), %eax
				testl	%eax, %eax
				je	.L542
				nop
		.L453:
 1791          z == ar(node)_link
				movl	-7284(%ebp), %eax
				leal	-1(%eax), %edx
				movl	-7296(%ebp), %eax
				movl	68(%eax), %eax
				sall	$5, %edx
				addl	%edx, %eax
				addl	$8, %eax
				movl	%eax, -7260(%ebp)
 1792          k = z;  z = s;  s = node;  node = k
				movl	-7260(%ebp), %eax
				movl	(%eax), %eax
				movl	%eax, -7256(%ebp)
				movl	-7260(%ebp), %eax
				movl	-7280(%ebp), %edx
				movl	%edx, (%eax)
				movl	-7284(%ebp), %eax
				movl	%eax, -7280(%ebp)
				movl	-7256(%ebp), %eax
				movl	%eax, -7284(%ebp)
 1793       %REPEAT
				jmp	.L451
		.L542:
 1794       ss = s
				movl	-7280(%ebp), %eax
				movl	%eax, SS.6128@GOTOFF(%ebx)
		.L454:
 1795
 1796 a6:   %IF nmax # 0 %START
				movl	NMAX.6122@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L543
				nop
		.L456:
 1797          k = gentype;                             !type of phrase
				movl	GENTYPE.6111@GOTOFF(%ebx), %eax
				movl	%eax, -7256(%ebp)
 1798          arp == ar(nmax);  nmax = nmax-1
				movl	NMAX.6122@GOTOFF(%ebx), %eax
				leal	-1(%eax), %edx
				movl	-7296(%ebp), %eax
				movl	68(%eax), %eax
				sall	$5, %edx
				addl	%edx, %eax
				movl	%eax, -7252(%ebp)
				movl	NMAX.6122@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, NMAX.6122@GOTOFF(%ebx)
 1799          node = arp_class
				movl	-7252(%ebp), %eax
				movl	(%eax), %eax
				movl	%eax, -7284(%ebp)
 1800          gentype = arp_link
				movl	-7252(%ebp), %eax
				movl	8(%eax), %eax
				movl	%eax, GENTYPE.6111@GOTOFF(%ebx)
 1801          ptype = arp_ptype
				movl	-7252(%ebp), %eax
				movl	12(%eax), %eax
				movl	%eax, PTYPE.6112@GOTOFF(%ebx)
 1802          pformat = arp_pformat
				movl	-7252(%ebp), %eax
				movl	20(%eax), %eax
				movl	%eax, PFORMAT.6114@GOTOFF(%ebx)
 1803          g = arp_sub
				movl	-7252(%ebp), %eax
				movl	4(%eax), %eax
				movl	%eax, G.6116@GOTOFF(%ebx)
 1804          %IF g&escape # 0 %START
 1805             g = g-escape
				movl	G.6116@GOTOFF(%ebx), %eax
				subl	$4096, %eax
				movl	%eax, G.6116@GOTOFF(%ebx)
 1806             papp = arp_papp
				movl	-7252(%ebp), %eax
				movl	16(%eax), %eax
				movl	%eax, PAPP.6113@GOTOFF(%ebx)
 1807             mark = 255
				movl	$255, -7272(%ebp)
 1808             subatom = s
				movl	-7280(%ebp), %eax
				movl	%eax, SUBATOM.6081@GOTOFF(%ebx)
 1809             ->a3
				jmp	.L416
		.L543:
 1810          %FINISH
 1811          gentype = k %IF gentype = 0 %OR k = real
 1812          type = gen type
 1813
 1814          k = gg;                                  !exit-point code
 1815          %CYCLE
 1816             gg = gram(g)
 1817             ->a2 %IF k = 0
 1818             ->fail1 %IF gg >= 0;                  !no alternative phrase
 1819             k = k-order bit
 1820             g = g+1;                              !sideways step
 1821          %REPEAT
 1822
 1823       %FINISH
 1824
 1825       pos1 = copy %AND fault(4) %IF copy # 0
				movl	COPY.6138@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L544
				movl	COPY.6138@GOTOFF(%ebx), %eax
				movl	%eax, POS1.6143@GOTOFF(%ebx)
				subl	$12, %esp
				pushl	$4
				movl	-7296(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L458
		.L544:
				nop
		.L458:
 1826       fault(13) %IF order = 0
				movl	ORDER.6139@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L545
				subl	$12, %esp
				pushl	$13
				movl	-7296(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L460
		.L545:
				nop
		.L460:
 1827       fault(-4) %IF for warn # 0
				movl	FORWARN.6140@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				je	.L546
				subl	$12, %esp
				pushl	$-4
				movl	-7296(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L462
		.L546:
				nop
		.L462:
 1828       pos1 = 0
				movl	$0, POS1.6143@GOTOFF(%ebx)
 1829       fault rate = fault rate-1
				movl	FAULTRATE.6087@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, FAULTRATE.6087@GOTOFF(%ebx)
 1830       %RETURN
				jmp	.L375
		.L528:
 1831
 1832 act(193):gg = 0 %AND ->a5 %UNLESS sym = '=' %or sym = '<'; !cdummy
 1833 act(181):atom1 = amap(decl&15);                             !dummy
 1834          ->more
 1835
 1836 act(182):class = escdec;  g = glink(g)!escape
 1837          decl = 0;  otype = 0;  ->esc;                      !decl
 1838
 1839 act(199):
 1840          !reverse links;                                     !compile
 1841
 1842          s = 0
 1843          %WHILE node # 0 %CYCLE
 1844             z == ar(node)_link
 1845             k = z;  z = s;  s = node;  node = k
 1846          %repeat
 1847          ss = s
 1848
 1849          code atom(28) %IF quote # 0;                       !expend
 1850          compile;  ->more %IF atom1&error = 0
 1851          ->fail1
 1852
 1853 act(184):->fail4 %UNLESS type = integer
 1854          %IF subatom < 0 %THEN lit = tag(-subatom)_format %C
 1855                          %ELSE lit = lit pool(subatom)
 1856          ->fail4 %IF lit # 0
 1857          ->more
 1858 act(185):                                                   !apply parameters
 1859          s = 0
 1860          %WHILE node # 0 %CYCLE
 1861             z == ar(node)_link
 1862             k = z;  z = s;  s = node;  node = k
 1863          %REPEAT
 1864          ss = s
 1865
 1866          atom1 = ar(s)_class;  atom2 = 0
 1867          atom1 = var %IF atom1 = 97 %OR atom1 = 98
 1868          arp == ar(nmax)
 1869          x = arp_x
 1870          pos1 = arp_pos
 1871          pos2 = 0
 1872          app = 0
 1873          format = tag(x)_format
 1874          flags = tag(x)_flags
 1875          type = flags>>4&7
 1876          protection = flags&prot
 1877          protection = 0 %IF flags&aname # 0
 1878
 1879          %IF flags&subname # 0 %AND format # 0 %START
 1880             ->fail1 %if format selected = 0
 1881          %FINISH
 1882
 1883          ->a6
 1884
 1885 act(187):protection = prot;  ->more;                      !%SETPROT
 1886 act(186):->more %if protection&prot = 0
 1887          prot err = nmin
 1888          -> a7
 1889 act(191):k = protection;                           !%GUARD
 1890          code atom(0)
 1891          protection = k %IF atom flags&aname = 0
 1892          ->more
 1893
 1894 act(192):->fail1 %IF parsed machine code=0
 1895          ->more
 1896
 1897 act(189):k = gapp;                                     !%GAPP
 1898          delete names(1)
 1899          tmax = tbase;  tbase = gram (gmin);           !restore tmax
 1900          local= tbase
 1901          gmin = gmin+1
 1902
 1903          x = ar(ar(nmax)_class)_sub
 1904          tag(x)_app = k;                               !update app
 1905          ->more
 1906
 1907 act(190):gmin = gmin-1;                                !%LOCAL
 1908          abandon(2) %IF gmin <= gmax
 1909          gram (gmin) = tbase;  tbase = tmax
 1910          local = tbase
 1911          ->more
 1912
 1913 ! errors
 1914
 1915 fail4:k = error+10;            ->failed;        !*size
 1916 fail3:k = error+7;             ->failed;        !*context
 1917 fail2:k = error+5;  pos2 = 0;  ->failed;        !*type
 1918 fail0:k = error+3;             ->failed;        !*too complex
				movl	$32771, -7256(%ebp)
				jmp	.L500
		.L538:
 1919 fail1:k = atom1;  pos2 = 0
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				movl	%eax, -7256(%ebp)
				movl	$0, POS2.6144@GOTOFF(%ebx)
		.L464:
		.L500:
		.LBB617:
 1920
 1921 failed:
 1922       %IF diag&32 # 0 %START
 1923          printstring("Atom1 =")
				leal	-284(%ebp), %eax
				leal	.LC29@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-7196(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-2332(%ebp), %eax
				leal	-7196(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE617:
		.LBB618:
		.LBB619:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-2332(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE619:
		.LBE618:
 1924          write(atom1, 3)
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$3
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB620:
 1925          printstring("  Atom2 =")
				leal	-284(%ebp), %eax
				leal	.LC30@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-6940(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-2076(%ebp), %eax
				leal	-6940(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE620:
		.LBB621:
		.LBB622:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-2076(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE622:
		.LBE621:
 1926          write(atom2, 3)
				movl	ATOM2.6080@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$3
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB623:
 1927          printstring("  subatom =")
				leal	-284(%ebp), %eax
				leal	.LC31@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-6684(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1820(%ebp), %eax
				leal	-6684(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE623:
		.LBB624:
		.LBB625:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-1820(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE625:
		.LBE624:
 1928          write(subatom, 3)
				movl	SUBATOM.6081@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$3
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB626:
		.LBB627:
				call	_imp_newline@PLT
		.LBE627:
		.LBE626:
		.LBB628:
 1929          newline
 1930          printstring("Type =")
				leal	-284(%ebp), %eax
				leal	.LC32@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-6428(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1564(%ebp), %eax
				leal	-6428(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE628:
		.LBB629:
		.LBB630:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-1564(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE630:
		.LBE629:
 1931          write(type, 1)
				movl	TYPE.6082@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$1
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB631:
 1932          printstring("   Ptype =")
				leal	-284(%ebp), %eax
				leal	.LC33@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-6172(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1308(%ebp), %eax
				leal	-6172(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE631:
		.LBB632:
		.LBB633:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-1308(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE633:
		.LBE632:
 1933          write(ptype, 1)
				movl	PTYPE.6112@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$1
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB634:
		.LBB635:
				call	_imp_newline@PLT
		.LBE635:
		.LBE634:
		.LBB636:
 1934          newline
 1935          printstring("App =")
				leal	-284(%ebp), %eax
				leal	.LC34@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-5916(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-1052(%ebp), %eax
				leal	-5916(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE636:
		.LBB637:
		.LBB638:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-1052(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE638:
		.LBE637:
 1936          write(app, 1)
				movl	APP.6083@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$1
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB639:
 1937          printstring("   Papp =")
				leal	-284(%ebp), %eax
				leal	.LC35@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-5660(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-796(%ebp), %eax
				leal	-5660(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE639:
		.LBB640:
		.LBB641:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-796(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE641:
		.LBE640:
 1938          write(papp, 1)
				movl	PAPP.6113@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$1
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB642:
		.LBB643:
				call	_imp_newline@PLT
		.LBE643:
		.LBE642:
		.LBB644:
 1939          newline
 1940          printstring("Format =")
				leal	-284(%ebp), %eax
				leal	.LC36@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-5404(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-540(%ebp), %eax
				leal	-5404(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE644:
		.LBB645:
		.LBB646:
				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	_imp_printstring@PLT
				addl	$256, %esp
		.LBE646:
		.LBE645:
 1941          write(format, 1)
				movl	FORMAT.6084@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$1
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB647:
 1942          printstring("   Pformat =")
				leal	-284(%ebp), %eax
				leal	.LC37@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-5148(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-284(%ebp), %eax
				leal	-5148(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE647:
		.LBB648:
		.LBB649:
				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
		.LBE649:
		.LBE648:
 1943          write(pformat, 1)
				movl	PFORMAT.6114@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$1
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB650:
		.LBB651:
				call	_imp_newline@PLT
		.L465:
		.L466:
		.LBE651:
		.LBE650:
 1944          newline
 1945          %monitor
 1946        %FINISH
 1947
 1948        quote = 0 %AND readsym %WHILE sym # nl %AND sym # ';'
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$10, %eax
				je	.L547
				movl	SYM.6096@GOTOFF(%ebx), %eax
				cmpl	$59, %eax
				je	.L548
				movl	$0, QUOTE.6098@GOTOFF(%ebx)
				leal	-7208(%ebp), %eax
				movl	%eax, %ecx
				call	READSYM.6639
				jmp	.L465
		.L468:
		.L547:
				nop
				jmp	.L501
		.L548:
				nop
		.L501:
 1949        %IF k&error # 0 %START
 1950           fault(k&255)
				movl	-7256(%ebp), %eax
				movzbl	%al, %eax
				subl	$12, %esp
				pushl	%eax
				movl	-7296(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
 1951        %FINISH %ELSE %START
				nop
		.L470:
		.L471:
 1952          %IF prot err = nmin %THEN fault(14) %ELSE fault(0)
 1953        %FINISH
 1954        gg = 0;  ss = 0;  symtype = 0
				movl	$0, GG.6117@GOTOFF(%ebx)
				movl	$0, SS.6128@GOTOFF(%ebx)
				movl	$0, SYMTYPE.6097@GOTOFF(%ebx)
 1955    %END;                                               !of analyse
				cmpl	$179, -7232(%ebp)
				jle	.L472
				jmp	.L511
		.L530:
				jmp	.L375
		.L511:
				cmpl	$200, -7232(%ebp)
				jle	.L473
		.L472:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L474
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -7296(%ebp)
				jmp	.L475
		.L474:
				movl	$1955, -7296(%ebp)
		.L475:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L476
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-3868(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L477
		.L476:
		.LBB652:
				leal	-284(%ebp), %eax
				leal	.LC21@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-4892(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE652:
				leal	-3868(%ebp), %eax
				leal	-4892(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L477:
				pushl	-7236(%ebp)
				pushl	-7240(%ebp)
				pushl	-7232(%ebp)
				leal	.LC97@GOTOFF(%ebx), %eax
				pushl	%eax
				pushl	-7232(%ebp)
				pushl	$3
				pushl	$6
				pushl	-7296(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-3868(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_eventf@PLT
				addl	$288, %esp
		.L473:
				movl	-7232(%ebp), %eax
				subl	$180, %eax
				movl	ACT.6606@GOTOFF(%ebx,%eax,4), %eax
				jmp	.L478
		.L479:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				jne	.L480
				jmp	.L514
		.L478:
				jmp	*%eax
		.L480:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -7296(%ebp)
				jmp	.L482
		.L514:
				movl	$1955, -7296(%ebp)
		.L482:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L483
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-3612(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L484
		.L483:
		.LBB653:
				leal	-284(%ebp), %eax
				leal	.LC21@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-4636(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE653:
				leal	-3612(%ebp), %eax
				leal	-4636(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L484:
				pushl	-7236(%ebp)
				pushl	-7240(%ebp)
				pushl	-7232(%ebp)
				leal	.LC98@GOTOFF(%ebx), %eax
				pushl	%eax
				pushl	-7232(%ebp)
				pushl	$2
				pushl	$8
				pushl	-7296(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-3612(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_eventf@PLT
				addl	$288, %esp
		.L449:
				cmpl	$0, -7244(%ebp)
				js	.L485
				cmpl	$15, -7244(%ebp)
				jle	.L486
		.L485:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L487
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -7296(%ebp)
				jmp	.L488
		.L487:
				movl	$1955, -7296(%ebp)
		.L488:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L489
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-3356(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L490
		.L489:
		.LBB654:
				leal	-284(%ebp), %eax
				leal	.LC21@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-4380(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE654:
				leal	-3356(%ebp), %eax
				leal	-4380(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L490:
				pushl	-7248(%ebp)
				pushl	-7264(%ebp)
				pushl	-7244(%ebp)
				leal	.LC99@GOTOFF(%ebx), %eax
				pushl	%eax
				pushl	-7244(%ebp)
				pushl	$3
				pushl	$6
				pushl	-7296(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-3356(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_eventf@PLT
				addl	$288, %esp
		.L486:
				movl	-7244(%ebp), %eax
				movl	PACTION.6611@GOTOFF(%ebx,%eax,4), %eax
				jmp	.L478
		.L491:
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L492
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -7296(%ebp)
				jmp	.L493
		.L492:
				movl	$1955, -7296(%ebp)
		.L493:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L494
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-3100(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L495
		.L494:
		.LBB655:
				leal	-284(%ebp), %eax
				leal	.LC21@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-4124(%ebp), %eax
				leal	-284(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE655:
				leal	-3100(%ebp), %eax
				leal	-4124(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L495:
				pushl	-7248(%ebp)
				pushl	-7264(%ebp)
				pushl	-7244(%ebp)
				leal	.LC100@GOTOFF(%ebx), %eax
				pushl	%eax
				pushl	-7244(%ebp)
				pushl	$2
				pushl	$8
				pushl	-7296(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-3100(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	_signal_eventf@PLT
				addl	$288, %esp
		.L375:
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L497
				call	__stack_chk_fail_local
		.L497:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE201:
		GETNEXTSOURCECHAR.6642:
		.LFB205:
 1956
 1957    %ROUTINE compile
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$4812, %esp
				call	__x86.get_pc_thunk.si
				addl	$_GLOBAL_OFFSET_TABLE_, %esi
				movl	%esi, -4800(%ebp)
				movl	%ecx, %ebx
				movl	%ebx, -4804(%ebp)
				movl	%ecx, -4796(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
				leal	8(%ebp), %eax
				movl	%eax, -4608(%ebp)
				movl	%ebx, -4612(%ebp)
 1958
 1959       %CONSTINTEGER then = 4, else = 8, loop = 16
 1960
 1961       %SWITCH c(0:actions), litop(1:12)
 1962
 1963       %CONSTBYTEINTEGERARRAY operator(1:14) = %C
				movb	$91, -58(%ebp)
				movb	$93, -57(%ebp)
				movb	$88, -56(%ebp)
				movb	$47, -55(%ebp)
				movb	$38, -54(%ebp)
				movb	$33, -53(%ebp)
				movb	$37, -52(%ebp)
				movb	$43, -51(%ebp)
				movb	$45, -50(%ebp)
				movb	$42, -49(%ebp)
				movb	$81, -48(%ebp)
				movb	$120, -47(%ebp)
				movb	$46, -46(%ebp)
				movb	$118, -45(%ebp)
				leal	-4572(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-58(%ebp), %eax
				movl	%eax, -4572(%ebp)
				movl	$1, -4568(%ebp)
 1964                          '[',  ']',  'X',  '/', '&',  '!',  '%',  '+',
 1965                          '-',  '*',  'Q',  'x', '.',  'v'
 1966
 1967       %CONSTBYTEINTEGERARRAY cc(0 : 7) = '#','=',')','<','(','>', 'k','t'
				movb	$35, -66(%ebp)
				movb	$61, -65(%ebp)
				movb	$41, -64(%ebp)
				movb	$60, -63(%ebp)
				movb	$40, -62(%ebp)
				movb	$62, -61(%ebp)
				movb	$107, -60(%ebp)
				movb	$116, -59(%ebp)
				leal	-4504(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-66(%ebp), %eax
				movl	%eax, -4504(%ebp)
				movl	$1, -4500(%ebp)
 1968
 1969       %CONSTBYTEINTEGERARRAY anyform(0:15) = 1,0,1,1(4),1,0,1,1,0,1,1,1,1
				movb	$1, -44(%ebp)
				movb	$0, -43(%ebp)
				movb	$1, -42(%ebp)
				movb	$1, -41(%ebp)
				movb	$1, -40(%ebp)
				movb	$1, -39(%ebp)
				movb	$1, -38(%ebp)
				movb	$1, -37(%ebp)
				movb	$0, -36(%ebp)
				movb	$1, -35(%ebp)
				movb	$1, -34(%ebp)
				movb	$0, -33(%ebp)
				movb	$1, -32(%ebp)
				movb	$1, -31(%ebp)
				movb	$1, -30(%ebp)
				movb	$1, -29(%ebp)
				leal	-4436(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-44(%ebp), %eax
				movl	%eax, -4436(%ebp)
				movl	$1, -4432(%ebp)
 1970
 1971       %CONSTSHORTINTEGERARRAY decmap(0:15) = %C
				movw	$1, -4604(%ebp)
				movw	$2, -4602(%ebp)
				movw	$4107, -4600(%ebp)
				movw	$4109, -4598(%ebp)
				movw	$5132, -4596(%ebp)
				movw	$5134, -4594(%ebp)
				movw	$3, -4592(%ebp)
				movw	$4, -4590(%ebp)
				movw	$4103, -4588(%ebp)
				movw	$4104, -4586(%ebp)
				movw	$4105, -4584(%ebp)
				movw	$4106, -4582(%ebp)
				movw	$6, -4580(%ebp)
				movw	$0, -4578(%ebp)
				movw	$0, -4576(%ebp)
				movw	$0, -4574(%ebp)
				leal	-4368(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-4604(%ebp), %eax
				movl	%eax, -4368(%ebp)
				movl	$2, -4364(%ebp)
 1972          1,             2,
 1973          16_100B,       16_100D,       16_140C,      16_140E,
 1974          3,             4,
 1975          16_1007,       16_1008,       16_1009,      16_100A,
 1976          6,             0,             0,            0
 1977       %OWNBYTEINTEGERARRAY cnest(0:15)
				leal	-4300(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	CNEST.7283@GOTOFF(%esi), %eax
				movl	%eax, -4300(%ebp)
				movl	$1, -4296(%ebp)
 1978       %INTEGER lmode, clab, dupid
 1979       %INTEGER resln
 1980       %OWNINTEGER last def = 0
 1981       %OWNINTEGER lb, ub
 1982       %INTEGER cp, ord
 1983       %INTEGER next, link, j, k, n, done
 1984       %INTEGER class
 1985       %INTEGER lit2, defs, decs, cident
 1986       %INTEGER pending;  %OWNINTEGERARRAY pstack(1:40)
				leal	-4232(%ebp), %edx
				movl	$0, %eax
				movl	$17, %ecx
				movl	%edx, %edi
				rep stosl
				leal	PSTACK.7306@GOTOFF(%esi), %eax
				movl	%eax, -4232(%ebp)
				movl	$4, -4228(%ebp)
 1987       %OWNSTRING(8) name = ""
 1988       %OWNINTEGER count = 0
 1989
 1990       %ROUTINE def lab(%INTEGER l)
				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)
 1991          op(':', l)
				movl	32(%ebx), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	8(%ebp)
				pushl	$58
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
 1992          access = 1
				movl	32(%ebx), %eax
				movl	$1, %edx
				movl	%edx, 28(%eax)
 1993       %END
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE213:
				.section	.rodata
				.align 4
		.LC101:
				.string	"Illegal cycle J = DICT[N - 1], 1, DICT[N + 1 - 1]"
				.align 4
		.LC102:
				.string	"->C(%d) out of bounds at %s line %d"
				.align 4
		.LC103:
				.string	"->LITOP(%d) out of bounds at %s line %d"
				.align 32
		.LC15:
				.byte	4
				.string	"ss ="
				.zero	250
				.align 32
		.LC16:
				.byte	26
				.string	"* Switch label not set: c("
				.zero	228
				.align 32
		.LC17:
				.byte	1
				.string	"}"
				.zero	253
				.align 32
		.LC18:
				.byte	29
				.string	"close input    {input stream="
				.zero	225
				.align 32
		.LC19:
				.byte	20
				.string	"select input(source="
				.zero	234
				.align 32
		.LC20:
				.byte	15
				.string	"select input(3)"
				.zero	239
		COMPILE.6329:
		.LFB212:
 1994
 1995       %ROUTINE get next
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$812, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -812(%ebp)
				movl	%gs:20, %eax
				movl	%eax, -28(%ebp)
				xorl	%eax, %eax
		.L1515:
 1996          %RECORD(arfm)%NAME p;      !imp77:
 1997 gn:      %IF next = 0 %START;                        !end of phrase
				movl	28(%esi), %eax
				testl	%eax, %eax
				jne	.L1539
				nop
		.L1521:
		.L1529:
 1998             class = 0 %AND %RETURN %IF link = 0;     !end of statement
				movl	24(%esi), %eax
				testl	%eax, %eax
				jne	.L1540
				movl	$0, %eax
				movl	%eax, 20(%esi)
				jmp	.L1514
		.L1540:
				nop
		.L1519:
 1999             p == ar(link)
				movl	24(%esi), %eax
				leal	-1(%eax), %edx
				movl	32(%esi), %eax
				movl	68(%eax), %eax
				sall	$5, %edx
				addl	%edx, %eax
				movl	%eax, -808(%ebp)
 2000             next = p_link
				movl	-808(%ebp), %eax
				movl	8(%eax), %eax
				movl	%eax, 28(%esi)
 2001             link = p_sub
				movl	-808(%ebp), %eax
				movl	4(%eax), %eax
				movl	%eax, 24(%esi)
				jmp	.L1529
		.L1517:
		.L1539:
 2002          %FINISH
 2003          %CYCLE
 2004             p == ar(next)
				movl	28(%esi), %eax
				leal	-1(%eax), %edx
				movl	32(%esi), %eax
				movl	68(%eax), %eax
				sall	$5, %edx
				addl	%edx, %eax
				movl	%eax, -808(%ebp)
 2005             x = p_sub
				movl	-808(%ebp), %eax
				movl	4(%eax), %eax
				movl	%eax, X.6078@GOTOFF(%ebx)
 2006             class = p_class
				movl	-808(%ebp), %eax
				movl	(%eax), %eax
				movl	%eax, 20(%esi)
 2007             %EXIT %IF class < actions;               !an atom
				movl	20(%esi), %eax
				cmpl	$179, %eax
				jle	.L1541
				nop
		.L1523:
				nop
		.L1524:
 2008             %IF x = 0 %START;                        !null phrase
				movl	X.6078@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jne	.L1542
				nop
		.L1526:
 2009                next = p_link;  ->gn
				movl	-808(%ebp), %eax
				movl	8(%eax), %eax
				movl	%eax, 28(%esi)
				jmp	.L1515
		.L1542:
 2010             %FINISH
 2011             %IF p_link # 0 %START;                   !follow a phrase
				movl	-808(%ebp), %eax
				movl	8(%eax), %eax
				testl	%eax, %eax
				je	.L1543
				nop
		.L1528:
 2012                p_sub = link;  link = next
				movl	24(%esi), %edx
				movl	-808(%ebp), %eax
				movl	%edx, 4(%eax)
				movl	28(%esi), %eax
				movl	%eax, 24(%esi)
				jmp	.L1528
		.L1543:
 2013             %FINISH
 2014             next = x
				movl	X.6078@GOTOFF(%ebx), %eax
				movl	%eax, 28(%esi)
 2015          %REPEAT
				jmp	.L1529
		.L1541:
 2016          next = p_link
				movl	-808(%ebp), %eax
				movl	8(%eax), %eax
				movl	%eax, 28(%esi)
		.LBB795:
 2017          %IF diag&2 # 0 %START
 2018             spaces(8-length(name)) %UNLESS name = ""
				movb	$0, -284(%ebp)
				movl	$0, -283(%ebp)
				leal	-279(%ebp), %edx
				movl	$0, %eax
				movb	%al, (%edx)
				addl	$1, %edx
				movw	%ax, (%edx)
				addl	$2, %edx
				movl	$62, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-284(%ebp), %eax
		.LBE795:
				subl	$8, %esp
				pushl	%eax
				leal	NAME.7308@GOTOFF(%ebx), %eax
				pushl	%eax
				call	_imp_strcmp@PLT
				addl	$16, %esp
				testl	%eax, %eax
				je	.L1544
				leal	NAME.7308@GOTOFF(%ebx), %eax
				movl	%eax, -800(%ebp)
		.LBB796:
		.LBB797:
				movl	-800(%ebp), %eax
		.LBE797:
		.LBE796:
				movzbl	(%eax), %eax
				movzbl	%al, %eax
				movl	$8, %edx
				subl	%eax, %edx
				movl	%edx, %eax
				movl	%eax, -804(%ebp)
		.LBB798:
		.LBB799:
				subl	$12, %esp
				pushl	-804(%ebp)
				call	_imp_spaces@PLT
				addl	$16, %esp
				jmp	.L1531
		.L1544:
		.LBE799:
		.LBE798:
				nop
		.L1531:
		.LBB800:
 2019             name = text(class)
				movl	20(%esi), %edx
				movl	32(%esi), %eax
				movl	68(%eax), %eax
				sall	$8, %edx
				addl	%edx, %eax
				leal	78896(%eax), %edx
				leal	-284(%ebp), %eax
				addl	$8, %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-284(%ebp), %eax
		.LBE800:
				subl	$4, %esp
				pushl	$8
				pushl	%eax
				leal	NAME.7308@GOTOFF(%ebx), %eax
				pushl	%eax
				call	_imp_strncpy@PLT
				addl	$16, %esp
 2020             write(x, 2)
				movl	X.6078@GOTOFF(%ebx), %eax
				subl	$8, %esp
				pushl	$2
				pushl	%eax
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB801:
		.LBB802:
				call	_imp_space@PLT
		.LBE802:
		.LBE801:
		.LBB803:
 2021             space
 2022             printstring(name)
				leal	-284(%ebp), %eax
				leal	NAME.7308@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-284(%ebp), %edx
				leal	-284(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
		.LBE803:
		.LBB804:
		.LBB805:
				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
		.LBE805:
		.LBE804:
		.LBB806:
		.LBB807:
				call	_imp_space@PLT
		.LBE807:
		.LBE806:
 2023             space
 2024             count = count-1
				movl	COUNT.7309@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movl	%eax, COUNT.7309@GOTOFF(%ebx)
 2025             %IF count <= 0 %START
				movl	COUNT.7309@GOTOFF(%ebx), %eax
				testl	%eax, %eax
				jg	.L1545
				nop
		.L1535:
 2026                count = 5
				movl	$5, COUNT.7309@GOTOFF(%ebx)
		.LBB808:
		.LBB809:
 2027                name = ""
				movb	$0, -796(%ebp)
				movl	$0, -795(%ebp)
				leal	-791(%ebp), %edx
				movl	$0, %eax
				movb	%al, (%edx)
				addl	$1, %edx
				movw	%ax, (%edx)
				addl	$2, %edx
				movl	$62, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-540(%ebp), %eax
				leal	-796(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE809:
				leal	-796(%ebp), %eax
				leal	-540(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-796(%ebp), %eax
		.LBE808:
				subl	$4, %esp
				pushl	$8
				pushl	%eax
				leal	NAME.7308@GOTOFF(%ebx), %eax
				pushl	%eax
				call	_imp_strncpy@PLT
				addl	$16, %esp
		.LBB810:
		.LBB811:
				call	_imp_newline@PLT
		.LBE811:
		.LBE810:
 2028                newline
 2029             %FINISH
 2030          %FINISH
 2031       %END
				jmp	.L1535
		.L1534:
		.L1545:
				nop
		.L1514:
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1536
				call	__stack_chk_fail_local
		.L1536:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE214:
				.section	.rodata
		.LC104:
				.string	""
		SETSUBS.7339:
		.LFB215:
 2032
 2033       %ROUTINE set subs(%INTEGER n)
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%edi
				pushl	%esi
				pushl	%ebx
				subl	$1068, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %eax
				movl	%eax, -1076(%ebp)
				movl	%ecx, -1068(%ebp)
				movl	%gs:20, %edi
				movl	%edi, -28(%ebp)
				xorl	%edi, %edi
 2034
 2035          !update the app field in n array descriptors
 2036
 2037          %INTEGER p
 2038          p = tmax
				movl	32(%eax), %eax
				movl	56(%eax), %eax
				movl	%eax, -1056(%ebp)
		.L1547:
 2039          %WHILE n > 0 %CYCLE
				cmpl	$0, 8(%ebp)
				jle	.L1559
				nop
		.L1549:
 2040             %SIGNAL 15,15 %IF p < tbase
				movl	-1076(%ebp), %eax
				movl	32(%eax), %eax
				movl	60(%eax), %eax
				cmpl	%eax, -1056(%ebp)
				jge	.L1560
				leal	-540(%ebp), %eax
				subl	$8, %esp
				leal	.LC104@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	.L1552
				movl	_imp_current_line@GOT(%ebx), %eax
				movl	(%eax), %eax
				movl	%eax, -1072(%ebp)
				jmp	.L1553
		.L1552:
				movl	$2040, -1072(%ebp)
		.L1553:
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L1554
				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	.L1555
		.L1554:
		.LBB812:
				leal	-1052(%ebp), %eax
				leal	.LC21@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-796(%ebp), %eax
				leal	-1052(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE812:
				leal	-284(%ebp), %eax
				leal	-796(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.L1555:
				pushl	$0
				pushl	$15
				pushl	$15
				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	-1072(%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
				jmp	.L1551
		.L1560:
				nop
		.L1551:
 2041             tag(p)_app = dimension
				movl	DIMENSION.6146@GOTOFF(%ebx), %ecx
				movl	-1076(%ebp), %eax
				movl	32(%eax), %eax
				movl	68(%eax), %esi
				movl	-1056(%ebp), %edx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%esi, %eax
				addl	$44532, %eax
				movl	%ecx, (%eax)
 2042             p = p-1;  n = n-1
				subl	$1, -1056(%ebp)
				subl	$1, 8(%ebp)
 2043          %REPEAT
				jmp	.L1547
		.L1559:
 2044       %END
				nop
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1557
				call	__stack_chk_fail_local
		.L1557:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE215:
		SETBP.7348:
		.LFB216:
 2045
 2046       %ROUTINE set bp
				pushl	%ebp
				movl	%esp, %ebp
				pushl	%esi
				pushl	%ebx
				subl	$16, %esp
				call	__x86.get_pc_thunk.bx
				addl	$_GLOBAL_OFFSET_TABLE_, %ebx
				movl	%ecx, %esi
				movl	%ecx, -12(%ebp)
 2047
 2048          !define a constant bound pair from the last stacked constants
 2049
 2050          pending = pending-2
				movl	16(%esi), %eax
				subl	$2, %eax
				movl	%eax, 16(%esi)
 2051          lb = pstack(pending+1);  ub = pstack(pending+2)
				movl	16(%esi), %eax
				movl	PSTACK.7306@GOTOFF(%ebx,%eax,4), %eax
				movl	%eax, LB.7290@GOTOFF(%ebx)
				movl	16(%esi), %eax
				addl	$1, %eax
				movl	PSTACK.7306@GOTOFF(%ebx,%eax,4), %eax
				movl	%eax, UB.7291@GOTOFF(%ebx)
 2052          %IF ub < lb-1 %START
				movl	LB.7290@GOTOFF(%ebx), %eax
				leal	-1(%eax), %edx
				movl	UB.7291@GOTOFF(%ebx), %eax
				cmpl	%eax, %edx
				jle	.L1567
				nop
		.L1563:
 2053             pos1 = 0;  next = link;  fault(11)
				movl	$0, POS1.6143@GOTOFF(%ebx)
				movl	24(%esi), %eax
				movl	%eax, 28(%esi)
				movl	32(%esi), %eax
				subl	$12, %esp
				pushl	$11
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
 2054             ub = lb
				movl	LB.7290@GOTOFF(%ebx), %eax
				movl	%eax, UB.7291@GOTOFF(%ebx)
				jmp	.L1563
		.L1567:
 2055          %FINISH
 2056          set const(lb);  set const(ub)
				movl	LB.7290@GOTOFF(%ebx), %edx
				movl	32(%esi), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	%edx
				movl	%eax, %ecx
				call	SETCONST.6310
				addl	$16, %esp
				movl	UB.7291@GOTOFF(%ebx), %edx
				movl	32(%esi), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	%edx
				movl	%eax, %ecx
				call	SETCONST.6310
				addl	$16, %esp
 2057          put('b') %UNLESS class = 146
				movl	20(%esi), %eax
				cmpl	$146, %eax
				je	.L1568
				subl	$12, %esp
				pushl	$98
				call	PUT@PLT
				addl	$16, %esp
				nop
		.L1565:
 2058       %END
				jmp	.L1565
		.L1568:
				nop
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE216:
		COMPILEEND.7353:
		.LFB217:
 2059
 2060       %ROUTINE compile end(%INTEGER type)
				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
 2061
 2062          ! type = 0:eof, 1:eop, 2:end
 2063
 2064          %IF access # 0 %START
				movl	32(%esi), %eax
				movl	28(%eax), %eax
				testl	%eax, %eax
				je	.L1595
				nop
				jmp	.L1577
		.L1596:
 2065             open = 0
				movl	32(%esi), %eax
				movl	$0, %edx
				movl	%edx, 24(%eax)
 2066             fault(19) %IF block form > proc;           !can reach end
				movl	32(%esi), %eax
				movl	40(%eax), %eax
				cmpl	$7, %eax
				jle	.L1596
				movl	32(%esi), %eax
				subl	$12, %esp
				pushl	$19
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1577
		.L1571:
		.L1573:
		.L1595:
				nop
		.L1574:
		.L1577:
 2067          %FINISH
 2068
 2069          %WHILE dict(dmin) >= 0 %CYCLE;                !finishes & repeats
				movl	32(%esi), %eax
				movl	44(%eax), %eax
				leal	-1(%eax), %edx
				movl	32(%esi), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				testl	%eax, %eax
				js	.L1597
				nop
		.L1576:
 2070             fault(17+dict(dmin)&1)
				movl	32(%esi), %eax
				movl	44(%eax), %eax
				leal	-1(%eax), %edx
				movl	32(%esi), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				andl	$1, %eax
				leal	17(%eax), %edx
				movl	32(%esi), %eax
				subl	$12, %esp
				pushl	%edx
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
 2071             dmin = dmin+1
				movl	32(%esi), %eax
				movl	44(%eax), %edx
				movl	32(%esi), %eax
				addl	$1, %edx
				movl	%edx, 44(%eax)
 2072          %REPEAT
				jmp	.L1577
		.L1597:
 2073          {delete names(0)}
 2074          put(';')
				subl	$12, %esp
				pushl	$59
				call	PUT@PLT
				addl	$16, %esp
 2075          put(';') %IF type = 1;       !endofprogram
				cmpl	$1, 8(%ebp)
				jne	.L1598
				subl	$12, %esp
				pushl	$59
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1579
		.L1598:
				nop
		.L1579:
 2076
 2077          bflags = bflags!open;                         !show if it returns
				movl	32(%esi), %eax
				movl	20(%eax), %eax
				movl	(%eax), %edx
				movl	32(%esi), %eax
				movl	24(%eax), %eax
				orl	%eax, %edx
				movl	32(%esi), %eax
				movl	20(%eax), %eax
				movl	%edx, (%eax)
 2078
 2079          def lab(0) %IF block tag # 0 %AND level # 1;  !for jump around
				movl	32(%esi), %eax
				movl	16(%eax), %eax
				testl	%eax, %eax
				je	.L1599
				movl	32(%esi), %eax
				movl	52(%eax), %eax
				cmpl	$1, %eax
				je	.L1600
				subl	$12, %esp
				pushl	$0
				movl	%esi, %ecx
				call	DEFLAB.7311
				addl	$16, %esp
				jmp	.L1581
		.L1599:
				nop
				jmp	.L1581
		.L1600:
				nop
		.L1581:
 2080          %IF type # 2 %START;                          !eop, eof
				cmpl	$2, 8(%ebp)
				je	.L1601
				nop
		.L1584:
 2081             fault(16) %IF level # type;                !end missing
				movl	32(%esi), %eax
				movl	52(%eax), %eax
				cmpl	8(%ebp), %eax
				je	.L1602
				movl	32(%esi), %eax
				subl	$12, %esp
				pushl	$16
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
				nop
		.L1586:
 2082          %FINISH %ELSE %START
				jmp	.L1589
		.L1602:
				jmp	.L1589
		.L1601:
 2083             %IF level = 0 %START
				movl	32(%esi), %eax
				movl	52(%eax), %eax
				testl	%eax, %eax
				jne	.L1603
				nop
		.L1589:
 2084                fault(15);                                 !spurious end
				movl	32(%esi), %eax
				subl	$12, %esp
				pushl	$15
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
 2085             %FINISH
 2086          %FINISH
 2087
 2088          !end mark = 11;               !IMP77
 2089       %END
				jmp	.L1589
		.L1587:
		.L1603:
				nop
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1591
				call	__stack_chk_fail_local
		.L1591:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE217:
		DEF.7366:
		.LFB218:
 2090
 2091       %ROUTINE def(%INTEGER p)
				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
 2092
 2093          !dump a descriptor
 2094
 2095          %INTEGER t, f, type
 2096          %RECORD(tagfm)%NAME v;      !imp77:
 2097          defs = defs+1
				movl	12(%esi), %eax
				addl	$1, %eax
				movl	%eax, 12(%esi)
 2098          v == tag(p)
				movl	32(%esi), %eax
				movl	68(%eax), %ecx
				movl	8(%ebp), %edx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	$44528, %eax
				addl	%ecx, %eax
				addl	$4, %eax
				movl	%eax, -32(%ebp)
 2099          t = 0
				movl	$0, -28(%ebp)
 2100          put('$')
				subl	$12, %esp
				pushl	$36
				call	PUT@PLT
				addl	$16, %esp
 2101          %UNLESS v_index < 0 %START;                   !no index for subnames
				movl	-32(%ebp), %eax
				movl	12(%eax), %eax
				testl	%eax, %eax
				js	.L1634
				nop
		.L1606:
 2102             id = id+1 %AND v_index = id %IF v_index = 0
				movl	-32(%ebp), %eax
				movl	12(%eax), %eax
				testl	%eax, %eax
				jne	.L1635
				movl	32(%esi), %eax
				movl	48(%eax), %edx
				movl	32(%esi), %eax
				addl	$1, %edx
				movl	%edx, 48(%eax)
				movl	32(%esi), %eax
				movl	48(%eax), %edx
				movl	-32(%ebp), %eax
				movl	%edx, 12(%eax)
				jmp	.L1608
		.L1635:
				nop
		.L1608:
 2103             last def = v_index
				movl	-32(%ebp), %eax
				movl	12(%eax), %eax
				movl	%eax, LASTDEF.7289@GOTOFF(%ebx)
 2104             putword(lastdef)
				movl	LASTDEF.7289@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				call	PUTWORD@PLT
				addl	$16, %esp
 2105          %FINISH %else putword(0)
				jmp	.L1609
		.L1634:
				subl	$12, %esp
				pushl	$0
				call	PUTWORD@PLT
				addl	$16, %esp
		.L1609:
 2106          print ident(p, 1);                            !output the name
				movl	32(%esi), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	$1
				pushl	8(%ebp)
				movl	%eax, %ecx
				call	PRINTIDENT.6186
				addl	$16, %esp
 2107          t = v_flags
				movl	-32(%ebp), %eax
				movl	8(%eax), %eax
				movl	%eax, -28(%ebp)
 2108          type = t
				movl	-28(%ebp), %eax
				movl	%eax, -24(%ebp)
 2109          type = type&(\(7<<4)) %IF type&(7<<4) >= 6<<4;!routine & pred
				andl	$-113, -24(%ebp)
		.L1610:
 2110          put(','); put(type&2_1111111);            !type & form
				subl	$12, %esp
				pushl	$44
				call	PUT@PLT
				addl	$16, %esp
				movl	-24(%ebp), %eax
				andl	$127, %eax
				subl	$12, %esp
				pushl	%eax
				call	PUT@PLT
				addl	$16, %esp
 2111          f = v_format
				movl	-32(%ebp), %eax
				movl	4(%eax), %eax
				movl	%eax, -36(%ebp)
 2112          f = tag(f)_index %IF t&16_70 = record<<4
				movl	-28(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1636
				movl	32(%esi), %eax
				movl	68(%eax), %ecx
				movl	-36(%ebp), %edx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44544, %eax
				movl	(%eax), %eax
				movl	%eax, -36(%ebp)
				jmp	.L1612
		.L1636:
				nop
		.L1612:
 2113          f = v_index %IF f < 0
				cmpl	$0, -36(%ebp)
				jns	.L1637
				movl	-32(%ebp), %eax
				movl	12(%eax), %eax
				movl	%eax, -36(%ebp)
				jmp	.L1614
		.L1637:
				nop
		.L1614:
 2114          op(',', f);               !format
				movl	32(%esi), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	-36(%ebp)
				pushl	$44
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
 2115          f = otype+t>>4&2_1111000
				movl	-28(%ebp), %eax
				shrl	$4, %eax
				andl	$120, %eax
				movl	%eax, %edx
				movl	OTYPE.6108@GOTOFF(%ebx), %eax
				addl	%edx, %eax
				movl	%eax, -36(%ebp)
 2116          f = f!8 %IF class = 125;                      !add spec from %DUP
				movl	20(%esi), %eax
				cmpl	$125, %eax
				jne	.L1638
				orl	$8, -36(%ebp)
				jmp	.L1616
		.L1638:
				nop
		.L1616:
 2117          dim = v_app;                  !dimension
				movl	-32(%ebp), %eax
				movl	(%eax), %eax
				movl	%eax, DIM.6103@GOTOFF(%ebx)
		.LBB813:
 2118          dim = 0 %unless 0 < dim <= dim limit
				movl	DIM.6103@GOTOFF(%ebx), %eax
				movl	%eax, -20(%ebp)
				cmpl	$0, -20(%ebp)
				jle	.L1639
				cmpl	$6, -20(%ebp)
				jle	.L1640
		.LBE813:
				jmp	.L1618
		.L1639:
		.LBB814:
				nop
		.L1618:
		.LBE814:
				movl	$0, DIM.6103@GOTOFF(%ebx)
				jmp	.L1619
		.L1640:
		.LBB815:
				nop
		.L1619:
		.LBE815:
 2119          put(','); putlong(f+dim<<8);                              !otype & spec & prot
				subl	$12, %esp
				pushl	$44
				call	PUT@PLT
				addl	$16, %esp
				movl	DIM.6103@GOTOFF(%ebx), %eax
				sall	$8, %eax
				movl	%eax, %edx
				movl	-36(%ebp), %eax
				addl	%edx, %eax
				subl	$12, %esp
				pushl	%eax
				call	PUTLONG@PLT
				addl	$16, %esp
 2120          defs = 0 %IF t&parameters = 0
				movl	-28(%ebp), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1641
				movl	$0, %eax
				movl	%eax, 12(%esi)
				jmp	.L1621
		.L1641:
				nop
		.L1621:
 2121          f = t&15
				movl	-28(%ebp), %eax
				andl	$15, %eax
				movl	%eax, -36(%ebp)
		.LBB816:
 2122          %IF v_flags&spec # 0 %START
 2123             v_flags = v_flags&(\spec) %UNLESS 3 <= f <= 10
				movl	-36(%ebp), %eax
				movl	%eax, -16(%ebp)
				cmpl	$2, -16(%ebp)
				jle	.L1642
				cmpl	$10, -16(%ebp)
				jle	.L1643
		.LBE816:
				jmp	.L1623
		.L1642:
		.LBB817:
				nop
		.L1623:
		.LBE817:
				movl	-32(%ebp), %eax
				movl	8(%eax), %eax
				andb	$127, %al
				movl	%eax, %edx
				movl	-32(%ebp), %eax
				movl	%edx, 8(%eax)
				jmp	.L1624
		.L1643:
		.LBB818:
				nop
		.L1624:
		.LBE818:
 2124             ocount = -1;             ! external specs have no constants
				movl	$-1, OCOUNT.6136@GOTOFF(%ebx)
		.L1625:
 2125          %FINISH
 2126          dimension = 0
				movl	$0, DIMENSION.6146@GOTOFF(%ebx)
 2127          %if otype = 2 %and (f=2 %or f=12 %or f=14) %start
				movl	OTYPE.6108@GOTOFF(%ebx), %eax
				cmpl	$2, %eax
				jne	.L1644
				cmpl	$2, -36(%ebp)
				je	.L1645
				cmpl	$12, -36(%ebp)
				je	.L1646
				cmpl	$14, -36(%ebp)
				jne	.L1647
				jmp	.L1629
		.L1645:
				nop
				jmp	.L1629
		.L1646:
				nop
		.L1629:
				nop
				jmp	.L1627
		.L1647:
				nop
		.L1627:
 2128             v_flags = v_flags-1;            !convert to simple
				movl	-32(%ebp), %eax
				movl	8(%eax), %eax
				leal	-1(%eax), %edx
				movl	-32(%ebp), %eax
				movl	%edx, 8(%eax)
 2129          %finish
 2130       %END
				jmp	.L1627
		.L1644:
				nop
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1632
				call	__stack_chk_fail_local
		.L1632:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE218:
		DEFSLAB.7390:
		.LFB219:
 2131
 2132       %ROUTINE def s lab(%INTEGER n)
				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
 2133
 2134          !define a switch label, x defines the switch tag
 2135
 2136          %INTEGER p, l, b, w, bit
 2137          p = tag(x)_format;                            !pointer to table
				movl	X.6078@GOTOFF(%esi), %edx
				movl	32(%ebx), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44536, %eax
				movl	(%eax), %eax
				movl	%eax, -36(%ebp)
 2138          l = dict(p);                                  !lower bound
				movl	-36(%ebp), %eax
				leal	-1(%eax), %edx
				movl	32(%ebx), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				movl	%eax, -32(%ebp)
		.LBB819:
 2139          %IF l <= n <= dict(p+1) %START
				movl	8(%ebp), %eax
				movl	%eax, -28(%ebp)
				movl	-28(%ebp), %eax
				cmpl	-32(%ebp), %eax
				jl	.L1663
				movl	32(%ebx), %eax
				movl	68(%eax), %eax
				movl	-36(%ebp), %edx
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				cmpl	%eax, -28(%ebp)
				jg	.L1664
		.LBE819:
				nop
				jmp	.L1650
		.L1664:
				nop
		.L1650:
		.LBE820:
 2140             b = n-l
				movl	8(%ebp), %eax
				subl	-32(%ebp), %eax
				movl	%eax, -24(%ebp)
 2141             w = b>>4+p
				movl	-24(%ebp), %eax
				shrl	$4, %eax
				movl	%eax, %edx
				movl	-36(%ebp), %eax
				addl	%edx, %eax
				movl	%eax, -20(%ebp)
 2142             bit = 1<<(b&15)
				movl	-24(%ebp), %eax
				andl	$15, %eax
				movl	$1, %edx
				movl	%eax, %ecx
				sall	%cl, %edx
				movl	%edx, %eax
				movl	%eax, -16(%ebp)
 2143             %IF dict(w+2)&bit # 0 %START;                 !already set
				movl	-20(%ebp), %eax
				leal	1(%eax), %edx
				movl	32(%ebx), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %edx
				cmpl	$0, -16(%ebp)
				sete	%al
				movzbl	%al, %eax
				andl	%edx, %eax
				testl	%eax, %eax
				jne	.L1665
				nop
		.L1653:
 2144                fault(4) %IF pending # 0
				movl	16(%ebx), %eax
				testl	%eax, %eax
				je	.L1666
				movl	32(%ebx), %eax
				subl	$12, %esp
				pushl	$4
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
				nop
		.L1655:
 2145                %RETURN
				jmp	.L1648
		.L1666:
				jmp	.L1648
		.L1665:
 2146             %FINISH
 2147             dict(w+2) <- dict(w+2)!bit %IF pending # 0
				movl	16(%ebx), %eax
				testl	%eax, %eax
				je	.L1667
				movl	-20(%ebp), %eax
				leal	1(%eax), %edx
				movl	32(%ebx), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				movl	-20(%ebp), %edx
				leal	1(%edx), %ecx
				orl	-16(%ebp), %eax
				movl	%eax, %edx
				movl	32(%ebx), %eax
				movl	68(%eax), %eax
				addl	$2132, %ecx
				movl	%edx, 4(%eax,%ecx,4)
				jmp	.L1658
		.L1667:
				nop
		.L1658:
 2148             set const(n)
				movl	32(%ebx), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	8(%ebp)
				movl	%eax, %ecx
				call	SETCONST.6310
				addl	$16, %esp
 2149             op('_', tag(x)_index)
				movl	X.6078@GOTOFF(%esi), %edx
				movl	32(%ebx), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44544, %eax
				movl	(%eax), %edx
				movl	32(%ebx), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$95
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
 2150          %FINISH %ELSE %START
				jmp	.L1659
		.L1663:
		.LBB820:
 2151             fault(12)
				movl	32(%ebx), %eax
				subl	$12, %esp
				pushl	$12
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
		.L1659:
 2152          %FINISH
 2153          access = 1
				movl	32(%ebx), %eax
				movl	$1, %edx
				movl	%edx, 28(%eax)
 2154       %END
				nop
		.L1648:
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1660
				call	__stack_chk_fail_local
		.L1660:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE219:
		CALL.7404:
		.LFB220:
 2155
 2156       %ROUTINE call
				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
 2157          %RECORD(tagfm)%NAME T;      !IMP77:
 2158          t == tag(x)
				movl	X.6078@GOTOFF(%esi), %edx
				movl	32(%ebx), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	$44528, %eax
				addl	%ecx, %eax
				addl	$4, %eax
				movl	%eax, -16(%ebp)
 2159          op('@', t_index)
				movl	-16(%ebp), %eax
				movl	12(%eax), %edx
				movl	32(%ebx), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$64
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
 2160          access = 0 %IF t_flags&closed # 0;         !never comes back
				movl	32(%ebx), %eax
				movl	$0, %edx
				movl	%edx, 28(%eax)
		.L1669:
 2161          put('E') %IF t_app = 0;             !no parameters
				movl	-16(%ebp), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				jne	.L1674
				subl	$12, %esp
				pushl	$69
				movl	%esi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				nop
		.L1671:
 2162       %END
				jmp	.L1671
		.L1674:
				nop
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1673
				call	__stack_chk_fail_local
		.L1673:
				leal	-8(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%ebp
				ret
		.LFE220:
		POPDEF.7410:
		.LFB221:
 2163
 2164       %ROUTINE pop def
				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)
 2165          set const(pstack(pending));  pending = pending-1
				movl	16(%ebx), %edx
				subl	$1, %edx
				movl	PSTACK.7306@GOTOFF(%eax,%edx,4), %edx
				movl	32(%ebx), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	%edx
				movl	%eax, %ecx
				call	SETCONST.6310
				addl	$16, %esp
				movl	16(%ebx), %eax
				subl	$1, %eax
				movl	%eax, 16(%ebx)
 2166       %END
				nop
				movl	-4(%ebp), %ebx
				leave
				ret
		.LFE221:
		POPLIT.7413:
		.LFB222:
 2167
 2168       %ROUTINE pop lit
				pushl	%ebp
				movl	%esp, %ebp
				subl	$4, %esp
				call	__x86.get_pc_thunk.dx
				addl	$_GLOBAL_OFFSET_TABLE_, %edx
				movl	%ecx, %eax
				movl	%ecx, -4(%ebp)
 2169          %IF pending = 0 %THEN lit = 0 %ELSE %START
				movl	16(%eax), %ecx
				testl	%ecx, %ecx
				jne	.L1683
				movl	$0, LIT.6157@GOTOFF(%edx)
				jmp	.L1680
		.L1683:
				nop
		.L1679:
 2170             lit = pstack(pending);  pending = pending-1
				movl	16(%eax), %ecx
				subl	$1, %ecx
				movl	PSTACK.7306@GOTOFF(%edx,%ecx,4), %ecx
				movl	%ecx, LIT.6157@GOTOFF(%edx)
				movl	16(%eax), %edx
				subl	$1, %edx
				movl	%edx, 16(%eax)
		.L1680:
 2171          %FINISH
 2172       %END
				nop
				leave
				ret
		.LFE222:
		PUSH.7481:
		.LFB223:
 2173
 2174
 2175       %IF sstype < 0 %START;                       !executable statement
				movl	SSTYPE.6134@GOTOFF(%esi), %eax
				testl	%eax, %eax
				jns	.L1430
				nop
				jmp	.L1398
		.L1432:
 2176          %IF level = 0 %START;                     !outermost level
				movl	-4804(%ebp), %eax
				movl	52(%eax), %eax
				testl	%eax, %eax
				jne	.L1431
				nop
		.L1021:
 2177             fault(13);                             !*order
				subl	$12, %esp
				pushl	$13
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
 2178          %FINISH %ELSE %START
				jmp	.L1398
		.L1431:
 2179             %IF access = 0 %START
				movl	-4804(%ebp), %eax
				movl	28(%eax), %eax
				testl	%eax, %eax
				jne	.L1432
				nop
		.L1398:
 2180                access = 1;  fault(-1);                !only a warning
				movl	$1, %eax
				movl	-4804(%ebp), %ecx
				movl	%eax, 28(%ecx)
				subl	$12, %esp
				pushl	$-1
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1398
		.L1019:
		.L1023:
		.L1024:
		.L1430:
 2181             %FINISH
 2182          %FINISH
 2183       %FINISH
 2184
 2185       %IF diag&2 # 0 %START
 2186          newline %IF sym # nl
				movl	-4800(%ebp), %eax
				movl	SYM.6096@GOTOFF(%eax), %eax
				cmpl	$10, %eax
				je	.L1433
		.LBB716:
		.LBB717:
				movl	-4800(%ebp), %ebx
				call	_imp_newline@PLT
				jmp	.L1026
		.L1433:
		.LBE717:
		.LBE716:
				nop
		.L1026:
		.LBB718:
 2187          printstring("ss =")
				leal	-322(%ebp), %eax
				movl	-4800(%ebp), %edi
				leal	.LC15@GOTOFF(%edi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-4162(%ebp), %eax
				leal	-322(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-1602(%ebp), %eax
				leal	-4162(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
		.LBE718:
		.LBB719:
		.LBB720:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %ebx
				leal	-1602(%ebp), %eax
				movl	$64, %edx
				movl	%ebx, %edi
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				movl	-4800(%ebp), %edi
				movl	%edi, %ebx
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE720:
		.LBE719:
 2188          write(ss, 1)
				movl	SS.6128@GOTOFF(%edi), %eax
				subl	$8, %esp
				pushl	$1
				pushl	%eax
				movl	%edi, %ebx
				call	_imp_writeint@PLT
				addl	$16, %esp
		.LBB721:
		.LBB722:
				movl	%edi, %ebx
				call	_imp_newline@PLT
		.LBE722:
		.LBE721:
 2189          newline
 2190          count = 5
				movl	%edi, -4800(%ebp)
				movl	$5, COUNT.7309@GOTOFF(%edi)
		.LBB723:
		.LBB724:
 2191          name = ""
				movb	$0, -322(%ebp)
				movl	$0, -321(%ebp)
				leal	-317(%ebp), %eax
				movl	$251, %ecx
				movl	$0, %ebx
				movl	%ebx, (%eax)
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %edx
				andl	$-4, %edx
				subl	%edx, %eax
				addl	%eax, %ecx
				andl	$-4, %ecx
				shrl	$2, %ecx
				movl	%edx, %edi
				movl	%ebx, %eax
				rep stosl
				leal	-3906(%ebp), %eax
				leal	-322(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
		.LBE724:
				leal	-322(%ebp), %eax
				leal	-3906(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-322(%ebp), %eax
		.LBE723:
				subl	$4, %esp
				pushl	$8
				pushl	%eax
				movl	-4800(%ebp), %edi
				leal	NAME.7308@GOTOFF(%edi), %eax
				pushl	%eax
				movl	%edi, %ebx
				call	_imp_strncpy@PLT
				addl	$16, %esp
		.L1027:
 2192       %FINISH
 2193
 2194       next = ss
				movl	SS.6128@GOTOFF(%edi), %eax
				movl	%eax, -4616(%ebp)
 2195       pending = 0;  lmode = 0
				movl	$0, %eax
				movl	%eax, -4628(%ebp)
				movl	$0, %eax
				movl	%eax, -4644(%ebp)
 2196       link = 0;  decs = 0
				movl	$0, %eax
				movl	%eax, -4620(%ebp)
				movl	$0, -4764(%ebp)
 2197       defs = 0;  resln = 0;  done = 0
				movl	$0, %eax
				movl	%eax, -4632(%ebp)
				movl	$0, -4784(%ebp)
				movl	$0, -4760(%ebp)
 2198       ord = level
				movl	-4804(%ebp), %eax
				movl	52(%eax), %eax
				movl	%eax, -4780(%ebp)
 2199       ord = 1 %IF this >= 0;           !recordformat declarations
				movl	THIS.6120@GOTOFF(%edi), %eax
				testl	%eax, %eax
				jns	.L1028
				jmp	.L1031
		.L1028:
				movl	$1, -4780(%ebp)
		.L1029:
		.L1030:
				jmp	.L1031
		.L1462:
 2200 c(0):
 2201 top:  %IF next # link %START
				movl	-4616(%ebp), %edx
				movl	-4620(%ebp), %eax
				cmpl	%eax, %edx
				je	.L1434
				jmp	.L1405
		.L1389:
				jmp	*%eax
		.L1405:
				nop
 2202          get next;  ->c(class)
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	GETNEXT.7314
				movl	$2202, -4756(%ebp)
				movl	-4800(%ebp), %eax
				leal	.LC92@GOTOFF(%eax), %eax
				movl	%eax, -4752(%ebp)
				movl	-4624(%ebp), %eax
				movl	%eax, -4748(%ebp)
				nop
		.L1035:
 2203 c(*):debug("* Switch label not set: c(".itos(class,0).")"); %stop
				leal	-578(%ebp), %eax
				movl	-4800(%ebp), %edi
				leal	.LC9@GOTOFF(%edi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %eax
				movl	%eax, -4804(%ebp)
		.LBE727:
		.LBB728:
		.LBB729:
				movl	-4624(%ebp), %eax
				movl	%eax, -4700(%ebp)
				movl	$0, -4696(%ebp)
		.LBB730:
		.LBB731:
				leal	-578(%ebp), %eax
				subl	$4, %esp
				pushl	-4696(%ebp)
				pushl	-4700(%ebp)
				pushl	%eax
				movl	-4800(%ebp), %ebx
				call	_imp_itos@PLT
				addl	$12, %esp
		.LBE731:
		.LBE730:
				leal	-834(%ebp), %eax
				leal	-578(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-834(%ebp), %edx
				movl	%edx, -4808(%ebp)
		.LBE729:
		.LBB732:
				leal	-834(%ebp), %eax
				movl	-4800(%ebp), %edi
				leal	.LC16@GOTOFF(%edi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-834(%ebp), %edx
		.LBE732:
				leal	-834(%ebp), %eax
				subl	$4, %esp
				pushl	-4808(%ebp)
				pushl	%edx
				pushl	%eax
				movl	-4800(%ebp), %edi
				movl	%edi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-834(%ebp), %edx
		.LBE728:
				leal	-834(%ebp), %eax
				subl	$4, %esp
				pushl	-4804(%ebp)
				pushl	%edx
				pushl	%eax
				movl	%edi, -4800(%ebp)
				movl	%edi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-834(%ebp), %edx
		.LBE726:
				leal	-834(%ebp), %eax
				movl	%edx, %ebx
				movl	$256, %edx
				movl	(%ebx), %ecx
				movl	%ecx, (%eax)
				movl	-4(%ebx,%edx), %ecx
				movl	%ecx, -4(%eax,%edx)
				leal	4(%eax), %edi
				andl	$-4, %edi
				subl	%edi, %eax
				subl	%eax, %ebx
				addl	%eax, %edx
				andl	$-4, %edx
				movl	%edx, %eax
				shrl	$2, %eax
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-834(%ebp), %eax
		.LBE725:
				subl	$256, %esp
				movl	%esp, %edx
				movl	%eax, %ebx
				movl	$64, %eax
				movl	%edx, %edi
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				movl	-4800(%ebp), %edi
				movl	%edi, %ebx
				call	DEBUG@PLT
				addl	$256, %esp
				movl	$0, -4704(%ebp)
		.LBB733:
		.LBB734:
				subl	$12, %esp
				pushl	-4704(%ebp)
				movl	%edi, %ebx
				call	exit@PLT
		.L1034:
		.L1434:
		.LBE734:
		.LBE733:
 2204       %FINISH
 2205
 2206       !all done, tidy up declarations and jumps
 2207
 2208       newline %IF diag&2 # 0 %AND count # 5
				movl	-4800(%ebp), %eax
				movl	COUNT.7309@GOTOFF(%eax), %eax
				cmpl	$5, %eax
				je	.L1435
		.LBB735:
		.LBB736:
				movl	-4800(%ebp), %ebx
				call	_imp_newline@PLT
				jmp	.L1400
		.L1039:
		.L1435:
		.LBE736:
		.LBE735:
				nop
		.L1400:
 2209
 2210       %IF lmode&(loop!then!else) # 0 %START;    !pending labels and jumps
 2211          op('B', label-1) %IF lmode&loop # 0;   !repeat
				movl	-4804(%ebp), %edi
				movl	12(%edi), %eax
				leal	-1(%eax), %edx
				movl	68(%edi), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$66
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
		.L1040:
 2212          def lab(label)   %IF lmode&then # 0;   !entry from then
				movl	12(%edi), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEFLAB.7311
				addl	$16, %esp
		.L1041:
 2213          def lab(label-1) %IF lmode&else # 0;   !entry from else
				movl	12(%edi), %eax
				leal	-1(%eax), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEFLAB.7311
				addl	$16, %esp
		.L1042:
		.L1043:
 2214       %FINISH
 2215
 2216       %RETURN %IF decs = 0
				cmpl	$0, -4764(%ebp)
				je	.L1436
				nop
		.L1045:
				nop
		.L1017:
 2217       atom1 = error %AND %RETURN %IF atom1 # 0;      !%INTEGERROUTINE
				movl	-4800(%ebp), %eax
				movl	ATOM1.6079@GOTOFF(%eax), %eax
				testl	%eax, %eax
				je	.L1437
				movl	-4800(%ebp), %eax
				movl	$32768, ATOM1.6079@GOTOFF(%eax)
				jmp	.L1017
		.L1437:
				nop
		.L1048:
 2218       order = ord
				movl	-4780(%ebp), %eax
				movl	-4800(%ebp), %edi
				movl	%eax, ORDER.6139@GOTOFF(%edi)
 2219       decl = decl&(\15)+decmap(decl&15);           !construct declarator flags
				movl	DECL.6102@GOTOFF(%edi), %eax
				andl	$-16, %eax
				movl	%eax, %edx
				movl	DECL.6102@GOTOFF(%edi), %eax
				andl	$15, %eax
				movzwl	-4604(%ebp,%eax,2), %eax
				cwtl
				addl	%edx, %eax
				movl	%eax, DECL.6102@GOTOFF(%edi)
 2220       atom1 = atoms(decl&15);                      !generate class
				movl	DECL.6102@GOTOFF(%edi), %eax
				andl	$15, %eax
				movl	%eax, %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				movzbl	78822(%eax,%edx), %eax
				movzbl	%al, %eax
				movl	%eax, ATOM1.6079@GOTOFF(%edi)
 2221       %IF otype # 0 %START;                  !own, const etc.
				movl	OTYPE.6108@GOTOFF(%edi), %eax
				testl	%eax, %eax
				je	.L1438
				nop
		.L1058:
 2222          atom1 = atom1+1 %IF atom1 # proc
				movl	-4800(%ebp), %eax
				movl	ATOM1.6079@GOTOFF(%eax), %eax
				cmpl	$7, %eax
				je	.L1439
				movl	-4800(%ebp), %ecx
				movl	ATOM1.6079@GOTOFF(%ecx), %eax
				addl	$1, %eax
				movl	%eax, ATOM1.6079@GOTOFF(%ecx)
				jmp	.L1052
		.L1439:
				nop
		.L1052:
 2223          %IF otype = 2 %START;               !const
				movl	-4800(%ebp), %eax
				movl	OTYPE.6108@GOTOFF(%eax), %eax
				cmpl	$2, %eax
				jne	.L1440
				nop
		.L1054:
 2224             n = decl&15
				movl	-4800(%ebp), %edi
				movl	DECL.6102@GOTOFF(%edi), %eax
				andl	$15, %eax
				movl	%eax, -4772(%ebp)
 2225             %if n&1 # 0 %start
 2226                decl = decl!prot
				movl	DECL.6102@GOTOFF(%edi), %eax
				orb	$1, %ah
				movl	%eax, DECL.6102@GOTOFF(%edi)
 2227                decl = decl!const bit %IF decl&2_1111111 = iform
				movl	DECL.6102@GOTOFF(%edi), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1441
				movl	-4800(%ebp), %esi
				movl	DECL.6102@GOTOFF(%esi), %eax
				orb	$32, %ah
				movl	%eax, DECL.6102@GOTOFF(%esi)
				nop
		.L1057:
 2228             %finish
 2229          %else
				jmp	.L1058
		.L1056:
		.L1441:
				jmp	.L1058
		.L1440:
 2230             decl = decl!own bit
				movl	-4800(%ebp), %edi
				movl	DECL.6102@GOTOFF(%edi), %eax
				orb	$2, %ah
				movl	%eax, DECL.6102@GOTOFF(%edi)
				jmp	.L1058
		.L1050:
		.L1438:
 2231          %FINISH
 2232       %FINISH
 2233       sstype = 1 %IF sstype = 0 %AND atom1 = proc
				movl	-4800(%ebp), %eax
				movl	SSTYPE.6134@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jne	.L1442
				movl	-4800(%ebp), %eax
				movl	ATOM1.6079@GOTOFF(%eax), %eax
				cmpl	$7, %eax
				jne	.L1443
				movl	-4800(%ebp), %eax
				movl	$1, SSTYPE.6134@GOTOFF(%eax)
				jmp	.L1401
		.L1060:
		.L1442:
				nop
				jmp	.L1401
		.L1443:
				nop
		.L1401:
 2234       atom1 = atom1+1 %IF decl&spec # 0;             !onto spec variant
				movl	-4800(%ebp), %ebx
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, ATOM1.6079@GOTOFF(%ebx)
		.L1062:
 2235       ocount = 0 %AND cont = '+' %IF atom1 = 5;      !own array
				movl	ATOM1.6079@GOTOFF(%ebx), %eax
				cmpl	$5, %eax
				jne	.L1444
				movl	-4800(%ebp), %eax
				movl	$0, OCOUNT.6136@GOTOFF(%eax)
				movl	$43, CONT.6100@GOTOFF(%eax)
				jmp	.L1064
		.L1444:
				nop
		.L1064:
 2236       %IF anyform(decl&15) = 0 %START;               !check meaningful
				movl	-4800(%ebp), %eax
				movl	DECL.6102@GOTOFF(%eax), %eax
				andl	$15, %eax
				movzbl	-44(%ebp,%eax), %eax
				testb	%al, %al
				jne	.L1445
				nop
				jmp	.L1017
		.L1448:
 2237          %IF decl>>4&7 = record %START
				movl	-4800(%ebp), %eax
				movl	DECL.6102@GOTOFF(%eax), %eax
				andl	$16, %eax
				testl	%eax, %eax
				jne	.L1446
				nop
				jmp	.L1071
		.L1447:
 2238             this = fdef %IF tag(fdef)_flags&spec # 0
				movl	-4800(%ebp), %esi
				movl	%esi, %eax
				movl	FDEF.6119@GOTOFF(%eax), %eax
				movl	%eax, THIS.6120@GOTOFF(%esi)
		.L1069:
 2239             atom1 = error+21 %IF fdef = this;        !*context for format
				movl	%esi, %eax
				movl	FDEF.6119@GOTOFF(%eax), %edx
				movl	%esi, %eax
				movl	THIS.6120@GOTOFF(%eax), %eax
				cmpl	%eax, %edx
				jne	.L1447
				movl	-4800(%ebp), %eax
				movl	$32789, ATOM1.6079@GOTOFF(%eax)
				jmp	.L1071
		.L1068:
		.L1446:
				nop
		.L1071:
 2240          %FINISH
 2241          atom1 = error+10 %IF fdef = 0;              !*size
				movl	-4800(%ebp), %eax
				movl	FDEF.6119@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jne	.L1448
				movl	-4800(%ebp), %eax
				movl	$32778, ATOM1.6079@GOTOFF(%eax)
				nop
		.L1073:
 2242       %FINISH
 2243       %RETURN
				jmp	.L1017
		.L1066:
		.L1445:
				jmp	.L1017
		.L1074:
 2244
 2245 atop:   access = 0;  ->top
				movl	$0, %eax
				movl	-4804(%ebp), %ecx
				movl	%eax, 28(%ecx)
				jmp	.L1031
		.L1075:
		.L1076:
 2246
 2247 ! declarators
 2248
 2249 c(88):                                                !rtype
 2250 c(28): decl = x&(\7);                                 !stype
				movl	-4800(%ebp), %edi
				movl	X.6078@GOTOFF(%edi), %eax
				andl	$-8, %eax
				movl	%eax, DECL.6102@GOTOFF(%edi)
 2251        fdef = x&7;                                    !precision
				movl	X.6078@GOTOFF(%edi), %eax
				andl	$7, %eax
				movl	%eax, FDEF.6119@GOTOFF(%edi)
 2252        fdef = reals ln %IF x&2_1110001 = real<<4+1;  !convert to long
				movl	X.6078@GOTOFF(%edi), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1449
				movl	-4800(%ebp), %ebx
				movl	REALSLN.6109@GOTOFF(%ebx), %eax
				movl	%eax, FDEF.6119@GOTOFF(%ebx)
				jmp	.L1078
		.L1449:
				nop
		.L1078:
 2253        decs = 1;  ->top
				movl	$1, -4764(%ebp)
				jmp	.L1031
		.L1079:
		.L1080:
 2254 c(34):                                                !own
 2255 c(35): otype = x;  ord = 1;  ->top;                   !external
				movl	-4800(%ebp), %ecx
				movl	X.6078@GOTOFF(%ecx), %eax
				movl	%eax, OTYPE.6108@GOTOFF(%ecx)
				movl	$1, -4780(%ebp)
				jmp	.L1031
		.L1081:
 2256 c(152):decl = decl+x<<1;  ->top;                      !xname
				movl	-4800(%ebp), %edi
				movl	X.6078@GOTOFF(%edi), %eax
				leal	(%eax,%eax), %edx
				movl	DECL.6102@GOTOFF(%edi), %eax
				addl	%edx, %eax
				movl	%eax, DECL.6102@GOTOFF(%edi)
				jmp	.L1031
		.L1082:
		.L1083:
 2257 c(31):                                                !proc
 2258 c(32): spec mode = level+1;                           !fn/map
				movl	-4804(%ebp), %eax
				movl	52(%eax), %eax
				addl	$1, %eax
				movl	-4800(%ebp), %esi
				movl	%eax, SPECMODE.6135@GOTOFF(%esi)
 2259        decl = decl!prot %IF x = 9;                    !function
				movl	X.6078@GOTOFF(%esi), %eax
				cmpl	$9, %eax
				jne	.L1450
				movl	-4800(%ebp), %edi
				movl	DECL.6102@GOTOFF(%edi), %eax
				orb	$1, %ah
				movl	%eax, DECL.6102@GOTOFF(%edi)
				jmp	.L1086
		.L1085:
		.L1450:
				nop
		.L1086:
 2260 c(29): ord = 1;                                       !array
				movl	$1, -4780(%ebp)
 2261        dim = 0
				movl	-4800(%ebp), %eax
				movl	$0, DIM.6103@GOTOFF(%eax)
		.L1087:
 2262 c(30): decl = decl+x;                                 !name
				movl	-4800(%ebp), %ebx
				movl	DECL.6102@GOTOFF(%ebx), %edx
				movl	X.6078@GOTOFF(%ebx), %eax
				addl	%edx, %eax
				movl	%eax, DECL.6102@GOTOFF(%ebx)
 2263        decs = 1
				movl	$1, -4764(%ebp)
 2264        ->top
				jmp	.L1031
		.L1088:
 2265 c(27): lit = 0;                                       ! arrayd
				movl	-4800(%ebp), %eax
				movl	$0, LIT.6157@GOTOFF(%eax)
 2266        %IF pending # 0 %START
				movl	-4628(%ebp), %eax
				testl	%eax, %eax
				je	.L1451
				nop
				jmp	.L1093
		.L1453:
		.LBB739:
 2267           pop lit
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	POPLIT.7413
		.LBB737:
 2268           %UNLESS 0<lit<=dim limit %START
				movl	-4800(%ebp), %eax
				movl	LIT.6157@GOTOFF(%eax), %eax
				movl	%eax, -4708(%ebp)
				cmpl	$0, -4708(%ebp)
				jle	.L1452
				cmpl	$6, -4708(%ebp)
				jle	.L1453
		.LBE737:
				jmp	.L1092
		.L1452:
		.LBB738:
				nop
		.L1092:
		.LBE738:
				nop
		.L1093:
		.LBE739:
 2269              atom1 = error + 11;  %RETURN
				movl	-4800(%ebp), %eax
				movl	$32779, ATOM1.6079@GOTOFF(%eax)
				jmp	.L1017
		.L1090:
		.L1451:
 2270           %FINISH
 2271        %FINISH
 2272        dim = lit
				movl	-4800(%ebp), %esi
				movl	LIT.6157@GOTOFF(%esi), %eax
				movl	%eax, DIM.6103@GOTOFF(%esi)
 2273        decl = decl + x;  decs = 1
				movl	DECL.6102@GOTOFF(%esi), %edx
				movl	X.6078@GOTOFF(%esi), %eax
				addl	%edx, %eax
				movl	%eax, DECL.6102@GOTOFF(%esi)
				movl	$1, -4764(%ebp)
 2274        -> top
				jmp	.L1031
		.L1094:
 2275 c(37): x = x!subname;                                 !record
				movl	-4800(%ebp), %ebx
				movl	X.6078@GOTOFF(%ebx), %eax
				orb	$8, %ah
				movl	%eax, X.6078@GOTOFF(%ebx)
		.L1095:
 2276 c(36): lit = 0;                                       !string
				movl	-4800(%ebp), %eax
				movl	$0, LIT.6157@GOTOFF(%eax)
 2277        %IF pending # 0 %START
				movl	-4628(%ebp), %eax
				testl	%eax, %eax
				je	.L1454
				nop
				jmp	.L1100
		.L1456:
		.LBB742:
 2278          pop lit
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	POPLIT.7413
		.LBB740:
 2279           %UNLESS 0 < lit <= 255 %START;              !max length wrong
				movl	-4800(%ebp), %eax
				movl	LIT.6157@GOTOFF(%eax), %eax
				movl	%eax, -4712(%ebp)
				cmpl	$0, -4712(%ebp)
				jle	.L1455
				cmpl	$255, -4712(%ebp)
				jle	.L1456
		.LBE740:
				jmp	.L1099
		.L1455:
		.LBB741:
				nop
		.L1099:
		.LBE741:
				nop
		.L1100:
		.LBE742:
 2280              atom1 = error+10;  %RETURN
				movl	-4800(%ebp), %eax
				movl	$32778, ATOM1.6079@GOTOFF(%eax)
				jmp	.L1017
		.L1097:
		.L1454:
 2281           %FINISH
 2282        %FINISH
 2283        fdef = lit;                                    !format or length
				movl	-4800(%ebp), %ecx
				movl	LIT.6157@GOTOFF(%ecx), %eax
				movl	%eax, FDEF.6119@GOTOFF(%ecx)
		.L1101:
 2284 c(33): decl = x;                                      !switch
				movl	-4800(%ebp), %esi
				movl	X.6078@GOTOFF(%esi), %eax
				movl	%eax, DECL.6102@GOTOFF(%esi)
 2285        decs = 1
				movl	$1, -4764(%ebp)
 2286        ->top
				jmp	.L1031
		.L1102:
 2287 c(39): decl = decl!spec;                              !spec
				movl	-4800(%ebp), %esi
				movl	DECL.6102@GOTOFF(%esi), %eax
				orb	$-128, %al
				movl	%eax, DECL.6102@GOTOFF(%esi)
 2288        ocount = -1;                                   !no initialisation
				movl	$-1, OCOUNT.6136@GOTOFF(%esi)
 2289        spec mode = -1
				movl	$-1, SPECMODE.6135@GOTOFF(%esi)
 2290        ->top
				jmp	.L1031
		.L1103:
 2291 c(38): decl = 64+4;                                   !recordformat (spec)
				movl	-4800(%ebp), %edi
				movl	$68, DECL.6102@GOTOFF(%edi)
 2292        order = 1
				movl	$1, ORDER.6139@GOTOFF(%edi)
 2293        atom1 = x
				movl	X.6078@GOTOFF(%edi), %eax
				movl	%eax, ATOM1.6079@GOTOFF(%edi)
 2294        decl = decl!spec %if atom1 = 12;               !formatspec
				movl	ATOM1.6079@GOTOFF(%edi), %eax
				cmpl	$12, %eax
				jne	.L1457
				movl	-4800(%ebp), %edi
				movl	DECL.6102@GOTOFF(%edi), %eax
				orb	$-128, %al
				movl	%eax, DECL.6102@GOTOFF(%edi)
				jmp	.L1105
		.L1457:
				nop
		.L1105:
 2295        fdef = tmax+1;                                 !format tag
				movl	-4804(%ebp), %eax
				movl	56(%eax), %eax
				addl	$1, %eax
				movl	-4800(%ebp), %edx
				movl	%eax, FDEF.6119@GOTOFF(%edx)
 2296        %return
				jmp	.L1017
		.L1106:
 2297 c(175):id = id+1;  tag(x)_index = id;  %return;       !FSID
				movl	-4804(%ebp), %ebx
				movl	48(%ebx), %eax
				addl	$1, %eax
				movl	%eax, 48(%ebx)
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				movl	48(%ebx), %ecx
				movl	68(%ebx), %ebx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ebx, %eax
				addl	$44544, %eax
				movl	%ecx, (%eax)
				jmp	.L1017
		.L1107:
 2298 c(41): decs = 1;  decl = x!spec;  ->top;              !label
				movl	$1, -4764(%ebp)
				movl	-4800(%ebp), %edx
				movl	X.6078@GOTOFF(%edx), %eax
				orb	$-128, %al
				movl	%eax, DECL.6102@GOTOFF(%edx)
				jmp	.L1031
		.L1108:
 2299 c(133):recid = 0;  rbase = tmin-1;                    !fname
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				movl	$0, %edx
				movl	%edx, 8524(%eax)
				movl	-4800(%ebp), %esi
				movl	TMIN.6127@GOTOFF(%esi), %eax
				subl	$1, %eax
				movl	%eax, RBASE.6123@GOTOFF(%esi)
 2300        this = x
				movl	X.6078@GOTOFF(%esi), %eax
				movl	%eax, THIS.6120@GOTOFF(%esi)
 2301        fm base = fdef;  format list = tmin
				movl	FDEF.6119@GOTOFF(%esi), %eax
				movl	%eax, FMBASE.6148@GOTOFF(%esi)
				movl	TMIN.6127@GOTOFF(%esi), %eax
				movl	%eax, FORMATLIST.6150@GOTOFF(%esi)
 2302        def(this);                      ->top
				movl	THIS.6120@GOTOFF(%esi), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEF.7366
				addl	$16, %esp
				jmp	.L1031
		.L1109:
 2303 c(148):fdef = 0 %AND ->top %IF next = 0;              !reclb
				movl	-4616(%ebp), %eax
				testl	%eax, %eax
				jne	.L1458
				movl	-4800(%ebp), %eax
				movl	$0, FDEF.6119@GOTOFF(%eax)
				jmp	.L1031
		.L1458:
				nop
		.L1111:
 2304        get next;                                      !skip name
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	GETNEXT.7314
 2305        fdef = x
				movl	-4800(%ebp), %ebx
				movl	X.6078@GOTOFF(%ebx), %eax
				movl	%eax, FDEF.6119@GOTOFF(%ebx)
 2306        ->top
				jmp	.L1031
		.L1112:
 2307 c(127):put('}');  ->top;                              !%POUT
				subl	$12, %esp
				pushl	$125
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1113:
 2308 c(126):put('{');  ->top;                              !%PIN
				subl	$12, %esp
				pushl	$123
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1114:
 2309
 2310 c(174):set bp;                                        !rangerb
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	SETBP.7348
				jmp	.L1117
		.L1115:
				jmp	.L1117
		.L1116:
		.L1117:
 2311 c(171):                                               !fmlb
 2312 c(172):                                               !fmrb
 2313 c(173):put('~');  put(class-171+'A');  ->top;
				subl	$12, %esp
				pushl	$126
				movl	-4800(%ebp), %esi
				movl	%esi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				movl	-4624(%ebp), %eax
				subl	$106, %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1118:
 2314         !fmor
 2315 c(168):rbase = -rbase;                                !orrb
				movl	-4800(%ebp), %edi
				movl	RBASE.6123@GOTOFF(%edi), %eax
				negl	%eax
				movl	%eax, RBASE.6123@GOTOFF(%edi)
 2316        sstype = 0;  spec mode = 0
				movl	$0, SSTYPE.6134@GOTOFF(%edi)
				movl	$0, SPECMODE.6135@GOTOFF(%edi)
		.L1119:
 2317
 2318 c(147):search base = 0;                               !recrb
				movl	-4800(%ebp), %esi
				movl	$0, SEARCHBASE.6149@GOTOFF(%esi)
 2319        tag(this)_app = tmin
				movl	THIS.6120@GOTOFF(%esi), %edx
				movl	TMIN.6127@GOTOFF(%esi), %ecx
				movl	-4804(%ebp), %edi
				movl	68(%edi), %ebx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ebx, %eax
				addl	$44532, %eax
				movl	%ecx, (%eax)
 2320        tag(this)_format = rbase
				movl	THIS.6120@GOTOFF(%esi), %edx
				movl	RBASE.6123@GOTOFF(%esi), %ecx
				movl	68(%edi), %ebx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ebx, %eax
				addl	$44536, %eax
				movl	%ecx, (%eax)
 2321        ->top
				jmp	.L1031
		.L1120:
 2322
 2323 c(45):put('U') %IF x = 36;  ->top;                    !sign
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				cmpl	$36, %eax
				jne	.L1459
				subl	$12, %esp
				pushl	$85
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1459:
				nop
		.L1122:
				jmp	.L1031
		.L1123:
 2324 c(46):put('\');  ->top;                               !uop
				subl	$12, %esp
				pushl	$92
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1124:
				jmp	.L1128
		.L1125:
				jmp	.L1128
		.L1126:
				jmp	.L1128
		.L1127:
		.L1128:
 2325 c(47):                                                !mod
 2326 c(48):                                                !dot
 2327 c(42):                                                !op1
 2328 c(43):                                                !op2
 2329 c(44):put(operator(x));  ->top;                       !op3
				movl	-4800(%ebp), %ebx
				movl	X.6078@GOTOFF(%ebx), %eax
				subl	$1, %eax
				movzbl	-58(%ebp,%eax), %eax
				movzbl	%al, %eax
				subl	$12, %esp
				pushl	%eax
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1129:
		.L1130:
 2330
 2331 !conditions & jumps
 2332
 2333       %ROUTINE push(%INTEGER x)
				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)
 2334          %IF cnest(cp)&2 # x %START
				movl	8(%eax), %ecx
				movzbl	CNEST.7283@GOTOFF(%edx,%ecx), %ecx
				movzbl	%cl, %ebx
				cmpl	$2, 8(%ebp)
				sete	%cl
				movzbl	%cl, %ecx
				andl	%ebx, %ecx
				testl	%ecx, %ecx
				jne	.L1690
				nop
		.L1689:
 2335             cnest(cp) = cnest(cp)!1;  x = x+4
				movl	8(%eax), %ecx
				movzbl	CNEST.7283@GOTOFF(%edx,%ecx), %ecx
				movl	%ecx, %ebx
				orl	$1, %ebx
				movl	8(%eax), %ecx
				movb	%bl, CNEST.7283@GOTOFF(%edx,%ecx)
				addl	$4, 8(%ebp)
				jmp	.L1689
		.L1686:
		.L1690:
 2336          %FINISH
 2337          clab = clab+1 %IF cnest(cp)&1 # 0
				movl	4(%eax), %ecx
				addl	$1, %ecx
				movl	%ecx, 4(%eax)
		.L1687:
 2338          cnest(cp+1) = x;  cp = cp+1
				movl	8(%eax), %ecx
				addl	$1, %ecx
				movl	8(%ebp), %ebx
				movb	%bl, CNEST.7283@GOTOFF(%edx,%ecx)
				movl	8(%eax), %edx
				addl	$1, %edx
				movl	%edx, 8(%eax)
 2339       %END
				nop
				addl	$4, %esp
				popl	%ebx
				popl	%ebp
				ret
		.LFE223:
		POPLABEL.7486:
		.LFB224:
 2340
 2341       %ROUTINE pop label(%INTEGER mode)
				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, %ecx
				movl	%ecx, -12(%ebp)
				xorl	%ecx, %ecx
 2342          lmode = dict(dmin)
				movl	32(%eax), %edx
				movl	44(%edx), %edx
				leal	-1(%edx), %ecx
				movl	32(%eax), %edx
				movl	68(%edx), %edx
				addl	$2132, %ecx
				movl	4(%edx,%ecx,4), %edx
				movl	%edx, (%eax)
 2343          %IF lmode < 0 %OR lmode&1 # mode %START
				movl	(%eax), %edx
				testl	%edx, %edx
				js	.L1699
				cmpl	$1, 8(%ebp)
				sete	%dl
				movzbl	%dl, %edx
				movl	(%eax), %ecx
				andl	%ecx, %edx
				testl	%edx, %edx
				jne	.L1700
				jmp	.L1693
		.L1699:
				nop
		.L1693:
				nop
		.L1694:
 2344             fault(mode+8)
				movl	8(%ebp), %edx
				addl	$8, %edx
				movl	32(%eax), %eax
				subl	$12, %esp
				pushl	%edx
				movl	%eax, %ecx
				call	FAULT.6347
				addl	$16, %esp
 2345          %FINISH %ELSE %START
				jmp	.L1695
		.L1700:
 2346             dmin = dmin+1;  label = label-3
				movl	32(%eax), %edx
				movl	44(%edx), %ecx
				movl	32(%eax), %edx
				addl	$1, %ecx
				movl	%ecx, 44(%edx)
				movl	32(%eax), %edx
				movl	12(%edx), %edx
				movl	32(%eax), %eax
				subl	$3, %edx
				movl	%edx, 12(%eax)
		.L1695:
 2347          %FINISH
 2348       %END
				nop
				movl	-12(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1697
				call	__stack_chk_fail_local
		.L1697:
				leave
				ret
		.LFE224:
				.data
				.align 32
		CHAR.6153:
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.byte	10
				.align 32
		PHRASE.6172:
				.align 32
		GRAM.6178:
				.align 32
		GLINK.6180:
				.comm	X.6078,4,4
				.comm	FAULTY.6086,4,4
				.comm	STATS.6094,4,4
				.align 4
		GMAX.6171:
				.long	718
				.comm	DIAG.6162,4,4
				.comm	CONTROL.6161,4,4
				.align 4
		LIST.6160:
				.long	2
				.comm	BLOCKX.6159,4,4
				.comm	LP.6158,4,4
				.comm	LIT.6157,4,4
				.comm	CURRENTCHAR.6152,4,4
				.comm	FORMATLIST.6150,4,4
				.comm	SEARCHBASE.6149,4,4
				.comm	FMBASE.6148,4,4
				.comm	LOCAL.6147,4,4
				.comm	DIMENSION.6146,4,4
				.comm	POS.6145,4,4
				.comm	POS2.6144,4,4
				.comm	POS1.6143,4,4
				.align 4
		DP.6142:
				.long	1
				.comm	DUBIOUS.6141,4,4
				.comm	FORWARN.6140,4,4
				.comm	ORDER.6139,4,4
				.comm	COPY.6138,4,4
				.comm	LIMIT.6137,4,4
				.align 4
		OCOUNT.6136:
				.long	-1
				.comm	SPECMODE.6135,4,4
				.comm	SSTYPE.6134,4,4
				.comm	PROGMODE.6133,4,4
				.align 4
		PERM.6132:
				.long	1
				.comm	INCLUDE.6131,4,4
				.comm	INCLUDELIST.6130,4,4
				.comm	SS.6128,4,4
				.align 4
		TMIN.6127:
				.long	1200
				.align 4
		DMAX.6126:
				.long	1
				.align 4
		GMIN.6125:
				.long	1800
				.comm	STBASE.6124,4,4
				.comm	RBASE.6123,4,4
				.comm	NMAX.6122,4,4
				.comm	NMIN.6121,4,4
				.align 4
		THIS.6120:
				.long	-1
				.comm	FDEF.6119,4,4
				.comm	MAPGG.6118,4,4
				.comm	GG.6117,4,4
				.comm	G.6116,4,4
				.comm	FORCE.6115,4,4
				.comm	PFORMAT.6114,4,4
				.comm	PAPP.6113,4,4
				.comm	PTYPE.6112,4,4
				.comm	GENTYPE.6111,4,4
				.comm	LAST1.6110,4,4
				.align 4
		REALSLN.6109:
				.long	1
				.comm	OTYPE.6108,4,4
				.comm	ATOMFLAGS.6107,4,4
				.comm	PROTECTION.6106,4,4
				.comm	ESCAPECLASS.6105,4,4
				.comm	SPECGIVEN.6104,4,4
				.comm	DIM.6103,4,4
				.comm	DECL.6102,4,4
				.align 4
		CSYM.6101:
				.long	32
				.align 4
		CONT.6100:
				.long	32
				.comm	ENDMARK.6099,4,4
				.comm	QUOTE.6098,4,4
				.comm	SYMTYPE.6097,4,4
				.align 4
		SYM.6096:
				.long	10
				.comm	MONPOS.6095,4,4
				.comm	COLUMN.6093,4,4
				.comm	ERRORSYM.6092,4,4
				.comm	ERRORMARGIN.6091,4,4
				.comm	MARGIN.6090,4,4
				.comm	TEXTLINE.6089,4,4
				.comm	LINES.6088,4,4
				.comm	FAULTRATE.6087,4,4
				.comm	FORMAT.6084,4,4
				.comm	APP.6083,4,4
				.comm	TYPE.6082,4,4
				.comm	SUBATOM.6081,4,4
				.comm	ATOM2.6080,4,4
				.comm	ATOM1.6079,4,4
				.comm	CLASS.6077,4,4
				.align 4
		SPARENAMES.6046:
				.long	2047
				.section	.data.rel.local,"aw",@progbits
				.align 32
		REASON.6203:
				.long	.L71
				.long	.L71
				.long	.L71
				.long	.L71
				.long	.L71
				.long	.L71
				.long	.L71
				.long	.L71
				.long	.L71
				.long	.L71
				.section	.rodata
				.align 4
		__PRETTY_FUNCTION__.5625:
				.string	"_imp_SELECTOUTPUT"
				.align 4
		__PRETTY_FUNCTION__.5621:
				.string	"_imp_SELECTINPUT"
				.section	.data.rel.local
				.align 32
		ACT.6606:
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.long	.L479
				.align 32
		PACTION.6611:
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.long	.L491
				.comm	KEY.6599,4,4
				.comm	LA1.6625,4,4
				.comm	LA2.6626,4,4
				.comm	LSA.6627,4,4
				.comm	LT.6628,4,4
				.comm	LEN.6647,4,4
				.comm	CNEST.7283,16,4
				.comm	PSTACK.7306,160,32
				.comm	COUNT.7309,4,4
				.comm	NAME.7308,256,32
				.comm	UB.7291,4,4
				.comm	LB.7290,4,4
				.align 32
		C.7128:
				.long	.L1030
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1088
				.long	.L1076
				.long	.L1086
				.long	.L1087
				.long	.L1082
				.long	.L1083
				.long	.L1101
				.long	.L1079
				.long	.L1080
				.long	.L1095
				.long	.L1094
				.long	.L1103
				.long	.L1102
				.long	.L1036
				.long	.L1107
				.long	.L1126
				.long	.L1127
				.long	.L1128
				.long	.L1120
				.long	.L1123
				.long	.L1124
				.long	.L1125
				.long	.L1187
				.long	.L1185
				.long	.L1203
				.long	.L1205
				.long	.L1204
				.long	.L1036
				.long	.L1379
				.long	.L1129
				.long	.L1130
				.long	.L1131
				.long	.L1133
				.long	.L1134
				.long	.L1036
				.long	.L1139
				.long	.L1176
				.long	.L1159
				.long	.L1202
				.long	.L1036
				.long	.L1152
				.long	.L1146
				.long	.L1142
				.long	.L1144
				.long	.L1153
				.long	.L1140
				.long	.L1036
				.long	.L1206
				.long	.L1222
				.long	.L1216
				.long	.L1212
				.long	.L1196
				.long	.L1197
				.long	.L1198
				.long	.L1201
				.long	.L1199
				.long	.L1229
				.long	.L1230
				.long	.L1223
				.long	.L1231
				.long	.L1382
				.long	.L1075
				.long	.L1200
				.long	.L1255
				.long	.L1273
				.long	.L1274
				.long	.L1285
				.long	.L1036
				.long	.L1036
				.long	.L1267
				.long	.L1264
				.long	.L1265
				.long	.L1266
				.long	.L1269
				.long	.L1270
				.long	.L1271
				.long	.L1272
				.long	.L1172
				.long	.L1314
				.long	.L1275
				.long	.L1276
				.long	.L1277
				.long	.L1278
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1151
				.long	.L1282
				.long	.L1381
				.long	.L1036
				.long	.L1262
				.long	.L1254
				.long	.L1113
				.long	.L1112
				.long	.L1249
				.long	.L1036
				.long	.L1250
				.long	.L1256
				.long	.L1292
				.long	.L1108
				.long	.L1315
				.long	.L1377
				.long	.L1378
				.long	.L1290
				.long	.L1132
				.long	.L1304
				.long	.L1337
				.long	.L1291
				.long	.L1240
				.long	.L1300
				.long	.L1338
				.long	.L1238
				.long	.L1239
				.long	.L1119
				.long	.L1109
				.long	.L1173
				.long	.L1036
				.long	.L1321
				.long	.L1081
				.long	.L1305
				.long	.L1235
				.long	.L1339
				.long	.L1343
				.long	.L1346
				.long	.L1349
				.long	.L1350
				.long	.L1351
				.long	.L1352
				.long	.L1298
				.long	.L1143
				.long	.L1380
				.long	.L1268
				.long	.L1138
				.long	.L1283
				.long	.L1118
				.long	.L1036
				.long	.L1376
				.long	.L1115
				.long	.L1116
				.long	.L1117
				.long	.L1114
				.long	.L1106
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.long	.L1036
				.align 32
		LITOP.7262:
				.long	.L1364
				.long	.L1365
				.long	.L1357
				.long	.L1368
				.long	.L1366
				.long	.L1374
				.long	.L1375
				.long	.L1372
				.long	.L1373
				.long	.L1354
				.long	.L1367
				.long	.L1356
				.comm	LASTDEF.7289,4,4
				.section	.rodata
				.align 4
		__PRETTY_FUNCTION__.5597:
				.string	"_imp_INPUTSTREAM"
				.section	.data.rel.local
				.align 32
		FM.6352:
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.long	.L174
				.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:
		.LFB225:
				movl	(%esp), %eax
				ret
		.LFE225:
				.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:
		.LFB226:
				movl	(%esp), %edx
				ret
		.LFE226:
				.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:
		.LFB227:
				movl	(%esp), %ebx
				ret
		.LFE227:
				.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:
		.LFB228:
				movl	(%esp), %esi
				ret
		.LFE228:
		.Letext0:
 2349
 2350 c(56):                                         !and
 2351 c(57):push(x);  ->top;                         !or
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	PUSH.7481
				addl	$16, %esp
				jmp	.L1031
		.L1131:
 2352 c(58):cnest(cp) = cnest(cp)!!2;  ->top;        !not
				movl	-4636(%ebp), %eax
				movl	-4800(%ebp), %ecx
				movzbl	CNEST.7283@GOTOFF(%ecx,%eax), %eax
				xorl	$2, %eax
				movl	%eax, %edx
				movl	-4636(%ebp), %eax
				movb	%dl, CNEST.7283@GOTOFF(%ecx,%eax)
				jmp	.L1031
		.L1132:
 2353
 2354 c(138):x = 128+32+16+4;                        !csep: treat like %WHILE
				movl	-4800(%ebp), %eax
				movl	$180, X.6078@GOTOFF(%eax)
				jmp	.L1134
		.L1133:
		.L1134:
 2355 c(59):                                         !while
 2356 c(60):%IF class = 138 %THEN op('f', label-1) %C
				movl	-4624(%ebp), %eax
				cmpl	$138, %eax
				jne	.L1460
				movl	-4804(%ebp), %esi
				movl	12(%esi), %eax
				leal	-1(%eax), %edx
				movl	68(%esi), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$102
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				jmp	.L1139
		.L1460:
				nop
		.L1136:
				movl	-4804(%ebp), %eax
				movl	12(%eax), %eax
				leal	-1(%eax), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEFLAB.7311
				addl	$16, %esp
				jmp	.L1139
		.L1137:
		.L1138:
		.L1139:
 2357                       %ELSE def lab(label-1);  !until
 2358 c(166):                                        !runtil
 2359 c(62):lmode = (lmode&(else!loop)) !(x>>3);     !cword
				movl	-4644(%ebp), %eax
				andl	$24, %eax
				movl	%eax, %edx
				movl	-4800(%ebp), %esi
				movl	X.6078@GOTOFF(%esi), %eax
				shrl	$3, %eax
				orl	%edx, %eax
				movl	%eax, -4644(%ebp)
 2360       clab = label;  cp = 1;  cnest(1) = x&7
				movl	-4804(%ebp), %eax
				movl	12(%eax), %eax
				movl	%eax, -4640(%ebp)
				movl	$1, %eax
				movl	%eax, -4636(%ebp)
				movl	X.6078@GOTOFF(%esi), %eax
				andl	$7, %eax
				movb	%al, 1+CNEST.7283@GOTOFF(%esi)
 2361       ->top
				jmp	.L1031
		.L1140:
 2362 c(72):pop label(0);                            !repeat
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	POPLABEL.7486
				addl	$16, %esp
 2363       def lab(label+1) %IF lmode&32 # 0;  ->atop
				movl	-4804(%ebp), %eax
				movl	12(%eax), %eax
				leal	1(%eax), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEFLAB.7311
				addl	$16, %esp
		.L1141:
				jmp	.L1074
		.L1142:
 2364 c(69):pop label(1);               ->top;       !finish
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	$1
				movl	%eax, %ecx
				call	POPLABEL.7486
				addl	$16, %esp
				jmp	.L1031
		.L1143:
		.L1144:
 2365 c(163):                                        !xelse
 2366 c(70):pop label(1);                            !finish else ...
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	$1
				movl	%eax, %ecx
				call	POPLABEL.7486
				addl	$16, %esp
 2367       fault(7) %IF lmode&3 = 3;                !dangling else
				subl	$12, %esp
				pushl	$7
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
		.L1145:
		.L1146:
 2368 c(68):lmode = (lmode&else)!3;                  !...else...
				movl	-4644(%ebp), %eax
				andl	$8, %eax
				orl	$3, %eax
				movl	%eax, -4644(%ebp)
 2369       %IF access # 0 %START
				movl	-4804(%ebp), %eax
				movl	28(%eax), %eax
				testl	%eax, %eax
				je	.L1461
				nop
		.L1148:
 2370          op('F', label-1);  lmode = else!3
				movl	-4804(%ebp), %ecx
				movl	12(%ecx), %eax
				leal	-1(%eax), %edx
				movl	68(%ecx), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$70
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				movl	$11, %eax
				movl	%eax, -4644(%ebp)
				jmp	.L1148
		.L1461:
 2371       %FINISH
 2372       def lab(label)
				movl	-4804(%ebp), %eax
				movl	12(%eax), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEFLAB.7311
				addl	$16, %esp
 2373       ->top %IF next # 0
				nop
				jmp	.L1031
		.L1500:
				movl	-4616(%ebp), %eax
				testl	%eax, %eax
				jne	.L1462
				jmp	.L1154
		.L1150:
		.L1151:
				jmp	.L1154
		.L1152:
				jmp	.L1154
		.L1153:
		.L1154:
 2374
 2375 c(120):                                        !%MSTART
 2376 c(67):                                         !start
 2377 c(71):                                         !cycle
 2378 stcy: def lab(label-1) %AND lmode = loop %IF lmode = 0;!cycle
				movl	-4644(%ebp), %eax
				testl	%eax, %eax
				jne	.L1463
				movl	-4804(%ebp), %eax
				movl	12(%eax), %eax
				leal	-1(%eax), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEFLAB.7311
				addl	$16, %esp
				movl	$16, %eax
				movl	%eax, -4644(%ebp)
				jmp	.L1156
		.L1463:
				nop
		.L1156:
 2379       dmin = dmin-1;  abandon(3) %IF dmin <= dmax
				movl	-4804(%ebp), %edi
				movl	44(%edi), %eax
				subl	$1, %eax
				movl	%eax, 44(%edi)
				movl	-4800(%ebp), %eax
				movl	DMAX.6126@GOTOFF(%eax), %eax
				movl	44(%edi), %edx
				cmpl	%eax, %edx
				jg	.L1464
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	$3
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L1158
		.L1464:
				nop
		.L1158:
 2380       dict(dmin) = lmode
				movl	-4804(%ebp), %esi
				movl	44(%esi), %eax
				leal	-1(%eax), %ecx
				movl	68(%esi), %eax
				movl	-4644(%ebp), %edx
				addl	$2132, %ecx
				movl	%edx, 4(%eax,%ecx,4)
 2381       label = label+3
				movl	12(%esi), %eax
				addl	$3, %eax
				movl	%eax, 12(%esi)
 2382       %RETURN
				jmp	.L1017
		.L1159:
 2383
 2384 c(64):fault(13) %IF dict(dmin) >= 0 %OR inhibit # 0;  !on event
				movl	-4804(%ebp), %esi
				movl	44(%esi), %eax
				leal	-1(%eax), %edx
				movl	68(%esi), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				testl	%eax, %eax
				jns	.L1465
				movl	-4804(%ebp), %eax
				movl	8(%eax), %eax
				testl	%eax, %eax
				je	.L1466
				jmp	.L1161
		.L1465:
				nop
		.L1161:
				subl	$12, %esp
				pushl	$13
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1162
		.L1466:
				nop
		.L1162:
 2385       inhibit = 1
				movl	$1, %eax
				movl	-4804(%ebp), %ebx
				movl	%eax, 8(%ebx)
 2386       last array = tmax-1
				movl	56(%ebx), %eax
				subl	$1, %eax
				movl	%eax, 4(%ebx)
 2387       n = 0
				movl	$0, -4772(%ebp)
 2388       n = 16_FFFF %IF pending = 0;      !* = all events
				movl	-4628(%ebp), %eax
				testl	%eax, %eax
				jne	.L1467
				movl	$65535, -4772(%ebp)
				jmp	.L1171
		.L1164:
		.L1467:
				nop
		.L1165:
		.L1171:
 2389       %WHILE pending > 0 %CYCLE
				movl	-4628(%ebp), %eax
				testl	%eax, %eax
				jle	.L1468
				nop
		.L1167:
 2390          pop lit;  fault(10) %IF lit&(\15) # 0;!too big
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	POPLIT.7413
				subl	$12, %esp
				pushl	$10
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
		.L1168:
 2391          j = 1<<lit
				movl	-4800(%ebp), %eax
				movl	LIT.6157@GOTOFF(%eax), %eax
				movl	$1, %edx
				movl	%eax, %ecx
				sall	%cl, %edx
				movl	%edx, %eax
				movl	%eax, -4776(%ebp)
 2392          dubious = 1 %IF n&j # 0
				cmpl	$0, -4776(%ebp)
				sete	%al
				movzbl	%al, %eax
				andl	-4772(%ebp), %eax
				testl	%eax, %eax
				jne	.L1469
				movl	-4800(%ebp), %eax
				movl	$1, DUBIOUS.6141@GOTOFF(%eax)
				jmp	.L1170
		.L1469:
				nop
		.L1170:
 2393          n = n!j;                              !construct bit mask
				movl	-4776(%ebp), %eax
				orl	%eax, -4772(%ebp)
 2394       %REPEAT
				jmp	.L1171
		.L1468:
 2395       op('o', n);  op(',', label)
				movl	-4804(%ebp), %esi
				movl	%esi, %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	-4772(%ebp)
				pushl	$111
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				movl	%esi, %eax
				movl	12(%eax), %edx
				movl	%esi, %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$44
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
 2396       lmode = then!1;  ->stcy
				movl	$5, %eax
				movl	%eax, -4644(%ebp)
				jmp	.L1154
		.L1172:
 2397
 2398
 2399 c(104):op('J', tag(x)_index);                  !l
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				movl	-4804(%ebp), %edi
				movl	68(%edi), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44544, %eax
				movl	(%eax), %edx
				movl	68(%edi), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$74
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
 2400        inhibit = 1;            ->atop
				movl	$1, %eax
				movl	%eax, 8(%edi)
				jmp	.L1074
		.L1173:
 2401 c(149):stats = stats-1;                        !lab
				movl	-4800(%ebp), %esi
				movl	STATS.6094@GOTOFF(%esi), %eax
				subl	$1, %eax
				movl	%eax, STATS.6094@GOTOFF(%esi)
 2402        access = 1;  inhibit = 1
				movl	$1, %eax
				movl	-4804(%ebp), %ecx
				movl	%eax, 28(%ecx)
				movl	$1, %eax
				movl	%eax, 8(%ecx)
 2403        fault(13) %IF x < last array;           !jump round array dec
				movl	X.6078@GOTOFF(%esi), %eax
				movl	4(%ecx), %edx
				cmpl	%eax, %edx
				jle	.L1470
				subl	$12, %esp
				pushl	$13
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1175
		.L1470:
				nop
		.L1175:
 2404        op('L', tag(x)_index);  ->top
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				movl	-4804(%ebp), %ebx
				movl	68(%ebx), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44544, %eax
				movl	(%eax), %edx
				movl	68(%ebx), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$76
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				jmp	.L1031
		.L1176:
 2405
 2406 c(63):j = dmin;  l = label-3;                  !exit, continue
				movl	-4804(%ebp), %ebx
				movl	44(%ebx), %eax
				movl	%eax, -4776(%ebp)
				movl	12(%ebx), %eax
				subl	$3, %eax
				movl	%eax, (%ebx)
		.L1177:
 2407       %CYCLE
 2408          fault(7) %AND ->top %IF dict(j) < 0
				movl	-4776(%ebp), %eax
				leal	-1(%eax), %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				testl	%eax, %eax
				jns	.L1471
				subl	$12, %esp
				pushl	$7
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1031
		.L1471:
				nop
		.L1179:
 2409          %EXIT %IF dict(j)&1 = 0
				movl	-4776(%ebp), %eax
				leal	-1(%eax), %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				andl	$1, %eax
				testl	%eax, %eax
				je	.L1472
				nop
		.L1181:
				nop
		.L1182:
 2410          j = j+1;  l = l-3
				addl	$1, -4776(%ebp)
				movl	-4804(%ebp), %edx
				movl	(%edx), %eax
				subl	$3, %eax
				movl	%eax, (%edx)
 2411       %REPEAT
				jmp	.L1177
		.L1472:
 2412       l = l+1 %IF x = 32;                      !continue
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				cmpl	$32, %eax
				jne	.L1473
				movl	-4804(%ebp), %edi
				movl	(%edi), %eax
				addl	$1, %eax
				movl	%eax, (%edi)
				jmp	.L1184
		.L1473:
				nop
		.L1184:
 2413       op('F', l)
				movl	-4804(%ebp), %edi
				movl	(%edi), %edx
				movl	68(%edi), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$70
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
 2414       dict(j) = dict(j)!x;                     !show given
				movl	-4776(%ebp), %eax
				leal	-1(%eax), %edx
				movl	68(%edi), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %edx
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				movl	-4776(%ebp), %ecx
				leal	-1(%ecx), %ebx
				movl	%edx, %ecx
				orl	%eax, %ecx
				movl	68(%edi), %eax
				leal	2132(%ebx), %edx
				movl	%ecx, 4(%eax,%edx,4)
 2415       ->atop
				jmp	.L1074
		.L1185:
 2416
 2417 c(50):put('C');  ->cop;                        !acomp
				subl	$12, %esp
				pushl	$67
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1402
		.L1187:
 2418
 2419 c(49):
 2420        %IF next # 0 %START;                     !comparator
				movl	-4616(%ebp), %eax
				testl	%eax, %eax
				je	.L1474
				nop
		.L1189:
 2421           put('"');  push(0);                  !double sided
				subl	$12, %esp
				pushl	$34
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	$0
				movl	%eax, %ecx
				call	PUSH.7481
				addl	$16, %esp
 2422        %FINISH %ELSE %START
				jmp	.L1402
		.L1474:
 2423           put('?')
				subl	$12, %esp
				pushl	$63
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
		.L1186:
		.L1190:
		.L1402:
 2424        %FINISH
 2425
 2426 cop:   x = x!!1 %IF cnest(cp)&2 # 0;           !invert the condition
				movl	-4800(%ebp), %edx
				movl	X.6078@GOTOFF(%edx), %eax
				xorl	$1, %eax
				movl	%eax, X.6078@GOTOFF(%edx)
		.L1191:
 2427        j = cp;  l = clab
				movl	-4636(%ebp), %eax
				movl	%eax, -4776(%ebp)
				movl	-4640(%ebp), %eax
				movl	-4804(%ebp), %ecx
				movl	%eax, (%ecx)
		.L1192:
 2428        %WHILE cnest(j)&4 = 0 %CYCLE
				movl	-4800(%ebp), %eax
				leal	CNEST.7283@GOTOFF(%eax), %edx
				movl	-4776(%ebp), %eax
				addl	%edx, %eax
				movzbl	(%eax), %eax
				movzbl	%al, %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1475
				nop
		.L1194:
 2429           j = j-1;  l = l-cnest(j)&1
				subl	$1, -4776(%ebp)
				movl	-4800(%ebp), %eax
				leal	CNEST.7283@GOTOFF(%eax), %edx
				movl	-4776(%ebp), %eax
				addl	%edx, %eax
				movzbl	(%eax), %eax
				movzbl	%al, %eax
				andl	$1, %eax
				movl	%eax, %edx
				movl	-4804(%ebp), %esi
				movl	(%esi), %eax
				subl	%edx, %eax
				movl	%eax, (%esi)
 2430        %REPEAT
				jmp	.L1192
		.L1475:
 2431        op(cc(x), l)
				movl	-4800(%ebp), %ebx
				movl	X.6078@GOTOFF(%ebx), %eax
				movzbl	-66(%ebp,%eax), %eax
				movzbl	%al, %edx
				movl	-4804(%ebp), %eax
				movl	(%eax), %ecx
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	%ecx
				pushl	%edx
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
 2432        def lab(clab+1) %IF cnest(cp)&1 # 0
				movl	-4640(%ebp), %eax
				leal	1(%eax), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEFLAB.7311
				addl	$16, %esp
		.L1195:
 2433        cp = cp-1
				movl	-4636(%ebp), %eax
				subl	$1, %eax
				movl	%eax, -4636(%ebp)
 2434        clab = clab-cnest(cp)&1
				movl	-4636(%ebp), %eax
				movzbl	CNEST.7283@GOTOFF(%ebx,%eax), %eax
				movzbl	%al, %eax
				andl	$1, %eax
				movl	%eax, %edx
				movl	-4640(%ebp), %eax
				subl	%edx, %eax
				movl	%eax, -4640(%ebp)
 2435        ->top
				jmp	.L1031
		.L1196:
				jmp	.L1198
		.L1197:
		.L1198:
 2436
 2437 c(78):                                              !fresult
 2438 c(79):                                              !mresult
 2439 c(80):   open = 0;                                  !return, true, false
				movl	$0, %eax
				movl	-4804(%ebp), %edx
				movl	%eax, 24(%edx)
		.L1199:
 2440 c(82):   access = 0;                                !stop
				movl	$0, %eax
				movl	-4804(%ebp), %ecx
				movl	%eax, 28(%ecx)
				jmp	.L1201
		.L1200:
		.L1201:
 2441 c(89):                                              !addop
 2442 c(81):   put(x);  ->top;                            !monitor
				movl	-4800(%ebp), %ebx
				movl	X.6078@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1202:
 2443
 2444 c(65):   pop lit;  op('e', lit);  ->atop;  !signal
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	POPLIT.7413
				movl	-4800(%ebp), %eax
				movl	LIT.6157@GOTOFF(%eax), %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$101
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				jmp	.L1074
		.L1203:
 2445
 2446 c(51):   put('S');            ->top;                !eq
				subl	$12, %esp
				pushl	$83
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1204:
 2447 c(53):   put('j');            ->top;                !jam transfer
				subl	$12, %esp
				pushl	$106
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1205:
 2448 c(52):   put('Z');            ->top;                !eqeq
				subl	$12, %esp
				pushl	$90
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1206:
 2449
 2450 c(74):%IF level = 0 %START;                         !begin
				movl	-4804(%ebp), %eax
				movl	52(%eax), %eax
				testl	%eax, %eax
				jne	.L1476
				nop
		.L1211:
 2451          %IF progmode <= 0 %THEN progmode = 1 %ELSE fault(7)
				movl	-4800(%ebp), %eax
				movl	PROGMODE.6133@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jg	.L1477
				movl	-4800(%ebp), %eax
				movl	$1, PROGMODE.6133@GOTOFF(%eax)
				jmp	.L1211
		.L1477:
				nop
		.L1210:
				subl	$12, %esp
				pushl	$7
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1211
		.L1208:
		.L1476:
 2452          {Permit BEGIN after external defs}
 2453       %FINISH
 2454       spec mode = level+1
				movl	-4804(%ebp), %eax
				movl	52(%eax), %eax
				addl	$1, %eax
				movl	-4800(%ebp), %edi
				movl	%eax, SPECMODE.6135@GOTOFF(%edi)
 2455       block x = 0
				movl	$0, BLOCKX.6159@GOTOFF(%edi)
 2456       put('H');  %RETURN
				subl	$12, %esp
				pushl	$72
				movl	%edi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1017
		.L1212:
 2457 c(77):perm = 0;  lines = 0;  stats = 0;             !endofperm
				movl	-4800(%ebp), %esi
				movl	$0, PERM.6132@GOTOFF(%esi)
				movl	$0, LINES.6088@GOTOFF(%esi)
				movl	$0, STATS.6094@GOTOFF(%esi)
		.LBB743:
		.LBB744:
		.LBB745:
 2458 debug("close input    {input stream=".itos(input stream,0)."}")
				leal	-578(%ebp), %eax
				movl	%esi, -4800(%ebp)
				leal	.LC17@GOTOFF(%esi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %eax
				movl	%eax, -4808(%ebp)
		.LBE745:
		.LBB746:
		.LBB747:
				call	_imp_INPUTSTREAM
				movl	%eax, -4684(%ebp)
				movl	$0, -4680(%ebp)
		.LBB748:
		.LBB749:
				leal	-1090(%ebp), %eax
				subl	$4, %esp
				pushl	-4680(%ebp)
				pushl	-4684(%ebp)
				pushl	%eax
				movl	-4800(%ebp), %ebx
				call	_imp_itos@PLT
				addl	$12, %esp
		.LBE749:
		.LBE748:
				leal	-578(%ebp), %eax
				leal	-1090(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %edi
				movl	%edi, -4812(%ebp)
		.LBE747:
		.LBB750:
				leal	-578(%ebp), %edx
				movl	-4800(%ebp), %esi
				leal	.LC18@GOTOFF(%esi), %ebx
				movl	$256, %ecx
				movl	(%ebx), %eax
				movl	%eax, (%edx)
				movl	-4(%ebx,%ecx), %eax
				movl	%eax, -4(%edx,%ecx)
				leal	4(%edx), %edi
				andl	$-4, %edi
				subl	%edi, %edx
				subl	%edx, %ebx
				addl	%edx, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %edx
		.LBE750:
				leal	-578(%ebp), %eax
				subl	$4, %esp
				pushl	-4812(%ebp)
				pushl	%edx
				pushl	%eax
				movl	-4800(%ebp), %esi
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-578(%ebp), %edx
		.LBE746:
				leal	-578(%ebp), %eax
				subl	$4, %esp
				pushl	-4808(%ebp)
				pushl	%edx
				pushl	%eax
				movl	%esi, -4800(%ebp)
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-578(%ebp), %edx
		.LBE744:
				leal	-578(%ebp), %eax
				movl	%edx, %ebx
				movl	$256, %edx
				movl	(%ebx), %ecx
				movl	%ecx, (%eax)
				movl	-4(%ebx,%edx), %ecx
				movl	%ecx, -4(%eax,%edx)
				leal	4(%eax), %edi
				andl	$-4, %edi
				subl	%edi, %eax
				subl	%eax, %ebx
				addl	%eax, %edx
				andl	$-4, %edx
				movl	%edx, %eax
				shrl	$2, %eax
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %eax
		.LBE743:
				subl	$256, %esp
				movl	%esp, %edx
				movl	%eax, %ebx
				movl	$64, %eax
				movl	%edx, %edi
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				movl	-4800(%ebp), %esi
				movl	%esi, %ebx
				call	DEBUG@PLT
				addl	$256, %esp
		.LBB751:
		.LBB752:
				movl	%esi, %ebx
				call	_imp_closeinput@PLT
		.LBE752:
		.LBE751:
		.LBB753:
		.LBB754:
		.LBB755:
 2459       close input
 2460 debug("select input(source=".itos(source,0).")")
				leal	-578(%ebp), %eax
				movl	%esi, -4800(%ebp)
				leal	.LC9@GOTOFF(%esi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %eax
				movl	%eax, -4808(%ebp)
				movl	$1, -4692(%ebp)
				movl	$0, -4688(%ebp)
		.LBE755:
		.LBB756:
		.LBB757:
		.LBB758:
		.LBB759:
				leal	-1346(%ebp), %eax
				subl	$4, %esp
				pushl	-4688(%ebp)
				pushl	-4692(%ebp)
				pushl	%eax
				movl	-4800(%ebp), %ebx
				call	_imp_itos@PLT
				addl	$12, %esp
		.LBE759:
		.LBE758:
				leal	-578(%ebp), %eax
				leal	-1346(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %edx
				movl	%edx, -4812(%ebp)
		.LBE757:
		.LBB760:
				leal	-578(%ebp), %edx
				movl	-4800(%ebp), %esi
				leal	.LC19@GOTOFF(%esi), %ebx
				movl	$256, %ecx
				movl	(%ebx), %eax
				movl	%eax, (%edx)
				movl	-4(%ebx,%ecx), %eax
				movl	%eax, -4(%edx,%ecx)
				leal	4(%edx), %edi
				andl	$-4, %edi
				subl	%edi, %edx
				subl	%edx, %ebx
				addl	%edx, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %edx
		.LBE760:
				leal	-578(%ebp), %eax
				subl	$4, %esp
				pushl	-4812(%ebp)
				pushl	%edx
				pushl	%eax
				movl	-4800(%ebp), %esi
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-578(%ebp), %edx
		.LBE756:
				leal	-578(%ebp), %eax
				subl	$4, %esp
				pushl	-4808(%ebp)
				pushl	%edx
				pushl	%eax
				movl	%esi, -4800(%ebp)
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-578(%ebp), %edx
		.LBE754:
				leal	-578(%ebp), %eax
				movl	%edx, %ebx
				movl	$256, %edx
				movl	(%ebx), %ecx
				movl	%ecx, (%eax)
				movl	-4(%ebx,%edx), %ecx
				movl	%ecx, -4(%eax,%edx)
				leal	4(%eax), %edi
				andl	$-4, %edi
				subl	%edi, %eax
				subl	%eax, %ebx
				addl	%eax, %edx
				andl	$-4, %edx
				movl	%edx, %eax
				shrl	$2, %eax
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %eax
		.LBE753:
				subl	$256, %esp
				movl	%esp, %edx
				movl	%eax, %ebx
				movl	$64, %eax
				movl	%edx, %edi
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				movl	-4800(%ebp), %esi
				movl	%esi, %ebx
				call	DEBUG@PLT
				addl	$256, %esp
 2461       select input(source);
				subl	$12, %esp
				pushl	$1
				call	_imp_SELECTINPUT
				addl	$16, %esp
 2462       sym = nl
				movl	$10, SYM.6096@GOTOFF(%esi)
 2463       list = list-1
				movl	LIST.6160@GOTOFF(%esi), %eax
				subl	$1, %eax
				movl	%eax, LIST.6160@GOTOFF(%esi)
 2464       list = list -1 %if command & listbit # 0
				movl	LIST.6160@GOTOFF(%esi), %eax
				subl	$1, %eax
				movl	%eax, LIST.6160@GOTOFF(%esi)
		.L1215:
 2465       tbase = tmax;  tstart = tmax
				movl	-4804(%ebp), %ebx
				movl	56(%ebx), %eax
				movl	%eax, 60(%ebx)
				movl	56(%ebx), %eax
				movl	%eax, 64(%ebx)
 2466       %RETURN
				jmp	.L1017
		.L1216:
 2467 c(76):%IF include # 0 %AND x = 0 %START;            !end of ...
				movl	-4800(%ebp), %eax
				movl	INCLUDE.6131@GOTOFF(%eax), %eax
				testl	%eax, %eax
				je	.L1478
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jne	.L1479
				nop
				jmp	.L1218
		.L1479:
				nop
		.L1218:
 2468          lines = include;  sstype =  0;             !include
				movl	-4800(%ebp), %edi
				movl	INCLUDE.6131@GOTOFF(%edi), %eax
				movl	%eax, LINES.6088@GOTOFF(%edi)
				movl	$0, SSTYPE.6134@GOTOFF(%edi)
		.LBB761:
		.LBB762:
		.LBB763:
 2469 debug("close input    {input stream=".itos(input stream,0)."}")
				leal	-578(%ebp), %eax
				movl	%edi, -4800(%ebp)
				leal	.LC17@GOTOFF(%edi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %eax
				movl	%eax, -4804(%ebp)
		.LBE763:
		.LBB764:
		.LBB765:
				call	_imp_INPUTSTREAM
				movl	%eax, -4668(%ebp)
				movl	$0, -4664(%ebp)
		.LBB766:
		.LBB767:
				leal	-578(%ebp), %eax
				subl	$4, %esp
				pushl	-4664(%ebp)
				pushl	-4668(%ebp)
				pushl	%eax
				movl	-4800(%ebp), %ebx
				call	_imp_itos@PLT
				addl	$12, %esp
		.LBE767:
		.LBE766:
				leal	-834(%ebp), %eax
				leal	-578(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-834(%ebp), %esi
				movl	%esi, -4808(%ebp)
		.LBE765:
		.LBB768:
				leal	-834(%ebp), %eax
				movl	-4800(%ebp), %edi
				leal	.LC18@GOTOFF(%edi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-834(%ebp), %edx
		.LBE768:
				leal	-834(%ebp), %eax
				subl	$4, %esp
				pushl	-4808(%ebp)
				pushl	%edx
				pushl	%eax
				movl	-4800(%ebp), %edi
				movl	%edi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-834(%ebp), %edx
		.LBE764:
				leal	-834(%ebp), %eax
				subl	$4, %esp
				pushl	-4804(%ebp)
				pushl	%edx
				pushl	%eax
				movl	%edi, -4800(%ebp)
				movl	%edi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-834(%ebp), %edx
		.LBE762:
				leal	-834(%ebp), %eax
				movl	%edx, %ebx
				movl	$256, %edx
				movl	(%ebx), %ecx
				movl	%ecx, (%eax)
				movl	-4(%ebx,%edx), %ecx
				movl	%ecx, -4(%eax,%edx)
				leal	4(%eax), %edi
				andl	$-4, %edi
				subl	%edi, %eax
				subl	%eax, %ebx
				addl	%eax, %edx
				andl	$-4, %edx
				movl	%edx, %eax
				shrl	$2, %eax
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-834(%ebp), %eax
		.LBE761:
				subl	$256, %esp
				movl	%esp, %edx
				movl	%eax, %ebx
				movl	$64, %eax
				movl	%edx, %edi
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				movl	-4800(%ebp), %edi
				movl	%edi, %ebx
				call	DEBUG@PLT
				addl	$256, %esp
		.LBB769:
		.LBB770:
				movl	%edi, %ebx
				call	_imp_closeinput@PLT
		.LBE770:
		.LBE769:
 2470          close input
 2471          list = include list
				movl	INCLUDELIST.6130@GOTOFF(%edi), %eax
				movl	%eax, LIST.6160@GOTOFF(%edi)
 2472          include = 0;
				movl	$0, INCLUDE.6131@GOTOFF(%edi)
		.LBB771:
		.LBB772:
		.LBB773:
 2473 debug("select input(source=".itos(source,0).")")
				leal	-834(%ebp), %eax
				movl	%edi, -4800(%ebp)
				leal	.LC9@GOTOFF(%edi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-834(%ebp), %eax
				movl	%eax, -4804(%ebp)
				movl	$1, -4676(%ebp)
				movl	$0, -4672(%ebp)
		.LBE773:
		.LBB774:
		.LBB775:
		.LBB776:
		.LBB777:
				leal	-834(%ebp), %eax
				subl	$4, %esp
				pushl	-4672(%ebp)
				pushl	-4676(%ebp)
				pushl	%eax
				movl	-4800(%ebp), %ebx
				call	_imp_itos@PLT
				addl	$12, %esp
		.LBE777:
		.LBE776:
				leal	-1090(%ebp), %eax
				leal	-834(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-1090(%ebp), %ecx
				movl	%ecx, -4808(%ebp)
		.LBE775:
		.LBB778:
				leal	-1090(%ebp), %eax
				movl	-4800(%ebp), %edi
				leal	.LC19@GOTOFF(%edi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-1090(%ebp), %edx
		.LBE778:
				leal	-1090(%ebp), %eax
				subl	$4, %esp
				pushl	-4808(%ebp)
				pushl	%edx
				pushl	%eax
				movl	-4800(%ebp), %edi
				movl	%edi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-1090(%ebp), %edx
		.LBE774:
				leal	-1090(%ebp), %eax
				subl	$4, %esp
				pushl	-4804(%ebp)
				pushl	%edx
				pushl	%eax
				movl	%edi, -4800(%ebp)
				movl	%edi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-1090(%ebp), %edx
		.LBE772:
				leal	-1090(%ebp), %eax
				movl	%edx, %ebx
				movl	$256, %edx
				movl	(%ebx), %ecx
				movl	%ecx, (%eax)
				movl	-4(%ebx,%edx), %ecx
				movl	%ecx, -4(%eax,%edx)
				leal	4(%eax), %edi
				andl	$-4, %edi
				subl	%edi, %eax
				subl	%eax, %ebx
				addl	%eax, %edx
				andl	$-4, %edx
				movl	%edx, %eax
				shrl	$2, %eax
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-1090(%ebp), %eax
		.LBE771:
				subl	$256, %esp
				movl	%esp, %edx
				movl	%eax, %ebx
				movl	$64, %eax
				movl	%edx, %edi
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				movl	-4800(%ebp), %edi
				movl	%edi, %ebx
				call	DEBUG@PLT
				addl	$256, %esp
 2474 	 select input(source);
				subl	$12, %esp
				pushl	$1
				call	_imp_SELECTINPUT
				addl	$16, %esp
 2475 	 sym = nl;
				movl	$10, SYM.6096@GOTOFF(%edi)
 2476 	 %RETURN
				jmp	.L1017
		.L1478:
 2477       %FINISH
 2478       ss = -1;                                      !prog/file
				movl	-4800(%ebp), %eax
				movl	$-1, SS.6128@GOTOFF(%eax)
		.L1222:
 2479 c(75):compile end(x);  %RETURN;                     !%END
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	COMPILEEND.7353
				addl	$16, %esp
				jmp	.L1017
		.L1223:
 2480
 2481 c(85):%IF x=0 %THEN control=lit %ELSE %START;     !control
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jne	.L1480
				movl	-4800(%ebp), %ecx
				movl	LIT.6157@GOTOFF(%ecx), %eax
				movl	%eax, CONTROL.6161@GOTOFF(%ecx)
				jmp	.L1228
		.L1480:
				nop
		.L1225:
 2482          diag = lit&16_3FFF %IF lit>>14&3 = 1
				movl	-4800(%ebp), %eax
				movl	LIT.6157@GOTOFF(%eax), %eax
				andl	$16384, %eax
				testl	%eax, %eax
				jne	.L1481
				movl	-4800(%ebp), %edi
				movl	LIT.6157@GOTOFF(%edi), %eax
				andl	$16383, %eax
				movl	%eax, DIAG.6162@GOTOFF(%edi)
				jmp	.L1228
		.L1226:
		.L1481:
				nop
		.L1228:
 2483       %FINISH
 2484       op('z'-x, lit)
				movl	-4800(%ebp), %eax
				movl	LIT.6157@GOTOFF(%eax), %edx
				movl	X.6078@GOTOFF(%eax), %eax
				movl	$122, %ecx
				subl	%eax, %ecx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%ecx
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
 2485       ->top
				jmp	.L1031
		.L1229:
 2486 c(83):list = list+x-2;   ->top;                     !%LIST/%ENDOFLIST
				movl	-4800(%ebp), %esi
				movl	LIST.6160@GOTOFF(%esi), %edx
				movl	X.6078@GOTOFF(%esi), %eax
				addl	%edx, %eax
				subl	$2, %eax
				movl	%eax, LIST.6160@GOTOFF(%esi)
				jmp	.L1031
		.L1230:
 2487 c(84):reals ln = x;      ->top;                     !%REALS long/normal
				movl	-4800(%ebp), %edx
				movl	X.6078@GOTOFF(%edx), %eax
				movl	%eax, REALSLN.6109@GOTOFF(%edx)
				jmp	.L1031
		.L1231:
 2488 c(86):%IF include # 0 %START;                       !include "file"
				movl	-4800(%ebp), %eax
				movl	INCLUDE.6131@GOTOFF(%eax), %eax
				testl	%eax, %eax
				je	.L1482
				nop
		.L1233:
 2489          fault(7);  %RETURN
				subl	$12, %esp
				pushl	$7
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1017
		.L1482:
 2490       %FINISH
 2491       get next;                                  !sconst
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	GETNEXT.7314
		.LBB779:
 2492       include file = string(x-16_4000+stbase)
				movl	-4800(%ebp), %esi
				movl	X.6078@GOTOFF(%esi), %eax
				leal	-16384(%eax), %edx
				movl	%esi, -4800(%ebp)
				movl	STBASE.6124@GOTOFF(%esi), %eax
				addl	%edx, %eax
				movl	%eax, -4656(%ebp)
		.LBB780:
		.LBB781:
				movl	-4656(%ebp), %edx
		.LBE781:
		.LBE780:
				leal	-578(%ebp), %eax
				movl	%edx, %ebx
				movl	$256, %edx
				movl	(%ebx), %ecx
				movl	%ecx, (%eax)
				movl	-4(%ebx,%edx), %ecx
				movl	%ecx, -4(%eax,%edx)
				leal	4(%eax), %edi
				andl	$-4, %edi
				subl	%edi, %eax
				subl	%eax, %ebx
				addl	%eax, %edx
				andl	$-4, %edx
				movl	%edx, %eax
				shrl	$2, %eax
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %eax
		.LBE779:
				movl	-4804(%ebp), %edi
				movl	68(%edi), %edx
				addl	$144440, %edx
				subl	$4, %esp
				pushl	$63
				pushl	%eax
				pushl	%edx
				movl	-4800(%ebp), %ebx
				call	_imp_strncpy@PLT
				addl	$16, %esp
		.LBB782:
 2493       open input(3, include file)
				movl	68(%edi), %edx
				leal	-578(%ebp), %eax
				addl	$144440, %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-578(%ebp), %edx
				movl	$3, -4660(%ebp)
				leal	-322(%ebp), %eax
				movl	%edx, %ebx
				movl	$256, %edx
				movl	(%ebx), %ecx
				movl	%ecx, (%eax)
				movl	-4(%ebx,%edx), %ecx
				movl	%ecx, -4(%eax,%edx)
				leal	4(%eax), %edi
				andl	$-4, %edi
				subl	%edi, %eax
				subl	%eax, %ebx
				addl	%eax, %edx
				andl	$-4, %edx
				movl	%edx, %eax
				shrl	$2, %eax
				movl	%ebx, %esi
				movl	%eax, %ecx
				rep movsl
		.LBE782:
		.LBB783:
		.LBB784:
				subl	$12, %esp
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %ebx
				leal	-322(%ebp), %eax
				movl	$64, %edx
				movl	%ebx, %edi
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				pushl	-4660(%ebp)
				movl	-4800(%ebp), %esi
				movl	%esi, %ebx
				call	_imp_openinput@PLT
				addl	$272, %esp
		.LBE784:
		.LBE783:
 2494       include = lines;  lines = 0
				movl	LINES.6088@GOTOFF(%esi), %eax
				movl	%eax, INCLUDE.6131@GOTOFF(%esi)
				movl	$0, LINES.6088@GOTOFF(%esi)
 2495       include list = list
				movl	LIST.6160@GOTOFF(%esi), %eax
				movl	%eax, INCLUDELIST.6130@GOTOFF(%esi)
		.LBB785:
 2496 debug("select input(3)")
				leal	-578(%ebp), %eax
				movl	%esi, -4800(%ebp)
				leal	.LC20@GOTOFF(%esi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-3650(%ebp), %eax
				leal	-578(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
		.LBE785:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %ebx
				leal	-3650(%ebp), %eax
				movl	$64, %edx
				movl	%ebx, %edi
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				movl	-4800(%ebp), %esi
				movl	%esi, %ebx
				call	DEBUG@PLT
				addl	$256, %esp
 2497       select input(3);
				subl	$12, %esp
				pushl	$3
				call	_imp_SELECTINPUT
				addl	$16, %esp
 2498       sym = nl
				movl	$10, SYM.6096@GOTOFF(%esi)
 2499       ->top
				jmp	.L1031
		.L1235:
 2500
 2501 c(154):dimension = dimension+1;                     !dbsep
				movl	-4800(%ebp), %ecx
				movl	DIMENSION.6146@GOTOFF(%ecx), %eax
				addl	$1, %eax
				movl	%eax, DIMENSION.6146@GOTOFF(%ecx)
 2502        fault(11) %IF dimension = dim limit+1
				movl	DIMENSION.6146@GOTOFF(%ecx), %eax
				cmpl	$7, %eax
				jne	.L1483
				subl	$12, %esp
				pushl	$11
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				nop
		.L1237:
 2503        ->top
				jmp	.L1031
		.L1483:
				jmp	.L1031
		.L1238:
 2504 c(145):set bp;                       ->top;         !crb
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	SETBP.7348
				jmp	.L1031
		.L1239:
 2505 c(146):set bp;                                      !rcrb
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	SETBP.7348
		.L1240:
 2506 c(142):                                             !bplrb
 2507        dimension = 1 %IF dimension = 0
				movl	-4800(%ebp), %eax
				movl	DIMENSION.6146@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jne	.L1484
				movl	-4800(%ebp), %eax
				movl	$1, DIMENSION.6146@GOTOFF(%eax)
				jmp	.L1242
		.L1484:
				nop
		.L1242:
 2508        op('d', dimension);  op(',', defs)
				movl	-4800(%ebp), %eax
				movl	DIMENSION.6146@GOTOFF(%eax), %edx
				movl	-4804(%ebp), %esi
				movl	68(%esi), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$100
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				movl	-4632(%ebp), %edx
				movl	68(%esi), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$44
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
 2509        %IF class # 146 %START
				movl	-4624(%ebp), %eax
				cmpl	$146, %eax
				je	.L1485
				nop
				jmp	.L1248
		.L1488:
 2510           set subs(defs)
				movl	-4632(%ebp), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	SETSUBS.7339
				addl	$16, %esp
 2511           last array = tmax-1
				movl	-4804(%ebp), %esi
				movl	56(%esi), %eax
				subl	$1, %eax
				movl	%eax, 4(%esi)
 2512           fault(13) %IF dict(dmin) >= 0 %OR inhibit # 0 %OR level=0
				movl	44(%esi), %eax
				leal	-1(%eax), %edx
				movl	68(%esi), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				testl	%eax, %eax
				jns	.L1486
				movl	-4804(%ebp), %eax
				movl	8(%eax), %eax
				testl	%eax, %eax
				jne	.L1487
				movl	-4804(%ebp), %eax
				movl	52(%eax), %eax
				testl	%eax, %eax
				jne	.L1488
				jmp	.L1246
		.L1486:
				nop
				jmp	.L1246
		.L1487:
				nop
		.L1246:
				subl	$12, %esp
				pushl	$13
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1248
		.L1244:
		.L1485:
				nop
		.L1248:
 2513        %FINISH
 2514        dimension = 0;  defs = 0
				movl	-4800(%ebp), %eax
				movl	$0, DIMENSION.6146@GOTOFF(%eax)
				movl	$0, %eax
				movl	%eax, -4632(%ebp)
 2515        ->top
				jmp	.L1031
		.L1249:
 2516 c(128):id = dupid;  ->top;                          !EDUP
				movl	-4788(%ebp), %eax
				movl	-4804(%ebp), %esi
				movl	%eax, 48(%esi)
				jmp	.L1031
		.L1250:
 2517 c(130):block x = x
				movl	-4800(%ebp), %ebx
				movl	X.6078@GOTOFF(%ebx), %eax
				movl	%eax, BLOCKX.6159@GOTOFF(%ebx)
 2518        op('F', 0) %IF decl&spec = 0 %AND level # 0; !jump round proc
				movl	DECL.6102@GOTOFF(%ebx), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1489
				movl	-4804(%ebp), %eax
				movl	52(%eax), %eax
				testl	%eax, %eax
				je	.L1490
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	$0
				pushl	$70
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				jmp	.L1254
		.L1252:
		.L1489:
				nop
				jmp	.L1254
		.L1490:
				nop
		.L1254:
 2519 c(125):dupid = id;                                  !%DUP
				movl	-4804(%ebp), %eax
				movl	48(%eax), %eax
				movl	%eax, -4788(%ebp)
		.L1255:
 2520 c(90): def(x);  ->top;                              !ident
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEF.7366
				addl	$16, %esp
				jmp	.L1031
		.L1256:
 2521 c(131):                                             !cident
 2522        %IF tag(x)_flags&(2_1111111+const bit) = iform+const bit %START
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44540, %eax
				movl	(%eax), %eax
				andl	$1, %eax
				testl	%eax, %eax
				jne	.L1491
				nop
		.L1258:
 2523           tag(x)_format = lit
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				movl	LIT.6157@GOTOFF(%eax), %ecx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %ebx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ebx, %eax
				addl	$44536, %eax
				movl	%ecx, (%eax)
 2524        %FINISH %ELSE %START
				jmp	.L1259
		.L1491:
 2525           set const(lit) %IF pending # 0
				movl	-4628(%ebp), %eax
				testl	%eax, %eax
				je	.L1492
				movl	-4800(%ebp), %eax
				movl	LIT.6157@GOTOFF(%eax), %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	%edx
				movl	%eax, %ecx
				call	SETCONST.6310
				addl	$16, %esp
				jmp	.L1261
		.L1492:
				nop
		.L1261:
 2526           def(x)
				movl	-4800(%ebp), %edi
				movl	X.6078@GOTOFF(%edi), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEF.7366
				addl	$16, %esp
 2527          put('A'); putlong(1)
				subl	$12, %esp
				pushl	$65
				movl	%edi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				subl	$12, %esp
				pushl	$1
				movl	%edi, %ebx
				call	PUTLONG@PLT
				addl	$16, %esp
		.L1259:
 2528        %FINISH
 2529        cident = x
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				movl	%eax, -4716(%ebp)
 2530        ->top
				jmp	.L1031
		.L1262:
 2531 c(124):dubious = 1 %IF tag(cident)_flags&prot # 0; !%DUBIOUS
				movl	-4800(%ebp), %eax
				movl	$1, DUBIOUS.6141@GOTOFF(%eax)
		.L1263:
 2532        ->top
				jmp	.L1031
		.L1264:
				jmp	.L1267
		.L1265:
				jmp	.L1267
		.L1266:
		.L1267:
 2533 c(97):                                              !f
 2534 c(98):                                              !m
 2535 c(99):                                              !p
 2536 c(96): call;  ->top;                                !r
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	CALL.7404
				jmp	.L1031
		.L1268:
				jmp	.L1278
		.L1269:
				jmp	.L1278
		.L1270:
				jmp	.L1278
		.L1271:
				jmp	.L1278
		.L1272:
				jmp	.L1278
		.L1273:
				jmp	.L1278
		.L1274:
				jmp	.L1278
		.L1275:
				jmp	.L1278
		.L1276:
				jmp	.L1278
		.L1277:
		.L1278:
 2537
 2538 c(165):                                             !nlab
 2539 c(100):                                             !rp
 2540 c(101):                                             !fp
 2541 c(102):                                             !mp
 2542 c(103):                                             !pp
 2543 c(91):                                              !v
 2544 c(92):                                              !n
 2545 c(106):                                             !a
 2546 c(107):                                             !an
 2547 c(108):                                             !na
 2548 c(109):                                             !nan
 2549       k = tag(x)_index
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44544, %eax
				movl	(%eax), %eax
				movl	%eax, -4720(%ebp)
 2550       %IF k < 0 %THEN op('n', -k) %ELSE op('@', k)
				cmpl	$0, -4720(%ebp)
				jns	.L1493
				movl	-4720(%ebp), %eax
				negl	%eax
				movl	%eax, %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$110
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				jmp	.L1281
		.L1493:
				nop
		.L1280:
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	-4720(%ebp)
				pushl	$64
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
		.L1281:
 2551       ->top
				jmp	.L1031
		.L1282:
 2552 c(121):set const(0);  ->top;                        !special for zero
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	$0
				movl	%eax, %ecx
				call	SETCONST.6310
				addl	$16, %esp
				jmp	.L1031
		.L1283:
 2553 c(167):put('G');  ->pstr;                           !aconst (alias)
				subl	$12, %esp
				pushl	$71
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1284
		.L1285:
 2554 c(const):                                           !const
 2555        %IF x < 0 %START;                            !constinteger
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jns	.L1494
				nop
 2556           set const(tag(-x)_format);  ->top
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				negl	%eax
				movl	%eax, %edx
				movl	-4804(%ebp), %esi
				movl	68(%esi), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44536, %eax
				movl	(%eax), %edx
				movl	68(%esi), %eax
				subl	$12, %esp
				pushl	%edx
				movl	%eax, %ecx
				call	SETCONST.6310
				addl	$16, %esp
				jmp	.L1031
		.L1287:
		.L1494:
 2557        %FINISH
 2558        %IF x&16_4000 # 0 %START;                    !strings
 2559           put('''')
				subl	$12, %esp
				pushl	$39
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
		.L1284:
 2560 pstr:     x = x-16_4000+stbase
				movl	-4800(%ebp), %esi
				movl	X.6078@GOTOFF(%esi), %eax
				leal	-16384(%eax), %edx
				movl	STBASE.6124@GOTOFF(%esi), %eax
				addl	%edx, %eax
				movl	%eax, X.6078@GOTOFF(%esi)
 2561           k = byteinteger(x)
				movl	X.6078@GOTOFF(%esi), %eax
				movl	%eax, -4648(%ebp)
		.LBB786:
		.LBB787:
				movl	-4648(%ebp), %eax
		.LBE787:
		.LBE786:
				movzbl	(%eax), %eax
				movzbl	%al, %eax
				movl	%eax, -4720(%ebp)
 2562          putblock(k+1, byteinteger(x))
				movl	X.6078@GOTOFF(%esi), %eax
				movl	%eax, -4652(%ebp)
		.LBB788:
		.LBB789:
				movl	-4652(%ebp), %eax
		.LBE789:
		.LBE788:
				movl	-4720(%ebp), %edx
				addl	$1, %edx
				subl	$8, %esp
				pushl	%eax
				pushl	%edx
				movl	%esi, %ebx
				call	PUTBLOCK@PLT
				addl	$16, %esp
 2563          -> top
				jmp	.L1031
		.L1290:
 2564        %FINISH
 2565        %IF x&16_2000 # 0 %START;                    !real
 2566           x = x-16_2000+stbase
 2567           k = byteinteger(x)
 2568           op('D', k);  put(',')
 2569           k = k+x
 2570           %CYCLE
 2571              ->top %IF x = k
 2572              x = x+1;  j = byteinteger(x)
 2573              %IF j = '@' %START
 2574                 op('@', litpool(byteinteger(x+1)));  ->top
 2575              %FINISH
 2576              put(j)
 2577           %REPEAT
 2578        %FINISH
 2579        set const(lit pool(x))
 2580        ->top
 2581
 2582 c(137):put('i');               ->top;         !asep
				subl	$12, %esp
				pushl	$105
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1291:
 2583 c(141):put('a');               ->top;         !arb
				subl	$12, %esp
				pushl	$97
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1292:
 2584
 2585 !own arrays
 2586
 2587 c(132):ocount = ub-lb+1
				movl	-4800(%ebp), %edi
				movl	UB.7291@GOTOFF(%edi), %edx
				movl	LB.7290@GOTOFF(%edi), %eax
				subl	%eax, %edx
				movl	%edx, %eax
				addl	$1, %eax
				movl	%eax, OCOUNT.6136@GOTOFF(%edi)
 2588        def(x);                               !oident
				movl	X.6078@GOTOFF(%edi), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEF.7366
				addl	$16, %esp
 2589        dimension = 1;  set subs(1)
				movl	$1, DIMENSION.6146@GOTOFF(%edi)
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	$1
				movl	%eax, %ecx
				call	SETSUBS.7339
				addl	$16, %esp
 2590        %IF next = 0 %START;                  !no initialisation
				movl	-4616(%ebp), %eax
				testl	%eax, %eax
				jne	.L1495
				nop
		.L1294:
 2591           %IF ocount > 0 %start
				movl	-4800(%ebp), %eax
				movl	OCOUNT.6136@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jle	.L1496
				nop
		.L1296:
 2592             put('A'); putlong(ocount)
				subl	$12, %esp
				pushl	$65
				movl	-4800(%ebp), %esi
				movl	%esi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				movl	%esi, %ebx
				movl	OCOUNT.6136@GOTOFF(%ebx), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ebx
				call	PUTLONG@PLT
				addl	$16, %esp
				jmp	.L1296
		.L1496:
 2593             %finish
 2594           ocount = -1
				movl	-4800(%ebp), %eax
				movl	$-1, OCOUNT.6136@GOTOFF(%eax)
 2595        %FINISH %ELSE %START;                 !initialisation given
				jmp	.L1297
		.L1495:
 2596           get next
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	GETNEXT.7314
		.L1297:
 2597        %FINISH
 2598        ->top
				jmp	.L1031
		.L1298:
 2599 c(162):lit = ocount;  ->ins;                 !indef
				movl	-4800(%ebp), %ecx
				movl	OCOUNT.6136@GOTOFF(%ecx), %eax
				movl	%eax, LIT.6157@GOTOFF(%ecx)
				jmp	.L1299
		.L1300:
 2600 c(143):pop lit;                              !orb
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	POPLIT.7413
		.L1299:
 2601 ins:   fault(10) %AND lit = 0 %IF lit < 0
				movl	-4800(%ebp), %eax
				movl	LIT.6157@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jns	.L1497
				subl	$12, %esp
				pushl	$10
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				movl	-4800(%ebp), %eax
				movl	$0, LIT.6157@GOTOFF(%eax)
				jmp	.L1302
		.L1497:
				nop
		.L1302:
 2602        get next
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	GETNEXT.7314
 2603        ->inst
				jmp	.L1303
		.L1304:
		.L1305:
 2604 c(139):                                      !osep (x=19)
 2605 c(153):lit = 1
				movl	-4800(%ebp), %eax
				movl	$1, LIT.6157@GOTOFF(%eax)
		.L1303:
 2606 inst:  pop def %IF pending # 0;              !ownt (x=0)
				movl	-4628(%ebp), %eax
				testl	%eax, %eax
				je	.L1498
				leal	-4644(%ebp), %eax
				movl	%eax, %ecx
				call	POPDEF.7410
				jmp	.L1307
		.L1498:
				nop
		.L1307:
 2607       put('A'); putlong(lit)
				subl	$12, %esp
				pushl	$65
				movl	-4800(%ebp), %esi
				movl	%esi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				movl	LIT.6157@GOTOFF(%esi), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, %ebx
				call	PUTLONG@PLT
				addl	$16, %esp
 2608        ocount = ocount-lit
				movl	OCOUNT.6136@GOTOFF(%esi), %edx
				movl	LIT.6157@GOTOFF(%esi), %eax
				subl	%eax, %edx
				movl	%edx, %eax
				movl	%eax, OCOUNT.6136@GOTOFF(%esi)
 2609        %IF ocount >= 0 %START
				movl	OCOUNT.6136@GOTOFF(%esi), %eax
				testl	%eax, %eax
				js	.L1499
				nop
				jmp	.L1313
		.L1501:
 2610           ->top %IF x # 0;      !more coming
				nop
				jmp	.L1031
		.L1503:
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jne	.L1500
				nop
		.L1311:
 2611           ocount = -1 %AND %RETURN %IF ocount = 0;  !all done
				movl	-4800(%ebp), %eax
				movl	OCOUNT.6136@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jne	.L1501
				movl	-4800(%ebp), %eax
				movl	$-1, OCOUNT.6136@GOTOFF(%eax)
				jmp	.L1017
		.L1309:
		.L1499:
				nop
		.L1313:
 2612        %FINISH
 2613        fault(11);  %RETURN
				subl	$12, %esp
				pushl	$11
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1017
		.L1314:
 2614
 2615 c(swit):op('W', tag(x)_index);  inhibit = 1;  ->atop
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				movl	-4804(%ebp), %esi
				movl	68(%esi), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44544, %eax
				movl	(%eax), %edx
				movl	68(%esi), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$87
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				movl	$1, %eax
				movl	%eax, 8(%esi)
				jmp	.L1074
		.L1315:
 2616 c(134):def(x);                               !swid
				movl	-4800(%ebp), %edi
				movl	X.6078@GOTOFF(%edi), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEF.7366
				addl	$16, %esp
 2617        n = ub-lb+1
				movl	UB.7291@GOTOFF(%edi), %edx
				movl	LB.7290@GOTOFF(%edi), %eax
				subl	%eax, %edx
				movl	%edx, %eax
				addl	$1, %eax
				movl	%eax, -4772(%ebp)
 2618        n = (n+15)>>4;                        !slots needed (includes zero)
				movl	-4772(%ebp), %eax
				addl	$15, %eax
				shrl	$4, %eax
				movl	%eax, -4772(%ebp)
 2619        j = dmax;  dmax = dmax+n+2
				movl	DMAX.6126@GOTOFF(%edi), %eax
				movl	%eax, -4776(%ebp)
				movl	DMAX.6126@GOTOFF(%edi), %edx
				movl	-4772(%ebp), %eax
				addl	%edx, %eax
				addl	$2, %eax
				movl	%eax, DMAX.6126@GOTOFF(%edi)
 2620        abandon(1) %IF dmax >= dmin
				movl	DMAX.6126@GOTOFF(%edi), %eax
				movl	-4804(%ebp), %edi
				movl	44(%edi), %edx
				cmpl	%eax, %edx
				jg	.L1502
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	$1
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L1317
		.L1502:
				nop
		.L1317:
 2621        tag(x)_format = j
				movl	-4800(%ebp), %edi
				movl	X.6078@GOTOFF(%edi), %edx
				movl	-4804(%ebp), %ebx
				movl	68(%ebx), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				leal	44536(%eax), %edx
				movl	-4776(%ebp), %eax
				movl	%eax, (%edx)
 2622        dict(j) = lb;  dict(j+1) = ub
				movl	-4776(%ebp), %eax
				leal	-1(%eax), %ecx
				movl	LB.7290@GOTOFF(%edi), %edx
				movl	68(%ebx), %eax
				addl	$2132, %ecx
				movl	%edx, 4(%eax,%ecx,4)
				movl	UB.7291@GOTOFF(%edi), %edx
				movl	68(%ebx), %eax
				movl	-4776(%ebp), %ecx
				addl	$2132, %ecx
				movl	%edx, 4(%eax,%ecx,4)
		.L1318:
 2623        %CYCLE
 2624           n = n-1
				subl	$1, -4772(%ebp)
 2625           ->top %IF n < 0
				nop
				jmp	.L1031
		.L1510:
				cmpl	$0, -4772(%ebp)
				js	.L1503
				nop
		.L1320:
 2626           j = j+1;  dict(j+1) = 0
				addl	$1, -4776(%ebp)
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				movl	-4776(%ebp), %edx
				addl	$2132, %edx
				movl	$0, 4(%eax,%edx,4)
 2627        %REPEAT
				jmp	.L1318
		.L1321:
 2628 c(151):stats = stats-1;                      !slab
				movl	-4800(%ebp), %ecx
				movl	STATS.6094@GOTOFF(%ecx), %eax
				subl	$1, %eax
				movl	%eax, STATS.6094@GOTOFF(%ecx)
 2629        fault(7) %AND %RETURN %IF x < tbase
				movl	X.6078@GOTOFF(%ecx), %eax
				movl	-4804(%ebp), %edx
				movl	60(%edx), %edx
				cmpl	%eax, %edx
				jle	.L1504
				subl	$12, %esp
				pushl	$7
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1017
		.L1504:
				nop
		.L1323:
 2630        %IF pending # 0 %START;               !explicit label
				movl	-4628(%ebp), %eax
				testl	%eax, %eax
				je	.L1505
				nop
		.L1325:
 2631           def s lab(pstack(1))
				movl	-4800(%ebp), %eax
				movl	PSTACK.7306@GOTOFF(%eax), %edx
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	%edx
				movl	%eax, %ecx
				call	DEFSLAB.7390
				addl	$16, %esp
 2632        %FINISH %ELSE %START
				jmp	.L1336
		.L1505:
 2633           fault(4) %AND %RETURN %IF tag(x)_app # 0
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44532, %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L1506
				subl	$12, %esp
				pushl	$4
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1017
		.L1506:
				nop
		.L1328:
 2634           tag(x)_app = 1
				movl	-4800(%ebp), %edi
				movl	X.6078@GOTOFF(%edi), %edx
				movl	-4804(%ebp), %ebx
				movl	68(%ebx), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44532, %eax
				movl	$1, (%eax)
 2635           n = tag(x)_format
				movl	X.6078@GOTOFF(%edi), %edx
				movl	68(%ebx), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44536, %eax
				movl	(%eax), %eax
				movl	%eax, -4772(%ebp)
		.LBB790:
 2636           %FOR j = dict(n), 1, dict(n+1) %CYCLE;   !imp77:
				movl	-4772(%ebp), %eax
				leal	-1(%eax), %edx
				movl	68(%ebx), %eax
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				movl	%eax, -4732(%ebp)
				movl	68(%ebx), %eax
				movl	-4772(%ebp), %edx
				addl	$2132, %edx
				movl	4(%eax,%edx,4), %eax
				movl	%eax, -4728(%ebp)
		.LBB791:
				movl	-4728(%ebp), %eax
				subl	-4732(%ebp), %eax
				movl	%eax, -4724(%ebp)
				movl	-4724(%ebp), %eax
				xorl	$1, %eax
				shrl	$31, %eax
				movzbl	%al, %eax
		.LBE791:
				testl	%eax, %eax
				je	.L1329
				leal	-2626(%ebp), %eax
				subl	$8, %esp
				movl	-4800(%ebp), %esi
				leal	.LC101@GOTOFF(%esi), %edx
				pushl	%edx
				pushl	%eax
				movl	%esi, %ebx
				call	_imp_c2istr@PLT
				addl	$12, %esp
				movl	_imp_current_line@GOT(%esi), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L1330
				movl	-4800(%ebp), %eax
				movl	_imp_current_line@GOT(%eax), %eax
				movl	(%eax), %eax
				movl	%eax, -4808(%ebp)
				jmp	.L1331
		.L1330:
				movl	$2636, -4808(%ebp)
		.L1331:
				movl	-4800(%ebp), %eax
				movl	_imp_current_file@GOT(%eax), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L1332
				movl	-4800(%ebp), %ebx
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-2370(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L1333
		.L1332:
		.LBB792:
				leal	-578(%ebp), %eax
				movl	-4800(%ebp), %ecx
				leal	.LC21@GOTOFF(%ecx), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-3394(%ebp), %eax
				leal	-578(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
		.LBE792:
				leal	-2370(%ebp), %eax
				leal	-3394(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
		.L1333:
				pushl	$0
				pushl	$1
				pushl	$5
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %ebx
				leal	-2626(%ebp), %eax
				movl	$64, %edx
				movl	%ebx, %edi
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				pushl	-4808(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %ebx
				leal	-2370(%ebp), %eax
				movl	$64, %edx
				movl	%ebx, %edi
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				movl	-4800(%ebp), %ebx
				call	_signal_event@PLT
				addl	$528, %esp
		.L1329:
				movl	-4732(%ebp), %eax
				subl	$1, %eax
				movl	%eax, -4776(%ebp)
		.L1334:
				movl	-4776(%ebp), %eax
				cmpl	-4728(%ebp), %eax
				je	.L1507
				addl	$1, -4776(%ebp)
				nop
		.L1336:
		.LBE790:
 2637              def s lab(j);                         !imp77:
				subl	$12, %esp
				leal	-4644(%ebp), %eax
				pushl	-4776(%ebp)
				movl	%eax, %ecx
				call	DEFSLAB.7390
				addl	$16, %esp
 2638           %REPEAT;                                 !imp77:
				jmp	.L1334
		.L1326:
		.L1507:
 2639        %FINISH
 2640        inhibit = 1
				movl	$1, %eax
				movl	-4804(%ebp), %esi
				movl	%eax, 8(%esi)
 2641        %RETURN
				jmp	.L1017
		.L1337:
 2642
 2643 c(140):put('p');             ->top;          !psep
				subl	$12, %esp
				pushl	$112
				movl	-4800(%ebp), %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1338:
 2644 c(144):put('p');  put('E');  ->top;          !prb
				subl	$12, %esp
				pushl	$112
				movl	-4800(%ebp), %esi
				movl	%esi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				subl	$12, %esp
				pushl	$69
				movl	%esi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1339:
 2645
 2646 !constant expressions
 2647
 2648 c(155):                                      !pconst
 2649        %IF x < 0 %THEN lit = tag(-x)_format %ELSE lit = lit pool(x)
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				testl	%eax, %eax
				jns	.L1508
				movl	-4800(%ebp), %ebx
				movl	X.6078@GOTOFF(%ebx), %eax
				negl	%eax
				movl	%eax, %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %ecx
				movl	%edx, %eax
				addl	%eax, %eax
				addl	%edx, %eax
				sall	$3, %eax
				addl	%ecx, %eax
				addl	$44536, %eax
				movl	(%eax), %eax
				movl	%eax, LIT.6157@GOTOFF(%ebx)
				jmp	.L1342
		.L1508:
				nop
		.L1341:
				movl	-4800(%ebp), %ecx
				movl	X.6078@GOTOFF(%ecx), %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				addl	$2080, %edx
				movl	(%eax,%edx,4), %eax
				movl	%eax, LIT.6157@GOTOFF(%ecx)
		.L1342:
 2650        pending = pending+1;     pstack(pending) = lit;  ->top
				movl	-4628(%ebp), %eax
				addl	$1, %eax
				movl	%eax, -4628(%ebp)
				movl	-4628(%ebp), %eax
				leal	-1(%eax), %edx
				movl	-4800(%ebp), %esi
				movl	LIT.6157@GOTOFF(%esi), %eax
				movl	%eax, PSTACK.7306@GOTOFF(%esi,%edx,4)
				jmp	.L1031
		.L1343:
 2651 c(156):lit = pstack(pending);  lit = -lit %IF lit < 0
				movl	-4628(%ebp), %eax
				subl	$1, %eax
				movl	-4800(%ebp), %edi
				movl	PSTACK.7306@GOTOFF(%edi,%eax,4), %eax
				movl	%eax, LIT.6157@GOTOFF(%edi)
				movl	LIT.6157@GOTOFF(%edi), %eax
				testl	%eax, %eax
				jns	.L1509
				movl	-4800(%ebp), %edx
				movl	LIT.6157@GOTOFF(%edx), %eax
				negl	%eax
				movl	%eax, LIT.6157@GOTOFF(%edx)
				jmp	.L1345
		.L1509:
				nop
		.L1345:
 2652                                 pstack(pending) = lit;  ->top;  !cmod
				movl	-4628(%ebp), %eax
				leal	-1(%eax), %edx
				movl	-4800(%ebp), %ecx
				movl	LIT.6157@GOTOFF(%ecx), %eax
				movl	%eax, PSTACK.7306@GOTOFF(%ecx,%edx,4)
				jmp	.L1031
		.L1346:
 2653 c(157):-> top %if X#36          { JGH fix to %const %integer X = +1 => -1 bug }
				nop
		.L1031:
				movl	-4800(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				cmpl	$36, %eax
				jne	.L1510
				nop
		.L1348:
 2654        lit = -pstack(pending);  pstack(pending) = lit;  ->top;  !csign
				movl	-4628(%ebp), %eax
				subl	$1, %eax
				movl	-4800(%ebp), %edi
				movl	PSTACK.7306@GOTOFF(%edi,%eax,4), %eax
				negl	%eax
				movl	%eax, LIT.6157@GOTOFF(%edi)
				movl	-4628(%ebp), %eax
				leal	-1(%eax), %edx
				movl	LIT.6157@GOTOFF(%edi), %eax
				movl	%eax, PSTACK.7306@GOTOFF(%edi,%edx,4)
				jmp	.L1031
		.L1349:
 2655 c(158):lit = \pstack(pending);  pstack(pending) = lit;  ->top;  !cuop
				movl	-4628(%ebp), %eax
				subl	$1, %eax
				movl	-4800(%ebp), %esi
				movl	PSTACK.7306@GOTOFF(%esi,%eax,4), %eax
				notl	%eax
				movl	%eax, LIT.6157@GOTOFF(%esi)
				movl	-4628(%ebp), %eax
				leal	-1(%eax), %edx
				movl	LIT.6157@GOTOFF(%esi), %eax
				movl	%eax, PSTACK.7306@GOTOFF(%esi,%edx,4)
				jmp	.L1031
		.L1350:
				jmp	.L1352
		.L1351:
		.L1352:
 2656 c(159):                                      !cop1
 2657 c(160):                                      !cop2
 2658 c(161):pending = pending-1;                  !cop3
				movl	-4628(%ebp), %eax
				subl	$1, %eax
				movl	%eax, -4628(%ebp)
 2659        lit2 = pstack(pending+1);  lit = pstack(pending)
				movl	-4628(%ebp), %eax
				movl	-4800(%ebp), %esi
				movl	PSTACK.7306@GOTOFF(%esi,%eax,4), %eax
				movl	%eax, -4768(%ebp)
				movl	-4628(%ebp), %eax
				subl	$1, %eax
				movl	PSTACK.7306@GOTOFF(%esi,%eax,4), %eax
				movl	%eax, LIT.6157@GOTOFF(%esi)
 2660        ->litop(x>>2)
				movl	$2660, -4744(%ebp)
				leal	.LC92@GOTOFF(%esi), %eax
				movl	%eax, -4740(%ebp)
				movl	X.6078@GOTOFF(%esi), %eax
				shrl	$2, %eax
				movl	%eax, -4736(%ebp)
				nop
		.L1353:
 2661 litop(*):debug("* Switch label not set: litop(".itos(x>>2,0).") {x=".itos(x,2)."}"); %stop
 2662 litop(10):lit = lit*lit2;   ->setl
				movl	-4800(%ebp), %edi
				movl	LIT.6157@GOTOFF(%edi), %eax
				imull	-4768(%ebp), %eax
				movl	%eax, LIT.6157@GOTOFF(%edi)
				jmp	.L1355
		.L1356:
		.L1357:
 2663 litop(12):
 2664 litop(3):n = 1;                              !lit = lit\\lit2
				movl	$1, -4772(%ebp)
 2665          fault(10) %IF lit2 < 0
				cmpl	$0, -4768(%ebp)
				jns	.L1511
				subl	$12, %esp
				pushl	$10
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				jmp	.L1363
		.L1359:
		.L1511:
				nop
		.L1360:
		.L1363:
 2666          %WHILE lit2 > 0 %CYCLE
				cmpl	$0, -4768(%ebp)
				jle	.L1512
				nop
		.L1362:
 2667             lit2 = lit2-1
				subl	$1, -4768(%ebp)
 2668             n = n*lit
				movl	-4800(%ebp), %eax
				movl	LIT.6157@GOTOFF(%eax), %eax
				movl	-4772(%ebp), %edx
				imull	%edx, %eax
				movl	%eax, -4772(%ebp)
 2669          %REPEAT
				jmp	.L1363
		.L1512:
 2670          lit = n;           ->setl
				movl	-4772(%ebp), %eax
				movl	-4800(%ebp), %edi
				movl	%eax, LIT.6157@GOTOFF(%edi)
				jmp	.L1355
		.L1364:
 2671 litop(1):lit = lit<<lit2;   ->setl
				movl	-4800(%ebp), %ebx
				movl	LIT.6157@GOTOFF(%ebx), %edx
				movl	-4768(%ebp), %eax
				movl	%eax, %ecx
				sall	%cl, %edx
				movl	%edx, %eax
				movl	%eax, LIT.6157@GOTOFF(%ebx)
				jmp	.L1355
		.L1365:
 2672 litop(2):lit = lit>>lit2;   ->setl
				movl	-4800(%ebp), %esi
				movl	LIT.6157@GOTOFF(%esi), %eax
				movl	%eax, %edx
				movl	-4768(%ebp), %eax
				movl	%eax, %ecx
				shrl	%cl, %edx
				movl	%edx, %eax
				movl	%eax, LIT.6157@GOTOFF(%esi)
				jmp	.L1355
		.L1366:
 2673 litop(5):lit = lit&lit2;    ->setl
				movl	-4800(%ebp), %ecx
				movl	LIT.6157@GOTOFF(%ecx), %eax
				andl	-4768(%ebp), %eax
				movl	%eax, LIT.6157@GOTOFF(%ecx)
				jmp	.L1355
		.L1367:
		.L1368:
 2674 litop(11):
 2675 litop(4):%IF lit2 = 0 %THEN fault(10) %ELSE lit = lit//lit2
				cmpl	$0, -4768(%ebp)
				jne	.L1513
				subl	$12, %esp
				pushl	$10
				movl	-4804(%ebp), %ecx
				call	FAULT.6347
				addl	$16, %esp
				nop
		.L1371:
				nop
		.L1370:
				movl	-4800(%ebp), %edi
				movl	LIT.6157@GOTOFF(%edi), %eax
				cltd
				idivl	-4768(%ebp)
				movl	%eax, LIT.6157@GOTOFF(%edi)
 2676                             ->setl
				jmp	.L1355
		.L1513:
				jmp	.L1355
		.L1372:
 2677 litop(8):lit = lit+lit2;    ->setl
				movl	-4800(%ebp), %ebx
				movl	LIT.6157@GOTOFF(%ebx), %edx
				movl	-4768(%ebp), %eax
				addl	%edx, %eax
				movl	%eax, LIT.6157@GOTOFF(%ebx)
				jmp	.L1355
		.L1373:
 2678 litop(9):lit = lit-lit2;    ->setl
				movl	-4800(%ebp), %esi
				movl	LIT.6157@GOTOFF(%esi), %eax
				subl	-4768(%ebp), %eax
				movl	%eax, LIT.6157@GOTOFF(%esi)
				jmp	.L1355
		.L1374:
 2679 litop(6):lit = lit!lit2;    ->setl
				movl	-4800(%ebp), %edx
				movl	LIT.6157@GOTOFF(%edx), %eax
				orl	-4768(%ebp), %eax
				movl	%eax, LIT.6157@GOTOFF(%edx)
				jmp	.L1355
		.L1375:
 2680 litop(7):lit = lit!!lit2
				movl	-4800(%ebp), %ecx
				movl	LIT.6157@GOTOFF(%ecx), %eax
				xorl	-4768(%ebp), %eax
				movl	%eax, LIT.6157@GOTOFF(%ecx)
		.L1355:
 2681
 2682 setl: pstack(pending) = lit;  ->top
				movl	-4628(%ebp), %eax
				leal	-1(%eax), %edx
				movl	-4800(%ebp), %edi
				movl	LIT.6157@GOTOFF(%edi), %eax
				movl	%eax, PSTACK.7306@GOTOFF(%edi,%edx,4)
				jmp	.L1031
		.L1376:
 2683
 2684 c(170):            !option string
 2685    put('~'); put('D')
				subl	$12, %esp
				pushl	$126
				movl	-4800(%ebp), %edi
				movl	%edi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				subl	$12, %esp
				pushl	$68
				movl	%edi, %ebx
				call	PUT@PLT
				addl	$16, %esp
 2686    ->pstr
				jmp	.L1284
		.L1377:
 2687
 2688 !string resolution
 2689
 2690 c(135):resln = 2;         ->top;           !dotl
				movl	$2, -4784(%ebp)
				jmp	.L1031
		.L1378:
 2691 c(136):resln = resln+1;   ->top;           !dotr
				addl	$1, -4784(%ebp)
				jmp	.L1031
		.L1379:
 2692 c(55): op('r', resln);    resln = 0; ->top;           !resop
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	-4784(%ebp)
				pushl	$114
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				movl	$0, -4784(%ebp)
				jmp	.L1031
		.L1380:
 2693 c(164):op('r', resln+4);  resln = 0;         !cresop
				movl	-4784(%ebp), %eax
				leal	4(%eax), %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	$114
				movl	%eax, %ecx
				call	OP.6307
				addl	$16, %esp
				movl	$0, -4784(%ebp)
		.L1381:
 2694 c(122):x = 6;            ->cop;            !%PRED
				movl	-4800(%ebp), %eax
				movl	$6, X.6078@GOTOFF(%eax)
				jmp	.L1402
		.L1382:
 2695 c(87):set const(pstack(1));            !mass
				movl	-4800(%ebp), %ebx
				movl	PSTACK.7306@GOTOFF(%ebx), %edx
				movl	-4804(%ebp), %eax
				movl	68(%eax), %eax
				subl	$12, %esp
				pushl	%edx
				movl	%eax, %ecx
				call	SETCONST.6310
				addl	$16, %esp
 2696       put('P');  ->top
				subl	$12, %esp
				pushl	$80
				call	PUT@PLT
				addl	$16, %esp
				jmp	.L1031
		.L1406:
 2697    %END
				cmpl	$0, -4748(%ebp)
				js	.L1383
				jmp	.L1406
		.L1036:
		.LBB725:
		.LBB726:
		.LBB727:
				cmpl	$0, -4736(%ebp)
				jle	.L1390
				jmp	.L1427
		.L1354:
				cmpl	$180, -4748(%ebp)
				jle	.L1384
		.L1383:
				movl	-4800(%ebp), %eax
				movl	_imp_current_line@GOT(%eax), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L1385
				movl	-4800(%ebp), %eax
				movl	_imp_current_line@GOT(%eax), %eax
				movl	(%eax), %eax
				movl	%eax, -4808(%ebp)
				jmp	.L1386
		.L1385:
				movl	$2697, -4808(%ebp)
		.L1386:
				movl	-4800(%ebp), %eax
				movl	_imp_current_file@GOT(%eax), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L1387
				movl	-4800(%ebp), %ebx
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-2114(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L1388
		.L1387:
		.LBB793:
				leal	-578(%ebp), %eax
				movl	-4800(%ebp), %edx
				leal	.LC21@GOTOFF(%edx), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-3138(%ebp), %eax
				leal	-578(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
		.LBE793:
				leal	-2114(%ebp), %eax
				leal	-3138(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
		.L1388:
				pushl	-4756(%ebp)
				pushl	-4752(%ebp)
				pushl	-4748(%ebp)
				movl	-4800(%ebp), %eax
				leal	.LC102@GOTOFF(%eax), %eax
				pushl	%eax
				pushl	-4748(%ebp)
				pushl	$3
				pushl	$6
				pushl	-4808(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %ebx
				leal	-2114(%ebp), %eax
				movl	$64, %edx
				movl	%ebx, %edi
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				movl	-4800(%ebp), %ebx
				call	_signal_eventf@PLT
				addl	$288, %esp
		.L1384:
				movl	-4748(%ebp), %eax
				movl	-4800(%ebp), %ecx
				movl	C.7128@GOTOFF(%ecx,%eax,4), %eax
				jmp	.L1389
		.L1427:
				cmpl	$12, -4736(%ebp)
				jle	.L1391
		.L1390:
				movl	-4800(%ebp), %eax
				movl	_imp_current_line@GOT(%eax), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L1392
				movl	-4800(%ebp), %eax
				movl	_imp_current_line@GOT(%eax), %eax
				movl	(%eax), %eax
				movl	%eax, -4808(%ebp)
				jmp	.L1393
		.L1392:
				movl	$2697, -4808(%ebp)
		.L1393:
				movl	-4800(%ebp), %eax
				movl	_imp_current_file@GOT(%eax), %eax
				movl	(%eax), %eax
				testl	%eax, %eax
				je	.L1394
				movl	-4800(%ebp), %ebx
				movl	_imp_current_file@GOT(%ebx), %eax
				movl	(%eax), %edx
				leal	-1858(%ebp), %eax
				subl	$8, %esp
				pushl	%edx
				pushl	%eax
				call	_imp_c2istr@PLT
				addl	$12, %esp
				jmp	.L1395
		.L1394:
		.LBB794:
				leal	-578(%ebp), %eax
				movl	-4800(%ebp), %esi
				leal	.LC21@GOTOFF(%esi), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
				leal	-2882(%ebp), %eax
				leal	-578(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
		.LBE794:
				leal	-1858(%ebp), %eax
				leal	-2882(%ebp), %edx
				movl	$256, %ecx
				movl	(%edx), %ebx
				movl	%ebx, (%eax)
				movl	-4(%edx,%ecx), %ebx
				movl	%ebx, -4(%eax,%ecx)
				leal	4(%eax), %ebx
				andl	$-4, %ebx
				subl	%ebx, %eax
				subl	%eax, %edx
				addl	%eax, %ecx
				andl	$-4, %ecx
				movl	%ecx, %eax
				shrl	$2, %eax
				movl	%ebx, %edi
				movl	%edx, %esi
				movl	%eax, %ecx
				rep movsl
		.L1395:
				pushl	-4744(%ebp)
				pushl	-4740(%ebp)
				pushl	-4736(%ebp)
				movl	-4800(%ebp), %eax
				leal	.LC103@GOTOFF(%eax), %eax
				pushl	%eax
				pushl	-4736(%ebp)
				pushl	$3
				pushl	$6
				pushl	-4808(%ebp)
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %ebx
				leal	-1858(%ebp), %eax
				movl	$64, %edx
				movl	%ebx, %edi
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				movl	-4800(%ebp), %ebx
				call	_signal_eventf@PLT
				addl	$288, %esp
		.L1391:
				movl	-4736(%ebp), %eax
				subl	$1, %eax
				movl	-4800(%ebp), %edi
				movl	LITOP.7262@GOTOFF(%edi,%eax,4), %eax
				jmp	.L1389
		.L1436:
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L1397
				call	__stack_chk_fail_local
		.L1397:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE212:
		GETNEXT.7314:
		.LFB214:
 2698
 2699 %END;                                      !of compile block
				movl	-28(%ebp), %eax
				xorl	%gs:20, %eax
				je	.L249
				call	__stack_chk_fail_local
		.L249:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE194:
		SETCELL.6541:
		.LFB198:
 2700
 2701 debug("ENTERED PASS1  object tank=".itos(object tank,0)." *************")
				leal	-145036(%ebp), %eax
				leal	.LC2@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-145036(%ebp), %eax
				movl	%eax, -152000(%ebp)
				movl	8(%ebp), %eax
				movl	%eax, -151716(%ebp)
				movl	$0, -151712(%ebp)
		.LBE464:
		.LBB465:
		.LBB466:
		.LBB467:
		.LBB468:
				leal	-146060(%ebp), %eax
				subl	$4, %esp
				pushl	-151712(%ebp)
				pushl	-151716(%ebp)
				pushl	%eax
				movl	%ebx, -151996(%ebp)
				call	_imp_itos@PLT
				addl	$12, %esp
		.LBE468:
		.LBE467:
				leal	-145036(%ebp), %eax
				leal	-146060(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-145036(%ebp), %ebx
		.LBE466:
		.LBB469:
				leal	-145036(%ebp), %eax
				movl	-151996(%ebp), %edi
				leal	.LC3@GOTOFF(%edi), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-145036(%ebp), %edx
		.LBE469:
				leal	-150156(%ebp), %eax
				subl	$4, %esp
				pushl	%ebx
				pushl	%edx
				pushl	%eax
				movl	-151996(%ebp), %edi
				movl	%edi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-150156(%ebp), %edx
		.LBE465:
				leal	-150412(%ebp), %eax
				subl	$4, %esp
				pushl	-152000(%ebp)
				pushl	%edx
				pushl	%eax
				movl	%edi, -151996(%ebp)
				movl	%edi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-150412(%ebp), %edx
		.LBE463:
				leal	-145036(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
				leal	-145036(%ebp), %eax
		.LBE462:
				subl	$256, %esp
				movl	%esp, %edx
				movl	%eax, %esi
				movl	$64, %eax
				movl	%edx, %edi
				movl	%eax, %ecx
				rep movsl
				movl	-151996(%ebp), %edi
				movl	%edi, %ebx
				call	DEBUG@PLT
				addl	$256, %esp
 2702
 2703    %ON 9 %START
				subl	$8, %esp
				pushl	$1
				movl	%edi, %ebx
				movl	_imp_event@GOT(%ebx), %eax
				leal	532(%eax), %eax
				pushl	%eax
				movl	%edi, %ebx
				call	__sigsetjmp@PLT
				addl	$16, %esp
				testl	%eax, %eax
				jne	.L35
		.LBB470:
				movl	$9, -149900(%ebp)
				movl	$0, -151724(%ebp)
		.LBB471:
				movl	$0, -151720(%ebp)
				jmp	.L36
		.L37:
				movl	-151720(%ebp), %eax
				movl	-149900(%ebp,%eax,4), %eax
				movl	$1, %edx
				movl	%eax, %ecx
				sall	%cl, %edx
				movl	%edx, %eax
				orl	%eax, -151724(%ebp)
				addl	$1, -151720(%ebp)
		.L36:
				cmpl	$0, -151720(%ebp)
				je	.L37
		.LBE471:
				movl	-151724(%ebp), %eax
		.LBE470:
				subl	$8, %esp
				pushl	%eax
				movl	-151996(%ebp), %ebx
				movl	_imp_event@GOT(%ebx), %eax
				pushl	%eax
				call	_imp_on_event_enter@PLT
				addl	$16, %esp
				testl	%eax, %eax
				jne	.L56
		.L35:
		.LBB472:
				nop
		.L38:
 2704 debug("[3]%ON 9 %START:")
				leal	-149900(%ebp), %eax
				movl	-151996(%ebp), %ebx
				leal	.LC4@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-149644(%ebp), %eax
				leal	-149900(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE472:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-149644(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				call	DEBUG@PLT
				addl	$256, %esp
 2705       abandon(5)
				subl	$12, %esp
				leal	-144780(%ebp), %eax
				pushl	$5
				movl	%eax, %ecx
				call	ABANDON.6198
				addl	$16, %esp
				jmp	.L38
		.L56:
 2706    %FINISH
 2707
 2708    selectoutput(listing)                               ;!!!!!!!!!!!!!!!! THIS FAILS
				subl	$12, %esp
				pushl	$2
				call	_imp_SELECTOUTPUT
				addl	$16, %esp
		.LBB473:
		.LBB474:
		.LBB475:
 2709 !debug("A: object tank=".itos(object tank,0))
 2710    %if command & list bit # 0 %start
 2711       printstring("
				leal	-151992(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				movl	-151996(%ebp), %ebx
				call	TIME@PLT
				addl	$12, %esp
				leal	-148364(%ebp), %eax
				leal	-151992(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-148364(%ebp), %eax
				movl	%eax, -152004(%ebp)
		.LBE475:
		.LBB476:
		.LBB477:
				leal	-148364(%ebp), %eax
				movl	-151996(%ebp), %esi
				leal	.LC5@GOTOFF(%esi), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-148364(%ebp), %ebx
				movl	%ebx, -152008(%ebp)
		.LBE477:
		.LBB478:
		.LBB479:
				leal	-151992(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				movl	-151996(%ebp), %ebx
				call	DATE@PLT
				addl	$12, %esp
				leal	-148620(%ebp), %eax
				leal	-151992(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-148620(%ebp), %ebx
		.LBE479:
		.LBB480:
				leal	-148364(%ebp), %eax
				movl	-151996(%ebp), %esi
				leal	.LC6@GOTOFF(%esi), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-148364(%ebp), %edx
		.LBE480:
				leal	-148876(%ebp), %eax
				subl	$4, %esp
				pushl	%ebx
				pushl	%edx
				pushl	%eax
				movl	-151996(%ebp), %esi
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-148876(%ebp), %edx
		.LBE478:
				leal	-149132(%ebp), %eax
				subl	$4, %esp
				pushl	-152008(%ebp)
				pushl	%edx
				pushl	%eax
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-149132(%ebp), %edx
		.LBE476:
				leal	-149388(%ebp), %eax
				subl	$4, %esp
				pushl	-152004(%ebp)
				pushl	%edx
				pushl	%eax
				movl	%esi, -151996(%ebp)
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-149388(%ebp), %edx
		.LBE474:
				leal	-148364(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
				leal	-148364(%ebp), %edx
				leal	-145804(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
		.LBE473:
		.LBB481:
		.LBB482:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-145804(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				movl	-151996(%ebp), %esi
				movl	%esi, %ebx
				call	_imp_printstring@PLT
				addl	$256, %esp
				movl	$2, -151708(%ebp)
		.LBE482:
		.LBE481:
		.LBB483:
		.LBB484:
				subl	$12, %esp
				pushl	-151708(%ebp)
				movl	%esi, %ebx
				call	_imp_newlines@PLT
				addl	$16, %esp
		.LBE484:
		.LBE483:
		.LBB485:
 2712       Computer Science VAX-11 IMP77 Compiler.  Version 8.02
 2713
 2714             Compiled on ".date." at ".time)
 2715       newlines(2)
 2716 debug("select input(1)")
				leal	-148364(%ebp), %eax
				movl	%esi, %ebx
				leal	.LC7@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-148108(%ebp), %eax
				leal	-148364(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE485:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-148108(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				movl	%ebx, %esi
				movl	%esi, %ebx
				call	DEBUG@PLT
				addl	$256, %esp
 2717       select input(1)
				subl	$12, %esp
				pushl	$1
				call	_imp_SELECTINPUT
				addl	$16, %esp
		.LBB486:
		.LBB487:
		.LBB488:
 2718       printstring("   Source file: ".infilename)
				leal	-151992(%ebp), %eax
				subl	$12, %esp
				pushl	%eax
				movl	%esi, -151996(%ebp)
				movl	%esi, %ebx
				call	INFILENAME@PLT
				addl	$12, %esp
				leal	-146572(%ebp), %eax
				leal	-151992(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-146572(%ebp), %ebx
		.LBE488:
		.LBB489:
				leal	-146572(%ebp), %eax
				movl	-151996(%ebp), %esi
				leal	.LC8@GOTOFF(%esi), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-146572(%ebp), %edx
		.LBE489:
				leal	-147852(%ebp), %eax
				subl	$4, %esp
				pushl	%ebx
				pushl	%edx
				pushl	%eax
				movl	-151996(%ebp), %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-147852(%ebp), %edx
		.LBE487:
				leal	-146572(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
				leal	-146572(%ebp), %edx
				leal	-145548(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
		.LBE486:
		.LBB490:
		.LBB491:
				subl	$256, %esp
				movl	%esp, %eax
				movl	%eax, %edi
				leal	-145548(%ebp), %eax
				movl	$64, %edx
				movl	%eax, %esi
				movl	%edx, %ecx
				rep movsl
				movl	-151996(%ebp), %esi
				movl	%esi, %ebx
				call	_imp_printstring@PLT
				addl	$256, %esp
		.LBE491:
		.LBE490:
		.LBB492:
		.LBB493:
				movl	%esi, %ebx
				call	_imp_newline@PLT
		.LBE493:
		.LBE492:
		.LBB494:
		.LBB495:
				movl	%esi, %ebx
				call	_imp_newline@PLT
		.L39:
		.LBE495:
		.LBE494:
		.LBB496:
		.LBB497:
		.LBB498:
 2719       newline;  newline
 2720 !debug("B: object tank=".itos(object tank,0))
 2721    %finish
 2722 !debug("C: object tank=".itos(object tank,0))
 2723 debug("select input(prims=".itos(prims,0).")")
				leal	-146572(%ebp), %eax
				movl	%esi, %ebx
				leal	.LC9@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-146572(%ebp), %eax
				movl	%eax, -152012(%ebp)
				movl	$2, -151704(%ebp)
				movl	$0, -151700(%ebp)
		.LBE498:
		.LBB499:
		.LBB500:
		.LBB501:
		.LBB502:
				leal	-145292(%ebp), %eax
				subl	$4, %esp
				pushl	-151700(%ebp)
				pushl	-151704(%ebp)
				pushl	%eax
				movl	%ebx, -151996(%ebp)
				call	_imp_itos@PLT
				addl	$12, %esp
		.LBE502:
		.LBE501:
				leal	-146572(%ebp), %eax
				leal	-145292(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-146572(%ebp), %ebx
		.LBE500:
		.LBB503:
				leal	-146572(%ebp), %eax
				movl	-151996(%ebp), %esi
				leal	.LC10@GOTOFF(%esi), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-146572(%ebp), %edx
		.LBE503:
				leal	-147340(%ebp), %eax
				subl	$4, %esp
				pushl	%ebx
				pushl	%edx
				pushl	%eax
				movl	-151996(%ebp), %esi
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-147340(%ebp), %edx
		.LBE499:
				leal	-147596(%ebp), %eax
				subl	$4, %esp
				pushl	-152012(%ebp)
				pushl	%edx
				pushl	%eax
				movl	%esi, -151996(%ebp)
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-147596(%ebp), %edx
		.LBE497:
				leal	-146572(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
				leal	-146572(%ebp), %eax
		.LBE496:
				subl	$256, %esp
				movl	%esp, %edx
				movl	%eax, %esi
				movl	$64, %eax
				movl	%edx, %edi
				movl	%eax, %ecx
				rep movsl
				movl	-151996(%ebp), %esi
				movl	%esi, %ebx
				call	DEBUG@PLT
				addl	$256, %esp
 2724    select input(prims)
				subl	$12, %esp
				pushl	$2
				call	_imp_SELECTINPUT
				addl	$16, %esp
		.LBB504:
		.LBB505:
		.LBB506:
 2725 debug("select output tank(object tank=".itos(object tank,0).")")
				leal	-146572(%ebp), %eax
				movl	%esi, %ebx
				leal	.LC9@GOTOFF(%ebx), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-146572(%ebp), %eax
				movl	%eax, -152016(%ebp)
				movl	8(%ebp), %eax
				movl	%eax, -151696(%ebp)
				movl	$0, -151692(%ebp)
		.LBE506:
		.LBB507:
		.LBB508:
		.LBB509:
		.LBB510:
				leal	-145036(%ebp), %eax
				subl	$4, %esp
				pushl	-151692(%ebp)
				pushl	-151696(%ebp)
				pushl	%eax
				movl	%ebx, -151996(%ebp)
				call	_imp_itos@PLT
				addl	$12, %esp
		.LBE510:
		.LBE509:
				leal	-146572(%ebp), %eax
				leal	-145036(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-146572(%ebp), %ebx
		.LBE508:
		.LBB511:
				leal	-146572(%ebp), %eax
				movl	-151996(%ebp), %esi
				leal	.LC11@GOTOFF(%esi), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-146572(%ebp), %edx
		.LBE511:
				leal	-146828(%ebp), %eax
				subl	$4, %esp
				pushl	%ebx
				pushl	%edx
				pushl	%eax
				movl	-151996(%ebp), %esi
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-146828(%ebp), %edx
		.LBE507:
				leal	-147084(%ebp), %eax
				subl	$4, %esp
				pushl	-152016(%ebp)
				pushl	%edx
				pushl	%eax
				movl	%esi, -151996(%ebp)
				movl	%esi, %ebx
				call	_imp_join@PLT
				addl	$12, %esp
				leal	-147084(%ebp), %edx
		.LBE505:
				leal	-146572(%ebp), %eax
				movl	%edx, %esi
				movl	$64, %edx
				movl	%eax, %edi
				movl	%edx, %ecx
				rep movsl
				leal	-146572(%ebp), %eax
		.LBE504:
				subl	$256, %esp
				movl	%esp, %edx
				movl	%eax, %esi
				movl	$64, %eax
				movl	%edx, %edi
				movl	%eax, %ecx
				rep movsl
				movl	-151996(%ebp), %esi
				movl	%esi, %ebx
				call	DEBUG@PLT
				addl	$256, %esp
 2726    select output tank(object tank)
				subl	$12, %esp
				pushl	8(%ebp)
				movl	%esi, %ebx
				call	SELECTOUTPUTTANK@PLT
				addl	$16, %esp
 2727    tag(max tag) = 0;                       !%BEGIN defn
				movl	$0, %ecx
				movl	$24, %eax
				andl	$-4, %eax
				movl	%eax, %edx
				movl	$0, %eax
		.L42:
				movl	%ecx, -71448(%ebp,%eax)
				addl	$4, %eax
				cmpl	%edx, %eax
				jb	.L42
 2728    tag(0) = 0;  tag(0)_flags = 7;          !%BEGIN tag!
				movl	$0, %ecx
				movl	$24, %eax
				andl	$-4, %eax
				movl	%eax, %edx
				movl	$0, %eax
		.L44:
				movl	%ecx, -100248(%ebp,%eax)
				addl	$4, %eax
				cmpl	%edx, %eax
				jb	.L44
				movl	$7, -100240(%ebp)
 2729    %FOR x = 0, 1, max names %CYCLE;   !imp77:
				movl	-151996(%ebp), %eax
				movl	$-1, X.6078@GOTOFF(%eax)
		.L46:
				movl	-151996(%ebp), %eax
				movl	X.6078@GOTOFF(%eax), %eax
				cmpl	$2047, %eax
				je	.L57
				movl	-151996(%ebp), %ebx
				movl	X.6078@GOTOFF(%ebx), %eax
				addl	$1, %eax
				movl	%eax, X.6078@GOTOFF(%ebx)
				nop
		.L48:
		.LBB512:
		.LBB513:
 2730       hash(x) = 0;                    !imp77:
				movl	X.6078@GOTOFF(%ebx), %eax
				addl	$36792, %eax
				movw	$0, -144768(%ebp,%eax,2)
 2731    %REPEAT;                           !imp77:
				jmp	.L46
		.L57:
 2732    include file = ""
				movb	$0, -146572(%ebp)
				movl	$0, -146571(%ebp)
				leal	-146567(%ebp), %edx
				movl	$0, %eax
				movb	%al, (%edx)
				addl	$1, %edx
				movw	%ax, (%edx)
				addl	$2, %edx
				movl	$62, %ecx
				movl	%edx, %edi
				rep stosl
				leal	-146316(%ebp), %eax
				leal	-146572(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
		.LBE513:
				leal	-146572(%ebp), %eax
				leal	-146316(%ebp), %edx
				movl	$64, %ecx
				movl	%eax, %edi
				movl	%edx, %esi
				rep movsl
				leal	-146572(%ebp), %eax
		.LBE512:
				subl	$4, %esp
				pushl	$63
				pushl	%eax
				leal	-144780(%ebp), %eax
				addl	$144440, %eax
				pushl	%eax
				movl	-151996(%ebp), %edi
				movl	%edi, %ebx
				call	_imp_strncpy@PLT
				addl	$16, %esp
 2733    put('l'); putword(0)
				subl	$12, %esp
				pushl	$108
				movl	%edi, %ebx
				call	PUT@PLT
				addl	$16, %esp
				subl	$12, %esp
				pushl	$0
				movl	%edi, %ebx
				call	PUTWORD@PLT
				addl	$16, %esp
 2734    compile block(0, 0, max dict, 0, 0)
				subl	$12, %esp
				leal	-144780(%ebp), %eax
				pushl	$0
				pushl	$0
				pushl	$9000
				pushl	$0
				pushl	$0
				movl	%eax, %ecx
				call	COMPILEBLOCK.6320
				addl	$32, %esp
 2735    %result = -faulty %IF faulty # 0;   !imp77: %ENDOFPROGRAM
				movl	%edi, %eax
				movl	FAULTY.6086@GOTOFF(%eax), %eax
				testl	%eax, %eax
				je	.L58
				movl	-151996(%ebp), %eax
				movl	FAULTY.6086@GOTOFF(%eax), %eax
				negl	%eax
				jmp	.L52
		.L58:
				nop
		.L50:
 2736    %result = stats
				movl	-151996(%ebp), %eax
				movl	STATS.6094@GOTOFF(%eax), %eax
		.L52:
 2737 %end
				movl	-28(%ebp), %ebx
				xorl	%gs:20, %ebx
				je	.L53
				call	__stack_chk_fail_local
		.L53:
				leal	-12(%ebp), %esp
				popl	%ebx
				popl	%esi
				popl	%edi
				popl	%ebp
				ret
		.LFE189:
				.section	.rodata
		.LC92:
				.string	"test-in/vax-pass1.imp"
				.align 4
		.LC93:
				.string	"->REASON(%d) out of bounds at %s line %d"
				.align 4
		.LC94:
				.string	"switch jump to undefined label REASON(%d): at %s line %d"
				.align 32
		.LC21:
				.byte	21
				.string	"test-in/vax-pass1.imp"
				.zero	233
		ABANDON.6198:
		.LFB191:
?SYSMESS unused
 2738 %endoffile
 2319 Statements compiled
