home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 8 / FreshFishVol8-CD1.bin / gnu / src / diffs / gcc-2.6.3.diffs < prev    next >
Encoding:
Text File  |  1995-01-21  |  645.7 KB  |  14,476 lines

  1. diff -rc --new-file gcc-2.6.3/Makefile.in /gnu/src/amiga/gcc-2.6.3/Makefile.in
  2. *** gcc-2.6.3/Makefile.in    Mon Nov 28 23:54:06 1994
  3. --- /gnu/src/amiga/gcc-2.6.3/Makefile.in    Sun Jan 15 16:26:05 1995
  4. ***************
  5. *** 65,75 ****
  6.   AR_FLAGS = rc
  7.   SHELL = /bin/sh
  8.   # on sysV, define this as cp.
  9. ! INSTALL = install -c
  10.   # These permit overriding just for certain files.
  11.   INSTALL_PROGRAM = $(INSTALL)
  12.   INSTALL_DATA = $(INSTALL)
  13. ! SYMLINK = ln -s
  14.   MAKEINFO = makeinfo
  15.   TEXI2DVI = texi2dvi
  16.   # For GNUmake: let us decide what gets passed to recursive makes.
  17. --- 65,78 ----
  18.   AR_FLAGS = rc
  19.   SHELL = /bin/sh
  20.   # on sysV, define this as cp.
  21. ! INSTALL = cp
  22.   # These permit overriding just for certain files.
  23.   INSTALL_PROGRAM = $(INSTALL)
  24.   INSTALL_DATA = $(INSTALL)
  25. ! SYMLINK = cp
  26. ! # Some systems don't support hardlinks.  For this case, a simple copy
  27. ! # will achieve the same results for our purposes.
  28. ! HARDLINK = cp
  29.   MAKEINFO = makeinfo
  30.   TEXI2DVI = texi2dvi
  31.   # For GNUmake: let us decide what gets passed to recursive makes.
  32. ***************
  33. *** 99,111 ****
  34.   OLDAR = ar
  35.   
  36.   # Target to use when installing include directory.  Either
  37. ! # install-headers-tar or install-headers-cpio.
  38.   INSTALL_HEADERS_DIR = install-headers-tar
  39.   
  40.   # The GCC to use for compiling libgcc2.a, enquire, and cross-test.
  41.   # Usually the one we just built.
  42.   # Don't use this as a dependency--use $(GCC_PASSES) or $(GCC_PARTS).
  43. ! GCC_FOR_TARGET = ./xgcc -B./
  44.   
  45.   # This is used instead of ALL_CFLAGS when compiling with GCC_FOR_TARGET.
  46.   # It omits XCFLAGS, and specifies -B./.
  47. --- 102,115 ----
  48.   OLDAR = ar
  49.   
  50.   # Target to use when installing include directory.  Either
  51. ! # install-headers-tar install-headers-cpio, or install-headers-cp.
  52.   INSTALL_HEADERS_DIR = install-headers-tar
  53.   
  54.   # The GCC to use for compiling libgcc2.a, enquire, and cross-test.
  55.   # Usually the one we just built.
  56.   # Don't use this as a dependency--use $(GCC_PASSES) or $(GCC_PARTS).
  57. ! XGCC = xgcc
  58. ! GCC_FOR_TARGET = ./$(XGCC) -B./
  59.   
  60.   # This is used instead of ALL_CFLAGS when compiling with GCC_FOR_TARGET.
  61.   # It omits XCFLAGS, and specifies -B./.
  62. ***************
  63. *** 150,161 ****
  64.   srcdir = .
  65.   # Common prefix for installation directories.
  66.   # NOTE: This directory must exist when you start installation.
  67. ! prefix = /usr/local
  68.   # Directory in which to put localized header files. On the systems with
  69.   # gcc as the native cc, `local_prefix' may not be `prefix' which is
  70.   # `/usr'.
  71.   # NOTE: local_prefix *should not* default from prefix.
  72. ! local_prefix = /usr/local
  73.   # Directory in which to put host dependent programs and libraries
  74.   exec_prefix = $(prefix)
  75.   # Directory in which to put the executable for the command `gcc'
  76. --- 154,168 ----
  77.   srcdir = .
  78.   # Common prefix for installation directories.
  79.   # NOTE: This directory must exist when you start installation.
  80. ! prefix = /gnu
  81.   # Directory in which to put localized header files. On the systems with
  82.   # gcc as the native cc, `local_prefix' may not be `prefix' which is
  83.   # `/usr'.
  84. + # Similar considerations apply for toolkits located on non-writable storage,
  85. + # such as CD-ROM, where we need a completely separate place to put local
  86. + # include files.
  87.   # NOTE: local_prefix *should not* default from prefix.
  88. ! local_prefix = /gnu
  89.   # Directory in which to put host dependent programs and libraries
  90.   exec_prefix = $(prefix)
  91.   # Directory in which to put the executable for the command `gcc'
  92. ***************
  93. *** 621,627 ****
  94.       $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o xgcc gcc.o version.o $(LIBS)
  95.   
  96.   # Dump a specs file to make -B./ read these specs over installed ones.
  97. ! specs: xgcc
  98.       $(GCC_FOR_TARGET) -dumpspecs > specs
  99.   
  100.   # We do want to create an executable named `xgcc', so we can use it to
  101. --- 628,634 ----
  102.       $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o xgcc gcc.o version.o $(LIBS)
  103.   
  104.   # Dump a specs file to make -B./ read these specs over installed ones.
  105. ! specs: xgcc xgccv
  106.       $(GCC_FOR_TARGET) -dumpspecs > specs
  107.   
  108.   # We do want to create an executable named `xgcc', so we can use it to
  109. ***************
  110. *** 838,845 ****
  111.   # the second ar command tries to overwrite this file.  To avoid the error
  112.   # message from ar, we make sure all files are writable.
  113.       -(cd tmpcopy; chmod +w * > /dev/null 2>&1)
  114. !     (cd tmpcopy; $(AR) x ../$(LIBGCC2))
  115. !     (cd tmpcopy; $(AR) $(AR_FLAGS) ../tmplibgcc.a *.o)
  116.       rm -rf tmpcopy
  117.       -if $(RANLIB_TEST) ; then $(RANLIB) tmplibgcc.a; else true; fi
  118.   # Actually build it in tmplibgcc.a, then rename at end,
  119. --- 845,853 ----
  120.   # the second ar command tries to overwrite this file.  To avoid the error
  121.   # message from ar, we make sure all files are writable.
  122.       -(cd tmpcopy; chmod +w * > /dev/null 2>&1)
  123. ! # The "cd..; wait" makes sure that the lock on tmpcopy has time to disappear.
  124. !     (cd tmpcopy; $(AR) x ../$(LIBGCC2); cd ..; /c/wait 2)
  125. !     (cd tmpcopy; $(AR) $(AR_FLAGS) ../tmplibgcc.a *.o; cd ..; /c/wait 2)
  126.       rm -rf tmpcopy
  127.       -if $(RANLIB_TEST) ; then $(RANLIB) tmplibgcc.a; else true; fi
  128.   # Actually build it in tmplibgcc.a, then rename at end,
  129. ***************
  130. *** 911,920 ****
  131.       cd objc; \
  132.       $(MAKE) -f $${srcdir1}/objc/Makefile libobjc.a \
  133.         srcdir=$${srcdir1} tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \
  134. !       GCC_FOR_TARGET="$${thisdir1}/xgcc -B$${thisdir1}/" \
  135.         GCC_CFLAGS="$(GCC_CFLAGS)"
  136.       -rm -f libobjc.a
  137. !     ln objc/libobjc.a . >/dev/null 2>&1 || cp objc/libobjc.a .
  138.       -if $(RANLIB_TEST) ; then $(RANLIB) libobjc.a; else true; fi
  139.   
  140.   # This is used by objc/Makefile if the user runs that directly.
  141. --- 919,928 ----
  142.       cd objc; \
  143.       $(MAKE) -f $${srcdir1}/objc/Makefile libobjc.a \
  144.         srcdir=$${srcdir1} tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \
  145. !       GCC_FOR_TARGET="$${thisdir1}/$(XGCC) -B$${thisdir1}/" \
  146.         GCC_CFLAGS="$(GCC_CFLAGS)"
  147.       -rm -f libobjc.a
  148. !     $(HARDLINK) objc/libobjc.a . >/dev/null 2>&1 || cp objc/libobjc.a .
  149.       -if $(RANLIB_TEST) ; then $(RANLIB) libobjc.a; else true; fi
  150.   
  151.   # This is used by objc/Makefile if the user runs that directly.
  152. ***************
  153. *** 924,930 ****
  154.       cd objc; \
  155.       $(MAKE) -f $$srcdir1/objc/Makefile libobjc.a \
  156.         srcdir=$$srcdir1 tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \
  157. !       GCC_FOR_TARGET="$$thisdir1/xgcc -B$$thisdir1/" \
  158.         GCC_CFLAGS="$(GCC_CFLAGS)"
  159.   
  160.   # Compile two additional files that are linked with every program
  161. --- 932,938 ----
  162.       cd objc; \
  163.       $(MAKE) -f $$srcdir1/objc/Makefile libobjc.a \
  164.         srcdir=$$srcdir1 tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \
  165. !       GCC_FOR_TARGET="$$thisdir1/$(XGCC) -B$$thisdir1/" \
  166.         GCC_CFLAGS="$(GCC_CFLAGS)"
  167.   
  168.   # Compile two additional files that are linked with every program
  169. ***************
  170. *** 975,981 ****
  171.   # To make a configuration always use collect2, set USE_COLLECT2 to ld.
  172.   ld: collect2
  173.       rm -f ld
  174. !     ln collect2 ld
  175.   
  176.   collect2 : collect2.o version.o $(LIBDEPS)
  177.   # Don't try modifying collect2 (aka ld) in place--it might be linking this.
  178. --- 983,989 ----
  179.   # To make a configuration always use collect2, set USE_COLLECT2 to ld.
  180.   ld: collect2
  181.       rm -f ld
  182. !     $(HARDLINK) collect2 ld
  183.   
  184.   collect2 : collect2.o version.o $(LIBDEPS)
  185.   # Don't try modifying collect2 (aka ld) in place--it might be linking this.
  186. ***************
  187. *** 1490,1496 ****
  188.   # Making the preprocessor
  189.   cpp: cccp
  190.       -rm -f cpp
  191. !     ln cccp cpp
  192.   cccp: cccp.o cexp.o version.o $(LIBDEPS)
  193.       $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o cccp cccp.o cexp.o version.o $(LIBS)
  194.   cexp.o: $(srcdir)/cexp.c $(CONFIG_H)
  195. --- 1498,1504 ----
  196.   # Making the preprocessor
  197.   cpp: cccp
  198.       -rm -f cpp
  199. !     $(HARDLINK) cccp cpp
  200.   cccp: cccp.o cexp.o version.o $(LIBDEPS)
  201.       $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o cccp cccp.o cexp.o version.o $(LIBS)
  202.   cexp.o: $(srcdir)/cexp.c $(CONFIG_H)
  203. ***************
  204. *** 1650,1656 ****
  205.       cd objc; \
  206.       $(MAKE) -f $${srcdir1}/objc/Makefile copy-headers \
  207.       srcdir=$${srcdir1} tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \
  208. !     GCC_FOR_TARGET="$${thisdir1}/xgcc -B$${thisdir1}/" \
  209.       GCC_CFLAGS="$(GCC_CFLAGS)" incinstalldir=$${thisdir1}/include
  210.       touch objc-headers
  211.   
  212. --- 1658,1664 ----
  213.       cd objc; \
  214.       $(MAKE) -f $${srcdir1}/objc/Makefile copy-headers \
  215.       srcdir=$${srcdir1} tooldir=$(tooldir) AR="$(AR)" AR_FLAGS="$(AR_FLAGS)" \
  216. !     GCC_FOR_TARGET="$${thisdir1}/$(XGCC) -B$${thisdir1}/" \
  217.       GCC_CFLAGS="$(GCC_CFLAGS)" incinstalldir=$${thisdir1}/include
  218.       touch objc-headers
  219.   
  220. ***************
  221. *** 1831,1836 ****
  222. --- 1839,1845 ----
  223.       -rm -f Makefile *.oaux
  224.       -rm -fr stage1 stage2 stage3 stage4
  225.       -rm -f */stage1 */stage2 */stage3 */stage4 */include
  226. +     -rm -f cp-parse.output
  227.       -rm -f objc-parse.output
  228.       -rm -f c-parse.output
  229.   
  230. ***************
  231. *** 1954,1960 ****
  232.         rm -f $(bindir)/gcc; \
  233.         $(INSTALL_PROGRAM) xgcc $(bindir)/gcc; \
  234.         rm -f $(bindir)/$(target)-gcc-1; \
  235. !       ln $(bindir)/gcc $(bindir)/$(target)-gcc-1; \
  236.         mv $(bindir)/$(target)-gcc-1 $(bindir)/$(target)-gcc; \
  237.       fi
  238.   # Install protoize if it was compiled.
  239. --- 1963,1969 ----
  240.         rm -f $(bindir)/gcc; \
  241.         $(INSTALL_PROGRAM) xgcc $(bindir)/gcc; \
  242.         rm -f $(bindir)/$(target)-gcc-1; \
  243. !       $(HARDLINK) $(bindir)/gcc $(bindir)/$(target)-gcc-1; \
  244.         mv $(bindir)/$(target)-gcc-1 $(bindir)/$(target)-gcc; \
  245.       fi
  246.   # Install protoize if it was compiled.
  247. ***************
  248. *** 2030,2036 ****
  249.           dest=`ls -ld $(libsubdir)/include/$$i | sed -n 's/.*-> //p'`; \
  250.           if expr "$$dest" : "$$dir.*" > /dev/null; then \
  251.             rm -f $(libsubdir)/include/$$i; \
  252. !           ln -s `echo $$i | sed "s|/[^/]*|/..|g" | sed 's|/..$$||'``echo "$$dest" | sed "s|$$dir||"` $(libsubdir)/include/$$i; \
  253.           fi; \
  254.         done; \
  255.       fi
  256. --- 2039,2045 ----
  257.           dest=`ls -ld $(libsubdir)/include/$$i | sed -n 's/.*-> //p'`; \
  258.           if expr "$$dest" : "$$dir.*" > /dev/null; then \
  259.             rm -f $(libsubdir)/include/$$i; \
  260. !           $(HARDLINK) -s `echo $$i | sed "s|/[^/]*|/..|g" | sed 's|/..$$||'``echo "$$dest" | sed "s|$$dir||"` $(libsubdir)/include/$$i; \
  261.           fi; \
  262.         done; \
  263.       fi
  264. ***************
  265. *** 2053,2058 ****
  266. --- 2062,2071 ----
  267.   install-headers-cpio: stmp-headers $(STMP_FIXPROTO) install-include-dir
  268.       (cd include; find . -print) | (cd include; cpio -pdum $(libsubdir)/include)
  269.   
  270. + # Install the include directory using simple recursive copy.
  271. + install-headers-cp: stmp-headers install-include-dir
  272. +     cd include; cp -r . $(libsubdir)/include
  273.   # Put assert.h where it won't override GNU libc's assert.h.
  274.   # It goes in a dir that is searched after GNU libc's headers;
  275.   # thus, the following conditionals are no longer needed.
  276. ***************
  277. *** 2142,2148 ****
  278.       mkdir tmp/ginclude
  279.       mkdir tmp/objc
  280.       for file in *[0-9a-zA-Z+]; do \
  281. !       ln $$file tmp > /dev/null 2>&1 || cp $$file tmp; \
  282.       done
  283.       cd config; \
  284.       for file in *[0-9a-zA-Z+]; do \
  285. --- 2155,2161 ----
  286.       mkdir tmp/ginclude
  287.       mkdir tmp/objc
  288.       for file in *[0-9a-zA-Z+]; do \
  289. !       $(HARDLINK) $$file tmp > /dev/null 2>&1 || cp $$file tmp; \
  290.       done
  291.       cd config; \
  292.       for file in *[0-9a-zA-Z+]; do \
  293. ***************
  294. *** 2150,2173 ****
  295.           mkdir ../tmp/config/$$file; \
  296.           cd $$file; \
  297.           for subfile in *[0-9a-zA-Z+]; do \
  298. !           ln $$subfile ../../tmp/config/$$file >/dev/null 2>&1 \
  299.             || cp $$subfile ../../tmp/config/$$file; \
  300.           done; \
  301.           cd ..; \
  302.         else \
  303. !         ln $$file ../tmp/config >/dev/null 2>&1 \
  304.           || cp $$file ../tmp/config; \
  305.         fi; \
  306.       done
  307.       cd ginclude; \
  308.       for file in *[0-9a-zA-Z+]; do \
  309. !       ln $$file ../tmp/ginclude >/dev/null 2>&1 || cp $$file ../tmp/ginclude; \
  310.       done
  311.       cd objc; \
  312.       for file in *[0-9a-zA-Z+]; do \
  313. !       ln $$file ../tmp/objc >/dev/null 2>&1 || cp $$file ../tmp/objc; \
  314.       done
  315. !     ln .gdbinit tmp
  316.   
  317.   # Finish making `distdir', after the languages have done their thing.
  318.   distdir-finish:
  319. --- 2163,2186 ----
  320.           mkdir ../tmp/config/$$file; \
  321.           cd $$file; \
  322.           for subfile in *[0-9a-zA-Z+]; do \
  323. !           $(HARDLINK) $$subfile ../../tmp/config/$$file >/dev/null 2>&1 \
  324.             || cp $$subfile ../../tmp/config/$$file; \
  325.           done; \
  326.           cd ..; \
  327.         else \
  328. !         $(HARDLINK) $$file ../tmp/config >/dev/null 2>&1 \
  329.           || cp $$file ../tmp/config; \
  330.         fi; \
  331.       done
  332.       cd ginclude; \
  333.       for file in *[0-9a-zA-Z+]; do \
  334. !       $(HARDLINK) $$file ../tmp/ginclude >/dev/null 2>&1 || cp $$file ../tmp/ginclude; \
  335.       done
  336.       cd objc; \
  337.       for file in *[0-9a-zA-Z+]; do \
  338. !       $(HARDLINK) $$file ../tmp/objc >/dev/null 2>&1 || cp $$file ../tmp/objc; \
  339.       done
  340. !     $(HARDLINK) .gdbinit tmp
  341.   
  342.   # Finish making `distdir', after the languages have done their thing.
  343.   distdir-finish:
  344. ***************
  345. *** 2195,2211 ****
  346.   # in the intended test directory to make it a suitable test directory.
  347.   # THIS IS OBSOLETE; use the -srcdir operand in configure instead. 
  348.   maketest:
  349. !     ln -s $(DIR)/*.[chy] .
  350. !     ln -s $(DIR)/configure .
  351. !     ln -s $(DIR)/*.def .
  352.       -rm -f =*
  353. !     ln -s $(DIR)/.gdbinit .
  354. !     ln -s $(DIR)/$(FIXINCLUDES) .
  355. !     -ln -s $(DIR)/bison.simple .
  356. !     ln -s $(DIR)/config .
  357. !     ln -s $(DIR)/move-if-change .
  358.   # The then and else were swapped to avoid a problem on Ultrix.
  359. !     if [ ! -f Makefile ] ; then ln -s $(DIR)/Makefile .; else false; fi
  360.       -rm tm.h aux-output.c config.h md
  361.       make clean
  362.   # You must then run config to set up for compilation.
  363. --- 2208,2224 ----
  364.   # in the intended test directory to make it a suitable test directory.
  365.   # THIS IS OBSOLETE; use the -srcdir operand in configure instead. 
  366.   maketest:
  367. !     $(SYMLINK) $(DIR)/*.[chy] .
  368. !     $(SYMLINK) $(DIR)/configure .
  369. !     $(SYMLINK) $(DIR)/*.def .
  370.       -rm -f =*
  371. !     $(SYMLINK) $(DIR)/.gdbinit .
  372. !     $(SYMLINK) $(DIR)/$(FIXINCLUDES) .
  373. !     -$(SYMLINK) $(DIR)/bison.simple .
  374. !     $(SYMLINK) $(DIR)/config .
  375. !     $(SYMLINK) $(DIR)/move-if-change .
  376.   # The then and else were swapped to avoid a problem on Ultrix.
  377. !     if [ ! -f Makefile ] ; then $(SYMLINK) $(DIR)/Makefile .; else false; fi
  378.       -rm tm.h aux-output.c config.h md
  379.       make clean
  380.   # You must then run config to set up for compilation.
  381. ***************
  382. *** 2221,2237 ****
  383.   # To prevent `make install' from compiling alloca.o and then relinking cc1
  384.   # because alloca.o is newer, we permit these recursive makes to compile
  385.   # alloca.o.  Then cc1 is newer, so it won't have to be relinked.
  386. !     $(MAKE) CC="stage1/xgcc -Bstage1/" CFLAGS="$(BOOT_CFLAGS)" LDFLAGS="$(BOOT_LDFLAGS)" libdir=$(libdir) LANGUAGES="$(LANGUAGES)"
  387.       $(MAKE) stage2
  388. !     $(MAKE) CC="stage2/xgcc -Bstage2/" CFLAGS="$(BOOT_CFLAGS)" LDFLAGS="$(BOOT_LDFLAGS)" libdir=$(libdir) LANGUAGES="$(LANGUAGES)"
  389.   
  390.   bootstrap2: force
  391. !     $(MAKE) CC="stage1/xgcc -Bstage1/" CFLAGS="$(BOOT_CFLAGS)" LDFLAGS="$(BOOT_LDFLAGS)" libdir=$(libdir) LANGUAGES="$(LANGUAGES)"
  392.       $(MAKE) stage2
  393. !     $(MAKE) CC="stage2/xgcc -Bstage2/" CFLAGS="$(BOOT_CFLAGS)" LDFLAGS="$(BOOT_LDFLAGS)" libdir=$(libdir) LANGUAGES="$(LANGUAGES)"
  394.   
  395.   bootstrap3: force
  396. !     $(MAKE) CC="stage2/xgcc -Bstage2/" CFLAGS="$(BOOT_CFLAGS)" LDFLAGS="$(BOOT_LDFLAGS)" libdir=$(libdir) LANGUAGES="$(LANGUAGES)"
  397.   
  398.   # Compare the object files in the current directory with those in the
  399.   # stage2 directory.
  400. --- 2234,2250 ----
  401.   # To prevent `make install' from compiling alloca.o and then relinking cc1
  402.   # because alloca.o is newer, we permit these recursive makes to compile
  403.   # alloca.o.  Then cc1 is newer, so it won't have to be relinked.
  404. !     $(MAKE) CC="stage1/$(XGCC) -Bstage1/" CFLAGS="$(BOOT_CFLAGS)" LDFLAGS="$(BOOT_LDFLAGS)" libdir=$(libdir) LANGUAGES="$(LANGUAGES)"
  405.       $(MAKE) stage2
  406. !     $(MAKE) CC="stage2/$(XGCC) -Bstage2/" CFLAGS="$(BOOT_CFLAGS)" LDFLAGS="$(BOOT_LDFLAGS)" libdir=$(libdir) LANGUAGES="$(LANGUAGES)"
  407.   
  408.   bootstrap2: force
  409. !     $(MAKE) CC="stage1/$(XGCC) -Bstage1/" CFLAGS="$(BOOT_CFLAGS)" LDFLAGS="$(BOOT_LDFLAGS)" libdir=$(libdir) LANGUAGES="$(LANGUAGES)"
  410.       $(MAKE) stage2
  411. !     $(MAKE) CC="stage2/$(XGCC) -Bstage2/" CFLAGS="$(BOOT_CFLAGS)" LDFLAGS="$(BOOT_LDFLAGS)" libdir=$(libdir) LANGUAGES="$(LANGUAGES)"
  412.   
  413.   bootstrap3: force
  414. !     $(MAKE) CC="stage2/$(XGCC) -Bstage2/" CFLAGS="$(BOOT_CFLAGS)" LDFLAGS="$(BOOT_LDFLAGS)" libdir=$(libdir) LANGUAGES="$(LANGUAGES)"
  415.   
  416.   # Compare the object files in the current directory with those in the
  417.   # stage2 directory.
  418. ***************
  419. *** 2306,2312 ****
  420.       -if [ -d stage1 ] ; then true ; else mkdir stage1 ; fi
  421.       -for dir in . $(SUBDIRS) ; \
  422.        do \
  423. !        if [ -d stage1/$$dir ] ; then true ; else mkdir stage1/$$dir ; fi ; \
  424.        done
  425.       -mv $(STAGESTUFF) stage1
  426.       -rm -f stage1/libgcc.a
  427. --- 2319,2325 ----
  428.       -if [ -d stage1 ] ; then true ; else mkdir stage1 ; fi
  429.       -for dir in . $(SUBDIRS) ; \
  430.        do \
  431. !        if [ -d stage1/$$dir ] ; then true ; else mkdir stage1/$$dir ; fi; \
  432.        done
  433.       -mv $(STAGESTUFF) stage1
  434.       -rm -f stage1/libgcc.a
  435. ***************
  436. *** 2318,2324 ****
  437.       -if [ -d stage2 ] ; then true ; else mkdir stage2 ; fi
  438.       -for dir in . $(SUBDIRS) ; \
  439.        do \
  440. !        if [ -d stage2/$$dir ] ; then true ; else mkdir stage2/$$dir ; fi ; \
  441.        done
  442.       -mv $(STAGESTUFF) stage2
  443.       -rm -f stage2/libgcc.a
  444. --- 2331,2337 ----
  445.       -if [ -d stage2 ] ; then true ; else mkdir stage2 ; fi
  446.       -for dir in . $(SUBDIRS) ; \
  447.        do \
  448. !        if [ -d stage2/$$dir ] ; then true ; else mkdir stage2/$$dir ; fi; \
  449.        done
  450.       -mv $(STAGESTUFF) stage2
  451.       -rm -f stage2/libgcc.a
  452. ***************
  453. *** 2330,2336 ****
  454.       -if [ -d stage3 ] ; then true ; else mkdir stage3 ; fi
  455.       -for dir in . $(SUBDIRS) ; \
  456.        do \
  457. !        if [ -d stage3/$$dir ] ; then true ; else mkdir stage3/$$dir ; fi ; \
  458.        done
  459.       -mv $(STAGESTUFF) stage3
  460.       -rm -f stage3/libgcc.a
  461. --- 2343,2349 ----
  462.       -if [ -d stage3 ] ; then true ; else mkdir stage3 ; fi
  463.       -for dir in . $(SUBDIRS) ; \
  464.        do \
  465. !        if [ -d stage3/$$dir ] ; then true ; else mkdir stage3/$$dir ; fi; \
  466.        done
  467.       -mv $(STAGESTUFF) stage3
  468.       -rm -f stage3/libgcc.a
  469. ***************
  470. *** 2342,2348 ****
  471.       -if [ -d stage4 ] ; then true ; else mkdir stage4 ; fi
  472.       -for dir in . $(SUBDIRS) ; \
  473.        do \
  474. !        if [ -d stage4/$$dir ] ; then true ; else mkdir stage4/$$dir ; fi ; \
  475.        done
  476.       -mv $(STAGESTUFF) stage4
  477.       -rm -f stage4/libgcc.a
  478. --- 2355,2361 ----
  479.       -if [ -d stage4 ] ; then true ; else mkdir stage4 ; fi
  480.       -for dir in . $(SUBDIRS) ; \
  481.        do \
  482. !        if [ -d stage4/$$dir ] ; then true ; else mkdir stage4/$$dir ; fi; \
  483.        done
  484.       -mv $(STAGESTUFF) stage4
  485.       -rm -f stage4/libgcc.a
  486. diff -rc --new-file gcc-2.6.3/Product-Info /gnu/src/amiga/gcc-2.6.3/Product-Info
  487. *** gcc-2.6.3/Product-Info    Thu Jan  1 00:00:00 1970
  488. --- /gnu/src/amiga/gcc-2.6.3/Product-Info    Sat Dec  3 15:01:35 1994
  489. ***************
  490. *** 0 ****
  491. --- 1,22 ----
  492. + .name
  493. + gcc
  494. + .fullname
  495. + GNU C/C++/Objective-C compiler
  496. + .type
  497. + Compiler
  498. + .short
  499. + GNU C/C++/Obj-C compilers.
  500. + .description
  501. + The GNU C, C++, and Objective C compilers.  Includes all support for
  502. + compiling C, C++ and Objective C, including a run-time library for
  503. + Objective C.
  504. + .version
  505. + 2.6.2
  506. + .author
  507. + Free Software Foundation
  508. + .requirements
  509. + Amiga binaries require ixemul.library.
  510. + .distribution
  511. + GNU Public License
  512. + .described-by
  513. + Fred Fish (fnf@amigalib.com)
  514. diff -rc --new-file gcc-2.6.3/amigasup.c /gnu/src/amiga/gcc-2.6.3/amigasup.c
  515. *** gcc-2.6.3/amigasup.c    Thu Jan  1 00:00:00 1970
  516. --- /gnu/src/amiga/gcc-2.6.3/amigasup.c    Thu Dec 22 20:00:05 1994
  517. ***************
  518. *** 0 ****
  519. --- 1,165 ----
  520. + /* Supplimentary host support for AmigaDOS.  Used only when host is AmigaDOS.
  521. +    Copyright (C) 1994 Free Software Foundation, Inc.
  522. + This file is part of GNU CC.
  523. + GNU CC is free software; you can redistribute it and/or modify
  524. + it under the terms of the GNU General Public License as published by
  525. + the Free Software Foundation; either version 2, or (at your option)
  526. + any later version.
  527. + GNU CC is distributed in the hope that it will be useful,
  528. + but WITHOUT ANY WARRANTY; without even the implied warranty of
  529. + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  530. + GNU General Public License for more details.
  531. + You should have received a copy of the GNU General Public License
  532. + along with GNU CC; see the file COPYING.  If not, write to
  533. + the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  534. + This code segment will interface between the startup code and the user's
  535. + main(), adjusting the stack if necessary. Two entry points are provided,
  536. + main(), and stkexit(). Programs should be compiled using
  537. +     gcc -Dmain=stkmain -Dexit=stkexit
  538. + and linked with this module.  Calling _exit is not provided for, but should
  539. + be trivial to implement.
  540. + The minimum acceptable stack size is obtained from the environment variable
  541. + GCC_STACK (change the #define ENVNAME to customize). If this variable is
  542. + not defined, the default is 50000 bytes (change the #define SIZE to
  543. + customize). If the current stack size is less than the minimum acceptable,
  544. + then a new stack is allocated, and appropriate actions are taken to ensure
  545. + that the original stack is restored before exit.
  546. + To link with my stderrfix hack, you will need to compile it using
  547. +        gcc -Dmain=stkmain -c stderrfix.c
  548. + and compile everything else (apart from this file) using
  549. +        gcc -Dmain=mymain -Dexit=stkexit
  550. + (I have not tested this, but there is no reason why it shouldn't work.)
  551. + AUTHOR:     Kriton Kyrimis (kyrimis@theseas.ntua.gr)
  552. + KNOWN BUGS: Calling stkexit(0x8000000) will cause the program to exit
  553. +             with the wrong exit code (0).
  554. + DISCLAIMER: Use this code at your own risk.
  555. + */
  556. + /* Putting this in version.c seems to screw up configure, which attempts to
  557. +    extract the version number with a sed command that doesn't take this
  558. +    string into account. -fnf */
  559. + char VERSION[]="$VER:gcc 2.6.3 last compiled on "__DATE__;
  560. + #include <stdlib.h>
  561. + #include <setjmp.h>
  562. + #include <dos/dosextens.h>
  563. + #include <proto/exec.h>
  564. + #include <proto/dos.h>
  565. + #define SIZE 50000
  566. + #define ENVNAME "GCCSTACK"
  567. + #define MAGIC 0x80000000
  568. + void stkexit(int);
  569. + static jmp_buf jmp;
  570. + static int swapped = 0;
  571. + main(int argc, char **argv)
  572. + {
  573. +   /* Declare all variables as static, so that they are available no matter
  574. +      which stack is active */
  575. +   static struct Process *p;
  576. +   static struct CommandLineInterface *c;
  577. +   static int stacksize, prefsize, status;
  578. +   static struct StackSwapStruct stack;
  579. +   static char *envsize, *newstack;
  580. +   /* The next two variables point to information in the old stack. Declare
  581. +      them volatile, to avoid unexpected surprises introduced by the optimizer.
  582. +      (This is apparently unnecessary under 2.6.1, but you never know.) */
  583. +   static volatile int myargc;
  584. +   static volatile char **myargv;
  585. +   /* Determine original stack size */
  586. +   p = (struct Process *)FindTask(NULL);
  587. +   c = BADDR(p->pr_CLI);
  588. +   if (c) {
  589. +     stacksize = c->cli_DefaultStack * sizeof(LONG);
  590. +   }else{
  591. +     stacksize = p->pr_StackSize;
  592. +   }
  593. +   /* Determine preferred stack size */
  594. +   envsize = getenv(ENVNAME);
  595. +   if (envsize) {
  596. +     prefsize = atoi(envsize);
  597. +   }else{
  598. +     prefsize = SIZE;
  599. +   }
  600. +   myargc = argc;
  601. +   myargv = argv;
  602. +   if (prefsize > stacksize) {
  603. +     /* Round size to next long word */
  604. +     prefsize = ((prefsize + (sizeof(LONG) - 1)) / sizeof(LONG)) * sizeof(LONG);
  605. +     /* Allocate new stack */
  606. +     newstack = malloc(prefsize);
  607. +     if (!newstack) {
  608. +       Printf("Can't allocate new stack!\n");
  609. +       exit(RETURN_FAIL);
  610. +     }
  611. +     /* Build new stack structure */
  612. +     stack.stk_Lower = newstack;
  613. +     stack.stk_Upper = (ULONG)newstack + prefsize;
  614. +     /* Determine the address the stackpointer has to go:
  615. +      * Point to the last longword of the stackframe and subtract
  616. +      * the arguments of StackSwap() since the compiler might
  617. +      * try to adjust the stackpointer after calling it :-(.
  618. +      */
  619. +     stack.stk_Pointer = (APTR)(stack.stk_Upper-2*sizeof(long));
  620. +     /* Switch to new stack */
  621. +     StackSwap(&stack);
  622. +     swapped = 1;
  623. +     if (c) {
  624. +       c->cli_DefaultStack = prefsize / sizeof(LONG);
  625. +     }
  626. +     /* Save the current position, so that on exit we may return to the exact
  627. +        stack depth where we switched stacks, and switch them back again.
  628. +        Programs should invoke stkexit() rather than exit(), or return from
  629. +        stkmain(). Status contains the exit status given to stkexit().*/
  630. +     if ((status = setjmp(jmp)) != 0) {
  631. +       /* Switch back to old stack before exiting */
  632. +       StackSwap(&stack);
  633. +       if (c) {
  634. +     c->cli_DefaultStack = stacksize / sizeof(LONG);
  635. +       }
  636. +       free(newstack);
  637. +       if (status == MAGIC) {    /* If real exit status is 0, stkexit converts */
  638. +         status = 0;        /* it to MAGIC, to avoid confusing setjmp */
  639. +       }
  640. +       exit(status);
  641. +     }
  642. +     status = stkmain(myargc, myargv);
  643. +     stkexit(status);
  644. +   }else{
  645. +     return stkmain(myargc, myargv);
  646. +   }
  647. + }
  648. + void
  649. + stkexit(int status)
  650. + {
  651. +   if (!swapped) {
  652. +     exit (status);
  653. +   }else{
  654. +     if (status == 0) {    /* The world will end iff we pass 0 as the value */
  655. +       status = MAGIC;    /* for longjmp */
  656. +     }
  657. +     longjmp(jmp, status);
  658. +   }
  659. + }
  660. diff -rc --new-file gcc-2.6.3/calls.c /gnu/src/amiga/gcc-2.6.3/calls.c
  661. *** gcc-2.6.3/calls.c    Tue Nov 15 00:18:34 1994
  662. --- /gnu/src/amiga/gcc-2.6.3/calls.c    Thu Dec 22 19:48:16 1994
  663. ***************
  664. *** 2177,2182 ****
  665. --- 2177,2190 ----
  666.   
  667.     argvec = (struct arg *) alloca (nargs * sizeof (struct arg));
  668.   
  669. + #if defined (__amigados__)
  670. + /* how would you do this RIGHT ?? fake a DECL node? dunno... */
  671. + #ifdef ENCODE_SECTION_INFO
  672. +   /* mark it as a function (to be in the text section that is) */
  673. +   SYMBOL_REF_FLAG (fun) = 1;
  674. + #endif
  675. + #endif
  676.     INIT_CUMULATIVE_ARGS (args_so_far, NULL_TREE, fun);
  677.   
  678.     args_size.constant = 0;
  679. ***************
  680. *** 2482,2487 ****
  681. --- 2490,2503 ----
  682.        library functions shouldn't have many args.  */
  683.   
  684.     argvec = (struct arg *) alloca ((nargs + 1) * sizeof (struct arg));
  685. + #if defined (__amigados__)
  686. + /* how would you do this RIGHT ?? fake a DECL node? dunno... */
  687. + #ifdef ENCODE_SECTION_INFO
  688. +   /* mark it as a function (to be in the text section that is) */
  689. +   SYMBOL_REF_FLAG (fun) = 1;
  690. + #endif
  691. + #endif
  692.   
  693.     INIT_CUMULATIVE_ARGS (args_so_far, NULL_TREE, fun);
  694.   
  695. diff -rc --new-file gcc-2.6.3/cccp.c /gnu/src/amiga/gcc-2.6.3/cccp.c
  696. *** gcc-2.6.3/cccp.c    Fri Nov 18 23:54:36 1994
  697. --- /gnu/src/amiga/gcc-2.6.3/cccp.c    Sat Dec  3 15:01:49 1994
  698. ***************
  699. *** 39,44 ****
  700. --- 39,60 ----
  701.   #include "config.h"
  702.   #endif /* not EMACS */
  703.   
  704. + #ifdef amigados
  705. + /* Since cpp uses alloca to store all its read files, this is quite deadly
  706. +    on a system with non-automatic stackgrowth like amigados, so we better
  707. +    turn it off now.  Normally alloca is #defined to __builtin_alloca, so
  708. +    undefining it causes an external alloca to be used.
  709. +    Note that it's not wise to generally inhibit __builtin_alloca, since
  710. +    using the generic emulator entitels a serious (!) speed penalty, and
  711. +    it's bad enough that we have to live with it in cccp, don't make cc1
  712. +    unbearably slow as well... */
  713. + #undef alloca
  714. + static int amigados_abs_filename ();
  715. + #endif
  716.   #ifndef STANDARD_INCLUDE_DIR
  717.   #define STANDARD_INCLUDE_DIR "/usr/include"
  718.   #endif
  719. ***************
  720. *** 365,370 ****
  721. --- 381,393 ----
  722.   
  723.   static int max_include_len;
  724.   
  725. + #ifdef amigados
  726. + /* Phil.B: 03-Oct-94 Flag indicating process priority */
  727. + static int amiga_priority = -1;
  728. + #include <proto/exec.h>
  729. + struct Task *amiga_task;
  730. + #endif /* amigados */
  731.   /* Nonzero means turn NOTREACHED into #pragma NOTREACHED etc */
  732.   
  733.   static int for_lint = 0;
  734. ***************
  735. *** 1131,1136 ****
  736. --- 1154,1168 ----
  737.     }
  738.   #endif /* RLIMIT_STACK defined */
  739.   
  740. + #ifdef amigados
  741. +   {
  742. +     char *envstr;
  743. +     if (envstr = getenv("GCCPRIORITY"))
  744. +       if (((i = atoi(envstr)) > -20) && (i < 20)) amiga_priority = i;
  745. +   }
  746. + #endif /* amigados */
  747.   #ifdef SIGPIPE
  748.     signal (SIGPIPE, pipe_closed);
  749.   #endif
  750. ***************
  751. *** 1337,1342 ****
  752. --- 1369,1384 ----
  753.       break;
  754.   
  755.         case 'p':
  756. + #ifdef amigados
  757. +     if (!strcmp (argv[i], "-priority")) {
  758. +       if (i + 1 == argc)
  759. +         fatal ("Priority missing after -P option");
  760. +           if ((amiga_priority = atoi(argv[++i])) < -25)
  761. +         amiga_priority = -25;
  762. +           else if (amiga_priority > 25)
  763. +         amiga_priority = 25;
  764. +         } else
  765. + #endif /* amigados */
  766.       if (!strcmp (argv[i], "-pedantic"))
  767.         pedantic = 1;
  768.       else if (!strcmp (argv[i], "-pedantic-errors")) {
  769. ***************
  770. *** 1626,1631 ****
  771. --- 1668,1680 ----
  772.       }
  773.     }
  774.   
  775. + #ifdef amigados
  776. +   Forbid();
  777. +   amiga_task = FindTask(NULL);
  778. +   Permit();
  779. +   SetTaskPri(amiga_task, amiga_priority);
  780. + #endif /* amigados */
  781.     /* Add dirs from CPATH after dirs from -I.  */
  782.     /* There seems to be confusion about what CPATH should do,
  783.        so for the moment it is not documented.  */
  784. ***************
  785. *** 1988,1993 ****
  786. --- 2037,2045 ----
  787.         int len;
  788.   
  789.         /* Discard all directory prefixes from filename.  */
  790. + #ifdef FILE_NAME_NONDIRECTORY
  791. +       q = FILE_NAME_NONDIRECTORY (in_fname);
  792. + #else
  793.         if ((q = rindex (in_fname, '/')) != NULL
  794.   #ifdef DIR_SEPARATOR
  795.         && (q = rindex (in_fname, DIR_SEPARATOR)) != NULL
  796. ***************
  797. *** 1996,2002 ****
  798.       ++q;
  799.         else
  800.       q = in_fname;
  801.         /* Copy remainder to mungable area.  */
  802.         p = (char *) alloca (strlen(q) + 8);
  803.         strcpy (p, q);
  804. --- 2048,2054 ----
  805.       ++q;
  806.         else
  807.       q = in_fname;
  808. ! #endif
  809.         /* Copy remainder to mungable area.  */
  810.         p = (char *) alloca (strlen(q) + 8);
  811.         strcpy (p, q);
  812. ***************
  813. *** 3794,3800 ****
  814. --- 3846,3857 ----
  815.   
  816.         if (!no_output && already_output == 0
  817.         && (kt->pass_thru
  818. + /* Phil.B 27-Mar-93 not quiet sure to keep this old fix */      
  819. + #ifdef maybe_amigados
  820. +           || ((kt->type == T_DEFINE || kt->type == T_UNDEF)
  821. + #else
  822.             || (kt->type == T_DEFINE
  823. + #endif /* amigados */
  824.             && (dump_macros == dump_names
  825.                 || dump_macros == dump_definitions)))) {
  826.           int len;
  827. ***************
  828. *** 4136,4141 ****
  829. --- 4193,4210 ----
  830.           search_start = dsp;
  831.   #ifndef VMS
  832.           ep = rindex (nam, '/');
  833. + #ifdef amigados
  834. +         /* amigados uses unix-style directory-filename separation, but
  835. +            has VMS-style logicals as well */
  836. +         if (ep == NULL) 
  837. +           {
  838. +         ep = rindex (nam, ':');
  839. +         /* a ':' is part of the directory name, a '/' isn't ! */
  840. +             if (ep != NULL) ep++;
  841. +           }
  842. + #endif /* amigados */
  843.   #else                /* VMS */
  844.           ep = rindex (nam, ']');
  845.           if (ep == NULL) ep = rindex (nam, '>');
  846. ***************
  847. *** 4237,4243 ****
  848. --- 4306,4316 ----
  849.   
  850.     /* If specified file name is absolute, just open it.  */
  851.   
  852. + #ifndef amigados
  853.     if (*fbeg == '/') {
  854. + #else
  855. +   if (amigados_abs_filename (fbeg, flen)) {
  856. + #endif
  857.       strncpy (fname, fbeg, flen);
  858.       fname[flen] = 0;
  859.       if (redundant_include_p (fname))
  860. ***************
  861. *** 4260,4265 ****
  862. --- 4333,4342 ----
  863.       if (searchptr->fname[0] == 0)
  864.         continue;
  865.       strcpy (fname, searchptr->fname);
  866. + #ifdef amigados
  867. +     if (fname[strlen (fname) - 1] != ':')
  868. + #endif
  869.       strcat (fname, "/");
  870.       fname[strlen (fname) + flen] = 0;
  871.         } else {
  872. ***************
  873. *** 9977,9979 ****
  874. --- 10054,10080 ----
  875.     return dst;
  876.   }
  877.   #endif /* VMS */
  878. + #ifdef amigados
  879. + /* This function returns whether the LEN characters long filename FNAME 
  880. +    is an absolute path specification. */
  881. + static int
  882. + amigados_abs_filename (fname, len)
  883. +      char *fname;
  884. +      int len;
  885. + {
  886. +   /* we're using ixemul.library, which treats `/foo' as `foo:', so 
  887. +      fname[0] is to be considered absolute as well */
  888. +   if (fname[0] == '/')
  889. +     return 1;
  890. +   /* else do an index() on fname, but one which is limited to len characters */
  891. +   while (*fname && *fname != ':' && len) 
  892. +     fname++, len--;
  893. +   return *fname == ':';
  894. + }
  895. + #endif /* amigados */
  896. diff -rc --new-file gcc-2.6.3/config/m68k/amigados.c /gnu/src/amiga/gcc-2.6.3/config/m68k/amigados.c
  897. *** gcc-2.6.3/config/m68k/amigados.c    Thu Jan  1 00:00:00 1970
  898. --- /gnu/src/amiga/gcc-2.6.3/config/m68k/amigados.c    Sat Dec  3 15:01:51 1994
  899. ***************
  900. *** 0 ****
  901. --- 1,158 ----
  902. + /* Definitions of target machine for GNU compiler.  amiga 68000/68020 version.
  903. +    Copyright (C) 1992 Free Software Foundation, Inc.
  904. +    Contributed by Markus M. Wild (wild@amiga.physik.unizh.ch).
  905. + This file is part of GNU CC.
  906. + GNU CC is free software; you can redistribute it and/or modify
  907. + it under the terms of the GNU General Public License as published by
  908. + the Free Software Foundation; either version 2, or (at your option)
  909. + any later version.
  910. + GNU CC is distributed in the hope that it will be useful,
  911. + but WITHOUT ANY WARRANTY; without even the implied warranty of
  912. + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  913. + GNU General Public License for more details.
  914. + You should have received a copy of the GNU General Public License
  915. + along with GNU CC; see the file COPYING.  If not, write to
  916. + the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  917. + #include "m68k/m68k.c"
  918. + /* Does operand (which is a symbolic_operand) live in text space? If
  919. +    so SYMBOL_REF_FLAG, which is set by ENCODE_SECTION_INFO, will be true.
  920. +    This function is used in base relative code generation. */
  921. + int
  922. + read_only_operand (operand)
  923. +      rtx operand;
  924. + {
  925. +   if (GET_CODE (operand) == CONST)
  926. +     operand = XEXP (XEXP (operand, 0), 0);
  927. +   if (GET_CODE (operand) == SYMBOL_REF)
  928. +     return SYMBOL_REF_FLAG (operand) || CONSTANT_POOL_ADDRESS_P (operand);
  929. +   return 1;
  930. + }
  931. + /* the rest of the file is to implement AmigaDOS specific keywords some day.
  932. +    The approach used so far used __attribute__ for this, but this required
  933. +    changes to c-parse.y as well as if we'd use the common keywords used
  934. +    on commercial AmigaDOS C-compilers as well. So in the future I'll probably
  935. +    switch to __saveds and __interrupt keywords as well.
  936. +    The rest of this file is currently ignored, because it's no longer
  937. +    working with the current gcc version. */
  938. + #if not_yet_working
  939. + #include "tree.h"
  940. + struct attribute {
  941. +   tree ident;
  942. +   int  saveds : 1,
  943. +        interrupt : 1;
  944. + };
  945. + static struct attribute *a_tab = 0;
  946. + static int a_index, a_size;
  947. + void
  948. + add_attr_entry (attr)
  949. +     struct attribute *attr;
  950. + {
  951. +   if (! a_tab)
  952. +     {
  953. +       a_size = 10;
  954. +       a_index = 0;
  955. +       a_tab  = (struct attribute *) xmalloc (a_size * sizeof (struct attribute));
  956. +     }
  957. +   if (a_index == a_size)
  958. +     {
  959. +       a_size <<= 1;
  960. +       a_tab = (struct attribute *) xrealloc (a_tab, a_size * sizeof (struct attribute));
  961. +     }
  962. +   a_tab[a_index++] = *attr;
  963. + }
  964. + void
  965. + attr_do_saveds (function_ident)
  966. +       tree function_ident;
  967. + {
  968. +   struct attribute attr, *a;
  969. +   int i;
  970. +   for (i = 0, a = a_tab; i < a_index; i++, a++)
  971. +     if (a->ident == function_ident)
  972. +       {
  973. +     a->saveds = 1;
  974. +     return;
  975. +       }
  976. +   /* create a new entry for this function */
  977. +   attr.ident     = function_ident;
  978. +   attr.saveds    = 1;
  979. +   attr.interrupt = 0;
  980. +   add_attr_entry (&attr);
  981. + }
  982. + void
  983. + attr_do_interrupt (function_ident)
  984. +     tree function_ident;
  985. + {
  986. +   struct attribute attr, *a;
  987. +   int i;
  988. +   for (i = 0, a = a_tab; i < a_index; i++, a++)
  989. +     if (a->ident == function_ident)
  990. +       {
  991. +     /* __interrupt implies __saveds */
  992. +     a->saveds    = 1;
  993. +     a->interrupt = 1;
  994. +     return;
  995. +       }
  996. +   /* create a new entry for this function */
  997. +   attr.ident     = function_ident;
  998. +   attr.saveds     = 1;
  999. +   attr.interrupt = 1;
  1000. +   add_attr_entry (&attr);
  1001. + }
  1002. + int
  1003. + attr_does_saveds (function_name)
  1004. +     char *function_name;
  1005. + {
  1006. +   tree ident = get_identifier (function_name);
  1007. +   struct attribute *attr;
  1008. +   int i;
  1009. +   
  1010. +   for (i = 0, attr = a_tab; i < a_index; i++, attr++)
  1011. +     if (attr->ident == ident)
  1012. +       return attr->saveds;
  1013. +   return 0;
  1014. + }
  1015. + int
  1016. + attr_does_interrupt (function_name)
  1017. +     char *function_name;
  1018. + {
  1019. +   tree ident = get_identifier (function_name);
  1020. +   struct attribute *attr;
  1021. +   int i;
  1022. +   
  1023. +   for (i = 0, attr = a_tab; i < a_index; i++, attr++)
  1024. +     if (attr->ident == ident)
  1025. +       return attr->interrupt;
  1026. +   return 0;
  1027. + }
  1028. + #endif
  1029. diff -rc --new-file gcc-2.6.3/config/m68k/amigados.h /gnu/src/amiga/gcc-2.6.3/config/m68k/amigados.h
  1030. *** gcc-2.6.3/config/m68k/amigados.h    Thu Jan  1 00:00:00 1970
  1031. --- /gnu/src/amiga/gcc-2.6.3/config/m68k/amigados.h    Sat Dec  3 15:24:45 1994
  1032. ***************
  1033. *** 0 ****
  1034. --- 1,425 ----
  1035. + /* Definitions of target machine for GNU compiler.  amiga 68000/68020 version.
  1036. +    Copyright (C) 1992 Free Software Foundation, Inc.
  1037. +    Contributed by Markus M. Wild (wild@amiga.physik.unizh.ch).
  1038. + This file is part of GNU CC.
  1039. + GNU CC is free software; you can redistribute it and/or modify
  1040. + it under the terms of the GNU General Public License as published by
  1041. + the Free Software Foundation; either version 2, or (at your option)
  1042. + any later version.
  1043. + GNU CC is distributed in the hope that it will be useful,
  1044. + but WITHOUT ANY WARRANTY; without even the implied warranty of
  1045. + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  1046. + GNU General Public License for more details.
  1047. + You should have received a copy of the GNU General Public License
  1048. + along with GNU CC; see the file COPYING.  If not, write to
  1049. + the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  1050. + #include "m68k/m68k.h"
  1051. + /* See m68k.h for bits in TARGET_DEFAULT.
  1052. +    0 means 68000, no hardware fpu (68881/68882/68040).
  1053. +    7 means 68020 (or higher) with hardware fpu.  */
  1054. + #ifndef TARGET_DEFAULT
  1055. + #define TARGET_DEFAULT 0
  1056. + #endif
  1057. + /* Define __HAVE_68881__ in preprocessor according to the -m flags.
  1058. +    This will control the use of inline 68881 insns in certain macros.
  1059. +    Also inform the program which CPU this is for.  */
  1060. + #if TARGET_DEFAULT & 02
  1061. + /* -m68881 is the default */
  1062. + #define CPP_SPEC \
  1063. + "%{!msoft-float:-D__HAVE_68881__ }\
  1064. + %{!ansi:%{m68000:-Dmc68010}%{mc68000:-Dmc68010}%{m68030:-Dmc68030}%{mc68030:-Dmc68030}%{m68040:-Dmc68040}\
  1065. + %{mc68040:-Dmc68040}%{!mc68000:%{!m68000:-Dmc68020}}}"
  1066. + #else
  1067. + /* -msoft-float is the default, assume -mc68000 as well */
  1068. + #define CPP_SPEC \
  1069. + "%{m68881:-D__HAVE_68881__ }\
  1070. + %{!ansi:%{m68020:-Dmc68020}%{mc68020:-Dmc68020}%{m68030:-Dmc68030}%{mc68030:-Dmc68030}%{m68040:-Dmc68040}\
  1071. + %{mc68040:-Dmc68040}%{!mc68020:%{!m68020:%{!mc68030:%{!m68030:%{!mc68040:%{!m68040:-Dmc68010}}}}}}}"
  1072. + /* Don't try using XFmode since we don't have appropriate runtime software
  1073. +    support.  */
  1074. + #undef LONG_DOUBLE_TYPE_SIZE
  1075. + #define LONG_DOUBLE_TYPE_SIZE 64
  1076. + #endif
  1077. + /* -m68000 requires special flags to the assembler.  */
  1078. + #if TARGET_DEFAULT & 01
  1079. + #define ASM_SPEC \
  1080. +  "%{m68000:-mc68010}%{mc68000:-mc68010}%{mc68030:-mc68030}%{m68030:-mc68030}%{mc68040:-mc68040}%{m68040:-mc68040}\
  1081. + %{!mc68000:%{!m68000:%{!mc68030:%{!m68030:%{!mc68040:%{!m68040:-mc68020}}}}}} %{msmall-code:-l}"
  1082. + #else
  1083. + #define ASM_SPEC \
  1084. +  "%{m68020:-mc68020}%{mc68020:-mc68020}%{mc68030:-mc68030}%{m68030:-mc68030}%{mc68040:-mc68040}\
  1085. + %{m68040:-mc68040}%{!mc68020:%{!m68020:%{!mc68030:%{!m68030:%{!mc68040:%{!m68040:-mc68010}}}}}} %{msmall-code:-l}"
  1086. + #endif
  1087. + /* amiga/amigados are the new "standard" defines for the Amiga, MCH_AMIGA
  1088. +  * was used before and is included for compatibility reasons */
  1089. + #define CPP_PREDEFINES "-Dmc68000 -Damiga -Damigados -DMCH_AMIGA -DAMIGA"
  1090. + /* Choose the right startup file, depending on whether we use base relative
  1091. +    code, base relative code with automatic relocation (-resident), or plain
  1092. +    crt0.o. 
  1093. +   
  1094. +    Profiling is currently only available for plain startup.
  1095. +    mcrt0.o does not (yet) exist. */
  1096. + #define STARTFILE_SPEC \
  1097. +  "%{!noixemul:%{resident:rcrt0.o%s}%{!resident:%{!fbaserel:%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}}\
  1098. + %{fbaserel:%{pg:bgcrt0.o%s}%{!pg:%{p:bmcrt0.o%s}%{!p:bcrt0.o%s}}}}}\
  1099. + %{noixemul:%{resident:libnix/nrcrt0.o%s}%{!resident:%{fbaserel:libnix/nbcrt0.o%s}%{!fbaserel:libnix/ncrt0.o%s}}}"
  1100. + #define ENDFILE_SPEC "%{noixemul:-lstubs}"
  1101. + /* Automatically search libamiga.a for AmigaDOS specific functions.  Note
  1102. +    that we first search the standard C library to resolve as much as
  1103. +    possible from there, since it has names that are duplicated in libamiga.a
  1104. +    which we *don't* want from there.  Then search the standard C library
  1105. +    again to resolve any references that libamiga.a might have generated.
  1106. +    This may only be a temporary solution since it might be better to simply
  1107. +    remove the things from libamiga.a that should be pulled in from libc.a
  1108. +    instead, which would eliminate the first reference to libc.a. */
  1109. + #define LIB_SPEC "%{!noixemul:%{!p:%{!pg:-lc -lamiga -lc}}%{p:-lc_p}%{pg:-lc_p}}%{noixemul:-lnixmain -lnix -lamiga}"
  1110. + /* if debugging, tell the linker to output amiga-hunk symbols *and* a BSD
  1111. +    compatible debug hunk (which will probably change in the future, it's not
  1112. +    tremendously useful in its current state). */
  1113. + #define LINK_SPEC "%{noixemul:-shortdata -fl libnix} %{fbaserel:%{!resident:-databss-together -fl libb}}\
  1114. + %{resident:-databss-together -datadata-reloc -fl libb} %{g:-amiga-debug-hunk}\
  1115. + %{m68020:-fl libm020} %{m68030:-fl libm020} %{m68040:-fl libm020}"
  1116. + #define CC1_SPEC "%{m68040:-mbitfield }%{mc68040:-mbitfield }%{resident:-fbaserel}%{msmall-code:-fno-function-cse} "
  1117. + #define CC1PLUS_SPEC "%{m68040:-mbitfield }%{mc68040:-mbitfield }%{resident:-fbaserel}%{msmall-code:-fno-function-cse} "
  1118. + /* Omit frame pointer at high optimization levels. (This doesn't hurt, since
  1119. +    GDB doesn't work under AmigaDOS at the moment anyway..) */
  1120. +   
  1121. + #define OPTIMIZATION_OPTIONS(OPTIMIZE) \
  1122. + {                                  \
  1123. +   if (OPTIMIZE >= 2)                         \
  1124. +     flag_omit_frame_pointer = 1;                \
  1125. + }
  1126. + /* provide a dummy entry for the small-code switch. This is currently only
  1127. +    needed by the assembler (explanations: m68k.h), but will be used by cc1
  1128. +    to output 16bit pc-relative code later. */
  1129. + #undef TARGET_SWITCHES
  1130. + #define TARGET_SWITCHES  \
  1131. +   { { "68020", 5},                \
  1132. +     { "c68020", 5},                \
  1133. +     { "68881", 2},                \
  1134. +     { "bitfield", 4},                \
  1135. +     { "68000", -5},                \
  1136. +     { "c68000", -5},                \
  1137. +     { "soft-float", -0102},            \
  1138. +     { "nobitfield", -4},            \
  1139. +     { "rtd", 8},                \
  1140. +     { "nortd", -8},                \
  1141. +     { "short", 040},                \
  1142. +     { "noshort", -040},                \
  1143. +     { "fpa", 0100},                \
  1144. +     { "nofpa", -0100},                \
  1145. +     { "sky", 0200},                \
  1146. +     { "nosky", -0200},                \
  1147. +     { "68040", 0407},                \
  1148. +     { "68030", -01400},                \
  1149. +     { "68030", 7},                \
  1150. +     { "68040-only", 01000},            \
  1151. +     { "small-code", 0 },            \
  1152. +     { "", TARGET_DEFAULT}}
  1153. + /* Every structure or union's size must be a multiple of 2 bytes.  */
  1154. + #define STRUCTURE_SIZE_BOUNDARY 16
  1155. + /* This is (almost;-)) BSD, so it wants DBX format.  */
  1156. + #define DBX_DEBUGGING_INFO
  1157. + /* Allow folding division by zero.  */
  1158. + #define REAL_INFINITY
  1159. + /* The following was hacked into final.c, to allow some notice of
  1160. +  * source line and filename to be injected into the assembly code,
  1161. +  * even if not using one of the "approved" debuggers (albaugh@agames.com).
  1162. +  */
  1163. + #if 0
  1164. + #define ASM_NOTE_SOURCE_LINE(FILE, LINE, FILENAME)\
  1165. +   fprintf(file,"*#line %d \"%s\"\n",(LINE),(FILENAME))
  1166. + #endif
  1167. + #if 0    /* This apparently is no longer necessary? */
  1168. + /* This is how to output an assembler line defining a `double' constant.  */
  1169. + #undef ASM_OUTPUT_DOUBLE
  1170. + #define ASM_OUTPUT_DOUBLE(FILE,VALUE)                    \
  1171. +   {                                    \
  1172. +     if (REAL_VALUE_ISINF (VALUE))                    \
  1173. +       fprintf (FILE, "\t.double 0r%s99e999\n", (VALUE) > 0 ? "" : "-");    \
  1174. +     else if (isnan (VALUE))                        \
  1175. +       {                                    \
  1176. +     union { double d; long l[2];} t;                \
  1177. +     t.d = (VALUE);                            \
  1178. +     fprintf (FILE, "\t.long 0x%lx\n\t.long 0x%lx\n", t.l[0], t.l[1]); \
  1179. +       }                                    \
  1180. +     else                                \
  1181. +       fprintf (FILE, "\t.double 0r%.17g\n", VALUE);            \
  1182. +   }
  1183. + /* This is how to output an assembler line defining a `float' constant.  */
  1184. + #undef ASM_OUTPUT_FLOAT
  1185. + #define ASM_OUTPUT_FLOAT(FILE,VALUE)                    \
  1186. +   {                                    \
  1187. +     if (REAL_VALUE_ISINF (VALUE))                    \
  1188. +       fprintf (FILE, "\t.single 0r%s99e999\n", (VALUE) > 0 ? "" : "-");    \
  1189. +     else if (isnan (VALUE))                        \
  1190. +       {                                    \
  1191. +     union { float f; long l;} t;                    \
  1192. +     t.f = (VALUE);                            \
  1193. +     fprintf (FILE, "\t.long 0x%lx\n", t.l);                \
  1194. +       }                                    \
  1195. +     else                                \
  1196. +       fprintf (FILE, "\t.single 0r%.9g\n", VALUE);            \
  1197. +   }
  1198. + /* This is how to output an assembler lines defining floating operands.
  1199. +    There's no way to output a NaN's fraction, so we lose it.  */
  1200. +   
  1201. + #undef ASM_OUTPUT_FLOAT_OPERAND
  1202. + #define ASM_OUTPUT_FLOAT_OPERAND(CODE,FILE,VALUE)                \
  1203. +  do {                                \
  1204. +       if (CODE == 'f')                        \
  1205. +         {                            \
  1206. +           (REAL_VALUE_ISINF ((VALUE))                        \
  1207. +            ? asm_fprintf (FILE, "%I0r%s99e999", ((VALUE) > 0 ? "" : "-")) \
  1208. +            : (VALUE) == -0.0                            \
  1209. +            ? asm_fprintf (FILE, "%I0r-0.0")                    \
  1210. +            : asm_fprintf (FILE, "%I0r%.9g", (VALUE))) \
  1211. +         } else {                                        \
  1212. +           long l;                        \
  1213. +           REAL_VALUE_TO_TARGET_SINGLE (VALUE, l);        \
  1214. +           if (sizeof (int) == sizeof (long))            \
  1215. +             asm_fprintf ((FILE), "%I0x%x", l);            \
  1216. +           else                            \
  1217. +             asm_fprintf ((FILE), "%I0x%lx", l);            \
  1218. +         }                            \
  1219. +      } while (0)
  1220. + #undef ASM_OUTPUT_DOUBLE_OPERAND
  1221. + #define ASM_OUTPUT_DOUBLE_OPERAND(FILE,VALUE)                \
  1222. +   (REAL_VALUE_ISINF ((VALUE))                        \
  1223. +    ? asm_fprintf (FILE, "%I0r%s99e999", ((VALUE) > 0 ? "" : "-")) \
  1224. +    : (VALUE) == -0.0                            \
  1225. +    ? asm_fprintf (FILE, "%I0r-0.0")                    \
  1226. +    : asm_fprintf (FILE, "%I0r%.17g", (VALUE)))
  1227. + #endif    /* 0 */
  1228. + /* use A5 as framepointer instead of A6, this makes A6 available as a
  1229. +    general purpose register, and can thus be used without problems in
  1230. +    direct library calls. */
  1231. + #undef FRAME_POINTER_REGNUM
  1232. + #define FRAME_POINTER_REGNUM 13
  1233. + #undef ARG_POINTER_REGNUM
  1234. + #define ARG_POINTER_REGNUM 13
  1235. + /* we use A4 for this, not A5, which is the framepointer */
  1236. + #undef PIC_OFFSET_TABLE_REGNUM
  1237. + #define PIC_OFFSET_TABLE_REGNUM 12
  1238. + /* setup a default shell return value for those (gazillion..) programs that
  1239. +    (inspite of ANSI-C) declare main() to be void (or even VOID...) and thus
  1240. +    cause the shell to randomly caugh upon executing such programs (contrary
  1241. +    to Unix, AmigaDOS scripts are terminated with an error if a program returns
  1242. +    with an error code above the `error' or even `failure' level
  1243. +    (which is configurable with the FAILAT command) */
  1244. + #define DEFAULT_MAIN_RETURN c_expand_return (integer_zero_node)
  1245. + /* we do have an ansi-compliant c-library ;-) */
  1246. + #define HAVE_VPRINTF
  1247. + #define HAVE_VFPRINTF
  1248. + #define HAVE_PUTENV
  1249. + #define HAVE_STRERROR
  1250. + #define HAVE_ATEXIT
  1251. + /* given that symbolic_operand(X), return TRUE if no special
  1252. +    base relative relocation is necessary */
  1253. + #define LEGITIMATE_BASEREL_OPERAND_P(X) \
  1254. +   (flag_pic >= 3 && read_only_operand (X))
  1255. + #undef LEGITIMATE_PIC_OPERAND_P
  1256. + #define LEGITIMATE_PIC_OPERAND_P(X) \
  1257. +   (! symbolic_operand (X, VOIDmode) || LEGITIMATE_BASEREL_OPERAND_P (X))
  1258. + /* Define this macro if references to a symbol must be treated
  1259. +    differently depending on something about the variable or
  1260. +    function named by the symbol (such as what section it is in).
  1261. +    The macro definition, if any, is executed immediately after the
  1262. +    rtl for DECL or other node is created.
  1263. +    The value of the rtl will be a `mem' whose address is a
  1264. +    `symbol_ref'.
  1265. +    The usual thing for this macro to do is to a flag in the
  1266. +    `symbol_ref' (such as `SYMBOL_REF_FLAG') or to store a modified
  1267. +    name string in the `symbol_ref' (if one bit is not enough
  1268. +    information).
  1269. +    On the Amiga we use this to indicate if a symbol is in text or
  1270. +    data space.  */
  1271. + #define ENCODE_SECTION_INFO(DECL)\
  1272. + do                                    \
  1273. +   {                                    \
  1274. +     if (TREE_CODE (DECL) == FUNCTION_DECL)                \
  1275. +       SYMBOL_REF_FLAG (XEXP (DECL_RTL (DECL), 0)) = 1;            \
  1276. +     else                                \
  1277. +       {                                    \
  1278. +     rtx rtl = (TREE_CODE_CLASS (TREE_CODE (DECL)) != 'd'        \
  1279. +            ? TREE_CST_RTL (DECL) : DECL_RTL (DECL));        \
  1280. +     if (RTX_UNCHANGING_P (rtl) && !MEM_VOLATILE_P (rtl))        \
  1281. +       SYMBOL_REF_FLAG (XEXP (rtl, 0)) = 1;                \
  1282. +       }                                    \
  1283. +   }                                    \
  1284. + while (0)
  1285. + #undef SELECT_RTX_SECTION
  1286. + #define SELECT_RTX_SECTION(MODE, X) readonly_data_section ();
  1287. + /* according to varasm.c, RELOC referrs *only* to whether constants (!)
  1288. +    are addressed by address. This doesn't matter in baserelative code,
  1289. +    so we allow (inspite of flag_pic) readonly_data_section() in that
  1290. +    case */
  1291. + #undef SELECT_SECTION
  1292. + #define SELECT_SECTION(DECL, RELOC)                    \
  1293. + {                                    \
  1294. +   if (TREE_CODE (DECL) == STRING_CST)                    \
  1295. +     {                                    \
  1296. +       if (! flag_writable_strings)                    \
  1297. +     readonly_data_section ();                    \
  1298. +       else                                \
  1299. +     data_section ();                        \
  1300. +     }                                    \
  1301. +   else if (TREE_CODE (DECL) == VAR_DECL)                \
  1302. +     {                                    \
  1303. +       if ((flag_pic && flag_pic < 3 && RELOC)                \
  1304. +       || !TREE_READONLY (DECL) || TREE_SIDE_EFFECTS (DECL))        \
  1305. +     data_section ();                        \
  1306. +       else                                \
  1307. +     readonly_data_section ();                    \
  1308. +     }                                    \
  1309. +   else                                    \
  1310. +     readonly_data_section ();                        \
  1311. + }
  1312. + #if not_yet_working
  1313. + /* starting support for amiga specific keywords
  1314. +  * --------------------------------------------
  1315. +  */
  1316. + /* validate attributes that don't take a parameter. Currently we support
  1317. +  * __attribute__ (saveds) and __attribute__ (interrupt)
  1318. +  */
  1319. + #define HANDLE_ATTRIBUTE0(attr) \
  1320. +   (strcmp(attr, "saveds") != 0 && strcmp(attr, "interrupt") != 0)
  1321. + /* (c-common.c)
  1322. +  * install additional attributes
  1323. +  */
  1324. + #define HANDLE_EXTRA_ATTRIBUTES(a)                         \
  1325. +   if (TREE_VALUE (a) != 0                            \
  1326. +       && TREE_CODE (TREE_VALUE (a)) == IDENTIFIER_NODE                \
  1327. +       && TREE_VALUE (a) == get_identifier ("saveds"))                \
  1328. +     {                                        \
  1329. +       if (TREE_CODE (decl) != FUNCTION_DECL)                    \
  1330. +         {                                    \
  1331. +           warning_with_decl (decl,                        \
  1332. +               "saveds attribute specified for non-function `%s'");        \
  1333. +       return;                                \
  1334. +         }                                    \
  1335. +                                               \
  1336. +       attr_do_saveds (DECL_NAME (decl));                    \
  1337. +     }                                        \
  1338. +   else if (TREE_VALUE (a) != 0                            \
  1339. +       && TREE_CODE (TREE_VALUE (a)) == IDENTIFIER_NODE                \
  1340. +       && TREE_VALUE (a) == get_identifier ("interrupt"))            \
  1341. +     {                                        \
  1342. +       if (TREE_CODE (decl) != FUNCTION_DECL)                    \
  1343. +         {                                    \
  1344. +           warning_with_decl (decl,                        \
  1345. +               "saveds attribute specified for non-function `%s'");        \
  1346. +       return;                                \
  1347. +         }                                    \
  1348. +                                               \
  1349. +       attr_do_interrupt (DECL_NAME (decl));                    \
  1350. +     }                                        \
  1351. + #define PROLOGUE_EXTRA_SAVE(mask)                        \
  1352. +   { extern char *current_function_name;                        \
  1353. +     /* saveds makes the function preserve d1/a0/a1 as well */            \
  1354. +     if (attr_does_saveds (current_function_name))                \
  1355. +       mask |= 0x40c0; }                                \
  1356. + #define EPILOGUE_EXTRA_RESTORE(mask, nregs)                    \
  1357. +   { extern char *current_function_name;                        \
  1358. +     /* restore those extra registers */                        \
  1359. +     if (attr_does_saveds (current_function_name))                \
  1360. +       {                                        \
  1361. +     mask |= 0x0302;                                \
  1362. +     nregs += 3;                                \
  1363. +       } }                                    \
  1364. + #define EPILOGUE_EXTRA_BARRIER_KLUDGE(stream)                    \
  1365. +   { extern char *current_function_name;                        \
  1366. +     /* PLEASE Help! how is this done cleaner?? */                \
  1367. +     if (attr_does_saveds (current_function_name))                \
  1368. +       {                                        \
  1369. +     fprintf (stderr,                             \
  1370. +          "warning: couldn't cleanup `saveds'-stack in `%s'.\n");    \
  1371. +     fprintf (stderr,                            \
  1372. +          "         this is only ok, if the function never returns!\n");    \
  1373. +       }    }                                    \
  1374. +         
  1375. + #define EPILOGUE_EXTRA_TEST(stream)                        \
  1376. +   { extern char *current_function_name;                        \
  1377. +     /* with the interrupt-attribute, we have to set the cc before rts */    \
  1378. +     if (attr_does_interrupt (current_function_name))                \
  1379. +       asm_fprintf (stream, "\ttstl %s\n", reg_names[0]); }            \
  1380. + #endif
  1381. diff -rc --new-file gcc-2.6.3/config/m68k/m68k.c /gnu/src/amiga/gcc-2.6.3/config/m68k/m68k.c
  1382. *** gcc-2.6.3/config/m68k/m68k.c    Fri Nov 11 00:10:17 1994
  1383. --- /gnu/src/amiga/gcc-2.6.3/config/m68k/m68k.c    Sat Dec  3 15:01:56 1994
  1384. ***************
  1385. *** 61,67 ****
  1386.   void
  1387.   finalize_pic ()
  1388.   {
  1389. !   if (flag_pic && current_function_uses_pic_offset_table)
  1390.       emit_insn (gen_rtx (USE, VOIDmode, pic_offset_table_rtx));
  1391.   }
  1392.   
  1393. --- 61,67 ----
  1394.   void
  1395.   finalize_pic ()
  1396.   {
  1397. !   if (flag_pic && (flag_pic < 3) && current_function_uses_pic_offset_table)
  1398.       emit_insn (gen_rtx (USE, VOIDmode, pic_offset_table_rtx));
  1399.   }
  1400.   
  1401. ***************
  1402. *** 141,147 ****
  1403.     else if (fsize)
  1404.       {
  1405.         /* Adding negative number is faster on the 68040.  */
  1406. !       if (fsize + 4 < 0x8000)
  1407.       {
  1408.       /* asm_fprintf() cannot handle %. */
  1409.   #ifdef MOTOROLA
  1410. --- 141,148 ----
  1411.     else if (fsize)
  1412.       {
  1413.         /* Adding negative number is faster on the 68040.  */
  1414. !         if (fsize + 4 < 0x8000)
  1415.       {
  1416.       /* asm_fprintf() cannot handle %. */
  1417.   #ifdef MOTOROLA
  1418. ***************
  1419. *** 196,201 ****
  1420. --- 197,205 ----
  1421.         mask &= ~ (1 << (15 - FRAME_POINTER_REGNUM));
  1422.         num_saved_regs--;
  1423.       }
  1424. + #ifdef PROLOGUE_EXTRA_SAVE
  1425. +   PROLOGUE_EXTRA_SAVE (mask);
  1426. + #endif
  1427.   
  1428.   #if NEED_PROBE
  1429.     fprintf (stream, "\ttstl sp@(%d)\n", NEED_PROBE - num_saved_regs * 4);
  1430. ***************
  1431. *** 229,235 ****
  1432.         asm_fprintf (stream, "\tmoveml %0I0x%x,%Rsp@-\n", mask);
  1433.   #endif
  1434.       }
  1435. !   if (flag_pic && current_function_uses_pic_offset_table)
  1436.       {
  1437.   #ifdef MOTOROLA
  1438.         asm_fprintf (stream, "\t%Olea (%Rpc, %U_GLOBAL_OFFSET_TABLE_@GOTPC), %s\n",
  1439. --- 233,239 ----
  1440.         asm_fprintf (stream, "\tmoveml %0I0x%x,%Rsp@-\n", mask);
  1441.   #endif
  1442.       }
  1443. !   if (flag_pic && (flag_pic < 3) && current_function_uses_pic_offset_table)
  1444.       {
  1445.   #ifdef MOTOROLA
  1446.         asm_fprintf (stream, "\t%Olea (%Rpc, %U_GLOBAL_OFFSET_TABLE_@GOTPC), %s\n",
  1447. ***************
  1448. *** 294,299 ****
  1449. --- 298,306 ----
  1450.         /* Output just a no-op so that debuggers don't get confused
  1451.        about which function the pc is in at this address.  */
  1452.         asm_fprintf (stream, "\tnop\n");
  1453. + #ifdef EPILOGUE_EXTRA_BARRIER_KLUDGE
  1454. +       EPILOGUE_EXTRA_BARRIER_KLUDGE(stream);
  1455. + #endif
  1456.         return;
  1457.       }
  1458.   
  1459. ***************
  1460. *** 324,329 ****
  1461. --- 331,339 ----
  1462.           nregs++;
  1463.       mask |= 1 << regno;
  1464.         }
  1465. + #ifdef EPILOGUE_EXTRA_RESTORE
  1466. +   EPILOGUE_EXTRA_RESTORE(mask, nregs);
  1467. + #endif
  1468.     offset = foffset + nregs * 4;
  1469.     if (offset + fsize >= 0x8000
  1470.         && frame_pointer_needed
  1471. ***************
  1472. *** 528,533 ****
  1473. --- 538,546 ----
  1474.   #endif
  1475.       }
  1476.       }
  1477. + #ifdef EPILOGUE_EXTRA_TEST
  1478. +   EPILOGUE_EXTRA_TEST(stream);
  1479. + #endif
  1480.     if (current_function_pops_args)
  1481.       asm_fprintf (stream, "\trtd %0I%d\n", current_function_pops_args);
  1482.     else
  1483. ***************
  1484. *** 818,832 ****
  1485.     /* First handle a simple SYMBOL_REF or LABEL_REF */
  1486.     if (GET_CODE (orig) == SYMBOL_REF || GET_CODE (orig) == LABEL_REF)
  1487.       {
  1488.         if (reg == 0)
  1489.       abort ();
  1490.   
  1491. !       pic_ref = gen_rtx (MEM, Pmode,
  1492. !              gen_rtx (PLUS, Pmode,
  1493. !                   pic_offset_table_rtx, orig));
  1494.         current_function_uses_pic_offset_table = 1;
  1495.         RTX_UNCHANGING_P (pic_ref) = 1;
  1496.         emit_move_insn (reg, pic_ref);
  1497.         return reg;
  1498.       }
  1499.     else if (GET_CODE (orig) == CONST)
  1500. --- 831,854 ----
  1501.     /* First handle a simple SYMBOL_REF or LABEL_REF */
  1502.     if (GET_CODE (orig) == SYMBOL_REF || GET_CODE (orig) == LABEL_REF)
  1503.       {
  1504. + #ifdef LEGITIMATE_BASEREL_OPERAND_P
  1505. +   if (LEGITIMATE_BASEREL_OPERAND_P (orig))
  1506. +     return orig;
  1507. + #endif
  1508.         if (reg == 0)
  1509.       abort ();
  1510.   
  1511. !       if (flag_pic >= 3)
  1512. !     pic_ref = gen_rtx (PLUS, Pmode, pic_offset_table_rtx, orig);
  1513. !       else
  1514. !         pic_ref = gen_rtx (MEM, Pmode,
  1515. !                gen_rtx (PLUS, Pmode,
  1516. !                     pic_offset_table_rtx, orig));
  1517.         current_function_uses_pic_offset_table = 1;
  1518.         RTX_UNCHANGING_P (pic_ref) = 1;
  1519.         emit_move_insn (reg, pic_ref);
  1520.         return reg;
  1521.       }
  1522.     else if (GET_CODE (orig) == CONST)
  1523. ***************
  1524. *** 855,860 ****
  1525. --- 877,883 ----
  1526.         pic_ref = gen_rtx (PLUS, Pmode, base, orig);
  1527.         /* Likewise, should we set special REG_NOTEs here?  */
  1528.       }
  1529.     return pic_ref;
  1530.   }
  1531.   
  1532. ***************
  1533. *** 2167,2172 ****
  1534. --- 2190,2199 ----
  1535.                 fprintf (file, ":w");
  1536.               if ((flag_pic == 2) && (breg == pic_offset_table_rtx))
  1537.                 fprintf (file, ":l");
  1538. +             if ((flag_pic == 3) && (breg == pic_offset_table_rtx))
  1539. +               fprintf (file, ":W");
  1540. +             if ((flag_pic == 4) && (breg == pic_offset_table_rtx))
  1541. +               fprintf (file, ":L");
  1542.             }
  1543.           if (addr != 0 && ireg != 0)
  1544.             {
  1545. diff -rc --new-file gcc-2.6.3/config/m68k/m68k.h /gnu/src/amiga/gcc-2.6.3/config/m68k/m68k.h
  1546. *** gcc-2.6.3/config/m68k/m68k.h    Sat Nov  5 19:25:00 1994
  1547. --- /gnu/src/amiga/gcc-2.6.3/config/m68k/m68k.h    Sat Dec  3 15:01:58 1994
  1548. ***************
  1549. *** 353,361 ****
  1550.   #ifndef SUPPORT_SUN_FPA
  1551.   
  1552.   #define CONDITIONAL_REGISTER_USAGE \
  1553. ! {                                               \
  1554. !   if (flag_pic)                                 \
  1555. !     fixed_regs[PIC_OFFSET_TABLE_REGNUM] = 1;    \
  1556.   }
  1557.   
  1558.   #else /* defined SUPPORT_SUN_FPA */
  1559. --- 353,364 ----
  1560.   #ifndef SUPPORT_SUN_FPA
  1561.   
  1562.   #define CONDITIONAL_REGISTER_USAGE \
  1563. ! {                                                \
  1564. !   if (flag_pic)                                  \
  1565. !     fixed_regs[PIC_OFFSET_TABLE_REGNUM] = 1;     \
  1566. !   /* prevent saving/restoring of the base reg */ \
  1567. !   if (flag_pic == 3)                 \
  1568. !     call_used_regs[PIC_OFFSET_TABLE_REGNUM] = 1; \
  1569.   }
  1570.   
  1571.   #else /* defined SUPPORT_SUN_FPA */
  1572. diff -rc --new-file gcc-2.6.3/config/m68k/m68k.md /gnu/src/amiga/gcc-2.6.3/config/m68k/m68k.md
  1573. *** gcc-2.6.3/config/m68k/m68k.md    Mon Nov 21 23:42:46 1994
  1574. --- /gnu/src/amiga/gcc-2.6.3/config/m68k/m68k.md    Sat Dec  3 15:24:49 1994
  1575. ***************
  1576. *** 377,384 ****
  1577.   
  1578.   ;; compare instructions.
  1579.   
  1580.   ;; A composite of the cmp, cmpa, & cmpi m68000 op codes.
  1581. ! (define_insn "cmpsi"
  1582.     [(set (cc0)
  1583.       (compare (match_operand:SI 0 "nonimmediate_operand" "rKs,mr,>")
  1584.            (match_operand:SI 1 "general_operand" "mr,Ksr,>")))]
  1585. --- 377,410 ----
  1586.   
  1587.   ;; compare instructions.
  1588.   
  1589. + ;; This is the second "hook" for PIC code (in addition to movsi). See
  1590. + ;; comment of movsi for a description of PIC handling.
  1591. + (define_expand "cmpsi"
  1592. +   [(set (cc0)
  1593. +     (compare (match_operand:SI 0 "nonimmediate_operand" "")
  1594. +          (match_operand:SI 1 "general_operand" "")))]
  1595. +   ""
  1596. +   "
  1597. + {
  1598. +   if (flag_pic && symbolic_operand (operands[1], SImode)) 
  1599. +     {
  1600. + #ifdef LEGITIMATE_BASEREL_OPERAND_P
  1601. +       if (flag_pic < 3 || !LEGITIMATE_BASEREL_OPERAND_P (operands[1]))
  1602. + #endif
  1603. +       {
  1604. +         /* The source is an address which requires PIC relocation.  
  1605. +            Call legitimize_pic_address with the source, mode, and a relocation
  1606. +            register (a new pseudo, or the final destination if reload_in_progress
  1607. +            is set).   Then fall through normally */
  1608. +         extern rtx legitimize_pic_address();
  1609. +         rtx temp = reload_in_progress ? operands[0] : gen_reg_rtx (Pmode);
  1610. +         operands[1] = legitimize_pic_address (operands[1], SImode, temp);
  1611. +       }
  1612. +     }
  1613. + }")
  1614.   ;; A composite of the cmp, cmpa, & cmpi m68000 op codes.
  1615. ! (define_insn ""
  1616.     [(set (cc0)
  1617.       (compare (match_operand:SI 0 "nonimmediate_operand" "rKs,mr,>")
  1618.            (match_operand:SI 1 "general_operand" "mr,Ksr,>")))]
  1619. ***************
  1620. *** 712,724 ****
  1621.   {
  1622.     if (flag_pic && symbolic_operand (operands[1], SImode)) 
  1623.       {
  1624. !       /* The source is an address which requires PIC relocation.  
  1625. !          Call legitimize_pic_address with the source, mode, and a relocation
  1626. !          register (a new pseudo, or the final destination if reload_in_progress
  1627. !          is set).   Then fall through normally */
  1628. !       extern rtx legitimize_pic_address();
  1629. !       rtx temp = reload_in_progress ? operands[0] : gen_reg_rtx (Pmode);
  1630. !       operands[1] = legitimize_pic_address (operands[1], SImode, temp);
  1631.       }
  1632.   }")
  1633.   
  1634. --- 738,755 ----
  1635.   {
  1636.     if (flag_pic && symbolic_operand (operands[1], SImode)) 
  1637.       {
  1638. ! #ifdef LEGITIMATE_BASEREL_OPERAND_P
  1639. !       if (flag_pic < 3 || !LEGITIMATE_BASEREL_OPERAND_P (operands[1]))
  1640. ! #endif
  1641. !       {
  1642. !         /* The source is an address which requires PIC relocation.  
  1643. !            Call legitimize_pic_address with the source, mode, and a relocation
  1644. !            register (a new pseudo, or the final destination if reload_in_progress
  1645. !            is set).   Then fall through normally */
  1646. !         extern rtx legitimize_pic_address();
  1647. !         rtx temp = reload_in_progress ? operands[0] : gen_reg_rtx (Pmode);
  1648. !         operands[1] = legitimize_pic_address (operands[1], SImode, temp);
  1649. !       }
  1650.       }
  1651.   }")
  1652.   
  1653. ***************
  1654. *** 1856,1863 ****
  1655.   
  1656.         /* These insns can result from reloads to access
  1657.        stack slots over 64k from the frame pointer.  */
  1658. !       if (GET_CODE (operands[2]) == CONST_INT
  1659. !       && INTVAL (operands[2]) + 0x8000 >= (unsigned) 0x10000)
  1660.           return \"move%.l %2,%0\;add%.l %1,%0\";
  1661.   #ifdef SGS
  1662.         if (GET_CODE (operands[2]) == REG)
  1663. --- 1887,1895 ----
  1664.   
  1665.         /* These insns can result from reloads to access
  1666.        stack slots over 64k from the frame pointer.  */
  1667. !       if (((GET_CODE (operands[2]) == CONST_INT
  1668. !        && INTVAL (operands[2]) + 0x8000 >= (unsigned) 0x10000))
  1669. !       || (flag_pic == 4 && operands[1] == pic_offset_table_rtx))
  1670.           return \"move%.l %2,%0\;add%.l %1,%0\";
  1671.   #ifdef SGS
  1672.         if (GET_CODE (operands[2]) == REG)
  1673. ***************
  1674. *** 4769,4775 ****
  1675.     ""
  1676.     "
  1677.   {
  1678. !   if (flag_pic && GET_CODE (XEXP (operands[0], 0)) == SYMBOL_REF)
  1679.   #ifdef MOTOROLA
  1680.       SYMBOL_REF_FLAG (XEXP (operands[0], 0)) = 1;
  1681.   #else
  1682. --- 4801,4807 ----
  1683.     ""
  1684.     "
  1685.   {
  1686. !   if (flag_pic && flag_pic < 3 && GET_CODE (XEXP (operands[0], 0)) == SYMBOL_REF)
  1687.   #ifdef MOTOROLA
  1688.       SYMBOL_REF_FLAG (XEXP (operands[0], 0)) = 1;
  1689.   #else
  1690. ***************
  1691. *** 4784,4790 ****
  1692.        (match_operand:SI 1 "general_operand" "g"))]
  1693.     ;; Operand 1 not really used on the m68000.
  1694.   
  1695. !   "! flag_pic"
  1696.     "*
  1697.   #ifdef MOTOROLA
  1698.   #ifdef MOTOROLA_BSR
  1699. --- 4816,4822 ----
  1700.        (match_operand:SI 1 "general_operand" "g"))]
  1701.     ;; Operand 1 not really used on the m68000.
  1702.   
  1703. !   "(! flag_pic || flag_pic >= 3)"
  1704.     "*
  1705.   #ifdef MOTOROLA
  1706.   #ifdef MOTOROLA_BSR
  1707. ***************
  1708. *** 4804,4810 ****
  1709.        (match_operand:SI 1 "general_operand" "g"))]
  1710.     ;; Operand 1 not really used on the m68000.
  1711.   
  1712. !   "flag_pic"
  1713.     "*
  1714.   #ifdef MOTOROLA
  1715.     if (GET_CODE (operands[0]) == MEM 
  1716. --- 4836,4842 ----
  1717.        (match_operand:SI 1 "general_operand" "g"))]
  1718.     ;; Operand 1 not really used on the m68000.
  1719.   
  1720. !   "(flag_pic && flag_pic < 3)"
  1721.     "*
  1722.   #ifdef MOTOROLA
  1723.     if (GET_CODE (operands[0]) == MEM 
  1724. ***************
  1725. *** 4829,4835 ****
  1726.     ""
  1727.     "
  1728.   {
  1729. !   if (flag_pic && GET_CODE (XEXP (operands[1], 0)) == SYMBOL_REF)
  1730.   #ifdef MOTOROLA
  1731.       SYMBOL_REF_FLAG (XEXP (operands[1], 0)) = 1;
  1732.   #else
  1733. --- 4861,4867 ----
  1734.     ""
  1735.     "
  1736.   {
  1737. !   if (flag_pic && flag_pic < 3 && GET_CODE (XEXP (operands[1], 0)) == SYMBOL_REF)
  1738.   #ifdef MOTOROLA
  1739.       SYMBOL_REF_FLAG (XEXP (operands[1], 0)) = 1;
  1740.   #else
  1741. ***************
  1742. *** 4844,4850 ****
  1743.       (call (match_operand:QI 1 "memory_operand" "o")
  1744.             (match_operand:SI 2 "general_operand" "g")))]
  1745.     ;; Operand 2 not really used on the m68000.
  1746. !   "! flag_pic"
  1747.     "*
  1748.   #ifdef MOTOROLA
  1749.   #ifdef MOTOROLA_BSR
  1750. --- 4876,4882 ----
  1751.       (call (match_operand:QI 1 "memory_operand" "o")
  1752.             (match_operand:SI 2 "general_operand" "g")))]
  1753.     ;; Operand 2 not really used on the m68000.
  1754. !   "(! flag_pic || flag_pic >= 3)"
  1755.     "*
  1756.   #ifdef MOTOROLA
  1757.   #ifdef MOTOROLA_BSR
  1758. ***************
  1759. *** 4864,4870 ****
  1760.       (call (match_operand:QI 1 "memory_operand" "o")
  1761.             (match_operand:SI 2 "general_operand" "g")))]
  1762.     ;; Operand 2 not really used on the m68000.
  1763. !   "flag_pic"
  1764.     "*
  1765.   #ifdef MOTOROLA
  1766.     if (GET_CODE (operands[1]) == MEM 
  1767. --- 4896,4902 ----
  1768.       (call (match_operand:QI 1 "memory_operand" "o")
  1769.             (match_operand:SI 2 "general_operand" "g")))]
  1770.     ;; Operand 2 not really used on the m68000.
  1771. !   "(flag_pic && flag_pic < 3)"
  1772.     "*
  1773.   #ifdef MOTOROLA
  1774.     if (GET_CODE (operands[1]) == MEM 
  1775. diff -rc --new-file gcc-2.6.3/config/m68k/t-amigados /gnu/src/amiga/gcc-2.6.3/config/m68k/t-amigados
  1776. *** gcc-2.6.3/config/m68k/t-amigados    Thu Jan  1 00:00:00 1970
  1777. --- /gnu/src/amiga/gcc-2.6.3/config/m68k/t-amigados    Thu Dec 22 19:51:55 1994
  1778. ***************
  1779. *** 0 ****
  1780. --- 1,352 ----
  1781. + # Makefile fragment for amigados target.
  1782. + # We generate two additional things:
  1783. + #
  1784. + # libb/libgcc.a
  1785. + #    A base relative version of libgcc.a which is used when compiling and
  1786. + #    linking with the '-resident' option.
  1787. + #
  1788. + # libb/libm020/libgcc.a
  1789. + #    An accelerated base relative version of libgcc.a which is used when
  1790. + #    compiling and linking with the '-mc68020' & '-resident' options.
  1791. + #
  1792. + # libm020/libgcc.a
  1793. + #    An accelerated version of libgcc.a which is used when compiling and
  1794. + #    linking with the '-mc68020' option.
  1795. + #
  1796. + # xgccv
  1797. + #    A forking gcc instead of one calling ssytem(). This makes it less
  1798. + #    system conformant (can't ^C it when started from make), while providing
  1799. + #    increased functionality (-pipe option).
  1800. + # Use the vfork'ing version of gcc by default, so that the -pipe option can
  1801. + # get tested.  To use the regular version just do "make XGCC=gcc".  Note that
  1802. + # PIPE is defined in x-amigados, so if we are doing a native build, it will
  1803. + # be defined.  It can be overridden with "make PIPE=".
  1804. + XGCC = xgccv $(PIPE)
  1805. + GCC_FOR_TARGET = ./$(XGCC) -B./
  1806. + # Build residentable versions of the gcc executables by default.  Use
  1807. + # "make RESIDENT=" to build non-residentable versions.
  1808. + # Note:  This failed during bootstrapping of 2.5.5.
  1809. + #RESIDENT = -resident
  1810. + # The standard additional target flags for the compiler.
  1811. + T_CFLAGS = $(RESIDENT)
  1812. + # Allow the user to override the default target optimizations with gcc, or if
  1813. + # the target compiler is not gcc and doesn't understand -O<N>.
  1814. + T_OPTIMISE = -O2
  1815. + # Each compilation environment (Manx, Dice, GCC, SAS/C, etc) provides its
  1816. + # own equivalent of the UNIX /usr/include tree.  For gcc, the standard headers
  1817. + # are in /gnu/include and system specific headers are in /gnu/os-include.
  1818. + # Use these paths for fixincludes.
  1819. + SYSTEM_HEADER_DIR = /gnu/include
  1820. + OTHER_FIXINCLUDES_DIRS = /gnu/os-include
  1821. + # We don't need a libgcc1, it's all in ixemul.library
  1822. + LIBGCC1 = libgcc1.null
  1823. + # Flags to use when compiling the normal version of libgcc.a.
  1824. + # Don't compile with debugging, as long as there is no debugger.
  1825. + # Explicitly leave out the -resident compilation flag and don't use T_CFLAGS.
  1826. + LIBGCC2_CFLAGS = $(T_OPTIMIZE) $(INTERNAL_CFLAGS) $(X_CFLAGS) $(CFLAGS) \
  1827. +           $(CROSS_GCC_CFLAGS)
  1828. + # Flags to use when compiling the base relative version of libgcc.a.
  1829. + # Don't compile with debugging, as long as there is no debugger.
  1830. + # Explicitly force -resident in the compilation flags and don't use T_CFLAGS.
  1831. + LIBBGCC2_CFLAGS = $(T_OPTIMIZE) $(INTERNAL_CFLAGS) $(X_CFLAGS) $(CFLAGS) \
  1832. +           $(CROSS_GCC_CFLAGS) -resident
  1833. + # Flags to use when compiling the 68020 versions of libgcc.a.
  1834. + # Don't compile with debugging, as long as there is no debugger.
  1835. + # Explicitly force -mc68020 in the compilation flags and don't use T_CFLAGS.
  1836. + LIBM020GCC2_CFLAGS = $(T_OPTIMIZE) $(INTERNAL_CFLAGS) $(X_CFLAGS) $(CFLAGS) \
  1837. +           $(CROSS_GCC_CFLAGS) -mc68020
  1838. + # Flags to use when compiling the base relative 68020 versions of libgcc.a.
  1839. + # Don't compile with debugging, as long as there is no debugger.
  1840. + # Explicitly force -mc68020 & -resident in the compilation flags and don't use
  1841. + # T_CFLAGS.
  1842. + LIBBM020GCC2_CFLAGS = $(LIBBGCC2_CFLAGS) -mc68020
  1843. + # Build the base relative library and accelerated libraries.
  1844. + # It is later copied into /gnu/lib/gcc-lib/amigados/<version>/libb/libgcc.a, whereas
  1845. + # libgcc.a is copied into /gnu/lib/gcc-lib/amigados/<version>/libgcc.a.
  1846. + # Accelerated libraries are copied into same directories, with an extra dir level
  1847. + # libm020, thus libb/libm020. It doesn't work very well to define one of the
  1848. + # EXTRA_* macros to contain libb/libgcc.a, particularly for doing "make stageN"
  1849. + # or "make install".
  1850. + GCC_PARTS=$(GCC_PASSES) libgcc.a libb/libgcc.a libm020/libgcc.a \
  1851. +         libb/libm020/libgcc.a $(EXTRA_PROGRAMS) $(USE_COLLECT2) $(EXTRA_PARTS)
  1852. + # Add install_libbgcc to normal define of INSTALL_LIBGCC.  Let install-gccv
  1853. + # hitch a ride on here as well.
  1854. + INSTALL_LIBGCC = install-libgcc install-libbgcc install-libm020gcc install-libbm020gcc install-gccv
  1855. + # This includes the knowledge that target amigados doesn't need libgcc1.a
  1856. + libb/libgcc.a: libgcc1.null libgcc2.c libgcc2.ready $(CONFIG_H) \
  1857. +    $(LIB2FUNCS_EXTRA) machmode.h longlong.h gbl-ctors.h config.status
  1858. + # Actually build it in tmplibbgcc.a, then rename at end,
  1859. + # so that libb/libgcc.a itself remains nonexistent if compilation is aborted.
  1860. +     -rm -f tmplibbgcc.a
  1861. + # -e causes any failing command to make this rule fail.
  1862. + # -e doesn't work in certain shells, so we test $$? as well.
  1863. +     set -e; \
  1864. +     for name in $(LIB2FUNCS); \
  1865. +     do \
  1866. +       echo $${name}; \
  1867. +       $(GCC_FOR_TARGET) $(LIBBGCC2_CFLAGS) $(INCLUDES) -c -DL$${name} \
  1868. +           $(srcdir)/libgcc2.c -o $${name}.o; \
  1869. +       if [ $$? -eq 0 ] ; then true; else exit 1; fi; \
  1870. +       $(AR) $(AR_FLAGS) tmplibbgcc.a $${name}.o; \
  1871. +       rm -f $${name}.o; \
  1872. +     done
  1873. + # Some shells crash when a loop has no items.
  1874. + # So make sure there is always at least one--`..'.
  1875. + # Then ignore it.
  1876. + # We don't use -e here because there are if statements
  1877. + # that should not make the command give up when the if condition is false.
  1878. + # Instead, we test for failure after each command where it matters.
  1879. +     -for file in .. $(LIB2FUNCS_EXTRA); \
  1880. +     do \
  1881. +       if [ x$${file} != x.. ]; then \
  1882. +         name=`echo $${file} | sed -e 's/[.]c$$//' -e 's/[.]asm$$//'`; \
  1883. +         echo $${name}; \
  1884. +         if [ $${name}.asm = $${file} ]; then \
  1885. +           cp $${file} $${name}.s || exit 1; file=$${name}.s; \
  1886. +         else true; fi; \
  1887. +         $(GCC_FOR_TARGET) $(LIBBGCC2_CFLAGS) $(INCLUDES) -c $${file}; \
  1888. +         if [ $$? -eq 0 ] ; then true; else exit 1; fi; \
  1889. +         $(AR) $(AR_FLAGS) tmplibbgcc.a $${name}.o; \
  1890. +         rm -f $${name}.[so]; \
  1891. +       else true; \
  1892. +       fi; \
  1893. +     done
  1894. +     -if $(RANLIB_TEST) ; then $(RANLIB) tmplibbgcc.a; else true; fi
  1895. +     -if [ -d libb ] ; then true ; else mkdir libb ; fi
  1896. +     mv tmplibbgcc.a libb/libgcc.a
  1897. + install-libbgcc: libb/libgcc.a install-dir
  1898. +     -if [ -d $(libsubdir)/libb ] ; then true ; else mkdir $(libsubdir)/libb ; fi
  1899. +     -if [ -f libb/libgcc.a ] ; then \
  1900. +       rm -f $(libsubdir)/libb/libgcc.a; \
  1901. +       $(INSTALL_DATA) libb/libgcc.a $(libsubdir)/libb/libgcc.a; \
  1902. +       if $(RANLIB_TEST) ; then \
  1903. +         (cd $(libsubdir)/libb; $(RANLIB) libgcc.a); else true; fi; \
  1904. +       chmod a-x $(libsubdir)/libb/libgcc.a; \
  1905. +     else true; fi
  1906. + libm020/libgcc.a: libgcc1.null libgcc2.c libgcc2.ready $(CONFIG_H) \
  1907. +    $(LIB2FUNCS_EXTRA) machmode.h longlong.h gbl-ctors.h config.status
  1908. + # Actually build it in tmplibm020gcc.a, then rename at end,
  1909. + # so that libm020/libgcc.a itself remains nonexistent if compilation is aborted.
  1910. +     -rm -f tmplibm020gcc.a
  1911. + # -e causes any failing command to make this rule fail.
  1912. + # -e doesn't work in certain shells, so we test $$? as well.
  1913. +     set -e; \
  1914. +     for name in $(LIB2FUNCS); \
  1915. +     do \
  1916. +       echo $${name}; \
  1917. +       $(GCC_FOR_TARGET) $(LIBM020GCC2_CFLAGS) $(INCLUDES) -c -DL$${name} \
  1918. +           $(srcdir)/libgcc2.c -o $${name}.o; \
  1919. +       if [ $$? -eq 0 ] ; then true; else exit 1; fi; \
  1920. +       $(AR) $(AR_FLAGS) tmplibm020gcc.a $${name}.o; \
  1921. +       rm -f $${name}.o; \
  1922. +     done
  1923. + # Some shells crash when a loop has no items.
  1924. + # So make sure there is always at least one--`..'.
  1925. + # Then ignore it.
  1926. + # We don't use -e here because there are if statements
  1927. + # that should not make the command give up when the if condition is false.
  1928. + # Instead, we test for failure after each command where it matters.
  1929. +     -for file in .. $(LIB2FUNCS_EXTRA); \
  1930. +     do \
  1931. +       if [ x$${file} != x.. ]; then \
  1932. +         name=`echo $${file} | sed -e 's/[.]c$$//' -e 's/[.]asm$$//'`; \
  1933. +         echo $${name}; \
  1934. +         if [ $${name}.asm = $${file} ]; then \
  1935. +           cp $${file} $${name}.s || exit 1; file=$${name}.s; \
  1936. +         else true; fi; \
  1937. +         $(GCC_FOR_TARGET) $(LIBBGCC2_CFLAGS) $(INCLUDES) -c $${file}; \
  1938. +         if [ $$? -eq 0 ] ; then true; else exit 1; fi; \
  1939. +         $(AR) $(AR_FLAGS) tmplibm020gcc.a $${name}.o; \
  1940. +         rm -f $${name}.[so]; \
  1941. +       else true; \
  1942. +       fi; \
  1943. +     done
  1944. +     -if $(RANLIB_TEST) ; then $(RANLIB) tmplibm020gcc.a; else true; fi
  1945. +     -if [ -d libm020 ] ; then true ; else mkdir libm020 ; fi
  1946. +     mv tmplibm020gcc.a libm020/libgcc.a
  1947. + install-libm020gcc: libm020/libgcc.a install-dir
  1948. +     -if [ -d $(libsubdir)/libm020 ] ; then true ; else mkdir $(libsubdir)/libm020 ; fi
  1949. +     -if [ -f libm020/libgcc.a ] ; then \
  1950. +       rm -f $(libsubdir)/libm020/libgcc.a; \
  1951. +       $(INSTALL_DATA) libm020/libgcc.a $(libsubdir)/libm020/libgcc.a; \
  1952. +       if $(RANLIB_TEST) ; then \
  1953. +         (cd $(libsubdir)/libm020; $(RANLIB) libgcc.a); else true; fi; \
  1954. +       chmod a-x $(libsubdir)/libm020/libgcc.a; \
  1955. +     else true; fi
  1956. + libb/libm020/libgcc.a: libgcc1.null libgcc2.c libgcc2.ready $(CONFIG_H) \
  1957. +    $(LIB2FUNCS_EXTRA) machmode.h longlong.h gbl-ctors.h config.status
  1958. + # Actually build it in tmplibbm020gcc.a, then rename at end,
  1959. + # so that libb/libm020/libgcc.a itself remains nonexistent if compilation is aborted.
  1960. +     -rm -f tmplibbm020gcc.a
  1961. + # -e causes any failing command to make this rule fail.
  1962. + # -e doesn't work in certain shells, so we test $$? as well.
  1963. +     set -e; \
  1964. +     for name in $(LIB2FUNCS); \
  1965. +     do \
  1966. +       echo $${name}; \
  1967. +       $(GCC_FOR_TARGET) $(LIBBM020GCC2_CFLAGS) $(INCLUDES) -c -DL$${name} \
  1968. +           $(srcdir)/libgcc2.c -o $${name}.o; \
  1969. +       if [ $$? -eq 0 ] ; then true; else exit 1; fi; \
  1970. +       $(AR) $(AR_FLAGS) tmplibbm020gcc.a $${name}.o; \
  1971. +       rm -f $${name}.o; \
  1972. +     done
  1973. + # Some shells crash when a loop has no items.
  1974. + # So make sure there is always at least one--`..'.
  1975. + # Then ignore it.
  1976. + # We don't use -e here because there are if statements
  1977. + # that should not make the command give up when the if condition is false.
  1978. + # Instead, we test for failure after each command where it matters.
  1979. +     -for file in .. $(LIB2FUNCS_EXTRA); \
  1980. +     do \
  1981. +       if [ x$${file} != x.. ]; then \
  1982. +         name=`echo $${file} | sed -e 's/[.]c$$//' -e 's/[.]asm$$//'`; \
  1983. +         echo $${name}; \
  1984. +         if [ $${name}.asm = $${file} ]; then \
  1985. +           cp $${file} $${name}.s || exit 1; file=$${name}.s; \
  1986. +         else true; fi; \
  1987. +         $(GCC_FOR_TARGET) $(LIBBGCC2CFLAGS) $(INCLUDES) -c $${file}; \
  1988. +         if [ $$? -eq 0 ] ; then true; else exit 1; fi; \
  1989. +         $(AR) $(AR_FLAGS) tmplibbm020gcc.a $${name}.o; \
  1990. +         rm -f $${name}.[so]; \
  1991. +       else true; \
  1992. +       fi; \
  1993. +     done
  1994. +     -if $(RANLIB_TEST) ; then $(RANLIB) tmplibbm020gcc.a; else true; fi
  1995. +     -if [ -d libb ] ; then true ; else mkdir libb ; fi
  1996. +     -if [ -d libb/libm020 ] ; then true ; else mkdir libb/libm020 ; fi
  1997. +     mv tmplibbm020gcc.a libb/libm020/libgcc.a
  1998. + install-libbm020gcc: libb/libm020/libgcc.a install-dir
  1999. +     -if [ -d $(libsubdir)/libb/libm020 ] ; then true ; else mkdir $(libsubdir)/libb/libm020 ; fi
  2000. +     -if [ -f libb/libm020/libgcc.a ] ; then \
  2001. +       rm -f $(libsubdir)/libb/libm020/libgcc.a; \
  2002. +       $(INSTALL_DATA) libb/libm020/libgcc.a $(libsubdir)/libb/libm020/libgcc.a; \
  2003. +       if $(RANLIB_TEST) ; then \
  2004. +         (cd $(libsubdir)/libb/libm020; $(RANLIB) libgcc.a); else true; fi; \
  2005. +       chmod a-x $(libsubdir)/libb/libm020/libgcc.a; \
  2006. +     else true; fi
  2007. + # PhB:
  2008. + # toplev.o target need to define additional flags to handle stack
  2009. + # allocation in real main. As for now we hack building of toplev.o
  2010. + # defining MAYBE_USE_COLLECT2 flag, which is only used for toplev.o.
  2011. + # Then we define EXTRA_OBJS to amigasup.o.
  2012. + MAYBE_USE_COLLECT2= -Dmain=stkmain -Dexit=stkexit
  2013. + EXTRA_OBJS = amigasup.o
  2014. + # The default gcc (xgcc) is built without -DAMIGADOS_FORK_GCC. This gcc (xgccv)
  2015. + # is built with AMIGADOS_FORK_GCC defined, so that it can use '-pipe'.  We
  2016. + # don't want to define EXTRA_PASSES to xgccv because that will cause xgccv
  2017. + # to be installed in $(libsubdir), so instead we use the default GCC_PASSES
  2018. + # and add xgccv to it.
  2019. + GCC_PASSES = xgcc xgccv cc1 cpp $(EXTRA_PASSES)
  2020. + xgccv: xgccv.o version.o $(LIBDEPS)
  2021. +     $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o xgccv xgccv.o version.o $(LIBS)
  2022. + xgccv.o: gcc.c $(CONFIG_H) config.status
  2023. +     $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
  2024. +   -DSTANDARD_STARTFILE_PREFIX=\"$(libdir)/\" \
  2025. +   -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc-lib/\" \
  2026. +   -DDEFAULT_TARGET_VERSION=\"$(version)\" \
  2027. +   -DDEFAULT_TARGET_MACHINE=\"$(target)\" \
  2028. +   -DTOOLDIR_BASE_PREFIX=\"$(exec_prefix)/\" \
  2029. +   -DAMIGADOS_FORK_GCC \
  2030. +   -c `echo $(srcdir)/gcc.c | sed 's,^\./,,'` -o xgccv.o
  2031. + install-gccv: xgccv
  2032. +     rm -f $(bindir)/gccv
  2033. +     $(INSTALL_PROGRAM) xgccv $(bindir)/gccv
  2034. + # When making one of the stage<N> dirs, we need to make subdirs for
  2035. + # additional libraries, and copy them there. base-relative libraries
  2036. + # and accelerated libraries are preserved through stages.
  2037. + EXTRA_STAGE1_TARGETS = stage1-libamiga
  2038. + EXTRA_STAGE2_TARGETS = stage2-libamiga
  2039. + EXTRA_STAGE3_TARGETS = stage3-libamiga
  2040. + EXTRA_STAGE4_TARGETW = stage4-libamiga
  2041. + stage1-libamiga:
  2042. +     -if [ -d stage1 ] ; then true ; else mkdir stage1 ; fi
  2043. +     -if [ -d stage1/libb ] ; then true ; else mkdir stage1/libb ; fi
  2044. +     -if [ -d stage1/libb/libm020 ] ; then true ; else mkdir stage1/libb/libm020 ; fi
  2045. +     -if [ -d stage1/libm020 ] ; then true ; else mkdir stage1/libm020 ; fi
  2046. +     -cp libb/libgcc.a stage1/libb/libgcc.a
  2047. +     -cp libb/libm020/libgcc.a stage1/libb/libm020/libgcc.a
  2048. +     -cp libm020/libgcc.a stage1/libm020/libgcc.a
  2049. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage1/libb/libgcc.i; else true; fi
  2050. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage1/libb/libm020/libgcc.a; else true; fi
  2051. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage1/libm020/libgcc.a; else true; fi
  2052. + stage2-libamiga:
  2053. +     -if [ -d stage2 ] ; then true ; else mkdir stage2 ; fi
  2054. +     -if [ -d stage2/libb ] ; then true ; else mkdir stage2/libb ; fi
  2055. +     -if [ -d stage2/libb/libm020 ] ; then true ; else mkdir stage2/libb/libm020 ; fi
  2056. +     -if [ -d stage2/libm020 ] ; then true ; else mkdir stage2/libm020 ; fi
  2057. +     -cp libb/libgcc.a stage2/libb/libgcc.a
  2058. +     -cp libb/libm020/libgcc.a stage2/libb/libm020/libgcc.a
  2059. +     -cp libm020/libgcc.a stage2/libm020/libgcc.a
  2060. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage2/libb/libgcc.a; else true; fi
  2061. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage2/libb/libm020/libgcc.a; else true; fi
  2062. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage2/libm020/libgcc.a; else true; fi
  2063. + stage3-libamiga:
  2064. +     -if [ -d stage3 ] ; then true ; else mkdir stage3 ; fi
  2065. +     -if [ -d stage3/libb ] ; then true ; else mkdir stage3/libb ; fi
  2066. +     -if [ -d stage3/libb/libm020 ] ; then true ; else mkdir stage3/libb/libm020 ; fi
  2067. +     -if [ -d stage3/libm020 ] ; then true ; else mkdir stage3/libm020 ; fi
  2068. +     -cp libb/libgcc.a stage3/libb/libgcc.a
  2069. +     -cp libb/libm020/libgcc.a stage3/libb/libm020/libgcc.a
  2070. +     -cp libm020/libgcc.a stage3/libm020/libgcc.a
  2071. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage3/libb/libgcc.a; else true; fi
  2072. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage3/libb/libm020/libgcc.a; else true; fi
  2073. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage3/libm020/libgcc.a; else true; fi
  2074. + stage4-libamiga:
  2075. +     -if [ -d stage4 ] ; then true ; else mkdir stage4 ; fi
  2076. +     -if [ -d stage4/libb ] ; then true ; else mkdir stage4/libb ; fi
  2077. +     -if [ -d stage4/libb/libm020 ] ; then true ; else mkdir stage4/libb/libm020 ; fi
  2078. +     -if [ -d stage4/libm020 ] ; then true ; else mkdir stage4/libm020 ; fi
  2079. +     -cp libb/libgcc.a stage4/libb/libgcc.a
  2080. +     -cp libb/libm020/libgcc.a stage4/libb/libm020/libgcc.a
  2081. +     -cp libm020/libgcc.a stage4/libm020/libgcc.a
  2082. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage4/libb/libgcc.a; else true; fi
  2083. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage4/libb/libm020/libgcc.a; else true; fi
  2084. +     -if $(RANLIB_TEST) ; then $(RANLIB) stage4/libm020/libgcc.a; else true; fi
  2085. diff -rc --new-file gcc-2.6.3/config/m68k/x-amigados /gnu/src/amiga/gcc-2.6.3/config/m68k/x-amigados
  2086. *** gcc-2.6.3/config/m68k/x-amigados    Thu Jan  1 00:00:00 1970
  2087. --- /gnu/src/amiga/gcc-2.6.3/config/m68k/x-amigados    Sun Jan 15 16:26:06 1995
  2088. ***************
  2089. *** 0 ****
  2090. --- 1,52 ----
  2091. + # Note: It doesn't do any good to try to define prefix or local_prefix
  2092. + # in the host overrides because configure will just change them back.
  2093. + # You either have to give an appropriate option to configure or live with
  2094. + # an Amiga specific patch to configure.  See the note in configure.  -fnf
  2095. + # Building under amigados almost certainly requires an already working gcc.
  2096. + # Use gccv, which is a gcc compiled with AMIGADOS_FORK_GCC so "-pipe" will
  2097. + # work and get exercised.  To bootstrap with the regular gcc just do
  2098. + # "make CC=gcc".  To bootstrap without "-pipe" do "make PIPE=".
  2099. + CC = gccv $(PIPE)
  2100. + # Disable -pipe for now since I had problems bootstrapping gcc 2.5.5 with
  2101. + # it. (fnf)
  2102. + #PIPE = -pipe
  2103. + # Allow the user to override the default host optimization with gcc, or if the
  2104. + # host compiler is not gcc and doesn't understand -O<N>.
  2105. + X_OPTIMIZE = -O2
  2106. + # The standard additional host flags for the compiler.
  2107. + X_CFLAGS = $(X_OPTIMIZE)
  2108. + # Man pages get a wierd suffix...
  2109. + manext = .0
  2110. + # We really shouldn't specify CFLAGS from here, but there's no other way
  2111. + # to get rid of the `-g' indoctrinated by Makefile.in.  Note this becomes
  2112. + # part of both the host compilation CFLAGS and the target compilation
  2113. + # CFLAGS.
  2114. + CFLAGS =
  2115. + # Ranlib does exist, but may not be in a path where the default RANLIB_TEST
  2116. + # expects it, so just force it to true.
  2117. + RANLIB_TEST = true
  2118. + # Until we can make sure no cross-device hardlinks are tried, and until
  2119. + # symlinks can be made in canonical amigados format (dev:path/file), just
  2120. + # use copy with timestamp preservation.  This only wastes some disk space
  2121. + # and means you have to reconfigure if you change any of the files that
  2122. + # would normally be linked to.  -fnf
  2123. + HARDLINK = cp -p
  2124. + SYMLINK = cp -p
  2125. + # Build supplimentary Amiga host support file.
  2126. + amigasup.o: amigasup.c
  2127. diff -rc --new-file gcc-2.6.3/config/m68k/xm-amigados.h /gnu/src/amiga/gcc-2.6.3/config/m68k/xm-amigados.h
  2128. *** gcc-2.6.3/config/m68k/xm-amigados.h    Thu Jan  1 00:00:00 1970
  2129. --- /gnu/src/amiga/gcc-2.6.3/config/m68k/xm-amigados.h    Sat Dec  3 15:02:07 1994
  2130. ***************
  2131. *** 0 ****
  2132. --- 1,218 ----
  2133. + /* Configuration for GNU C-compiler for Commodore Amiga, running AmigaDOS.
  2134. +    Copyright (C) 1992 Free Software Foundation, Inc.
  2135. +    Contributed by Markus M. Wild (wild@amiga.physik.unizh.ch).
  2136. + This file is part of GNU CC.
  2137. + GNU CC is free software; you can redistribute it and/or modify
  2138. + it under the terms of the GNU General Public License as published by
  2139. + the Free Software Foundation; either version 2, or (at your option)
  2140. + any later version.
  2141. + GNU CC is distributed in the hope that it will be useful,
  2142. + but WITHOUT ANY WARRANTY; without even the implied warranty of
  2143. + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  2144. + GNU General Public License for more details.
  2145. + You should have received a copy of the GNU General Public License
  2146. + along with GNU CC; see the file COPYING.  If not, write to
  2147. + the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  2148. + /* first include the generic header, then modify some parts.. */
  2149. + #include "m68k/xm-m68k.h"
  2150. + /* Amiga specific headers, such as from the Native Developer Update kits,
  2151. +    go in SYSTEM_INCLUDE_DIR.  STANDARD_INCLUDE_DIR is the equivalent of
  2152. +    Unix "/usr/include".  All other include paths are set in Makefile. */
  2153. + #define SYSTEM_INCLUDE_DIR    "/gnu/os-include"
  2154. + #define STANDARD_INCLUDE_DIR    "/gnu/include"
  2155. + /* Fork one piped subcommand.  SEARCH_FLAG is the system call to use
  2156. +    (either execv or execvp).  ARGV is the arg vector to use.
  2157. +    NOT_LAST is nonzero if this is not the last subcommand
  2158. +    (i.e. its output should be piped to the next one.)  */
  2159. + #ifndef AMIGADOS_FORK_GCC
  2160. + /* This version uses a more or less amigados-conformant way of running a
  2161. +    program (in the context of the parent). If you want to use -pipe however,
  2162. +    you'll have to use the vfork() version afterwards.
  2163. +    Phil.B: 29-May-94 quick hack (number 20 added to length) because xgcc
  2164. +    doesn't work.
  2165. +  */
  2166. + #define PEXECUTE(SEARCH_FLAG,PROGRAM,ARGV,NOT_LAST) \
  2167. + ({char *_argline;                        \
  2168. +   int _arglinelength, _i;                    \
  2169. +                                 \
  2170. +   for (_i = 1, _arglinelength=0; ARGV[_i]; ++_i)        \
  2171. +     _arglinelength += strlen(ARGV[_i]) + 1;            \
  2172. +                                 \
  2173. +   _arglinelength += strlen(PROGRAM) + 20 + 1;            \
  2174. +                                 \
  2175. +   if (!(_argline = (char *)alloca(_arglinelength)))         \
  2176. +     pfatal_with_name ("alloca");                \
  2177. +                                 \
  2178. +   strcpy(_argline, PROGRAM);                    \
  2179. +   for (_i = 1; ARGV[_i]; ++_i)                     \
  2180. +     {                                \
  2181. +       strcat(_argline, " ");                    \
  2182. +       strcat(_argline, ARGV[_i]);                \
  2183. +     }                                \
  2184. +                                 \
  2185. +   ssystem(_argline); })                        \
  2186. + #define PEXECUTE_RESULT(STATUS, COMMAND) \
  2187. +   ({ STATUS = COMMAND.pid; })
  2188. + #else
  2189. + /* the vfork() version. This one has the drawback, that gcc is not 
  2190. +    interruptible when started from make, since ixemul.library doesn't yet
  2191. +    propagate ^C to subprocesses. */
  2192. + #define PEXECUTE(SEARCH_FLAG,PROGRAM,ARGV,NOT_LAST) \
  2193. + ({int (*_func)() = (SEARCH_FLAG ? execv : execvp);            \
  2194. +   int _pid;                                \
  2195. +   int _pdes[2];                                \
  2196. +   int _input_desc = last_pipe_input;                    \
  2197. +   int _output_desc = STDOUT_FILE_NO;                    \
  2198. +   int _retries, _sleep_interval, _result;                \
  2199. +                                     \
  2200. +   /* If this isn't the last process, make a pipe for its output,    \
  2201. +      and record it as waiting to be the input to the next process.  */    \
  2202. +                                     \
  2203. +   if (NOT_LAST)                                \
  2204. +     {                                    \
  2205. +       if (pipe (_pdes) < 0)                        \
  2206. +     pfatal_with_name ("pipe");                    \
  2207. +       _output_desc = _pdes[WRITE_PORT];                    \
  2208. +       last_pipe_input = _pdes[READ_PORT];                \
  2209. +     }                                    \
  2210. +   else                                    \
  2211. +     last_pipe_input = STDIN_FILE_NO;                    \
  2212. +                                     \
  2213. +   /* Fork a subprocess; wait and retry if it fails.  */            \
  2214. +   _sleep_interval = 1;                            \
  2215. +   for (_retries = 0; _retries < 4; _retries++)                \
  2216. +     {                                    \
  2217. +       _pid = vfork ();                            \
  2218. +       if (_pid >= 0)                            \
  2219. +     break;                                \
  2220. +       sleep (_sleep_interval);                        \
  2221. +       _sleep_interval *= 2;                        \
  2222. +     }                                    \
  2223. +                                     \
  2224. +   switch (_pid)                                \
  2225. +     {                                    \
  2226. +     case -1:                                \
  2227. +       pfatal_with_name ("vfork");                    \
  2228. +       /* NOTREACHED */                            \
  2229. +       _result = 0;                            \
  2230. +       break;                                \
  2231. +                                     \
  2232. +     case 0: /* child */                            \
  2233. +       /* Move the input and output pipes into place, if nec.  */    \
  2234. +       if (_input_desc != STDIN_FILE_NO)                    \
  2235. +     {                                \
  2236. +       close (STDIN_FILE_NO);                    \
  2237. +       dup (_input_desc);                        \
  2238. +       close (_input_desc);                        \
  2239. +     }                                \
  2240. +       if (_output_desc != STDOUT_FILE_NO)                \
  2241. +     {                                \
  2242. +       close (STDOUT_FILE_NO);                    \
  2243. +       dup (_output_desc);                        \
  2244. +       close (_output_desc);                        \
  2245. +     }                                \
  2246. +                                     \
  2247. +       /* Close the parent's descs that aren't wanted here.  */        \
  2248. +       if (last_pipe_input != STDIN_FILE_NO)                \
  2249. +     close (last_pipe_input);                    \
  2250. +                                     \
  2251. +       /* Exec the program.  */                        \
  2252. +       (*_func) (PROGRAM, ARGV);                        \
  2253. +       perror_exec (PROGRAM);                        \
  2254. +       exit (-1);                            \
  2255. +       /* NOTREACHED */                            \
  2256. +       _result = 0;                            \
  2257. +       break;                                \
  2258. +                                     \
  2259. +     default:                                \
  2260. +       /* In the parent, after forking.                    \
  2261. +      Close the descriptors that we made for this child.  */        \
  2262. +       if (_input_desc != STDIN_FILE_NO)                    \
  2263. +     close (_input_desc);                        \
  2264. +       if (_output_desc != STDOUT_FILE_NO)                \
  2265. +     close (_output_desc);                        \
  2266. +                                     \
  2267. +       /* Return child's process number.  */                \
  2268. +       _result = _pid;                            \
  2269. +       break;                                \
  2270. +     }                                     \
  2271. + _result; })                                \
  2272. + #define PEXECUTE_RESULT(STATUS, COMMAND) \
  2273. +   ({ wait (& STATUS); })
  2274. + #endif /* AMIGADOS_FORK_GCC */
  2275. + /* the following macros are stolen more or less from xm-vms.h ... */
  2276. + /* This macro is used to help compare filenames in cp-lex.c.
  2277. +    We also need to make sure that the names are all lower case, because
  2278. +    we must be able to compare filenames to determine if a file implements
  2279. +    a class.  */
  2280. + #define FILE_NAME_NONDIRECTORY(C)                \
  2281. + ({                                \
  2282. +    extern char *rindex();                    \
  2283. +    char * pnt_ = (C), * pnt1_;                    \
  2284. +    pnt1_ = pnt_ - 1;                        \
  2285. +    while (*++pnt1_)                        \
  2286. +      if ((*pnt1_ >= 'A' && *pnt1_ <= 'Z')) *pnt1_ |= 0x20;    \
  2287. +    pnt1_ = rindex (pnt_, '/');                     \
  2288. +    pnt1_ = (pnt1_ == 0 ? rindex (pnt_, ':') : pnt1_);        \
  2289. +    (pnt1_ == 0 ? pnt_ : pnt1_ + 1);                \
  2290. +  })
  2291. + /* Macro to generate the name of the cross reference file.  The standard
  2292. +    one does not work, since it was written assuming that the conventions
  2293. +    of a unix style filesystem will work on the host system.
  2294. +  
  2295. +    Contrary to VMS, I'm using the original unix filename, there's no reason
  2296. +    not to use this under AmigaDOS. */
  2297. + #define XREF_FILE_NAME(BUFF, NAME)    \
  2298. +   s = FILE_NAME_NONDIRECTORY (NAME);            \
  2299. +   if (s == NAME) sprintf(BUFF, ".%s.gxref", NAME);    \
  2300. +   else {                        \
  2301. +     unsigned char ch = *s; /* could be Latin1 char.. */    \
  2302. +     /* temporary: cut the filename from the directory */\
  2303. +     *s = 0;                        \
  2304. +     sprintf (BUFF, "%s.%c%s.gxref", NAME, ch, s+1);    \
  2305. +     /* and restore the filename */            \
  2306. +     *s = ch;                        \
  2307. +   }                            \
  2308. + /* Macro that is used in cp-xref.c to determine whether a file name is
  2309. +    absolute or not.
  2310. +    This checks for both, '/' as first character, since we're running under
  2311. +    ixemul.library which provides for this unix'ism, and for the usual 
  2312. +    logical-terminator, ':', somewhere in the filename. */
  2313. + #define FILE_NAME_ABSOLUTE_P(NAME) (NAME[0] == '/' || index(NAME, ':'))
  2314. + /* the colon conflicts with the name space of logicals */
  2315. + #define PATH_SEPARATOR ','
  2316. + /* AmigaDOS handles rename(2) *much* better than any link(2)/unlink(2)
  2317. +    hacks. It's actually the inverse case as on Unix. rename(2) was always
  2318. +    there, link(2) is new with OS 2.0 */
  2319. + #define HAVE_rename 1
  2320. diff -rc --new-file gcc-2.6.3/configure /gnu/src/amiga/gcc-2.6.3/configure
  2321. *** gcc-2.6.3/configure    Wed Nov 23 22:26:27 1994
  2322. --- /gnu/src/amiga/gcc-2.6.3/configure    Fri Jan 13 16:09:25 1995
  2323. ***************
  2324. *** 4,9 ****
  2325. --- 4,13 ----
  2326.   
  2327.   #This file is part of GNU CC.
  2328.   
  2329. + # AmigaDOS Notes:  Where "echo" can be invoked with a first arg that
  2330. + # starts with '-', run the external echo instead, since the pdksh builtin
  2331. + # version botches this case.
  2332.   #GNU CC is free software; you can redistribute it and/or modify
  2333.   #it under the terms of the GNU General Public License as published by
  2334.   #the Free Software Foundation; either version 2, or (at your option)
  2335. ***************
  2336. *** 46,53 ****
  2337.   
  2338.   # Default --srcdir to the directory where the script is found, 
  2339.   # if a directory was specified.
  2340. ! # The second sed call is to convert `.//configure' to `./configure'.
  2341. ! srcdir=`echo $0 | sed 's|//|/|' | sed 's|/[^/]*$||'`
  2342.   if [ x$srcdir = x$0 ]
  2343.   then
  2344.   srcdir=
  2345. --- 50,59 ----
  2346.   
  2347.   # Default --srcdir to the directory where the script is found, 
  2348.   # if a directory was specified.
  2349. ! # The first sed call works around a bug in the AmigaDOS port of sksh, where
  2350. ! # $0 has a trailing slash appended to it.  It is a NOP for other systems.
  2351. ! # The third sed call is to convert `.//configure' to `./configure'.
  2352. ! srcdir=`echo $0 | sed 's|/$||' | sed 's|//|/|' | sed 's|/[^/]*$||'`
  2353.   if [ x$srcdir = x$0 ]
  2354.   then
  2355.   srcdir=
  2356. ***************
  2357. *** 55,70 ****
  2358.   
  2359.   host=
  2360.   
  2361. ! # Default prefix to /usr/local.
  2362. ! prefix=/usr/local
  2363.   
  2364. ! # local_prefix specifies where to find the directory /usr/local/include
  2365.   # We don't use $(prefix) for this
  2366. ! # because we always want GCC to search /usr/local/include
  2367. ! # even if GCC is installed somewhere other than /usr/local.
  2368.   # Think THREE TIMES before specifying any other value for this!
  2369.   # DO NOT make this use $prefix!
  2370. ! local_prefix=/usr/local
  2371.   # Default is to let the Makefile set exec_prefix from $(prefix)
  2372.   exec_prefix='$(prefix)'
  2373.   #
  2374. --- 61,86 ----
  2375.   
  2376.   host=
  2377.   
  2378. ! # Note:  For AmigaDOS we want this to default to /gnu unless we specify
  2379. ! # otherwise to configure.  We also don't want to have to remember to always
  2380. ! # configure with "--prefix=/gnu".  Changing it in Makefile.in or in
  2381. ! # config/m68k/x-amigados is ineffective since configure will always change
  2382. ! # it back in the final generated Makefile, so we have to go to the root of
  2383. ! # the problem, which is here.  There should be a way to do this in the
  2384. ! # individual machine configuration files!  -fnf
  2385. ! # here.  -fnf
  2386. ! # Default prefix to "/gnu".
  2387. ! prefix=/gnu
  2388.   
  2389. ! # local_prefix specifies where to find the directory /gnu/local/include
  2390.   # We don't use $(prefix) for this
  2391. ! # because we always want GCC to search /gnu/local/include
  2392. ! # even if GCC is installed somewhere other than /gnu/local.
  2393.   # Think THREE TIMES before specifying any other value for this!
  2394.   # DO NOT make this use $prefix!
  2395. ! # Note:  See AmigaDOS note above for this AmigaDOS specific change.  -fnf
  2396. ! # NoteII:We don't want to have yet-another-assign so we use /gnu/local
  2397. ! local_prefix=/gnu/local
  2398.   # Default is to let the Makefile set exec_prefix from $(prefix)
  2399.   exec_prefix='$(prefix)'
  2400.   #
  2401. ***************
  2402. *** 72,79 ****
  2403.   gxx_include_dir='$(libdir)/g++-include'
  2404.   
  2405.   remove=rm
  2406. ! hard_link=ln
  2407. ! symbolic_link='ln -s'
  2408.   copy=cp
  2409.   
  2410.   # Record all the arguments, to write them in config.status.
  2411. --- 88,100 ----
  2412.   gxx_include_dir='$(libdir)/g++-include'
  2413.   
  2414.   remove=rm
  2415. ! # AmigaDOS specific change.  Although we support symbolic links using
  2416. ! # the GNU tools, they need to be made using the syntax "somewhere:foo/bar"
  2417. ! # and not "/somewhere/foo/bar", since they must be in standard AmigaDOS
  2418. ! # format.  This should probably be done by having GNU ln translate paths
  2419. ! # that start with '/' to canonical AmigaDOS device:name form.
  2420. ! hard_link=cp
  2421. ! symbolic_link=cp
  2422.   copy=cp
  2423.   
  2424.   # Record all the arguments, to write them in config.status.
  2425. ***************
  2426. *** 141,171 ****
  2427.       next_arg=--srcdir
  2428.       ;;
  2429.        -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
  2430. !     srcdir=`echo $arg | sed 's/-*s[a-z]*=//'`
  2431.       ;;
  2432.        -host | --host | --hos | --ho)
  2433.       next_arg=--host
  2434.       ;;
  2435.        -host=* | --host=* | --hos=* | --ho=*)
  2436. !     host=`echo $arg | sed 's/-*h[a-z]*=//'`
  2437.       ;; 
  2438.        -target | --target | --targe | --targ | --tar | --ta | --t)
  2439.       next_arg=--target
  2440.       ;;
  2441.        -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
  2442. !     target=`echo $arg | sed 's/-*t[a-z]*=//'`
  2443.       ;; 
  2444.        -build | --build | --buil | --bui | --bu | --b)
  2445.       next_arg=--build
  2446.       ;;
  2447.        -build=* | --build=* | --buil=* | --bui=* | --bu=* | --b=*)
  2448. !     build=`echo $arg | sed 's/-*b[a-z]*=//'`
  2449.       ;; 
  2450.        -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
  2451.       next_arg=--prefix
  2452.       ;;
  2453.        -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
  2454. !     prefix=`echo $arg | sed 's/-*p[a-z]*=//'`
  2455.       ;;
  2456.        -local-prefix | --local-prefix | --local-prefi | --local-pref | --local-pre \
  2457.       | --local-pr | --local-p | --local- | --local | --loc | --lo | --l)
  2458. --- 162,192 ----
  2459.       next_arg=--srcdir
  2460.       ;;
  2461.        -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
  2462. !     srcdir=`/bin/echo $arg | sed 's/-*s[a-z]*=//'`
  2463.       ;;
  2464.        -host | --host | --hos | --ho)
  2465.       next_arg=--host
  2466.       ;;
  2467.        -host=* | --host=* | --hos=* | --ho=*)
  2468. !     host=`/bin/echo $arg | sed 's/-*h[a-z]*=//'`
  2469.       ;; 
  2470.        -target | --target | --targe | --targ | --tar | --ta | --t)
  2471.       next_arg=--target
  2472.       ;;
  2473.        -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
  2474. !     target=`/bin/echo $arg | sed 's/-*t[a-z]*=//'`
  2475.       ;; 
  2476.        -build | --build | --buil | --bui | --bu | --b)
  2477.       next_arg=--build
  2478.       ;;
  2479.        -build=* | --build=* | --buil=* | --bui=* | --bu=* | --b=*)
  2480. !     build=`/bin/echo $arg | sed 's/-*b[a-z]*=//'`
  2481.       ;; 
  2482.        -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
  2483.       next_arg=--prefix
  2484.       ;;
  2485.        -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
  2486. !     prefix=`/bin/echo $arg | sed 's/-*p[a-z]*=//'`
  2487.       ;;
  2488.        -local-prefix | --local-prefix | --local-prefi | --local-pref | --local-pre \
  2489.       | --local-pr | --local-p | --local- | --local | --loc | --lo | --l)
  2490. ***************
  2491. *** 174,180 ****
  2492.        -local-prefix=* | --local-prefix=* | --local-prefi=* | --local-pref=* \
  2493.       | --local-pre=* | --local-pr=* | --local-p=* | --local-=* | --local=* \
  2494.       | --loc=* | --lo=* | --l=*)
  2495. !     local_prefix=`echo $arg | sed 's/-*l[-a-z]*=//'`
  2496.       ;;
  2497.        -gxx-include-dir | --gxx-include-dir | --gxx-include \
  2498.       | --gxx-incl | --gxx-inc | --gxx-in | --gxx-i | --gxx- \
  2499. --- 195,201 ----
  2500.        -local-prefix=* | --local-prefix=* | --local-prefi=* | --local-pref=* \
  2501.       | --local-pre=* | --local-pr=* | --local-p=* | --local-=* | --local=* \
  2502.       | --loc=* | --lo=* | --l=*)
  2503. !     local_prefix=`/bin/echo $arg | sed 's/-*l[-a-z]*=//'`
  2504.       ;;
  2505.        -gxx-include-dir | --gxx-include-dir | --gxx-include \
  2506.       | --gxx-incl | --gxx-inc | --gxx-in | --gxx-i | --gxx- \
  2507. ***************
  2508. *** 184,190 ****
  2509.        -gxx-include-dir=* | --gxx-include-dir=* | --gxx-include=* \
  2510.       | --gxx-incl=* | --gxx-inc=* | --gxx-in=* | --gxx-i=* \
  2511.       | --gxx-=* | --gxx=* | --gxx=* | --gxx=* | --g=*)
  2512. !     gxx_include_dir=`echo $arg | sed 's/-*g[-a-z]*=//'`
  2513.       ;;
  2514.        -exec-prefix | --exec-prefix | --exec-prefi | --exec-pref | --exec-pre \
  2515.       | --exec-pr | --exec-p | --exec- | --exec | --exe | --ex | --e)
  2516. --- 205,211 ----
  2517.        -gxx-include-dir=* | --gxx-include-dir=* | --gxx-include=* \
  2518.       | --gxx-incl=* | --gxx-inc=* | --gxx-in=* | --gxx-i=* \
  2519.       | --gxx-=* | --gxx=* | --gxx=* | --gxx=* | --g=*)
  2520. !     gxx_include_dir=`/bin/echo $arg | sed 's/-*g[-a-z]*=//'`
  2521.       ;;
  2522.        -exec-prefix | --exec-prefix | --exec-prefi | --exec-pref | --exec-pre \
  2523.       | --exec-pr | --exec-p | --exec- | --exec | --exe | --ex | --e)
  2524. ***************
  2525. *** 193,199 ****
  2526.        -exec-prefix=* | --exec-prefix=* | --exec-prefi=* | --exec-pref=* \
  2527.       | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* | --exec=* \
  2528.       | --exe=* | --ex=* | --e=*)
  2529. !     exec_prefix=`echo $arg | sed 's/-*e[-a-z]*=//'`
  2530.       ;;
  2531.        -with-gnu-ld | --with-gnu-ld | --with-gnu-l)
  2532.       gnu_ld=yes
  2533. --- 214,220 ----
  2534.        -exec-prefix=* | --exec-prefix=* | --exec-prefi=* | --exec-pref=* \
  2535.       | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* | --exec=* \
  2536.       | --exe=* | --ex=* | --e=*)
  2537. !     exec_prefix=`/bin/echo $arg | sed 's/-*e[-a-z]*=//'`
  2538.       ;;
  2539.        -with-gnu-ld | --with-gnu-ld | --with-gnu-l)
  2540.       gnu_ld=yes
  2541. ***************
  2542. *** 389,395 ****
  2543.       use_collect2=
  2544.       # Set this to override the default target model.
  2545.       target_cpu_default=
  2546. !     # Set this to force use of install.sh.
  2547.       broken_install=
  2548.       # Set this to control which fixincludes program to use.
  2549.       fixincludes=fixincludes
  2550. --- 410,417 ----
  2551.       use_collect2=
  2552.       # Set this to override the default target model.
  2553.       target_cpu_default=
  2554. !     # Set this to force use of install.sh (if set to 'yes')
  2555. !     # Set to name of installer to use a custom installer.
  2556.       broken_install=
  2557.       # Set this to control which fixincludes program to use.
  2558.       fixincludes=fixincludes
  2559. ***************
  2560. *** 1097,1102 ****
  2561. --- 1119,1134 ----
  2562.           use_collect2=yes
  2563.           header_files=math-68881.h
  2564.           ;;
  2565. +     m68k-*-amigados)
  2566. +         xm_file=m68k/xm-amigados.h
  2567. +         out_file=m68k/amigados.c
  2568. +         tm_file=m68k/amigados.h
  2569. +         tmake_file=m68k/t-amigados
  2570. +         xmake_file=m68k/x-amigados
  2571. +         fixincludes=Makefile.in # Headers are already fixed.
  2572. +         broken_install=cp
  2573. +         install_headers_dir=install-headers-cp
  2574. +         ;;
  2575.       m68k-cbm-sysv4*)        # Commodore variant of V.4.
  2576.           tm_file=m68k/amix.h
  2577.           xm_file=m68k/xm-amix.h
  2578. ***************
  2579. *** 2116,2123 ****
  2580.       then true
  2581.       else
  2582.           rm -f Makefile.xx
  2583. !         abssrcdir=`cd ${srcdir}; pwd`
  2584. !         sed "s|^INSTALL = .*|INSTALL = ${abssrcdir}/install.sh -c|" Makefile.tem > Makefile.xx
  2585.           rm -f Makefile.tem
  2586.           mv Makefile.xx Makefile.tem
  2587.       fi
  2588. --- 2148,2161 ----
  2589.       then true
  2590.       else
  2591.           rm -f Makefile.xx
  2592. !          if [ x$host_broken_install = xyes ]
  2593. !          then
  2594. !              abssrcdir=`cd ${srcdir}; pwd`
  2595. !              installer="${abssrcdir}/install.sh -c"
  2596. !          else
  2597. !              installer=$host_broken_install
  2598. !          fi
  2599. !          sed "s|^INSTALL = .*|INSTALL = ${installer}|" Makefile.tem > Makefile.xx
  2600.           rm -f Makefile.tem
  2601.           mv Makefile.xx Makefile.tem
  2602.       fi
  2603. ***************
  2604. *** 2336,2345 ****
  2605.           rm -f symtest.tem
  2606.           if $symbolic_link symtest1.tem symtest.tem 2>/dev/null
  2607.           then
  2608. !             sed -e 's,CC=set-by-configure,CC=$(CC),' \
  2609.                   Makefile.tem > Makefile.xx
  2610.           else
  2611. !             sed -e "s,CC=set-by-configure,CC=\`case '$(CC)' in stage*) echo '$(CC)' | sed -e 's|stage|../stage|g';; *) echo '$(CC)';; esac\`," \
  2612.                   Makefile.tem > Makefile.xx
  2613.           fi
  2614.           rm -f Makefile.tem
  2615. --- 2374,2383 ----
  2616.           rm -f symtest.tem
  2617.           if $symbolic_link symtest1.tem symtest.tem 2>/dev/null
  2618.           then
  2619. !             sed -e 's,CC=set-by-configure,CC=\$(CC),' \
  2620.                   Makefile.tem > Makefile.xx
  2621.           else
  2622. !             sed -e "s,CC=set-by-configure,CC=\`case '\$(CC)' in stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`," \
  2623.                   Makefile.tem > Makefile.xx
  2624.           fi
  2625.           rm -f Makefile.tem
  2626. diff -rc --new-file gcc-2.6.3/cp/parse.c /gnu/src/amiga/gcc-2.6.3/cp/parse.c
  2627. *** gcc-2.6.3/cp/parse.c    Fri Oct 14 18:51:23 1994
  2628. --- /gnu/src/amiga/gcc-2.6.3/cp/parse.c    Thu Dec 22 21:42:55 1994
  2629. ***************
  2630. *** 184,196 ****
  2631.   
  2632.   #ifndef __cplusplus
  2633.   #ifndef __STDC__
  2634.   #define const
  2635.   #endif
  2636.   #endif
  2637.   
  2638.   
  2639.   
  2640. ! #define    YYFINAL        1356
  2641.   #define    YYFLAG        -32768
  2642.   #define    YYNTBASE    106
  2643.   
  2644. --- 184,198 ----
  2645.   
  2646.   #ifndef __cplusplus
  2647.   #ifndef __STDC__
  2648. + #ifndef const
  2649.   #define const
  2650.   #endif
  2651.   #endif
  2652. + #endif
  2653.   
  2654.   
  2655.   
  2656. ! #define    YYFINAL        1350
  2657.   #define    YYFLAG        -32768
  2658.   #define    YYNTBASE    106
  2659.   
  2660. ***************
  2661. *** 257,315 ****
  2662.      630,   635,   640,   642,   646,   650,   654,   658,   662,   666,
  2663.      670,   674,   678,   682,   686,   690,   694,   698,   702,   706,
  2664.      710,   714,   718,   724,   728,   732,   734,   737,   741,   743,
  2665. !    745,   747,   749,   751,   753,   755,   758,   761,   765,   767,
  2666. !    769,   771,   775,   777,   779,   781,   783,   787,   791,   792,
  2667. !    797,   798,   805,   808,   813,   816,   819,   821,   826,   828,
  2668. !    836,   844,   852,   860,   865,   870,   873,   876,   878,   883,
  2669. !    886,   889,   892,   898,   902,   908,   912,   917,   924,   926,
  2670. !    929,   931,   934,   936,   938,   940,   943,   944,   947,   950,
  2671. !    954,   958,   962,   966,   970,   973,   976,   978,   980,   982,
  2672. !    985,   988,   991,   994,   996,   998,  1000,  1002,  1005,  1008,
  2673. !   1012,  1016,  1021,  1023,  1026,  1029,  1031,  1033,  1036,  1039,
  2674. !   1041,  1044,  1047,  1051,  1053,  1056,  1058,  1060,  1062,  1067,
  2675. !   1072,  1077,  1082,  1084,  1086,  1088,  1090,  1094,  1096,  1100,
  2676. !   1102,  1106,  1107,  1112,  1113,  1121,  1126,  1127,  1135,  1140,
  2677. !   1141,  1149,  1154,  1155,  1163,  1168,  1169,  1171,  1173,  1176,
  2678. !   1183,  1185,  1189,  1190,  1192,  1197,  1204,  1209,  1211,  1213,
  2679. !   1215,  1217,  1219,  1223,  1225,  1228,  1232,  1237,  1239,  1241,
  2680. !   1245,  1250,  1257,  1261,  1267,  1268,  1276,  1281,  1282,  1289,
  2681. !   1293,  1296,  1299,  1304,  1306,  1307,  1309,  1310,  1312,  1314,
  2682. !   1317,  1320,  1323,  1326,  1330,  1333,  1336,  1339,  1343,  1347,
  2683. !   1349,  1352,  1353,  1354,  1358,  1362,  1365,  1367,  1369,  1370,
  2684. !   1372,  1375,  1377,  1381,  1383,  1386,  1388,  1393,  1398,  1400,
  2685. !   1402,  1405,  1408,  1410,  1411,  1413,  1418,  1422,  1424,  1427,
  2686. !   1430,  1433,  1436,  1439,  1442,  1445,  1448,  1453,  1456,  1458,
  2687. !   1464,  1468,  1469,  1471,  1475,  1476,  1478,  1482,  1484,  1486,
  2688. !   1488,  1490,  1495,  1502,  1507,  1512,  1519,  1524,  1528,  1533,
  2689. !   1540,  1545,  1550,  1557,  1562,  1566,  1568,  1572,  1574,  1578,
  2690. !   1581,  1583,  1590,  1591,  1594,  1596,  1599,  1600,  1603,  1607,
  2691. !   1611,  1614,  1617,  1621,  1623,  1625,  1627,  1630,  1636,  1642,
  2692. !   1646,  1652,  1657,  1661,  1665,  1668,  1670,  1674,  1678,  1681,
  2693. !   1684,  1688,  1690,  1694,  1698,  1701,  1704,  1708,  1710,  1716,
  2694. !   1722,  1726,  1732,  1736,  1741,  1745,  1748,  1751,  1753,  1756,
  2695. !   1761,  1766,  1769,  1771,  1773,  1775,  1778,  1781,  1784,  1786,
  2696. !   1789,  1791,  1794,  1797,  1801,  1803,  1807,  1810,  1814,  1817,
  2697. !   1820,  1824,  1826,  1830,  1835,  1839,  1842,  1845,  1847,  1851,
  2698. !   1854,  1857,  1859,  1862,  1866,  1868,  1872,  1874,  1880,  1884,
  2699. !   1889,  1893,  1898,  1901,  1904,  1908,  1911,  1913,  1915,  1918,
  2700. !   1921,  1924,  1925,  1926,  1928,  1930,  1933,  1937,  1939,  1942,
  2701. !   1946,  1952,  1959,  1965,  1966,  1967,  1974,  1976,  1979,  1981,
  2702. !   1983,  1985,  1988,  1989,  1994,  1996,  1997,  1998,  2005,  2006,
  2703. !   2007,  2015,  2016,  2017,  2018,  2029,  2030,  2031,  2032,  2043,
  2704. !   2044,  2052,  2053,  2059,  2060,  2068,  2069,  2074,  2077,  2080,
  2705. !   2083,  2087,  2094,  2103,  2114,  2127,  2132,  2136,  2139,  2142,
  2706. !   2144,  2146,  2147,  2148,  2156,  2158,  2161,  2164,  2165,  2166,
  2707. !   2172,  2174,  2176,  2180,  2184,  2187,  2190,  2193,  2197,  2202,
  2708. !   2207,  2211,  2216,  2223,  2230,  2231,  2233,  2234,  2236,  2238,
  2709. !   2239,  2241,  2243,  2247,  2252,  2254,  2258,  2259,  2261,  2263,
  2710. !   2265,  2268,  2271,  2274,  2276,  2278,  2281,  2284,  2287,  2290,
  2711. !   2292,  2296,  2299,  2302,  2307,  2310,  2313,  2316,  2319,  2322,
  2712. !   2325,  2327,  2330,  2332,  2336,  2338,  2340,  2341,  2342,  2344,
  2713. !   2345,  2350,  2352,  2354,  2358,  2359,  2363,  2367,  2371,  2373,
  2714. !   2376,  2379,  2382,  2385,  2388,  2391,  2394,  2397,  2400,  2403,
  2715. !   2406,  2409,  2412,  2415,  2418,  2421,  2424,  2427,  2430,  2433,
  2716. !   2436,  2439,  2442,  2446,  2449,  2452,  2455,  2458,  2462,  2465,
  2717. !   2468,  2473,  2478,  2482
  2718.   };
  2719.   
  2720.   static const short yyrhs[] = {    -1,
  2721. --- 259,317 ----
  2722.      630,   635,   640,   642,   646,   650,   654,   658,   662,   666,
  2723.      670,   674,   678,   682,   686,   690,   694,   698,   702,   706,
  2724.      710,   714,   718,   724,   728,   732,   734,   737,   741,   743,
  2725. !    745,   747,   749,   751,   753,   755,   758,   761,   763,   765,
  2726. !    767,   769,   771,   773,   775,   779,   783,   784,   789,   790,
  2727. !    797,   800,   805,   808,   811,   813,   818,   820,   828,   836,
  2728. !    844,   852,   857,   862,   865,   868,   870,   875,   878,   881,
  2729. !    884,   890,   894,   900,   904,   909,   916,   918,   921,   923,
  2730. !    926,   928,   930,   932,   935,   936,   939,   942,   946,   950,
  2731. !    954,   958,   962,   965,   968,   970,   972,   974,   977,   980,
  2732. !    983,   986,   988,   990,   992,   994,   997,  1000,  1004,  1008,
  2733. !   1013,  1015,  1018,  1021,  1023,  1025,  1028,  1031,  1033,  1036,
  2734. !   1039,  1043,  1045,  1048,  1050,  1052,  1054,  1059,  1064,  1069,
  2735. !   1074,  1076,  1078,  1080,  1082,  1086,  1088,  1092,  1094,  1098,
  2736. !   1099,  1104,  1105,  1113,  1118,  1119,  1127,  1132,  1133,  1141,
  2737. !   1146,  1147,  1155,  1160,  1161,  1163,  1165,  1168,  1175,  1177,
  2738. !   1181,  1182,  1184,  1189,  1196,  1201,  1203,  1205,  1207,  1209,
  2739. !   1211,  1215,  1217,  1220,  1224,  1229,  1231,  1233,  1237,  1242,
  2740. !   1249,  1253,  1259,  1260,  1268,  1273,  1274,  1281,  1285,  1288,
  2741. !   1291,  1296,  1298,  1299,  1301,  1302,  1304,  1306,  1309,  1312,
  2742. !   1315,  1318,  1322,  1325,  1328,  1331,  1335,  1339,  1341,  1344,
  2743. !   1345,  1346,  1350,  1354,  1357,  1359,  1361,  1362,  1364,  1367,
  2744. !   1369,  1373,  1375,  1378,  1380,  1385,  1390,  1392,  1394,  1397,
  2745. !   1400,  1402,  1403,  1405,  1410,  1414,  1416,  1419,  1422,  1425,
  2746. !   1428,  1431,  1434,  1437,  1440,  1445,  1448,  1450,  1456,  1460,
  2747. !   1461,  1463,  1467,  1468,  1470,  1474,  1476,  1478,  1480,  1482,
  2748. !   1487,  1494,  1499,  1504,  1511,  1516,  1520,  1525,  1532,  1537,
  2749. !   1542,  1549,  1554,  1558,  1560,  1564,  1566,  1570,  1573,  1575,
  2750. !   1582,  1583,  1586,  1588,  1591,  1592,  1595,  1599,  1603,  1606,
  2751. !   1609,  1613,  1615,  1617,  1619,  1622,  1628,  1634,  1638,  1644,
  2752. !   1649,  1653,  1657,  1660,  1662,  1666,  1670,  1673,  1676,  1680,
  2753. !   1682,  1686,  1690,  1693,  1696,  1700,  1702,  1708,  1714,  1718,
  2754. !   1724,  1728,  1732,  1737,  1741,  1744,  1747,  1749,  1752,  1757,
  2755. !   1762,  1765,  1767,  1769,  1771,  1774,  1777,  1780,  1782,  1785,
  2756. !   1787,  1790,  1793,  1797,  1799,  1803,  1806,  1810,  1813,  1816,
  2757. !   1820,  1822,  1826,  1831,  1835,  1838,  1841,  1843,  1847,  1850,
  2758. !   1853,  1855,  1858,  1862,  1864,  1868,  1870,  1876,  1880,  1885,
  2759. !   1889,  1894,  1897,  1900,  1904,  1907,  1909,  1911,  1914,  1917,
  2760. !   1920,  1921,  1922,  1924,  1926,  1929,  1933,  1935,  1938,  1942,
  2761. !   1948,  1955,  1961,  1962,  1963,  1970,  1972,  1975,  1977,  1979,
  2762. !   1981,  1984,  1985,  1990,  1992,  1993,  1994,  2001,  2002,  2003,
  2763. !   2011,  2012,  2013,  2014,  2025,  2026,  2027,  2028,  2039,  2040,
  2764. !   2048,  2049,  2055,  2056,  2064,  2065,  2070,  2073,  2076,  2079,
  2765. !   2083,  2090,  2099,  2110,  2123,  2128,  2132,  2135,  2138,  2140,
  2766. !   2142,  2143,  2144,  2152,  2154,  2157,  2160,  2161,  2162,  2168,
  2767. !   2170,  2172,  2176,  2180,  2183,  2186,  2189,  2193,  2198,  2203,
  2768. !   2207,  2212,  2219,  2226,  2227,  2229,  2230,  2232,  2234,  2235,
  2769. !   2237,  2239,  2243,  2248,  2250,  2254,  2255,  2257,  2259,  2261,
  2770. !   2264,  2267,  2270,  2272,  2274,  2277,  2280,  2283,  2286,  2288,
  2771. !   2292,  2295,  2298,  2303,  2306,  2309,  2312,  2315,  2318,  2321,
  2772. !   2323,  2326,  2328,  2332,  2334,  2336,  2337,  2338,  2340,  2341,
  2773. !   2346,  2348,  2350,  2354,  2355,  2359,  2363,  2367,  2369,  2372,
  2774. !   2375,  2378,  2381,  2384,  2387,  2390,  2393,  2396,  2399,  2402,
  2775. !   2405,  2408,  2411,  2414,  2417,  2420,  2423,  2426,  2429,  2432,
  2776. !   2435,  2438,  2442,  2445,  2448,  2451,  2454,  2458,  2461,  2464,
  2777. !   2469,  2474,  2478
  2778.   };
  2779.   
  2780.   static const short yyrhs[] = {    -1,
  2781. ***************
  2782. *** 389,567 ****
  2783.        0,    92,     0,    92,   169,     0,    83,   330,   139,     0,
  2784.      337,     0,     3,     0,    53,     0,   170,     0,     4,     0,
  2785.      170,     0,   263,     0,    75,   172,     0,    65,   172,     0,
  2786. !     88,   172,   102,     0,   261,     0,   170,     0,   263,     0,
  2787. !     88,   172,   102,     0,   170,     0,     8,     0,   179,     0,
  2788. !    180,     0,    88,   153,   102,     0,    88,     1,   102,     0,
  2789. !      0,    88,   175,   284,   102,     0,     0,   174,    88,   161,
  2790. !    102,   176,   151,     0,   174,    44,     0,   174,    89,   153,
  2791. !    105,     0,   174,    81,     0,   174,    82,     0,    40,     0,
  2792. !      7,    88,   161,   102,     0,   265,     0,    47,    69,   186,
  2793. !     70,    88,   153,   102,     0,    48,    69,   186,    70,    88,
  2794. !    153,   102,     0,    49,    69,   186,    70,    88,   153,   102,
  2795. !      0,    50,    69,   186,    70,    88,   153,   102,     0,    46,
  2796. !     88,   153,   102,     0,    46,    88,   186,   102,     0,   272,
  2797. !      3,     0,   272,   337,     0,   264,     0,   264,    88,   161,
  2798. !    102,     0,   264,    44,     0,   182,   171,     0,   182,   262,
  2799. !      0,   182,   171,    88,   161,   102,     0,   182,   171,    44,
  2800. !      0,   182,   262,    88,   161,   102,     0,   182,   262,    44,
  2801. !      0,   182,    83,     6,    44,     0,   182,     6,    51,    83,
  2802. !      6,    44,     0,    38,     0,   272,    38,     0,    37,     0,
  2803. !    272,   178,     0,    42,     0,    43,     0,     9,     0,   180,
  2804. !      9,     0,     0,   174,    87,     0,   174,    86,     0,   193,
  2805. !    184,    56,     0,   187,   184,    56,     0,   193,   195,    56,
  2806. !      0,   187,   195,    56,     0,   190,   196,    56,     0,   187,
  2807. !     56,     0,   190,    56,     0,   255,     0,   259,     0,    44,
  2808. !      0,   185,    44,     0,   191,   275,     0,   252,   275,     0,
  2809. !    193,   275,     0,   191,     0,   252,     0,   191,     0,   188,
  2810. !      0,   190,   193,     0,   193,   189,     0,   190,   193,   189,
  2811. !      0,   190,   193,   192,     0,   190,   193,   192,   189,     0,
  2812. !      5,     0,   189,   194,     0,   189,     5,     0,   252,     0,
  2813. !      5,     0,   190,     7,     0,   190,     5,     0,   193,     0,
  2814. !    252,   193,     0,   193,   192,     0,   252,   193,   192,     0,
  2815. !    194,     0,   192,   194,     0,   216,     0,     6,     0,   269,
  2816. !      0,    27,    88,   153,   102,     0,    27,    88,   186,   102,
  2817. !      0,    31,    88,   153,   102,     0,    31,    88,   186,   102,
  2818. !      0,     6,     0,     7,     0,   216,     0,   199,     0,   195,
  2819. !     55,   201,     0,   203,     0,   196,    55,   201,     0,   205,
  2820. !      0,   197,    55,   201,     0,     0,   111,    88,   180,   102,
  2821. !      0,     0,   184,   332,   198,   207,    58,   200,   214,     0,
  2822. !    184,   332,   198,   207,     0,     0,   184,   332,   198,   207,
  2823. !     58,   202,   214,     0,   184,   332,   198,   207,     0,     0,
  2824. !    259,   332,   198,   207,    58,   204,   214,     0,   259,   332,
  2825. !    198,   207,     0,     0,   259,   332,   198,   207,    58,   206,
  2826. !    214,     0,   259,   332,   198,   207,     0,     0,   208,     0,
  2827. !    209,     0,   208,   209,     0,    32,    88,    88,   210,   102,
  2828. !    102,     0,   211,     0,   210,    55,   211,     0,     0,   212,
  2829. !      0,   212,    88,     3,   102,     0,   212,    88,     3,    55,
  2830. !    161,   102,     0,   212,    88,   161,   102,     0,   139,     0,
  2831. !      5,     0,     6,     0,     7,     0,   139,     0,   213,    55,
  2832. !    139,     0,   169,     0,    54,   103,     0,    54,   215,   103,
  2833. !      0,    54,   215,    55,   103,     0,     1,     0,   214,     0,
  2834. !    215,    55,   214,     0,    89,   169,   105,   214,     0,   215,
  2835. !     55,    19,   169,    60,   214,     0,   139,    60,   214,     0,
  2836. !    215,    55,   139,    60,   214,     0,     0,    12,   139,    54,
  2837. !    217,   248,   220,   103,     0,    12,   139,    54,   103,     0,
  2838. !      0,    12,    54,   218,   248,   220,   103,     0,    12,    54,
  2839. !    103,     0,    12,   139,     0,    12,   270,     0,   229,   235,
  2840. !    236,   103,     0,   229,     0,     0,    55,     0,     0,    55,
  2841. !      0,    35,     0,   221,     5,     0,   221,     6,     0,   221,
  2842. !      7,     0,   221,    35,     0,   221,   144,    56,     0,   221,
  2843. !    139,     0,   221,   270,     0,   221,   143,     0,   221,   144,
  2844. !     54,     0,   221,   144,    60,     0,   222,     0,   221,   141,
  2845. !      0,     0,     0,   223,   225,   230,     0,   224,   226,   230,
  2846. !      0,   221,    54,     0,   228,     0,   227,     0,     0,    60,
  2847. !      0,    60,   231,     0,   232,     0,   231,    55,   232,     0,
  2848. !    233,     0,   234,   233,     0,   269,     0,    31,    88,   153,
  2849. !    102,     0,    31,    88,   186,   102,     0,    36,     0,     5,
  2850. !      0,   234,    36,     0,   234,     5,     0,    54,     0,     0,
  2851. !    237,     0,   236,    36,    60,   237,     0,   236,    36,    60,
  2852. !      0,   238,     0,   237,   238,     0,   237,    56,     0,   239,
  2853. !     56,     0,   239,   103,     0,   132,    60,     0,   132,    54,
  2854. !      0,   187,   240,     0,   190,   241,     0,   259,   332,   198,
  2855. !    207,     0,    60,   169,     0,     1,     0,   187,    88,   323,
  2856. !    102,   251,     0,   187,    44,   251,     0,     0,   242,     0,
  2857. !    240,    55,   243,     0,     0,   245,     0,   241,    55,   247,
  2858. !      0,   244,     0,   245,     0,   246,     0,   247,     0,   255,
  2859.      332,   198,   207,     0,   255,   332,   198,   207,    58,   214,
  2860.        0,     4,    60,   169,   207,     0,   259,   332,   198,   207,
  2861.        0,   259,   332,   198,   207,    58,   214,     0,     3,    60,
  2862. !    169,   207,     0,    60,   169,   207,     0,   255,   332,   198,
  2863. !    207,     0,   255,   332,   198,   207,    58,   214,     0,     4,
  2864. !     60,   169,   207,     0,   259,   332,   198,   207,     0,   259,
  2865. !    332,   198,   207,    58,   214,     0,     3,    60,   169,   207,
  2866. !      0,    60,   169,   207,     0,   249,     0,   248,    55,   249,
  2867. !      0,   139,     0,   139,    58,   169,     0,   312,   273,     0,
  2868. !    312,     0,    88,   186,   102,    89,   153,   105,     0,     0,
  2869. !    251,     7,     0,     7,     0,   252,     7,     0,     0,   254,
  2870. !    153,     0,    75,   252,   255,     0,    65,   252,   255,     0,
  2871. !     75,   255,     0,    65,   255,     0,   271,   251,   255,     0,
  2872. !    258,     0,   266,     0,   257,     0,   267,   266,     0,   258,
  2873. !     88,   161,   102,   251,     0,   258,    88,   323,   102,   251,
  2874. !      0,   258,    44,   251,     0,   258,    88,     1,   102,   251,
  2875. !      0,   258,    89,   253,   105,     0,   258,    89,   105,     0,
  2876. !     88,   255,   102,     0,   267,   266,     0,   266,     0,    75,
  2877. !    252,   259,     0,    65,   252,   259,     0,    75,   259,     0,
  2878. !     65,   259,     0,   271,   251,   259,     0,   173,     0,    75,
  2879. !    252,   259,     0,    65,   252,   259,     0,    75,   260,     0,
  2880. !     65,   260,     0,   271,   251,   259,     0,   261,     0,   173,
  2881. !     88,   161,   102,   251,     0,   173,    88,   323,   102,   251,
  2882. !      0,   173,    44,   251,     0,   173,    88,     1,   102,   251,
  2883. !      0,    88,   260,   102,     0,   173,    89,   253,   105,     0,
  2884. !    173,    89,   105,     0,   267,   171,     0,   267,   170,     0,
  2885. !    263,     0,   272,   263,     0,   193,    88,   161,   102,     0,
  2886. !    193,    88,   172,   102,     0,   193,   185,     0,     4,     0,
  2887. !    143,     0,   268,     0,   267,   268,     0,     4,    51,     0,
  2888. !    143,    51,     0,   256,     0,   272,   256,     0,   257,     0,
  2889. !    272,   256,     0,   267,    75,     0,   272,   267,    75,     0,
  2890. !     51,     0,    75,   251,   273,     0,    75,   251,     0,    65,
  2891. !    251,   273,     0,    65,   251,     0,   271,   251,     0,   271,
  2892. !    251,   273,     0,   274,     0,    89,   153,   105,     0,   274,
  2893. !     89,   253,   105,     0,    75,   252,   275,     0,    75,   275,
  2894. !      0,    75,   252,     0,    75,     0,    65,   252,   275,     0,
  2895. !     65,   275,     0,    65,   252,     0,    65,     0,   271,   251,
  2896. !      0,   271,   251,   275,     0,   276,     0,    88,   275,   102,
  2897. !      0,    85,     0,   276,    88,   323,   102,   251,     0,   276,
  2898. !     44,   251,     0,   276,    89,   253,   105,     0,   276,    89,
  2899. !    105,     0,    88,   324,   102,   251,     0,   166,   251,     0,
  2900. !    185,   251,     0,    89,   253,   105,     0,    89,   105,     0,
  2901. !    289,     0,   278,     0,   277,   289,     0,   277,   278,     0,
  2902. !      1,    56,     0,     0,     0,   281,     0,   282,     0,   281,
  2903. !    282,     0,    34,   213,    56,     0,   284,     0,     1,   284,
  2904. !      0,    54,   279,   103,     0,    54,   279,   280,   277,   103,
  2905. !      0,    54,   279,   280,   277,     1,   103,     0,    54,   279,
  2906. !    280,     1,   103,     0,     0,     0,    13,   286,   279,   155,
  2907. !    287,   288,     0,   284,     0,   279,   290,     0,   284,     0,
  2908. !    290,     0,   183,     0,   153,    56,     0,     0,   285,    14,
  2909. !    291,   288,     0,   285,     0,     0,     0,    15,   292,   279,
  2910. !    155,   293,   159,     0,     0,     0,    16,   294,   288,    15,
  2911. !    295,   154,    56,     0,     0,     0,     0,   315,   296,   279,
  2912. !    156,    56,   297,   318,   102,   298,   159,     0,     0,     0,
  2913. !      0,   316,   299,   279,   156,    56,   300,   318,   102,   301,
  2914. !    159,     0,     0,    18,   279,    88,   157,   102,   302,   288,
  2915. !      0,     0,    19,   169,    60,   303,   289,     0,     0,    19,
  2916. !    169,    10,   169,    60,   304,   289,     0,     0,    20,    60,
  2917. !    305,   289,     0,    21,    56,     0,    22,    56,     0,    23,
  2918. !     56,     0,    23,   153,    56,     0,   111,   317,    88,   180,
  2919. !    102,    56,     0,   111,   317,    88,   180,    60,   319,   102,
  2920. !     56,     0,   111,   317,    88,   180,    60,   319,    60,   319,
  2921. !    102,    56,     0,   111,   317,    88,   180,    60,   319,    60,
  2922. !    319,    60,   322,   102,    56,     0,    24,    75,   153,    56,
  2923. !      0,    24,   139,    56,     0,   314,   289,     0,   314,   103,
  2924. !      0,    56,     0,   306,     0,     0,     0,    90,    54,   279,
  2925. !    307,   309,   308,   310,     0,   103,     0,   277,   103,     0,
  2926. !      1,   103,     0,     0,     0,   310,    91,   311,   313,   284,
  2927. !      0,   191,     0,   252,     0,    88,    10,   102,     0,    88,
  2928. !    329,   102,     0,     3,    60,     0,    53,    60,     0,     4,
  2929. !     60,     0,    17,    88,    56,     0,    17,    88,   153,    56,
  2930. !      0,    17,    88,    54,   103,     0,    17,    88,   183,     0,
  2931. !     17,    88,     1,    56,     0,    17,    88,    54,   279,   277,
  2932. !    103,     0,    17,    88,    54,   279,     1,   103,     0,     0,
  2933. !      7,     0,     0,   153,     0,     1,     0,     0,   320,     0,
  2934. !    321,     0,   320,    55,   321,     0,     9,    88,   153,   102,
  2935. !      0,     9,     0,   322,    55,     9,     0,     0,   324,     0,
  2936. !    186,     0,   325,     0,   326,    10,     0,   325,    10,     0,
  2937. !    186,    10,     0,    10,     0,    93,     0,   325,    93,     0,
  2938. !    186,    93,     0,   325,    60,     0,   186,    60,     0,   327,
  2939. !      0,   329,    58,   214,     0,   326,   328,     0,   326,   331,
  2940. !      0,   326,   331,    58,   214,     0,   325,    55,     0,   186,
  2941. !     55,     0,   188,   184,     0,   191,   184,     0,   193,   184,
  2942. !      0,   188,   275,     0,   188,     0,   190,   259,     0,   329,
  2943. !      0,   329,    58,   214,     0,   327,     0,   186,     0,     0,
  2944. !      0,   259,     0,     0,    92,    88,   334,   102,     0,   186,
  2945. !      0,   333,     0,   334,    55,   333,     0,     0,    75,   251,
  2946. !    335,     0,    65,   251,   335,     0,   271,   251,   335,     0,
  2947. !     41,     0,   336,    75,     0,   336,    76,     0,   336,    77,
  2948. !      0,   336,    73,     0,   336,    74,     0,   336,    65,     0,
  2949. !    336,    63,     0,   336,    64,     0,   336,    83,     0,   336,
  2950. !     55,     0,   336,    68,     0,   336,    69,     0,   336,    70,
  2951. !      0,   336,    67,     0,   336,    57,     0,   336,    58,     0,
  2952. !    336,    71,     0,   336,    72,     0,   336,    81,     0,   336,
  2953. !     82,     0,   336,    62,     0,   336,    61,     0,   336,   104,
  2954. !      0,   336,    59,    60,     0,   336,    66,     0,   336,    86,
  2955. !      0,   336,    78,     0,   336,    44,     0,   336,    89,   105,
  2956. !      0,   336,    38,     0,   336,    37,     0,   336,    38,    89,
  2957. !    105,     0,   336,    37,    89,   105,     0,   336,   312,   335,
  2958. !      0,   336,     1,     0
  2959.   };
  2960.   
  2961.   #endif
  2962. --- 391,568 ----
  2963.        0,    92,     0,    92,   169,     0,    83,   330,   139,     0,
  2964.      337,     0,     3,     0,    53,     0,   170,     0,     4,     0,
  2965.      170,     0,   263,     0,    75,   172,     0,    65,   172,     0,
  2966. !    261,     0,   170,     0,   263,     0,   170,     0,     8,     0,
  2967. !    179,     0,   180,     0,    88,   153,   102,     0,    88,     1,
  2968. !    102,     0,     0,    88,   175,   284,   102,     0,     0,   174,
  2969. !     88,   161,   102,   176,   151,     0,   174,    44,     0,   174,
  2970. !     89,   153,   105,     0,   174,    81,     0,   174,    82,     0,
  2971. !     40,     0,     7,    88,   161,   102,     0,   265,     0,    47,
  2972. !     69,   186,    70,    88,   153,   102,     0,    48,    69,   186,
  2973. !     70,    88,   153,   102,     0,    49,    69,   186,    70,    88,
  2974. !    153,   102,     0,    50,    69,   186,    70,    88,   153,   102,
  2975. !      0,    46,    88,   153,   102,     0,    46,    88,   186,   102,
  2976. !      0,   272,     3,     0,   272,   337,     0,   264,     0,   264,
  2977. !     88,   161,   102,     0,   264,    44,     0,   182,   171,     0,
  2978. !    182,   262,     0,   182,   171,    88,   161,   102,     0,   182,
  2979. !    171,    44,     0,   182,   262,    88,   161,   102,     0,   182,
  2980. !    262,    44,     0,   182,    83,     6,    44,     0,   182,     6,
  2981. !     51,    83,     6,    44,     0,    38,     0,   272,    38,     0,
  2982. !     37,     0,   272,   178,     0,    42,     0,    43,     0,     9,
  2983. !      0,   180,     9,     0,     0,   174,    87,     0,   174,    86,
  2984. !      0,   193,   184,    56,     0,   187,   184,    56,     0,   193,
  2985. !    195,    56,     0,   187,   195,    56,     0,   190,   196,    56,
  2986. !      0,   187,    56,     0,   190,    56,     0,   255,     0,   259,
  2987. !      0,    44,     0,   185,    44,     0,   191,   275,     0,   252,
  2988. !    275,     0,   193,   275,     0,   191,     0,   252,     0,   191,
  2989. !      0,   188,     0,   190,   193,     0,   193,   189,     0,   190,
  2990. !    193,   189,     0,   190,   193,   192,     0,   190,   193,   192,
  2991. !    189,     0,     5,     0,   189,   194,     0,   189,     5,     0,
  2992. !    252,     0,     5,     0,   190,     7,     0,   190,     5,     0,
  2993. !    193,     0,   252,   193,     0,   193,   192,     0,   252,   193,
  2994. !    192,     0,   194,     0,   192,   194,     0,   216,     0,     6,
  2995. !      0,   269,     0,    27,    88,   153,   102,     0,    27,    88,
  2996. !    186,   102,     0,    31,    88,   153,   102,     0,    31,    88,
  2997. !    186,   102,     0,     6,     0,     7,     0,   216,     0,   199,
  2998. !      0,   195,    55,   201,     0,   203,     0,   196,    55,   201,
  2999. !      0,   205,     0,   197,    55,   201,     0,     0,   111,    88,
  3000. !    180,   102,     0,     0,   184,   332,   198,   207,    58,   200,
  3001. !    214,     0,   184,   332,   198,   207,     0,     0,   184,   332,
  3002. !    198,   207,    58,   202,   214,     0,   184,   332,   198,   207,
  3003. !      0,     0,   259,   332,   198,   207,    58,   204,   214,     0,
  3004. !    259,   332,   198,   207,     0,     0,   259,   332,   198,   207,
  3005. !     58,   206,   214,     0,   259,   332,   198,   207,     0,     0,
  3006. !    208,     0,   209,     0,   208,   209,     0,    32,    88,    88,
  3007. !    210,   102,   102,     0,   211,     0,   210,    55,   211,     0,
  3008. !      0,   212,     0,   212,    88,     3,   102,     0,   212,    88,
  3009. !      3,    55,   161,   102,     0,   212,    88,   161,   102,     0,
  3010. !    139,     0,     5,     0,     6,     0,     7,     0,   139,     0,
  3011. !    213,    55,   139,     0,   169,     0,    54,   103,     0,    54,
  3012. !    215,   103,     0,    54,   215,    55,   103,     0,     1,     0,
  3013. !    214,     0,   215,    55,   214,     0,    89,   169,   105,   214,
  3014. !      0,   215,    55,    19,   169,    60,   214,     0,   139,    60,
  3015. !    214,     0,   215,    55,   139,    60,   214,     0,     0,    12,
  3016. !    139,    54,   217,   248,   220,   103,     0,    12,   139,    54,
  3017. !    103,     0,     0,    12,    54,   218,   248,   220,   103,     0,
  3018. !     12,    54,   103,     0,    12,   139,     0,    12,   270,     0,
  3019. !    229,   235,   236,   103,     0,   229,     0,     0,    55,     0,
  3020. !      0,    55,     0,    35,     0,   221,     5,     0,   221,     6,
  3021. !      0,   221,     7,     0,   221,    35,     0,   221,   144,    56,
  3022. !      0,   221,   139,     0,   221,   270,     0,   221,   143,     0,
  3023. !    221,   144,    54,     0,   221,   144,    60,     0,   222,     0,
  3024. !    221,   141,     0,     0,     0,   223,   225,   230,     0,   224,
  3025. !    226,   230,     0,   221,    54,     0,   228,     0,   227,     0,
  3026. !      0,    60,     0,    60,   231,     0,   232,     0,   231,    55,
  3027. !    232,     0,   233,     0,   234,   233,     0,   269,     0,    31,
  3028. !     88,   153,   102,     0,    31,    88,   186,   102,     0,    36,
  3029. !      0,     5,     0,   234,    36,     0,   234,     5,     0,    54,
  3030. !      0,     0,   237,     0,   236,    36,    60,   237,     0,   236,
  3031. !     36,    60,     0,   238,     0,   237,   238,     0,   237,    56,
  3032. !      0,   239,    56,     0,   239,   103,     0,   132,    60,     0,
  3033. !    132,    54,     0,   187,   240,     0,   190,   241,     0,   259,
  3034. !    332,   198,   207,     0,    60,   169,     0,     1,     0,   187,
  3035. !     88,   323,   102,   251,     0,   187,    44,   251,     0,     0,
  3036. !    242,     0,   240,    55,   243,     0,     0,   245,     0,   241,
  3037. !     55,   247,     0,   244,     0,   245,     0,   246,     0,   247,
  3038. !      0,   255,   332,   198,   207,     0,   255,   332,   198,   207,
  3039. !     58,   214,     0,     4,    60,   169,   207,     0,   259,   332,
  3040. !    198,   207,     0,   259,   332,   198,   207,    58,   214,     0,
  3041. !      3,    60,   169,   207,     0,    60,   169,   207,     0,   255,
  3042.      332,   198,   207,     0,   255,   332,   198,   207,    58,   214,
  3043.        0,     4,    60,   169,   207,     0,   259,   332,   198,   207,
  3044.        0,   259,   332,   198,   207,    58,   214,     0,     3,    60,
  3045. !    169,   207,     0,    60,   169,   207,     0,   249,     0,   248,
  3046. !     55,   249,     0,   139,     0,   139,    58,   169,     0,   312,
  3047. !    273,     0,   312,     0,    88,   186,   102,    89,   153,   105,
  3048. !      0,     0,   251,     7,     0,     7,     0,   252,     7,     0,
  3049. !      0,   254,   153,     0,    75,   252,   255,     0,    65,   252,
  3050. !    255,     0,    75,   255,     0,    65,   255,     0,   271,   251,
  3051. !    255,     0,   258,     0,   266,     0,   257,     0,   267,   266,
  3052. !      0,   258,    88,   161,   102,   251,     0,   258,    88,   323,
  3053. !    102,   251,     0,   258,    44,   251,     0,   258,    88,     1,
  3054. !    102,   251,     0,   258,    89,   253,   105,     0,   258,    89,
  3055. !    105,     0,    88,   255,   102,     0,   267,   266,     0,   266,
  3056. !      0,    75,   252,   259,     0,    65,   252,   259,     0,    75,
  3057. !    259,     0,    65,   259,     0,   271,   251,   259,     0,   173,
  3058. !      0,    75,   252,   259,     0,    65,   252,   259,     0,    75,
  3059. !    260,     0,    65,   260,     0,   271,   251,   259,     0,   261,
  3060. !      0,   173,    88,   161,   102,   251,     0,   173,    88,   323,
  3061. !    102,   251,     0,   173,    44,   251,     0,   173,    88,     1,
  3062. !    102,   251,     0,    88,   172,   102,     0,    88,   260,   102,
  3063. !      0,   173,    89,   253,   105,     0,   173,    89,   105,     0,
  3064. !    267,   171,     0,   267,   170,     0,   263,     0,   272,   263,
  3065. !      0,   193,    88,   161,   102,     0,   193,    88,   172,   102,
  3066. !      0,   193,   185,     0,     4,     0,   143,     0,   268,     0,
  3067. !    267,   268,     0,     4,    51,     0,   143,    51,     0,   256,
  3068. !      0,   272,   256,     0,   257,     0,   272,   256,     0,   267,
  3069. !     75,     0,   272,   267,    75,     0,    51,     0,    75,   251,
  3070. !    273,     0,    75,   251,     0,    65,   251,   273,     0,    65,
  3071. !    251,     0,   271,   251,     0,   271,   251,   273,     0,   274,
  3072. !      0,    89,   153,   105,     0,   274,    89,   253,   105,     0,
  3073. !     75,   252,   275,     0,    75,   275,     0,    75,   252,     0,
  3074. !     75,     0,    65,   252,   275,     0,    65,   275,     0,    65,
  3075. !    252,     0,    65,     0,   271,   251,     0,   271,   251,   275,
  3076. !      0,   276,     0,    88,   275,   102,     0,    85,     0,   276,
  3077. !     88,   323,   102,   251,     0,   276,    44,   251,     0,   276,
  3078. !     89,   253,   105,     0,   276,    89,   105,     0,    88,   324,
  3079. !    102,   251,     0,   166,   251,     0,   185,   251,     0,    89,
  3080. !    253,   105,     0,    89,   105,     0,   289,     0,   278,     0,
  3081. !    277,   289,     0,   277,   278,     0,     1,    56,     0,     0,
  3082. !      0,   281,     0,   282,     0,   281,   282,     0,    34,   213,
  3083. !     56,     0,   284,     0,     1,   284,     0,    54,   279,   103,
  3084. !      0,    54,   279,   280,   277,   103,     0,    54,   279,   280,
  3085. !    277,     1,   103,     0,    54,   279,   280,     1,   103,     0,
  3086. !      0,     0,    13,   286,   279,   155,   287,   288,     0,   284,
  3087. !      0,   279,   290,     0,   284,     0,   290,     0,   183,     0,
  3088. !    153,    56,     0,     0,   285,    14,   291,   288,     0,   285,
  3089. !      0,     0,     0,    15,   292,   279,   155,   293,   159,     0,
  3090. !      0,     0,    16,   294,   288,    15,   295,   154,    56,     0,
  3091. !      0,     0,     0,   315,   296,   279,   156,    56,   297,   318,
  3092. !    102,   298,   159,     0,     0,     0,     0,   316,   299,   279,
  3093. !    156,    56,   300,   318,   102,   301,   159,     0,     0,    18,
  3094. !    279,    88,   157,   102,   302,   288,     0,     0,    19,   169,
  3095. !     60,   303,   289,     0,     0,    19,   169,    10,   169,    60,
  3096. !    304,   289,     0,     0,    20,    60,   305,   289,     0,    21,
  3097. !     56,     0,    22,    56,     0,    23,    56,     0,    23,   153,
  3098. !     56,     0,   111,   317,    88,   180,   102,    56,     0,   111,
  3099. !    317,    88,   180,    60,   319,   102,    56,     0,   111,   317,
  3100. !     88,   180,    60,   319,    60,   319,   102,    56,     0,   111,
  3101. !    317,    88,   180,    60,   319,    60,   319,    60,   322,   102,
  3102. !     56,     0,    24,    75,   153,    56,     0,    24,   139,    56,
  3103. !      0,   314,   289,     0,   314,   103,     0,    56,     0,   306,
  3104. !      0,     0,     0,    90,    54,   279,   307,   309,   308,   310,
  3105. !      0,   103,     0,   277,   103,     0,     1,   103,     0,     0,
  3106. !      0,   310,    91,   311,   313,   284,     0,   191,     0,   252,
  3107. !      0,    88,    10,   102,     0,    88,   329,   102,     0,     3,
  3108. !     60,     0,    53,    60,     0,     4,    60,     0,    17,    88,
  3109. !     56,     0,    17,    88,   153,    56,     0,    17,    88,    54,
  3110. !    103,     0,    17,    88,   183,     0,    17,    88,     1,    56,
  3111. !      0,    17,    88,    54,   279,   277,   103,     0,    17,    88,
  3112. !     54,   279,     1,   103,     0,     0,     7,     0,     0,   153,
  3113. !      0,     1,     0,     0,   320,     0,   321,     0,   320,    55,
  3114. !    321,     0,     9,    88,   153,   102,     0,     9,     0,   322,
  3115. !     55,     9,     0,     0,   324,     0,   186,     0,   325,     0,
  3116. !    326,    10,     0,   325,    10,     0,   186,    10,     0,    10,
  3117. !      0,    93,     0,   325,    93,     0,   186,    93,     0,   325,
  3118. !     60,     0,   186,    60,     0,   327,     0,   329,    58,   214,
  3119. !      0,   326,   328,     0,   326,   331,     0,   326,   331,    58,
  3120. !    214,     0,   325,    55,     0,   186,    55,     0,   188,   184,
  3121. !      0,   191,   184,     0,   193,   184,     0,   188,   275,     0,
  3122. !    188,     0,   190,   259,     0,   329,     0,   329,    58,   214,
  3123. !      0,   327,     0,   186,     0,     0,     0,   259,     0,     0,
  3124. !     92,    88,   334,   102,     0,   186,     0,   333,     0,   334,
  3125. !     55,   333,     0,     0,    75,   251,   335,     0,    65,   251,
  3126. !    335,     0,   271,   251,   335,     0,    41,     0,   336,    75,
  3127. !      0,   336,    76,     0,   336,    77,     0,   336,    73,     0,
  3128. !    336,    74,     0,   336,    65,     0,   336,    63,     0,   336,
  3129. !     64,     0,   336,    83,     0,   336,    55,     0,   336,    68,
  3130. !      0,   336,    69,     0,   336,    70,     0,   336,    67,     0,
  3131. !    336,    57,     0,   336,    58,     0,   336,    71,     0,   336,
  3132. !     72,     0,   336,    81,     0,   336,    82,     0,   336,    62,
  3133. !      0,   336,    61,     0,   336,   104,     0,   336,    59,    60,
  3134. !      0,   336,    66,     0,   336,    86,     0,   336,    78,     0,
  3135. !    336,    44,     0,   336,    89,   105,     0,   336,    38,     0,
  3136. !    336,    37,     0,   336,    38,    89,   105,     0,   336,    37,
  3137. !     89,   105,     0,   336,   312,   335,     0,   336,     1,     0
  3138.   };
  3139.   
  3140.   #endif
  3141. ***************
  3142. *** 590,648 ****
  3143.     1144,  1146,  1163,  1166,  1168,  1170,  1172,  1174,  1176,  1178,
  3144.     1180,  1182,  1184,  1186,  1188,  1190,  1192,  1194,  1196,  1198,
  3145.     1200,  1202,  1204,  1206,  1208,  1215,  1217,  1234,  1237,  1238,
  3146. !   1239,  1242,  1244,  1247,  1249,  1250,  1252,  1254,  1258,  1260,
  3147. !   1261,  1264,  1268,  1288,  1289,  1290,  1292,  1294,  1296,  1304,
  3148. !   1325,  1330,  1337,  1344,  1346,  1355,  1360,  1383,  1427,  1428,
  3149. !   1431,  1434,  1437,  1440,  1442,  1445,  1484,  1491,  1493,  1495,
  3150. !   1497,  1499,  1501,  1516,  1531,  1542,  1554,  1561,  1610,  1612,
  3151. !   1616,  1618,  1622,  1625,  1630,  1632,  1636,  1649,  1650,  1656,
  3152. !   1667,  1675,  1681,  1686,  1688,  1693,  1700,  1702,  1706,  1710,
  3153. !   1716,  1719,  1721,  1723,  1725,  1733,  1735,  1737,  1740,  1742,
  3154. !   1744,  1746,  1751,  1757,  1759,  1770,  1773,  1775,  1778,  1793,
  3155. !   1796,  1798,  1800,  1804,  1807,  1815,  1816,  1817,  1818,  1822,
  3156. !   1826,  1840,  1858,  1859,  1860,  1863,  1865,  1868,  1870,  1873,
  3157. !   1875,  1878,  1881,  1885,  1902,  1904,  1922,  1928,  1929,  1935,
  3158. !   1943,  1945,  1954,  1962,  1964,  1975,  1978,  1982,  1985,  1989,
  3159. !   1994,  1997,  2001,  2004,  2006,  2008,  2010,  2017,  2019,  2020,
  3160. !   2021,  2025,  2028,  2032,  2034,  2037,  2040,  2043,  2049,  2052,
  3161. !   2055,  2057,  2059,  2061,  2065,  2069,  2073,  2076,  2079,  2083,
  3162. !   2086,  2088,  2092,  2143,  2158,  2160,  2163,  2165,  2169,  2170,
  3163. !   2172,  2174,  2176,  2180,  2189,  2192,  2194,  2196,  2202,  2204,
  3164. !   2207,  2212,  2215,  2218,  2227,  2238,  2243,  2243,  2245,  2248,
  3165. !   2250,  2254,  2256,  2260,  2288,  2319,  2321,  2343,  2367,  2369,
  3166. !   2373,  2399,  2408,  2470,  2473,  2480,  2491,  2500,  2504,  2517,
  3167. !   2520,  2522,  2527,  2529,  2533,  2541,  2545,  2548,  2550,  2561,
  3168. !   2566,  2574,  2577,  2578,  2589,  2592,  2593,  2604,  2606,  2609,
  3169. !   2611,  2614,  2619,  2623,  2629,  2634,  2638,  2642,  2648,  2652,
  3170. !   2655,  2660,  2664,  2667,  2670,  2679,  2681,  2685,  2688,  2693,
  3171. !   2696,  2700,  2709,  2712,  2716,  2719,  2727,  2729,  2734,  2737,
  3172. !   2739,  2741,  2743,  2747,  2750,  2764,  2767,  2772,  2775,  2777,
  3173. !   2779,  2781,  2783,  2785,  2787,  2791,  2797,  2800,  2802,  2804,
  3174. !   2806,  2810,  2813,  2816,  2818,  2820,  2822,  2826,  2829,  2832,
  3175. !   2834,  2836,  2838,  2840,  2842,  2846,  2852,  2858,  2860,  2864,
  3176. !   2867,  2869,  2873,  2875,  2878,  2880,  2886,  2889,  2903,  2905,
  3177. !   2909,  2911,  2915,  2918,  2924,  2930,  2933,  2935,  2937,  2939,
  3178. !   2943,  2947,  2951,  2954,  2959,  2962,  2964,  2966,  2968,  2970,
  3179. !   2972,  2974,  2976,  2980,  2984,  2988,  2992,  2993,  2995,  2997,
  3180. !   2999,  3001,  3003,  3005,  3007,  3009,  3017,  3019,  3020,  3021,
  3181. !   3024,  3031,  3041,  3043,  3048,  3050,  3053,  3067,  3070,  3073,
  3182. !   3077,  3081,  3085,  3091,  3094,  3098,  3100,  3103,  3109,  3112,
  3183. !   3115,  3118,  3131,  3134,  3139,  3145,  3150,  3153,  3158,  3162,
  3184. !   3165,  3171,  3176,  3179,  3184,  3193,  3197,  3200,  3206,  3216,
  3185. !   3223,  3229,  3254,  3254,  3286,  3286,  3302,  3302,  3306,  3310,
  3186. !   3313,  3318,  3325,  3334,  3343,  3352,  3355,  3361,  3363,  3367,
  3187. !   3369,  3372,  3376,  3379,  3382,  3390,  3394,  3400,  3402,  3404,
  3188. !   3408,  3410,  3413,  3426,  3431,  3439,  3441,  3445,  3448,  3450,
  3189. !   3454,  3457,  3459,  3461,  3467,  3471,  3475,  3478,  3479,  3485,
  3190. !   3487,  3490,  3492,  3496,  3501,  3504,  3514,  3521,  3522,  3529,
  3191. !   3535,  3540,  3544,  3549,  3556,  3560,  3564,  3569,  3580,  3594,
  3192. !   3597,  3599,  3601,  3603,  3607,  3609,  3617,  3634,  3636,  3638,
  3193. !   3640,  3642,  3646,  3649,  3653,  3655,  3658,  3680,  3686,  3693,
  3194. !   3696,  3700,  3705,  3707,  3714,  3717,  3719,  3721,  3727,  3731,
  3195.     3734,  3736,  3738,  3740,  3742,  3744,  3746,  3748,  3750,  3752,
  3196.     3754,  3756,  3758,  3760,  3762,  3764,  3766,  3768,  3770,  3772,
  3197.     3774,  3776,  3778,  3780,  3782,  3784,  3786,  3788,  3790,  3792,
  3198. !   3794,  3796,  3799,  3801
  3199.   };
  3200.   
  3201.   static const char * const yytname[] = {   "$","error","$illegal.","IDENTIFIER",
  3202. --- 591,649 ----
  3203.     1144,  1146,  1163,  1166,  1168,  1170,  1172,  1174,  1176,  1178,
  3204.     1180,  1182,  1184,  1186,  1188,  1190,  1192,  1194,  1196,  1198,
  3205.     1200,  1202,  1204,  1206,  1208,  1215,  1217,  1234,  1237,  1238,
  3206. !   1239,  1242,  1244,  1247,  1249,  1250,  1252,  1256,  1258,  1259,
  3207. !   1264,  1284,  1285,  1286,  1288,  1290,  1292,  1300,  1321,  1326,
  3208. !   1333,  1340,  1342,  1351,  1356,  1379,  1423,  1424,  1427,  1430,
  3209. !   1433,  1436,  1438,  1441,  1480,  1487,  1489,  1491,  1493,  1495,
  3210. !   1497,  1512,  1527,  1538,  1550,  1557,  1606,  1608,  1612,  1614,
  3211. !   1618,  1621,  1626,  1628,  1632,  1645,  1646,  1652,  1663,  1671,
  3212. !   1677,  1682,  1684,  1689,  1696,  1698,  1702,  1706,  1712,  1715,
  3213. !   1717,  1719,  1721,  1729,  1731,  1733,  1736,  1738,  1740,  1742,
  3214. !   1747,  1753,  1755,  1766,  1769,  1771,  1774,  1789,  1792,  1794,
  3215. !   1796,  1800,  1803,  1811,  1812,  1813,  1814,  1818,  1822,  1836,
  3216. !   1854,  1855,  1856,  1859,  1861,  1864,  1866,  1869,  1871,  1874,
  3217. !   1877,  1881,  1898,  1900,  1918,  1924,  1925,  1931,  1939,  1941,
  3218. !   1950,  1958,  1960,  1971,  1974,  1978,  1981,  1985,  1990,  1993,
  3219. !   1997,  2000,  2002,  2004,  2006,  2013,  2015,  2016,  2017,  2021,
  3220. !   2024,  2028,  2030,  2033,  2036,  2039,  2045,  2048,  2051,  2053,
  3221. !   2055,  2057,  2061,  2065,  2069,  2072,  2075,  2079,  2082,  2084,
  3222. !   2088,  2139,  2154,  2156,  2159,  2161,  2165,  2166,  2168,  2170,
  3223. !   2172,  2176,  2185,  2188,  2190,  2192,  2198,  2200,  2203,  2208,
  3224. !   2211,  2214,  2223,  2234,  2239,  2239,  2241,  2244,  2246,  2250,
  3225. !   2252,  2256,  2284,  2315,  2317,  2339,  2363,  2365,  2369,  2395,
  3226. !   2404,  2466,  2469,  2476,  2487,  2496,  2500,  2513,  2516,  2518,
  3227. !   2523,  2525,  2529,  2537,  2541,  2544,  2546,  2557,  2562,  2570,
  3228. !   2573,  2574,  2585,  2588,  2589,  2600,  2602,  2605,  2607,  2610,
  3229. !   2615,  2619,  2625,  2630,  2634,  2638,  2644,  2648,  2651,  2656,
  3230. !   2660,  2663,  2666,  2675,  2677,  2681,  2684,  2689,  2692,  2696,
  3231. !   2705,  2708,  2712,  2715,  2723,  2725,  2730,  2733,  2735,  2737,
  3232. !   2739,  2743,  2746,  2760,  2763,  2768,  2771,  2773,  2775,  2777,
  3233. !   2779,  2781,  2783,  2787,  2793,  2796,  2798,  2800,  2802,  2806,
  3234. !   2809,  2812,  2814,  2816,  2818,  2822,  2825,  2828,  2830,  2832,
  3235. !   2834,  2836,  2838,  2840,  2844,  2850,  2856,  2858,  2862,  2865,
  3236. !   2867,  2871,  2873,  2876,  2878,  2884,  2887,  2901,  2903,  2907,
  3237. !   2909,  2913,  2916,  2922,  2928,  2931,  2933,  2935,  2937,  2941,
  3238. !   2945,  2949,  2952,  2957,  2960,  2962,  2964,  2966,  2968,  2970,
  3239. !   2972,  2974,  2978,  2982,  2986,  2990,  2991,  2993,  2995,  2997,
  3240. !   2999,  3001,  3003,  3005,  3007,  3015,  3017,  3018,  3019,  3022,
  3241. !   3029,  3039,  3041,  3046,  3048,  3051,  3065,  3068,  3071,  3075,
  3242. !   3079,  3083,  3089,  3092,  3096,  3098,  3101,  3107,  3110,  3113,
  3243. !   3116,  3129,  3132,  3137,  3143,  3148,  3151,  3156,  3160,  3163,
  3244. !   3169,  3174,  3177,  3182,  3191,  3195,  3198,  3204,  3214,  3221,
  3245. !   3227,  3252,  3252,  3284,  3284,  3300,  3300,  3304,  3308,  3311,
  3246. !   3316,  3323,  3332,  3341,  3350,  3353,  3359,  3361,  3365,  3367,
  3247. !   3370,  3374,  3377,  3380,  3388,  3392,  3398,  3400,  3402,  3406,
  3248. !   3408,  3411,  3424,  3429,  3437,  3439,  3443,  3446,  3448,  3452,
  3249. !   3455,  3457,  3459,  3465,  3469,  3473,  3476,  3477,  3483,  3485,
  3250. !   3488,  3490,  3494,  3499,  3502,  3512,  3519,  3520,  3527,  3533,
  3251. !   3538,  3542,  3547,  3554,  3558,  3562,  3567,  3578,  3592,  3595,
  3252. !   3597,  3599,  3601,  3605,  3607,  3615,  3632,  3634,  3636,  3638,
  3253. !   3640,  3644,  3647,  3651,  3653,  3656,  3678,  3684,  3691,  3694,
  3254. !   3698,  3703,  3705,  3712,  3715,  3717,  3719,  3725,  3729,  3732,
  3255.     3734,  3736,  3738,  3740,  3742,  3744,  3746,  3748,  3750,  3752,
  3256.     3754,  3756,  3758,  3760,  3762,  3764,  3766,  3768,  3770,  3772,
  3257.     3774,  3776,  3778,  3780,  3782,  3784,  3786,  3788,  3790,  3792,
  3258. !   3794,  3797,  3799
  3259.   };
  3260.   
  3261.   static const char * const yytname[] = {   "$","error","$illegal.","IDENTIFIER",
  3262. ***************
  3263. *** 727,785 ****
  3264.      168,   168,   169,   169,   169,   169,   169,   169,   169,   169,
  3265.      169,   169,   169,   169,   169,   169,   169,   169,   169,   169,
  3266.      169,   169,   169,   169,   169,   169,   169,   170,   170,   170,
  3267. !    170,   171,   171,   172,   172,   172,   172,   172,   173,   173,
  3268. !    173,   173,   174,   174,   174,   174,   174,   174,   175,   174,
  3269. !    176,   174,   174,   174,   174,   174,   174,   174,   174,   174,
  3270.      174,   174,   174,   174,   174,   174,   174,   174,   174,   174,
  3271. !    174,   174,   174,   174,   174,   174,   174,   174,   177,   177,
  3272. !    178,   178,   179,   179,   180,   180,   181,   182,   182,   183,
  3273. !    183,   183,   183,   183,   183,   183,   184,   184,   185,   185,
  3274. !    186,   186,   186,   186,   186,   187,   187,   188,   188,   188,
  3275. !    188,   188,   189,   189,   189,   190,   190,   190,   190,   191,
  3276. !    191,   191,   191,   192,   192,   193,   193,   193,   193,   193,
  3277. !    193,   193,   194,   194,   194,   195,   195,   196,   196,   197,
  3278. !    197,   198,   198,   200,   199,   199,   202,   201,   201,   204,
  3279. !    203,   203,   206,   205,   205,   207,   207,   208,   208,   209,
  3280. !    210,   210,   211,   211,   211,   211,   211,   212,   212,   212,
  3281. !    212,   213,   213,   214,   214,   214,   214,   214,   215,   215,
  3282. !    215,   215,   215,   215,   217,   216,   216,   218,   216,   216,
  3283. !    216,   216,   216,   216,   219,   219,   220,   220,   221,   221,
  3284. !    221,   221,   221,   222,   223,   223,   223,   223,   223,   223,
  3285. !    224,   225,   226,   227,   227,   228,   229,   229,   230,   230,
  3286. !    230,   231,   231,   232,   232,   233,   233,   233,   234,   234,
  3287. !    234,   234,   235,   236,   236,   236,   236,   237,   237,   237,
  3288. !    238,   238,   238,   238,   239,   239,   239,   239,   239,   239,
  3289. !    239,   240,   240,   240,   241,   241,   241,   242,   242,   243,
  3290. !    243,   244,   244,   244,   245,   245,   245,   245,   246,   246,
  3291. !    246,   247,   247,   247,   247,   248,   248,   249,   249,   250,
  3292. !    250,   250,   251,   251,   252,   252,   254,   253,   255,   255,
  3293. !    255,   255,   255,   255,   256,   256,   257,   258,   258,   258,
  3294. !    258,   258,   258,   258,   258,   258,   259,   259,   259,   259,
  3295. !    259,   259,   260,   260,   260,   260,   260,   260,   261,   261,
  3296. !    261,   261,   261,   261,   261,   262,   263,   264,   264,   265,
  3297. !    265,   265,   266,   266,   267,   267,   268,   268,   269,   269,
  3298. !    270,   270,   271,   271,   272,   273,   273,   273,   273,   273,
  3299. !    273,   273,   274,   274,   275,   275,   275,   275,   275,   275,
  3300. !    275,   275,   275,   275,   275,   276,   276,   276,   276,   276,
  3301. !    276,   276,   276,   276,   276,   276,   277,   277,   277,   277,
  3302. !    278,   279,   280,   280,   281,   281,   282,   283,   283,   284,
  3303. !    284,   284,   284,   286,   287,   285,   288,   288,   289,   289,
  3304. !    290,   290,   291,   290,   290,   292,   293,   290,   294,   295,
  3305. !    290,   296,   297,   298,   290,   299,   300,   301,   290,   302,
  3306. !    290,   303,   290,   304,   290,   305,   290,   290,   290,   290,
  3307.      290,   290,   290,   290,   290,   290,   290,   290,   290,   290,
  3308. !    290,   307,   308,   306,   309,   309,   309,   310,   311,   310,
  3309. !    312,   312,   313,   313,   314,   314,   314,   315,   315,   315,
  3310. !    316,   316,   316,   316,   317,   317,   318,   318,   318,   319,
  3311. !    319,   320,   320,   321,   322,   322,   323,   323,   323,   324,
  3312. !    324,   324,   324,   324,   324,   324,   324,   324,   324,   325,
  3313. !    325,   325,   325,   325,   326,   326,   327,   327,   327,   327,
  3314. !    327,   327,   328,   328,   329,   329,   330,   331,   331,   332,
  3315. !    332,   333,   334,   334,   335,   335,   335,   335,   336,   337,
  3316.      337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
  3317.      337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
  3318.      337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
  3319. !    337,   337,   337,   337
  3320.   };
  3321.   
  3322.   static const short yyr2[] = {     0,
  3323. --- 728,786 ----
  3324.      168,   168,   169,   169,   169,   169,   169,   169,   169,   169,
  3325.      169,   169,   169,   169,   169,   169,   169,   169,   169,   169,
  3326.      169,   169,   169,   169,   169,   169,   169,   170,   170,   170,
  3327. !    170,   171,   171,   172,   172,   172,   172,   173,   173,   173,
  3328. !    174,   174,   174,   174,   174,   174,   175,   174,   176,   174,
  3329. !    174,   174,   174,   174,   174,   174,   174,   174,   174,   174,
  3330.      174,   174,   174,   174,   174,   174,   174,   174,   174,   174,
  3331. !    174,   174,   174,   174,   174,   174,   177,   177,   178,   178,
  3332. !    179,   179,   180,   180,   181,   182,   182,   183,   183,   183,
  3333. !    183,   183,   183,   183,   184,   184,   185,   185,   186,   186,
  3334. !    186,   186,   186,   187,   187,   188,   188,   188,   188,   188,
  3335. !    189,   189,   189,   190,   190,   190,   190,   191,   191,   191,
  3336. !    191,   192,   192,   193,   193,   193,   193,   193,   193,   193,
  3337. !    194,   194,   194,   195,   195,   196,   196,   197,   197,   198,
  3338. !    198,   200,   199,   199,   202,   201,   201,   204,   203,   203,
  3339. !    206,   205,   205,   207,   207,   208,   208,   209,   210,   210,
  3340. !    211,   211,   211,   211,   211,   212,   212,   212,   212,   213,
  3341. !    213,   214,   214,   214,   214,   214,   215,   215,   215,   215,
  3342. !    215,   215,   217,   216,   216,   218,   216,   216,   216,   216,
  3343. !    216,   216,   219,   219,   220,   220,   221,   221,   221,   221,
  3344. !    221,   222,   223,   223,   223,   223,   223,   223,   224,   225,
  3345. !    226,   227,   227,   228,   229,   229,   230,   230,   230,   231,
  3346. !    231,   232,   232,   233,   233,   233,   234,   234,   234,   234,
  3347. !    235,   236,   236,   236,   236,   237,   237,   237,   238,   238,
  3348. !    238,   238,   239,   239,   239,   239,   239,   239,   239,   240,
  3349. !    240,   240,   241,   241,   241,   242,   242,   243,   243,   244,
  3350. !    244,   244,   245,   245,   245,   245,   246,   246,   246,   247,
  3351. !    247,   247,   247,   248,   248,   249,   249,   250,   250,   250,
  3352. !    251,   251,   252,   252,   254,   253,   255,   255,   255,   255,
  3353. !    255,   255,   256,   256,   257,   258,   258,   258,   258,   258,
  3354. !    258,   258,   258,   258,   259,   259,   259,   259,   259,   259,
  3355. !    260,   260,   260,   260,   260,   260,   261,   261,   261,   261,
  3356. !    261,   261,   261,   261,   262,   263,   264,   264,   265,   265,
  3357. !    265,   266,   266,   267,   267,   268,   268,   269,   269,   270,
  3358. !    270,   271,   271,   272,   273,   273,   273,   273,   273,   273,
  3359. !    273,   274,   274,   275,   275,   275,   275,   275,   275,   275,
  3360. !    275,   275,   275,   275,   276,   276,   276,   276,   276,   276,
  3361. !    276,   276,   276,   276,   276,   277,   277,   277,   277,   278,
  3362. !    279,   280,   280,   281,   281,   282,   283,   283,   284,   284,
  3363. !    284,   284,   286,   287,   285,   288,   288,   289,   289,   290,
  3364. !    290,   291,   290,   290,   292,   293,   290,   294,   295,   290,
  3365. !    296,   297,   298,   290,   299,   300,   301,   290,   302,   290,
  3366. !    303,   290,   304,   290,   305,   290,   290,   290,   290,   290,
  3367.      290,   290,   290,   290,   290,   290,   290,   290,   290,   290,
  3368. !    307,   308,   306,   309,   309,   309,   310,   311,   310,   312,
  3369. !    312,   313,   313,   314,   314,   314,   315,   315,   315,   316,
  3370. !    316,   316,   316,   317,   317,   318,   318,   318,   319,   319,
  3371. !    320,   320,   321,   322,   322,   323,   323,   323,   324,   324,
  3372. !    324,   324,   324,   324,   324,   324,   324,   324,   325,   325,
  3373. !    325,   325,   325,   326,   326,   327,   327,   327,   327,   327,
  3374. !    327,   328,   328,   329,   329,   330,   331,   331,   332,   332,
  3375. !    333,   334,   334,   335,   335,   335,   335,   336,   337,   337,
  3376.      337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
  3377.      337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
  3378.      337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
  3379. !    337,   337,   337
  3380.   };
  3381.   
  3382.   static const short yyr2[] = {     0,
  3383. ***************
  3384. *** 805,2833 ****
  3385.        4,     4,     1,     3,     3,     3,     3,     3,     3,     3,
  3386.        3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
  3387.        3,     3,     5,     3,     3,     1,     2,     3,     1,     1,
  3388. !      1,     1,     1,     1,     1,     2,     2,     3,     1,     1,
  3389. !      1,     3,     1,     1,     1,     1,     3,     3,     0,     4,
  3390. !      0,     6,     2,     4,     2,     2,     1,     4,     1,     7,
  3391. !      7,     7,     7,     4,     4,     2,     2,     1,     4,     2,
  3392. !      2,     2,     5,     3,     5,     3,     4,     6,     1,     2,
  3393. !      1,     2,     1,     1,     1,     2,     0,     2,     2,     3,
  3394. !      3,     3,     3,     3,     2,     2,     1,     1,     1,     2,
  3395. !      2,     2,     2,     1,     1,     1,     1,     2,     2,     3,
  3396. !      3,     4,     1,     2,     2,     1,     1,     2,     2,     1,
  3397. !      2,     2,     3,     1,     2,     1,     1,     1,     4,     4,
  3398. !      4,     4,     1,     1,     1,     1,     3,     1,     3,     1,
  3399. !      3,     0,     4,     0,     7,     4,     0,     7,     4,     0,
  3400. !      7,     4,     0,     7,     4,     0,     1,     1,     2,     6,
  3401. !      1,     3,     0,     1,     4,     6,     4,     1,     1,     1,
  3402. !      1,     1,     3,     1,     2,     3,     4,     1,     1,     3,
  3403. !      4,     6,     3,     5,     0,     7,     4,     0,     6,     3,
  3404. !      2,     2,     4,     1,     0,     1,     0,     1,     1,     2,
  3405. !      2,     2,     2,     3,     2,     2,     2,     3,     3,     1,
  3406. !      2,     0,     0,     3,     3,     2,     1,     1,     0,     1,
  3407. !      2,     1,     3,     1,     2,     1,     4,     4,     1,     1,
  3408. !      2,     2,     1,     0,     1,     4,     3,     1,     2,     2,
  3409. !      2,     2,     2,     2,     2,     2,     4,     2,     1,     5,
  3410. !      3,     0,     1,     3,     0,     1,     3,     1,     1,     1,
  3411. !      1,     4,     6,     4,     4,     6,     4,     3,     4,     6,
  3412. !      4,     4,     6,     4,     3,     1,     3,     1,     3,     2,
  3413. !      1,     6,     0,     2,     1,     2,     0,     2,     3,     3,
  3414. !      2,     2,     3,     1,     1,     1,     2,     5,     5,     3,
  3415. !      5,     4,     3,     3,     2,     1,     3,     3,     2,     2,
  3416. !      3,     1,     3,     3,     2,     2,     3,     1,     5,     5,
  3417. !      3,     5,     3,     4,     3,     2,     2,     1,     2,     4,
  3418. !      4,     2,     1,     1,     1,     2,     2,     2,     1,     2,
  3419. !      1,     2,     2,     3,     1,     3,     2,     3,     2,     2,
  3420. !      3,     1,     3,     4,     3,     2,     2,     1,     3,     2,
  3421. !      2,     1,     2,     3,     1,     3,     1,     5,     3,     4,
  3422. !      3,     4,     2,     2,     3,     2,     1,     1,     2,     2,
  3423. !      2,     0,     0,     1,     1,     2,     3,     1,     2,     3,
  3424. !      5,     6,     5,     0,     0,     6,     1,     2,     1,     1,
  3425. !      1,     2,     0,     4,     1,     0,     0,     6,     0,     0,
  3426. !      7,     0,     0,     0,    10,     0,     0,     0,    10,     0,
  3427. !      7,     0,     5,     0,     7,     0,     4,     2,     2,     2,
  3428. !      3,     6,     8,    10,    12,     4,     3,     2,     2,     1,
  3429. !      1,     0,     0,     7,     1,     2,     2,     0,     0,     5,
  3430. !      1,     1,     3,     3,     2,     2,     2,     3,     4,     4,
  3431. !      3,     4,     6,     6,     0,     1,     0,     1,     1,     0,
  3432. !      1,     1,     3,     4,     1,     3,     0,     1,     1,     1,
  3433. !      2,     2,     2,     1,     1,     2,     2,     2,     2,     1,
  3434. !      3,     2,     2,     4,     2,     2,     2,     2,     2,     2,
  3435. !      1,     2,     1,     3,     1,     1,     0,     0,     1,     0,
  3436. !      4,     1,     1,     3,     0,     3,     3,     3,     1,     2,
  3437.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  3438.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  3439. !      2,     2,     3,     2,     2,     2,     2,     3,     2,     2,
  3440. !      4,     4,     3,     2
  3441.   };
  3442.   
  3443.   static const short yydefact[] = {     3,
  3444. !     10,    10,     5,     0,     4,     0,   220,   523,   307,   317,
  3445. !    475,     0,     8,     9,     0,     0,   389,     0,   709,     0,
  3446. !    535,   221,    64,     0,     0,   697,     0,    76,    21,     0,
  3447. !     11,     6,     0,    15,    14,    13,    12,   277,     0,   524,
  3448. !    117,   230,   502,     0,   297,     0,   296,   310,     0,   330,
  3449. !    316,     0,   400,   402,   403,   408,   407,   384,   306,   529,
  3450. !    486,     0,   229,   231,   485,     0,   525,   318,   473,     0,
  3451. !      0,   219,    62,    63,   527,     0,     0,   101,   102,   103,
  3452. !    378,   381,     0,   531,     0,   382,     0,     0,     0,    32,
  3453. !      0,   307,     0,    22,     0,     0,   400,     0,     0,     0,
  3454. !      0,   500,     0,     0,     0,   499,     0,     0,     0,     0,
  3455. !    230,     0,     0,     0,   229,   231,   473,     0,     3,     0,
  3456. !      0,     0,     0,   402,   403,   700,     0,    88,    83,   277,
  3457. !      0,     0,    60,   528,   124,   473,     0,   477,    61,     0,
  3458. !      0,     0,     0,     0,   326,   287,   484,   288,   496,     0,
  3459. !    473,   309,   308,    59,   298,     0,   328,     0,   303,   323,
  3460. !    324,   299,   312,   314,   325,     0,    54,   390,   391,   392,
  3461. !    393,   406,   107,   106,   108,   395,   401,   397,   117,   396,
  3462. !    409,   409,   423,     0,   476,   311,    72,     0,    75,   533,
  3463. !    517,   487,   526,     0,   530,     0,   744,   740,   739,   737,
  3464. !    719,   724,   725,     0,   731,   730,   716,   717,   715,   734,
  3465. !    723,   720,   721,   722,   726,   727,   713,   714,   710,   711,
  3466. !    712,   736,   728,   729,   718,   735,     0,   732,   641,   310,
  3467. !    642,   705,   475,   234,   275,     0,     0,     0,     0,   156,
  3468. !    271,   269,   247,   273,   274,     0,     0,     0,     0,     0,
  3469. !      0,     0,   129,   128,     0,   130,   131,     0,     0,   216,
  3470. !    132,     0,   118,     0,   189,     0,   193,   186,   121,   233,
  3471. !    155,     0,     0,   235,   236,     0,   120,   294,   310,   295,
  3472. !    518,   258,   249,     0,     0,     0,   400,   380,     0,   375,
  3473. !    532,     0,   133,   134,     0,     0,     0,     0,    31,     0,
  3474. !    110,   409,   125,   109,   115,     0,   498,     0,   497,   102,
  3475. !    103,   218,   227,     0,   506,   226,     0,   505,     0,   232,
  3476. !    513,     0,     0,    18,    10,     0,     7,     7,    48,    47,
  3477. !    700,     0,    34,    42,    38,    36,    43,    40,   332,    82,
  3478. !     89,    86,     0,     0,   277,     0,     0,     0,   572,    65,
  3479. !    578,    67,   113,   511,     0,   674,   675,   154,     0,   153,
  3480. !    669,   691,     0,   294,   310,   295,     0,   668,   670,   698,
  3481. !    680,     0,   515,     0,     0,     0,   482,     0,   481,     0,
  3482. !      0,     0,     0,   473,    70,    58,    73,     0,    57,   473,
  3483. !      0,   477,   495,     0,   300,   301,     0,    55,    71,    56,
  3484. !     74,   305,   304,   315,   700,   331,   398,   394,   399,   410,
  3485. !    404,   405,   439,     0,     0,   442,   445,     0,     0,   428,
  3486. !      0,   700,   313,     0,     0,   346,   474,   501,   534,     0,
  3487. !      0,   733,   738,   473,   473,     0,   473,   743,     0,     0,
  3488. !      0,   163,     0,     0,   165,     0,     0,     0,     0,     0,
  3489. !      0,     0,     0,   162,   159,   158,   160,     0,     0,     0,
  3490. !      0,   217,     0,   116,   161,     0,     0,   187,     0,     0,
  3491. !      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  3492.        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  3493. !    243,   245,   246,   279,   278,     0,     0,     0,     0,     0,
  3494. !    167,   471,     0,   175,   276,   223,     0,   697,   222,   261,
  3495. !    262,     0,   289,   552,   548,   557,     0,   477,   473,   473,
  3496. !    473,   291,   555,     0,   522,   293,     0,   292,   260,     0,
  3497. !    256,   270,   272,   519,     0,   257,   112,   111,   468,   387,
  3498. !    466,   377,     0,   319,     0,     0,   320,   321,   322,    33,
  3499. !      0,    28,    24,   696,   310,    26,   695,    30,   693,   122,
  3500. !    114,   504,   503,   232,   507,     0,    17,    20,    19,   332,
  3501. !     53,    49,    51,    52,    50,    46,     0,     0,     0,     0,
  3502. !    346,   104,    94,   105,     0,    87,    90,     0,     0,     0,
  3503. !    368,     0,   364,    84,     0,     0,    66,    69,   579,   573,
  3504. !    473,   473,   673,   686,   679,   677,   552,   548,     0,   687,
  3505. !    473,   690,   692,   688,     0,   689,   473,   672,   685,   678,
  3506. !    676,   671,   699,   682,   683,     0,   514,   478,   480,   479,
  3507. !      0,     0,   494,     0,   346,   327,   490,     0,     0,     0,
  3508. !    493,     0,   483,   302,   329,   346,   332,   420,     0,   419,
  3509. !    411,   412,   414,     0,   416,   438,   434,   433,   220,   523,
  3510. !    473,     0,   667,   700,   435,   443,   448,   449,   700,   700,
  3511. !    436,   446,   700,     0,   383,   430,   429,   431,   432,   332,
  3512. !    702,   310,   703,     0,     0,     0,   345,   347,   348,   742,
  3513. !    741,   705,   705,   705,     0,     0,     0,   522,     0,     0,
  3514. !    523,     0,   157,     0,     0,     0,     0,     0,     0,   238,
  3515. !    237,     0,   184,   119,   220,   523,   221,     0,     0,   369,
  3516. !    385,     0,   215,   214,   659,   658,     0,   212,   211,   209,
  3517. !    210,   208,   207,   206,   203,   204,   205,   201,   202,   196,
  3518. !    197,   198,   199,   200,   194,   195,     0,     0,     0,     0,
  3519. !      0,     0,   169,   181,     0,     0,   168,   473,   473,     0,
  3520. !    473,   470,   542,     0,     0,     0,     0,   264,     0,   266,
  3521. !      0,   516,   551,   550,   547,   546,   696,     0,     0,   566,
  3522. !      0,     0,   563,   290,   564,   553,   473,   667,   477,   552,
  3523. !    548,     0,     0,   473,   233,     0,   518,     0,     0,     0,
  3524. !    388,     0,   387,   152,   151,   150,   149,     0,    23,     0,
  3525. !    395,     0,     0,    16,   346,    35,    39,    37,    41,     0,
  3526. !      0,    92,     0,    96,     0,   100,     0,    98,     0,   365,
  3527. !      0,    85,    68,     0,   580,     0,   574,   575,   512,   509,
  3528. !    551,   547,   552,   548,     0,   485,     0,   473,   553,   552,
  3529. !    548,     0,   233,     0,   518,   510,     0,   681,   336,   473,
  3530. !    473,   473,   492,   342,   346,     0,     0,   422,   421,   415,
  3531. !      0,     0,   441,   346,     0,    79,     0,   332,   332,     0,
  3532. !    332,     0,   346,     0,   701,     0,     0,   343,   349,   707,
  3533. !    706,   708,   248,   164,     0,     0,     0,   166,   190,   192,
  3534. !    191,   254,   255,     0,     0,     0,     0,   240,     0,     0,
  3535. !      0,     0,   185,     0,   241,   244,   179,   178,   171,     0,
  3536. !    170,   183,     0,     0,   539,   537,     0,   540,   477,   176,
  3537. !      0,     0,   267,     0,     0,   549,   545,   556,   473,   565,
  3538. !    554,   559,     0,   561,     0,     0,   520,   521,     0,   259,
  3539. !    469,   467,   379,     0,    25,    29,   694,     0,     0,    44,
  3540. !     93,    91,     0,     0,     0,     0,   366,   362,     0,     0,
  3541. !    220,   523,   584,   596,   599,     0,   572,     0,     0,     0,
  3542. !      0,     0,     0,   221,   630,     0,   655,     0,   591,     0,
  3543. !      0,   310,     0,   568,   589,   595,   567,   590,   631,     0,
  3544. !    602,   606,   576,   551,   547,   487,   553,   521,   684,   334,
  3545. !    491,   488,   489,   340,   339,     0,     0,   413,   346,   346,
  3546. !     78,   458,   473,   220,   523,     0,   444,   450,   451,   700,
  3547. !    700,   346,   346,   447,     0,   437,   704,   333,   353,     0,
  3548. !      0,     0,     0,     0,     0,   373,     0,     0,   370,   188,
  3549. !    213,   126,     0,   172,   173,   180,   182,   538,   536,   543,
  3550. !    541,     0,   177,     0,   263,   265,   562,   473,   560,   228,
  3551. !    376,     0,    45,    95,    99,    97,   367,     0,   577,   571,
  3552. !    583,   645,   647,   572,   572,   572,     0,     0,     0,   616,
  3553. !    618,   619,   620,     0,     0,     0,   646,   572,   656,     0,
  3554. !    592,   285,   700,     0,   286,     0,   700,     0,   700,     0,
  3555. !      0,   581,   570,   569,   593,   629,   628,   572,   572,     0,
  3556. !      0,   337,   417,   418,   457,   454,   440,     0,     0,   346,
  3557. !    332,   332,   452,   455,   359,   360,   361,   358,     0,   351,
  3558. !    354,   344,     0,     0,     0,     0,   371,     0,     0,   126,
  3559. !    242,     0,   174,   544,   268,   558,   123,   363,     0,     0,
  3560. !      0,   587,     0,     0,   572,   648,     0,   651,     0,     0,
  3561. !    612,     0,   621,     0,   627,   632,     0,   281,   332,   283,
  3562. !    284,   332,     0,     0,     0,   280,   282,   582,   572,     0,
  3563. !      0,   335,   341,     0,    77,   346,   346,   465,   346,   346,
  3564. !      0,     0,   353,     0,     0,   250,   251,   252,   253,     0,
  3565. !    374,   127,   472,   137,     0,   585,   597,   588,   600,   652,
  3566. !    650,     0,   649,   144,     0,   310,     0,     0,     0,   617,
  3567. !    626,     0,     0,   594,   141,     0,   140,     0,   338,   464,
  3568. !    461,   459,   462,   453,   456,   352,   350,   220,     0,   372,
  3569. !      0,   572,     0,     0,     0,     0,   610,   700,   614,   613,
  3570. !      0,   635,     0,   633,   660,     0,   603,   607,     0,     0,
  3571. !      0,   355,   357,   138,   586,   573,   598,   148,   135,     0,
  3572. !      0,   654,     0,   653,   572,   332,     0,   637,   636,   638,
  3573. !      0,     0,   661,   662,   622,     0,     0,   460,   463,     0,
  3574. !    145,     0,     0,   601,   611,   346,   615,   634,     0,   660,
  3575. !      0,     0,     0,     0,   356,     0,     0,   136,     0,   639,
  3576. !      0,     0,   623,   663,   604,   608,   147,   146,   142,     0,
  3577. !    664,     0,     0,     0,     0,     0,     0,     0,   665,     0,
  3578. !    624,   605,   609,   143,     0,     0,   640,     0,     0,   643,
  3579. !    644,   666,   625,     0,     0,     0
  3580.   };
  3581.   
  3582. ! static const short yydefgoto[] = {  1354,
  3583. !      1,     2,   120,   568,   987,     3,     4,    31,    32,    33,
  3584. !    300,   551,   552,   553,    34,    91,    35,   577,   579,   578,
  3585. !    580,   576,    36,    37,    38,   415,   129,   130,   131,   341,
  3586. !    586,   587,   539,   588,   177,    39,    40,    41,   135,   262,
  3587. !    263,   303,   813,   304,  1151,   264,   988,  1281,  1216,  1236,
  3588. !   1237,  1336,  1277,   293,   793,   265,   448,   500,   757,   266,
  3589. !    267,   268,   294,   270,   510,   313,    43,   271,   460,  1052,
  3590. !    272,   273,   274,   275,   132,   276,   989,   405,   520,   777,
  3591. !    990,    45,   162,   991,    47,   163,   443,   164,   144,   156,
  3592. !     49,   635,   145,  1120,   406,  1194,   157,  1121,    50,  1040,
  3593. !    687,   688,   689,  1139,  1140,  1141,   969,   720,   721,    51,
  3594. !    543,   289,   912,   802,    52,    53,    54,    55,   181,   182,
  3595. !     56,    57,    58,   411,   651,   652,   653,   654,   184,   418,
  3596. !    419,   420,   421,   665,   671,   666,  1027,   667,   668,  1028,
  3597. !   1029,   540,   541,   501,   783,    59,   374,   375,   146,    60,
  3598. !     61,   147,   148,   114,    63,   511,   281,   282,   283,    65,
  3599. !    284,    67,    68,   180,    69,   285,   762,   763,   778,   523,
  3600. !    993,   994,  1161,   836,   837,   838,   350,   995,   996,  1084,
  3601. !   1252,  1163,   997,   998,  1189,  1085,  1253,  1086,  1254,  1118,
  3602. !   1296,  1334,  1119,  1297,  1335,  1285,  1229,  1287,  1172,   999,
  3603. !   1232,  1290,  1264,  1308,  1330,  1227,  1338,  1000,  1001,  1002,
  3604. !   1100,   727,  1292,  1293,  1294,  1340,   367,   779,   369,   370,
  3605. !    371,   558,   372,   107,   625,  1179,   683,   684,   438,    71,
  3606.       72
  3607.   };
  3608.   
  3609. ! static const short yypact[] = {    64,
  3610. !     80,-32768,-32768,  2131,-32768,   130,-32768,   283,    48,-32768,
  3611. ! -32768,   556,-32768,-32768,    66,    87,-32768,   206,-32768,  2650,
  3612. ! -32768,   210,-32768,  1299,  1299,-32768,  1901,-32768,-32768,   292,
  3613. ! -32768,   333,  3137,-32768,-32768,-32768,-32768,   573,   353,   368,
  3614. ! -32768,-32768,   166,  1701,-32768,  2829,-32768,  1033,   294,-32768,
  3615. ! -32768,   540,-32768,-32768,-32768,-32768,-32768,   396,  1486,-32768,
  3616. ! -32768,   591,-32768,-32768,-32768,    82,-32768,-32768,-32768,   214,
  3617. !   6712,-32768,-32768,-32768,-32768,  8620,  2499,-32768,   283,   210,
  3618. !    355,   414,   368,-32768,   214,-32768,   214,  8620,  8620,-32768,
  3619. !    512,-32768,   210,-32768,  4042,  3298,     1,   214,  8446,   283,
  3620. !   2225,-32768,   361,   267,  2225,-32768,   262,  2706,  2706,  1901,
  3621. !    383,   435,   166,   453,   495,   498,-32768,   571,   446,  2532,
  3622. !    224,  4042,  3192,   680,   723,   521,   617,-32768,    55,    16,
  3623. !    143,   143,-32768,-32768,   546,-32768,  6059,   532,-32768,  3255,
  3624. !   3255,  4407,   641,   569,-32768,-32768,   255,-32768,-32768,    82,
  3625. ! -32768,-32768,-32768,-32768,  1033,   669,-32768,   998,-32768,-32768,
  3626. ! -32768,  1070,   673,-32768,-32768,  4042,-32768,-32768,-32768,-32768,
  3627. ! -32768,-32768,-32768,-32768,-32768,-32768,-32768,   368,   775,-32768,
  3628. !    609,   609,-32768,  2064,-32768,   673,-32768,   604,   970,-32768,
  3629. ! -32768,-32768,-32768,  3851,-32768,    50,-32768,   605,   633,-32768,
  3630. ! -32768,-32768,-32768,   640,-32768,-32768,-32768,-32768,-32768,-32768,
  3631.   -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
  3632. ! -32768,-32768,-32768,-32768,-32768,-32768,   601,-32768,-32768,   673,
  3633. !   1486,   654,   627,-32768,-32768,  9561,  9644,   659,   664,-32768,
  3634. ! -32768,-32768,-32768,-32768,-32768,   675,   689,   696,   698,   701,
  3635. !    262,  9312,-32768,-32768,  9312,-32768,-32768,  9312,  6796,  3961,
  3636. ! -32768,   422,-32768,  9312,-32768,  8707,-32768,-32768,  9780,-32768,
  3637. !    845,  1829,  8790,-32768,   781,   434,-32768,   126,  1601,  4144,
  3638. ! -32768,   160,-32768,   475,   813,  4042,     1,-32768,   262,   690,
  3639. ! -32768,   721,   743,  9688,   726,   728,   734,   800,-32768,  2499,
  3640. ! -32768,   609,-32768,-32768,-32768,   478,-32768,   125,-32768,-32768,
  3641. ! -32768,-32768,-32768,  2225,-32768,-32768,  2225,-32768,   758,-32768,
  3642. ! -32768,  3851,    47,-32768,   729,  2499,-32768,-32768,-32768,-32768,
  3643. !    521,   708,-32768,-32768,-32768,-32768,-32768,-32768,   712,-32768,
  3644. !    249,-32768,  6886,  8877,-32768,   143,   143,   803,-32768,-32768,
  3645. ! -32768,-32768,-32768,   855,   765,-32768,-32768,   743,   767,  9688,
  3646. !    296,  2466,  3192,  2466,  3043,  3464,   772,-32768,   100,  3351,
  3647. !    807,   819,-32768,   776,  8877,  3862,-32768,  3862,-32768,  4280,
  3648. !   4280,  4407,   785,-32768,-32768,-32768,   970,  4042,-32768,-32768,
  3649. !   6161,   792,-32768,  4311,  1070,  1033,  4042,-32768,-32768,-32768,
  3650. !    970,-32768,-32768,-32768,   521,-32768,-32768,-32768,-32768,   905,
  3651. ! -32768,-32768,-32768,  8877,   447,  1155,  3724,    60,  1544,-32768,
  3652. !    252,   521,   673,  2142,   802,   867,-32768,-32768,-32768,   796,
  3653. !    798,-32768,-32768,-32768,-32768,   164,-32768,-32768,  8877,   627,
  3654. !   6796,-32768,   229,  6796,-32768,  8877,  8964,  9312,  8620,  2142,
  3655. !   2142,  2142,  2142,-32768,-32768,-32768,-32768,   805,   809,   803,
  3656. !    810,-32768,  8620,-32768,-32768,  6623,  6796,-32768,  8877,  8877,
  3657. !   6976,  8877,  8877,  8877,  8877,  8877,  8877,  8877,  8877,  8877,
  3658. !   8877,  8877,  8877,  8877,  8877,  8877,  8877,  8877,  8877,  8877,
  3659. ! -32768,-32768,-32768,-32768,-32768,  8877,  8877,  8877,  8620,  1393,
  3660. !    564,   670,  7615,-32768,-32768,   283,   865,   912,-32768,   237,
  3661. !    244,   615,-32768,  1080,  1080,-32768,  3796,   814,   837,   884,
  3662. ! -32768,-32768,   490,  8090,   114,-32768,   188,-32768,-32768,  8877,
  3663. ! -32768,-32768,-32768,-32768,   626,-32768,-32768,-32768,   877,   874,
  3664. ! -32768,-32768,   262,-32768,  7438,  7528,-32768,-32768,-32768,-32768,
  3665. !    606,   879,-32768,-32768,  3594,   540,-32768,-32768,   887,-32768,
  3666. ! -32768,-32768,-32768,   844,-32768,   891,-32768,-32768,-32768,   712,
  3667. ! -32768,-32768,-32768,-32768,-32768,-32768,   893,   896,   897,   903,
  3668. !    867,-32768,-32768,   210,  8877,   906,-32768,   280,   420,   436,
  3669. ! -32768,  6263,  9757,-32768,   849,   143,-32768,-32768,-32768,    24,
  3670. ! -32768,-32768,-32768,-32768,-32768,-32768,   817,   817,  4802,-32768,
  3671. ! -32768,-32768,-32768,-32768,  8181,-32768,-32768,-32768,-32768,-32768,
  3672. ! -32768,-32768,-32768,-32768,   902,  6886,-32768,-32768,-32768,-32768,
  3673. !   3862,  3862,-32768,  4311,   867,-32768,   855,   861,   863,   866,
  3674. ! -32768,   872,-32768,  1070,-32768,   867,   712,-32768,   883,-32768,
  3675. !    923,-32768,-32768,   939,-32768,  9757,-32768,-32768,   922,    18,
  3676. ! -32768,  8877,  2818,   521,   930,-32768,-32768,-32768,   510,   611,
  3677. !    934,-32768,   521,   937,-32768,-32768,-32768,-32768,-32768,   748,
  3678. ! -32768,  3086,-32768,   281,   571,   916,   947,   867,-32768,-32768,
  3679. ! -32768,   282,   282,   282,   904,   908,  9051,   884,   913,   915,
  3680. !    192,   917,-32768,   918,   920,   938,   944,   948,   957,-32768,
  3681. ! -32768,   932,-32768,-32768,   975,   421,   338,  8877,   976,-32768,
  3682. !    987,   941,  9757,  9757,-32768,-32768,   988,  4588,  9818,  4862,
  3683. !   4703,  4168,  4535,  3669,  1937,  1937,  1937,  1334,  1334,  1050,
  3684. !   1050,   713,   713,   713,-32768,-32768,   955,   954,   959,   958,
  3685. !    961,  2142,   564,-32768,  6886,  8877,-32768,-32768,-32768,  8877,
  3686. ! -32768,-32768,   980,  9312,   967,   981,  1030,-32768,  8877,-32768,
  3687. !   8877,-32768,  1350,-32768,  1350,-32768,    71,   977,   978,-32768,
  3688. !    973,  2142,   855,-32768,   855,  1728,-32768,  1109,   983,  8272,
  3689. !   8272,  5855,   979,  8707,   383,   984,   498,   813,   989,  8877,
  3690. !    262,   982,   874,-32768,  9757,-32768,  9757,  2499,-32768,  2761,
  3691. !    662,  6886,   396,-32768,   867,-32768,-32768,-32768,-32768,   708,
  3692. !    994,-32768,   249,-32768,  8877,-32768,  8877,-32768,  8877,-32768,
  3693. !    116,-32768,-32768,   262,-32768,  5585,  1049,-32768,   855,   855,
  3694. !   1260,  1260,  1918,  1918,  4802,-32768,    82,-32768,  2412,  8359,
  3695. !   8359,  5957,   240,  1005,   341,   855,  6886,-32768,  1031,-32768,
  3696. ! -32768,-32768,-32768,  1051,   867,  8620,   905,-32768,-32768,-32768,
  3697. !   8877,  8877,   152,  4929,  1006,-32768,   401,   712,   712,  3568,
  3698. !    755,  2290,   867,  2142,-32768,    54,  1023,-32768,-32768,-32768,
  3699. ! -32768,-32768,-32768,-32768,  9395,  9395,  7066,-32768,-32768,-32768,
  3700. ! -32768,-32768,-32768,  1024,  1029,  1032,  1034,-32768,  4688,  6886,
  3701. !   6353,  1020,-32768,  8877,-32768,-32768,-32768,-32768,   474,  1035,
  3702. ! -32768,-32768,  1039,    44,   181,   181,  1027,   181,-32768,-32768,
  3703. !   9312,  1128,-32768,  1044,  1046,-32768,-32768,-32768,-32768,-32768,
  3704. ! -32768,   855,  1059,-32768,  1047,  1062,-32768,-32768,   452,-32768,
  3705. !   9757,-32768,-32768,  1063,-32768,-32768,-32768,  2064,   708,-32768,
  3706. ! -32768,-32768,  1068,  1071,  1073,  6443,-32768,-32768,   745,   289,
  3707. !   1075,   575,-32768,-32768,-32768,  1065,-32768,  8877,  1116,  1121,
  3708. !   1122,  8533,    67,   572,-32768,  1129,  1175,  1131,-32768,  2565,
  3709. !   4428,  2918,  5022,-32768,-32768,  1170,-32768,-32768,-32768,  7718,
  3710. ! -32768,-32768,-32768,  1260,  1260,-32768,  2412,  1408,-32768,-32768,
  3711. !    855,   855,   855,-32768,  1132,  1089,  1093,-32768,  4929,  4929,
  3712. ! -32768,-32768,-32768,  1138,   624,  8877,-32768,-32768,-32768,   521,
  3713. !    521,   867,   867,-32768,  2406,-32768,-32768,-32768,   583,  6886,
  3714. !   8877,  8877,  8877,  8877,  6886,-32768,  8877,  1140,-32768,-32768,
  3715. !   9801,   546,  8877,-32768,   474,-32768,-32768,-32768,-32768,-32768,
  3716. ! -32768,  1100,-32768,  1163,-32768,-32768,   855,-32768,-32768,-32768,
  3717. ! -32768,    73,-32768,-32768,-32768,-32768,-32768,   262,-32768,-32768,
  3718. ! -32768,-32768,-32768,-32768,-32768,   803,  6533,  1123,  4518,-32768,
  3719. ! -32768,-32768,-32768,  1153,  8877,  1158,-32768,-32768,-32768,  1130,
  3720. ! -32768,-32768,   191,   763,-32768,   788,   521,  9138,   427,   797,
  3721. !    307,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,  6886,
  3722. !   6886,-32768,-32768,-32768,-32768,-32768,   152,  8877,  8877,  4929,
  3723. !    712,   712,  1159,  1161,-32768,-32768,-32768,-32768,   315,-32768,
  3724. !   1133,-32768,  1120,  1126,  1127,  1137,-32768,  9711,  6886,   546,
  3725. ! -32768,  1119,-32768,-32768,-32768,   855,-32768,-32768,   462,   462,
  3726. !   8000,-32768,  1210,  1184,  1139,-32768,  1189,-32768,  8620,  8877,
  3727. ! -32768,  7820,-32768,  1190,-32768,-32768,   571,-32768,   712,-32768,
  3728. ! -32768,   712,  9478,  9478,  7156,-32768,-32768,-32768,   803,  7246,
  3729. !   7246,-32768,-32768,  6886,-32768,  4929,  4929,-32768,   867,   867,
  3730. !   6886,  6886,   583,  1146,  9225,-32768,-32768,-32768,-32768,  6886,
  3731. ! -32768,-32768,-32768,-32768,  8620,-32768,-32768,-32768,-32768,-32768,
  3732. ! -32768,  5675,-32768,-32768,  1148,   416,  4042,  9734,  7820,-32768,
  3733. ! -32768,  5141,    51,-32768,-32768,  1198,-32768,  1199,-32768,-32768,
  3734. ! -32768,  1174,  1200,-32768,-32768,-32768,-32768,   369,  1154,-32768,
  3735. !   1160,   803,  7910,   527,   370,  5273,-32768,   521,-32768,-32768,
  3736. !    379,-32768,  5377,-32768,  1248,  1204,-32768,-32768,  6886,  6886,
  3737. !   8877,-32768,-32768,-32768,-32768,    25,-32768,-32768,-32768,  8877,
  3738. !   1205,-32768,  1213,-32768,   803,   712,  7820,-32768,-32768,-32768,
  3739. !   1178,   271,  1216,-32768,-32768,  7336,  7336,-32768,-32768,  1171,
  3740. ! -32768,  5765,  1172,-32768,-32768,   867,-32768,  1181,  8877,  1248,
  3741. !   1222,  1248,  1177,  1187,-32768,   397,  5481,-32768,  1233,-32768,
  3742. !   1192,   365,-32768,-32768,-32768,-32768,-32768,-32768,-32768,  1208,
  3743. ! -32768,  1271,  1236,  7910,  7910,  6886,  3413,   803,-32768,   410,
  3744. ! -32768,-32768,-32768,-32768,  1195,  1197,-32768,  1296,  1251,-32768,
  3745. ! -32768,-32768,-32768,  1308,  1309,-32768
  3746.   };
  3747.   
  3748.   static const short yypgoto[] = {-32768,
  3749. !   1191,-32768,-32768,   986,     7,  1310,-32768,-32768,-32768,-32768,
  3750. ! -32768,-32768,-32768,   507,-32768,-32768,-32768,-32768,-32768,-32768,
  3751. ! -32768,  -770,  1196,  1207,-32768,-32768,-32768,-32768,  1201,-32768,
  3752. ! -32768,   496,   135,-32768,-32768,-32768,  2838,   -25,-32768,  1221,
  3753. !    888,  -999,-32768,   -88,   178,-32768,   895,-32768,   169,   139,
  3754. !  -1101,-32768,  -524,  1474,   -99,   619,-32768,-32768,  -714,  3947,
  3755. !     43,  -240,  2252,  2872,   825,  1176,   432,-32768,-32768,-32768,
  3756. ! -32768,  -273,-32768,  -116,   -94,-32768,   266,    17,  -276,   132,
  3757. !     75,  -106,  -109,    -3,  1594,    27,  1371,  -118,  -752,   364,
  3758. ! -32768,   -82,-32768,-32768,   265,-32768,-32768,-32768,-32768,-32768,
  3759. !    327,-32768,   677,-32768,   155,-32768,-32768,   730,   769,    74,
  3760. ! -32768,-32768,-32768,   560,  -272,    13,  1335,  1336,-32768,-32768,
  3761. ! -32768,-32768,-32768,  -141,-32768,   500,   716,-32768,   559,   418,
  3762. !    497,  -414,-32768,-32768,-32768,-32768,-32768,-32768,   960,-32768,
  3763. !    501,   835,   582,   889,  2241,  1820,  -368,-32768,  3695,   -55,
  3764. !     10,-32768,  4252,   -90,   717,-32768,  3290,-32768,-32768,  3834,
  3765. !     -4,   245,  -328,  1372,  3416,   871,  -214,-32768,  4134,-32768,
  3766. !  -1157,  -942,  -343,   117,-32768,   553,   -97,  -122,-32768,-32768,
  3767. ! -32768, -1137,  -860, -1112,-32768,-32768,-32768,-32768,-32768,-32768,
  3768.   -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
  3769. ! -32768,-32768,-32768,-32768,-32768,   -37,-32768,-32768,-32768,-32768,
  3770. ! -32768,  -425,    86,-32768,    90,-32768,  -354,  -133,-32768,-32768,
  3771. !   -293,  1052,  -286,-32768,-32768,    40,   530,-32768,    57,-32768,
  3772.     -260
  3773.   };
  3774.   
  3775.   
  3776. ! #define    YYLAST        9897
  3777.   
  3778.   
  3779.   static const short yytable[] = {    66,
  3780. !     46,   323,   525,   368,   677,   600,   557,    85,   351,   351,
  3781. !     30,   533,   590,   559,   195,    85,    96,   315,   318,   103,
  3782. !    103,    84,   103,   642,   536,   468,   179,   556,    66,   123,
  3783. !    362,   291,    97,   232,   352,   347,   640,   359,   921,   150,
  3784. !    412,    66,   195,   403,   404,   395,   353,    85,  1218,   960,
  3785. !   1113,  1234,  1150,     8,    85,   505,  -124,   834,   834,   505,
  3786. !    143,    84,   505,    -1,  1256,   196,    85,  1225,    75,    78,
  3787. !    310,   345,    85,    96,  1263,   128,   557,   872,    44,    -2,
  3788. !    603,   655,    85,   559,     7,     8,    76,   513,   525,   287,
  3789. !    150,    85,    77,    85,    95,   674,   103,   302,   342,   308,
  3790. !    103,   189,    93,   103,   103,   103,   426,   122,   674,   618,
  3791. !   1265,   301,   343,  1251,  1275,    66,    46,   150,    66,   311,
  3792. !   -473,   165,    19,  -473,   429,   604,   835,  1301,   100,   100,
  3793. !    605,   697,  1114,   363,    22,   150,   150,   150,   331,  1117,
  3794. !   1278,  1095,   344,   348,  1317,  1057,    82,  1305,   566,   781,
  3795. !   1150,   286,  1266,    88,   619,  1038,   190,   784,   427,   620,
  3796. !    560,   150,   675,   606,    26,   339,   698,   100,  -473,   513,
  3797. !    966,  -473,   713,  -473,    89,  1157,    21,    93,    93,    66,
  3798. !    417,   396,   387,  -473,   100,    73,   176,   427,  1073,   103,
  3799. !    514,     8,   621,   362,    44,   425,   349,   401,   538,   429,
  3800. !    515,  -473,  -473,   529,  1054,  -700,  -473,   277,    90,   136,
  3801. !    516,  -700,   423,   517,   518,  -473,    93,     8,   967,   295,
  3802. !    297,  1278,  1278,   351,   351,   599,    85,   436,   165,   195,
  3803. !    277,    21,    74,    93,   502,   165,   165,  1104,   190,  1110,
  3804. !     93,   312,    75,   188,   595,   758,  1178,   530,   597,   598,
  3805. !    596,   582,     8,   137,   138,   759,   581,   368,   416,   165,
  3806. !     76,   533,   190,   362,    78,   310,    93,    85,   361,   760,
  3807. !    100,   512,   513,   436,   436,   527,   403,   404,    99,   329,
  3808. !    768,   150,   188,  -230,   362,   100,   644,   770,   427,   315,
  3809. !    318,   639,   583,   900,   455,    85,   363,   456,   390,    21,
  3810. !    457,   584,   537,   165,   404,   603,   465,   678,   875,   103,
  3811. !    193,  1230,   103,  1113,   311,   504,   697,   103,   646,    93,
  3812. !   1113,    85,    96,   824,   769,   655,   330,  -230,  -230,   193,
  3813. !   1310,   771,    21,    75,    93,   884,   585,   712,    97,   695,
  3814. !   1153,  -224,   391,   392,  1080,   425,   434,   193,   166,   167,
  3815. !    604,    76,   165,  -696,   679,   605,   435,   150,    66,   150,
  3816. !    150,   527,  1080,     7,   100,    66,   363,   825,  1260,  1203,
  3817. !    570,   150,  1311,   150,  1113,   150,   150,   150,   610,   118,
  3818. !    614,   616,   885,   150,  -231,   454,   119,   363,   606,   150,
  3819. !    461,  1081,   150,   425,   193,  1114,   747,  -103,   749,   750,
  3820. !     95,    19,  1114,  1024,  1025,    85,    99,   425,   133,  1188,
  3821. !    362,   150,    66,    22,    66,   417,  1204,   362,   134,    85,
  3822. !    945,   160,   161,  1271,  1332,  1080,  1307,    12,  -231,  -231,
  3823. !    799,   554,   664,   943,  1080,   190,     7,   506,   165,   507,
  3824. !    193,    19,  -225,    26,   647,    85,    85,    85,    85,   183,
  3825. !     17,    21,  1080,    22,     7,     8,  1114,   288,   113,   513,
  3826. !   1026,   680,   502,   826,  1348,   140,  1333,   290,   165,   165,
  3827. !   1272,    75,  1282,   351,    19,   141,   463,     7,     8,   828,
  3828. !   -102,  1288,  1186,    26,  -224,   821,    22,   815,   142,    76,
  3829. !    703,   464,    19,   416,   590,    85,   165,   436,   833,  1327,
  3830. !    657,   554,   362,   697,    22,  1214,   658,   827,   362,   436,
  3831. !    436,  1349,   527,   363,   557,    19,   508,   754,   188,    66,
  3832. !    363,   559,   361,   829,   533,   403,   429,    22,   193,   368,
  3833. !    179,   755,   463,   787,    26,   556,   320,   536,   655,   113,
  3834. !    113,   113,    78,    79,   168,   169,   170,   561,   324,  1215,
  3835. !    150,    85,   193,   468,   321,   681,   362,    26,    78,    79,
  3836. !   1062,   756,  1053,  -287,   865,    84,   298,   299,   886,  -287,
  3837. !   1279,   616,   696,   113,   171,   699,   425,   788,   789,   235,
  3838. !    705,   706,   707,   708,   709,    78,   310,  1135,  1136,  1137,
  3839. !     21,   187,    80,   172,   277,   127,  -508,   883,   722,  -225,
  3840. !    719,   188,   150,   150,   847,   363,    21,   754,    80,    81,
  3841. !    847,   363,   188,  -700,  1280,  -700,  -700,     7,   506,   340,
  3842. !    677,   755,  -700,   388,   389,    75,   150,   150,   165,   150,
  3843. !    751,  1097,   128,  1088,  1083,   311,   373,   173,   174,   175,
  3844. !     99,   385,   302,    76,  -700,  -700,  -700,   698,  -700,    85,
  3845. !   -700,   756,   636,   425,   368,    19,   923,   100,   847,   363,
  3846. !    808,   645,   241,  -700,  -288,  -700,  -700,    22,   410,   934,
  3847. !   -288,   935,  -700,   100,    75,   809,    21,   436,   160,   161,
  3848. !    193,   362,   188,  1129,    12,   362,   425,   436,   436,   436,
  3849. !    811,   424,    76,   430,  -700,  -700,   386,    26,  -700,   432,
  3850. !   -700,   362,   188,   876,    21,   433,    93,    17,   878,   879,
  3851. !   1058,  1059,   881,  1061,   439,   698,   -27,   165,   434,   -27,
  3852. !     21,   431,    93,   397,   398,   963,   719,   964,   435,   965,
  3853. !    571,   -27,   188,   333,   758,   334,    13,    14,   362,   335,
  3854. !   1159,  1160,   195,   115,   759,   362,   446,    85,   890,   891,
  3855. !    892,   447,   315,   318,  1176,   165,   193,   450,   760,   315,
  3856. !    318,   572,   449,   573,   451,   574,   452,   575,   436,   453,
  3857. !    436,   193,    13,    14,  1190,  1191,   336,    85,   337,    13,
  3858. !     14,   436,   338,    85,   363,    66,    66,    66,   363,   505,
  3859. !    489,   490,   542,   949,   361,  1032,  1033,   545,  1033,  1078,
  3860. !   1079,   -81,   550,    85,   363,    85,   930,   -81,   -80,  1342,
  3861. !   1343,   113,   113,   113,   -80,   531,     8,   388,  1180,     7,
  3862. !      8,  1222,   544,    11,   115,   115,   115,   547,   407,   548,
  3863. !    408,   567,   455,   456,   409,   549,   150,   150,   150,   150,
  3864. !    847,   363,   397,  1181,   150,   847,   847,   847,   363,   241,
  3865. !    532,   388,  1187,    19,   442,   445,   349,    19,   115,   564,
  3866. !    513,   427,    85,    21,  -695,    93,   601,    21,   602,    22,
  3867. !   1313,  1314,   150,   617,    70,   103,   626,    66,   417,    85,
  3868. !    627,   607,    87,   920,   425,   425,   633,   425,   491,   685,
  3869. !     98,   608,   455,   456,   104,   104,   641,   104,   686,    26,
  3870. !    690,   516,   691,    70,   609,   518,   710,   820,     8,   648,
  3871. !    711,   713,  1021,   722,   104,   766,    70,   767,   780,   361,
  3872. !    436,   436,    87,   436,   782,   492,   493,   784,   801,    98,
  3873. !    494,   495,   496,   497,   800,   649,   810,   455,   456,   554,
  3874. !    650,    98,     8,   868,   812,  -228,   814,    98,   816,   698,
  3875. !    832,   817,   818,    66,   417,    21,   416,    93,   819,   857,
  3876. !    823,   859,   860,  1162,   861,   104,    98,   862,   968,   649,
  3877. !    866,   104,   864,  1063,   869,   104,   863,   867,   104,   104,
  3878. !    104,   871,   292,   296,   877,   150,    66,   150,   880,    21,
  3879. !     70,    93,   104,    70,    13,    14,   882,  1017,   399,   150,
  3880. !    150,  -332,   150,   887,   888,   893,  1103,   904,  1109,   894,
  3881. !    104,   104,   104,   905,   898,   681,   899,   906,   901,   902,
  3882. !   -700,   903,  -700,  -700,  -332,  -332,   907,  -332,   461,  -700,
  3883. !     66,   417,   416,   908,  -101,   910,   104,   159,   160,   161,
  3884. !    113,   911,   913,   557,    12,  1048,   113,   914,  1199,  1200,
  3885. !   1346,  -700,  -700,   400,    70,  -700,   915,  -700,   916,   918,
  3886. !   1233,   917,   919,   932,   104,   165,  1162,    17,   929,  1131,
  3887. !   1132,   931,   594,   933,   402,   160,   161,   940,   938,   939,
  3888. !    947,    12,   834,   100,   953,   948,    11,   944,  1010,   188,
  3889. !    950,   193,   315,   318,   113,   961,   115,   115,   115,   646,
  3890. !   1048,    98,   104,   847,    17,  1249,  1008,  1023,  1014,   416,
  3891. !   1039,  1041,     8,    92,    10,    11,  1042,  1096,   356,  1043,
  3892. !     12,  1044,  1050,   513,   486,   487,   488,   489,   490,  1162,
  3893. !     21,  1060,    93,  1064,  1082,    15,  1055,   425,   425,    16,
  3894. !   1056,   959,    98,    17,   514,  1065,  1182,  1066,   104,   104,
  3895. !     70,  1069,  1087,   459,   515,   535,   104,   659,   660,    21,
  3896. !   1068,    93,  1162,  1070,   516,  1071,  1195,   517,   518,  1074,
  3897. !     98,  1300,  1075,  1138,  1076,  1090,  1091,  1092,   847,   847,
  3898. !    847,  1099,  1098,  1115,   104,   425,  1101,   104,   425,  1122,
  3899. !   1123,  1015,   104,   193,  1124,    19,    98,  1128,   661,  1149,
  3900. !   1022,   357,   112,  1306,  1154,    21,  1155,    22,  1173,  1036,
  3901. !   1169,    98,  1158,  1175,   662,  1347,  1201,  1177,  1202,   140,
  3902. !   1205,  1206,   150,  1213,  1219,   455,   456,  1207,  1208,   141,
  3903. !    362,  1269,   104,    70,   104,   104,    70,    26,  1209,  1220,
  3904. !     70,  1221,   663,  1258,  1223,  1231,   104,  1247,   104,  1257,
  3905. !    104,   104,   104,  1267,  1268,  1273,  1291,  1270,   104,  1295,
  3906. !   1304,  1274,     7,     8,   104,  1309,   185,   104,  1080,   628,
  3907. !   1312,  1320,  1315,  1318,   113,   113,   113,  1323,  1325,  1339,
  3908. !     98,   113,   113,   113,   316,   319,   104,    70,  1326,    70,
  3909. !   1329,  1341,   425,  1331,    98,  1337,  1350,  1286,  1351,   165,
  3910. !     19,     7,   100,   513,  1352,    11,  1353,  1355,  1356,   325,
  3911. !     21,     5,    22,   569,   955,   327,   461,   112,   962,   306,
  3912. !     98,    98,    98,    98,   607,   115,   328,  1212,  1217,  1238,
  3913. !    346,   115,    85,   363,   608,   459,   772,  1138,   459,    19,
  3914. !    700,   702,    26,   704,   516,  1125,  1126,   609,   518,    21,
  3915. !    714,    22,  1168,   100,  1106,   858,   185,  1246,  1133,  1134,
  3916. !    831,   459,   954,    24,   889,   726,  1018,   124,   125,   870,
  3917. !     98,   958,   104,    25,    48,  1072,   672,   803,  1035,   115,
  3918. !   1034,    26,   952,    86,   104,   104,    27,    70,   753,  1003,
  3919. !     48,   748,  1302,   513,   798,  1322,     8,   765,    10,    11,
  3920. !     21,  1324,    93,    48,    12,   535,   484,   485,   486,   487,
  3921. !    488,   489,   490,  1037,   514,     0,   155,  -232,     0,    15,
  3922. !      0,   624,     0,    16,   515,   104,    87,    17,     0,   186,
  3923. !      0,     0,  -232,  -232,   516,     0,     0,   517,   518,  -232,
  3924. !      0,   230,     0,    21,     0,    93,   279,    48,     0,     0,
  3925. !      0,  -232,     0,     0,     0,     0,  1198,     0,   279,   279,
  3926. !      0,     0,  -232,  -232,     0,  -232,   155,  -232,   554,   279,
  3927. !      0,     0,     0,     0,     0,     0,     0,   104,   104,    70,
  3928. !    752,     0,     0,     0,   922,   798,     0,     0,     0,     8,
  3929. !     48,    10,   185,   155,     0,  -232,  -232,    12,     0,  -232,
  3930. !   -232,   104,   104,     0,   104,     0,     0,   365,     0,  -232,
  3931. !      0,     0,    15,     0,     0,     0,    16,     0,     0,     0,
  3932. !     17,     0,  1240,  1241,    98,  1242,  1243,     0,     0,     0,
  3933. !      0,     0,     0,    70,     0,     0,    21,     0,    93,   113,
  3934. !      0,   957,     0,     0,   413,     0,     7,     8,    92,    10,
  3935. !     11,     0,   104,     0,    48,    12,   316,   319,     0,   115,
  3936. !    115,   115,   104,   104,   104,     0,   115,   115,   115,     0,
  3937. !     15,     0,     0,     0,    16,     0,     0,     0,    17,  -425,
  3938. !      0,     0,     0,     0,    19,     0,  1009,     0,     0,     0,
  3939. !      0,     0,     0,     0,    21,     0,    22,     0,     0,   676,
  3940. !      0,   186,     0,   414,   100,     0,   160,   161,    24,     0,
  3941. !    358,     0,    12,     0,   113,   113,   113,     0,    25,     0,
  3942. !      0,     0,    98,     0,     0,     0,    26,     0,     0,   279,
  3943. !      0,    27,  1319,     0,     0,    17,     0,     0,     0,  1046,
  3944. !   1049,     0,   230,   104,   513,   104,  -425,     0,     0,     0,
  3945. !    186,    21,    98,    93,   927,     0,   104,     0,    98,     0,
  3946. !    798,   798,   798,     0,   229,   514,     0,     0,   535,   278,
  3947. !    555,     0,     0,     0,     0,   515,     0,     0,    98,     0,
  3948. !     98,   278,   278,     0,     0,   516,   459,     0,   524,   518,
  3949. !      0,     0,   278,    98,     0,  1049,    48,     0,     0,   796,
  3950. !      0,     0,     0,     7,     8,     0,     0,     0,     0,     0,
  3951. !      0,   104,   104,   104,   104,    70,     0,     0,     0,   104,
  3952. !    798,   798,   798,     0,     0,     0,     0,     0,     0,     0,
  3953. !    364,   100,     0,   155,   427,     0,   186,    98,     0,     0,
  3954. !    555,    19,     0,     0,     0,     0,   459,   104,     0,     0,
  3955. !    104,    21,    70,    22,    98,     0,   139,     0,     0,     0,
  3956. !   1016,   365,     0,     0,     0,   140,     0,     0,     0,  1142,
  3957. !      0,   513,     0,     0,  1147,   141,     0,     0,    21,     0,
  3958. !     93,     0,     0,    26,   112,     0,     0,   155,   142,    48,
  3959. !    854,   459,   514,     0,   682,   104,   104,     0,   104,     0,
  3960. !      0,     0,   515,     0,     0,     0,     0,     0,     0,     0,
  3961. !      0,   279,   516,     0,   279,   517,   518,   358,     0,   279,
  3962. !    682,   682,   682,   682,   115,     0,     0,     0,    70,     0,
  3963. !      0,     0,     8,   279,    10,    11,     0,   279,   112,     0,
  3964. !     12,     0,     0,   101,   105,     0,     0,     0,     0,  1192,
  3965. !   1193,     0,   278,     0,     0,    15,     0,     0,     0,    16,
  3966. !    104,    70,   104,    17,   358,   229,     0,     0,     0,   279,
  3967. !    230,     0,   796,     0,   104,   104,  1094,   104,  1211,    21,
  3968. !      0,    93,   498,     0,     0,     0,     0,   555,     0,     0,
  3969. !    231,     0,     0,   364,   365,   280,     0,     0,     0,   115,
  3970. !    115,   115,     0,     7,   100,    70,     0,   280,   280,     0,
  3971. !      0,     0,   358,     0,     0,     0,   499,     0,   280,     0,
  3972. !      7,     8,     0,  1239,    11,     0,     0,   314,   317,     0,
  3973. !   1244,  1245,     0,     0,     0,  1143,  1144,  1145,  1146,  1250,
  3974. !      0,    19,     0,     0,     0,     0,     0,  1152,     0,     0,
  3975. !      0,    21,     0,    22,     0,     0,   366,     0,    19,   376,
  3976. !    378,   513,     0,   364,     0,   108,   316,   946,    21,   358,
  3977. !     22,   358,   358,     0,     0,   109,     0,     0,   798,   555,
  3978. !      0,  1167,   843,    26,   364,   365,     0,     0,   110,  1174,
  3979. !      0,     0,   844,     0,     0,     0,     0,   358,  1298,  1299,
  3980. !     26,     0,   516,   358,     0,   845,   518,   482,   483,   484,
  3981. !    485,   486,   487,   488,   489,   490,     0,   278,     0,   316,
  3982. !    319,     0,     0,     0,     0,     0,   316,   319,     0,     0,
  3983. !      0,     0,     0,   555,   278,     0,     0,   278,     0,     0,
  3984. !      0,     0,   278,   278,   278,   278,   278,     0,     0,     0,
  3985. !      0,     0,     0,   798,   798,   798,   278,     0,   358,     0,
  3986. !    278,     0,     0,  1224,   413,  1344,     7,     8,    92,    10,
  3987. !     11,   316,   946,     0,     0,    12,     0,     0,   280,   459,
  3988. !      0,     0,     0,     0,  1224,  1224,     0,     0,   358,     0,
  3989. !     15,   231,   278,   229,    16,     0,     0,   104,    17,  -424,
  3990. !      0,     0,     0,     0,    19,     0,     0,     0,     0,  1224,
  3991. !    364,     0,     0,     0,    21,     0,    22,   364,     0,   366,
  3992. !      0,     0,   682,   414,     0,     0,   924,     0,    24,     0,
  3993. !      0,     6,     0,     7,     8,     9,    10,    11,    25,     0,
  3994. !      0,     0,    12,     0,     0,     8,    26,    10,    11,     0,
  3995. !      0,    27,   682,    12,     0,    13,    14,    15,   555,     0,
  3996. !      0,    16,   365,     0,     0,    17,  -424,     0,    15,    18,
  3997. !    358,    19,    16,     0,  1303,    20,    17,     0,   555,     0,
  3998. !    956,    21,     0,    22,     0,     0,    23,     0,     0,   366,
  3999. !    726,   726,    21,     0,    93,    24,     0,     0,     0,   631,
  4000. !    632,     0,   364,  1321,     0,    25,   992,    98,   364,     0,
  4001. !    366,     0,     0,    26,     0,   555,     0,     0,    27,     0,
  4002. !      0,     0,   365,     0,    28,    29,     0,     7,   100,   358,
  4003. !      0,   185,     0,     0,     0,     0,   279,     0,     0,     0,
  4004. !      0,     0,   358,   280,   358,     0,     0,     0,     0,     0,
  4005. !      0,     0,    48,     0,   682,     0,   364,     0,     0,     0,
  4006. !    280,     0,     0,   280,     0,    19,     0,   279,   280,   280,
  4007. !    280,   280,   280,     0,     0,    21,     0,    22,     0,     0,
  4008. !      0,     0,   280,   854,     0,     0,   280,     0,     0,    24,
  4009. !    413,     0,     7,     8,    92,    10,    11,     0,   358,    25,
  4010. !    358,    12,   358,     0,     0,     0,     0,    26,     0,   194,
  4011. !      0,     0,    27,     0,     0,     0,    15,     0,   280,   231,
  4012. !     16,     0,     0,     0,    17,  -427,     0,   269,    48,     0,
  4013. !     19,     0,     0,   773,   775,     0,   366,     0,     0,     0,
  4014. !     21,     0,    22,   366,     0,   278,     0,     0,     0,   414,
  4015. !    269,     0,     0,     0,    24,     0,     0,   322,     0,   316,
  4016. !    319,   155,     0,   992,    25,     0,     0,     0,     0,     0,
  4017. !    992,     0,    26,     0,     0,   278,   354,    27,     0,     0,
  4018. !      0,   364,     0,     0,     0,   364,     0,     0,   360,     0,
  4019. !      0,   394,  -427,     0,     0,     0,     0,     0,     0,     0,
  4020. !      0,   364,     0,     0,     0,    48,   413,     0,     7,     8,
  4021. !     92,    10,    11,     0,     7,     8,     0,    12,   427,     0,
  4022. !      0,     0,     0,     0,     0,     0,   841,   842,   366,     0,
  4023. !      0,     0,    15,     0,   366,     0,    16,     0,   364,     0,
  4024. !     17,  -426,     0,     0,     0,   364,    19,     0,     0,     0,
  4025. !      0,     0,    19,     0,     0,   513,    21,   992,    22,   278,
  4026. !      0,   676,    21,     0,    22,   414,     0,     0,     7,     8,
  4027. !     24,     0,     0,     0,     0,     0,   607,   278,     0,     0,
  4028. !     25,     0,   366,     0,     0,     0,   608,     0,    26,     0,
  4029. !    278,     0,     0,    27,    26,     0,   516,     0,     0,   609,
  4030. !    518,     0,     8,    92,    10,    11,    19,     0,  -426,   513,
  4031. !     12,   462,     0,     0,     0,     0,    21,     0,    22,     0,
  4032. !      0,     0,     0,     0,     0,    15,     0,     0,     0,    16,
  4033. !    607,   992,     6,    17,     7,     8,     9,    10,    11,  1226,
  4034. !    608,     0,   992,    12,     0,     0,     0,     0,    26,    21,
  4035. !    516,    93,     0,   609,   518,   279,     0,     0,    15,     0,
  4036. !   1226,  1226,    16,     0,     0,     0,    17,     7,     8,     0,
  4037. !      0,   280,    19,     0,     0,     0,   326,     0,     0,     0,
  4038. !      0,   358,    21,     0,    22,  1226,     0,    23,     0,     0,
  4039. !      0,     0,   992,     0,   593,   360,    24,     0,     0,   992,
  4040. !      0,   280,   992,     0,     0,    19,    25,   366,     0,   773,
  4041. !    775,   366,     0,     0,    26,    21,     0,    22,     0,    27,
  4042. !   1102,     0,     0,   992,   634,    28,   992,   366,     0,   140,
  4043. !    637,     0,     0,   992,     0,     0,     0,     0,     0,   141,
  4044. !      0,     0,   360,     0,     0,     0,     0,    26,     0,     0,
  4045. !      0,     0,   142,     8,    92,    10,    11,   992,     0,     0,
  4046. !      0,    12,  1004,  1005,   366,   656,     0,     0,     0,  1004,
  4047. !   1005,   366,   992,     0,   692,   693,    15,   694,   358,     0,
  4048. !     16,     0,     0,     0,    17,   280,     0,   992,     0,     0,
  4049. !    360,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4050. !     21,     0,    93,   280,   992,   992,     0,   555,     7,   100,
  4051. !      0,     0,    11,     0,   269,     0,   280,   593,    94,     0,
  4052. !    723,   724,     0,   728,   729,   730,   731,   732,   733,   734,
  4053. !    735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
  4054. !    745,   746,     0,     0,   358,     0,    19,   360,     0,   360,
  4055. !    360,     0,     0,     0,     0,     0,    21,     0,    22,     0,
  4056. !    785,   786,   229,     0,     8,   785,    10,     0,     0,     0,
  4057. !    108,     0,    12,     0,     0,   360,     0,     0,   278,     0,
  4058. !    109,   360,     0,   229,   229,     0,     0,    15,    26,     0,
  4059. !      0,    16,     0,   110,     0,    17,   805,   807,     0,     0,
  4060. !      0,     0,     0,     0,     0,     0,     0,     0,   229,     0,
  4061. !      0,    21,     0,    93,     0,     0,     0,     0,     0,     0,
  4062. !      7,     8,    92,    10,    11,     0,     0,   356,     0,    12,
  4063. !      0,     7,     8,   152,    10,   153,   360,     0,     0,     0,
  4064. !     12,   839,   840,   593,    15,     0,     0,     0,    16,    83,
  4065. !      0,   849,    17,     0,     0,    15,     0,   856,    19,    16,
  4066. !      0,    83,    83,    17,    83,     0,   360,     0,    21,    19,
  4067. !     22,     0,     0,     0,     0,    42,     0,   593,     0,    21,
  4068. !      0,    22,   380,     0,   154,     0,     0,     0,     0,   178,
  4069. !      0,     0,   381,    24,     0,    42,    42,     0,   111,     0,
  4070. !     26,   873,     0,    25,    42,   382,     0,     0,     0,     0,
  4071. !    357,    26,     0,   874,     0,    42,    27,    42,     0,     0,
  4072. !      7,     8,   159,   160,   161,     0,     0,     0,     0,    12,
  4073. !    364,     0,     0,     0,     0,     0,     0,   191,    83,     0,
  4074. !     83,    83,    83,     0,     0,    83,    83,    83,   360,     0,
  4075. !      0,     0,    17,     0,     0,     0,     0,     0,    19,     0,
  4076. !      0,   513,     0,     0,     0,     0,    42,     0,    21,   909,
  4077. !     22,     0,    42,     0,   191,     0,    42,     0,     0,   111,
  4078. !    111,   111,   140,     0,     0,     0,     0,     0,   231,     0,
  4079. !      0,    42,   141,    42,    42,     0,     0,     0,   925,   926,
  4080. !     26,   928,   631,   632,   280,  1108,   593,   360,     0,   231,
  4081. !    231,    42,    42,   111,     0,     0,     0,     0,     0,     0,
  4082. !    360,   191,   360,     0,     0,     0,     0,   942,     0,     0,
  4083. !      0,    83,     0,     0,   231,     0,     0,    42,     0,     0,
  4084. !      0,     0,     0,     0,     0,     7,     8,   159,   160,   161,
  4085. !      0,   951,     0,     0,    12,    42,     0,     0,     0,     0,
  4086. !      0,     0,     0,   593,     0,    42,     0,     0,     0,    83,
  4087. !      0,     0,     0,     0,     0,     0,   360,    17,   360,     0,
  4088. !    360,     0,     0,    19,     0,     0,   513,     0,  1007,   100,
  4089. !      0,   160,   161,    21,     0,    22,     0,    12,     0,     0,
  4090. !   1011,  1012,  1013,     0,     0,     0,     0,   607,   593,     0,
  4091. !      0,     0,     0,    83,     0,    83,    83,   608,     0,     0,
  4092. !     17,     0,  1019,  1020,     0,    26,     0,   516,     0,   513,
  4093. !    615,   518,     0,     0,     0,     0,    21,   121,    93,     7,
  4094. !      8,    92,    10,    11,     0,    83,     0,   509,    12,     0,
  4095. !    514,    83,     0,     0,    83,   191,   366,    42,     0,    83,
  4096. !    515,   593,   593,    15,     0,  1051,     0,    16,     0,     0,
  4097. !    516,    17,     0,   517,   518,     0,     0,    19,     0,  1067,
  4098. !      0,     0,     0,     0,     0,    42,     0,    21,    42,    22,
  4099. !      0,     0,     0,    42,     7,     8,   152,    10,   153,     0,
  4100. !      0,    24,     0,    12,     0,     0,     0,     0,     0,     0,
  4101. !      0,    25,     0,     0,     0,     0,     0,   593,    15,    26,
  4102. !      0,     0,    16,     0,    27,     0,    17,     0,     0,  1089,
  4103. !      0,     0,    19,    42,    42,    42,    42,     0,     0,     0,
  4104. !      0,    42,    21,     0,    22,     0,     0,    42,     0,    42,
  4105. !      0,   111,   111,   111,     0,     0,    24,     7,     8,    42,
  4106. !      0,    11,     0,  1127,     0,    42,    25,     0,    42,     0,
  4107. !      0,     0,     0,    83,    26,     0,     0,  1130,     0,    27,
  4108. !      0,     0,     0,     0,     0,     0,     0,    42,    42,     0,
  4109. !     42,   593,     0,    64,     0,    19,   593,     0,  1148,     0,
  4110. !      0,     8,   152,    10,   153,    21,     0,    22,  1156,    12,
  4111. !      0,     0,     0,    64,    64,     0,   116,     0,     0,   140,
  4112. !      0,     0,    64,     0,    15,     0,     0,     0,    16,   141,
  4113. !      0,     0,    17,    64,     0,    64,     0,    26,     0,    83,
  4114. !      0,     0,   142,     0,     0,     0,     0,     0,    21,    83,
  4115. !     93,    83,    83,     7,     8,    92,    10,    11,     0,   360,
  4116. !    622,     0,    12,     0,     0,     0,     0,     0,     0,     0,
  4117. !      0,   593,   593,     0,     0,     0,     0,    15,     0,  1196,
  4118. !   1197,    16,     0,   509,    64,    17,     0,     0,     0,     0,
  4119. !     64,    19,     0,   178,    64,   795,     0,   116,   116,   116,
  4120. !    593,    21,     0,    22,     0,     0,     0,     0,     0,    64,
  4121. !      0,    64,    64,     0,     0,    24,     8,    92,    10,    11,
  4122. !      0,  1228,  1345,     0,    12,    25,    42,     0,     0,    64,
  4123. !     64,   116,     0,    26,     0,     0,     0,     0,    27,    15,
  4124. !      0,     0,   117,    16,     0,   593,     0,    17,     0,     0,
  4125. !      0,     0,   593,   593,     0,    64,   360,     0,     0,   151,
  4126. !      0,   593,     0,    21,     0,    93,  -306,     8,  -306,    10,
  4127. !    185,     0,     0,    64,     0,    12,     0,     0,    42,    42,
  4128. !    111,     0,     0,    64,     0,     0,   853,     0,     0,     0,
  4129. !     15,     0,     0,     0,    16,     0,     0,     0,    17,     0,
  4130. !      0,     0,    42,    42,  -306,    42,     0,   513,     0,     0,
  4131. !    151,     0,     0,     0,    21,     0,    93,     0,     0,    83,
  4132. !    593,   593,   360,   117,   117,   117,     0,     0,   514,    83,
  4133. !     83,    83,     0,     0,   111,     0,     0,   151,   515,     0,
  4134. !      0,     0,     0,     0,     0,     0,  -306,     0,   516,     0,
  4135. !      0,   517,   518,     0,     0,   151,   151,   384,     0,     0,
  4136. !      0,     0,     0,     0,     0,     0,     0,     0,   795,     0,
  4137. !   1024,   100,     0,     0,   534,    64,     0,     0,     0,     0,
  4138. !      0,   151,     0,     0,     0,     0,     0,   593,     0,     0,
  4139. !      0,     0,     0,     0,     0,     0,     7,     8,   159,   160,
  4140. !    161,     0,     0,    64,     0,    12,    64,     0,    19,     0,
  4141. !     83,    64,    83,     0,     0,     0,     0,     0,    21,     0,
  4142. !     22,     0,     0,    83,     0,     0,     0,  1026,    17,     0,
  4143. !    589,     0,    24,     0,    19,     0,     0,   513,     0,     0,
  4144. !      0,     0,    25,     0,    21,     0,    22,   437,     0,     0,
  4145. !     26,    64,    64,    64,    64,    27,     0,     0,   607,    64,
  4146. !      0,   795,   795,   795,     0,    64,     0,    64,   608,   116,
  4147. !    116,   116,     0,     0,     0,     0,    26,    64,   516,     0,
  4148. !      0,   609,   518,    64,     0,     0,    64,     0,     0,     0,
  4149. !      0,     0,     0,   521,   521,   521,     0,     0,     0,     0,
  4150. !      0,   151,     0,     0,     0,    64,    64,     0,    64,     0,
  4151. !      0,     0,    42,    42,   111,   111,   111,    83,   191,     0,
  4152. !     42,   853,   853,   853,     0,     0,   659,     8,   152,    10,
  4153. !    153,     0,     0,     0,     0,    12,   479,   480,   481,   482,
  4154. !    483,   484,   485,   486,   487,   488,   489,   490,    42,     0,
  4155. !     15,    42,     0,    42,    16,     0,     0,     0,    17,     0,
  4156. !      0,     0,    83,    83,    19,    83,   795,   795,   795,     0,
  4157. !      0,     0,     0,     0,    21,     0,    22,   611,     0,   611,
  4158. !    611,   521,     0,   662,     0,     0,     0,     0,    24,     0,
  4159. !      0,   151,     0,   151,     0,   384,   384,   384,    25,     8,
  4160. !     92,    10,    11,   151,     0,   356,    26,    12,     0,   151,
  4161. !      0,    27,   151,   797,     0,     0,     0,     0,     0,     0,
  4162. !    191,     0,    15,     0,     0,     0,    16,     0,     0,    42,
  4163. !     17,   151,     0,     0,   377,   379,   383,     0,     0,   513,
  4164. !      0,     0,     0,     0,    64,     0,    21,     0,    93,     0,
  4165. !      0,     0,     0,     7,   100,     0,     0,   427,     0,     0,
  4166. !    514,    42,    42,    42,     7,     8,     0,     0,   185,     0,
  4167. !    515,     0,     0,     0,     0,    42,    42,   149,    42,     0,
  4168. !    516,     0,     0,   517,   518,     0,     0,     0,   357,     0,
  4169. !      0,    19,     0,     0,     0,     0,    64,    64,   116,   192,
  4170. !      0,    21,    19,    22,   855,     0,    42,     0,     0,     0,
  4171. !      0,     0,    21,     0,    22,    24,     0,   761,   192,     0,
  4172. !     64,    64,     0,    64,     0,    25,   140,     0,   149,   521,
  4173. !    521,     0,   521,    26,     0,     0,   141,     0,    27,   521,
  4174. !      0,     0,     0,     0,    26,     0,     0,     0,     0,   142,
  4175. !      0,     0,   116,     0,     0,   149,     0,     0,     0,     0,
  4176. !      0,     0,     0,     7,     8,     0,    10,   440,   234,   235,
  4177. !    611,   236,    12,   149,   149,   149,     0,     0,     0,   853,
  4178. !      0,     0,     0,   393,     0,     0,   797,    15,   237,   238,
  4179. !    239,    16,     0,   240,     0,    17,     0,   241,   242,   149,
  4180. !    243,    19,   244,   245,     0,     0,   246,   247,   248,   249,
  4181. !    250,    21,     0,    22,     0,     0,     0,     0,     0,     0,
  4182. !      0,     0,   611,   611,   848,     0,     0,     0,     0,   192,
  4183. !    848,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4184. !      0,   256,   257,   258,     7,     8,   151,   151,   259,   151,
  4185. !      0,     0,   260,     0,   853,   853,   853,     0,     0,     0,
  4186. !      0,     0,     0,     0,   261,     0,     0,     0,     0,     0,
  4187. !    629,     0,   630,     0,   377,   379,   383,     0,   384,   797,
  4188. !    797,   797,    19,     0,     0,     0,     0,   534,   643,     0,
  4189. !      0,     0,    21,     0,    22,     0,     0,   521,    42,     0,
  4190. !      0,     0,     0,     0,     0,     0,   140,   437,   437,   437,
  4191. !    669,     0,   589,     0,     0,     0,   141,   192,     0,   149,
  4192. !      0,     0,     0,     0,    26,     0,     0,     0,     0,   142,
  4193. !     64,    64,   116,   116,   116,     0,     0,     0,    64,   855,
  4194. !    855,   855,     0,     0,     0,     0,     0,     8,     0,    10,
  4195. !    185,     0,     0,     0,     0,    12,     0,     0,     0,     0,
  4196. !      0,     0,     0,     0,     0,     0,    64,     0,     0,    64,
  4197. !     15,    64,     0,     0,    16,     0,     0,     0,    17,     0,
  4198. !      0,     0,     0,     0,   797,   797,   797,   513,   521,     0,
  4199. !    521,     0,     0,     0,    21,   149,    93,   149,   149,     0,
  4200. !      0,   521,     0,     0,     0,   521,   521,   521,   514,   149,
  4201. !      0,   149,     0,   149,   149,   149,     0,     0,   515,     0,
  4202. !      0,   149,     0,     0,   519,   519,   519,   149,   516,     0,
  4203. !    149,   517,   518,   477,   478,   479,   480,   481,   482,   483,
  4204. !    484,   485,   486,   487,   488,   489,   490,    64,     0,   149,
  4205. !      0,     0,     0,     0,     0,    62,   611,   611,   848,   848,
  4206. !    848,     0,     0,     0,   611,   848,   848,   848,     0,     0,
  4207. !      0,     0,     0,     0,     0,   102,   106,     0,     0,    64,
  4208. !     64,    64,     7,     8,   126,     0,    11,     0,     0,     0,
  4209. !      0,     0,   151,    64,    64,     0,    64,   158,     0,     0,
  4210. !      0,   377,   379,   383,     0,     0,     0,     0,   519,   383,
  4211. !    519,   519,   519,     7,     8,     0,     0,   427,     0,     0,
  4212. !     19,     0,     0,     0,    64,   629,   630,     0,   643,     0,
  4213. !     21,     0,    22,     0,     0,     0,     0,     0,     0,     0,
  4214. !    761,   761,     0,   761,   380,     0,     0,     0,     0,     0,
  4215. !      0,    19,   307,     0,   381,     0,   309,   383,     0,     0,
  4216. !    192,    21,    26,    22,     0,     0,     0,   382,     0,     0,
  4217. !      0,    62,     0,     0,   332,   140,     0,     0,     0,     0,
  4218. !      0,     0,     0,     0,     0,   141,     0,     0,   149,     0,
  4219. !      0,   102,   106,    26,     0,     0,     0,   855,   142,     0,
  4220. !      0,     0,     0,     0,     0,   151,     0,   151,     0,     7,
  4221. !      8,   522,   526,   528,     0,     0,     0,     0,     0,   611,
  4222. !    611,     0,   611,     0,     0,     0,     0,     0,     0,     0,
  4223. !      7,     8,   152,    10,   153,   422,     0,     0,     0,    12,
  4224. !    149,   149,   846,     0,     0,   428,     0,    19,   846,     0,
  4225. !      0,     0,     0,     0,    15,     0,     0,    21,    16,    22,
  4226. !    519,   519,    17,   519,   149,   149,     0,   149,    19,     0,
  4227. !    794,   380,   855,   855,   855,     0,     0,     0,    21,     0,
  4228. !     22,   381,     0,  1105,     0,     0,     0,     0,     0,    26,
  4229. !      0,     0,    24,     0,   382,   612,   846,   522,   526,   528,
  4230. !      0,   519,    25,     0,     0,     0,     0,     0,     0,     0,
  4231. !     26,     0,     0,     0,     0,    27,    64,     0,     0,     0,
  4232. !      0,     0,     0,   384,     0,     0,     0,  1170,     0,     0,
  4233. !      0,     0,     0,     0,     0,   629,   630,   377,   379,   383,
  4234. !      0,     0,     0,   643,   377,   379,   383,     0,     0,     0,
  4235. !      0,     0,     0,   519,   519,   519,     0,     0,     0,     0,
  4236. !      0,   794,     0,     0,     0,   562,     0,     0,   563,     0,
  4237. !      0,  1030,     0,   565,   469,   470,   471,  1171,   472,   473,
  4238. !    474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
  4239. !    484,   485,   486,   487,   488,   489,   490,     0,   384,   384,
  4240. !    384,   478,   479,   480,   481,   482,   483,   484,   485,   486,
  4241. !    487,   488,   489,   490,   613,     0,     0,     0,     0,     0,
  4242. !      0,   623,     0,     0,     0,     0,     0,   307,   519,   309,
  4243. !      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4244. !      0,     0,   151,     0,     0,   428,     0,   774,   776,   473,
  4245. !    474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
  4246. !    484,   485,   486,   487,   488,   489,   490,   670,   673,     0,
  4247. !    422,     0,     0,     0,   149,   149,   149,   149,   846,     0,
  4248. !   1006,     0,   149,   846,   846,   846,     0,     0,   526,     0,
  4249. !      0,     0,     0,     0,     0,     0,     0,     0,   629,   630,
  4250. !      0,   643,     0,     0,     0,     0,     0,     0,     0,     0,
  4251. !    149,     0,     0,     0,     0,     0,     0,     0,     0,   519,
  4252. !      0,   519,     0,     0,     0,     0,     0,     0,     0,     0,
  4253. !      0,     0,   519,     0,     0,     0,   794,   794,   794,     0,
  4254. !    774,   776,     0,     0,   469,   470,   471,     0,   472,   473,
  4255.      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
  4256. !    484,   485,   486,   487,   488,   489,   490,   476,   477,   478,
  4257. !    479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
  4258. !    489,   490,   192,     0,     0,     0,     0,   519,   519,   519,
  4259. !    519,   519,  1045,     0,     0,   519,   794,   794,   794,     0,
  4260. !      0,     0,   383,     0,     7,     8,    92,    10,    11,     0,
  4261. !      0,   356,     0,    12,     0,   526,     0,     0,     0,     0,
  4262. !      0,     0,     0,   149,     0,   149,     0,     0,    15,     0,
  4263. !      0,     0,    16,     0,     0,     0,    17,   149,   149,     0,
  4264. !    149,     0,    19,     0,     0,   513,     0,     0,     0,     0,
  4265. !      0,     0,    21,     0,    22,     0,     0,     0,   102,   106,
  4266. !      0,     0,     0,     0,     0,     0,   843,     0,     0,     0,
  4267. !      0,     0,     0,     0,     0,     0,   844,   377,   379,   383,
  4268. !      0,     0,   562,   563,    26,   565,   516,     0,     0,   845,
  4269. !    518,     0,     0,     0,   357,     0,     0,     0,     0,     0,
  4270. !      0,     0,     0,     0,     0,     0,   936,     0,   937,     0,
  4271. !      0,     0,     0,     0,     0,     0,     0,     0,     0,   941,
  4272. !      0,     0,     0,   774,   776,   475,   476,   477,   478,   479,
  4273. !    480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
  4274. !    490,   846,     0,     0,     0,     0,     0,     0,     0,     0,
  4275. !    519,   519,     0,   519,     0,     0,     0,     0,     0,     0,
  4276. !    686,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4277. !      0,     0,     0,     0,   936,   937,   774,   776,     0,     0,
  4278. !      0,     0,   941,   774,   776,   469,   470,   471,     0,   472,
  4279. !    473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
  4280. !    483,   484,   485,   486,   487,   488,   489,   490,     0,     0,
  4281. !      0,     0,     0,     0,     0,     0,   846,   846,   846,     0,
  4282. !      0,     0,  1111,     0,   971,   972,    92,    10,   233,   234,
  4283. !    235,     0,   236,    12,   973,     0,   974,   975,   976,   977,
  4284. !    978,   979,   980,   981,   982,   983,    13,    14,    15,   237,
  4285. !    238,   239,    16,     0,   240,     0,    17,     0,   241,   242,
  4286. !    149,   243,    19,   244,   245,     0,     0,   246,   247,   248,
  4287. !    249,   250,    21,     0,   984,   349,     0,   985,     0,     0,
  4288. !      0,     0,     0,   251,     0,     0,   252,     0,     0,     0,
  4289. !      0,     0,   307,   309,   253,   254,   255,     0,     0,     0,
  4290. !    428,     0,   256,   257,   258,     0,     0,     0,     0,   259,
  4291. !      0,   986,     0,   260,     0,     0,     0,     0,     0,     0,
  4292. !      0,     0,     0,     0,  1112,   261,     0,     0,  1031,     0,
  4293. !      0,  1031,     0,   422,     0,     0,     0,   936,   937,     0,
  4294. !    941,  1261,     0,   971,   972,    92,    10,   233,   234,   235,
  4295. !      0,   236,    12,   973,     0,   974,   975,   976,   977,   978,
  4296. !    979,   980,   981,   982,   983,    13,    14,    15,   237,   238,
  4297. !    239,    16,     0,   240,     0,    17,     0,   241,   242,     0,
  4298. !    243,    19,   244,   245,     0,     0,   246,   247,   248,   249,
  4299. !    250,    21,     0,   984,   349,     0,   985,     0,     0,     0,
  4300. !      0,     0,   251,     0,     0,   252,     0,     0,     0,   422,
  4301. !      0,     0,     0,   253,   254,   255,     0,     0,     0,     0,
  4302. !      0,   256,   257,   258,     0,     0,     0,     0,   259,     0,
  4303. !    986,     0,   260,     0,     0,     0,     0,     0,     0,     0,
  4304. !      0,     0,  1107,  1262,   261,     0,     0,     0,     0,     0,
  4305. !      0,     0,     0,     0,     0,   562,   563,     0,   565,     0,
  4306.        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4307. !      0,     0,     0,  1283,     0,   971,   972,    92,    10,   233,
  4308. !    234,   235,     0,   236,    12,   973,   422,   974,   975,   976,
  4309. !    977,   978,   979,   980,   981,   982,   983,    13,    14,    15,
  4310. !    237,   238,   239,    16,     0,   240,     0,    17,     0,   241,
  4311. !    242,     0,   243,    19,   244,   245,     0,     0,   246,   247,
  4312. !    248,   249,   250,    21,     0,   984,   349,     0,   985,     0,
  4313. !      0,     0,     0,     0,   251,     0,     0,   252,     0,     0,
  4314. !      0,     0,     0,     0,     0,   253,   254,   255,     0,     0,
  4315. !      0,     0,     0,   256,   257,   258,     0,     0,     0,     0,
  4316. !    259,     0,   986,     0,   260,     0,     0,     0,     0,     0,
  4317. !      0,     0,     0,     0,     0,  1284,   261,  1283,     0,   971,
  4318. !    972,    92,    10,   233,   234,   235,     0,   236,    12,   973,
  4319. !      0,   974,   975,   976,   977,   978,   979,   980,   981,   982,
  4320. !    983,    13,    14,    15,   237,   238,   239,    16,     0,   240,
  4321. !      0,    17,     0,   241,   242,     0,   243,    19,   244,   245,
  4322. !      0,     0,   246,   247,   248,   249,   250,    21,     0,   984,
  4323. !    349,     0,   985,     0,     0,     0,     0,     0,   251,     0,
  4324. !      0,   252,     0,     0,     0,     0,     0,     0,     0,   253,
  4325. !    254,   255,     0,     0,     0,     0,     0,   256,   257,   258,
  4326. !      0,     0,     0,     0,   259,     0,   986,     0,   260,     0,
  4327. !      0,     0,     0,     0,     0,     0,     0,     0,     0,  1289,
  4328. !    261,  1283,     0,   971,   972,    92,    10,   233,   234,   235,
  4329. !      0,   236,    12,   973,     0,   974,   975,   976,   977,   978,
  4330. !    979,   980,   981,   982,   983,    13,    14,    15,   237,   238,
  4331. !    239,    16,     0,   240,     0,    17,     0,   241,   242,     0,
  4332. !    243,    19,   244,   245,     0,     0,   246,   247,   248,   249,
  4333. !    250,    21,     0,   984,   349,     0,   985,     0,     0,     0,
  4334. !      0,     0,   251,     0,     0,   252,     0,     0,     0,     0,
  4335. !      0,     0,     0,   253,   254,   255,     0,     0,     0,     0,
  4336. !      0,   256,   257,   258,     0,     0,     0,     0,   259,     0,
  4337. !    986,     0,   260,     0,     0,     0,     0,     0,     0,     0,
  4338. !      0,     0,     0,  1328,   261,   970,     0,   971,   972,    92,
  4339. !     10,   233,   234,   235,     0,   236,    12,   973,     0,   974,
  4340. !    975,   976,   977,   978,   979,   980,   981,   982,   983,    13,
  4341. !     14,    15,   237,   238,   239,    16,     0,   240,     0,    17,
  4342. !      0,   241,   242,     0,   243,    19,   244,   245,     0,     0,
  4343. !    246,   247,   248,   249,   250,    21,     0,   984,   349,     0,
  4344. !    985,     0,     0,     0,     0,     0,   251,     0,     0,   252,
  4345. !      0,     0,     0,     0,     0,     0,     0,   253,   254,   255,
  4346. !      0,     0,     0,     0,     0,   256,   257,   258,     0,     0,
  4347. !      0,     0,   259,     0,   986,  1255,   260,   971,   972,    92,
  4348. !     10,   233,   234,   235,     0,   236,    12,   973,   261,   974,
  4349. !    975,   976,   977,   978,   979,   980,   981,   982,   983,    13,
  4350. !     14,    15,   237,   238,   239,    16,     0,   240,     0,    17,
  4351. !      0,   241,   242,     0,   243,    19,   244,   245,     0,     0,
  4352. !    246,   247,   248,   249,   250,    21,     0,   984,   349,     0,
  4353. !    985,     0,     0,     0,     0,     0,   251,     0,     0,   252,
  4354. !      0,     0,     0,     0,     0,     0,     0,   253,   254,   255,
  4355. !      0,     0,     0,     0,     0,   256,   257,   258,     0,     0,
  4356. !      0,     0,   259,     0,   986,  1316,   260,   971,   972,    92,
  4357. !     10,   233,   234,   235,     0,   236,    12,   973,   261,   974,
  4358. !    975,   976,   977,   978,   979,   980,   981,   982,   983,    13,
  4359. !     14,    15,   237,   238,   239,    16,     0,   240,     0,    17,
  4360. !      0,   241,   242,     0,   243,    19,   244,   245,     0,     0,
  4361. !    246,   247,   248,   249,   250,    21,     0,   984,   349,     0,
  4362. !    985,     0,     0,     0,     0,     0,   251,     0,     0,   252,
  4363. !      0,     0,     0,     0,     0,     0,     0,   253,   254,   255,
  4364. !      0,     0,     0,     0,     0,   256,   257,   258,     0,     0,
  4365. !      0,     0,   259,     0,   986,   458,   260,     7,     8,    92,
  4366. !     10,   233,   234,   235,   356,   236,    12,     0,   261,     0,
  4367.        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4368. !      0,    15,   237,   238,   239,    16,     0,   240,     0,    17,
  4369. !      0,   241,   242,     0,   243,    19,   244,   245,   513,     0,
  4370. !    246,   247,   248,   249,   250,    21,     0,    22,  -239,     0,
  4371. !      0,     0,     0,     0,     0,     0,   251,     0,     0,   790,
  4372. !      0,     0,     0,     0,     0,     0,     0,   253,   254,   791,
  4373. !      0,     0,     0,     0,     0,   256,   257,   258,     0,   516,
  4374. !      0,     0,   792,   518,     0,     0,   260,   357,     0,     0,
  4375. !      0,     0,     0,     0,     0,     0,     0,   458,   261,     7,
  4376. !      8,    92,    10,   233,   234,   235,   356,   236,    12,     0,
  4377.        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4378. !      0,     0,     0,    15,   237,   238,   239,    16,     0,   240,
  4379. !      0,    17,     0,   241,   242,     0,   243,    19,   244,   245,
  4380. !    513,     0,   246,   247,   248,   249,   250,    21,     0,    22,
  4381. !   -239,     0,     0,     0,     0,     0,     0,     0,   251,     0,
  4382. !      0,   850,     0,     0,     0,     0,     0,     0,     0,   253,
  4383. !    254,   851,     0,     0,     0,     0,     0,   256,   257,   258,
  4384. !      0,   516,     0,     0,   852,   518,     0,     0,   260,   357,
  4385. !      0,     0,     0,     0,     0,     0,     0,     0,     0,   355,
  4386. !    261,     7,     8,    92,    10,   233,   234,   235,   356,   236,
  4387. !     12,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4388. !      0,     0,     0,     0,     0,    15,   237,   238,   239,    16,
  4389. !      0,   240,     0,    17,     0,   241,   242,     0,   243,    19,
  4390. !    244,   245,     0,     0,   246,   247,   248,   249,   250,    21,
  4391. !      0,    22,     0,     0,     0,     0,     0,     0,     0,     0,
  4392. !    251,     0,     0,   252,     0,     0,     0,     0,     0,     0,
  4393. !      0,   253,   254,   255,     0,     0,     0,     0,     0,   256,
  4394. !    257,   258,     0,     0,     0,     0,   259,     0,     0,     0,
  4395. !    260,   357,     0,     0,     0,     0,     0,     0,     0,     0,
  4396. !   -667,   638,   261,     7,     8,    92,    10,   233,   234,   235,
  4397. !    356,   236,    12,     0,     0,     0,     0,     0,     0,     0,
  4398. !      0,     0,     0,     0,     0,     0,     0,    15,   237,   238,
  4399. !    239,    16,     0,   240,     0,    17,     0,   241,   242,     0,
  4400. !    243,    19,   244,   245,     0,     0,   246,   247,   248,   249,
  4401. !    250,    21,     0,    22,     0,     0,     0,     0,     0,     0,
  4402. !      0,     0,   251,     0,     0,   252,     0,     0,     0,     0,
  4403. !      0,     0,     0,   253,   254,   255,     0,     0,     0,     0,
  4404. !      0,   256,   257,   258,     0,     0,     0,     0,   259,     0,
  4405. !      0,     0,   260,   357,     0,     0,     0,     0,     0,     0,
  4406. !      0,     0,  -667,   591,   261,   715,   716,     0,    10,   440,
  4407. !    234,   235,     0,   236,    12,     0,     0,     0,     0,     0,
  4408.        0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
  4409. !    237,   238,   239,    16,     0,   240,     0,    17,     0,   241,
  4410. !    242,     0,   243,    19,   244,   245,     0,     0,   246,   247,
  4411. !    248,   249,   250,    21,     0,   717,   592,     0,     0,     0,
  4412. !      0,     0,     0,     0,   251,     0,     0,   252,     0,     0,
  4413. !      0,     0,     0,     0,     0,   253,   254,   255,     0,     0,
  4414. !      0,     0,     0,   256,   257,   258,     0,     0,     0,     0,
  4415. !    259,   718,     0,   591,   260,   715,   716,     0,    10,   440,
  4416. !    234,   235,     0,   236,    12,   830,   261,     0,     0,     0,
  4417. !      0,  1047,     0,     0,     0,     0,     0,     0,     0,    15,
  4418. !    237,   238,   239,    16,     0,   240,     0,    17,     0,   241,
  4419. !    242,     0,   243,    19,   244,   245,     0,     0,   246,   247,
  4420. !    248,   249,   250,    21,     0,   717,   592,     0,     0,     0,
  4421. !      0,     0,     0,     0,   251,     0,     0,   252,     0,     0,
  4422. !      0,     0,     0,     0,     0,   253,   254,   255,     0,     0,
  4423. !      0,     0,     0,   256,   257,   258,     0,     0,     0,     0,
  4424. !    259,     0,     0,   591,   260,   715,   716,     0,    10,   440,
  4425. !    234,   235,     0,   236,    12,  -386,   261,     0,     0,     0,
  4426. !      0,  1047,     0,     0,     0,     0,     0,     0,     0,    15,
  4427. !    237,   238,   239,    16,     0,   240,     0,    17,     0,   241,
  4428. !    242,     0,   243,    19,   244,   245,     0,     0,   246,   247,
  4429. !    248,   249,   250,    21,     0,   717,   592,     0,     0,     0,
  4430. !      0,     0,     0,     0,   251,     0,     0,   252,     0,     0,
  4431. !      0,     0,     0,     0,     0,   253,   254,   255,     0,     0,
  4432. !      0,     0,     0,   256,   257,   258,     0,     0,     0,     0,
  4433. !    259,     0,     0,  1164,   260,     7,     8,    92,    10,   233,
  4434. !    234,   235,     0,   236,    12,  1077,   261,     0,     0,     0,
  4435.        0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
  4436. !    237,   238,   239,    16,     0,   240,     0,    17,     0,   241,
  4437. !    242,     0,   243,    19,   244,   245,     0,     0,   246,   247,
  4438. !    248,   249,   250,    21,     0,    22,  1165,     0,  1166,     0,
  4439. !      0,     0,     0,     0,   251,     0,     0,   252,     0,     0,
  4440. !      0,     0,     0,     0,     0,   253,   254,   255,     0,     0,
  4441. !      0,     0,     0,   256,   257,   258,     0,     0,     0,     0,
  4442. !    259,     0,     0,   591,   260,   715,   716,     0,    10,   440,
  4443. !    234,   235,     0,   236,    12,     0,   261,     0,     0,     0,
  4444.        0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
  4445. !    237,   238,   239,    16,     0,   240,     0,    17,     0,   241,
  4446. !    242,     0,   243,    19,   244,   245,     0,     0,   246,   247,
  4447. !    248,   249,   250,    21,     0,   717,   592,     0,     0,     0,
  4448. !      0,     0,     0,     0,   251,     0,     0,   252,     0,     0,
  4449. !      0,     0,     0,     0,     0,   253,   254,   255,     0,     0,
  4450. !      0,     0,     0,   256,   257,   258,     0,     0,     0,     0,
  4451. !    259,   718,   197,     0,   260,     8,     0,    10,    11,     0,
  4452. !      0,     0,     0,    12,     0,     0,   261,     0,     0,     0,
  4453. !      0,     0,     0,     0,     0,     0,     0,     0,    15,     0,
  4454. !      0,     0,    16,     0,     0,     0,    17,     0,   198,   199,
  4455. !      0,     0,     0,     0,     0,   200,     0,     0,     0,     0,
  4456. !      0,     0,    21,     0,    93,     0,   201,     0,   202,   203,
  4457. !    204,     0,   205,   206,   207,   208,   209,   210,   211,   212,
  4458. !    213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
  4459. !      0,     0,   223,   224,   225,     0,   458,   226,     7,     8,
  4460. !    227,    10,   233,   234,   235,     0,   236,    12,     0,     0,
  4461. !      0,     0,     0,     0,     0,   228,     0,     0,     0,     0,
  4462. !      0,     0,    15,   237,   238,   239,    16,     0,   240,     0,
  4463. !     17,     0,   241,   242,     0,   243,    19,   244,   245,     0,
  4464. !      0,   246,   247,   248,   249,   250,    21,     0,    22,  -239,
  4465. !      0,     0,     0,     0,     0,     0,     0,   251,     0,     0,
  4466. !    252,     0,     0,     0,     0,     0,     0,     0,   253,   254,
  4467. !    255,     0,     0,     0,     0,     0,   256,   257,   258,     0,
  4468. !      0,     0,     0,   259,     0,     0,   591,   260,     7,     8,
  4469. !      0,    10,   440,   234,   235,     0,   236,    12,     0,   261,
  4470. !      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4471. !      0,     0,    15,   237,   238,   239,    16,     0,   240,     0,
  4472. !     17,     0,   241,   242,     0,   243,    19,   244,   245,     0,
  4473. !      0,   246,   247,   248,   249,   250,    21,     0,    22,   592,
  4474. !      0,     0,     0,     0,     0,     0,     0,   251,     0,     0,
  4475. !    252,     0,     0,     0,     0,     0,     0,     0,   253,   254,
  4476. !    255,     0,     0,     0,     0,     0,   256,   257,   258,     0,
  4477. !      0,     0,     0,   259,     0,     0,   725,   260,     7,     8,
  4478. !      0,    10,   440,   234,   235,     0,   236,    12,     0,   261,
  4479. !      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4480. !      0,     0,    15,   237,   238,   239,    16,     0,   240,     0,
  4481. !     17,     0,   241,   242,     0,   243,    19,   244,   245,     0,
  4482. !      0,   246,   247,   248,   249,   250,    21,     0,    22,     0,
  4483. !      0,     0,     0,     0,     0,  -657,     0,   251,     0,     0,
  4484. !    252,     0,     0,     0,     0,     0,     0,     0,   253,   254,
  4485. !    255,     0,     0,     0,     0,     0,   256,   257,   258,     0,
  4486. !      0,     0,     0,   259,     0,     0,   458,   260,     7,     8,
  4487. !      0,    10,   233,   234,   235,     0,   236,    12,     0,   261,
  4488. !      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4489. !      0,     0,    15,   237,   238,   239,    16,     0,   240,     0,
  4490. !     17,     0,   241,   242,     0,   243,    19,   244,   245,     0,
  4491. !      0,   246,   247,   248,   249,   250,    21,     0,    22,  -239,
  4492. !      0,     0,     0,     0,     0,     0,     0,   251,     0,     0,
  4493. !    895,     0,     0,     0,     0,     0,     0,     0,   253,   254,
  4494. !    896,     0,     0,     0,     0,     0,   256,   257,   258,     0,
  4495. !      0,     0,     0,   897,     0,     0,   458,   260,     7,     8,
  4496. !      0,    10,   233,   234,   235,     0,   236,    12,     0,   261,
  4497. !      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4498. !      0,     0,    15,   237,   238,   239,    16,     0,   240,     0,
  4499. !     17,     0,   241,   242,     0,   243,    19,   244,   245,     0,
  4500. !      0,   246,   247,   248,   249,   250,    21,     0,    22,  -239,
  4501. !      0,     0,     0,     0,     0,     0,     0,   251,     0,     0,
  4502. !   1183,     0,     0,     0,     0,     0,     0,     0,   253,   254,
  4503. !   1184,     0,     0,     0,     0,     0,   256,   257,   258,     0,
  4504. !      0,     0,     0,  1185,     0,     0,  1235,   260,     7,     8,
  4505. !      0,    10,   233,   234,   235,     0,   236,    12,     0,   261,
  4506. !      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4507. !      0,     0,    15,   237,   238,   239,    16,     0,   240,     0,
  4508. !     17,     0,   241,   242,     0,   243,    19,   244,   245,     0,
  4509. !      0,   246,   247,   248,   249,   250,    21,     0,    22,     0,
  4510. !      0,  -139,     0,     0,     0,     0,     0,   251,     0,     0,
  4511. !    252,     0,     0,     0,     0,     0,     0,     0,   253,   254,
  4512. !    255,     0,     0,     0,     0,     0,   256,   257,   258,     0,
  4513. !      0,     0,     0,   259,     0,     0,   725,   260,     7,     8,
  4514. !      0,    10,   440,   234,   235,     0,   236,    12,     0,   261,
  4515. !      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4516. !      0,     0,    15,   237,   238,   239,    16,     0,   240,     0,
  4517. !     17,     0,   241,   242,     0,   243,    19,   244,   245,     0,
  4518. !      0,   246,   247,   248,   249,   250,    21,     0,    22,     0,
  4519. !      0,     0,     0,     0,     0,     0,     0,   251,     0,     0,
  4520. !    252,     0,     0,     0,     0,     0,     0,     0,   253,   254,
  4521. !    255,     0,     0,     0,     0,     0,   256,   257,   258,     0,
  4522. !      0,     0,     0,   259,     0,     0,     0,   260,     0,     0,
  4523. !      0,     0,     0,     0,     0,     0,     0,  -657,   804,   261,
  4524. !      7,     8,     0,    10,   440,   234,   235,     0,   236,    12,
  4525. !      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4526. !      0,     0,     0,     0,    15,   237,   238,   239,    16,     0,
  4527. !    240,     0,    17,     0,   241,   242,     0,   243,    19,   244,
  4528. !    245,     0,     0,   246,   247,   248,   249,   250,    21,     0,
  4529. !     22,     0,     0,     0,     0,     0,     0,     0,     0,   251,
  4530. !      0,     0,   252,     0,     0,     0,     0,     0,     0,     0,
  4531. !    253,   254,   255,     0,     0,     0,     0,     0,   256,   257,
  4532. !    258,     0,     0,     0,     0,   259,     0,     0,   806,   260,
  4533. !      7,     8,     0,    10,   440,   234,   235,     0,   236,    12,
  4534. !      0,   261,     0,     0,     0,     0,     0,     0,     0,     0,
  4535. !      0,     0,     0,     0,    15,   237,   238,   239,    16,     0,
  4536. !    240,     0,    17,     0,   241,   242,     0,   243,    19,   244,
  4537. !    245,     0,     0,   246,   247,   248,   249,   250,    21,     0,
  4538. !     22,     0,     0,     0,     0,     0,     0,     0,     0,   251,
  4539. !      0,     0,   252,     0,     0,     0,     0,     0,     0,     0,
  4540. !    253,   254,   255,     0,     0,     0,     0,     0,   256,   257,
  4541. !    258,     0,     0,     0,     0,   259,     0,     7,     8,   260,
  4542. !     10,   440,   234,   235,     0,   236,    12,     0,     0,     0,
  4543. !      0,   261,     0,     0,     0,     0,     0,     0,     0,     0,
  4544. !      0,    15,   237,   238,   239,    16,     0,   240,     0,    17,
  4545. !      0,   241,   242,     0,   243,    19,   244,   245,     0,     0,
  4546. !    246,   247,   248,   249,   250,    21,     0,    22,     0,     0,
  4547. !      0,     0,     0,     0,     0,     0,   251,     0,     0,   252,
  4548. !      0,     0,     0,     0,     0,     0,     0,   253,   254,   255,
  4549. !      0,     0,     0,     0,     0,   256,   257,   258,     0,     0,
  4550. !      0,     0,   259,     0,     0,     0,   260,     0,     0,     0,
  4551. !      0,     0,     0,     0,     0,     0,     0,     0,   261,   764,
  4552. !    971,   972,    92,    10,   233,   234,   235,     0,   236,    12,
  4553. !    973,     0,   974,   975,   976,   977,   978,   979,   980,   981,
  4554. !    982,   983,    13,    14,    15,   237,   238,   239,    16,     0,
  4555. !    240,     0,    17,     0,   241,   242,     0,   243,    19,   244,
  4556. !    245,     0,     0,   246,   247,   248,   249,   250,    21,     0,
  4557. !    984,   349,     0,   985,     0,     0,     0,     0,     0,   251,
  4558. !      0,     0,   252,     0,     0,     0,     0,     0,     0,     0,
  4559. !    253,   254,   255,     0,     0,     0,     0,     0,   256,   257,
  4560. !    258,     0,     0,     0,     0,   259,     0,   986,     0,   260,
  4561.        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4562. !   1116,   261,   971,   972,    92,    10,   233,   234,   235,     0,
  4563. !    236,    12,   973,     0,   974,   975,   976,   977,   978,   979,
  4564. !    980,   981,   982,   983,    13,    14,    15,   237,   238,   239,
  4565. !     16,     0,   240,     0,    17,     0,   241,   242,     0,   243,
  4566. !     19,   244,   245,     0,     0,   246,   247,   248,   249,   250,
  4567. !     21,     0,   984,   349,     0,   985,     0,     0,     0,     0,
  4568. !      0,   251,     0,     0,   252,     0,     0,     0,     0,     0,
  4569. !      0,     0,   253,   254,   255,     0,     0,     0,     0,     0,
  4570. !    256,   257,   258,     0,     0,     0,     0,   259,     0,   986,
  4571. !      0,   260,   971,   972,    92,    10,   233,   234,   235,     0,
  4572. !    236,    12,   973,   261,   974,   975,   976,   977,   978,   979,
  4573. !    980,   981,   982,   983,    13,    14,    15,   237,   238,   239,
  4574. !     16,     0,   240,     0,    17,     0,   241,   242,     0,   243,
  4575. !     19,   244,   245,     0,     0,   246,   247,   248,   249,   250,
  4576. !     21,     0,   984,  1276,     0,   985,     0,     0,     0,     0,
  4577. !      0,   251,     0,     0,   252,     0,     0,     0,     0,     0,
  4578. !      0,     0,   253,   254,   255,     0,     0,     0,     0,     0,
  4579. !    256,   257,   258,     0,     0,     0,     0,   259,     0,   986,
  4580. !      0,   260,   971,   972,    92,    10,   233,   234,   235,     0,
  4581. !    236,    12,   973,   261,   974,   975,   976,   977,   978,   979,
  4582. !    980,   981,   982,   983,    13,    14,    15,   237,   238,   239,
  4583. !     16,     0,   240,     0,    17,     0,   241,   242,     0,   243,
  4584. !     19,   244,   245,     0,     0,   246,   247,   248,   249,   250,
  4585. !     21,     0,   984,     0,     0,   985,     0,     0,     0,     0,
  4586. !      0,   251,     0,     0,   252,     0,     0,     0,     0,     0,
  4587. !      0,     0,   253,   254,   255,     0,     0,     0,     0,     0,
  4588. !    256,   257,   258,     0,     0,     0,     0,   259,     0,   986,
  4589. !      0,   260,     7,     8,    92,    10,   233,   234,   235,   356,
  4590. !    236,    12,     0,   261,     0,     0,     0,     0,     0,     0,
  4591. !      0,     0,     0,     0,     0,     0,    15,   237,   238,   239,
  4592. !     16,     0,   240,     0,    17,     0,   241,   242,     0,   243,
  4593. !     19,   244,   245,   513,     0,   246,   247,   248,   249,   250,
  4594. !     21,     0,    22,     0,     0,     0,     0,     0,     0,     0,
  4595. !      0,   251,     0,     0,   790,     0,     0,     0,     0,     0,
  4596. !      0,     0,   253,   254,   791,     0,     0,     0,     0,     0,
  4597. !    256,   257,   258,     0,   516,     0,     0,   792,   518,     0,
  4598. !      0,   260,   357,     7,     8,    92,    10,   233,   234,   235,
  4599. !    356,   236,    12,   261,     0,     0,     0,     0,     0,     0,
  4600. !      0,     0,     0,     0,     0,     0,     0,    15,   237,   238,
  4601. !    239,    16,     0,   240,     0,    17,     0,   241,   242,     0,
  4602. !    243,    19,   244,   245,   513,     0,   246,   247,   248,   249,
  4603. !    250,    21,     0,    22,     0,     0,     0,     0,     0,     0,
  4604. !      0,     0,   251,     0,     0,   850,     0,     0,     0,     0,
  4605. !      0,     0,     0,   253,   254,   851,     0,     0,     0,     0,
  4606. !      0,   256,   257,   258,     0,   516,     0,     0,   852,   518,
  4607. !      0,     0,   260,   357,     7,     8,     0,    10,   233,   234,
  4608. !    235,     0,   236,    12,   261,     0,     0,     0,     0,     0,
  4609. !      0,     0,     0,     0,     0,     0,     0,     0,    15,   237,
  4610. !    238,   239,    16,     0,   240,     0,    17,     0,   241,   242,
  4611. !      0,   243,    19,   244,   245,   513,     0,   246,   247,   248,
  4612. !    249,   250,    21,     0,    22,     0,     0,     0,     0,     0,
  4613. !      0,     0,     0,   251,     0,     0,   790,     0,     0,     0,
  4614. !      0,     0,     0,     0,   253,   254,   791,     0,     0,     0,
  4615. !      0,     0,   256,   257,   258,     0,   516,     0,     0,   792,
  4616. !    518,     7,     8,     0,    10,   233,   234,   235,     0,   236,
  4617. !     12,     0,     0,     0,     0,   261,     0,     0,     0,     0,
  4618. !      0,     0,     0,     0,     0,    15,   237,   238,   239,    16,
  4619. !      0,   240,     0,    17,     0,   241,   242,     0,   243,    19,
  4620. !    244,   245,   513,     0,   246,   247,   248,   249,   250,    21,
  4621.        0,    22,     0,     0,     0,     0,     0,     0,     0,     0,
  4622. !    251,     0,     0,   850,     0,     0,     0,     0,     0,     0,
  4623. !      0,   253,   254,   851,     0,     0,     0,     0,     0,   256,
  4624. !    257,   258,     0,   516,     0,     0,   852,   518,     7,     8,
  4625. !      0,    10,   233,   234,   235,     0,   236,    12,     0,     0,
  4626. !      0,     0,   261,     0,     0,     0,     0,     0,     0,     0,
  4627. !      0,     0,    15,   237,   238,   239,    16,     0,   240,     0,
  4628. !     17,     0,   241,   242,     0,   243,    19,   244,   245,     0,
  4629. !      0,   246,   247,   248,   249,   250,    21,     0,    22,     0,
  4630. !      0,     0,     0,     0,     0,     0,     0,   251,     0,     0,
  4631. !    252,     0,     0,     0,     0,   305,     0,     0,   253,   254,
  4632. !    255,     0,     0,     0,     0,     0,   256,   257,   258,     0,
  4633. !      0,     0,     0,   259,     0,     7,     8,   260,    10,   440,
  4634. !    234,   235,     0,   236,    12,     0,     0,     0,     0,   261,
  4635.        0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
  4636. !    237,   238,   239,    16,     0,   240,     0,    17,     0,   241,
  4637. !    242,     0,   243,    19,   244,   245,     0,     0,   246,   247,
  4638. !    248,   249,   250,    21,     0,    22,     0,     0,  1093,     0,
  4639. !      0,     0,     0,     0,   251,     0,     0,   252,     0,     0,
  4640. !      0,     0,     0,     0,     0,   253,   254,   255,     0,     0,
  4641. !      0,     0,     0,   256,   257,   258,     0,     0,     0,     0,
  4642. !    259,     0,     7,     8,   260,    10,   233,   234,   235,     0,
  4643. !    236,    12,     0,     0,     0,     0,   261,     0,     0,     0,
  4644. !      0,     0,     0,     0,     0,     0,    15,   237,   238,   239,
  4645. !     16,     0,   240,     0,    17,     0,   241,   242,     0,   243,
  4646. !     19,   244,   245,     0,     0,   246,   247,   248,   249,   250,
  4647. !     21,     0,    22,     0,     0,     0,     0,     0,     0,     0,
  4648. !      0,   251,     0,     0,   252,     0,     0,     0,     0,     0,
  4649. !      0,     0,   253,   254,   255,     0,     0,     0,     0,     0,
  4650. !    256,   257,   258,     0,     0,     0,     0,   259,     0,     7,
  4651. !      8,   260,    10,   440,   234,   235,     0,   236,    12,     0,
  4652. !      0,     0,     0,   261,     0,     0,     0,     0,     0,     0,
  4653. !      0,     0,     0,    15,   237,   238,   239,    16,     0,   240,
  4654. !      0,    17,     0,   241,   242,     0,   243,    19,   244,   245,
  4655. !      0,     0,   246,   247,   248,   249,   250,    21,     0,    22,
  4656. !    466,     0,     0,     0,     0,     0,     0,     0,   251,     0,
  4657. !      0,   252,     0,     0,     0,     0,     0,     0,     0,   253,
  4658. !    254,   255,     0,     0,     0,     0,     0,   256,   257,   258,
  4659. !      0,     0,     7,     8,   467,    10,   440,   234,   235,     0,
  4660. !    236,    12,     0,     0,     0,     0,     0,     0,     0,     0,
  4661. !    261,     0,     0,     0,     0,     0,    15,   237,   238,   239,
  4662. !     16,     0,   240,     0,    17,     0,   241,   242,     0,   243,
  4663. !     19,   244,   245,     0,     0,   246,   247,   248,   249,   250,
  4664.       21,     0,    22,     0,     0,     0,     0,     0,     0,     0,
  4665. !      0,   251,     0,     0,   252,     0,     0,     0,     0,     0,
  4666. !      0,     0,   253,   254,   255,     0,     0,     0,     0,     0,
  4667. !    256,   257,   258,     0,     0,     0,     0,   259,   503,     7,
  4668. !      8,     0,    10,   440,   234,   235,     0,   236,    12,     0,
  4669. !      0,     0,     0,   261,     0,     0,     0,     0,     0,     0,
  4670. !      0,     0,     0,    15,   237,   238,   239,    16,     0,   240,
  4671. !      0,    17,     0,   241,   242,     0,   243,    19,   244,   245,
  4672. !      0,     0,   246,   247,   248,   249,   250,    21,     0,    22,
  4673. !      0,     0,     0,     0,     0,     0,     0,     0,   251,     0,
  4674. !      0,   252,     0,     0,     0,     0,     0,     0,     0,   253,
  4675. !    254,   255,     0,     0,     0,     0,     0,   256,   257,   258,
  4676. !      0,     0,     0,     0,   259,     0,     7,   701,   260,    10,
  4677. !    440,   234,   235,     0,   236,    12,     0,     0,     0,     0,
  4678. !    261,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  4679. !     15,   237,   238,   239,    16,     0,   240,     0,    17,     0,
  4680. !    241,   242,     0,   243,    19,   244,   245,     0,     0,   246,
  4681. !    247,   248,   249,   250,    21,     0,    22,     0,     0,     0,
  4682. !      0,     0,     0,     0,     0,   251,     0,     0,   252,     0,
  4683. !      0,     0,     0,     0,     0,     0,   253,   254,   255,     0,
  4684. !      0,     0,     0,     0,   256,   257,   258,     0,     0,     0,
  4685. !      0,   259,     0,     7,     8,   260,    10,   440,   234,   235,
  4686. !      0,   236,    12,     0,     0,     0,     0,   261,     0,     0,
  4687. !      0,     0,     0,     0,     0,     0,     0,    15,   237,   238,
  4688. !    239,    16,     0,   240,     0,    17,     0,   241,   242,     0,
  4689. !    243,    19,   244,   245,     0,     0,   246,   247,   248,   249,
  4690. !    250,    21,     0,    22,     0,     0,     0,     0,     0,     0,
  4691. !      0,     0,   251,     0,     0,   895,     0,     0,     0,     0,
  4692. !      0,     0,     0,   253,   254,   896,     0,     0,     0,     0,
  4693. !      0,   256,   257,   258,     0,     0,     0,     0,   897,     0,
  4694. !      7,     8,   260,    10,   440,   234,   235,     0,   236,    12,
  4695. !      0,     0,     0,     0,   261,     0,     0,     0,     0,     0,
  4696. !      0,     0,     0,     0,    15,   237,   238,   239,    16,     0,
  4697. !    240,     0,    17,     0,   241,   242,     0,   243,    19,   244,
  4698. !    245,     0,     0,   246,   247,   248,   249,   250,    21,     0,
  4699. !     22,     0,     0,     0,     0,     0,     0,     0,     0,   251,
  4700. !      0,     0,  1183,     0,     0,     0,     0,     0,     0,     0,
  4701. !    253,   254,  1184,     0,     0,     0,     0,     0,   256,   257,
  4702. !    258,     0,     0,     0,     0,  1185,     0,  1248,     8,   260,
  4703. !     10,   440,   234,   235,     0,   236,    12,     0,     0,     0,
  4704. !      0,   261,     0,     0,     0,     0,     0,     0,     0,     0,
  4705. !      0,    15,   237,   238,   239,    16,     0,   240,     0,    17,
  4706. !      0,   241,   242,     0,   243,    19,   244,   245,     0,     0,
  4707. !    246,   247,   248,   249,   250,    21,     0,    22,     0,     0,
  4708. !      0,     0,     0,     0,     0,     0,   251,     0,     0,   252,
  4709. !      0,     0,     0,     0,     0,     0,     0,   253,   254,   255,
  4710. !      0,     0,     0,     0,     0,   256,   257,   258,     0,     0,
  4711. !      0,     0,   259,     0,     7,     8,   260,    10,   440,   234,
  4712. !    235,     0,   236,    12,     0,     0,     0,     0,   261,     0,
  4713. !      0,     0,     0,     0,     0,     0,     0,     0,    15,   237,
  4714. !    238,   239,    16,     0,   240,     0,    17,     0,   241,   242,
  4715. !      0,   243,    19,   244,   245,     0,     0,   246,   247,   248,
  4716. !    249,   250,    21,     0,    22,     0,     0,     0,     0,     0,
  4717. !      0,     0,     0,   251,     0,     0,   252,     0,     0,     0,
  4718. !      0,     0,     0,     0,   253,   254,   255,     0,     0,     0,
  4719. !      0,     0,   256,   257,   258,     0,     0,     7,     8,   259,
  4720. !     10,   440,   234,   235,     0,   236,    12,     0,     0,     0,
  4721. !      0,     0,     0,     0,     0,   261,     0,     0,     0,     0,
  4722. !      0,    15,   237,   238,   239,    16,     0,   240,     0,    17,
  4723. !      0,   241,   242,     0,   243,    19,   244,   245,     0,     0,
  4724. !    246,   247,   248,   249,   250,    21,     0,    22,     0,     0,
  4725. !      0,     0,     0,     0,     0,     0,   251,     0,     0,   895,
  4726. !      0,     0,     0,     0,     0,     0,     0,   253,   254,   896,
  4727. !      0,     0,     0,     0,     0,   256,   257,   258,     0,     0,
  4728. !      7,     8,   897,    10,   233,   234,   235,     0,   236,    12,
  4729. !      0,     0,     0,     0,     0,     0,     0,     0,   261,     0,
  4730. !      0,     0,     0,     0,    15,   237,   238,   239,    16,     0,
  4731. !    240,     0,    17,     0,   241,   242,     0,   243,    19,   244,
  4732. !    245,     0,     0,   246,   247,   248,   249,   250,    21,     0,
  4733. !     22,     0,     0,     0,     0,     0,     0,     0,     0,   251,
  4734. !      0,     0,  1183,     0,     0,     0,     0,     0,     0,     0,
  4735. !    253,   254,  1184,     0,     0,     0,     0,     0,   256,   257,
  4736. !    258,     0,     0,     7,     8,  1185,    10,   440,   234,   235,
  4737. !      0,   236,    12,     0,     0,     0,     0,     0,     0,     0,
  4738. !      0,   261,     0,     0,     0,     0,     0,    15,   237,     0,
  4739. !      0,    16,     0,   240,     0,    17,     0,   241,   242,     0,
  4740. !    243,    19,   244,   245,     0,     0,   246,   247,   248,   249,
  4741. !    250,    21,     0,    22,     0,     0,     0,     0,     0,     0,
  4742. !      0,     0,   251,     0,     0,   252,     0,     0,     0,     0,
  4743. !      0,     0,     0,   253,   254,   255,     0,     0,     0,     0,
  4744. !      0,   256,   257,   258,     0,     0,     7,     8,   441,    10,
  4745. !    440,   234,   235,     0,   236,    12,     0,     0,     0,     0,
  4746. !      0,     0,     0,     0,   261,     0,     0,     0,     0,     0,
  4747. !     15,   237,     0,     0,    16,     0,   240,     0,    17,     0,
  4748. !    241,   242,     0,   243,    19,   244,   245,     0,     0,   246,
  4749. !    247,   248,   249,   250,    21,     0,    22,     0,     0,     0,
  4750. !      0,     0,     0,     0,     0,   251,     0,     0,   252,     0,
  4751. !      0,     0,     0,     0,     0,     0,   253,   254,   255,     0,
  4752. !      0,     0,     0,     0,   256,   257,   258,     0,     0,     0,
  4753. !      0,   444,     0,     0,     0,     0,     0,     0,     0,     0,
  4754. !      0,     0,   546,     0,   469,   470,   471,   261,   472,   473,
  4755. !    474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
  4756. !    484,   485,   486,   487,   488,   489,   490,   469,   470,   471,
  4757. !   1210,   472,   473,   474,   475,   476,   477,   478,   479,   480,
  4758. !    481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
  4759. !    469,   470,   471,  1259,   472,   473,   474,   475,   476,   477,
  4760.      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
  4761. !    488,   489,   490,   469,   470,   471,     0,   472,   473,   474,
  4762.      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
  4763. !    485,   486,   487,   488,   489,   490,   469,   470,   471,     0,
  4764. !    472,   473,   474,   475,   476,   477,   478,   479,   480,     0,
  4765. !    482,   483,   484,   485,   486,   487,   488,   489,   490,   471,
  4766. !      0,   472,   473,   474,   475,   476,   477,   478,   479,   480,
  4767. !    481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
  4768.      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
  4769. !    484,   485,   486,   487,   488,   489,   490
  4770.   };
  4771.   
  4772.   static const short yycheck[] = {     4,
  4773. !      4,   118,   279,   137,   419,   349,   300,    12,   131,   132,
  4774. !      4,   285,   341,   300,    70,    20,    20,   108,   109,    24,
  4775. !     25,    12,    27,   392,   285,   266,    52,   300,    33,    33,
  4776. !    137,    87,    20,    71,   132,   130,   391,   137,   753,    44,
  4777. !    182,    46,    98,   162,   163,   155,   135,    52,  1161,   820,
  4778. !    993,  1189,  1052,     4,    59,     9,    56,    34,    34,     9,
  4779. !     44,    52,     9,     0,  1222,    70,    71,  1169,    51,     3,
  4780. !      4,    56,    77,    77,  1232,    60,   370,    60,     4,     0,
  4781. !     10,   410,    87,   370,     3,     4,    69,    44,   365,    77,
  4782. !     95,    96,    45,    98,    20,    36,   101,    97,    44,   104,
  4783. !    105,    62,    53,   108,   109,   110,   189,    33,    36,    10,
  4784. !     60,    95,    58,  1215,  1252,   120,   120,   122,   123,    53,
  4785. !      7,    48,    41,    10,    75,    55,   103,   103,     4,     4,
  4786. !     60,    88,   993,   137,    53,   140,   141,   142,   122,  1000,
  4787. !   1253,    75,    88,     1,  1302,   102,    12,  1285,   102,   518,
  4788. !   1150,    77,   102,    88,    55,   102,    75,    44,     7,    60,
  4789. !    302,   166,   103,    93,    83,   126,   443,     4,    55,    44,
  4790. !     55,    58,   102,    60,    88,   103,    51,    53,    53,   184,
  4791. !    184,   155,   143,    70,     4,    56,    52,     7,   959,   194,
  4792. !     65,     4,    93,   300,   120,   189,    54,   158,   287,    75,
  4793. !     75,    88,    89,    44,   919,    54,    93,    76,     3,    44,
  4794. !     85,    60,   186,    88,    89,   102,    53,     4,   103,    88,
  4795. !     89,  1334,  1335,   346,   347,   348,   231,   232,   155,   285,
  4796. !     99,    51,   103,    53,   272,   162,   163,   990,    75,   992,
  4797. !     53,   107,    51,    92,   344,    65,    56,    88,   346,   347,
  4798. !    345,     3,     4,    88,    89,    75,   339,   391,   184,   186,
  4799. !     69,   535,    75,   370,     3,     4,    53,   272,   137,    89,
  4800. !      4,   276,    44,   278,   279,   280,   395,   396,    69,    56,
  4801. !     44,   286,    92,    44,   391,     4,   396,    44,     7,   380,
  4802. !    381,   391,    44,   102,   252,   300,   300,   255,    44,    51,
  4803. !    258,    53,   286,   230,   423,    10,   264,    56,   663,   314,
  4804. !     66,  1172,   317,  1256,    53,   273,    88,   322,   401,    53,
  4805. !   1263,   326,   326,    44,    88,   654,   103,    88,    89,    85,
  4806. !     60,    88,    51,    51,    53,    55,    88,   460,   326,   439,
  4807. !   1055,   102,    88,    89,    56,   339,    65,   103,    55,    56,
  4808. !     55,    69,   279,    58,   103,    60,    75,   362,   363,   364,
  4809. !    365,   366,    56,     3,     4,   370,   370,    88,  1229,    55,
  4810. !    331,   376,   102,   378,  1317,   380,   381,   382,   362,    88,
  4811. !    364,   365,   102,   388,    44,   251,    54,   391,    93,   394,
  4812. !    259,   103,   397,   387,   150,  1256,   496,    60,   498,   499,
  4813. !    326,    41,  1263,     3,     4,   410,    69,   401,    56,   103,
  4814. !    517,   416,   417,    53,   419,   419,   102,   524,    51,   424,
  4815. !    789,     6,     7,    55,    60,    56,  1287,    12,    88,    89,
  4816. !    530,   300,   416,   788,    56,    75,     3,     4,   365,     6,
  4817. !    196,    41,   102,    83,   405,   450,   451,   452,   453,    54,
  4818. !     35,    51,    56,    53,     3,     4,  1317,   103,    27,    44,
  4819. !     60,   422,   500,    44,    55,    65,   102,    54,   395,   396,
  4820. !    102,    51,   103,   596,    41,    75,    55,     3,     4,    44,
  4821. !     60,   103,    56,    83,   102,   585,    53,   570,    88,    69,
  4822. !    448,    70,    41,   419,   823,   500,   423,   502,   596,   103,
  4823. !     54,   370,   609,    88,    53,    44,    60,    88,   615,   514,
  4824. !    515,   102,   517,   517,   808,    41,    83,    44,    92,   524,
  4825. !    524,   808,   391,    88,   798,   644,    75,    53,   284,   663,
  4826. !    556,    58,    55,    44,    83,   808,   102,   798,   867,   108,
  4827. !    109,   110,     3,     4,     5,     6,     7,    70,   103,    88,
  4828. !    555,   556,   308,   794,   102,   424,   663,    83,     3,     4,
  4829. !    929,    88,    89,    54,   647,   556,    55,    56,   685,    60,
  4830. !     44,   555,   441,   142,    35,   444,   570,    88,    89,     9,
  4831. !    449,   450,   451,   452,   453,     3,     4,     5,     6,     7,
  4832. !     51,     1,    53,    54,   463,    23,   102,   680,   467,   102,
  4833. !    466,    92,   607,   608,   609,   609,    51,    44,    53,    54,
  4834. !    615,   615,    92,    23,    88,    25,    26,     3,     4,     3,
  4835. !   1035,    58,    32,    55,    56,    51,   631,   632,   555,   634,
  4836. !    499,    60,    60,   977,    60,    53,   105,    98,    99,   100,
  4837. !     69,     1,    97,    69,    54,    55,    56,   924,    58,   654,
  4838. !     60,    88,   388,   647,   788,    41,   756,     4,   663,   663,
  4839. !     55,   397,    37,    23,    54,    25,    26,    53,    60,   769,
  4840. !     60,   771,    32,     4,    51,    70,    51,   682,     6,     7,
  4841. !    436,   788,    92,    60,    12,   792,   680,   692,   693,   694,
  4842. !    556,    88,    69,    89,    54,    55,    56,    83,    58,    60,
  4843. !     60,   808,    92,   664,    51,   105,    53,    35,   669,   670,
  4844. !    925,   926,   673,   928,    88,   992,    55,   644,    65,    58,
  4845. !     51,    89,    53,    55,    56,   825,   592,   827,    75,   829,
  4846. !     23,    70,    92,    54,    65,    56,    25,    26,   845,    60,
  4847. !   1084,  1085,   798,    27,    75,   852,    88,   752,   692,   693,
  4848. !    694,    88,   843,   844,  1098,   682,   512,    69,    89,   850,
  4849. !    851,    54,    88,    56,    69,    58,    69,    60,   773,    69,
  4850. !    775,   527,    25,    26,  1118,  1119,    54,   782,    56,    25,
  4851. !     26,   786,    60,   788,   788,   790,   791,   792,   792,     9,
  4852. !     78,    79,   103,   798,   663,   878,   879,    55,   881,    55,
  4853. !     56,    54,     3,   808,   808,   810,   764,    60,    54,  1334,
  4854. !   1335,   380,   381,   382,    60,     3,     4,    55,    56,     3,
  4855. !      4,  1165,   102,     7,   108,   109,   110,   102,    54,   102,
  4856. !     56,   103,   790,   791,    60,   102,   841,   842,   843,   844,
  4857. !    845,   845,    55,    56,   849,   850,   851,   852,   852,    37,
  4858. !     38,    55,    56,    41,   236,   237,    54,    41,   142,   102,
  4859. !     44,     7,   867,    51,    58,    53,   102,    51,   102,    53,
  4860. !   1296,  1297,   877,   102,     4,   880,    58,   882,   882,   884,
  4861. !    105,    65,    12,   752,   878,   879,   102,   881,    44,    88,
  4862. !     20,    75,   850,   851,    24,    25,   105,    27,    32,    83,
  4863. !    105,    85,   105,    33,    88,    89,   102,   581,     4,     5,
  4864. !    102,   102,   873,   782,    44,    51,    46,     6,   105,   788,
  4865. !    925,   926,    52,   928,    88,    81,    82,    44,    55,    59,
  4866. !     86,    87,    88,    89,    58,    31,    58,   895,   896,   808,
  4867. !     36,    71,     4,     5,    58,   102,    56,    77,    56,  1226,
  4868. !    102,    56,    56,   958,   958,    51,   882,    53,    56,    58,
  4869. !     55,   635,   102,  1086,   102,    95,    96,   102,   834,    31,
  4870. !     88,   101,   646,   931,    36,   105,   105,    55,   108,   109,
  4871. !    110,    60,    88,    89,    55,   990,   991,   992,    55,    51,
  4872. !    120,    53,   122,   123,    25,    26,    60,   866,     1,  1004,
  4873. !   1005,    32,  1007,    88,    58,   102,   990,    70,   992,   102,
  4874. !    140,   141,   142,    70,   102,   884,   102,    70,   102,   102,
  4875. !     23,   102,    25,    26,    55,    56,    70,    58,   897,    32,
  4876. !   1035,  1035,   958,   102,    60,    60,   166,     5,     6,     7,
  4877. !    609,    55,   102,  1337,    12,   911,   615,    60,  1131,  1132,
  4878. !   1337,    54,    55,    56,   184,    58,   102,    60,   105,   102,
  4879. !   1177,   103,   102,    83,   194,   992,  1189,    35,    89,  1030,
  4880. !   1031,   105,   343,    44,     5,     6,     7,   105,   102,   102,
  4881. !    102,    12,    34,     4,   103,   102,     7,   105,    58,    92,
  4882. !    102,   847,  1183,  1184,   663,   102,   380,   381,   382,  1182,
  4883. !    966,   231,   232,  1108,    35,  1205,   102,   102,    58,  1035,
  4884. !     88,    88,     4,     5,     6,     7,    88,   983,    10,    88,
  4885. !     12,    88,   103,    44,    75,    76,    77,    78,    79,  1252,
  4886. !     51,   105,    53,     6,    60,    27,   102,  1131,  1132,    31,
  4887. !    102,   815,   272,    35,    65,   102,  1107,   102,   278,   279,
  4888. !    280,   105,    88,   259,    75,   285,   286,     3,     4,    51,
  4889. !    102,    53,  1285,   102,    85,   103,  1127,    88,    89,   102,
  4890. !    300,  1271,   102,  1039,   102,    60,    56,    56,  1183,  1184,
  4891. !   1185,     7,    54,    14,   314,  1179,    56,   317,  1182,    58,
  4892. !    102,   865,   322,   949,   102,    41,   326,    60,    44,    60,
  4893. !    874,    93,    27,  1286,   105,    51,    44,    53,    56,   883,
  4894. !     88,   341,  1078,    56,    60,  1338,    58,    88,    58,    65,
  4895. !     88,   102,  1227,   105,    15,  1183,  1184,   102,   102,    75,
  4896. !   1337,    58,   362,   363,   364,   365,   366,    83,   102,    56,
  4897. !    370,   103,    88,  1227,    56,    56,   376,   102,   378,   102,
  4898. !    380,   381,   382,    56,    56,   102,     9,    58,   388,    56,
  4899. !     56,   102,     3,     4,   394,    88,     7,   397,    56,   375,
  4900. !     55,    91,   102,   102,   843,   844,   845,    56,   102,     9,
  4901. !    410,   850,   851,   852,   109,   110,   416,   417,   102,   419,
  4902. !     58,    56,  1286,   102,   424,    88,   102,  1258,   102,  1226,
  4903. !     41,     3,     4,    44,     9,     7,    56,     0,     0,   119,
  4904. !     51,     2,    53,   328,   808,   120,  1185,   142,   823,    99,
  4905. !    450,   451,   452,   453,    65,   609,   120,  1150,  1160,  1191,
  4906. !    130,   615,  1337,  1337,    75,   441,   512,  1203,   444,    41,
  4907. !    446,   447,    83,   449,    85,  1019,  1020,    88,    89,    51,
  4908. !    463,    53,  1087,     4,   991,   626,     7,  1203,  1032,  1033,
  4909. !    592,   467,   803,    65,   688,   471,   867,    33,    33,   654,
  4910. !    500,   813,   502,    75,     4,   958,   417,   543,   882,   663,
  4911. !    880,    83,   801,    12,   514,   515,    88,   517,   500,   837,
  4912. !     20,   497,  1276,    44,   524,  1310,     4,   503,     6,     7,
  4913. !     51,  1312,    53,    33,    12,   535,    73,    74,    75,    76,
  4914. !     77,    78,    79,   884,    65,    -1,    46,    10,    -1,    27,
  4915. !     -1,   370,    -1,    31,    75,   555,   556,    35,    -1,    59,
  4916. !     -1,    -1,    25,    26,    85,    -1,    -1,    88,    89,    32,
  4917. !     -1,    71,    -1,    51,    -1,    53,    76,    77,    -1,    -1,
  4918. !     -1,    44,    -1,    -1,    -1,    -1,  1130,    -1,    88,    89,
  4919. !     -1,    -1,    55,    56,    -1,    58,    96,    60,  1337,    99,
  4920. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,   607,   608,   609,
  4921. !     88,    -1,    -1,    -1,   755,   615,    -1,    -1,    -1,     4,
  4922. !    120,     6,     7,   123,    -1,    88,    89,    12,    -1,    92,
  4923. !     93,   631,   632,    -1,   634,    -1,    -1,   137,    -1,   102,
  4924. !     -1,    -1,    27,    -1,    -1,    -1,    31,    -1,    -1,    -1,
  4925. !     35,    -1,  1196,  1197,   654,  1199,  1200,    -1,    -1,    -1,
  4926. !     -1,    -1,    -1,   663,    -1,    -1,    51,    -1,    53,  1108,
  4927. !     -1,   812,    -1,    -1,     1,    -1,     3,     4,     5,     6,
  4928. !      7,    -1,   682,    -1,   184,    12,   381,   382,    -1,   843,
  4929. !    844,   845,   692,   693,   694,    -1,   850,   851,   852,    -1,
  4930. !     27,    -1,    -1,    -1,    31,    -1,    -1,    -1,    35,    36,
  4931. !     -1,    -1,    -1,    -1,    41,    -1,   857,    -1,    -1,    -1,
  4932. !     -1,    -1,    -1,    -1,    51,    -1,    53,    -1,    -1,    56,
  4933. !     -1,   231,    -1,    60,     4,    -1,     6,     7,    65,    -1,
  4934. !    137,    -1,    12,    -1,  1183,  1184,  1185,    -1,    75,    -1,
  4935. !     -1,    -1,   752,    -1,    -1,    -1,    83,    -1,    -1,   259,
  4936. !     -1,    88,  1306,    -1,    -1,    35,    -1,    -1,    -1,   910,
  4937. !    911,    -1,   272,   773,    44,   775,   103,    -1,    -1,    -1,
  4938. !    280,    51,   782,    53,   760,    -1,   786,    -1,   788,    -1,
  4939. !    790,   791,   792,    -1,    71,    65,    -1,    -1,   798,    76,
  4940. !    300,    -1,    -1,    -1,    -1,    75,    -1,    -1,   808,    -1,
  4941. !    810,    88,    89,    -1,    -1,    85,   792,    -1,    88,    89,
  4942. !     -1,    -1,    99,   823,    -1,   966,   326,    -1,    -1,   524,
  4943. !     -1,    -1,    -1,     3,     4,    -1,    -1,    -1,    -1,    -1,
  4944. !     -1,   841,   842,   843,   844,   845,    -1,    -1,    -1,   849,
  4945. !    850,   851,   852,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  4946. !    137,     4,    -1,   363,     7,    -1,   366,   867,    -1,    -1,
  4947. !    370,    41,    -1,    -1,    -1,    -1,   852,   877,    -1,    -1,
  4948. !    880,    51,   882,    53,   884,    -1,    56,    -1,    -1,    -1,
  4949. !    866,   391,    -1,    -1,    -1,    65,    -1,    -1,    -1,  1040,
  4950. !     -1,    44,    -1,    -1,  1045,    75,    -1,    -1,    51,    -1,
  4951. !     53,    -1,    -1,    83,   609,    -1,    -1,   417,    88,   419,
  4952. !    615,   897,    65,    -1,   424,   925,   926,    -1,   928,    -1,
  4953. !     -1,    -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  4954. !     -1,   441,    85,    -1,   444,    88,    89,   344,    -1,   449,
  4955. !    450,   451,   452,   453,  1108,    -1,    -1,    -1,   958,    -1,
  4956. !     -1,    -1,     4,   463,     6,     7,    -1,   467,   663,    -1,
  4957. !     12,    -1,    -1,    24,    25,    -1,    -1,    -1,    -1,  1120,
  4958. !   1121,    -1,   259,    -1,    -1,    27,    -1,    -1,    -1,    31,
  4959. !    990,   991,   992,    35,   391,   272,    -1,    -1,    -1,   499,
  4960. !    500,    -1,   697,    -1,  1004,  1005,   982,  1007,  1149,    51,
  4961. !     -1,    53,    54,    -1,    -1,    -1,    -1,   517,    -1,    -1,
  4962. !     71,    -1,    -1,   300,   524,    76,    -1,    -1,    -1,  1183,
  4963. !   1184,  1185,    -1,     3,     4,  1035,    -1,    88,    89,    -1,
  4964. !     -1,    -1,   439,    -1,    -1,    -1,    88,    -1,    99,    -1,
  4965. !      3,     4,    -1,  1194,     7,    -1,    -1,   108,   109,    -1,
  4966. !   1201,  1202,    -1,    -1,    -1,  1041,  1042,  1043,  1044,  1210,
  4967. !     -1,    41,    -1,    -1,    -1,    -1,    -1,  1053,    -1,    -1,
  4968. !     -1,    51,    -1,    53,    -1,    -1,   137,    -1,    41,   140,
  4969. !    141,    44,    -1,   370,    -1,    65,   791,   792,    51,   496,
  4970. !     53,   498,   499,    -1,    -1,    75,    -1,    -1,  1108,   609,
  4971. !     -1,  1087,    65,    83,   391,   615,    -1,    -1,    88,  1095,
  4972. !     -1,    -1,    75,    -1,    -1,    -1,    -1,   524,  1269,  1270,
  4973. !     83,    -1,    85,   530,    -1,    88,    89,    71,    72,    73,
  4974. !     74,    75,    76,    77,    78,    79,    -1,   424,    -1,   844,
  4975. !    845,    -1,    -1,    -1,    -1,    -1,   851,   852,    -1,    -1,
  4976. !     -1,    -1,    -1,   663,   441,    -1,    -1,   444,    -1,    -1,
  4977. !     -1,    -1,   449,   450,   451,   452,   453,    -1,    -1,    -1,
  4978. !     -1,    -1,    -1,  1183,  1184,  1185,   463,    -1,   585,    -1,
  4979. !    467,    -1,    -1,  1169,     1,  1336,     3,     4,     5,     6,
  4980. !      7,   896,   897,    -1,    -1,    12,    -1,    -1,   259,  1185,
  4981. !     -1,    -1,    -1,    -1,  1190,  1191,    -1,    -1,   615,    -1,
  4982. !     27,   272,   499,   500,    31,    -1,    -1,  1227,    35,    36,
  4983. !     -1,    -1,    -1,    -1,    41,    -1,    -1,    -1,    -1,  1215,
  4984. !    517,    -1,    -1,    -1,    51,    -1,    53,   524,    -1,   300,
  4985. !     -1,    -1,   752,    60,    -1,    -1,   756,    -1,    65,    -1,
  4986. !     -1,     1,    -1,     3,     4,     5,     6,     7,    75,    -1,
  4987. !     -1,    -1,    12,    -1,    -1,     4,    83,     6,     7,    -1,
  4988. !     -1,    88,   782,    12,    -1,    25,    26,    27,   788,    -1,
  4989. !     -1,    31,   792,    -1,    -1,    35,   103,    -1,    27,    39,
  4990. !    697,    41,    31,    -1,  1280,    45,    35,    -1,   808,    -1,
  4991. !    810,    51,    -1,    53,    -1,    -1,    56,    -1,    -1,   370,
  4992. !   1296,  1297,    51,    -1,    53,    65,    -1,    -1,    -1,   380,
  4993. !    381,    -1,   609,  1309,    -1,    75,   836,  1337,   615,    -1,
  4994. !    391,    -1,    -1,    83,    -1,   845,    -1,    -1,    88,    -1,
  4995. !     -1,    -1,   852,    -1,    94,    95,    -1,     3,     4,   756,
  4996. !     -1,     7,    -1,    -1,    -1,    -1,   866,    -1,    -1,    -1,
  4997. !     -1,    -1,   769,   424,   771,    -1,    -1,    -1,    -1,    -1,
  4998. !     -1,    -1,   882,    -1,   884,    -1,   663,    -1,    -1,    -1,
  4999. !    441,    -1,    -1,   444,    -1,    41,    -1,   897,   449,   450,
  5000. !    451,   452,   453,    -1,    -1,    51,    -1,    53,    -1,    -1,
  5001. !     -1,    -1,   463,  1108,    -1,    -1,   467,    -1,    -1,    65,
  5002. !      1,    -1,     3,     4,     5,     6,     7,    -1,   825,    75,
  5003. !    827,    12,   829,    -1,    -1,    -1,    -1,    83,    -1,    69,
  5004. !     -1,    -1,    88,    -1,    -1,    -1,    27,    -1,   499,   500,
  5005. !     31,    -1,    -1,    -1,    35,    36,    -1,    76,   958,    -1,
  5006. !     41,    -1,    -1,   514,   515,    -1,   517,    -1,    -1,    -1,
  5007. !     51,    -1,    53,   524,    -1,   752,    -1,    -1,    -1,    60,
  5008. !     99,    -1,    -1,    -1,    65,    -1,    -1,   117,    -1,  1184,
  5009. !   1185,   991,    -1,   993,    75,    -1,    -1,    -1,    -1,    -1,
  5010. !   1000,    -1,    83,    -1,    -1,   782,   136,    88,    -1,    -1,
  5011. !     -1,   788,    -1,    -1,    -1,   792,    -1,    -1,   137,    -1,
  5012. !     -1,   151,   103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5013. !     -1,   808,    -1,    -1,    -1,  1035,     1,    -1,     3,     4,
  5014. !      5,     6,     7,    -1,     3,     4,    -1,    12,     7,    -1,
  5015. !     -1,    -1,    -1,    -1,    -1,    -1,   607,   608,   609,    -1,
  5016. !     -1,    -1,    27,    -1,   615,    -1,    31,    -1,   845,    -1,
  5017. !     35,    36,    -1,    -1,    -1,   852,    41,    -1,    -1,    -1,
  5018. !     -1,    -1,    41,    -1,    -1,    44,    51,  1087,    53,   866,
  5019. !     -1,    56,    51,    -1,    53,    60,    -1,    -1,     3,     4,
  5020. !     65,    -1,    -1,    -1,    -1,    -1,    65,   884,    -1,    -1,
  5021. !     75,    -1,   663,    -1,    -1,    -1,    75,    -1,    83,    -1,
  5022. !    897,    -1,    -1,    88,    83,    -1,    85,    -1,    -1,    88,
  5023. !     89,    -1,     4,     5,     6,     7,    41,    -1,   103,    44,
  5024. !     12,   260,    -1,    -1,    -1,    -1,    51,    -1,    53,    -1,
  5025. !     -1,    -1,    -1,    -1,    -1,    27,    -1,    -1,    -1,    31,
  5026. !     65,  1161,     1,    35,     3,     4,     5,     6,     7,  1169,
  5027. !     75,    -1,  1172,    12,    -1,    -1,    -1,    -1,    83,    51,
  5028. !     85,    53,    -1,    88,    89,  1185,    -1,    -1,    27,    -1,
  5029. !   1190,  1191,    31,    -1,    -1,    -1,    35,     3,     4,    -1,
  5030. !     -1,   752,    41,    -1,    -1,    -1,    45,    -1,    -1,    -1,
  5031. !     -1,  1108,    51,    -1,    53,  1215,    -1,    56,    -1,    -1,
  5032. !     -1,    -1,  1222,    -1,   343,   344,    65,    -1,    -1,  1229,
  5033. !     -1,   782,  1232,    -1,    -1,    41,    75,   788,    -1,   790,
  5034. !    791,   792,    -1,    -1,    83,    51,    -1,    53,    -1,    88,
  5035. !     56,    -1,    -1,  1253,   384,    94,  1256,   808,    -1,    65,
  5036. !    390,    -1,    -1,  1263,    -1,    -1,    -1,    -1,    -1,    75,
  5037. !     -1,    -1,   391,    -1,    -1,    -1,    -1,    83,    -1,    -1,
  5038. !     -1,    -1,    88,     4,     5,     6,     7,  1287,    -1,    -1,
  5039. !     -1,    12,   843,   844,   845,   414,    -1,    -1,    -1,   850,
  5040. !    851,   852,  1302,    -1,   434,   435,    27,   437,  1205,    -1,
  5041. !     31,    -1,    -1,    -1,    35,   866,    -1,  1317,    -1,    -1,
  5042. !    439,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5043. !     51,    -1,    53,   884,  1334,  1335,    -1,  1337,     3,     4,
  5044. !     -1,    -1,     7,    -1,   463,    -1,   897,   466,    69,    -1,
  5045. !    469,   470,    -1,   472,   473,   474,   475,   476,   477,   478,
  5046. !    479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
  5047. !    489,   490,    -1,    -1,  1271,    -1,    41,   496,    -1,   498,
  5048. !    499,    -1,    -1,    -1,    -1,    -1,    51,    -1,    53,    -1,
  5049. !    520,   521,  1169,    -1,     4,   525,     6,    -1,    -1,    -1,
  5050. !     65,    -1,    12,    -1,    -1,   524,    -1,    -1,  1185,    -1,
  5051. !     75,   530,    -1,  1190,  1191,    -1,    -1,    27,    83,    -1,
  5052. !     -1,    31,    -1,    88,    -1,    35,   545,   546,    -1,    -1,
  5053. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1215,    -1,
  5054. !     -1,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,
  5055.        3,     4,     5,     6,     7,    -1,    -1,    10,    -1,    12,
  5056. !     -1,     3,     4,     5,     6,     7,   585,    -1,    -1,    -1,
  5057. !     12,   601,   602,   592,    27,    -1,    -1,    -1,    31,    12,
  5058. !     -1,   611,    35,    -1,    -1,    27,    -1,   617,    41,    31,
  5059. !     -1,    24,    25,    35,    27,    -1,   615,    -1,    51,    41,
  5060. !     53,    -1,    -1,    -1,    -1,     4,    -1,   626,    -1,    51,
  5061. !     -1,    53,    65,    -1,    56,    -1,    -1,    -1,    -1,    52,
  5062. !     -1,    -1,    75,    65,    -1,    24,    25,    -1,    27,    -1,
  5063. !     83,   661,    -1,    75,    33,    88,    -1,    -1,    -1,    -1,
  5064. !     93,    83,    -1,   662,    -1,    44,    88,    46,    -1,    -1,
  5065. !      3,     4,     5,     6,     7,    -1,    -1,    -1,    -1,    12,
  5066. !   1337,    -1,    -1,    -1,    -1,    -1,    -1,    66,   101,    -1,
  5067. !    103,   104,   105,    -1,    -1,   108,   109,   110,   697,    -1,
  5068.       -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    41,    -1,
  5069. !     -1,    44,    -1,    -1,    -1,    -1,    95,    -1,    51,   718,
  5070. !     53,    -1,   101,    -1,   103,    -1,   105,    -1,    -1,   108,
  5071. !    109,   110,    65,    -1,    -1,    -1,    -1,    -1,  1169,    -1,
  5072. !     -1,   120,    75,   122,   123,    -1,    -1,    -1,   758,   759,
  5073. !     83,   761,  1183,  1184,  1185,    88,   755,   756,    -1,  1190,
  5074. !   1191,   140,   141,   142,    -1,    -1,    -1,    -1,    -1,    -1,
  5075. !    769,   150,   771,    -1,    -1,    -1,    -1,   787,    -1,    -1,
  5076. !     -1,   194,    -1,    -1,  1215,    -1,    -1,   166,    -1,    -1,
  5077. !     -1,    -1,    -1,    -1,    -1,     3,     4,     5,     6,     7,
  5078. !     -1,   800,    -1,    -1,    12,   184,    -1,    -1,    -1,    -1,
  5079. !     -1,    -1,    -1,   812,    -1,   194,    -1,    -1,    -1,   232,
  5080. !     -1,    -1,    -1,    -1,    -1,    -1,   825,    35,   827,    -1,
  5081. !    829,    -1,    -1,    41,    -1,    -1,    44,    -1,   848,     4,
  5082. !     -1,     6,     7,    51,    -1,    53,    -1,    12,    -1,    -1,
  5083. !    860,   861,   862,    -1,    -1,    -1,    -1,    65,   857,    -1,
  5084. !     -1,    -1,    -1,   276,    -1,   278,   279,    75,    -1,    -1,
  5085. !     35,    -1,   871,   872,    -1,    83,    -1,    85,    -1,    44,
  5086. !     88,    89,    -1,    -1,    -1,    -1,    51,     1,    53,     3,
  5087. !      4,     5,     6,     7,    -1,   308,    -1,   276,    12,    -1,
  5088. !     65,   314,    -1,    -1,   317,   284,  1337,   286,    -1,   322,
  5089. !     75,   910,   911,    27,    -1,   914,    -1,    31,    -1,    -1,
  5090. !     85,    35,    -1,    88,    89,    -1,    -1,    41,    -1,   939,
  5091. !     -1,    -1,    -1,    -1,    -1,   314,    -1,    51,   317,    53,
  5092. !     -1,    -1,    -1,   322,     3,     4,     5,     6,     7,    -1,
  5093. !     -1,    65,    -1,    12,    -1,    -1,    -1,    -1,    -1,    -1,
  5094. !     -1,    75,    -1,    -1,    -1,    -1,    -1,   966,    27,    83,
  5095. !     -1,    -1,    31,    -1,    88,    -1,    35,    -1,    -1,   978,
  5096. !     -1,    -1,    41,   362,   363,   364,   365,    -1,    -1,    -1,
  5097. !     -1,   370,    51,    -1,    53,    -1,    -1,   376,    -1,   378,
  5098. !     -1,   380,   381,   382,    -1,    -1,    65,     3,     4,   388,
  5099. !     -1,     7,    -1,  1023,    -1,   394,    75,    -1,   397,    -1,
  5100. !     -1,    -1,    -1,   436,    83,    -1,    -1,  1026,    -1,    88,
  5101. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,   416,   417,    -1,
  5102. !    419,  1040,    -1,     4,    -1,    41,  1045,    -1,  1047,    -1,
  5103. !     -1,     4,     5,     6,     7,    51,    -1,    53,  1068,    12,
  5104. !     -1,    -1,    -1,    24,    25,    -1,    27,    -1,    -1,    65,
  5105. !     -1,    -1,    33,    -1,    27,    -1,    -1,    -1,    31,    75,
  5106. !     -1,    -1,    35,    44,    -1,    46,    -1,    83,    -1,   502,
  5107. !     -1,    -1,    88,    -1,    -1,    -1,    -1,    -1,    51,   512,
  5108. !     53,   514,   515,     3,     4,     5,     6,     7,    -1,  1108,
  5109. !     10,    -1,    12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5110. !     -1,  1120,  1121,    -1,    -1,    -1,    -1,    27,    -1,  1128,
  5111. !   1129,    31,    -1,   512,    95,    35,    -1,    -1,    -1,    -1,
  5112. !    101,    41,    -1,   556,   105,   524,    -1,   108,   109,   110,
  5113. !   1149,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,   120,
  5114. !     -1,   122,   123,    -1,    -1,    65,     4,     5,     6,     7,
  5115. !     -1,  1170,    10,    -1,    12,    75,   555,    -1,    -1,   140,
  5116. !    141,   142,    -1,    83,    -1,    -1,    -1,    -1,    88,    27,
  5117. !     -1,    -1,    27,    31,    -1,  1194,    -1,    35,    -1,    -1,
  5118. !     -1,    -1,  1201,  1202,    -1,   166,  1205,    -1,    -1,    44,
  5119. !     -1,  1210,    -1,    51,    -1,    53,     3,     4,     5,     6,
  5120. !      7,    -1,    -1,   184,    -1,    12,    -1,    -1,   607,   608,
  5121. !    609,    -1,    -1,   194,    -1,    -1,   615,    -1,    -1,    -1,
  5122. !     27,    -1,    -1,    -1,    31,    -1,    -1,    -1,    35,    -1,
  5123. !     -1,    -1,   631,   632,    41,   634,    -1,    44,    -1,    -1,
  5124. !     95,    -1,    -1,    -1,    51,    -1,    53,    -1,    -1,   682,
  5125. !   1269,  1270,  1271,   108,   109,   110,    -1,    -1,    65,   692,
  5126. !    693,   694,    -1,    -1,   663,    -1,    -1,   122,    75,    -1,
  5127.       -1,    -1,    -1,    -1,    -1,    -1,    83,    -1,    85,    -1,
  5128. !     -1,    88,    89,    -1,    -1,   140,   141,   142,    -1,    -1,
  5129. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   697,    -1,
  5130. !      3,     4,    -1,    -1,   285,   286,    -1,    -1,    -1,    -1,
  5131. !     -1,   166,    -1,    -1,    -1,    -1,    -1,  1336,    -1,    -1,
  5132. !     -1,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,     6,
  5133. !      7,    -1,    -1,   314,    -1,    12,   317,    -1,    41,    -1,
  5134. !    773,   322,   775,    -1,    -1,    -1,    -1,    -1,    51,    -1,
  5135. !     53,    -1,    -1,   786,    -1,    -1,    -1,    60,    35,    -1,
  5136. !    341,    -1,    65,    -1,    41,    -1,    -1,    44,    -1,    -1,
  5137. !     -1,    -1,    75,    -1,    51,    -1,    53,   232,    -1,    -1,
  5138. !     83,   362,   363,   364,   365,    88,    -1,    -1,    65,   370,
  5139. !     -1,   790,   791,   792,    -1,   376,    -1,   378,    75,   380,
  5140. !    381,   382,    -1,    -1,    -1,    -1,    83,   388,    85,    -1,
  5141. !     -1,    88,    89,   394,    -1,    -1,   397,    -1,    -1,    -1,
  5142. !     -1,    -1,    -1,   278,   279,   280,    -1,    -1,    -1,    -1,
  5143. !     -1,   286,    -1,    -1,    -1,   416,   417,    -1,   419,    -1,
  5144. !     -1,    -1,   841,   842,   843,   844,   845,   880,   847,    -1,
  5145. !    849,   850,   851,   852,    -1,    -1,     3,     4,     5,     6,
  5146. !      7,    -1,    -1,    -1,    -1,    12,    68,    69,    70,    71,
  5147. !     72,    73,    74,    75,    76,    77,    78,    79,   877,    -1,
  5148. !     27,   880,    -1,   882,    31,    -1,    -1,    -1,    35,    -1,
  5149. !     -1,    -1,   925,   926,    41,   928,   895,   896,   897,    -1,
  5150. !     -1,    -1,    -1,    -1,    51,    -1,    53,   362,    -1,   364,
  5151. !    365,   366,    -1,    60,    -1,    -1,    -1,    -1,    65,    -1,
  5152. !     -1,   376,    -1,   378,    -1,   380,   381,   382,    75,     4,
  5153. !      5,     6,     7,   388,    -1,    10,    83,    12,    -1,   394,
  5154. !     -1,    88,   397,   524,    -1,    -1,    -1,    -1,    -1,    -1,
  5155. !    949,    -1,    27,    -1,    -1,    -1,    31,    -1,    -1,   958,
  5156. !     35,   416,    -1,    -1,   140,   141,   142,    -1,    -1,    44,
  5157. !     -1,    -1,    -1,    -1,   555,    -1,    51,    -1,    53,    -1,
  5158. !     -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,    -1,
  5159. !     65,   990,   991,   992,     3,     4,    -1,    -1,     7,    -1,
  5160. !     75,    -1,    -1,    -1,    -1,  1004,  1005,    44,  1007,    -1,
  5161. !     85,    -1,    -1,    88,    89,    -1,    -1,    -1,    93,    -1,
  5162. !     -1,    41,    -1,    -1,    -1,    -1,   607,   608,   609,    66,
  5163. !     -1,    51,    41,    53,   615,    -1,  1035,    -1,    -1,    -1,
  5164. !     -1,    -1,    51,    -1,    53,    65,    -1,   502,    85,    -1,
  5165. !    631,   632,    -1,   634,    -1,    75,    65,    -1,    95,   514,
  5166. !    515,    -1,   517,    83,    -1,    -1,    75,    -1,    88,   524,
  5167. !     -1,    -1,    -1,    -1,    83,    -1,    -1,    -1,    -1,    88,
  5168. !     -1,    -1,   663,    -1,    -1,   122,    -1,    -1,    -1,    -1,
  5169. !     -1,    -1,    -1,     3,     4,    -1,     6,     7,     8,     9,
  5170. !    555,    11,    12,   140,   141,   142,    -1,    -1,    -1,  1108,
  5171. !     -1,    -1,    -1,   150,    -1,    -1,   697,    27,    28,    29,
  5172. !     30,    31,    -1,    33,    -1,    35,    -1,    37,    38,   166,
  5173. !     40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49,
  5174. !     50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,
  5175. !     -1,    -1,   607,   608,   609,    -1,    -1,    -1,    -1,   196,
  5176. !    615,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5177. !     -1,    81,    82,    83,     3,     4,   631,   632,    88,   634,
  5178. !     -1,    -1,    92,    -1,  1183,  1184,  1185,    -1,    -1,    -1,
  5179. !     -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,
  5180. !    376,    -1,   378,    -1,   380,   381,   382,    -1,   663,   790,
  5181. !    791,   792,    41,    -1,    -1,    -1,    -1,   798,   394,    -1,
  5182. !     -1,    -1,    51,    -1,    53,    -1,    -1,   682,  1227,    -1,
  5183. !     -1,    -1,    -1,    -1,    -1,    -1,    65,   692,   693,   694,
  5184. !    416,    -1,   823,    -1,    -1,    -1,    75,   284,    -1,   286,
  5185. !     -1,    -1,    -1,    -1,    83,    -1,    -1,    -1,    -1,    88,
  5186. !    841,   842,   843,   844,   845,    -1,    -1,    -1,   849,   850,
  5187. !    851,   852,    -1,    -1,    -1,    -1,    -1,     4,    -1,     6,
  5188. !      7,    -1,    -1,    -1,    -1,    12,    -1,    -1,    -1,    -1,
  5189. !     -1,    -1,    -1,    -1,    -1,    -1,   877,    -1,    -1,   880,
  5190. !     27,   882,    -1,    -1,    31,    -1,    -1,    -1,    35,    -1,
  5191. !     -1,    -1,    -1,    -1,   895,   896,   897,    44,   773,    -1,
  5192. !    775,    -1,    -1,    -1,    51,   362,    53,   364,   365,    -1,
  5193. !     -1,   786,    -1,    -1,    -1,   790,   791,   792,    65,   376,
  5194. !     -1,   378,    -1,   380,   381,   382,    -1,    -1,    75,    -1,
  5195. !     -1,   388,    -1,    -1,   278,   279,   280,   394,    85,    -1,
  5196. !    397,    88,    89,    66,    67,    68,    69,    70,    71,    72,
  5197. !     73,    74,    75,    76,    77,    78,    79,   958,    -1,   416,
  5198. !     -1,    -1,    -1,    -1,    -1,     4,   841,   842,   843,   844,
  5199. !    845,    -1,    -1,    -1,   849,   850,   851,   852,    -1,    -1,
  5200. !     -1,    -1,    -1,    -1,    -1,    24,    25,    -1,    -1,   990,
  5201. !    991,   992,     3,     4,    33,    -1,     7,    -1,    -1,    -1,
  5202. !     -1,    -1,   877,  1004,  1005,    -1,  1007,    46,    -1,    -1,
  5203. !     -1,   607,   608,   609,    -1,    -1,    -1,    -1,   362,   615,
  5204. !    364,   365,   366,     3,     4,    -1,    -1,     7,    -1,    -1,
  5205. !     41,    -1,    -1,    -1,  1035,   631,   632,    -1,   634,    -1,
  5206. !     51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5207. !    925,   926,    -1,   928,    65,    -1,    -1,    -1,    -1,    -1,
  5208. !     -1,    41,   101,    -1,    75,    -1,   105,   663,    -1,    -1,
  5209. !    527,    51,    83,    53,    -1,    -1,    -1,    88,    -1,    -1,
  5210. !     -1,   120,    -1,    -1,   123,    65,    -1,    -1,    -1,    -1,
  5211. !     -1,    -1,    -1,    -1,    -1,    75,    -1,    -1,   555,    -1,
  5212. !     -1,   140,   141,    83,    -1,    -1,    -1,  1108,    88,    -1,
  5213. !     -1,    -1,    -1,    -1,    -1,   990,    -1,   992,    -1,     3,
  5214. !      4,   278,   279,   280,    -1,    -1,    -1,    -1,    -1,  1004,
  5215. !   1005,    -1,  1007,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5216. !      3,     4,     5,     6,     7,   184,    -1,    -1,    -1,    12,
  5217. !    607,   608,   609,    -1,    -1,   194,    -1,    41,   615,    -1,
  5218. !     -1,    -1,    -1,    -1,    27,    -1,    -1,    51,    31,    53,
  5219. !    514,   515,    35,   517,   631,   632,    -1,   634,    41,    -1,
  5220. !    524,    65,  1183,  1184,  1185,    -1,    -1,    -1,    51,    -1,
  5221. !     53,    75,    -1,    56,    -1,    -1,    -1,    -1,    -1,    83,
  5222. !     -1,    -1,    65,    -1,    88,   362,   663,   364,   365,   366,
  5223. !     -1,   555,    75,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5224. !     83,    -1,    -1,    -1,    -1,    88,  1227,    -1,    -1,    -1,
  5225. !     -1,    -1,    -1,  1108,    -1,    -1,    -1,    10,    -1,    -1,
  5226. !     -1,    -1,    -1,    -1,    -1,   841,   842,   843,   844,   845,
  5227. !     -1,    -1,    -1,   849,   850,   851,   852,    -1,    -1,    -1,
  5228. !     -1,    -1,    -1,   607,   608,   609,    -1,    -1,    -1,    -1,
  5229. !     -1,   615,    -1,    -1,    -1,   314,    -1,    -1,   317,    -1,
  5230. !     -1,   877,    -1,   322,    57,    58,    59,    60,    61,    62,
  5231. !     63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
  5232. !     73,    74,    75,    76,    77,    78,    79,    -1,  1183,  1184,
  5233. !   1185,    67,    68,    69,    70,    71,    72,    73,    74,    75,
  5234. !     76,    77,    78,    79,   363,    -1,    -1,    -1,    -1,    -1,
  5235. !     -1,   370,    -1,    -1,    -1,    -1,    -1,   376,   682,   378,
  5236.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5237. !     -1,    -1,  1227,    -1,    -1,   394,    -1,   514,   515,    62,
  5238. !     63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
  5239. !     73,    74,    75,    76,    77,    78,    79,   416,   417,    -1,
  5240. !    419,    -1,    -1,    -1,   841,   842,   843,   844,   845,    -1,
  5241. !    847,    -1,   849,   850,   851,   852,    -1,    -1,   555,    -1,
  5242. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1004,  1005,
  5243. !     -1,  1007,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5244. !    877,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   773,
  5245. !     -1,   775,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5246. !     -1,    -1,   786,    -1,    -1,    -1,   790,   791,   792,    -1,
  5247. !    607,   608,    -1,    -1,    57,    58,    59,    -1,    61,    62,
  5248. !     63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
  5249. !     73,    74,    75,    76,    77,    78,    79,    65,    66,    67,
  5250. !     68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
  5251. !     78,    79,   949,    -1,    -1,    -1,    -1,   841,   842,   843,
  5252. !    844,   845,   105,    -1,    -1,   849,   850,   851,   852,    -1,
  5253. !     -1,    -1,  1108,    -1,     3,     4,     5,     6,     7,    -1,
  5254. !     -1,    10,    -1,    12,    -1,   682,    -1,    -1,    -1,    -1,
  5255. !     -1,    -1,    -1,   990,    -1,   992,    -1,    -1,    27,    -1,
  5256. !     -1,    -1,    31,    -1,    -1,    -1,    35,  1004,  1005,    -1,
  5257. !   1007,    -1,    41,    -1,    -1,    44,    -1,    -1,    -1,    -1,
  5258. !     -1,    -1,    51,    -1,    53,    -1,    -1,    -1,   607,   608,
  5259. !     -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    -1,    -1,
  5260. !     -1,    -1,    -1,    -1,    -1,    -1,    75,  1183,  1184,  1185,
  5261. !     -1,    -1,   631,   632,    83,   634,    85,    -1,    -1,    88,
  5262. !     89,    -1,    -1,    -1,    93,    -1,    -1,    -1,    -1,    -1,
  5263. !     -1,    -1,    -1,    -1,    -1,    -1,   773,    -1,   775,    -1,
  5264. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   786,
  5265. !     -1,    -1,    -1,   790,   791,    64,    65,    66,    67,    68,
  5266. !     69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
  5267. !     79,  1108,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5268. !   1004,  1005,    -1,  1007,    -1,    -1,    -1,    -1,    -1,    -1,
  5269. !     32,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5270. !     -1,    -1,    -1,    -1,   841,   842,   843,   844,    -1,    -1,
  5271. !     -1,    -1,   849,   850,   851,    57,    58,    59,    -1,    61,
  5272. !     62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
  5273. !     72,    73,    74,    75,    76,    77,    78,    79,    -1,    -1,
  5274. !     -1,    -1,    -1,    -1,    -1,    -1,  1183,  1184,  1185,    -1,
  5275. !     -1,    -1,     1,    -1,     3,     4,     5,     6,     7,     8,
  5276.        9,    -1,    11,    12,    13,    -1,    15,    16,    17,    18,
  5277.       19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
  5278.       29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
  5279. !   1227,    40,    41,    42,    43,    -1,    -1,    46,    47,    48,
  5280.       49,    50,    51,    -1,    53,    54,    -1,    56,    -1,    -1,
  5281.       -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
  5282. !     -1,    -1,   841,   842,    73,    74,    75,    -1,    -1,    -1,
  5283. !    849,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,
  5284.       -1,    90,    -1,    92,    -1,    -1,    -1,    -1,    -1,    -1,
  5285. !     -1,    -1,    -1,    -1,   103,   104,    -1,    -1,   877,    -1,
  5286. !     -1,   880,    -1,   882,    -1,    -1,    -1,  1004,  1005,    -1,
  5287. !   1007,     1,    -1,     3,     4,     5,     6,     7,     8,     9,
  5288. !     -1,    11,    12,    13,    -1,    15,    16,    17,    18,    19,
  5289. !     20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
  5290. !     30,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
  5291. !     40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49,
  5292. !     50,    51,    -1,    53,    54,    -1,    56,    -1,    -1,    -1,
  5293. !     -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,   958,
  5294. !     -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
  5295. !     -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,
  5296. !     90,    -1,    92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5297. !     -1,    -1,   991,   103,   104,    -1,    -1,    -1,    -1,    -1,
  5298. !     -1,    -1,    -1,    -1,    -1,  1004,  1005,    -1,  1007,    -1,
  5299. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5300. !     -1,    -1,    -1,     1,    -1,     3,     4,     5,     6,     7,
  5301. !      8,     9,    -1,    11,    12,    13,  1035,    15,    16,    17,
  5302. !     18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
  5303. !     28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  5304. !     38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  5305. !     48,    49,    50,    51,    -1,    53,    54,    -1,    56,    -1,
  5306. !     -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  5307. !     -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  5308. !     -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  5309. !     88,    -1,    90,    -1,    92,    -1,    -1,    -1,    -1,    -1,
  5310. !     -1,    -1,    -1,    -1,    -1,   103,   104,     1,    -1,     3,
  5311. !      4,     5,     6,     7,     8,     9,    -1,    11,    12,    13,
  5312. !     -1,    15,    16,    17,    18,    19,    20,    21,    22,    23,
  5313. !     24,    25,    26,    27,    28,    29,    30,    31,    -1,    33,
  5314. !     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
  5315. !     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  5316. !     54,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,
  5317. !     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
  5318. !     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
  5319. !     -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    92,    -1,
  5320. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   103,
  5321. !    104,     1,    -1,     3,     4,     5,     6,     7,     8,     9,
  5322. !     -1,    11,    12,    13,    -1,    15,    16,    17,    18,    19,
  5323. !     20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
  5324. !     30,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
  5325. !     40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49,
  5326. !     50,    51,    -1,    53,    54,    -1,    56,    -1,    -1,    -1,
  5327. !     -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,
  5328. !     -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
  5329. !     -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,
  5330. !     90,    -1,    92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5331. !     -1,    -1,    -1,   103,   104,     1,    -1,     3,     4,     5,
  5332. !      6,     7,     8,     9,    -1,    11,    12,    13,    -1,    15,
  5333. !     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
  5334. !     26,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
  5335. !     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
  5336. !     46,    47,    48,    49,    50,    51,    -1,    53,    54,    -1,
  5337. !     56,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
  5338. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
  5339. !     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
  5340. !     -1,    -1,    88,    -1,    90,     1,    92,     3,     4,     5,
  5341. !      6,     7,     8,     9,    -1,    11,    12,    13,   104,    15,
  5342. !     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
  5343. !     26,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
  5344. !     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
  5345. !     46,    47,    48,    49,    50,    51,    -1,    53,    54,    -1,
  5346. !     56,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
  5347. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
  5348. !     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
  5349. !     -1,    -1,    88,    -1,    90,     1,    92,     3,     4,     5,
  5350. !      6,     7,     8,     9,    -1,    11,    12,    13,   104,    15,
  5351. !     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
  5352. !     26,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
  5353. !     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
  5354. !     46,    47,    48,    49,    50,    51,    -1,    53,    54,    -1,
  5355. !     56,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
  5356. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
  5357. !     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
  5358. !     -1,    -1,    88,    -1,    90,     1,    92,     3,     4,     5,
  5359. !      6,     7,     8,     9,    10,    11,    12,    -1,   104,    -1,
  5360.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5361. !     -1,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
  5362. !     -1,    37,    38,    -1,    40,    41,    42,    43,    44,    -1,
  5363. !     46,    47,    48,    49,    50,    51,    -1,    53,    54,    -1,
  5364. !     -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
  5365. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
  5366. !     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    85,
  5367. !     -1,    -1,    88,    89,    -1,    -1,    92,    93,    -1,    -1,
  5368. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,     1,   104,     3,
  5369. !      4,     5,     6,     7,     8,     9,    10,    11,    12,    -1,
  5370.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5371. !     -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,    33,
  5372. !     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
  5373. !     44,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  5374. !     54,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,
  5375. !     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
  5376. !     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
  5377. !     -1,    85,    -1,    -1,    88,    89,    -1,    -1,    92,    93,
  5378. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     1,
  5379. !    104,     3,     4,     5,     6,     7,     8,     9,    10,    11,
  5380. !     12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5381. !     -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,
  5382. !     -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,    41,
  5383. !     42,    43,    -1,    -1,    46,    47,    48,    49,    50,    51,
  5384. !     -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5385. !     62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,
  5386. !     -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,
  5387. !     82,    83,    -1,    -1,    -1,    -1,    88,    -1,    -1,    -1,
  5388. !     92,    93,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5389. !    102,     1,   104,     3,     4,     5,     6,     7,     8,     9,
  5390. !     10,    11,    12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  5391. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,
  5392. !     30,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
  5393. !     40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49,
  5394. !     50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,
  5395. !     -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,
  5396. !     -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
  5397. !     -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,
  5398. !     -1,    -1,    92,    93,    -1,    -1,    -1,    -1,    -1,    -1,
  5399. !     -1,    -1,   102,     1,   104,     3,     4,    -1,     6,     7,
  5400.        8,     9,    -1,    11,    12,    -1,    -1,    -1,    -1,    -1,
  5401. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  5402.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  5403.       38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  5404.       48,    49,    50,    51,    -1,    53,    54,    -1,    -1,    -1,
  5405.       -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  5406.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  5407.       -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  5408. !     88,    89,    -1,     1,    92,     3,     4,    -1,     6,     7,
  5409. !      8,     9,    -1,    11,    12,   103,   104,    -1,    -1,    -1,
  5410. !     -1,    19,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  5411.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  5412.       38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  5413.       48,    49,    50,    51,    -1,    53,    54,    -1,    -1,    -1,
  5414. --- 806,2829 ----
  5415.        4,     4,     1,     3,     3,     3,     3,     3,     3,     3,
  5416.        3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
  5417.        3,     3,     5,     3,     3,     1,     2,     3,     1,     1,
  5418. !      1,     1,     1,     1,     1,     2,     2,     1,     1,     1,
  5419. !      1,     1,     1,     1,     3,     3,     0,     4,     0,     6,
  5420. !      2,     4,     2,     2,     1,     4,     1,     7,     7,     7,
  5421. !      7,     4,     4,     2,     2,     1,     4,     2,     2,     2,
  5422. !      5,     3,     5,     3,     4,     6,     1,     2,     1,     2,
  5423. !      1,     1,     1,     2,     0,     2,     2,     3,     3,     3,
  5424. !      3,     3,     2,     2,     1,     1,     1,     2,     2,     2,
  5425. !      2,     1,     1,     1,     1,     2,     2,     3,     3,     4,
  5426. !      1,     2,     2,     1,     1,     2,     2,     1,     2,     2,
  5427. !      3,     1,     2,     1,     1,     1,     4,     4,     4,     4,
  5428. !      1,     1,     1,     1,     3,     1,     3,     1,     3,     0,
  5429. !      4,     0,     7,     4,     0,     7,     4,     0,     7,     4,
  5430. !      0,     7,     4,     0,     1,     1,     2,     6,     1,     3,
  5431. !      0,     1,     4,     6,     4,     1,     1,     1,     1,     1,
  5432. !      3,     1,     2,     3,     4,     1,     1,     3,     4,     6,
  5433. !      3,     5,     0,     7,     4,     0,     6,     3,     2,     2,
  5434. !      4,     1,     0,     1,     0,     1,     1,     2,     2,     2,
  5435. !      2,     3,     2,     2,     2,     3,     3,     1,     2,     0,
  5436. !      0,     3,     3,     2,     1,     1,     0,     1,     2,     1,
  5437. !      3,     1,     2,     1,     4,     4,     1,     1,     2,     2,
  5438. !      1,     0,     1,     4,     3,     1,     2,     2,     2,     2,
  5439. !      2,     2,     2,     2,     4,     2,     1,     5,     3,     0,
  5440. !      1,     3,     0,     1,     3,     1,     1,     1,     1,     4,
  5441. !      6,     4,     4,     6,     4,     3,     4,     6,     4,     4,
  5442. !      6,     4,     3,     1,     3,     1,     3,     2,     1,     6,
  5443. !      0,     2,     1,     2,     0,     2,     3,     3,     2,     2,
  5444. !      3,     1,     1,     1,     2,     5,     5,     3,     5,     4,
  5445. !      3,     3,     2,     1,     3,     3,     2,     2,     3,     1,
  5446. !      3,     3,     2,     2,     3,     1,     5,     5,     3,     5,
  5447. !      3,     3,     4,     3,     2,     2,     1,     2,     4,     4,
  5448. !      2,     1,     1,     1,     2,     2,     2,     1,     2,     1,
  5449. !      2,     2,     3,     1,     3,     2,     3,     2,     2,     3,
  5450. !      1,     3,     4,     3,     2,     2,     1,     3,     2,     2,
  5451. !      1,     2,     3,     1,     3,     1,     5,     3,     4,     3,
  5452. !      4,     2,     2,     3,     2,     1,     1,     2,     2,     2,
  5453. !      0,     0,     1,     1,     2,     3,     1,     2,     3,     5,
  5454. !      6,     5,     0,     0,     6,     1,     2,     1,     1,     1,
  5455. !      2,     0,     4,     1,     0,     0,     6,     0,     0,     7,
  5456. !      0,     0,     0,    10,     0,     0,     0,    10,     0,     7,
  5457. !      0,     5,     0,     7,     0,     4,     2,     2,     2,     3,
  5458. !      6,     8,    10,    12,     4,     3,     2,     2,     1,     1,
  5459. !      0,     0,     7,     1,     2,     2,     0,     0,     5,     1,
  5460. !      1,     3,     3,     2,     2,     2,     3,     4,     4,     3,
  5461. !      4,     6,     6,     0,     1,     0,     1,     1,     0,     1,
  5462. !      1,     3,     4,     1,     3,     0,     1,     1,     1,     2,
  5463. !      2,     2,     1,     1,     2,     2,     2,     2,     1,     3,
  5464. !      2,     2,     4,     2,     2,     2,     2,     2,     2,     1,
  5465. !      2,     1,     3,     1,     1,     0,     0,     1,     0,     4,
  5466. !      1,     1,     3,     0,     3,     3,     3,     1,     2,     2,
  5467.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  5468.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  5469. !      2,     3,     2,     2,     2,     2,     3,     2,     2,     4,
  5470. !      4,     3,     2
  5471.   };
  5472.   
  5473.   static const short yydefact[] = {     3,
  5474. !     10,    10,     5,     0,     4,     0,   220,   522,   305,   315,
  5475. !    473,     0,     8,     9,     0,     0,   387,     0,   708,     0,
  5476. !    534,   221,    64,     0,     0,   696,     0,    76,    21,     0,
  5477. !     11,     6,     0,    15,    14,    13,    12,   275,     0,   523,
  5478. !    117,   229,   500,     0,   295,     0,   294,   308,     0,   328,
  5479. !    314,     0,   398,   400,   401,   406,   405,   382,   304,   528,
  5480. !    484,     0,   228,   230,   483,     0,   524,   316,   471,     0,
  5481. !      0,   219,    62,    63,   526,     0,     0,   101,   102,   103,
  5482. !    376,   379,     0,   530,     0,   380,     0,     0,     0,    32,
  5483. !      0,   305,     0,    22,     0,     0,   398,     0,     0,     0,
  5484. !      0,   498,     0,     0,     0,   497,     0,     0,     0,   229,
  5485. !      0,     0,     0,   228,   230,   471,     0,     3,     0,     0,
  5486. !      0,     0,   400,   401,   699,     0,    88,    83,   275,     0,
  5487. !      0,    60,   527,   124,   471,     0,   475,    61,     0,     0,
  5488. !      0,     0,     0,   324,   285,   482,   286,   494,     0,   471,
  5489. !    307,   306,    59,   296,     0,   326,     0,   301,   321,   322,
  5490. !    297,   310,   312,   323,     0,    54,   388,   389,   390,   391,
  5491. !    404,   107,   106,   108,   393,   399,   395,   117,   394,   407,
  5492. !    407,   421,     0,   474,   309,    72,     0,    75,   532,   516,
  5493. !    485,   525,     0,   529,     0,   743,   739,   738,   736,   718,
  5494. !    723,   724,     0,   730,   729,   715,   716,   714,   733,   722,
  5495. !    719,   720,   721,   725,   726,   712,   713,   709,   710,   711,
  5496. !    735,   727,   728,   717,   734,     0,   731,   640,   308,   641,
  5497. !    704,   473,   232,   273,     0,     0,     0,     0,   156,   269,
  5498. !    267,   245,   271,   272,     0,     0,     0,     0,     0,     0,
  5499. !      0,   129,   128,     0,   130,   131,     0,     0,   216,   132,
  5500. !      0,   118,     0,   189,     0,   193,   186,   121,   231,   155,
  5501. !      0,     0,   233,   234,     0,   120,   292,   308,   293,   517,
  5502. !    256,   247,     0,     0,     0,   398,   378,     0,   373,   531,
  5503. !      0,   133,   134,     0,     0,     0,     0,    31,     0,   110,
  5504. !    407,   125,   109,   115,     0,   496,     0,   495,   102,   103,
  5505. !    218,   227,     0,   504,   226,     0,   503,   511,   512,     0,
  5506. !      0,    18,    10,     0,     7,     7,    48,    47,   699,     0,
  5507. !     34,    42,    38,    36,    43,    40,   330,    82,    89,    86,
  5508. !      0,     0,   275,     0,     0,     0,   571,    65,   577,    67,
  5509. !    113,   509,     0,   673,   674,   154,     0,   153,   668,   690,
  5510. !      0,   292,   308,   293,     0,   667,   669,   697,   679,     0,
  5511. !    514,     0,     0,     0,   480,     0,   479,     0,     0,     0,
  5512. !    471,    70,    58,    73,     0,    57,   471,     0,   475,   493,
  5513. !      0,   298,   299,     0,    55,    71,    56,    74,   303,   302,
  5514. !    313,   699,   329,   396,   392,   397,   408,   402,   403,   437,
  5515. !      0,     0,   440,   443,     0,     0,   426,     0,   699,   311,
  5516. !      0,     0,   344,   472,   499,   533,     0,     0,   732,   737,
  5517. !    471,   471,     0,   471,   742,     0,     0,     0,   163,     0,
  5518. !      0,   165,     0,     0,     0,     0,     0,     0,     0,     0,
  5519. !    162,   159,   158,   160,     0,     0,     0,     0,   217,     0,
  5520. !    116,   161,     0,     0,   187,     0,     0,     0,     0,     0,
  5521.        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  5522. !      0,     0,     0,     0,     0,     0,     0,   241,   243,   244,
  5523. !    277,   276,     0,     0,     0,     0,     0,   167,   469,     0,
  5524. !    175,   274,   223,     0,   696,   222,   259,   260,     0,   287,
  5525. !    551,   547,   556,     0,   475,   471,   471,   471,   289,   554,
  5526. !      0,   521,   291,     0,   290,   258,     0,   254,   268,   270,
  5527. !    518,     0,   255,   112,   111,   466,   385,   464,   375,     0,
  5528. !    317,     0,     0,   318,   319,   320,    33,     0,    28,    24,
  5529. !    695,   308,    26,   694,    30,   692,   122,   114,   502,   501,
  5530. !    505,     0,    17,    20,    19,   330,    53,    49,    51,    52,
  5531. !     50,    46,     0,     0,     0,     0,   344,   104,    94,   105,
  5532. !      0,    87,    90,     0,     0,     0,   366,     0,   362,    84,
  5533. !      0,     0,    66,    69,   578,   572,   471,   471,   672,   685,
  5534. !    678,   676,   551,   547,     0,   686,   471,   689,   691,   687,
  5535. !      0,   688,   471,   671,   684,   677,   675,   670,   698,   681,
  5536. !    682,     0,   513,   476,   478,   477,     0,     0,   492,     0,
  5537. !    344,   325,   488,     0,     0,     0,   491,     0,   481,   300,
  5538. !    327,   344,   330,   418,     0,   417,   409,   410,   412,     0,
  5539. !    414,   436,   432,   431,   220,   522,   471,     0,   666,   699,
  5540. !    433,   441,   446,   447,   699,   699,   434,   444,   699,     0,
  5541. !    381,   428,   427,   429,   430,   330,   701,   308,   702,     0,
  5542. !      0,     0,   343,   345,   346,   741,   740,   704,   704,   704,
  5543. !      0,     0,     0,   521,     0,     0,   522,     0,   157,     0,
  5544. !      0,     0,     0,     0,     0,   236,   235,     0,   184,   119,
  5545. !    220,   522,   221,     0,     0,   367,   383,     0,   215,   214,
  5546. !    658,   657,     0,   212,   211,   209,   210,   208,   207,   206,
  5547. !    203,   204,   205,   201,   202,   196,   197,   198,   199,   200,
  5548. !    194,   195,     0,     0,     0,     0,     0,     0,   169,   181,
  5549. !      0,     0,   168,   471,   471,     0,   471,   468,   541,     0,
  5550. !      0,     0,     0,   262,     0,   264,     0,   515,   550,   549,
  5551. !    546,   545,   695,     0,     0,   565,     0,     0,   562,   288,
  5552. !    563,   552,   471,   666,   475,   551,   547,     0,     0,   471,
  5553. !    231,     0,   517,     0,     0,     0,   386,     0,   385,   152,
  5554. !    151,   150,   149,     0,    23,     0,   393,     0,     0,    16,
  5555. !    344,    35,    39,    37,    41,     0,     0,    92,     0,    96,
  5556. !      0,   100,     0,    98,     0,   363,     0,    85,    68,     0,
  5557. !    579,     0,   573,   574,   510,   507,   550,   546,   551,   547,
  5558. !    483,     0,   471,   552,   551,   547,     0,   231,     0,   517,
  5559. !    508,     0,   680,   334,   471,   471,   471,   490,   340,   344,
  5560. !      0,     0,   420,   419,   413,     0,     0,   439,   344,     0,
  5561. !     79,     0,   330,   330,     0,   330,     0,   344,     0,   700,
  5562. !      0,     0,   341,   347,   706,   705,   707,   246,   164,     0,
  5563. !      0,   166,   190,   192,   191,   252,   253,     0,     0,     0,
  5564. !      0,   238,     0,     0,     0,     0,   185,     0,   239,   242,
  5565. !    179,   178,   171,     0,   170,   183,     0,     0,   538,   536,
  5566. !      0,   539,   475,   176,     0,     0,   265,     0,     0,   548,
  5567. !    544,   555,   471,   564,   553,   558,     0,   560,     0,   551,
  5568. !    547,   519,   520,     0,   257,   467,   465,   377,     0,    25,
  5569. !     29,   693,     0,     0,    44,    93,    91,     0,     0,     0,
  5570. !      0,   364,   360,     0,     0,   220,   522,   583,   595,   598,
  5571. !      0,   571,     0,     0,     0,     0,     0,     0,   221,   629,
  5572. !      0,   654,     0,   590,     0,     0,   308,     0,   567,   588,
  5573. !    594,   566,   589,   630,     0,   601,   605,   575,   550,   546,
  5574. !    485,   552,   520,   683,   332,   489,   486,   487,   338,   337,
  5575. !      0,     0,   411,   344,   344,    78,   456,   471,   220,   522,
  5576. !      0,   442,   448,   449,   699,   699,   344,   344,   445,     0,
  5577. !    435,   703,   331,   351,     0,     0,     0,     0,     0,     0,
  5578. !    371,     0,     0,   368,   188,   213,   126,     0,   172,   173,
  5579. !    180,   182,   537,   535,   542,   540,     0,   177,     0,   261,
  5580. !    263,   561,   471,   559,   374,     0,    45,    95,    99,    97,
  5581. !    365,     0,   576,   570,   582,   644,   646,   571,   571,   571,
  5582. !      0,     0,     0,   615,   617,   618,   619,     0,     0,     0,
  5583. !    645,   571,   655,     0,   591,   283,   699,     0,   284,     0,
  5584. !    699,     0,   699,     0,     0,   580,   569,   568,   592,   628,
  5585. !    627,   571,   571,     0,     0,   335,   415,   416,   455,   452,
  5586. !    438,     0,     0,   344,   330,   330,   450,   453,   357,   358,
  5587. !    359,   356,     0,   349,   352,   342,     0,     0,     0,     0,
  5588. !    369,     0,     0,   126,   240,     0,   174,   543,   266,   557,
  5589. !    123,   361,     0,     0,     0,   586,     0,     0,   571,   647,
  5590. !      0,   650,     0,     0,   611,     0,   620,     0,   626,   631,
  5591. !      0,   279,   330,   281,   282,   330,     0,     0,     0,   278,
  5592. !    280,   581,   571,     0,     0,   333,   339,     0,    77,   344,
  5593. !    344,   463,   344,   344,     0,     0,   351,     0,     0,   248,
  5594. !    249,   250,   251,     0,   372,   127,   470,   137,     0,   584,
  5595. !    596,   587,   599,   651,   649,     0,   648,   144,     0,   308,
  5596. !      0,     0,     0,   616,   625,     0,     0,   593,   141,     0,
  5597. !    140,     0,   336,   462,   459,   457,   460,   451,   454,   350,
  5598. !    348,   220,     0,   370,     0,   571,     0,     0,     0,     0,
  5599. !    609,   699,   613,   612,     0,   634,     0,   632,   659,     0,
  5600. !    602,   606,     0,     0,     0,   353,   355,   138,   585,   572,
  5601. !    597,   148,   135,     0,     0,   653,     0,   652,   571,   330,
  5602. !      0,   636,   635,   637,     0,     0,   660,   661,   621,     0,
  5603. !      0,   458,   461,     0,   145,     0,     0,   600,   610,   344,
  5604. !    614,   633,     0,   659,     0,     0,     0,     0,   354,     0,
  5605. !      0,   136,     0,   638,     0,     0,   622,   662,   603,   607,
  5606. !    147,   146,   142,     0,   663,     0,     0,     0,     0,     0,
  5607. !      0,     0,   664,     0,   623,   604,   608,   143,     0,     0,
  5608. !    639,     0,     0,   642,   643,   665,   624,     0,     0,     0
  5609.   };
  5610.   
  5611. ! static const short yydefgoto[] = {  1348,
  5612. !      1,     2,   119,   564,   982,     3,     4,    31,    32,    33,
  5613. !    299,   548,   549,   550,    34,    91,    35,   573,   575,   574,
  5614. !    576,   572,    36,    37,    38,   412,   128,   129,   130,   339,
  5615. !    582,   583,   536,   584,   176,    39,    40,    41,   134,   261,
  5616. !    262,   302,   809,   303,  1145,   263,   983,  1275,  1210,  1230,
  5617. !   1231,  1330,  1271,   292,   789,   264,   445,   497,   753,   265,
  5618. !    266,   267,   293,   269,   507,   312,    43,   270,   457,  1047,
  5619. !    271,   272,   273,   274,   131,   275,   984,   402,   517,   773,
  5620. !    985,    45,   161,   986,    47,   162,   440,   163,   143,   155,
  5621. !     49,   631,   144,  1114,   403,  1188,   156,  1115,    50,  1035,
  5622. !    683,   684,   685,  1133,  1134,  1135,   964,   716,   717,    51,
  5623. !    540,   288,   906,   798,    52,    53,    54,    55,   180,   181,
  5624. !     56,    57,    58,   408,   647,   648,   649,   650,   183,   415,
  5625. !    416,   417,   418,   661,   667,   662,  1022,   663,   664,  1023,
  5626. !   1024,   537,   538,   498,   779,    59,   372,   373,   145,    60,
  5627. !     61,   146,   147,   113,    63,   508,   280,   281,   282,    65,
  5628. !    283,    67,    68,   179,    69,   284,   758,   759,   770,   520,
  5629. !    988,   989,  1155,   832,   833,   834,   348,   990,   991,  1078,
  5630. !   1246,  1157,   992,   993,  1183,  1079,  1247,  1080,  1248,  1112,
  5631. !   1290,  1328,  1113,  1291,  1329,  1279,  1223,  1281,  1166,   994,
  5632. !   1226,  1284,  1258,  1302,  1324,  1221,  1332,   995,   996,   997,
  5633. !   1094,   723,  1286,  1287,  1288,  1334,   365,   775,   367,   368,
  5634. !    369,   555,   370,   107,   621,  1173,   679,   680,   435,    71,
  5635.       72
  5636.   };
  5637.   
  5638. ! static const short yypact[] = {   203,
  5639. !    236,-32768,-32768,  1874,-32768,    85,-32768,    55,   300,-32768,
  5640. ! -32768,   590,-32768,-32768,   -23,   252,-32768,   365,-32768,  1493,
  5641. ! -32768,   355,-32768,   963,   963,-32768,  2214,-32768,-32768,   349,
  5642. ! -32768,   429,  3939,-32768,-32768,-32768,-32768,   279,   435,   443,
  5643. ! -32768,-32768,   396,  1052,-32768,  9215,-32768,   704,    30,-32768,
  5644. ! -32768,   698,-32768,-32768,-32768,-32768,-32768,   488,  1610,-32768,
  5645. ! -32768,   410,-32768,-32768,-32768,   397,-32768,-32768,-32768,    89,
  5646. !   6309,-32768,-32768,-32768,-32768,  8124,  2133,-32768,    55,   355,
  5647. !    461,   515,   443,-32768,    89,-32768,    89,  8124,  8124,-32768,
  5648. !    363,-32768,   355,-32768,  3239,  4205,   230,    89,  7950,    55,
  5649. !   2347,-32768,   484,   103,  2347,-32768,    92,  2356,  2356,   479,
  5650. !    501,   396,   514,   519,   540,-32768,   629,   555,  2912,   144,
  5651. !   3239,  9396,   593,   706,   572,   666,-32768,   149,   306,    57,
  5652. !     57,-32768,-32768,   575,-32768,  4662,   589,-32768,  3833,  3833,
  5653. !   3542,  1266,   393,-32768,-32768,   408,-32768,-32768,   397,-32768,
  5654. ! -32768,-32768,-32768,   704,   536,-32768,  1285,-32768,-32768,-32768,
  5655. !    907,   654,-32768,-32768,  3239,-32768,-32768,-32768,-32768,-32768,
  5656. ! -32768,-32768,-32768,-32768,-32768,-32768,   443,   719,-32768,   617,
  5657. !    617,-32768,  2447,-32768,   654,-32768,   608,   875,-32768,-32768,
  5658. ! -32768,-32768,  4014,-32768,    56,-32768,   609,   647,-32768,-32768,
  5659. ! -32768,-32768,   683,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
  5660.   -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
  5661. ! -32768,-32768,-32768,-32768,-32768,   601,-32768,-32768,   654,  1610,
  5662. !    351,   657,-32768,-32768,  3117,  9065,   660,   662,-32768,-32768,
  5663. ! -32768,-32768,-32768,-32768,   665,   690,   692,   699,   703,    92,
  5664. !   8816,-32768,-32768,  8816,-32768,-32768,  8816,  6393,  9148,-32768,
  5665. !     29,-32768,  8816,-32768,  8211,-32768,-32768,  9444,-32768,  1334,
  5666. !   2712,  8294,-32768,   767,   557,-32768,   160,  2819,  9439,-32768,
  5667. !    266,-32768,   579,   809,  3239,   230,-32768,    92,   685,-32768,
  5668. !    684,   738,  9497,   693,   697,   701,   808,-32768,  2133,-32768,
  5669. !    617,-32768,-32768,-32768,   154,-32768,   139,-32768,-32768,-32768,
  5670. ! -32768,-32768,  2347,-32768,-32768,  2347,-32768,-32768,-32768,  4014,
  5671. !     50,-32768,   711,  2133,-32768,-32768,-32768,-32768,   572,   766,
  5672. ! -32768,-32768,-32768,-32768,-32768,-32768,   656,-32768,   254,-32768,
  5673. !   6483,  8381,-32768,    57,    57,   765,-32768,-32768,-32768,-32768,
  5674. ! -32768,   818,   730,-32768,-32768,   738,   735,  9497,   328,  1775,
  5675. !   9396,  1775,  4904,  4548,   737,-32768,    72,  9289,   763,   787,
  5676. ! -32768,   746,  8381,  4250,-32768,  4250,-32768,  4314,  4314,   753,
  5677. ! -32768,-32768,-32768,   875,  3239,-32768,-32768,  5854,   752,-32768,
  5678. !   4433,   907,   704,  3239,-32768,-32768,-32768,   875,-32768,-32768,
  5679. ! -32768,   572,-32768,-32768,-32768,-32768,  1191,-32768,-32768,-32768,
  5680. !   8381,   156,  1389,  9306,    54,  2311,-32768,   167,   572,   654,
  5681. !   2569,   771,   831,-32768,-32768,-32768,   773,   777,-32768,-32768,
  5682. ! -32768,-32768,   169,-32768,-32768,  8381,   657,  6393,-32768,   381,
  5683. !   6393,-32768,  8381,  8468,  8816,  8124,  2569,  2569,  2569,  2569,
  5684. ! -32768,-32768,-32768,-32768,   782,   784,   765,   793,-32768,  8124,
  5685. ! -32768,-32768,  3487,  6393,-32768,  8381,  8381,  3006,  8381,  8381,
  5686. !   8381,  8381,  8381,  8381,  8381,  8381,  8381,  8381,  8381,  8381,
  5687. !   8381,  8381,  8381,  8381,  8381,  8381,  8381,-32768,-32768,-32768,
  5688. ! -32768,-32768,  8381,  8381,  8381,  8124,  3398,   497,   109,  7032,
  5689. ! -32768,-32768,    55,   848,   896,-32768,   387,   415,   592,-32768,
  5690. !    388,   388,-32768,  3838,   798,   817,   864,-32768,-32768,   412,
  5691. !   7507,  1099,-32768,   251,-32768,-32768,  8381,-32768,-32768,-32768,
  5692. ! -32768,   597,-32768,-32768,-32768,   851,   855,-32768,-32768,    92,
  5693. ! -32768,  6855,  6945,-32768,-32768,-32768,-32768,   419,   859,-32768,
  5694. ! -32768,  9200,   698,-32768,-32768,   862,-32768,-32768,-32768,-32768,
  5695. ! -32768,   865,-32768,-32768,-32768,   656,-32768,-32768,-32768,-32768,
  5696. ! -32768,-32768,   866,   868,   869,   870,   831,-32768,-32768,   355,
  5697. !   8381,   877,-32768,   434,   438,   462,-32768,  5956,  9590,-32768,
  5698. !    836,    57,-32768,-32768,-32768,    20,-32768,-32768,-32768,-32768,
  5699. ! -32768,-32768,  1506,  1506,  3333,-32768,-32768,-32768,-32768,-32768,
  5700. !   7598,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
  5701. !    887,  6483,-32768,-32768,-32768,-32768,  4250,  4250,-32768,  4433,
  5702. !    831,-32768,   818,   849,   856,   861,-32768,   863,-32768,   907,
  5703. ! -32768,   831,   656,-32768,   881,-32768,   899,-32768,-32768,  1243,
  5704. ! -32768,  9590,-32768,-32768,   912,   146,-32768,  8381,  2808,   572,
  5705. !    921,-32768,-32768,-32768,   368,   407,   922,-32768,   572,   920,
  5706. ! -32768,-32768,-32768,-32768,-32768,   551,-32768,  4154,-32768,   187,
  5707. !    629,   897,   926,   831,-32768,-32768,-32768,   505,   505,   505,
  5708. !    885,   886,  8555,   864,   895,   900,   248,   901,-32768,   906,
  5709. !    909,   919,   942,   943,   945,-32768,-32768,   918,-32768,-32768,
  5710. !    962,   553,   136,  8381,   969,-32768,   968,   928,  9590,  9590,
  5711. ! -32768,-32768,   973,  9629,  4583,  9645,  9660,  5903,  6801,  3406,
  5712. !   1324,  1324,  1324,  1664,  1664,   814,   814,   640,   640,   640,
  5713. ! -32768,-32768,   932,   934,   940,   935,   946,  2569,   497,-32768,
  5714. !   6483,  8381,-32768,-32768,-32768,  8381,-32768,-32768,   955,  8816,
  5715. !    944,   964,  1008,-32768,  8381,-32768,  8381,-32768,   890,-32768,
  5716. !    890,-32768,    65,   951,   952,-32768,   953,  2569,   818,-32768,
  5717. !    818,  2046,-32768,  1065,   957,  7689,  7689,  4811,   966,  8211,
  5718. !    479,   972,   540,   809,   974,  8381,    92,   961,   855,-32768,
  5719. !   9590,-32768,  9590,  2133,-32768,   664,   520,  6483,   488,-32768,
  5720. !    831,-32768,-32768,-32768,-32768,   766,   978,-32768,   254,-32768,
  5721. !   8381,-32768,  8381,-32768,  8381,-32768,     9,-32768,-32768,    92,
  5722. ! -32768,  5584,  1032,-32768,   818,   818,  2757,  2757,  3282,  3282,
  5723. ! -32768,   397,-32768,  3954,  7776,  7776,  5016,   174,   979,   244,
  5724. !    818,  6483,-32768,  1030,-32768,-32768,-32768,-32768,  1037,   831,
  5725. !   8124,  1191,-32768,-32768,-32768,  8381,  8381,    74,  9521,   995,
  5726. ! -32768,  2416,   656,   656,  3185,   603,  3228,   831,  2569,-32768,
  5727. !     52,  1011,-32768,-32768,-32768,-32768,-32768,-32768,-32768,  8899,
  5728. !   8899,-32768,-32768,-32768,-32768,-32768,-32768,  1013,  1014,  1019,
  5729. !   1022,-32768,  9472,  6483,  6046,  1009,-32768,  8381,-32768,-32768,
  5730. ! -32768,-32768,   143,  1012,-32768,-32768,  1017,    75,   278,   278,
  5731. !   1006,   278,-32768,-32768,  8816,  1107,-32768,  1018,  1020,-32768,
  5732. ! -32768,-32768,-32768,-32768,-32768,   818,  1023,-32768,  1010,  7863,
  5733. !   7863,-32768,-32768,   584,-32768,  9590,-32768,-32768,  1021,-32768,
  5734. ! -32768,-32768,  2447,   766,-32768,-32768,-32768,  1024,  1026,  1036,
  5735. !   6136,-32768,-32768,   668,   231,  1061,   567,-32768,-32768,-32768,
  5736. !   1046,-32768,  8381,  1079,  1085,  1088,  8037,    73,   476,-32768,
  5737. !   1093,  1139,  1094,-32768,  1971,  9379,  2582,  3725,-32768,-32768,
  5738. !   1135,-32768,-32768,-32768,  7135,-32768,-32768,-32768,  2757,  2757,
  5739. ! -32768,  3954,  1989,-32768,-32768,   818,   818,   818,-32768,  1095,
  5740. !   1053,  1054,-32768,  9521,  9521,-32768,-32768,-32768,  1103,   661,
  5741. !   8381,-32768,-32768,-32768,   572,   572,   831,   831,-32768,  2607,
  5742. ! -32768,-32768,-32768,   801,  6483,  8381,  8381,  8381,  8381,  6483,
  5743. ! -32768,  8381,  1104,-32768,-32768,  9611,   575,  8381,-32768,   143,
  5744. ! -32768,-32768,-32768,-32768,-32768,-32768,  1062,-32768,  1122,-32768,
  5745. ! -32768,   818,-32768,-32768,-32768,    66,-32768,-32768,-32768,-32768,
  5746. ! -32768,    92,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   765,
  5747. !   6226,  1082,  5075,-32768,-32768,-32768,-32768,  1115,  8381,  1121,
  5748. ! -32768,-32768,-32768,  1090,-32768,-32768,   238,   672,-32768,   772,
  5749. !    572,  8642,   459,   774,   258,-32768,-32768,-32768,-32768,-32768,
  5750. ! -32768,-32768,-32768,  6483,  6483,-32768,-32768,-32768,-32768,-32768,
  5751. !     74,  8381,  8381,  9521,   656,   656,  1124,  1126,-32768,-32768,
  5752. ! -32768,-32768,   269,-32768,  1091,-32768,  1084,  1087,  1097,  1098,
  5753. ! -32768,  9544,  6483,   575,-32768,  1089,-32768,-32768,-32768,   818,
  5754. ! -32768,-32768,   509,   509,  7417,-32768,  1175,  1137,  1100,-32768,
  5755. !   1141,-32768,  8124,  8381,-32768,  7237,-32768,  1146,-32768,-32768,
  5756. !    629,-32768,   656,-32768,-32768,   656,  8982,  8982,  6573,-32768,
  5757. ! -32768,-32768,   765,  6663,  6663,-32768,-32768,  6483,-32768,  9521,
  5758. !   9521,-32768,   831,   831,  6483,  6483,   801,  1102,  8729,-32768,
  5759. ! -32768,-32768,-32768,  6483,-32768,-32768,-32768,-32768,  8124,-32768,
  5760. ! -32768,-32768,-32768,-32768,-32768,  5674,-32768,-32768,  1109,   234,
  5761. !   3239,  9567,  7237,-32768,-32768,  5168,    48,-32768,-32768,  1149,
  5762. ! -32768,  1150,-32768,-32768,-32768,  1160,  1163,-32768,-32768,-32768,
  5763. ! -32768,   282,  1123,-32768,  1127,   765,  7327,   518,   295,  5272,
  5764. ! -32768,   572,-32768,-32768,   296,-32768,  5376,-32768,  1214,  1168,
  5765. ! -32768,-32768,  6483,  6483,  8381,-32768,-32768,-32768,-32768,    37,
  5766. ! -32768,-32768,-32768,  8381,  1176,-32768,  1177,-32768,   765,   656,
  5767. !   7237,-32768,-32768,-32768,  1147,   201,  1181,-32768,-32768,  6753,
  5768. !   6753,-32768,-32768,  1143,-32768,  5764,  1148,-32768,-32768,   831,
  5769. ! -32768,  1158,  8381,  1214,  1183,  1214,  1151,  1152,-32768,   317,
  5770. !   5480,-32768,  1198,-32768,  1156,   246,-32768,-32768,-32768,-32768,
  5771. ! -32768,-32768,-32768,  1153,-32768,  1254,  1208,  7327,  7327,  6483,
  5772. !   1355,   765,-32768,   353,-32768,-32768,-32768,-32768,  1167,  1170,
  5773. ! -32768,  1271,  1219,-32768,-32768,-32768,-32768,  1281,  1282,-32768
  5774.   };
  5775.   
  5776.   static const short yypgoto[] = {-32768,
  5777. !   1165,-32768,-32768,   958,     7,  1283,-32768,-32768,-32768,-32768,
  5778. ! -32768,-32768,-32768,   486,-32768,-32768,-32768,-32768,-32768,-32768,
  5779. ! -32768,  -773,  1169,  1174,-32768,-32768,-32768,-32768,  1166,-32768,
  5780. ! -32768,   478,   126,-32768,-32768,-32768,  4325,   -30,-32768,  1204,
  5781. !    844,  -998,-32768,   -96,   162,-32768,   171,-32768,   153,   124,
  5782. !   -980,-32768,  -480,   242,   564,   630,-32768,-32768,  -722,  3685,
  5783. !   1316,  -262,  2309,  2833,   804,   159,   431,-32768,-32768,-32768,
  5784. ! -32768,  -278,-32768,  -110,   -90,-32768,   233,    34,  -210,    83,
  5785. !     11,   -91,  -121,    -3,  1446,   -82,  1348,  -127,  -674,   329,
  5786. ! -32768,  -186,-32768,-32768,   180,-32768,-32768,-32768,-32768,-32768,
  5787. !   1092,-32768,   634,-32768,   122,-32768,-32768,   821,   742,    14,
  5788. ! -32768,-32768,-32768,   526,  -285,    12,  1299,  1300,-32768,-32768,
  5789. ! -32768,-32768,-32768,  -131,-32768,   473,   686,-32768,   533,   394,
  5790. !    469,  -411,-32768,-32768,-32768,-32768,-32768,-32768,   939,-32768,
  5791. !    482,   829,   573,   857,  1683,  1544,  -371,-32768,  1375,     0,
  5792. !      1,-32768,  4129,   -99,   646,-32768,  3274,-32768,-32768,  3935,
  5793. !     -4,   198,  -327,  1336,  3574,   852,  -188,-32768,  1912,-32768,
  5794. !  -1147,  -942,  -321,   101,-32768,   539,  -106,   -94,-32768,-32768,
  5795. ! -32768, -1132,  -932, -1108,-32768,-32768,-32768,-32768,-32768,-32768,
  5796.   -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
  5797. ! -32768,-32768,-32768,-32768,-32768,   -43,-32768,-32768,-32768,-32768,
  5798. ! -32768,  -421,    70,-32768,    69,-32768,  -369,  -132,-32768,-32768,
  5799. !   -258,  1015,  -247,-32768,-32768,    60,   500,-32768,   127,-32768,
  5800.     -260
  5801.   };
  5802.   
  5803.   
  5804. ! #define    YYLAST        9739
  5805.   
  5806.   
  5807.   static const short yytable[] = {    66,
  5808. !     46,   423,   465,   366,   673,   530,   321,    85,   314,   317,
  5809. !     30,   586,    84,   553,    44,    85,    96,   638,   636,   103,
  5810. !    103,   178,   103,   533,   350,   596,   915,   231,    66,   122,
  5811. !     95,    97,   392,   400,   401,   349,   349,   351,   345,   149,
  5812. !    554,    66,   955,   121,   360,  1107,  1212,    85,  1144,   409,
  5813. !   1228,   556,    84,   830,    85,  1108,   502,   346,   502,     8,
  5814. !    502,   164,  1111,   961,    88,   195,    85,   522,  1250,   194,
  5815. !    830,   393,    85,    96,   599,    78,   309,   142,  1257,   651,
  5816. !    424,   614,    85,   460,   165,   166,   290,   285,   286,   670,
  5817. !    149,    85,     8,    85,    78,   309,   103,   194,   461,   307,
  5818. !    103,   670,   420,   103,   103,    75,   100,  1259,    93,   554,
  5819. !    347,   962,   100,  1269,    66,    46,   149,    66,   510,   600,
  5820. !    556,   188,   831,    76,   601,   310,   615,  -699,   300,    44,
  5821. !    426,   616,   361,  -699,   149,   149,   149,    82,  1272,  1295,
  5822. !     73,    93,   100,   777,   310,  1144,  1299,  1089,  1311,  1260,
  5823. !    577,   562,   522,  1033,   329,    93,   671,   602,   276,    21,
  5824. !    149,    93,   693,   100,   617,   187,   709,   164,  1151,   557,
  5825. !    294,   296,   100,   754,   164,   164,  1052,   175,    66,   414,
  5826. !   1067,   276,  1219,   755,   337,   111,   750,    74,   103,   535,
  5827. !   1049,    93,   340,   413,   422,  -103,    75,   756,   164,   327,
  5828. !    751,   384,    -1,   510,    99,   867,   341,   360,   460,   653,
  5829. !     21,   642,    93,   426,    76,   654,   398,  -229,   359,  1272,
  5830. !   1272,    93,   674,   558,   511,    85,   433,   499,  1245,   694,
  5831. !    752,  1048,   311,  1224,   512,    -2,   342,   593,   594,   159,
  5832. !    160,   879,   164,   189,   513,    12,   328,   514,   515,   349,
  5833. !    349,   595,   592,   530,     8,   366,   578,     8,   291,   295,
  5834. !   1304,  -229,  -229,   192,   400,   401,    85,   315,    17,   675,
  5835. !    509,   640,   433,   433,   524,  -224,   360,   510,   314,   317,
  5836. !    149,   100,   192,   194,   424,  -124,  1074,  -230,   880,   870,
  5837. !   1254,   164,   401,  1172,    85,   361,   360,   579,    75,   111,
  5838. !    192,   126,  1305,    93,    21,  1326,   580,  1107,   103,   526,
  5839. !   1098,   103,  1104,  1074,  1107,   103,    76,  1108,   534,    85,
  5840. !     96,   693,   651,  1197,  1108,   189,   301,  1147,    21,   187,
  5841. !     93,  -230,  -230,  1075,    95,    97,  1265,   599,   127,    89,
  5842. !    458,   581,   754,   422,    77,  -225,   192,  1327,  1301,   894,
  5843. !   1074,  1074,   755,   527,   100,   149,    66,   149,   149,   524,
  5844. !   1182,   343,   708,    66,   361,   127,   756,    90,  1107,   149,
  5845. !   1198,   149,  1074,   149,   149,   451,   164,   356,  1108,   811,
  5846. !    149,   551,   600,  1266,   361,  -695,   149,   601,   566,   149,
  5847. !    422,   100,   192,   606,    11,   610,   612,  1276,  1282,     7,
  5848. !      8,    21,    85,    93,   422,   164,   164,  1342,   149,    66,
  5849. !    186,    66,   414,   939,   937,   431,    85,   297,   298,  1321,
  5850. !    602,  -285,   360,    99,   510,   432,   413,  -285,   456,   360,
  5851. !    764,   510,  -699,   164,  -699,  -699,   117,    19,    21,   135,
  5852. !     93,  -699,    85,    85,    85,    85,   660,   385,   386,    22,
  5853. !    551,   387,   511,   499,  1343,   783,   860,   112,   766,   187,
  5854. !   -286,   643,   512,  -699,  -699,  -699,  -286,  -699,   693,  -699,
  5855. !    359,   189,   513,   804,   765,   514,   515,   820,   676,    26,
  5856. !    192,   822,   118,   136,   137,   829,     7,   100,   805,   878,
  5857. !    132,   586,    85,   133,   433,   388,   389,   349,   187,   784,
  5858. !    785,   187,   767,   677,   192,   824,   433,   433,   100,   524,
  5859. !    361,   424,   400,   360,  1180,   530,    66,   361,   553,   360,
  5860. !    692,   821,   178,   695,    19,   823,   366,   465,   701,   702,
  5861. !    703,   704,   705,   533,   651,  1091,    22,   315,   112,   112,
  5862. !    750,   182,   276,   624,    99,   554,   718,   149,    85,   825,
  5863. !    187,  1057,  1208,    84,   751,    21,   556,    93,   189,     7,
  5864. !    503,  1273,   504,   287,   632,   164,    26,   360,   289,   431,
  5865. !    881,   112,   422,   641,   -27,    13,    14,   -27,   747,   432,
  5866. !   -224,     7,     8,   356,   752,   612,     7,     8,   715,   -27,
  5867. !    394,   395,    78,    79,     7,   503,  1209,    19,   149,   149,
  5868. !    842,   361,   318,    75,   -81,  1274,   842,   361,   456,    22,
  5869. !    -81,   456,  -102,   696,   698,   319,   700,    75,   673,    19,
  5870. !   -506,    76,   149,   149,    19,   149,  1077,    13,    14,   356,
  5871. !    192,    22,    19,   240,   456,    76,    22,   234,   722,   505,
  5872. !     21,  -225,    80,    81,    22,    85,   331,    21,   332,   422,
  5873. !   1082,   366,   333,   164,   842,   361,   -80,   322,   426,   159,
  5874. !    160,    26,   -80,   187,   744,    12,    26,     8,   338,    10,
  5875. !    761,   301,   114,   433,    26,    12,   407,   356,   807,   792,
  5876. !     13,    14,   422,   433,   433,   433,  1027,  1028,    17,  1028,
  5877. !     15,   164,   360,   371,    16,   421,   360,   427,    17,   357,
  5878. !     78,    79,   167,   168,   169,   430,   192,   694,   158,   159,
  5879. !    160,    75,   360,   715,    21,    12,    93,   486,   487,   871,
  5880. !   1123,   192,  1072,  1073,   873,   874,   385,  1174,   876,    76,
  5881. !   1053,  1054,   170,  1056,   356,   428,   356,   356,    17,   314,
  5882. !    317,   359,   429,    85,   436,   314,   317,   443,    21,   444,
  5883. !     80,   171,   446,   114,   114,   360,  1153,  1154,   447,   334,
  5884. !    448,   335,   356,   111,   433,   336,   433,   449,   356,   849,
  5885. !   1170,   450,   404,    85,   405,   502,   694,   433,   406,    85,
  5886. !    361,    66,    66,    66,   361,   541,   114,   539,   567,   944,
  5887. !   1184,  1185,   542,   194,   544,   172,   173,   174,   545,    85,
  5888. !    361,    85,   546,    78,   309,  1129,  1130,  1131,   112,   112,
  5889. !    547,   528,     8,   563,   885,   886,   887,   111,   347,   568,
  5890. !   -694,   569,   356,   570,   424,   571,   394,  1175,   385,  1181,
  5891. !    914,   597,   149,   149,   149,   149,   598,  1216,   613,   149,
  5892. !    842,   842,   842,   361,   622,   240,   529,  1336,  1337,    19,
  5893. !    623,   792,   356,   310,   629,    70,   637,    85,   681,    21,
  5894. !    718,    93,   682,    87,   439,   442,   359,   149,  1307,  1308,
  5895. !    103,    98,    66,   414,    85,   104,   104,   686,   104,   422,
  5896. !    422,   687,   422,   706,    70,   707,   551,   413,   483,   484,
  5897. !    485,   486,   487,   100,   709,   104,   184,    70,   762,    13,
  5898. !     14,   763,   776,    87,   778,   591,  -330,   780,   796,   797,
  5899. !     98,   399,   159,   160,   433,   433,   806,   433,    12,   808,
  5900. !    810,   812,    98,   813,   814,   815,   921,  1016,    98,  -330,
  5901. !   -330,   819,  -330,   510,   356,    66,    66,   828,  1193,  1194,
  5902. !     21,    17,    93,  1012,   852,   315,   104,    98,    66,   414,
  5903. !    855,   635,   104,   862,   511,   963,   104,   856,   456,   104,
  5904. !    104,   677,   857,   413,   512,     7,   100,   858,   861,    11,
  5905. !     70,   866,   104,    70,   513,   872,   875,   514,   515,   877,
  5906. !    149,    66,   149,   883,   882,  1156,   888,   889,   898,   642,
  5907. !    104,   104,   104,   356,   149,   149,   892,   149,   315,   691,
  5908. !    164,   893,   895,    19,   315,   111,   356,   896,   356,   694,
  5909. !    897,   899,   900,    21,   901,    22,   104,   456,  1097,   902,
  5910. !   1103,  -101,   905,   114,   114,    66,   414,    24,   904,   907,
  5911. !   1043,  1011,   908,   909,    70,   112,   912,    25,   910,   192,
  5912. !    413,   112,   911,   923,   104,    26,   926,   913,   925,   315,
  5913. !     27,   927,   932,   933,     7,     8,   743,   934,   745,   746,
  5914. !   1227,   938,   356,   948,   356,   830,   356,   942,     8,    92,
  5915. !     10,    11,   554,   943,   354,   945,    12,   314,   317,   956,
  5916. !   1003,    98,   104,  1340,  1125,  1126,  1043,  1005,  1156,   112,
  5917. !    795,    15,    19,  1300,  1009,    16,  1018,   842,  1034,    17,
  5918. !   1036,  1037,    21,  1090,    22,  -471,  1038,   138,  -471,  1039,
  5919. !   1055,  1045,  1059,  1050,  1064,    21,   139,    93,  1051,  1060,
  5920. !   1076,  1061,    98,  1065,  1063,  1068,   140,  1069,   104,   104,
  5921. !     70,   422,   422,  1081,    26,   532,   104,  1070,  1084,   141,
  5922. !   1085,   192,   780,  1086,   817,  1093,  1092,  1088,  1109,  1095,
  5923. !     98,  1156,  1116,  -471,  1117,  1118,  -471,   355,  -471,  1132,
  5924. !   1176,   590,  1122,  1143,   104,  1149,  1148,   104,  -471,  1163,
  5925. !   1167,   104,   842,   842,   842,    98,  1169,  1171,  1199,   422,
  5926. !   1189,  1195,   422,  1196,  1156,  1200,  -471,  -471,  1201,  1213,
  5927. !     98,  -471,  1214,  1207,     8,   644,  1217,  1152,  1202,  1203,
  5928. !   -471,  1225,  1215,  1241,  1261,  1262,  1137,  1138,  1139,  1140,
  5929. !   1251,   104,    70,   104,   104,    70,   149,  1263,  1146,    70,
  5930. !   1264,   645,  1285,  1289,  1267,   104,   646,   104,  1268,   104,
  5931. !    104,  1298,  1074,   164,  1303,  1306,   104,  1341,  1317,   360,
  5932. !   1331,    21,   104,    93,  1309,   104,     8,   863,  1314,  1312,
  5933. !    114,  1161,  1319,  1320,  1252,  1323,   114,  1325,    98,  1168,
  5934. !    849,   458,  1333,  1335,   104,    70,   382,    70,  1344,   112,
  5935. !    112,  1345,    98,   645,  1347,   112,   112,   112,   864,  1346,
  5936. !   1349,  1350,   323,   565,     5,   396,   422,   325,  -699,   950,
  5937. !   -699,  -699,   326,    21,   344,    93,   957,  -699,    98,    98,
  5938. !     98,    98,   305,   710,   114,  1206,  1211,  -699,  1232,  -699,
  5939. !   -699,  1280,   768,  1162,  1100,   917,  -699,   884,  1240,  -699,
  5940. !   -699,   383,  1132,  -699,   949,  -699,    85,   361,   928,   827,
  5941. !    929,   123,   124,  1218,  1013,   865,   315,   111,  -699,  -699,
  5942. !    397,   953,  -699,   356,  -699,  1030,  1066,    86,    98,   456,
  5943. !    104,    48,   668,   749,  1218,  1218,  1029,   187,     8,    92,
  5944. !     10,    11,   104,   104,  1339,    70,    12,    48,   799,   947,
  5945. !   1296,   998,   794,  1316,  1318,     0,   187,   488,  1032,  1218,
  5946. !     48,    15,   620,   532,   958,    16,   959,     0,   960,    17,
  5947. !      0,   655,   656,   154,   479,   480,   481,   482,   483,   484,
  5948. !    485,   486,   487,   104,    87,    21,   185,    93,     0,     0,
  5949. !      0,     0,     0,   551,   489,   490,     0,     0,   229,   491,
  5950. !    492,   493,   494,   278,    48,     0,     0,     0,     0,    19,
  5951. !      0,     0,   657,     0,     0,   278,   278,     0,     0,    21,
  5952. !    356,    22,   853,   154,  1297,     0,   278,     0,   658,     0,
  5953. !      0,     0,     0,   139,   104,   104,    70,     0,     0,     0,
  5954. !    722,   722,   794,   140,     0,     0,    48,     0,     0,   154,
  5955. !      0,    26,     0,  1315,     0,     0,   659,     0,   104,   104,
  5956. !      0,   104,     0,   363,   114,   114,     0,     0,     0,     0,
  5957. !    114,   114,   114,     0,     0,     0,     8,    92,    10,    11,
  5958. !      0,    98,     0,     0,    12,     0,   356,     0,     7,     8,
  5959. !     70,     0,    11,   375,   377,   380,   228,     0,     0,    15,
  5960. !      0,   277,     0,    16,     0,     0,     0,    17,     0,   104,
  5961. !     48,     0,   112,   277,   277,     0,     0,     0,     0,   104,
  5962. !    104,   104,     0,    21,   277,    93,    19,     0,     0,   510,
  5963. !      0,     0,     0,     0,     0,     0,    21,     0,    22,     0,
  5964. !      0,    94,     0,     0,     0,     0,   452,   101,   105,   453,
  5965. !    603,   916,   454,     0,     0,     0,     0,   185,   462,     0,
  5966. !    604,   362,     0,     0,     0,     0,     0,   501,    26,     0,
  5967. !    513,     0,     0,   605,   515,     0,     0,     0,     0,    98,
  5968. !      0,     0,     0,     0,     0,   278,     0,   112,   112,   112,
  5969. !      0,     0,     0,     8,   230,    10,   184,     0,   229,   279,
  5970. !    104,    12,   104,     0,     0,     0,   185,     0,   952,    98,
  5971. !      0,   279,   279,   104,     0,    98,    15,   794,   794,   794,
  5972. !     16,     0,   279,     0,    17,   532,   552,     0,     0,     0,
  5973. !      0,   313,   316,     0,     0,    98,     0,    98,     0,     0,
  5974. !     21,     0,    93,     0,     0,     0,     0,     0,   816,     0,
  5975. !     98,    48,  1004,     0,     0,     0,     0,     0,     0,   364,
  5976. !      0,     0,   374,   376,     0,     0,     0,     0,   104,   104,
  5977. !    104,   104,     0,     0,     0,   104,   794,   794,   794,     0,
  5978. !      0,     0,     0,   277,     0,     0,     0,     0,   154,     0,
  5979. !      0,   185,     0,    98,     0,   552,   228,     0,     0,     0,
  5980. !      0,     0,   854,   104,  1041,  1044,   104,     0,    70,     0,
  5981. !     98,     0,     0,   859,     0,   363,   481,   482,   483,   484,
  5982. !    485,   486,   487,     0,   362,     0,     0,   114,   625,     0,
  5983. !    626,   193,   375,   377,     0,     0,     0,     0,     0,     0,
  5984. !    699,   154,  1243,    48,     0,   639,     0,     0,   678,     0,
  5985. !    104,   104,     0,   104,     0,     0,     0,     7,     8,     0,
  5986. !      0,  1044,     0,     0,     0,   278,     0,   665,   278,     0,
  5987. !      0,   794,   794,   278,   678,   678,   678,   678,   320,     0,
  5988. !      0,   279,     0,     0,    70,     0,     0,   278,     0,     0,
  5989. !      0,   278,     0,   362,   230,    19,     0,   352,   510,     0,
  5990. !      0,     0,   114,   114,   114,    21,     0,    22,  1294,     0,
  5991. !      0,     0,   391,   362,     0,     0,   104,    70,   104,   603,
  5992. !      0,     0,   364,   278,   229,     0,     0,     0,     0,   604,
  5993. !    104,   104,     0,   104,     0,  1136,     0,    26,     0,   513,
  5994. !   1141,   552,   605,   515,     0,     0,   277,     0,   363,     0,
  5995. !      0,     0,     0,     0,     6,     0,     7,     8,     9,    10,
  5996. !     11,    70,     0,   277,     0,    12,   277,     0,     0,     0,
  5997. !      0,   277,   277,   277,   277,   277,     0,     0,    13,    14,
  5998. !     15,     0,   954,     0,    16,   277,     0,     0,    17,   277,
  5999. !      0,   364,    18,     0,    19,     0,     0,     0,    20,     0,
  6000. !      0,   627,   628,     0,    21,     0,    22,     0,     0,    23,
  6001. !      0,   364,     0,     0,  1186,  1187,     0,     0,    24,     0,
  6002. !      0,   277,   228,     0,     0,     0,     0,     0,    25,     0,
  6003. !      0,  1010,   552,   794,     0,     0,    26,     0,   363,   362,
  6004. !   1017,    27,     0,  1205,   279,     0,   362,    28,    29,  1031,
  6005. !      0,     0,     0,     7,     8,     0,     0,   375,   377,   380,
  6006. !      0,   279,     0,     0,   279,   380,     0,     0,     0,   279,
  6007. !    279,   279,   279,   279,     0,     0,     0,     0,  -511,     0,
  6008. !      0,   625,   626,   279,   639,     0,   552,   279,  1233,     0,
  6009. !      0,    19,     0,  -511,  -511,  1238,  1239,     0,     0,     0,
  6010. !   -511,    21,     0,    22,  1244,     0,  1096,     0,   794,   794,
  6011. !    794,     0,  -511,   380,     0,   139,     0,     0,     0,   279,
  6012. !    230,     0,     0,  -511,  -511,   140,  -511,     0,  -511,   100,
  6013. !    362,     0,   424,    26,   769,   771,   362,   364,   141,     0,
  6014. !      0,     0,     0,   630,   364,     0,     0,     0,     0,   633,
  6015. !      0,     0,   104,     0,     0,   924,  -511,  -511,     0,     0,
  6016. !   -511,  -511,     0,  1292,  1293,     0,     0,     0,     0,   510,
  6017. !   -511,     0,     0,     0,     0,   678,    21,     0,    93,   918,
  6018. !      0,   452,   453,     0,   362,  1119,  1120,     0,     0,     0,
  6019. !    511,     0,     0,   688,   689,     0,   690,     0,  1127,  1128,
  6020. !    512,     0,     0,     0,     0,   678,     0,     0,     0,     0,
  6021. !    513,   552,     0,   514,   515,   363,     8,    92,    10,    11,
  6022. !      0,     0,     0,     0,    12,     0,   837,   838,   364,     0,
  6023. !   1338,   552,     0,   951,   364,     0,     0,     0,     0,    15,
  6024. !    452,   453,     0,    16,     0,     0,     0,    17,     0,     0,
  6025. !      0,     0,     0,     0,     0,     0,     0,     0,     0,   987,
  6026. !      0,     0,    98,    21,     0,    93,     0,     0,   519,   523,
  6027. !    525,     0,     0,   277,   363,     0,     0,     0,     0,   781,
  6028. !    782,     0,   364,     0,   781,   452,   453,     0,   278,     0,
  6029. !      0,   625,   626,   375,   377,  1192,     7,   100,   639,   375,
  6030. !    377,   380,     0,   277,    48,     0,   678,     0,     0,   362,
  6031. !      0,     0,     0,   362,     0,     0,     0,     0,     0,     0,
  6032. !   1058,     0,     0,     0,     0,     0,  1025,     0,     0,   362,
  6033. !      0,     0,     0,     0,    19,   452,   453,     0,     0,     0,
  6034. !      0,     0,     0,     0,    21,     0,    22,     0,     0,     0,
  6035. !      0,   608,     0,   519,   523,   525,     0,     0,   108,   835,
  6036. !    836,  1234,  1235,     0,  1236,  1237,     0,     0,   109,   844,
  6037. !      0,   279,   362,     0,     0,   851,    26,     0,     0,     0,
  6038. !     48,    27,     0,     0,     0,     0,   277,     0,     0,     0,
  6039. !      0,   410,     0,     7,     8,    92,    10,    11,     0,     0,
  6040. !      0,   279,    12,     0,   277,     0,     0,   364,     0,   769,
  6041. !    771,   364,     0,   154,     0,   987,     0,    15,     0,   868,
  6042. !      0,    16,   987,     0,     0,    17,  -423,   364,     0,     7,
  6043. !    100,    19,     0,   184,     0,     0,     0,     0,     7,   100,
  6044. !      0,    21,    11,    22,     0,     0,   672,     0,     0,     0,
  6045. !    411,     0,     0,   625,   626,    24,   639,    48,     0,     0,
  6046. !      0,     0,   999,  1000,   268,    25,     0,    19,   999,  1000,
  6047. !    364,  1313,     0,    26,     0,     0,    19,    21,    27,    22,
  6048. !      0,     0,     0,     0,   279,     0,    21,   268,    22,     0,
  6049. !      0,    24,     0,  -423,     0,     0,     0,     0,  1019,  1020,
  6050. !    108,    25,   279,   772,     0,   774,     0,     0,   987,    26,
  6051. !    109,     0,   774,     0,    27,     0,   919,   920,    26,   922,
  6052. !      0,     0,     0,    27,   358,     0,     0,   410,     0,     7,
  6053. !      8,    92,    10,    11,     0,     0,    19,     0,    12,     0,
  6054. !      0,     0,     0,   523,     0,   936,    21,     0,    22,     0,
  6055. !      0,     0,     0,    15,     0,  1021,   380,    16,     0,     0,
  6056. !    139,    17,  -422,   769,   771,     0,     0,    19,     0,     0,
  6057. !    140,     0,   452,   453,     0,     0,     0,    21,    26,    22,
  6058. !      0,     0,   987,   141,     0,     0,   411,     0,     0,     0,
  6059. !   1220,    24,     0,   987,     0,   772,   774,     0,     0,     0,
  6060. !      0,    25,   774,     0,     0,  1002,   278,     0,     0,    26,
  6061. !      0,  1220,  1220,     0,    27,     0,     0,  1006,  1007,  1008,
  6062. !      0,     0,     0,     0,     0,     0,     0,     0,     0,  -422,
  6063. !      0,   375,   377,   380,     0,     0,  1220,     0,     0,     0,
  6064. !      0,     0,     0,   987,     0,     0,     0,   459,     0,     0,
  6065. !    987,     0,     8,   987,    10,    11,     0,     0,     0,     0,
  6066. !     12,     0,     0,     0,     7,     8,   158,   159,   160,   523,
  6067. !      0,     0,     0,    12,   987,    15,     0,   987,     0,    16,
  6068. !      0,     0,     0,    17,   987,     0,     0,   410,   228,     7,
  6069. !      8,    92,    10,    11,     0,  1062,    17,     0,    12,    21,
  6070. !      0,    93,    19,     0,   277,   510,     0,     0,   987,   228,
  6071. !    228,     0,    21,    15,    22,     0,     0,    16,     0,     0,
  6072. !      0,    17,  -424,   987,     0,     0,   139,    19,     0,   589,
  6073. !    358,     0,     0,     0,   228,     0,   140,    21,   987,    22,
  6074. !      0,     0,   672,     0,    26,     0,   411,     0,     0,  1102,
  6075. !      0,    24,     0,     0,     0,   987,   987,     0,   552,     0,
  6076. !    930,    25,   931,     0,     0,     0,     0,     0,     0,    26,
  6077. !      0,     0,     0,   935,    27,     0,   358,     0,   772,   774,
  6078. !   1121,     0,     0,     0,     0,     0,   230,     0,     0,  -424,
  6079. !      0,     0,     0,     0,     0,     8,     0,    10,    11,   652,
  6080. !    627,   628,   279,    12,     0,     0,     0,   230,   230,     0,
  6081. !      0,     0,     0,     0,     0,     0,     0,     0,    15,     0,
  6082. !      0,     0,    16,     0,   358,  1150,    17,     0,   930,   931,
  6083. !      0,   772,   230,     0,     0,   935,     0,   772,   774,     7,
  6084. !      8,     0,    21,   184,    93,   495,     0,     0,   268,     0,
  6085. !      0,   589,     0,     0,   719,   720,   362,   724,   725,   726,
  6086. !    727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
  6087. !    737,   738,   739,   740,   741,   742,     0,    19,     0,   496,
  6088. !    510,   358,     0,   358,   358,     0,     0,    21,     0,    22,
  6089. !      7,     8,    92,    10,    11,     0,     0,   354,     0,    12,
  6090. !      0,   603,   100,     0,   159,   160,     0,     0,     0,   358,
  6091. !     12,   604,     0,     0,    15,   358,    42,     0,    16,    26,
  6092. !      0,   513,    17,     0,   605,   515,     0,     0,    19,     0,
  6093. !    801,   803,   772,    17,     0,     0,    42,    42,    21,   110,
  6094. !     22,     0,   510,     0,     0,    42,     0,     0,     0,    21,
  6095. !      0,    93,   378,     0,   364,     0,    42,     0,    42,     0,
  6096. !      0,     0,   379,   511,     0,     0,     0,     0,     0,   358,
  6097. !     26,     0,     0,   512,     0,   141,   589,     0,   190,     0,
  6098. !    355,     0,     0,   513,     0,     0,   521,   515,     0,     0,
  6099. !    930,   931,     6,   935,     7,     8,     9,    10,    11,   358,
  6100. !      0,     0,     0,    12,     0,     0,     0,    42,     0,     0,
  6101. !    589,     0,     0,    42,     0,   190,     0,    42,    15,     0,
  6102. !    110,   110,    16,     0,     0,     0,    17,     0,     0,     0,
  6103. !      0,    42,    19,    42,    42,     0,   324,     0,     0,     0,
  6104. !      0,     0,    21,     0,    22,     0,   869,    23,     0,     0,
  6105. !      0,    42,    42,   110,     0,     0,    24,     0,     0,     0,
  6106. !      0,   190,     0,     0,     0,     0,    25,     0,     0,     0,
  6107. !      0,     0,     0,     0,    26,     0,     0,    42,     0,    27,
  6108. !      0,   358,     0,     0,     0,    28,   721,     0,     7,     8,
  6109. !      0,    10,   437,   233,   234,    42,   235,    12,     0,     0,
  6110. !      0,     0,   903,     0,     0,    42,     0,     0,     0,     0,
  6111. !      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
  6112. !     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
  6113. !      0,   245,   246,   247,   248,   249,    21,     0,    22,   589,
  6114. !    358,     0,     0,     0,     0,  -656,     0,   250,     0,     0,
  6115. !    251,     0,     0,   358,     0,   358,     0,     0,   252,   253,
  6116. !    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
  6117. !      0,     0,     0,   258,     0,     0,     0,   259,     0,     0,
  6118. !      0,     0,     0,     0,   946,     0,     0,   506,     0,   260,
  6119. !      0,     0,     0,     0,     0,   190,   589,    42,     0,     7,
  6120. !      8,     0,    10,   437,   233,   234,     0,   235,    12,   358,
  6121. !      0,   358,     0,   358,     0,     0,     0,     0,     0,     0,
  6122. !      0,     0,     0,    15,   236,    42,     0,    16,    42,   239,
  6123. !      0,    17,    42,   240,   241,     0,   242,    19,   243,   244,
  6124. !    589,     0,   245,   246,   247,   248,   249,    21,     0,    22,
  6125. !      0,     0,     0,     0,  1014,  1015,     0,     0,   250,     0,
  6126. !      0,   251,     0,     0,     0,     0,     0,  1019,   100,   252,
  6127. !    253,   254,    42,    42,    42,    42,     0,   255,   256,   257,
  6128. !     42,     0,     0,     0,   438,     0,    42,     0,    42,     0,
  6129. !    110,   110,   589,   589,     0,     0,  1046,    42,     0,     0,
  6130. !    260,     0,     0,    42,     0,    19,    42,     0,   410,     0,
  6131. !      7,     8,    92,    10,    11,    21,     0,    22,     0,    12,
  6132. !      0,     7,     8,     0,  1021,    42,    42,     0,    42,    24,
  6133. !      0,     0,     0,     0,    15,     0,     0,     0,    16,    25,
  6134. !      0,     0,    17,  -425,     0,     0,     0,    26,    19,   589,
  6135. !      0,     0,    27,     0,     0,     0,     0,    64,    21,    19,
  6136. !     22,  1083,     0,     0,     7,     8,     0,   411,    11,    21,
  6137. !      0,    22,    24,     0,     0,     0,     0,    64,    64,     0,
  6138. !    115,     0,    25,   139,     0,     0,    64,     0,     0,     0,
  6139. !     26,     0,     0,   140,     0,    27,     0,    64,     0,    64,
  6140. !      0,    26,    19,     0,     0,   510,   141,     0,     0,  1124,
  6141. !   -425,     0,    21,     0,    22,     7,     8,    92,    10,    11,
  6142. !      0,   506,   354,   589,    12,     0,   839,     0,   589,     0,
  6143. !   1142,     0,     0,   791,     0,     0,   840,     0,     0,    15,
  6144. !      0,     0,     0,    16,    26,     0,   513,    17,    64,   605,
  6145. !    515,     0,     0,    19,    64,     0,   510,     0,    64,     0,
  6146. !      0,   115,   115,    21,    42,    22,     0,     0,     0,     0,
  6147. !      0,     0,    64,     0,    64,    64,     0,   839,     0,     0,
  6148. !      0,     8,     0,    10,    11,     0,     0,   840,     0,    12,
  6149. !    358,     0,    64,    64,   115,    26,     0,   513,     0,     0,
  6150. !    605,   515,   589,   589,    15,   355,     0,     0,    16,     0,
  6151. !   1190,  1191,    17,     0,     0,    42,    42,   110,    64,     0,
  6152. !      0,     0,     0,   848,     0,     0,     0,     0,    21,     0,
  6153. !     93,   589,     0,     0,     0,     0,    64,     0,     0,    42,
  6154. !     42,     0,    42,     0,     0,     0,    64,     0,     0,     0,
  6155. !      0,     0,  1222,   476,   477,   478,   479,   480,   481,   482,
  6156. !    483,   484,   485,   486,   487,   748,     0,   587,     0,   711,
  6157. !    712,   110,    10,   437,   233,   234,   589,   235,    12,     0,
  6158. !      0,     0,     0,   589,   589,     0,     0,   358,     0,     0,
  6159. !      0,     0,   589,    15,   236,   237,   238,    16,     0,   239,
  6160. !      0,    17,     0,   240,   241,   791,   242,    19,   243,   244,
  6161. !      0,     0,   245,   246,   247,   248,   249,    21,     0,   713,
  6162. !    588,     0,     0,     0,     7,     8,     0,     0,   250,     0,
  6163. !      0,   251,     0,     0,     0,     0,     0,   531,    64,   252,
  6164. !    253,   254,     0,     0,     0,     0,     0,   255,   256,   257,
  6165. !      0,   589,   589,   358,   258,   714,     0,     0,   259,     0,
  6166. !      0,     0,    19,     0,     0,     0,    64,     0,     0,    64,
  6167. !    260,     0,    21,    64,    22,     0,     0,     0,     0,     0,
  6168. !    116,     0,     0,     0,     0,     0,   378,     0,     0,     0,
  6169. !      0,     0,   585,     0,     0,     0,   379,   150,   791,   791,
  6170. !      0,     0,     0,     0,    26,     0,     0,     0,     0,   141,
  6171. !      0,     0,     0,    64,    64,    64,    64,     0,   589,     0,
  6172. !      0,    64,     0,     0,     0,     0,     0,    64,     0,    64,
  6173. !      0,   115,   115,     0,     0,     0,     0,     0,    64,     0,
  6174. !      0,     0,     0,     0,    64,     0,     0,    64,   150,    42,
  6175. !     42,   110,   110,     0,   190,     0,    42,   848,   848,   848,
  6176. !      0,   116,   116,     0,     0,     0,    64,    64,     0,    64,
  6177. !      0,     0,     0,     0,   150,     0,     0,     0,     0,     0,
  6178. !      0,     0,     0,     0,    42,     0,     0,    42,     0,    42,
  6179. !      0,     0,   150,   150,   381,     0,     0,     0,     0,     0,
  6180. !      0,     0,   791,   791,     0,  1105,     0,   966,   967,    92,
  6181. !     10,   232,   233,   234,     0,   235,    12,   968,   150,   969,
  6182. !    970,   971,   972,   973,   974,   975,   976,   977,   978,    13,
  6183. !     14,    15,   236,   237,   238,    16,     0,   239,     0,    17,
  6184. !      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
  6185. !    245,   246,   247,   248,   249,    21,   190,   979,   347,     0,
  6186. !    980,     0,     0,     0,     0,    42,   250,     0,     0,   251,
  6187. !      0,     0,     0,     0,   793,     0,     0,   252,   253,   254,
  6188. !      0,     0,     0,     0,   434,   255,   256,   257,     0,     0,
  6189. !      0,     0,   258,     0,   981,     0,   259,    42,    42,    42,
  6190. !      0,     0,     0,     0,     0,    64,     0,  1106,   260,     0,
  6191. !      0,    42,    42,     0,    42,     7,     8,     0,     0,    11,
  6192. !      0,     8,    92,    10,    11,     0,     0,   354,     0,    12,
  6193. !    518,   518,   518,     0,     0,     0,     0,     0,   150,     0,
  6194. !      0,     0,    42,     0,    15,     0,     0,     0,    16,     0,
  6195. !      0,     0,    17,    19,     0,     0,    64,    64,   115,     0,
  6196. !      0,   510,     0,    21,   850,    22,     0,     0,    21,     0,
  6197. !     93,     0,     0,     0,     0,     0,     0,   139,     0,     0,
  6198. !     64,    64,   511,    64,     0,     0,     0,   140,     0,     0,
  6199. !      0,     0,   512,     0,     0,    26,     0,     0,     0,     0,
  6200. !    141,     0,   513,     0,     0,   514,   515,     0,     0,     0,
  6201. !    355,     0,   115,   607,   848,   607,   607,   518,     0,   120,
  6202. !      0,     7,     8,    92,    10,    11,     0,   150,     0,   150,
  6203. !     12,   381,   381,     0,     0,     0,     7,     8,   150,     0,
  6204. !    424,   516,   516,   516,   150,    15,   793,   150,     0,    16,
  6205. !      0,     0,     0,    17,     0,     0,     0,     0,   148,    19,
  6206. !      0,     0,     0,     0,     0,     0,   150,     0,     0,    21,
  6207. !      0,    22,     0,     0,    19,     0,     0,   510,     0,     0,
  6208. !    191,     0,     0,    24,    21,     0,    22,     0,     0,   848,
  6209. !    848,   848,     0,    25,     0,     0,     7,   100,   603,   191,
  6210. !    424,    26,     0,     0,     0,     0,    27,     0,   604,   148,
  6211. !      0,     0,     0,     0,     0,     0,    26,     0,   513,     0,
  6212. !      0,   605,   515,     0,   516,     0,   516,   516,   516,     0,
  6213. !      0,     0,     0,    42,    19,   148,     0,     0,     0,   793,
  6214. !    793,     0,     0,     0,    21,     0,    22,   531,     0,     0,
  6215. !      0,     0,   757,   148,   148,   148,     0,     0,    24,     0,
  6216. !      0,     0,     0,   390,   518,   518,     0,   518,    25,     0,
  6217. !      0,     0,   585,     0,   518,     0,    26,     0,     0,   148,
  6218. !      0,    27,     0,     0,     0,     0,     0,     0,     0,     0,
  6219. !     64,    64,   115,   115,     0,     0,     0,    64,   850,   850,
  6220. !    850,     0,     0,     0,     0,   607,     0,     0,     0,   191,
  6221. !      0,     0,    62,     0,     0,     0,     0,     0,     0,     0,
  6222. !      0,     0,     0,     0,     0,    64,     0,     0,    64,     0,
  6223. !     64,     0,   102,   106,     0,     0,     0,   100,     0,   159,
  6224. !    160,   125,     0,   793,   793,    12,     0,     0,     0,     0,
  6225. !      0,     0,     0,     0,   157,     0,   607,   607,   843,     0,
  6226. !      0,     0,     0,     0,   843,     0,     0,     0,    17,     0,
  6227. !      0,     0,     0,     0,     0,   516,   516,   510,   516,     0,
  6228. !    150,   150,     0,   150,    21,   790,    93,     0,     8,   151,
  6229. !     10,   152,     0,     0,     0,     0,    12,   191,   511,   148,
  6230. !      0,     0,     0,     0,     0,     0,    64,     0,   512,   306,
  6231. !      0,    15,   381,   308,     0,    16,   516,     0,   513,    17,
  6232. !      0,   514,   515,     0,     0,     0,     0,    62,     0,     0,
  6233. !    330,   518,     7,     8,     0,    21,   184,    93,    64,    64,
  6234. !     64,   434,   434,   434,     0,     0,     0,   102,   106,     0,
  6235. !      0,     0,    64,    64,     0,    64,     0,     0,     0,     0,
  6236. !      0,     0,     0,     0,     0,     0,     0,   516,   516,   516,
  6237. !     19,     0,     0,     0,   148,   790,   148,   148,     0,     0,
  6238. !     21,     0,    22,    64,     0,     0,     0,     0,   148,     0,
  6239. !    148,   419,   148,   148,   139,     0,     7,     8,     0,   148,
  6240. !     11,   425,     0,     0,   140,   148,     0,     0,   148,     0,
  6241. !      0,     0,    26,     0,     0,     0,    83,   141,     0,     0,
  6242. !      0,     0,   518,     0,   518,     0,     0,   148,    83,    83,
  6243. !      0,    83,     0,     0,    19,   518,     0,     0,     0,   518,
  6244. !    518,   518,   516,     0,    21,     0,    22,     0,     0,     0,
  6245. !      0,     0,     0,     0,     0,   850,   177,     0,   378,     0,
  6246. !      0,     0,     0,     0,     0,     0,     0,     0,   379,     0,
  6247. !      0,     0,     0,     0,     0,     0,    26,     0,     0,     0,
  6248. !      0,   141,     0,     0,     0,     0,     0,     0,     0,     0,
  6249. !    607,   607,   843,   843,     0,     0,     0,   607,   843,   843,
  6250. !    843,     0,     0,     0,     0,    83,     0,    83,    83,    83,
  6251. !      0,     0,    83,    83,     0,     7,     8,     0,     0,   424,
  6252. !      0,   559,     0,     0,   560,   150,     0,     0,   561,     0,
  6253. !    850,   850,   850,   516,     0,   516,     0,     0,   191,     0,
  6254. !      0,     0,     0,     0,     0,     0,   516,     0,     0,     0,
  6255. !    790,   790,   790,    19,     0,     0,     0,     0,     0,     0,
  6256. !      0,     0,     0,    21,     0,    22,   148,     0,     0,   609,
  6257. !      0,     0,   757,   757,    64,   757,   619,   139,     0,     0,
  6258. !      0,     0,   306,     0,   308,     0,     0,   140,     0,     0,
  6259. !      0,     0,     0,   518,   518,    26,     0,    83,     0,   425,
  6260. !    141,   516,   516,   516,   516,     0,     0,     0,   516,   790,
  6261. !    790,   790,     0,     0,     0,     0,     0,   148,   148,   841,
  6262. !      0,   666,   669,     0,   419,   841,     0,     0,     0,     0,
  6263. !   -304,     8,  -304,    10,   184,    83,     0,     0,   150,    12,
  6264. !    150,   148,   148,     0,   148,     0,     0,     0,     0,     0,
  6265. !      0,     0,   607,   607,    15,   607,     0,     0,    16,     0,
  6266. !      0,     0,    17,     0,     0,     0,     0,     0,  -304,     0,
  6267. !      0,   510,     0,   841,     0,     0,     0,     0,    21,    83,
  6268. !     93,    83,    83,     0,     0,     0,     0,     0,     0,     0,
  6269. !      0,     0,   511,     0,     0,     0,     0,     0,     0,     0,
  6270. !      0,     0,   512,     0,   790,   790,     0,     0,     0,     0,
  6271. !   -304,    83,   513,     0,     0,   514,   515,    83,     0,     0,
  6272. !     83,     0,     0,     0,    83,   471,   472,   473,   474,   475,
  6273. !    476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
  6274. !    486,   487,   353,     0,     7,     8,    92,    10,   232,   233,
  6275. !    234,   354,   235,    12,     0,   381,     0,     0,     0,     0,
  6276. !      0,     0,     0,   516,   516,     0,   516,     0,    15,   236,
  6277. !    237,   238,    16,     0,   239,     0,    17,     0,   240,   241,
  6278. !      0,   242,    19,   243,   244,     0,     0,   245,   246,   247,
  6279. !    248,   249,    21,     0,    22,     0,     0,     0,     0,     0,
  6280. !      0,     0,     0,   250,     0,     0,   251,     0,     0,     0,
  6281. !      0,   102,   106,     0,   252,   253,   254,     0,     0,     0,
  6282. !      0,     0,   255,   256,   257,     0,     0,     0,     0,   258,
  6283. !    381,   381,   381,   259,   355,   559,   560,    83,   561,     0,
  6284. !      0,     0,     0,  -666,     0,   260,     0,     0,     0,     0,
  6285. !      0,   148,   148,   148,   148,     0,  1001,     0,   148,   841,
  6286. !    841,   841,     0,     0,     0,     0,     0,     0,     0,     0,
  6287. !      0,     0,     0,     0,   150,     0,     0,     0,     0,     0,
  6288. !      0,     0,     0,     0,     0,     0,   148,     0,     0,     0,
  6289. !      0,   455,     0,     7,     8,    92,    10,   232,   233,   234,
  6290. !    354,   235,    12,    83,     0,     0,     0,     0,     0,     0,
  6291. !      0,     0,     0,    83,     0,    83,    83,    15,   236,   237,
  6292. !    238,    16,     0,   239,     0,    17,     0,   240,   241,     0,
  6293. !    242,    19,   243,   244,   510,     0,   245,   246,   247,   248,
  6294. !    249,    21,     0,    22,  -237,     0,     0,     0,     0,     0,
  6295. !      0,     0,   250,     0,     0,   940,     0,   177,   191,     0,
  6296. !      0,     0,     0,   252,   253,   941,     0,     0,     0,     0,
  6297. !      0,   255,   256,   257,     0,   513,     0,     0,   788,   515,
  6298. !      0,     0,   259,   355,     0,     0,     7,     8,   158,   159,
  6299. !    160,     0,     0,     0,   260,    12,     0,     0,     0,   148,
  6300. !      0,   148,     0,     0,     0,     0,     0,     0,     0,     0,
  6301. !      0,     0,     0,   148,   148,     0,   148,     0,    17,     0,
  6302. !      0,     0,     0,     0,    19,     0,     0,   510,     0,     0,
  6303. !      0,     0,     0,     0,    21,     0,    22,     0,     0,     0,
  6304. !      0,     0,     0,     0,     0,   306,   308,     0,   603,     0,
  6305. !      0,     0,   425,     0,     0,     0,     0,     0,   604,     0,
  6306. !      0,     0,     0,     0,     0,     0,    26,     0,   513,     0,
  6307. !      0,   611,   515,     0,     0,     0,     0,     0,     0,     0,
  6308. !   1026,     0,    83,  1026,     0,   419,     0,     0,     0,     0,
  6309. !      0,     0,    83,    83,    83,     0,   455,     0,     7,     8,
  6310. !     92,    10,   232,   233,   234,   354,   235,    12,     0,     0,
  6311. !      0,     0,     0,     0,     0,     0,   841,     0,     0,     0,
  6312. !      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
  6313. !     17,     0,   240,   241,     0,   242,    19,   243,   244,   510,
  6314. !      0,   245,   246,   247,   248,   249,    21,     0,    22,  -237,
  6315. !      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
  6316. !    845,   419,     0,     0,  1164,     0,     0,     0,   252,   253,
  6317. !    846,     0,     0,    83,     0,    83,   255,   256,   257,     0,
  6318. !    513,     0,     0,   847,   515,     0,    83,   259,   355,     0,
  6319. !      0,   841,   841,   841,  1101,     0,     0,     0,     0,   260,
  6320. !      0,     0,     0,     0,     0,     0,     0,   559,   560,     0,
  6321. !    561,   466,   467,   468,  1165,   469,   470,   471,   472,   473,
  6322.      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
  6323. !    484,   485,   486,   487,     0,   148,     0,     0,   419,     0,
  6324. !      0,     0,     0,     0,     0,     0,     0,     0,  1255,     0,
  6325. !    966,   967,    92,    10,   232,   233,   234,     0,   235,    12,
  6326. !    968,     0,   969,   970,   971,   972,   973,   974,   975,   976,
  6327. !    977,   978,    13,    14,    15,   236,   237,   238,    16,    83,
  6328. !    239,     0,    17,     0,   240,   241,     0,   242,    19,   243,
  6329. !    244,     0,     0,   245,   246,   247,   248,   249,    21,     0,
  6330. !    979,   347,     0,   980,     0,     0,     0,     0,     0,   250,
  6331. !      0,     0,   251,     0,     0,     0,     0,     0,     0,     0,
  6332. !    252,   253,   254,    83,    83,     0,    83,     0,   255,   256,
  6333. !    257,     0,     0,     0,     0,   258,     0,   981,     0,   259,
  6334.        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  6335. !   1256,   260,  1277,     0,   966,   967,    92,    10,   232,   233,
  6336. !    234,     0,   235,    12,   968,     0,   969,   970,   971,   972,
  6337. !    973,   974,   975,   976,   977,   978,    13,    14,    15,   236,
  6338. !    237,   238,    16,     0,   239,     0,    17,     0,   240,   241,
  6339. !      0,   242,    19,   243,   244,     0,     0,   245,   246,   247,
  6340. !    248,   249,    21,     0,   979,   347,     0,   980,     0,     0,
  6341. !      0,     0,     0,   250,     0,     0,   251,     0,     0,     0,
  6342. !      0,     0,     0,     0,   252,   253,   254,     0,     0,     0,
  6343. !      0,     0,   255,   256,   257,     0,     0,     0,     0,   258,
  6344. !      0,   981,     0,   259,     0,     0,     0,     0,     0,     0,
  6345. !      0,     0,     0,     0,  1278,   260,  1277,     0,   966,   967,
  6346. !     92,    10,   232,   233,   234,     0,   235,    12,   968,     0,
  6347. !    969,   970,   971,   972,   973,   974,   975,   976,   977,   978,
  6348. !     13,    14,    15,   236,   237,   238,    16,     0,   239,     0,
  6349. !     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
  6350. !      0,   245,   246,   247,   248,   249,    21,     0,   979,   347,
  6351. !      0,   980,     0,     0,     0,     0,     0,   250,     0,     0,
  6352. !    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
  6353. !    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
  6354. !      0,     0,     0,   258,     0,   981,     0,   259,     0,     0,
  6355. !      0,     0,     0,     0,     0,     0,     0,     0,  1283,   260,
  6356. !   1277,     0,   966,   967,    92,    10,   232,   233,   234,     0,
  6357. !    235,    12,   968,     0,   969,   970,   971,   972,   973,   974,
  6358. !    975,   976,   977,   978,    13,    14,    15,   236,   237,   238,
  6359. !     16,     0,   239,     0,    17,     0,   240,   241,     0,   242,
  6360. !     19,   243,   244,     0,     0,   245,   246,   247,   248,   249,
  6361. !     21,     0,   979,   347,     0,   980,     0,     0,     0,     0,
  6362. !      0,   250,     0,     0,   251,     0,     0,     0,     0,     0,
  6363. !      0,     0,   252,   253,   254,     0,     0,     0,     0,     0,
  6364. !    255,   256,   257,     0,     0,     0,     0,   258,     0,   981,
  6365. !      0,   259,     0,     0,     0,     0,     0,     0,     0,     0,
  6366. !      0,     0,  1322,   260,   965,     0,   966,   967,    92,    10,
  6367. !    232,   233,   234,     0,   235,    12,   968,     0,   969,   970,
  6368. !    971,   972,   973,   974,   975,   976,   977,   978,    13,    14,
  6369. !     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
  6370. !    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
  6371. !    246,   247,   248,   249,    21,     0,   979,   347,     0,   980,
  6372. !      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
  6373. !      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
  6374. !      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
  6375. !      0,   258,     0,   981,  1249,   259,   966,   967,    92,    10,
  6376. !    232,   233,   234,     0,   235,    12,   968,   260,   969,   970,
  6377. !    971,   972,   973,   974,   975,   976,   977,   978,    13,    14,
  6378. !     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
  6379. !    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
  6380. !    246,   247,   248,   249,    21,     0,   979,   347,     0,   980,
  6381. !      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
  6382. !      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
  6383. !      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
  6384. !      0,   258,     0,   981,  1310,   259,   966,   967,    92,    10,
  6385. !    232,   233,   234,     0,   235,    12,   968,   260,   969,   970,
  6386. !    971,   972,   973,   974,   975,   976,   977,   978,    13,    14,
  6387. !     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
  6388. !    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
  6389. !    246,   247,   248,   249,    21,     0,   979,   347,     0,   980,
  6390. !      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
  6391. !      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
  6392. !      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
  6393. !      0,   258,     0,   981,   634,   259,     7,     8,    92,    10,
  6394. !    232,   233,   234,   354,   235,    12,     0,   260,     0,     0,
  6395.        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  6396. !     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
  6397. !    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
  6398. !    246,   247,   248,   249,    21,     0,    22,     0,     0,     0,
  6399. !      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
  6400. !      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
  6401. !      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
  6402. !      0,   258,     0,     0,     0,   259,   355,     0,     0,     0,
  6403. !      0,     0,     0,     0,     0,  -666,   587,   260,   711,   712,
  6404. !      0,    10,   437,   233,   234,     0,   235,    12,   474,   475,
  6405. !    476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
  6406. !    486,   487,    15,   236,   237,   238,    16,     0,   239,     0,
  6407. !     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
  6408. !      0,   245,   246,   247,   248,   249,    21,     0,   713,   588,
  6409. !      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
  6410. !    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
  6411. !    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
  6412. !      0,     0,     0,   258,   714,     0,   587,   259,   711,   712,
  6413. !      0,    10,   437,   233,   234,     0,   235,    12,   826,   260,
  6414. !      0,     0,     0,     0,  1042,     0,     0,     0,     0,     0,
  6415. !      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
  6416. !     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
  6417. !      0,   245,   246,   247,   248,   249,    21,     0,   713,   588,
  6418. !      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
  6419. !    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
  6420. !    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
  6421. !      0,     0,     0,   258,     0,     0,   587,   259,   711,   712,
  6422. !      0,    10,   437,   233,   234,     0,   235,    12,  -384,   260,
  6423. !      0,     0,     0,     0,  1042,     0,     0,     0,     0,     0,
  6424. !      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
  6425. !     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
  6426. !      0,   245,   246,   247,   248,   249,    21,     0,   713,   588,
  6427. !      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
  6428. !    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
  6429. !    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
  6430. !      0,     0,     0,   258,     0,     0,  1158,   259,     7,     8,
  6431. !     92,    10,   232,   233,   234,     0,   235,    12,  1071,   260,
  6432.        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  6433. !      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
  6434. !     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
  6435. !      0,   245,   246,   247,   248,   249,    21,     0,    22,  1159,
  6436. !      0,  1160,     0,     0,     0,     0,     0,   250,     0,     0,
  6437. !    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
  6438. !    254,     0,     0,     0,     0,     0,   255,   256,   257,   196,
  6439. !      0,     0,     8,   258,    10,    11,     0,   259,     0,     0,
  6440. !     12,     0,     0,     0,     0,     0,     0,     0,     0,   260,
  6441. !      0,     0,     0,     0,     0,    15,     0,     0,     0,    16,
  6442. !      0,     0,     0,    17,     0,   197,   198,     0,     0,     0,
  6443. !      0,     0,   199,     0,     0,     0,     0,     0,     0,    21,
  6444. !      0,    93,     0,   200,     0,   201,   202,   203,     0,   204,
  6445. !    205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
  6446. !    215,   216,   217,   218,   219,   220,   221,     0,     0,   222,
  6447. !    223,   224,     0,   455,   225,     7,     8,   226,    10,   232,
  6448. !    233,   234,     0,   235,    12,     0,     0,     0,     0,     0,
  6449. !      0,     0,   227,     0,     0,     0,     0,     0,     0,    15,
  6450. !    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
  6451. !    241,     0,   242,    19,   243,   244,     0,     0,   245,   246,
  6452. !    247,   248,   249,    21,     0,    22,  -237,     0,     0,     0,
  6453. !      0,     0,     0,     0,   250,     0,     0,   251,     0,     0,
  6454. !      0,     0,     0,     0,     0,   252,   253,   254,     0,     0,
  6455. !      0,     0,     0,   255,   256,   257,     0,     0,     0,     0,
  6456. !    258,     0,     0,   587,   259,     7,     8,     0,    10,   437,
  6457. !    233,   234,     0,   235,    12,     0,   260,     0,     0,     0,
  6458.        0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
  6459. !    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
  6460. !    241,     0,   242,    19,   243,   244,     0,     0,   245,   246,
  6461. !    247,   248,   249,    21,     0,    22,   588,     0,     0,     0,
  6462. !      0,     0,     0,     0,   250,     0,     0,   251,     0,     0,
  6463. !      0,     0,     0,     0,     0,   252,   253,   254,     0,     0,
  6464. !      0,     0,     0,   255,   256,   257,     0,     0,     0,     0,
  6465. !    258,     0,     0,   455,   259,     7,     8,     0,    10,   232,
  6466. !    233,   234,     0,   235,    12,     0,   260,     0,     0,     0,
  6467.        0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
  6468. !    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
  6469. !    241,     0,   242,    19,   243,   244,     0,     0,   245,   246,
  6470. !    247,   248,   249,    21,     0,    22,  -237,     0,     0,     0,
  6471. !      0,     0,     0,     0,   250,     0,     0,  1177,     0,     0,
  6472. !      0,     0,     0,     0,     0,   252,   253,  1178,     0,     0,
  6473. !      0,     0,     0,   255,   256,   257,     0,     0,     0,     0,
  6474. !   1179,     0,     0,  1229,   259,     7,     8,     0,    10,   232,
  6475. !    233,   234,     0,   235,    12,     0,   260,     0,     0,     0,
  6476.        0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
  6477. !    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
  6478. !    241,     0,   242,    19,   243,   244,     0,     0,   245,   246,
  6479. !    247,   248,   249,    21,     0,    22,     0,     0,  -139,     0,
  6480. !      0,     0,     0,     0,   250,     0,     0,   251,     0,     0,
  6481. !      0,     0,     0,     0,     0,   252,   253,   254,     0,     0,
  6482. !      0,     0,     0,   255,   256,   257,     0,     0,     0,     0,
  6483. !    258,     0,     0,   721,   259,     7,     8,     0,    10,   437,
  6484. !    233,   234,     0,   235,    12,     0,   260,     0,     0,     0,
  6485. !      0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
  6486. !    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
  6487. !    241,     0,   242,    19,   243,   244,     0,     0,   245,   246,
  6488. !    247,   248,   249,    21,     0,    22,     0,     0,     0,     0,
  6489. !      0,     0,     0,     0,   250,     0,     0,   251,     0,     0,
  6490. !      0,     0,     0,     0,     0,   252,   253,   254,     0,     0,
  6491. !      0,     0,     0,   255,   256,   257,     0,     0,     0,     0,
  6492. !    258,     0,     0,     0,   259,     0,     0,     0,     0,     0,
  6493. !      0,     0,     0,     0,  -656,   800,   260,     7,     8,     0,
  6494. !     10,   437,   233,   234,     0,   235,    12,   475,   476,   477,
  6495. !    478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
  6496. !      0,    15,   236,   237,   238,    16,     0,   239,     0,    17,
  6497. !      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
  6498. !    245,   246,   247,   248,   249,    21,     0,    22,     0,     0,
  6499. !      0,     0,     0,     0,     0,     0,   250,     0,     0,   251,
  6500. !      0,     0,     0,     0,     0,     0,     0,   252,   253,   254,
  6501. !      0,     0,     0,     0,     0,   255,   256,   257,     0,     0,
  6502. !      0,     0,   258,     0,     0,   802,   259,     7,     8,     0,
  6503. !     10,   437,   233,   234,     0,   235,    12,     0,   260,     0,
  6504.        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  6505. !      0,    15,   236,   237,   238,    16,     0,   239,     0,    17,
  6506. !      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
  6507. !    245,   246,   247,   248,   249,    21,     0,    22,     0,     0,
  6508. !      0,     0,     0,     0,     0,     0,   250,     0,     0,   251,
  6509. !      0,     0,     0,     0,     0,     0,     0,   252,   253,   254,
  6510. !      0,     0,     0,     0,     0,   255,   256,   257,     0,     0,
  6511. !      0,     0,   258,     0,     7,     8,   259,    10,   437,   233,
  6512. !    234,     0,   235,    12,     0,     0,     0,     0,   260,     0,
  6513. !      0,     0,     0,     0,     0,     0,     0,     0,    15,   236,
  6514. !    237,   238,    16,     0,   239,     0,    17,     0,   240,   241,
  6515. !      0,   242,    19,   243,   244,     0,     0,   245,   246,   247,
  6516. !    248,   249,    21,     0,    22,     0,     0,     0,     0,     0,
  6517. !      0,     0,     0,   250,     0,     0,   251,     0,     0,     0,
  6518. !      0,     0,     0,     0,   252,   253,   254,     0,     0,     0,
  6519. !      0,     0,   255,   256,   257,     0,     0,     0,     0,   258,
  6520. !      0,     0,     0,   259,     0,     0,     0,     0,     0,     0,
  6521. !      0,     0,     0,     0,     0,   260,   760,   966,   967,    92,
  6522. !     10,   232,   233,   234,     0,   235,    12,   968,     0,   969,
  6523. !    970,   971,   972,   973,   974,   975,   976,   977,   978,    13,
  6524. !     14,    15,   236,   237,   238,    16,     0,   239,     0,    17,
  6525. !      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
  6526. !    245,   246,   247,   248,   249,    21,     0,   979,   347,     0,
  6527. !    980,     0,     0,     0,     0,     0,   250,     0,     0,   251,
  6528. !      0,     0,     0,     0,     0,     0,     0,   252,   253,   254,
  6529. !      0,     0,     0,     0,     0,   255,   256,   257,     0,     0,
  6530. !      0,     0,   258,     0,   981,     0,   259,     0,     0,     0,
  6531. !      0,     0,     0,     0,     0,     0,     0,  1110,   260,   966,
  6532. !    967,    92,    10,   232,   233,   234,     0,   235,    12,   968,
  6533. !      0,   969,   970,   971,   972,   973,   974,   975,   976,   977,
  6534. !    978,    13,    14,    15,   236,   237,   238,    16,     0,   239,
  6535. !      0,    17,     0,   240,   241,     0,   242,    19,   243,   244,
  6536. !      0,     0,   245,   246,   247,   248,   249,    21,     0,   979,
  6537. !    347,     0,   980,     0,     0,     0,     0,     0,   250,     0,
  6538. !      0,   251,     0,     0,     0,     0,     0,     0,     0,   252,
  6539. !    253,   254,     0,     0,     0,     0,     0,   255,   256,   257,
  6540. !      0,     0,     0,     0,   258,     0,   981,     0,   259,   966,
  6541. !    967,    92,    10,   232,   233,   234,     0,   235,    12,   968,
  6542. !    260,   969,   970,   971,   972,   973,   974,   975,   976,   977,
  6543. !    978,    13,    14,    15,   236,   237,   238,    16,     0,   239,
  6544. !      0,    17,     0,   240,   241,     0,   242,    19,   243,   244,
  6545. !      0,     0,   245,   246,   247,   248,   249,    21,     0,   979,
  6546. !   1270,     0,   980,     0,     0,     0,     0,     0,   250,     0,
  6547. !      0,   251,     0,     0,     0,     0,     0,     0,     0,   252,
  6548. !    253,   254,     0,     0,     0,     0,     0,   255,   256,   257,
  6549. !      0,     0,     0,     0,   258,     0,   981,     0,   259,   966,
  6550. !    967,    92,    10,   232,   233,   234,     0,   235,    12,   968,
  6551. !    260,   969,   970,   971,   972,   973,   974,   975,   976,   977,
  6552. !    978,    13,    14,    15,   236,   237,   238,    16,     0,   239,
  6553. !      0,    17,     0,   240,   241,     0,   242,    19,   243,   244,
  6554. !      0,     0,   245,   246,   247,   248,   249,    21,     0,   979,
  6555. !      0,     0,   980,     0,     0,     0,     0,     0,   250,     0,
  6556. !      0,   251,     0,     0,     0,     0,     0,     0,     0,   252,
  6557. !    253,   254,     0,     0,     0,     0,     0,   255,   256,   257,
  6558. !      0,     0,     0,     0,   258,     0,   981,     0,   259,     7,
  6559. !      8,    92,    10,   232,   233,   234,   354,   235,    12,     0,
  6560. !    260,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  6561. !      0,     0,     0,    15,   236,   237,   238,    16,     0,   239,
  6562. !      0,    17,     0,   240,   241,     0,   242,    19,   243,   244,
  6563. !    510,     0,   245,   246,   247,   248,   249,    21,     0,    22,
  6564. !      0,     0,     0,     0,     0,     0,     0,     0,   250,     0,
  6565. !      0,   786,     0,     0,     0,     0,     0,     0,     0,   252,
  6566. !    253,   787,     0,     0,     0,     0,     0,   255,   256,   257,
  6567. !      0,   513,     0,     0,   788,   515,     0,     0,   259,   355,
  6568. !      7,     8,    92,    10,   232,   233,   234,   354,   235,    12,
  6569. !    260,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  6570. !      0,     0,     0,     0,    15,   236,   237,   238,    16,     0,
  6571. !    239,     0,    17,     0,   240,   241,     0,   242,    19,   243,
  6572. !    244,   510,     0,   245,   246,   247,   248,   249,    21,     0,
  6573. !     22,     0,     0,     0,     0,     0,     0,     0,     0,   250,
  6574. !      0,     0,   845,     0,     0,     0,     0,     0,     0,     0,
  6575. !    252,   253,   846,     0,     0,     0,     0,     0,   255,   256,
  6576. !    257,     0,   513,     0,     0,   847,   515,     0,     0,   259,
  6577. !    355,     7,     8,     0,    10,   232,   233,   234,     0,   235,
  6578. !     12,   260,     0,     0,     0,     0,     0,     0,     0,     0,
  6579. !      0,     0,     0,     0,     0,    15,   236,   237,   238,    16,
  6580. !      0,   239,     0,    17,     0,   240,   241,     0,   242,    19,
  6581. !    243,   244,   510,     0,   245,   246,   247,   248,   249,    21,
  6582.        0,    22,     0,     0,     0,     0,     0,     0,     0,     0,
  6583. !    250,     0,     0,   786,     0,     0,     0,     0,     0,     0,
  6584. !      0,   252,   253,   787,     0,     0,     0,     0,     0,   255,
  6585. !    256,   257,     0,   513,     0,     0,   788,   515,     7,     8,
  6586. !      0,    10,   232,   233,   234,     0,   235,    12,     0,     0,
  6587. !      0,     0,   260,     0,     0,     0,     0,     0,     0,     0,
  6588. !      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
  6589. !     17,     0,   240,   241,     0,   242,    19,   243,   244,   510,
  6590. !      0,   245,   246,   247,   248,   249,    21,     0,    22,     0,
  6591. !      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
  6592. !    845,     0,     0,     0,     0,     0,     0,     0,   252,   253,
  6593. !    846,     0,     0,     0,     0,     0,   255,   256,   257,     0,
  6594. !    513,     0,     0,   847,   515,     7,     8,     0,    10,   232,
  6595. !    233,   234,     0,   235,    12,     0,     0,     0,     0,   260,
  6596.        0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
  6597. !    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
  6598. !    241,     0,   242,    19,   243,   244,   510,     0,   245,   246,
  6599. !    247,   248,   249,    21,     0,    22,     0,     0,     0,     0,
  6600. !      0,     0,     0,     0,   250,     0,     0,   940,     0,     0,
  6601. !      0,     0,     0,     0,     0,   252,   253,   941,     0,     0,
  6602. !      0,     0,     0,   255,   256,   257,     0,   513,     0,     0,
  6603. !    788,   515,     7,     8,     0,    10,   232,   233,   234,     0,
  6604. !    235,    12,     0,     0,     0,     0,   260,     0,     0,     0,
  6605. !      0,     0,     0,     0,     0,     0,    15,   236,   237,   238,
  6606. !     16,     0,   239,     0,    17,     0,   240,   241,     0,   242,
  6607. !     19,   243,   244,     0,     0,   245,   246,   247,   248,   249,
  6608.       21,     0,    22,     0,     0,     0,     0,     0,     0,     0,
  6609. !      0,   250,     0,     0,   251,     0,     0,     0,     0,   304,
  6610. !      0,     0,   252,   253,   254,     0,     0,     0,     0,     0,
  6611. !    255,   256,   257,     0,     0,     0,     0,   258,     0,     7,
  6612. !      8,   259,    10,   437,   233,   234,     0,   235,    12,     0,
  6613. !      0,     0,     0,   260,     0,     0,     0,     0,     0,     0,
  6614. !      0,     0,     0,    15,   236,   237,   238,    16,     0,   239,
  6615. !      0,    17,     0,   240,   241,     0,   242,    19,   243,   244,
  6616. !      0,     0,   245,   246,   247,   248,   249,    21,     0,    22,
  6617. !      0,     0,  1087,     0,     0,     0,     0,     0,   250,     0,
  6618. !      0,   251,     0,     0,     0,     0,     0,     0,     0,   252,
  6619. !    253,   254,     0,     0,     0,     0,     0,   255,   256,   257,
  6620. !      0,     0,     0,     0,   258,     0,     7,     8,   259,    10,
  6621. !    232,   233,   234,     0,   235,    12,     0,     0,     0,     0,
  6622. !    260,     0,     0,     0,     0,     0,     0,     0,     0,     0,
  6623. !     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
  6624. !    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
  6625. !    246,   247,   248,   249,    21,     0,    22,     0,     0,     0,
  6626. !      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
  6627. !      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
  6628. !      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
  6629. !      0,   258,     0,     7,     8,   259,    10,   437,   233,   234,
  6630. !      0,   235,    12,     0,     0,     0,     0,   260,     0,     0,
  6631. !      0,     0,     0,     0,     0,     0,     0,    15,   236,   237,
  6632. !    238,    16,     0,   239,     0,    17,     0,   240,   241,     0,
  6633. !    242,    19,   243,   244,     0,     0,   245,   246,   247,   248,
  6634. !    249,    21,     0,    22,   463,     0,     0,     0,     0,     0,
  6635. !      0,     0,   250,     0,     0,   251,     0,     0,     0,     0,
  6636. !      0,     0,     0,   252,   253,   254,     0,     0,     0,     0,
  6637. !      0,   255,   256,   257,     0,     0,     7,     8,   464,    10,
  6638. !    437,   233,   234,     0,   235,    12,     0,     0,     0,     0,
  6639. !      0,     0,     0,     0,   260,     0,     0,     0,     0,     0,
  6640. !     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
  6641. !    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
  6642. !    246,   247,   248,   249,    21,     0,    22,     0,     0,     0,
  6643. !      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
  6644. !      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
  6645. !      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
  6646. !      0,   258,   500,     7,     8,     0,    10,   437,   233,   234,
  6647. !      0,   235,    12,     0,     0,     0,     0,   260,     0,     0,
  6648. !      0,     0,     0,     0,     0,     0,     0,    15,   236,   237,
  6649. !    238,    16,     0,   239,     0,    17,     0,   240,   241,     0,
  6650. !    242,    19,   243,   244,     0,     0,   245,   246,   247,   248,
  6651. !    249,    21,     0,    22,     0,     0,     0,     0,     0,     0,
  6652. !      0,     0,   250,     0,     0,   251,     0,     0,     0,     0,
  6653. !      0,     0,     0,   252,   253,   254,     0,     0,     0,     0,
  6654. !      0,   255,   256,   257,     0,     0,     0,     0,   258,     0,
  6655. !      7,   697,   259,    10,   437,   233,   234,     0,   235,    12,
  6656. !      0,     0,     0,     0,   260,     0,     0,     0,     0,     0,
  6657. !      0,     0,     0,     0,    15,   236,   237,   238,    16,     0,
  6658. !    239,     0,    17,     0,   240,   241,     0,   242,    19,   243,
  6659. !    244,     0,     0,   245,   246,   247,   248,   249,    21,     0,
  6660. !     22,     0,     0,     0,     0,     0,     0,     0,     0,   250,
  6661. !      0,     0,   251,     0,     0,     0,     0,     0,     0,     0,
  6662. !    252,   253,   254,     0,     0,     0,     0,     0,   255,   256,
  6663. !    257,     0,     0,     0,     0,   258,     0,     7,     8,   259,
  6664. !     10,   437,   233,   234,     0,   235,    12,     0,     0,     0,
  6665. !      0,   260,     0,     0,     0,     0,     0,     0,     0,     0,
  6666. !      0,    15,   236,   237,   238,    16,     0,   239,     0,    17,
  6667. !      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
  6668. !    245,   246,   247,   248,   249,    21,     0,    22,     0,     0,
  6669. !      0,     0,     0,     0,     0,     0,   250,     0,     0,   890,
  6670. !      0,     0,     0,     0,     0,     0,     0,   252,   253,   891,
  6671. !      0,     0,     0,     0,     0,   255,   256,   257,     0,     0,
  6672. !      0,     0,   258,     0,     7,     8,   259,    10,   437,   233,
  6673. !    234,     0,   235,    12,     0,     0,     0,     0,   260,     0,
  6674. !      0,     0,     0,     0,     0,     0,     0,     0,    15,   236,
  6675. !    237,   238,    16,     0,   239,     0,    17,     0,   240,   241,
  6676. !      0,   242,    19,   243,   244,     0,     0,   245,   246,   247,
  6677. !    248,   249,    21,     0,    22,     0,     0,     0,     0,     0,
  6678. !      0,     0,     0,   250,     0,     0,  1177,     0,     0,     0,
  6679. !      0,     0,     0,     0,   252,   253,  1178,     0,     0,     0,
  6680. !      0,     0,   255,   256,   257,     0,     0,     0,     0,  1179,
  6681. !      0,  1242,     8,   259,    10,   437,   233,   234,     0,   235,
  6682. !     12,     0,     0,     0,     0,   260,     0,     0,     0,     0,
  6683. !      0,     0,     0,     0,     0,    15,   236,   237,   238,    16,
  6684. !      0,   239,     0,    17,     0,   240,   241,     0,   242,    19,
  6685. !    243,   244,     0,     0,   245,   246,   247,   248,   249,    21,
  6686. !      0,    22,     0,     0,     0,     0,     0,     0,     0,     0,
  6687. !    250,     0,     0,   251,     0,     0,     0,     0,     0,     0,
  6688. !      0,   252,   253,   254,     0,     0,     0,     0,     0,   255,
  6689. !    256,   257,     0,     0,     0,     0,   258,     0,     7,     8,
  6690. !    259,    10,   437,   233,   234,     0,   235,    12,     0,     0,
  6691. !      0,     0,   260,     0,     0,     0,     0,     0,     0,     0,
  6692. !      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
  6693. !     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
  6694. !      0,   245,   246,   247,   248,   249,    21,     0,    22,     0,
  6695. !      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
  6696. !    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
  6697. !    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
  6698. !      0,     7,     8,   258,    10,   437,   233,   234,     0,   235,
  6699. !     12,     0,     0,     0,     0,     0,     0,     0,     0,   260,
  6700. !      0,     0,     0,     0,     0,    15,   236,   237,   238,    16,
  6701. !      0,   239,     0,    17,     0,   240,   241,     0,   242,    19,
  6702. !    243,   244,     0,     0,   245,   246,   247,   248,   249,    21,
  6703. !      0,    22,     0,     0,     0,     0,     0,     0,     0,     0,
  6704. !    250,     0,     0,   890,     0,     0,     0,     0,     0,     0,
  6705. !      0,   252,   253,   891,     0,     0,     0,     0,     0,   255,
  6706. !    256,   257,     0,     0,     7,     8,   258,    10,   232,   233,
  6707. !    234,     0,   235,    12,     0,     0,     0,     0,     0,     0,
  6708. !      0,     0,   260,     0,     0,     0,     0,     0,    15,   236,
  6709. !    237,   238,    16,     0,   239,     0,    17,     0,   240,   241,
  6710. !      0,   242,    19,   243,   244,     0,     0,   245,   246,   247,
  6711. !    248,   249,    21,     0,    22,     0,     0,     0,     0,     0,
  6712. !      0,     0,     0,   250,     0,     0,  1177,     0,     0,     0,
  6713. !      0,     0,     0,     0,   252,   253,  1178,     0,     0,     0,
  6714. !      0,     0,   255,   256,   257,     0,     0,     7,     8,  1179,
  6715. !     10,   437,   233,   234,     0,   235,    12,     0,     0,     0,
  6716. !      0,     0,     0,     0,     0,   260,     0,     0,     0,     0,
  6717. !      0,    15,   236,     0,     0,    16,     0,   239,     0,    17,
  6718. !      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
  6719. !    245,   246,   247,   248,   249,    21,     0,    22,     0,     0,
  6720. !      0,     0,     0,     0,     0,     0,   250,     0,     0,   251,
  6721. !      0,     0,     0,     0,     0,     0,     0,   252,   253,   254,
  6722. !      0,     0,     0,     0,     0,   255,   256,   257,     0,     0,
  6723. !      7,     8,   441,    10,   437,   233,   234,     0,   235,    12,
  6724. !      0,     0,     0,     0,     0,     0,     0,     0,   260,     0,
  6725. !      0,     0,     0,     0,    15,   236,   237,   238,    16,     0,
  6726. !    239,     0,    17,     0,   240,   241,     0,   242,    19,   243,
  6727. !    244,     0,     0,   245,   246,   247,   248,   249,    21,     0,
  6728. !     22,     0,     7,     8,   158,   159,   160,     0,     0,     0,
  6729. !      0,    12,     0,     0,     0,     0,     0,     7,     8,   151,
  6730. !     10,   152,     0,     0,     0,     0,    12,     0,   255,   256,
  6731. !    257,     0,     0,     0,    17,   258,     0,     0,     0,   259,
  6732. !     19,    15,     0,   510,     0,    16,     0,     0,     0,    17,
  6733. !     21,   260,    22,     0,     0,    19,     0,     0,     0,     0,
  6734. !      0,     0,     0,     0,   603,    21,     0,    22,     0,     0,
  6735. !    153,     0,     0,     0,   604,     0,     0,     0,     0,    24,
  6736. !      0,     0,    26,     0,   513,     0,     0,   605,   515,    25,
  6737. !      0,     7,     8,    92,    10,    11,     0,    26,   618,     0,
  6738. !     12,     0,    27,     0,     0,     0,     0,     0,   655,     8,
  6739. !    151,    10,   152,     0,     0,    15,     0,    12,     0,    16,
  6740. !      0,     0,     0,    17,     0,     0,     0,     0,     0,    19,
  6741. !      0,     0,    15,     0,     0,     0,    16,     0,     0,    21,
  6742. !     17,    22,     0,     0,     0,     0,    19,     0,     0,     0,
  6743. !      0,     0,     0,    24,     0,     0,    21,     0,    22,     0,
  6744. !      0,     0,     0,    25,     0,   658,     0,     0,     0,     0,
  6745. !     24,    26,     0,     0,     0,     0,    27,     0,     0,     0,
  6746. !     25,     7,     8,   151,    10,   152,     0,     0,    26,     0,
  6747. !     12,     0,     0,    27,     0,     0,     0,     0,     7,     8,
  6748. !    151,    10,   152,     0,     0,    15,     0,    12,     0,    16,
  6749. !      0,     0,     0,    17,     0,     0,     0,     0,     0,    19,
  6750. !      0,     0,    15,     0,     0,     0,    16,     0,     0,    21,
  6751. !     17,    22,     0,     0,  1099,     0,    19,     0,     0,     0,
  6752. !      0,     0,     8,    24,    10,   184,    21,     0,    22,     0,
  6753. !     12,     0,     0,    25,     0,     0,     0,     0,     0,     0,
  6754. !     24,    26,     0,     0,     0,    15,    27,     0,     0,    16,
  6755. !     25,     0,     0,    17,     0,     0,     0,     0,    26,     0,
  6756. !      0,     0,   510,    27,     0,     0,     0,     0,     0,    21,
  6757. !      0,    93,     0,     0,     0,     0,     0,     0,     0,     0,
  6758. !    466,   467,   468,   511,   469,   470,   471,   472,   473,   474,
  6759. !    475,   476,   477,   512,   479,   480,   481,   482,   483,   484,
  6760. !    485,   486,   487,   513,     0,     0,   514,   515,   466,   467,
  6761. !    468,     0,   469,   470,   471,   472,   473,   474,   475,   476,
  6762. !    477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
  6763. !    487,   543,   682,   466,   467,   468,     0,   469,   470,   471,
  6764. !    472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
  6765. !    482,   483,   484,   485,   486,   487,  1040,   466,   467,   468,
  6766. !      0,   469,   470,   471,   472,   473,   474,   475,   476,   477,
  6767.      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
  6768. !    466,   467,   468,  1204,   469,   470,   471,   472,   473,   474,
  6769.      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
  6770. !    485,   486,   487,   466,   467,   468,  1253,   469,   470,   471,
  6771. !    472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
  6772. !    482,   483,   484,   485,   486,   487,   466,   467,   468,     0,
  6773. !    469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
  6774. !    479,   480,   481,   482,   483,   484,   485,   486,   487,   468,
  6775. !      0,   469,   470,   471,   472,   473,   474,   475,   476,   477,
  6776. !    478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
  6777. !    470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
  6778. !    480,   481,   482,   483,   484,   485,   486,   487,   472,   473,
  6779.      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
  6780. !    484,   485,   486,   487,   473,   474,   475,   476,   477,   478,
  6781. !    479,   480,   481,   482,   483,   484,   485,   486,   487
  6782.   };
  6783.   
  6784.   static const short yycheck[] = {     4,
  6785. !      4,   188,   265,   136,   416,   284,   117,    12,   108,   109,
  6786. !      4,   339,    12,   299,     4,    20,    20,   389,   388,    24,
  6787. !     25,    52,    27,   284,   131,   347,   749,    71,    33,    33,
  6788. !     20,    20,   154,   161,   162,   130,   131,   134,   129,    44,
  6789. !    299,    46,   816,    33,   136,   988,  1155,    52,  1047,   181,
  6790. !   1183,   299,    52,    34,    59,   988,     9,     1,     9,     4,
  6791. !      9,    48,   995,    55,    88,    70,    71,   278,  1216,    70,
  6792. !     34,   154,    77,    77,    10,     3,     4,    44,  1226,   407,
  6793. !      7,    10,    87,    55,    55,    56,    87,    77,    77,    36,
  6794. !     95,    96,     4,    98,     3,     4,   101,    98,    70,   104,
  6795. !    105,    36,   185,   108,   109,    51,     4,    60,    53,   368,
  6796. !     54,   103,     4,  1246,   119,   119,   121,   122,    44,    55,
  6797. !    368,    62,   103,    69,    60,    53,    55,    54,    95,   119,
  6798. !     75,    60,   136,    60,   139,   140,   141,    12,  1247,   103,
  6799. !     56,    53,     4,   515,    53,  1144,  1279,    75,  1296,   102,
  6800. !    337,   102,   363,   102,   121,    53,   103,    93,    76,    51,
  6801. !    165,    53,    88,     4,    93,    92,   102,   154,   103,   301,
  6802. !     88,    89,     4,    65,   161,   162,   102,    52,   183,   183,
  6803. !    954,    99,  1163,    75,   125,    27,    44,   103,   193,   286,
  6804. !    913,    53,    44,   183,   188,    60,    51,    89,   185,    56,
  6805. !     58,   142,     0,    44,    69,    60,    58,   299,    55,    54,
  6806. !     51,   398,    53,    75,    69,    60,   157,    44,   136,  1328,
  6807. !   1329,    53,    56,    70,    65,   230,   231,   271,  1209,   440,
  6808. !     88,    89,   107,  1166,    75,     0,    88,   344,   345,     6,
  6809. !      7,    55,   229,    75,    85,    12,   103,    88,    89,   344,
  6810. !    345,   346,   343,   532,     4,   388,     3,     4,    88,    89,
  6811. !     60,    88,    89,    66,   392,   393,   271,   109,    35,   103,
  6812. !    275,   393,   277,   278,   279,   102,   368,    44,   378,   379,
  6813. !    285,     4,    85,   284,     7,    56,    56,    44,   102,   659,
  6814. !   1223,   278,   420,    56,   299,   299,   388,    44,    51,   141,
  6815. !    103,    23,   102,    53,    51,    60,    53,  1250,   313,    44,
  6816. !    985,   316,   987,    56,  1257,   320,    69,  1250,   285,   324,
  6817. !    324,    88,   650,    55,  1257,    75,    97,  1050,    51,    92,
  6818. !     53,    88,    89,   103,   324,   324,    55,    10,    60,    88,
  6819. !    258,    88,    65,   337,    45,   102,   149,   102,  1281,   102,
  6820. !     56,    56,    75,    88,     4,   360,   361,   362,   363,   364,
  6821. !    103,    56,   457,   368,   368,    60,    89,     3,  1311,   374,
  6822. !    102,   376,    56,   378,   379,   250,   363,   136,  1311,   566,
  6823. !    385,   299,    55,   102,   388,    58,   391,    60,   329,   394,
  6824. !    384,     4,   195,   360,     7,   362,   363,   103,   103,     3,
  6825. !      4,    51,   407,    53,   398,   392,   393,    55,   413,   414,
  6826. !      1,   416,   416,   785,   784,    65,   421,    55,    56,   103,
  6827. !     93,    54,   514,    69,    44,    75,   416,    60,   258,   521,
  6828. !     44,    44,    23,   420,    25,    26,    88,    41,    51,    44,
  6829. !     53,    32,   447,   448,   449,   450,   413,    55,    56,    53,
  6830. !    368,    44,    65,   497,   102,    44,   643,    27,    44,    92,
  6831. !     54,   402,    75,    54,    55,    56,    60,    58,    88,    60,
  6832. !    388,    75,    85,    55,    88,    88,    89,    44,   419,    83,
  6833. !    283,    44,    54,    88,    89,   592,     3,     4,    70,   676,
  6834. !     56,   819,   497,    51,   499,    88,    89,   592,    92,    88,
  6835. !     89,    92,    88,   421,   307,    44,   511,   512,     4,   514,
  6836. !    514,     7,   640,   605,    56,   794,   521,   521,   804,   611,
  6837. !    438,    88,   553,   441,    41,    88,   659,   790,   446,   447,
  6838. !    448,   449,   450,   794,   862,    60,    53,   379,   108,   109,
  6839. !     44,    54,   460,   373,    69,   804,   464,   552,   553,    88,
  6840. !     92,   923,    44,   553,    58,    51,   804,    53,    75,     3,
  6841. !      4,    44,     6,   103,   385,   552,    83,   659,    54,    65,
  6842. !    681,   141,   566,   394,    55,    25,    26,    58,   496,    75,
  6843. !    102,     3,     4,   342,    88,   552,     3,     4,   463,    70,
  6844. !     55,    56,     3,     4,     3,     4,    88,    41,   603,   604,
  6845. !    605,   605,   102,    51,    54,    88,   611,   611,   438,    53,
  6846. !     60,   441,    60,   443,   444,   102,   446,    51,  1030,    41,
  6847. !    102,    69,   627,   628,    41,   630,    60,    25,    26,   388,
  6848. !    433,    53,    41,    37,   464,    69,    53,     9,   468,    83,
  6849. !     51,   102,    53,    54,    53,   650,    54,    51,    56,   643,
  6850. !    972,   784,    60,   640,   659,   659,    54,   103,    75,     6,
  6851. !      7,    83,    60,    92,   494,    12,    83,     4,     3,     6,
  6852. !    500,    97,    27,   678,    83,    12,    60,   436,   553,   521,
  6853. !     25,    26,   676,   688,   689,   690,   873,   874,    35,   876,
  6854. !     27,   678,   784,   105,    31,    88,   788,    89,    35,   136,
  6855. !      3,     4,     5,     6,     7,   105,   509,   918,     5,     6,
  6856. !      7,    51,   804,   588,    51,    12,    53,    78,    79,   660,
  6857. !     60,   524,    55,    56,   665,   666,    55,    56,   669,    69,
  6858. !    919,   920,    35,   922,   493,    89,   495,   496,    35,   839,
  6859. !    840,   659,    60,   748,    88,   845,   846,    88,    51,    88,
  6860. !     53,    54,    88,   108,   109,   847,  1078,  1079,    69,    54,
  6861. !     69,    56,   521,   605,   769,    60,   771,    69,   527,   611,
  6862. !   1092,    69,    54,   778,    56,     9,   987,   782,    60,   784,
  6863. !    784,   786,   787,   788,   788,   102,   141,   103,    23,   794,
  6864. !   1112,  1113,    55,   794,   102,    98,    99,   100,   102,   804,
  6865. !    804,   806,   102,     3,     4,     5,     6,     7,   378,   379,
  6866. !      3,     3,     4,   103,   688,   689,   690,   659,    54,    54,
  6867. !     58,    56,   581,    58,     7,    60,    55,    56,    55,    56,
  6868. !    748,   102,   837,   838,   839,   840,   102,  1159,   102,   844,
  6869. !    845,   846,   847,   847,    58,    37,    38,  1328,  1329,    41,
  6870. !    105,   693,   611,    53,   102,     4,   105,   862,    88,    51,
  6871. !    778,    53,    32,    12,   235,   236,   784,   872,  1290,  1291,
  6872. !    875,    20,   877,   877,   879,    24,    25,   105,    27,   873,
  6873. !    874,   105,   876,   102,    33,   102,   804,   877,    75,    76,
  6874. !     77,    78,    79,     4,   102,    44,     7,    46,    51,    25,
  6875. !     26,     6,   105,    52,    88,   342,    32,    44,    58,    55,
  6876. !     59,     5,     6,     7,   919,   920,    58,   922,    12,    58,
  6877. !     56,    56,    71,    56,    56,    56,   756,   868,    77,    55,
  6878. !     56,    55,    58,    44,   693,   940,   941,   102,  1125,  1126,
  6879. !     51,    35,    53,   861,    58,   787,    95,    96,   953,   953,
  6880. !    102,   388,   101,    55,    65,   830,   105,   102,   788,   108,
  6881. !    109,   879,   102,   953,    75,     3,     4,   105,    88,     7,
  6882. !    119,    60,   121,   122,    85,    55,    55,    88,    89,    60,
  6883. !    985,   986,   987,    58,    88,  1080,   102,   102,    70,  1176,
  6884. !    139,   140,   141,   752,   999,  1000,   102,  1002,   840,   436,
  6885. !    987,   102,   102,    41,   846,   847,   765,   102,   767,  1220,
  6886. !    102,    70,    70,    51,    70,    53,   165,   847,   985,   102,
  6887. !    987,    60,    55,   378,   379,  1030,  1030,    65,    60,   102,
  6888. !    905,   861,    60,   102,   183,   605,   102,    75,   105,   842,
  6889. !   1030,   611,   103,    89,   193,    83,    83,   102,   105,   891,
  6890. !     88,    44,   102,   102,     3,     4,   493,   105,   495,   496,
  6891. !   1171,   105,   821,   103,   823,    34,   825,   102,     4,     5,
  6892. !      6,     7,  1331,   102,    10,   102,    12,  1177,  1178,   102,
  6893. !    102,   230,   231,  1331,  1025,  1026,   961,    58,  1183,   659,
  6894. !    527,    27,    41,  1280,    58,    31,   102,  1102,    88,    35,
  6895. !     88,    88,    51,   978,    53,     7,    88,    56,    10,    88,
  6896. !    105,   103,     6,   102,   105,    51,    65,    53,   102,   102,
  6897. !     60,   102,   271,   103,   102,   102,    75,   102,   277,   278,
  6898. !    279,  1125,  1126,    88,    83,   284,   285,   102,    60,    88,
  6899. !     56,   944,    44,    56,   581,     7,    54,   977,    14,    56,
  6900. !    299,  1246,    58,    55,   102,   102,    58,    93,    60,  1034,
  6901. !   1101,   341,    60,    60,   313,    44,   105,   316,    70,    88,
  6902. !     56,   320,  1177,  1178,  1179,   324,    56,    88,    88,  1173,
  6903. !   1121,    58,  1176,    58,  1279,   102,    88,    89,   102,    15,
  6904. !    339,    93,    56,   105,     4,     5,    56,  1072,   102,   102,
  6905. !    102,    56,   103,   102,    56,    56,  1036,  1037,  1038,  1039,
  6906. !    102,   360,   361,   362,   363,   364,  1221,    58,  1048,   368,
  6907. !     58,    31,     9,    56,   102,   374,    36,   376,   102,   378,
  6908. !    379,    56,    56,  1220,    88,    55,   385,  1332,    56,  1331,
  6909. !     88,    51,   391,    53,   102,   394,     4,     5,    91,   102,
  6910. !    605,  1081,   102,   102,  1221,    58,   611,   102,   407,  1089,
  6911. !   1102,  1179,     9,    56,   413,   414,     1,   416,   102,   839,
  6912. !    840,   102,   421,    31,    56,   845,   846,   847,    36,     9,
  6913. !      0,     0,   118,   326,     2,     1,  1280,   119,    23,   804,
  6914. !     25,    26,   119,    51,   129,    53,   819,    32,   447,   448,
  6915. !    449,   450,    99,   460,   659,  1144,  1154,    23,  1185,    25,
  6916. !     26,  1252,   509,  1081,   986,   752,    32,   684,  1197,    54,
  6917. !     55,    56,  1197,    58,   799,    60,  1331,  1331,   765,   588,
  6918. !    767,    33,    33,  1163,   862,   650,  1178,  1179,    54,    55,
  6919. !     56,   809,    58,  1102,    60,   877,   953,    12,   497,  1179,
  6920. !    499,     4,   414,   497,  1184,  1185,   875,    92,     4,     5,
  6921. !      6,     7,   511,   512,    10,   514,    12,    20,   540,   797,
  6922. !   1270,   833,   521,  1304,  1306,    -1,    92,    44,   879,  1209,
  6923. !     33,    27,   368,   532,   821,    31,   823,    -1,   825,    35,
  6924. !     -1,     3,     4,    46,    71,    72,    73,    74,    75,    76,
  6925. !     77,    78,    79,   552,   553,    51,    59,    53,    -1,    -1,
  6926. !     -1,    -1,    -1,  1331,    81,    82,    -1,    -1,    71,    86,
  6927. !     87,    88,    89,    76,    77,    -1,    -1,    -1,    -1,    41,
  6928. !     -1,    -1,    44,    -1,    -1,    88,    89,    -1,    -1,    51,
  6929. !   1199,    53,   622,    96,  1274,    -1,    99,    -1,    60,    -1,
  6930. !     -1,    -1,    -1,    65,   603,   604,   605,    -1,    -1,    -1,
  6931. !   1290,  1291,   611,    75,    -1,    -1,   119,    -1,    -1,   122,
  6932. !     -1,    83,    -1,  1303,    -1,    -1,    88,    -1,   627,   628,
  6933. !     -1,   630,    -1,   136,   839,   840,    -1,    -1,    -1,    -1,
  6934. !    845,   846,   847,    -1,    -1,    -1,     4,     5,     6,     7,
  6935. !     -1,   650,    -1,    -1,    12,    -1,  1265,    -1,     3,     4,
  6936. !    659,    -1,     7,   139,   140,   141,    71,    -1,    -1,    27,
  6937. !     -1,    76,    -1,    31,    -1,    -1,    -1,    35,    -1,   678,
  6938. !    183,    -1,  1102,    88,    89,    -1,    -1,    -1,    -1,   688,
  6939. !    689,   690,    -1,    51,    99,    53,    41,    -1,    -1,    44,
  6940. !     -1,    -1,    -1,    -1,    -1,    -1,    51,    -1,    53,    -1,
  6941. !     -1,    69,    -1,    -1,    -1,    -1,   251,    24,    25,   254,
  6942. !     65,   751,   257,    -1,    -1,    -1,    -1,   230,   263,    -1,
  6943. !     75,   136,    -1,    -1,    -1,    -1,    -1,   272,    83,    -1,
  6944. !     85,    -1,    -1,    88,    89,    -1,    -1,    -1,    -1,   748,
  6945. !     -1,    -1,    -1,    -1,    -1,   258,    -1,  1177,  1178,  1179,
  6946. !     -1,    -1,    -1,     4,    71,     6,     7,    -1,   271,    76,
  6947. !    769,    12,   771,    -1,    -1,    -1,   279,    -1,   808,   778,
  6948. !     -1,    88,    89,   782,    -1,   784,    27,   786,   787,   788,
  6949. !     31,    -1,    99,    -1,    35,   794,   299,    -1,    -1,    -1,
  6950. !     -1,   108,   109,    -1,    -1,   804,    -1,   806,    -1,    -1,
  6951. !     51,    -1,    53,    -1,    -1,    -1,    -1,    -1,   577,    -1,
  6952. !    819,   324,   852,    -1,    -1,    -1,    -1,    -1,    -1,   136,
  6953. !     -1,    -1,   139,   140,    -1,    -1,    -1,    -1,   837,   838,
  6954. !    839,   840,    -1,    -1,    -1,   844,   845,   846,   847,    -1,
  6955. !     -1,    -1,    -1,   258,    -1,    -1,    -1,    -1,   361,    -1,
  6956. !     -1,   364,    -1,   862,    -1,   368,   271,    -1,    -1,    -1,
  6957. !     -1,    -1,   631,   872,   904,   905,   875,    -1,   877,    -1,
  6958. !    879,    -1,    -1,   642,    -1,   388,    73,    74,    75,    76,
  6959. !     77,    78,    79,    -1,   299,    -1,    -1,  1102,   374,    -1,
  6960. !    376,    69,   378,   379,    -1,    -1,    -1,    -1,    -1,    -1,
  6961. !    445,   414,  1199,   416,    -1,   391,    -1,    -1,   421,    -1,
  6962. !    919,   920,    -1,   922,    -1,    -1,    -1,     3,     4,    -1,
  6963. !     -1,   961,    -1,    -1,    -1,   438,    -1,   413,   441,    -1,
  6964. !     -1,   940,   941,   446,   447,   448,   449,   450,   116,    -1,
  6965. !     -1,   258,    -1,    -1,   953,    -1,    -1,   460,    -1,    -1,
  6966. !     -1,   464,    -1,   368,   271,    41,    -1,   135,    44,    -1,
  6967. !     -1,    -1,  1177,  1178,  1179,    51,    -1,    53,  1265,    -1,
  6968. !     -1,    -1,   150,   388,    -1,    -1,   985,   986,   987,    65,
  6969. !     -1,    -1,   299,   496,   497,    -1,    -1,    -1,    -1,    75,
  6970. !    999,  1000,    -1,  1002,    -1,  1035,    -1,    83,    -1,    85,
  6971. !   1040,   514,    88,    89,    -1,    -1,   421,    -1,   521,    -1,
  6972. !     -1,    -1,    -1,    -1,     1,    -1,     3,     4,     5,     6,
  6973. !      7,  1030,    -1,   438,    -1,    12,   441,    -1,    -1,    -1,
  6974. !     -1,   446,   447,   448,   449,   450,    -1,    -1,    25,    26,
  6975. !     27,    -1,   811,    -1,    31,   460,    -1,    -1,    35,   464,
  6976. !     -1,   368,    39,    -1,    41,    -1,    -1,    -1,    45,    -1,
  6977. !     -1,   378,   379,    -1,    51,    -1,    53,    -1,    -1,    56,
  6978. !     -1,   388,    -1,    -1,  1114,  1115,    -1,    -1,    65,    -1,
  6979. !     -1,   496,   497,    -1,    -1,    -1,    -1,    -1,    75,    -1,
  6980. !     -1,   860,   605,  1102,    -1,    -1,    83,    -1,   611,   514,
  6981. !    869,    88,    -1,  1143,   421,    -1,   521,    94,    95,   878,
  6982. !     -1,    -1,    -1,     3,     4,    -1,    -1,   603,   604,   605,
  6983. !     -1,   438,    -1,    -1,   441,   611,    -1,    -1,    -1,   446,
  6984. !    447,   448,   449,   450,    -1,    -1,    -1,    -1,    10,    -1,
  6985. !     -1,   627,   628,   460,   630,    -1,   659,   464,  1188,    -1,
  6986. !     -1,    41,    -1,    25,    26,  1195,  1196,    -1,    -1,    -1,
  6987. !     32,    51,    -1,    53,  1204,    -1,    56,    -1,  1177,  1178,
  6988. !   1179,    -1,    44,   659,    -1,    65,    -1,    -1,    -1,   496,
  6989. !    497,    -1,    -1,    55,    56,    75,    58,    -1,    60,     4,
  6990. !    605,    -1,     7,    83,   511,   512,   611,   514,    88,    -1,
  6991. !     -1,    -1,    -1,   381,   521,    -1,    -1,    -1,    -1,   387,
  6992. !     -1,    -1,  1221,    -1,    -1,   760,    88,    89,    -1,    -1,
  6993. !     92,    93,    -1,  1263,  1264,    -1,    -1,    -1,    -1,    44,
  6994. !    102,    -1,    -1,    -1,    -1,   748,    51,    -1,    53,   752,
  6995. !     -1,   786,   787,    -1,   659,  1014,  1015,    -1,    -1,    -1,
  6996. !     65,    -1,    -1,   431,   432,    -1,   434,    -1,  1027,  1028,
  6997. !     75,    -1,    -1,    -1,    -1,   778,    -1,    -1,    -1,    -1,
  6998. !     85,   784,    -1,    88,    89,   788,     4,     5,     6,     7,
  6999. !     -1,    -1,    -1,    -1,    12,    -1,   603,   604,   605,    -1,
  7000. !   1330,   804,    -1,   806,   611,    -1,    -1,    -1,    -1,    27,
  7001. !    845,   846,    -1,    31,    -1,    -1,    -1,    35,    -1,    -1,
  7002. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   832,
  7003. !     -1,    -1,  1331,    51,    -1,    53,    -1,    -1,   277,   278,
  7004. !    279,    -1,    -1,   748,   847,    -1,    -1,    -1,    -1,   517,
  7005. !    518,    -1,   659,    -1,   522,   890,   891,    -1,   861,    -1,
  7006. !     -1,   837,   838,   839,   840,  1124,     3,     4,   844,   845,
  7007. !    846,   847,    -1,   778,   877,    -1,   879,    -1,    -1,   784,
  7008. !     -1,    -1,    -1,   788,    -1,    -1,    -1,    -1,    -1,    -1,
  7009. !    925,    -1,    -1,    -1,    -1,    -1,   872,    -1,    -1,   804,
  7010. !     -1,    -1,    -1,    -1,    41,   940,   941,    -1,    -1,    -1,
  7011. !     -1,    -1,    -1,    -1,    51,    -1,    53,    -1,    -1,    -1,
  7012. !     -1,   360,    -1,   362,   363,   364,    -1,    -1,    65,   597,
  7013. !    598,  1190,  1191,    -1,  1193,  1194,    -1,    -1,    75,   607,
  7014. !     -1,   748,   847,    -1,    -1,   613,    83,    -1,    -1,    -1,
  7015. !    953,    88,    -1,    -1,    -1,    -1,   861,    -1,    -1,    -1,
  7016. !     -1,     1,    -1,     3,     4,     5,     6,     7,    -1,    -1,
  7017. !     -1,   778,    12,    -1,   879,    -1,    -1,   784,    -1,   786,
  7018. !    787,   788,    -1,   986,    -1,   988,    -1,    27,    -1,   657,
  7019. !     -1,    31,   995,    -1,    -1,    35,    36,   804,    -1,     3,
  7020. !      4,    41,    -1,     7,    -1,    -1,    -1,    -1,     3,     4,
  7021. !     -1,    51,     7,    53,    -1,    -1,    56,    -1,    -1,    -1,
  7022. !     60,    -1,    -1,   999,  1000,    65,  1002,  1030,    -1,    -1,
  7023. !     -1,    -1,   839,   840,    76,    75,    -1,    41,   845,   846,
  7024. !    847,  1300,    -1,    83,    -1,    -1,    41,    51,    88,    53,
  7025. !     -1,    -1,    -1,    -1,   861,    -1,    51,    99,    53,    -1,
  7026. !     -1,    65,    -1,   103,    -1,    -1,    -1,    -1,     3,     4,
  7027. !     65,    75,   879,   512,    -1,   514,    -1,    -1,  1081,    83,
  7028. !     75,    -1,   521,    -1,    88,    -1,   754,   755,    83,   757,
  7029. !     -1,    -1,    -1,    88,   136,    -1,    -1,     1,    -1,     3,
  7030. !      4,     5,     6,     7,    -1,    -1,    41,    -1,    12,    -1,
  7031. !     -1,    -1,    -1,   552,    -1,   783,    51,    -1,    53,    -1,
  7032. !     -1,    -1,    -1,    27,    -1,    60,  1102,    31,    -1,    -1,
  7033. !     65,    35,    36,   940,   941,    -1,    -1,    41,    -1,    -1,
  7034. !     75,    -1,  1177,  1178,    -1,    -1,    -1,    51,    83,    53,
  7035. !     -1,    -1,  1155,    88,    -1,    -1,    60,    -1,    -1,    -1,
  7036. !   1163,    65,    -1,  1166,    -1,   604,   605,    -1,    -1,    -1,
  7037. !     -1,    75,   611,    -1,    -1,   843,  1179,    -1,    -1,    83,
  7038. !     -1,  1184,  1185,    -1,    88,    -1,    -1,   855,   856,   857,
  7039. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   103,
  7040. !     -1,  1177,  1178,  1179,    -1,    -1,  1209,    -1,    -1,    -1,
  7041. !     -1,    -1,    -1,  1216,    -1,    -1,    -1,   259,    -1,    -1,
  7042. !   1223,    -1,     4,  1226,     6,     7,    -1,    -1,    -1,    -1,
  7043. !     12,    -1,    -1,    -1,     3,     4,     5,     6,     7,   678,
  7044. !     -1,    -1,    -1,    12,  1247,    27,    -1,  1250,    -1,    31,
  7045. !     -1,    -1,    -1,    35,  1257,    -1,    -1,     1,  1163,     3,
  7046. !      4,     5,     6,     7,    -1,   933,    35,    -1,    12,    51,
  7047. !     -1,    53,    41,    -1,  1179,    44,    -1,    -1,  1281,  1184,
  7048. !   1185,    -1,    51,    27,    53,    -1,    -1,    31,    -1,    -1,
  7049. !     -1,    35,    36,  1296,    -1,    -1,    65,    41,    -1,   341,
  7050. !    342,    -1,    -1,    -1,  1209,    -1,    75,    51,  1311,    53,
  7051. !     -1,    -1,    56,    -1,    83,    -1,    60,    -1,    -1,    88,
  7052. !     -1,    65,    -1,    -1,    -1,  1328,  1329,    -1,  1331,    -1,
  7053. !    769,    75,   771,    -1,    -1,    -1,    -1,    -1,    -1,    83,
  7054. !     -1,    -1,    -1,   782,    88,    -1,   388,    -1,   787,   788,
  7055. !   1018,    -1,    -1,    -1,    -1,    -1,  1163,    -1,    -1,   103,
  7056. !     -1,    -1,    -1,    -1,    -1,     4,    -1,     6,     7,   411,
  7057. !   1177,  1178,  1179,    12,    -1,    -1,    -1,  1184,  1185,    -1,
  7058. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    -1,
  7059. !     -1,    -1,    31,    -1,   436,  1063,    35,    -1,   837,   838,
  7060. !     -1,   840,  1209,    -1,    -1,   844,    -1,   846,   847,     3,
  7061. !      4,    -1,    51,     7,    53,    54,    -1,    -1,   460,    -1,
  7062. !     -1,   463,    -1,    -1,   466,   467,  1331,   469,   470,   471,
  7063. !    472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
  7064. !    482,   483,   484,   485,   486,   487,    -1,    41,    -1,    88,
  7065. !     44,   493,    -1,   495,   496,    -1,    -1,    51,    -1,    53,
  7066.        3,     4,     5,     6,     7,    -1,    -1,    10,    -1,    12,
  7067. !     -1,    65,     4,    -1,     6,     7,    -1,    -1,    -1,   521,
  7068. !     12,    75,    -1,    -1,    27,   527,     4,    -1,    31,    83,
  7069. !     -1,    85,    35,    -1,    88,    89,    -1,    -1,    41,    -1,
  7070. !    542,   543,   941,    35,    -1,    -1,    24,    25,    51,    27,
  7071. !     53,    -1,    44,    -1,    -1,    33,    -1,    -1,    -1,    51,
  7072. !     -1,    53,    65,    -1,  1331,    -1,    44,    -1,    46,    -1,
  7073. !     -1,    -1,    75,    65,    -1,    -1,    -1,    -1,    -1,   581,
  7074. !     83,    -1,    -1,    75,    -1,    88,   588,    -1,    66,    -1,
  7075. !     93,    -1,    -1,    85,    -1,    -1,    88,    89,    -1,    -1,
  7076. !    999,  1000,     1,  1002,     3,     4,     5,     6,     7,   611,
  7077. !     -1,    -1,    -1,    12,    -1,    -1,    -1,    95,    -1,    -1,
  7078. !    622,    -1,    -1,   101,    -1,   103,    -1,   105,    27,    -1,
  7079. !    108,   109,    31,    -1,    -1,    -1,    35,    -1,    -1,    -1,
  7080. !     -1,   119,    41,   121,   122,    -1,    45,    -1,    -1,    -1,
  7081. !     -1,    -1,    51,    -1,    53,    -1,   658,    56,    -1,    -1,
  7082. !     -1,   139,   140,   141,    -1,    -1,    65,    -1,    -1,    -1,
  7083. !     -1,   149,    -1,    -1,    -1,    -1,    75,    -1,    -1,    -1,
  7084. !     -1,    -1,    -1,    -1,    83,    -1,    -1,   165,    -1,    88,
  7085. !     -1,   693,    -1,    -1,    -1,    94,     1,    -1,     3,     4,
  7086. !     -1,     6,     7,     8,     9,   183,    11,    12,    -1,    -1,
  7087. !     -1,    -1,   714,    -1,    -1,   193,    -1,    -1,    -1,    -1,
  7088. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7089. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7090. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,   751,
  7091. !    752,    -1,    -1,    -1,    -1,    60,    -1,    62,    -1,    -1,
  7092. !     65,    -1,    -1,   765,    -1,   767,    -1,    -1,    73,    74,
  7093. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7094. !     -1,    -1,    -1,    88,    -1,    -1,    -1,    92,    -1,    -1,
  7095. !     -1,    -1,    -1,    -1,   796,    -1,    -1,   275,    -1,   104,
  7096. !     -1,    -1,    -1,    -1,    -1,   283,   808,   285,    -1,     3,
  7097. !      4,    -1,     6,     7,     8,     9,    -1,    11,    12,   821,
  7098. !     -1,   823,    -1,   825,    -1,    -1,    -1,    -1,    -1,    -1,
  7099. !     -1,    -1,    -1,    27,    28,   313,    -1,    31,   316,    33,
  7100. !     -1,    35,   320,    37,    38,    -1,    40,    41,    42,    43,
  7101. !    852,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  7102. !     -1,    -1,    -1,    -1,   866,   867,    -1,    -1,    62,    -1,
  7103. !     -1,    65,    -1,    -1,    -1,    -1,    -1,     3,     4,    73,
  7104. !     74,    75,   360,   361,   362,   363,    -1,    81,    82,    83,
  7105. !    368,    -1,    -1,    -1,    88,    -1,   374,    -1,   376,    -1,
  7106. !    378,   379,   904,   905,    -1,    -1,   908,   385,    -1,    -1,
  7107. !    104,    -1,    -1,   391,    -1,    41,   394,    -1,     1,    -1,
  7108. !      3,     4,     5,     6,     7,    51,    -1,    53,    -1,    12,
  7109. !     -1,     3,     4,    -1,    60,   413,   414,    -1,   416,    65,
  7110. !     -1,    -1,    -1,    -1,    27,    -1,    -1,    -1,    31,    75,
  7111. !     -1,    -1,    35,    36,    -1,    -1,    -1,    83,    41,   961,
  7112. !     -1,    -1,    88,    -1,    -1,    -1,    -1,     4,    51,    41,
  7113. !     53,   973,    -1,    -1,     3,     4,    -1,    60,     7,    51,
  7114. !     -1,    53,    65,    -1,    -1,    -1,    -1,    24,    25,    -1,
  7115. !     27,    -1,    75,    65,    -1,    -1,    33,    -1,    -1,    -1,
  7116. !     83,    -1,    -1,    75,    -1,    88,    -1,    44,    -1,    46,
  7117. !     -1,    83,    41,    -1,    -1,    44,    88,    -1,    -1,  1021,
  7118. !    103,    -1,    51,    -1,    53,     3,     4,     5,     6,     7,
  7119. !     -1,   509,    10,  1035,    12,    -1,    65,    -1,  1040,    -1,
  7120. !   1042,    -1,    -1,   521,    -1,    -1,    75,    -1,    -1,    27,
  7121. !     -1,    -1,    -1,    31,    83,    -1,    85,    35,    95,    88,
  7122. !     89,    -1,    -1,    41,   101,    -1,    44,    -1,   105,    -1,
  7123. !     -1,   108,   109,    51,   552,    53,    -1,    -1,    -1,    -1,
  7124. !     -1,    -1,   119,    -1,   121,   122,    -1,    65,    -1,    -1,
  7125. !     -1,     4,    -1,     6,     7,    -1,    -1,    75,    -1,    12,
  7126. !   1102,    -1,   139,   140,   141,    83,    -1,    85,    -1,    -1,
  7127. !     88,    89,  1114,  1115,    27,    93,    -1,    -1,    31,    -1,
  7128. !   1122,  1123,    35,    -1,    -1,   603,   604,   605,   165,    -1,
  7129. !     -1,    -1,    -1,   611,    -1,    -1,    -1,    -1,    51,    -1,
  7130. !     53,  1143,    -1,    -1,    -1,    -1,   183,    -1,    -1,   627,
  7131. !    628,    -1,   630,    -1,    -1,    -1,   193,    -1,    -1,    -1,
  7132. !     -1,    -1,  1164,    68,    69,    70,    71,    72,    73,    74,
  7133. !     75,    76,    77,    78,    79,    88,    -1,     1,    -1,     3,
  7134. !      4,   659,     6,     7,     8,     9,  1188,    11,    12,    -1,
  7135. !     -1,    -1,    -1,  1195,  1196,    -1,    -1,  1199,    -1,    -1,
  7136. !     -1,    -1,  1204,    27,    28,    29,    30,    31,    -1,    33,
  7137. !     -1,    35,    -1,    37,    38,   693,    40,    41,    42,    43,
  7138. !     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  7139. !     54,    -1,    -1,    -1,     3,     4,    -1,    -1,    62,    -1,
  7140. !     -1,    65,    -1,    -1,    -1,    -1,    -1,   284,   285,    73,
  7141. !     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
  7142. !     -1,  1263,  1264,  1265,    88,    89,    -1,    -1,    92,    -1,
  7143. !     -1,    -1,    41,    -1,    -1,    -1,   313,    -1,    -1,   316,
  7144. !    104,    -1,    51,   320,    53,    -1,    -1,    -1,    -1,    -1,
  7145. !     27,    -1,    -1,    -1,    -1,    -1,    65,    -1,    -1,    -1,
  7146. !     -1,    -1,   339,    -1,    -1,    -1,    75,    44,   786,   787,
  7147. !     -1,    -1,    -1,    -1,    83,    -1,    -1,    -1,    -1,    88,
  7148. !     -1,    -1,    -1,   360,   361,   362,   363,    -1,  1330,    -1,
  7149. !     -1,   368,    -1,    -1,    -1,    -1,    -1,   374,    -1,   376,
  7150. !     -1,   378,   379,    -1,    -1,    -1,    -1,    -1,   385,    -1,
  7151. !     -1,    -1,    -1,    -1,   391,    -1,    -1,   394,    95,   837,
  7152. !    838,   839,   840,    -1,   842,    -1,   844,   845,   846,   847,
  7153. !     -1,   108,   109,    -1,    -1,    -1,   413,   414,    -1,   416,
  7154. !     -1,    -1,    -1,    -1,   121,    -1,    -1,    -1,    -1,    -1,
  7155. !     -1,    -1,    -1,    -1,   872,    -1,    -1,   875,    -1,   877,
  7156. !     -1,    -1,   139,   140,   141,    -1,    -1,    -1,    -1,    -1,
  7157. !     -1,    -1,   890,   891,    -1,     1,    -1,     3,     4,     5,
  7158. !      6,     7,     8,     9,    -1,    11,    12,    13,   165,    15,
  7159. !     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
  7160. !     26,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
  7161. !     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
  7162. !     46,    47,    48,    49,    50,    51,   944,    53,    54,    -1,
  7163. !     56,    -1,    -1,    -1,    -1,   953,    62,    -1,    -1,    65,
  7164. !     -1,    -1,    -1,    -1,   521,    -1,    -1,    73,    74,    75,
  7165. !     -1,    -1,    -1,    -1,   231,    81,    82,    83,    -1,    -1,
  7166. !     -1,    -1,    88,    -1,    90,    -1,    92,   985,   986,   987,
  7167. !     -1,    -1,    -1,    -1,    -1,   552,    -1,   103,   104,    -1,
  7168. !     -1,   999,  1000,    -1,  1002,     3,     4,    -1,    -1,     7,
  7169. !     -1,     4,     5,     6,     7,    -1,    -1,    10,    -1,    12,
  7170. !    277,   278,   279,    -1,    -1,    -1,    -1,    -1,   285,    -1,
  7171. !     -1,    -1,  1030,    -1,    27,    -1,    -1,    -1,    31,    -1,
  7172. !     -1,    -1,    35,    41,    -1,    -1,   603,   604,   605,    -1,
  7173. !     -1,    44,    -1,    51,   611,    53,    -1,    -1,    51,    -1,
  7174. !     53,    -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    -1,
  7175. !    627,   628,    65,   630,    -1,    -1,    -1,    75,    -1,    -1,
  7176. !     -1,    -1,    75,    -1,    -1,    83,    -1,    -1,    -1,    -1,
  7177. !     88,    -1,    85,    -1,    -1,    88,    89,    -1,    -1,    -1,
  7178. !     93,    -1,   659,   360,  1102,   362,   363,   364,    -1,     1,
  7179. !     -1,     3,     4,     5,     6,     7,    -1,   374,    -1,   376,
  7180. !     12,   378,   379,    -1,    -1,    -1,     3,     4,   385,    -1,
  7181. !      7,   277,   278,   279,   391,    27,   693,   394,    -1,    31,
  7182. !     -1,    -1,    -1,    35,    -1,    -1,    -1,    -1,    44,    41,
  7183. !     -1,    -1,    -1,    -1,    -1,    -1,   413,    -1,    -1,    51,
  7184. !     -1,    53,    -1,    -1,    41,    -1,    -1,    44,    -1,    -1,
  7185. !     66,    -1,    -1,    65,    51,    -1,    53,    -1,    -1,  1177,
  7186. !   1178,  1179,    -1,    75,    -1,    -1,     3,     4,    65,    85,
  7187. !      7,    83,    -1,    -1,    -1,    -1,    88,    -1,    75,    95,
  7188. !     -1,    -1,    -1,    -1,    -1,    -1,    83,    -1,    85,    -1,
  7189. !     -1,    88,    89,    -1,   360,    -1,   362,   363,   364,    -1,
  7190. !     -1,    -1,    -1,  1221,    41,   121,    -1,    -1,    -1,   786,
  7191. !    787,    -1,    -1,    -1,    51,    -1,    53,   794,    -1,    -1,
  7192. !     -1,    -1,   499,   139,   140,   141,    -1,    -1,    65,    -1,
  7193. !     -1,    -1,    -1,   149,   511,   512,    -1,   514,    75,    -1,
  7194. !     -1,    -1,   819,    -1,   521,    -1,    83,    -1,    -1,   165,
  7195. !     -1,    88,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7196. !    837,   838,   839,   840,    -1,    -1,    -1,   844,   845,   846,
  7197. !    847,    -1,    -1,    -1,    -1,   552,    -1,    -1,    -1,   195,
  7198. !     -1,    -1,     4,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7199. !     -1,    -1,    -1,    -1,    -1,   872,    -1,    -1,   875,    -1,
  7200. !    877,    -1,    24,    25,    -1,    -1,    -1,     4,    -1,     6,
  7201. !      7,    33,    -1,   890,   891,    12,    -1,    -1,    -1,    -1,
  7202. !     -1,    -1,    -1,    -1,    46,    -1,   603,   604,   605,    -1,
  7203. !     -1,    -1,    -1,    -1,   611,    -1,    -1,    -1,    35,    -1,
  7204. !     -1,    -1,    -1,    -1,    -1,   511,   512,    44,   514,    -1,
  7205. !    627,   628,    -1,   630,    51,   521,    53,    -1,     4,     5,
  7206. !      6,     7,    -1,    -1,    -1,    -1,    12,   283,    65,   285,
  7207. !     -1,    -1,    -1,    -1,    -1,    -1,   953,    -1,    75,   101,
  7208. !     -1,    27,   659,   105,    -1,    31,   552,    -1,    85,    35,
  7209. !     -1,    88,    89,    -1,    -1,    -1,    -1,   119,    -1,    -1,
  7210. !    122,   678,     3,     4,    -1,    51,     7,    53,   985,   986,
  7211. !    987,   688,   689,   690,    -1,    -1,    -1,   139,   140,    -1,
  7212. !     -1,    -1,   999,  1000,    -1,  1002,    -1,    -1,    -1,    -1,
  7213. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,   603,   604,   605,
  7214. !     41,    -1,    -1,    -1,   360,   611,   362,   363,    -1,    -1,
  7215. !     51,    -1,    53,  1030,    -1,    -1,    -1,    -1,   374,    -1,
  7216. !    376,   183,   378,   379,    65,    -1,     3,     4,    -1,   385,
  7217. !      7,   193,    -1,    -1,    75,   391,    -1,    -1,   394,    -1,
  7218. !     -1,    -1,    83,    -1,    -1,    -1,    12,    88,    -1,    -1,
  7219. !     -1,    -1,   769,    -1,   771,    -1,    -1,   413,    24,    25,
  7220. !     -1,    27,    -1,    -1,    41,   782,    -1,    -1,    -1,   786,
  7221. !    787,   788,   678,    -1,    51,    -1,    53,    -1,    -1,    -1,
  7222. !     -1,    -1,    -1,    -1,    -1,  1102,    52,    -1,    65,    -1,
  7223. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    75,    -1,
  7224. !     -1,    -1,    -1,    -1,    -1,    -1,    83,    -1,    -1,    -1,
  7225. !     -1,    88,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7226. !    837,   838,   839,   840,    -1,    -1,    -1,   844,   845,   846,
  7227. !    847,    -1,    -1,    -1,    -1,   101,    -1,   103,   104,   105,
  7228. !     -1,    -1,   108,   109,    -1,     3,     4,    -1,    -1,     7,
  7229. !     -1,   313,    -1,    -1,   316,   872,    -1,    -1,   320,    -1,
  7230. !   1177,  1178,  1179,   769,    -1,   771,    -1,    -1,   524,    -1,
  7231. !     -1,    -1,    -1,    -1,    -1,    -1,   782,    -1,    -1,    -1,
  7232. !    786,   787,   788,    41,    -1,    -1,    -1,    -1,    -1,    -1,
  7233. !     -1,    -1,    -1,    51,    -1,    53,   552,    -1,    -1,   361,
  7234. !     -1,    -1,   919,   920,  1221,   922,   368,    65,    -1,    -1,
  7235. !     -1,    -1,   374,    -1,   376,    -1,    -1,    75,    -1,    -1,
  7236. !     -1,    -1,    -1,   940,   941,    83,    -1,   193,    -1,   391,
  7237. !     88,   837,   838,   839,   840,    -1,    -1,    -1,   844,   845,
  7238. !    846,   847,    -1,    -1,    -1,    -1,    -1,   603,   604,   605,
  7239. !     -1,   413,   414,    -1,   416,   611,    -1,    -1,    -1,    -1,
  7240. !      3,     4,     5,     6,     7,   231,    -1,    -1,   985,    12,
  7241. !    987,   627,   628,    -1,   630,    -1,    -1,    -1,    -1,    -1,
  7242. !     -1,    -1,   999,  1000,    27,  1002,    -1,    -1,    31,    -1,
  7243.       -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    41,    -1,
  7244. !     -1,    44,    -1,   659,    -1,    -1,    -1,    -1,    51,   275,
  7245. !     53,   277,   278,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7246. !     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7247. !     -1,    -1,    75,    -1,   940,   941,    -1,    -1,    -1,    -1,
  7248. !     83,   307,    85,    -1,    -1,    88,    89,   313,    -1,    -1,
  7249. !    316,    -1,    -1,    -1,   320,    63,    64,    65,    66,    67,
  7250. !     68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
  7251. !     78,    79,     1,    -1,     3,     4,     5,     6,     7,     8,
  7252. !      9,    10,    11,    12,    -1,  1102,    -1,    -1,    -1,    -1,
  7253. !     -1,    -1,    -1,   999,  1000,    -1,  1002,    -1,    27,    28,
  7254. !     29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
  7255. !     -1,    40,    41,    42,    43,    -1,    -1,    46,    47,    48,
  7256. !     49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,
  7257. !     -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
  7258. !     -1,   603,   604,    -1,    73,    74,    75,    -1,    -1,    -1,
  7259. !     -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,
  7260. !   1177,  1178,  1179,    92,    93,   627,   628,   433,   630,    -1,
  7261. !     -1,    -1,    -1,   102,    -1,   104,    -1,    -1,    -1,    -1,
  7262. !     -1,   837,   838,   839,   840,    -1,   842,    -1,   844,   845,
  7263. !    846,   847,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7264. !     -1,    -1,    -1,    -1,  1221,    -1,    -1,    -1,    -1,    -1,
  7265. !     -1,    -1,    -1,    -1,    -1,    -1,   872,    -1,    -1,    -1,
  7266. !     -1,     1,    -1,     3,     4,     5,     6,     7,     8,     9,
  7267. !     10,    11,    12,   499,    -1,    -1,    -1,    -1,    -1,    -1,
  7268. !     -1,    -1,    -1,   509,    -1,   511,   512,    27,    28,    29,
  7269. !     30,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
  7270. !     40,    41,    42,    43,    44,    -1,    46,    47,    48,    49,
  7271. !     50,    51,    -1,    53,    54,    -1,    -1,    -1,    -1,    -1,
  7272. !     -1,    -1,    62,    -1,    -1,    65,    -1,   553,   944,    -1,
  7273. !     -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
  7274. !     -1,    81,    82,    83,    -1,    85,    -1,    -1,    88,    89,
  7275. !     -1,    -1,    92,    93,    -1,    -1,     3,     4,     5,     6,
  7276. !      7,    -1,    -1,    -1,   104,    12,    -1,    -1,    -1,   985,
  7277. !     -1,   987,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7278. !     -1,    -1,    -1,   999,  1000,    -1,  1002,    -1,    35,    -1,
  7279. !     -1,    -1,    -1,    -1,    41,    -1,    -1,    44,    -1,    -1,
  7280. !     -1,    -1,    -1,    -1,    51,    -1,    53,    -1,    -1,    -1,
  7281. !     -1,    -1,    -1,    -1,    -1,   837,   838,    -1,    65,    -1,
  7282. !     -1,    -1,   844,    -1,    -1,    -1,    -1,    -1,    75,    -1,
  7283.       -1,    -1,    -1,    -1,    -1,    -1,    83,    -1,    85,    -1,
  7284. !     -1,    88,    89,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7285. !    872,    -1,   678,   875,    -1,   877,    -1,    -1,    -1,    -1,
  7286. !     -1,    -1,   688,   689,   690,    -1,     1,    -1,     3,     4,
  7287. !      5,     6,     7,     8,     9,    10,    11,    12,    -1,    -1,
  7288. !     -1,    -1,    -1,    -1,    -1,    -1,  1102,    -1,    -1,    -1,
  7289. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7290. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    44,
  7291. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
  7292. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7293. !     65,   953,    -1,    -1,    10,    -1,    -1,    -1,    73,    74,
  7294. !     75,    -1,    -1,   769,    -1,   771,    81,    82,    83,    -1,
  7295. !     85,    -1,    -1,    88,    89,    -1,   782,    92,    93,    -1,
  7296. !     -1,  1177,  1178,  1179,   986,    -1,    -1,    -1,    -1,   104,
  7297. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,   999,  1000,    -1,
  7298. !   1002,    57,    58,    59,    60,    61,    62,    63,    64,    65,
  7299. !     66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
  7300. !     76,    77,    78,    79,    -1,  1221,    -1,    -1,  1030,    -1,
  7301. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     1,    -1,
  7302. !      3,     4,     5,     6,     7,     8,     9,    -1,    11,    12,
  7303. !     13,    -1,    15,    16,    17,    18,    19,    20,    21,    22,
  7304. !     23,    24,    25,    26,    27,    28,    29,    30,    31,   875,
  7305. !     33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
  7306. !     43,    -1,    -1,    46,    47,    48,    49,    50,    51,    -1,
  7307. !     53,    54,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,
  7308. !     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7309. !     73,    74,    75,   919,   920,    -1,   922,    -1,    81,    82,
  7310. !     83,    -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    92,
  7311.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7312. !    103,   104,     1,    -1,     3,     4,     5,     6,     7,     8,
  7313.        9,    -1,    11,    12,    13,    -1,    15,    16,    17,    18,
  7314.       19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
  7315.       29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
  7316. !     -1,    40,    41,    42,    43,    -1,    -1,    46,    47,    48,
  7317.       49,    50,    51,    -1,    53,    54,    -1,    56,    -1,    -1,
  7318.       -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
  7319. !     -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,
  7320. !     -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,
  7321.       -1,    90,    -1,    92,    -1,    -1,    -1,    -1,    -1,    -1,
  7322. !     -1,    -1,    -1,    -1,   103,   104,     1,    -1,     3,     4,
  7323. !      5,     6,     7,     8,     9,    -1,    11,    12,    13,    -1,
  7324. !     15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
  7325. !     25,    26,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7326. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7327. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
  7328. !     -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7329. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7330. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7331. !     -1,    -1,    -1,    88,    -1,    90,    -1,    92,    -1,    -1,
  7332. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   103,   104,
  7333. !      1,    -1,     3,     4,     5,     6,     7,     8,     9,    -1,
  7334. !     11,    12,    13,    -1,    15,    16,    17,    18,    19,    20,
  7335. !     21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
  7336. !     31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,
  7337. !     41,    42,    43,    -1,    -1,    46,    47,    48,    49,    50,
  7338. !     51,    -1,    53,    54,    -1,    56,    -1,    -1,    -1,    -1,
  7339. !     -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,
  7340. !     -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,
  7341. !     81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,    90,
  7342. !     -1,    92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7343. !     -1,    -1,   103,   104,     1,    -1,     3,     4,     5,     6,
  7344. !      7,     8,     9,    -1,    11,    12,    13,    -1,    15,    16,
  7345. !     17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
  7346. !     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
  7347. !     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
  7348. !     47,    48,    49,    50,    51,    -1,    53,    54,    -1,    56,
  7349. !     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
  7350. !     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
  7351. !     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
  7352. !     -1,    88,    -1,    90,     1,    92,     3,     4,     5,     6,
  7353. !      7,     8,     9,    -1,    11,    12,    13,   104,    15,    16,
  7354. !     17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
  7355. !     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
  7356. !     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
  7357. !     47,    48,    49,    50,    51,    -1,    53,    54,    -1,    56,
  7358. !     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
  7359. !     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
  7360. !     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
  7361. !     -1,    88,    -1,    90,     1,    92,     3,     4,     5,     6,
  7362. !      7,     8,     9,    -1,    11,    12,    13,   104,    15,    16,
  7363. !     17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
  7364. !     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
  7365. !     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
  7366. !     47,    48,    49,    50,    51,    -1,    53,    54,    -1,    56,
  7367. !     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
  7368. !     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
  7369. !     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
  7370. !     -1,    88,    -1,    90,     1,    92,     3,     4,     5,     6,
  7371. !      7,     8,     9,    10,    11,    12,    -1,   104,    -1,    -1,
  7372.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7373. !     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
  7374. !     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
  7375. !     47,    48,    49,    50,    51,    -1,    53,    -1,    -1,    -1,
  7376. !     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
  7377. !     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
  7378. !     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
  7379. !     -1,    88,    -1,    -1,    -1,    92,    93,    -1,    -1,    -1,
  7380. !     -1,    -1,    -1,    -1,    -1,   102,     1,   104,     3,     4,
  7381. !     -1,     6,     7,     8,     9,    -1,    11,    12,    66,    67,
  7382. !     68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
  7383. !     78,    79,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7384. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7385. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
  7386. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7387. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7388. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7389. !     -1,    -1,    -1,    88,    89,    -1,     1,    92,     3,     4,
  7390. !     -1,     6,     7,     8,     9,    -1,    11,    12,   103,   104,
  7391. !     -1,    -1,    -1,    -1,    19,    -1,    -1,    -1,    -1,    -1,
  7392. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7393. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7394. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
  7395. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7396. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7397. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7398. !     -1,    -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,
  7399. !     -1,     6,     7,     8,     9,    -1,    11,    12,   103,   104,
  7400. !     -1,    -1,    -1,    -1,    19,    -1,    -1,    -1,    -1,    -1,
  7401. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7402. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7403. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
  7404. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7405. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7406. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7407. !     -1,    -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,
  7408. !      5,     6,     7,     8,     9,    -1,    11,    12,   103,   104,
  7409.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7410. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7411. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7412. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
  7413. !     -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7414. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7415. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,     1,
  7416. !     -1,    -1,     4,    88,     6,     7,    -1,    92,    -1,    -1,
  7417. !     12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,
  7418. !     -1,    -1,    -1,    -1,    -1,    27,    -1,    -1,    -1,    31,
  7419. !     -1,    -1,    -1,    35,    -1,    37,    38,    -1,    -1,    -1,
  7420. !     -1,    -1,    44,    -1,    -1,    -1,    -1,    -1,    -1,    51,
  7421. !     -1,    53,    -1,    55,    -1,    57,    58,    59,    -1,    61,
  7422. !     62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
  7423. !     72,    73,    74,    75,    76,    77,    78,    -1,    -1,    81,
  7424. !     82,    83,    -1,     1,    86,     3,     4,    89,     6,     7,
  7425.        8,     9,    -1,    11,    12,    -1,    -1,    -1,    -1,    -1,
  7426. !     -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  7427.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  7428.       38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  7429.       48,    49,    50,    51,    -1,    53,    54,    -1,    -1,    -1,
  7430.       -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  7431.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7432.       -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  7433. !     88,    -1,    -1,     1,    92,     3,     4,    -1,     6,     7,
  7434. !      8,     9,    -1,    11,    12,    -1,   104,    -1,    -1,    -1,
  7435. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  7436.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  7437.       38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  7438.       48,    49,    50,    51,    -1,    53,    54,    -1,    -1,    -1,
  7439. ***************
  7440. *** 2835,2854 ****
  7441.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7442.       -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  7443.       88,    -1,    -1,     1,    92,     3,     4,    -1,     6,     7,
  7444. !      8,     9,    -1,    11,    12,   103,   104,    -1,    -1,    -1,
  7445. !     -1,    19,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  7446.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  7447.       38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  7448.       48,    49,    50,    51,    -1,    53,    54,    -1,    -1,    -1,
  7449.       -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  7450.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7451.       -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  7452. !     88,    -1,    -1,     1,    92,     3,     4,     5,     6,     7,
  7453. !      8,     9,    -1,    11,    12,   103,   104,    -1,    -1,    -1,
  7454.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  7455.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  7456.       38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  7457. !     48,    49,    50,    51,    -1,    53,    54,    -1,    56,    -1,
  7458.       -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  7459.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7460.       -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  7461. --- 2831,2850 ----
  7462.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7463.       -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  7464.       88,    -1,    -1,     1,    92,     3,     4,    -1,     6,     7,
  7465. !      8,     9,    -1,    11,    12,    -1,   104,    -1,    -1,    -1,
  7466. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  7467.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  7468.       38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  7469.       48,    49,    50,    51,    -1,    53,    54,    -1,    -1,    -1,
  7470.       -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  7471.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7472.       -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  7473. !     88,    -1,    -1,     1,    92,     3,     4,    -1,     6,     7,
  7474. !      8,     9,    -1,    11,    12,    -1,   104,    -1,    -1,    -1,
  7475.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  7476.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  7477.       38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  7478. !     48,    49,    50,    51,    -1,    53,    -1,    -1,    56,    -1,
  7479.       -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  7480.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7481.       -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  7482. ***************
  7483. *** 2857,3033 ****
  7484.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  7485.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  7486.       38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  7487. !     48,    49,    50,    51,    -1,    53,    54,    -1,    -1,    -1,
  7488.       -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  7489.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7490.       -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  7491. !     88,    89,     1,    -1,    92,     4,    -1,     6,     7,    -1,
  7492. !     -1,    -1,    -1,    12,    -1,    -1,   104,    -1,    -1,    -1,
  7493. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    -1,
  7494. !     -1,    -1,    31,    -1,    -1,    -1,    35,    -1,    37,    38,
  7495. !     -1,    -1,    -1,    -1,    -1,    44,    -1,    -1,    -1,    -1,
  7496. !     -1,    -1,    51,    -1,    53,    -1,    55,    -1,    57,    58,
  7497. !     59,    -1,    61,    62,    63,    64,    65,    66,    67,    68,
  7498. !     69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
  7499. !     -1,    -1,    81,    82,    83,    -1,     1,    86,     3,     4,
  7500. !     89,     6,     7,     8,     9,    -1,    11,    12,    -1,    -1,
  7501. !     -1,    -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,
  7502. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7503. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7504. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
  7505. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7506. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7507. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7508. !     -1,    -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,
  7509. !     -1,     6,     7,     8,     9,    -1,    11,    12,    -1,   104,
  7510. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7511. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7512. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7513. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
  7514. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7515. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7516. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7517. !     -1,    -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,
  7518. !     -1,     6,     7,     8,     9,    -1,    11,    12,    -1,   104,
  7519. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7520. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7521. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7522. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    -1,
  7523. !     -1,    -1,    -1,    -1,    -1,    60,    -1,    62,    -1,    -1,
  7524. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7525. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7526. !     -1,    -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,
  7527. !     -1,     6,     7,     8,     9,    -1,    11,    12,    -1,   104,
  7528. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7529. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7530. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7531. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
  7532. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7533. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7534. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7535. !     -1,    -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,
  7536. !     -1,     6,     7,     8,     9,    -1,    11,    12,    -1,   104,
  7537. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7538. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7539. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7540. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
  7541. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7542. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7543. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7544. !     -1,    -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,
  7545. !     -1,     6,     7,     8,     9,    -1,    11,    12,    -1,   104,
  7546. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7547. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7548. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7549. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    -1,
  7550. !     -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7551. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7552. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7553. !     -1,    -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,
  7554. !     -1,     6,     7,     8,     9,    -1,    11,    12,    -1,   104,
  7555. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7556. !     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7557. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7558. !     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    -1,
  7559. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7560. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7561. !     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7562. !     -1,    -1,    -1,    88,    -1,    -1,    -1,    92,    -1,    -1,
  7563. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,   102,     1,   104,
  7564. !      3,     4,    -1,     6,     7,     8,     9,    -1,    11,    12,
  7565. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7566. !     -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,
  7567. !     33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
  7568. !     43,    -1,    -1,    46,    47,    48,    49,    50,    51,    -1,
  7569. !     53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,
  7570. !     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7571. !     73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,
  7572. !     83,    -1,    -1,    -1,    -1,    88,    -1,    -1,     1,    92,
  7573. !      3,     4,    -1,     6,     7,     8,     9,    -1,    11,    12,
  7574. !     -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7575. !     -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,
  7576. !     33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
  7577. !     43,    -1,    -1,    46,    47,    48,    49,    50,    51,    -1,
  7578. !     53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,
  7579. !     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7580. !     73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,
  7581. !     83,    -1,    -1,    -1,    -1,    88,    -1,     3,     4,    92,
  7582. !      6,     7,     8,     9,    -1,    11,    12,    -1,    -1,    -1,
  7583. !     -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7584.       -1,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
  7585.       -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
  7586.       46,    47,    48,    49,    50,    51,    -1,    53,    -1,    -1,
  7587. !     -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
  7588. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
  7589. !     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
  7590. !     -1,    -1,    88,    -1,    -1,    -1,    92,    -1,    -1,    -1,
  7591. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,   105,
  7592. !      3,     4,     5,     6,     7,     8,     9,    -1,    11,    12,
  7593. !     13,    -1,    15,    16,    17,    18,    19,    20,    21,    22,
  7594. !     23,    24,    25,    26,    27,    28,    29,    30,    31,    -1,
  7595. !     33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
  7596. !     43,    -1,    -1,    46,    47,    48,    49,    50,    51,    -1,
  7597. !     53,    54,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,
  7598. !     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7599. !     73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,
  7600. !     83,    -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    92,
  7601. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7602. !    103,   104,     3,     4,     5,     6,     7,     8,     9,    -1,
  7603. !     11,    12,    13,    -1,    15,    16,    17,    18,    19,    20,
  7604. !     21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
  7605. !     31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,
  7606. !     41,    42,    43,    -1,    -1,    46,    47,    48,    49,    50,
  7607. !     51,    -1,    53,    54,    -1,    56,    -1,    -1,    -1,    -1,
  7608. !     -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,
  7609. !     -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,
  7610. !     81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,    90,
  7611. !     -1,    92,     3,     4,     5,     6,     7,     8,     9,    -1,
  7612. !     11,    12,    13,   104,    15,    16,    17,    18,    19,    20,
  7613. !     21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
  7614. !     31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,
  7615. !     41,    42,    43,    -1,    -1,    46,    47,    48,    49,    50,
  7616. !     51,    -1,    53,    54,    -1,    56,    -1,    -1,    -1,    -1,
  7617. !     -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,
  7618. !     -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,
  7619. !     81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,    90,
  7620. !     -1,    92,     3,     4,     5,     6,     7,     8,     9,    -1,
  7621. !     11,    12,    13,   104,    15,    16,    17,    18,    19,    20,
  7622. !     21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
  7623. !     31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,
  7624. !     41,    42,    43,    -1,    -1,    46,    47,    48,    49,    50,
  7625. !     51,    -1,    53,    -1,    -1,    56,    -1,    -1,    -1,    -1,
  7626. !     -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,
  7627. !     -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,
  7628. !     81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,    90,
  7629. !     -1,    92,     3,     4,     5,     6,     7,     8,     9,    10,
  7630. !     11,    12,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,
  7631. !     -1,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,
  7632. !     31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,
  7633. !     41,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
  7634. !     51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7635. !     -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,
  7636. !     -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,
  7637. !     81,    82,    83,    -1,    85,    -1,    -1,    88,    89,    -1,
  7638. !     -1,    92,    93,     3,     4,     5,     6,     7,     8,     9,
  7639. !     10,    11,    12,   104,    -1,    -1,    -1,    -1,    -1,    -1,
  7640. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,
  7641. !     30,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
  7642. !     40,    41,    42,    43,    44,    -1,    46,    47,    48,    49,
  7643. !     50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,
  7644. !     -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,
  7645. !     -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
  7646. !     -1,    81,    82,    83,    -1,    85,    -1,    -1,    88,    89,
  7647. !     -1,    -1,    92,    93,     3,     4,    -1,     6,     7,     8,
  7648. !      9,    -1,    11,    12,   104,    -1,    -1,    -1,    -1,    -1,
  7649.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,
  7650.       29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
  7651. !     -1,    40,    41,    42,    43,    44,    -1,    46,    47,    48,
  7652.       49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,
  7653.       -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
  7654.       -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,
  7655. !     -1,    -1,    81,    82,    83,    -1,    85,    -1,    -1,    88,
  7656. !     89,     3,     4,    -1,     6,     7,     8,     9,    -1,    11,
  7657. !     12,    -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,
  7658.       -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,
  7659.       -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,    41,
  7660.       42,    43,    44,    -1,    46,    47,    48,    49,    50,    51,
  7661. --- 2853,2949 ----
  7662.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  7663.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  7664.       38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  7665. !     48,    49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,
  7666.       -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  7667.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7668.       -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  7669. !     88,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,    -1,
  7670. !     -1,    -1,    -1,    -1,   102,     1,   104,     3,     4,    -1,
  7671. !      6,     7,     8,     9,    -1,    11,    12,    67,    68,    69,
  7672. !     70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
  7673.       -1,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
  7674.       -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
  7675.       46,    47,    48,    49,    50,    51,    -1,    53,    -1,    -1,
  7676. !     -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
  7677. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
  7678. !     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
  7679. !     -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,    -1,
  7680. !      6,     7,     8,     9,    -1,    11,    12,    -1,   104,    -1,
  7681. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7682. !     -1,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
  7683. !     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
  7684. !     46,    47,    48,    49,    50,    51,    -1,    53,    -1,    -1,
  7685. !     -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
  7686. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
  7687. !     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
  7688. !     -1,    -1,    88,    -1,     3,     4,    92,     6,     7,     8,
  7689. !      9,    -1,    11,    12,    -1,    -1,    -1,    -1,   104,    -1,
  7690.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,
  7691.       29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
  7692. !     -1,    40,    41,    42,    43,    -1,    -1,    46,    47,    48,
  7693.       49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,
  7694.       -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
  7695.       -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,
  7696. !     -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,
  7697. !     -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,    -1,    -1,
  7698. !     -1,    -1,    -1,    -1,    -1,   104,   105,     3,     4,     5,
  7699. !      6,     7,     8,     9,    -1,    11,    12,    13,    -1,    15,
  7700. !     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
  7701. !     26,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
  7702. !     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
  7703. !     46,    47,    48,    49,    50,    51,    -1,    53,    54,    -1,
  7704. !     56,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
  7705. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
  7706. !     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
  7707. !     -1,    -1,    88,    -1,    90,    -1,    92,    -1,    -1,    -1,
  7708. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,   103,   104,     3,
  7709. !      4,     5,     6,     7,     8,     9,    -1,    11,    12,    13,
  7710. !     -1,    15,    16,    17,    18,    19,    20,    21,    22,    23,
  7711. !     24,    25,    26,    27,    28,    29,    30,    31,    -1,    33,
  7712. !     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
  7713. !     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  7714. !     54,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,
  7715. !     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
  7716. !     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
  7717. !     -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    92,     3,
  7718. !      4,     5,     6,     7,     8,     9,    -1,    11,    12,    13,
  7719. !    104,    15,    16,    17,    18,    19,    20,    21,    22,    23,
  7720. !     24,    25,    26,    27,    28,    29,    30,    31,    -1,    33,
  7721. !     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
  7722. !     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  7723. !     54,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,
  7724. !     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
  7725. !     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
  7726. !     -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    92,     3,
  7727. !      4,     5,     6,     7,     8,     9,    -1,    11,    12,    13,
  7728. !    104,    15,    16,    17,    18,    19,    20,    21,    22,    23,
  7729. !     24,    25,    26,    27,    28,    29,    30,    31,    -1,    33,
  7730. !     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
  7731. !     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  7732. !     -1,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,
  7733. !     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
  7734. !     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
  7735. !     -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    92,     3,
  7736. !      4,     5,     6,     7,     8,     9,    10,    11,    12,    -1,
  7737. !    104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7738. !     -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,    33,
  7739. !     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
  7740. !     44,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  7741. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,
  7742. !     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
  7743. !     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
  7744. !     -1,    85,    -1,    -1,    88,    89,    -1,    -1,    92,    93,
  7745. !      3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
  7746. !    104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7747. !     -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,
  7748. !     33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
  7749. !     43,    44,    -1,    46,    47,    48,    49,    50,    51,    -1,
  7750. !     53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,
  7751. !     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7752. !     73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,
  7753. !     83,    -1,    85,    -1,    -1,    88,    89,    -1,    -1,    92,
  7754. !     93,     3,     4,    -1,     6,     7,     8,     9,    -1,    11,
  7755. !     12,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7756.       -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,
  7757.       -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,    41,
  7758.       42,    43,    44,    -1,    46,    47,    48,    49,    50,    51,
  7759. ***************
  7760. *** 3038,3064 ****
  7761.       -1,     6,     7,     8,     9,    -1,    11,    12,    -1,    -1,
  7762.       -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7763.       -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7764. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7765.       -1,    46,    47,    48,    49,    50,    51,    -1,    53,    -1,
  7766.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7767. !     65,    -1,    -1,    -1,    -1,    70,    -1,    -1,    73,    74,
  7768.       75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7769. !     -1,    -1,    -1,    88,    -1,     3,     4,    92,     6,     7,
  7770.        8,     9,    -1,    11,    12,    -1,    -1,    -1,    -1,   104,
  7771.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  7772.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  7773. !     38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
  7774. !     48,    49,    50,    51,    -1,    53,    -1,    -1,    56,    -1,
  7775.       -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  7776.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7777. !     -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
  7778. !     88,    -1,     3,     4,    92,     6,     7,     8,     9,    -1,
  7779.       11,    12,    -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,
  7780.       -1,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,
  7781.       31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,
  7782.       41,    42,    43,    -1,    -1,    46,    47,    48,    49,    50,
  7783.       51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7784. !     -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,
  7785.       -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,
  7786.       81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,     3,
  7787.        4,    92,     6,     7,     8,     9,    -1,    11,    12,    -1,
  7788. --- 2954,2980 ----
  7789.       -1,     6,     7,     8,     9,    -1,    11,    12,    -1,    -1,
  7790.       -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7791.       -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7792. !     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    44,
  7793.       -1,    46,    47,    48,    49,    50,    51,    -1,    53,    -1,
  7794.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7795. !     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7796.       75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7797. !     85,    -1,    -1,    88,    89,     3,     4,    -1,     6,     7,
  7798.        8,     9,    -1,    11,    12,    -1,    -1,    -1,    -1,   104,
  7799.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
  7800.       28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
  7801. !     38,    -1,    40,    41,    42,    43,    44,    -1,    46,    47,
  7802. !     48,    49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,
  7803.       -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
  7804.       -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
  7805. !     -1,    -1,    -1,    81,    82,    83,    -1,    85,    -1,    -1,
  7806. !     88,    89,     3,     4,    -1,     6,     7,     8,     9,    -1,
  7807.       11,    12,    -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,
  7808.       -1,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,
  7809.       31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,
  7810.       41,    42,    43,    -1,    -1,    46,    47,    48,    49,    50,
  7811.       51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7812. !     -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    70,
  7813.       -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,
  7814.       81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,     3,
  7815.        4,    92,     6,     7,     8,     9,    -1,    11,    12,    -1,
  7816. ***************
  7817. *** 3066,3089 ****
  7818.       -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,    33,
  7819.       -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
  7820.       -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  7821. !     54,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,
  7822. !     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
  7823. !     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
  7824. !     -1,    -1,     3,     4,    88,     6,     7,     8,     9,    -1,
  7825. !     11,    12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7826. !    104,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,
  7827. !     31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,
  7828. !     41,    42,    43,    -1,    -1,    46,    47,    48,    49,    50,
  7829. !     51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7830. !     -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,
  7831. !     -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,
  7832. !     81,    82,    83,    -1,    -1,    -1,    -1,    88,    89,     3,
  7833. !      4,    -1,     6,     7,     8,     9,    -1,    11,    12,    -1,
  7834. !     -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,
  7835. !     -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,    33,
  7836. !     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
  7837. !     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  7838. !     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,
  7839.       -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
  7840.       74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
  7841.       -1,    -1,    -1,    -1,    88,    -1,     3,     4,    92,     6,
  7842. --- 2982,2988 ----
  7843.       -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,    33,
  7844.       -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
  7845.       -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
  7846. !     -1,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,
  7847.       -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
  7848.       74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
  7849.       -1,    -1,    -1,    -1,    88,    -1,     3,     4,    92,     6,
  7850. ***************
  7851. *** 3100,3105 ****
  7852. --- 2999,3021 ----
  7853.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,
  7854.       30,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
  7855.       40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49,
  7856. +     50,    51,    -1,    53,    54,    -1,    -1,    -1,    -1,    -1,
  7857. +     -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,
  7858. +     -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
  7859. +     -1,    81,    82,    83,    -1,    -1,     3,     4,    88,     6,
  7860. +      7,     8,     9,    -1,    11,    12,    -1,    -1,    -1,    -1,
  7861. +     -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,
  7862. +     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
  7863. +     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
  7864. +     47,    48,    49,    50,    51,    -1,    53,    -1,    -1,    -1,
  7865. +     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
  7866. +     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
  7867. +     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
  7868. +     -1,    88,    89,     3,     4,    -1,     6,     7,     8,     9,
  7869. +     -1,    11,    12,    -1,    -1,    -1,    -1,   104,    -1,    -1,
  7870. +     -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,
  7871. +     30,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
  7872. +     40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49,
  7873.       50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,
  7874.       -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,
  7875.       -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
  7876. ***************
  7877. *** 3129,3138 ****
  7878.       49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,
  7879.       -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
  7880.       -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,
  7881.       -1,    -1,    81,    82,    83,    -1,    -1,     3,     4,    88,
  7882.        6,     7,     8,     9,    -1,    11,    12,    -1,    -1,    -1,
  7883.       -1,    -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,
  7884. !     -1,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
  7885.       -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
  7886.       46,    47,    48,    49,    50,    51,    -1,    53,    -1,    -1,
  7887.       -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
  7888. --- 3045,3088 ----
  7889.       49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,
  7890.       -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
  7891.       -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,
  7892. +     -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,
  7893. +     -1,     3,     4,    92,     6,     7,     8,     9,    -1,    11,
  7894. +     12,    -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,
  7895. +     -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,
  7896. +     -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,    41,
  7897. +     42,    43,    -1,    -1,    46,    47,    48,    49,    50,    51,
  7898. +     -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7899. +     62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,
  7900. +     -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,
  7901. +     82,    83,    -1,    -1,    -1,    -1,    88,    -1,     3,     4,
  7902. +     92,     6,     7,     8,     9,    -1,    11,    12,    -1,    -1,
  7903. +     -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7904. +     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
  7905. +     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
  7906. +     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    -1,
  7907. +     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
  7908. +     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
  7909. +     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
  7910. +     -1,     3,     4,    88,     6,     7,     8,     9,    -1,    11,
  7911. +     12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,
  7912. +     -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,
  7913. +     -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,    41,
  7914. +     42,    43,    -1,    -1,    46,    47,    48,    49,    50,    51,
  7915. +     -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7916. +     62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,
  7917. +     -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,
  7918. +     82,    83,    -1,    -1,     3,     4,    88,     6,     7,     8,
  7919. +      9,    -1,    11,    12,    -1,    -1,    -1,    -1,    -1,    -1,
  7920. +     -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    27,    28,
  7921. +     29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
  7922. +     -1,    40,    41,    42,    43,    -1,    -1,    46,    47,    48,
  7923. +     49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,
  7924. +     -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
  7925. +     -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,
  7926.       -1,    -1,    81,    82,    83,    -1,    -1,     3,     4,    88,
  7927.        6,     7,     8,     9,    -1,    11,    12,    -1,    -1,    -1,
  7928.       -1,    -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,
  7929. !     -1,    27,    28,    -1,    -1,    31,    -1,    33,    -1,    35,
  7930.       -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
  7931.       46,    47,    48,    49,    50,    51,    -1,    53,    -1,    -1,
  7932.       -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
  7933. ***************
  7934. *** 3143,3188 ****
  7935.       -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,
  7936.       33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
  7937.       43,    -1,    -1,    46,    47,    48,    49,    50,    51,    -1,
  7938. !     53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,
  7939. !     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7940. !     73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,
  7941. !     83,    -1,    -1,     3,     4,    88,     6,     7,     8,     9,
  7942. !     -1,    11,    12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7943. !     -1,   104,    -1,    -1,    -1,    -1,    -1,    27,    28,    -1,
  7944. !     -1,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
  7945. !     40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49,
  7946. !     50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,
  7947. !     -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,
  7948. !     -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
  7949. !     -1,    81,    82,    83,    -1,    -1,     3,     4,    88,     6,
  7950. !      7,     8,     9,    -1,    11,    12,    -1,    -1,    -1,    -1,
  7951. !     -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,
  7952. !     27,    28,    -1,    -1,    31,    -1,    33,    -1,    35,    -1,
  7953. !     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
  7954. !     47,    48,    49,    50,    51,    -1,    53,    -1,    -1,    -1,
  7955. !     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
  7956. !     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
  7957. !     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
  7958. !     -1,    88,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  7959. !     -1,    -1,    55,    -1,    57,    58,    59,   104,    61,    62,
  7960. !     63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
  7961. !     73,    74,    75,    76,    77,    78,    79,    57,    58,    59,
  7962. !     60,    61,    62,    63,    64,    65,    66,    67,    68,    69,
  7963.       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
  7964.       57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
  7965.       67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
  7966. !     77,    78,    79,    57,    58,    59,    -1,    61,    62,    63,
  7967.       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
  7968.       74,    75,    76,    77,    78,    79,    57,    58,    59,    -1,
  7969. !     61,    62,    63,    64,    65,    66,    67,    68,    69,    -1,
  7970.       71,    72,    73,    74,    75,    76,    77,    78,    79,    59,
  7971.       -1,    61,    62,    63,    64,    65,    66,    67,    68,    69,
  7972.       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
  7973. !     63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
  7974. !     73,    74,    75,    76,    77,    78,    79
  7975.   };
  7976.   /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
  7977. ! #line 3 "/usr/local/lib/bison.simple"
  7978.   
  7979.   /* Skeleton output parser for bison,
  7980.      Copyright (C) 1984, 1989, 1990 Bob Corbett and Richard Stallman
  7981. --- 3093,3155 ----
  7982.       -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,
  7983.       33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
  7984.       43,    -1,    -1,    46,    47,    48,    49,    50,    51,    -1,
  7985. !     53,    -1,     3,     4,     5,     6,     7,    -1,    -1,    -1,
  7986. !     -1,    12,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,
  7987. !      6,     7,    -1,    -1,    -1,    -1,    12,    -1,    81,    82,
  7988. !     83,    -1,    -1,    -1,    35,    88,    -1,    -1,    -1,    92,
  7989. !     41,    27,    -1,    44,    -1,    31,    -1,    -1,    -1,    35,
  7990. !     51,   104,    53,    -1,    -1,    41,    -1,    -1,    -1,    -1,
  7991. !     -1,    -1,    -1,    -1,    65,    51,    -1,    53,    -1,    -1,
  7992. !     56,    -1,    -1,    -1,    75,    -1,    -1,    -1,    -1,    65,
  7993. !     -1,    -1,    83,    -1,    85,    -1,    -1,    88,    89,    75,
  7994. !     -1,     3,     4,     5,     6,     7,    -1,    83,    10,    -1,
  7995. !     12,    -1,    88,    -1,    -1,    -1,    -1,    -1,     3,     4,
  7996. !      5,     6,     7,    -1,    -1,    27,    -1,    12,    -1,    31,
  7997. !     -1,    -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    41,
  7998. !     -1,    -1,    27,    -1,    -1,    -1,    31,    -1,    -1,    51,
  7999. !     35,    53,    -1,    -1,    -1,    -1,    41,    -1,    -1,    -1,
  8000. !     -1,    -1,    -1,    65,    -1,    -1,    51,    -1,    53,    -1,
  8001. !     -1,    -1,    -1,    75,    -1,    60,    -1,    -1,    -1,    -1,
  8002. !     65,    83,    -1,    -1,    -1,    -1,    88,    -1,    -1,    -1,
  8003. !     75,     3,     4,     5,     6,     7,    -1,    -1,    83,    -1,
  8004. !     12,    -1,    -1,    88,    -1,    -1,    -1,    -1,     3,     4,
  8005. !      5,     6,     7,    -1,    -1,    27,    -1,    12,    -1,    31,
  8006. !     -1,    -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    41,
  8007. !     -1,    -1,    27,    -1,    -1,    -1,    31,    -1,    -1,    51,
  8008. !     35,    53,    -1,    -1,    56,    -1,    41,    -1,    -1,    -1,
  8009. !     -1,    -1,     4,    65,     6,     7,    51,    -1,    53,    -1,
  8010. !     12,    -1,    -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,
  8011. !     65,    83,    -1,    -1,    -1,    27,    88,    -1,    -1,    31,
  8012. !     75,    -1,    -1,    35,    -1,    -1,    -1,    -1,    83,    -1,
  8013. !     -1,    -1,    44,    88,    -1,    -1,    -1,    -1,    -1,    51,
  8014. !     -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  8015. !     57,    58,    59,    65,    61,    62,    63,    64,    65,    66,
  8016. !     67,    68,    69,    75,    71,    72,    73,    74,    75,    76,
  8017. !     77,    78,    79,    85,    -1,    -1,    88,    89,    57,    58,
  8018. !     59,    -1,    61,    62,    63,    64,    65,    66,    67,    68,
  8019. !     69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
  8020. !     79,    55,    32,    57,    58,    59,    -1,    61,    62,    63,
  8021. !     64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
  8022. !     74,    75,    76,    77,    78,    79,   105,    57,    58,    59,
  8023. !     -1,    61,    62,    63,    64,    65,    66,    67,    68,    69,
  8024.       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
  8025.       57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
  8026.       67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
  8027. !     77,    78,    79,    57,    58,    59,    60,    61,    62,    63,
  8028.       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
  8029.       74,    75,    76,    77,    78,    79,    57,    58,    59,    -1,
  8030. !     61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
  8031.       71,    72,    73,    74,    75,    76,    77,    78,    79,    59,
  8032.       -1,    61,    62,    63,    64,    65,    66,    67,    68,    69,
  8033.       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
  8034. !     62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
  8035. !     72,    73,    74,    75,    76,    77,    78,    79,    64,    65,
  8036. !     66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
  8037. !     76,    77,    78,    79,    65,    66,    67,    68,    69,    70,
  8038. !     71,    72,    73,    74,    75,    76,    77,    78,    79
  8039.   };
  8040.   /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
  8041. ! #line 3 "/gnu/lib/bison.simple"
  8042.   
  8043.   /* Skeleton output parser for bison,
  8044.      Copyright (C) 1984, 1989, 1990 Bob Corbett and Richard Stallman
  8045. ***************
  8046. *** 3363,3386 ****
  8047.   #endif
  8048.   #endif
  8049.   
  8050. ! #line 184 "/usr/local/lib/bison.simple"
  8051. ! /* The user can define YYPARSE_PARAM as the name of an argument to be passed
  8052. !    into yyparse.  The argument should have type void *.
  8053. !    It should actually point to an object.
  8054. !    Grammar actions can access the variable by casting it
  8055. !    to the proper pointer type.  */
  8056. ! #ifdef YYPARSE_PARAM
  8057. ! #define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
  8058. ! #else
  8059. ! #define YYPARSE_PARAM
  8060. ! #define YYPARSE_PARAM_DECL
  8061. ! #endif
  8062.   int
  8063. ! yyparse(YYPARSE_PARAM)
  8064. !      YYPARSE_PARAM_DECL
  8065.   {
  8066.     register int yystate;
  8067.     register int yyn;
  8068. --- 3330,3338 ----
  8069.   #endif
  8070.   #endif
  8071.   
  8072. ! #line 184 "/gnu/lib/bison.simple"
  8073.   int
  8074. ! yyparse()
  8075.   {
  8076.     register int yystate;
  8077.     register int yyn;
  8078. ***************
  8079. *** 4767,4787 ****
  8080.   #line 1253 "parse.y"
  8081.   { yyval.ttype = build_parse_node (ADDR_EXPR, yyvsp[0].ttype); ;
  8082.       break;}
  8083. ! case 228:
  8084. ! #line 1255 "parse.y"
  8085. ! { yyval.ttype = yyvsp[-1].ttype; ;
  8086. !     break;}
  8087. ! case 231:
  8088. ! #line 1262 "parse.y"
  8089.   { push_nested_class (TREE_TYPE (OP0 (yyval.ttype)), 3);
  8090.             TREE_COMPLEXITY (yyval.ttype) = current_class_depth; ;
  8091.       break;}
  8092. ! case 232:
  8093. ! #line 1265 "parse.y"
  8094. ! { yyval.ttype = finish_decl_parsing (yyvsp[-1].ttype); ;
  8095. !     break;}
  8096. ! case 233:
  8097. ! #line 1270 "parse.y"
  8098.   {
  8099.             if (TREE_CODE (yyval.ttype) == BIT_NOT_EXPR)
  8100.               yyval.ttype = build_x_unary_op (BIT_NOT_EXPR, TREE_OPERAND (yyval.ttype, 0));
  8101. --- 4719,4731 ----
  8102.   #line 1253 "parse.y"
  8103.   { yyval.ttype = build_parse_node (ADDR_EXPR, yyvsp[0].ttype); ;
  8104.       break;}
  8105. ! case 230:
  8106. ! #line 1260 "parse.y"
  8107.   { push_nested_class (TREE_TYPE (OP0 (yyval.ttype)), 3);
  8108.             TREE_COMPLEXITY (yyval.ttype) = current_class_depth; ;
  8109.       break;}
  8110. ! case 231:
  8111. ! #line 1266 "parse.y"
  8112.   {
  8113.             if (TREE_CODE (yyval.ttype) == BIT_NOT_EXPR)
  8114.               yyval.ttype = build_x_unary_op (BIT_NOT_EXPR, TREE_OPERAND (yyval.ttype, 0));
  8115. ***************
  8116. *** 4801,4820 ****
  8117.               yyval.ttype = do_identifier (yyval.ttype);
  8118.           ;
  8119.       break;}
  8120. ! case 236:
  8121. ! #line 1291 "parse.y"
  8122.   { yyval.ttype = combine_strings (yyval.ttype); ;
  8123.       break;}
  8124. ! case 237:
  8125. ! #line 1293 "parse.y"
  8126.   { yyval.ttype = yyvsp[-1].ttype; ;
  8127.       break;}
  8128. ! case 238:
  8129. ! #line 1295 "parse.y"
  8130.   { yyval.ttype = error_mark_node; ;
  8131.       break;}
  8132. ! case 239:
  8133. ! #line 1297 "parse.y"
  8134.   { if (current_function_decl == 0)
  8135.               {
  8136.                 error ("braced-group within expression allowed only inside a function");
  8137. --- 4745,4764 ----
  8138.               yyval.ttype = do_identifier (yyval.ttype);
  8139.           ;
  8140.       break;}
  8141. ! case 234:
  8142. ! #line 1287 "parse.y"
  8143.   { yyval.ttype = combine_strings (yyval.ttype); ;
  8144.       break;}
  8145. ! case 235:
  8146. ! #line 1289 "parse.y"
  8147.   { yyval.ttype = yyvsp[-1].ttype; ;
  8148.       break;}
  8149. ! case 236:
  8150. ! #line 1291 "parse.y"
  8151.   { yyval.ttype = error_mark_node; ;
  8152.       break;}
  8153. ! case 237:
  8154. ! #line 1293 "parse.y"
  8155.   { if (current_function_decl == 0)
  8156.               {
  8157.                 error ("braced-group within expression allowed only inside a function");
  8158. ***************
  8159. *** 4823,4830 ****
  8160.             keep_next_level ();
  8161.             yyval.ttype = expand_start_stmt_expr (); ;
  8162.       break;}
  8163. ! case 240:
  8164. ! #line 1305 "parse.y"
  8165.   { tree rtl_exp;
  8166.             if (flag_ansi)
  8167.               pedwarn ("ANSI C++ forbids braced-groups within expressions");
  8168. --- 4767,4774 ----
  8169.             keep_next_level ();
  8170.             yyval.ttype = expand_start_stmt_expr (); ;
  8171.       break;}
  8172. ! case 238:
  8173. ! #line 1301 "parse.y"
  8174.   { tree rtl_exp;
  8175.             if (flag_ansi)
  8176.               pedwarn ("ANSI C++ forbids braced-groups within expressions");
  8177. ***************
  8178. *** 4846,4861 ****
  8179.               yyval.ttype = yyvsp[-1].ttype;
  8180.           ;
  8181.       break;}
  8182. ! case 241:
  8183. ! #line 1326 "parse.y"
  8184.   { /* [eichin:19911016.1902EST] */
  8185.                     yyval.ttype = build_x_function_call (yyvsp[-3].ttype, yyvsp[-1].ttype, current_class_decl); 
  8186.                     /* here we instantiate_class_template as needed... */
  8187.                     do_pending_templates ();
  8188.                   ;
  8189.       break;}
  8190. ! case 242:
  8191. ! #line 1330 "parse.y"
  8192.   {
  8193.                     if (TREE_CODE (yyvsp[-1].ttype) == CALL_EXPR
  8194.                         && TREE_TYPE (yyvsp[-1].ttype) != void_type_node)
  8195. --- 4790,4805 ----
  8196.               yyval.ttype = yyvsp[-1].ttype;
  8197.           ;
  8198.       break;}
  8199. ! case 239:
  8200. ! #line 1322 "parse.y"
  8201.   { /* [eichin:19911016.1902EST] */
  8202.                     yyval.ttype = build_x_function_call (yyvsp[-3].ttype, yyvsp[-1].ttype, current_class_decl); 
  8203.                     /* here we instantiate_class_template as needed... */
  8204.                     do_pending_templates ();
  8205.                   ;
  8206.       break;}
  8207. ! case 240:
  8208. ! #line 1326 "parse.y"
  8209.   {
  8210.                     if (TREE_CODE (yyvsp[-1].ttype) == CALL_EXPR
  8211.                         && TREE_TYPE (yyvsp[-1].ttype) != void_type_node)
  8212. ***************
  8213. *** 4864,4871 ****
  8214.                       yyval.ttype = yyvsp[-1].ttype;
  8215.                   ;
  8216.       break;}
  8217. ! case 243:
  8218. ! #line 1338 "parse.y"
  8219.   {
  8220.             yyval.ttype = build_x_function_call (yyval.ttype, NULL_TREE, current_class_decl);
  8221.             if (TREE_CODE (yyval.ttype) == CALL_EXPR
  8222. --- 4808,4815 ----
  8223.                       yyval.ttype = yyvsp[-1].ttype;
  8224.                   ;
  8225.       break;}
  8226. ! case 241:
  8227. ! #line 1334 "parse.y"
  8228.   {
  8229.             yyval.ttype = build_x_function_call (yyval.ttype, NULL_TREE, current_class_decl);
  8230.             if (TREE_CODE (yyval.ttype) == CALL_EXPR
  8231. ***************
  8232. *** 4873,4884 ****
  8233.               yyval.ttype = require_complete_type (yyval.ttype);
  8234.                   ;
  8235.       break;}
  8236. ! case 244:
  8237. ! #line 1345 "parse.y"
  8238.   { yyval.ttype = grok_array_decl (yyval.ttype, yyvsp[-1].ttype); ;
  8239.       break;}
  8240. ! case 245:
  8241. ! #line 1347 "parse.y"
  8242.   { /* If we get an OFFSET_REF, turn it into what it really
  8243.                means (e.g., a COMPONENT_REF).  This way if we've got,
  8244.                say, a reference to a static member that's being operated
  8245. --- 4817,4828 ----
  8246.               yyval.ttype = require_complete_type (yyval.ttype);
  8247.                   ;
  8248.       break;}
  8249. ! case 242:
  8250. ! #line 1341 "parse.y"
  8251.   { yyval.ttype = grok_array_decl (yyval.ttype, yyvsp[-1].ttype); ;
  8252.       break;}
  8253. ! case 243:
  8254. ! #line 1343 "parse.y"
  8255.   { /* If we get an OFFSET_REF, turn it into what it really
  8256.                means (e.g., a COMPONENT_REF).  This way if we've got,
  8257.                say, a reference to a static member that's being operated
  8258. ***************
  8259. *** 4888,4901 ****
  8260.               yyval.ttype = resolve_offset_ref (yyval.ttype);
  8261.             yyval.ttype = build_x_unary_op (POSTINCREMENT_EXPR, yyval.ttype); ;
  8262.       break;}
  8263. ! case 246:
  8264. ! #line 1356 "parse.y"
  8265.   { if (TREE_CODE (yyval.ttype) == OFFSET_REF)
  8266.               yyval.ttype = resolve_offset_ref (yyval.ttype);
  8267.             yyval.ttype = build_x_unary_op (POSTDECREMENT_EXPR, yyval.ttype); ;
  8268.       break;}
  8269. ! case 247:
  8270. ! #line 1361 "parse.y"
  8271.   { if (current_class_decl)
  8272.               {
  8273.   #ifdef WARNING_ABOUT_CCD
  8274. --- 4832,4845 ----
  8275.               yyval.ttype = resolve_offset_ref (yyval.ttype);
  8276.             yyval.ttype = build_x_unary_op (POSTINCREMENT_EXPR, yyval.ttype); ;
  8277.       break;}
  8278. ! case 244:
  8279. ! #line 1352 "parse.y"
  8280.   { if (TREE_CODE (yyval.ttype) == OFFSET_REF)
  8281.               yyval.ttype = resolve_offset_ref (yyval.ttype);
  8282.             yyval.ttype = build_x_unary_op (POSTDECREMENT_EXPR, yyval.ttype); ;
  8283.       break;}
  8284. ! case 245:
  8285. ! #line 1357 "parse.y"
  8286.   { if (current_class_decl)
  8287.               {
  8288.   #ifdef WARNING_ABOUT_CCD
  8289. ***************
  8290. *** 4919,4926 ****
  8291.               }
  8292.           ;
  8293.       break;}
  8294. ! case 248:
  8295. ! #line 1384 "parse.y"
  8296.   {
  8297.             tree type;
  8298.             tree id = yyval.ttype;
  8299. --- 4863,4870 ----
  8300.               }
  8301.           ;
  8302.       break;}
  8303. ! case 246:
  8304. ! #line 1380 "parse.y"
  8305.   {
  8306.             tree type;
  8307.             tree id = yyval.ttype;
  8308. ***************
  8309. *** 4965,5001 ****
  8310.               }
  8311.           ;
  8312.       break;}
  8313. ! case 250:
  8314. ! #line 1429 "parse.y"
  8315.   { tree type = groktypename (yyvsp[-4].ttype);
  8316.             yyval.ttype = build_dynamic_cast (type, yyvsp[-1].ttype); ;
  8317.       break;}
  8318. ! case 251:
  8319. ! #line 1432 "parse.y"
  8320.   { tree type = groktypename (yyvsp[-4].ttype);
  8321.             yyval.ttype = build_static_cast (type, yyvsp[-1].ttype); ;
  8322.       break;}
  8323. ! case 252:
  8324. ! #line 1435 "parse.y"
  8325.   { tree type = groktypename (yyvsp[-4].ttype);
  8326.             yyval.ttype = build_reinterpret_cast (type, yyvsp[-1].ttype); ;
  8327.       break;}
  8328. ! case 253:
  8329. ! #line 1438 "parse.y"
  8330.   { tree type = groktypename (yyvsp[-4].ttype);
  8331.             yyval.ttype = build_const_cast (type, yyvsp[-1].ttype); ;
  8332.       break;}
  8333. ! case 254:
  8334. ! #line 1441 "parse.y"
  8335.   { yyval.ttype = build_typeid (yyvsp[-1].ttype); ;
  8336.       break;}
  8337. ! case 255:
  8338. ! #line 1443 "parse.y"
  8339.   { tree type = groktypename (yyvsp[-1].ttype);
  8340.             yyval.ttype = get_typeid (type); ;
  8341.       break;}
  8342. ! case 256:
  8343. ! #line 1446 "parse.y"
  8344.   {
  8345.           do_scoped_id:
  8346.             yyval.ttype = IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype);
  8347. --- 4909,4945 ----
  8348.               }
  8349.           ;
  8350.       break;}
  8351. ! case 248:
  8352. ! #line 1425 "parse.y"
  8353.   { tree type = groktypename (yyvsp[-4].ttype);
  8354.             yyval.ttype = build_dynamic_cast (type, yyvsp[-1].ttype); ;
  8355.       break;}
  8356. ! case 249:
  8357. ! #line 1428 "parse.y"
  8358.   { tree type = groktypename (yyvsp[-4].ttype);
  8359.             yyval.ttype = build_static_cast (type, yyvsp[-1].ttype); ;
  8360.       break;}
  8361. ! case 250:
  8362. ! #line 1431 "parse.y"
  8363.   { tree type = groktypename (yyvsp[-4].ttype);
  8364.             yyval.ttype = build_reinterpret_cast (type, yyvsp[-1].ttype); ;
  8365.       break;}
  8366. ! case 251:
  8367. ! #line 1434 "parse.y"
  8368.   { tree type = groktypename (yyvsp[-4].ttype);
  8369.             yyval.ttype = build_const_cast (type, yyvsp[-1].ttype); ;
  8370.       break;}
  8371. ! case 252:
  8372. ! #line 1437 "parse.y"
  8373.   { yyval.ttype = build_typeid (yyvsp[-1].ttype); ;
  8374.       break;}
  8375. ! case 253:
  8376. ! #line 1439 "parse.y"
  8377.   { tree type = groktypename (yyvsp[-1].ttype);
  8378.             yyval.ttype = get_typeid (type); ;
  8379.       break;}
  8380. ! case 254:
  8381. ! #line 1442 "parse.y"
  8382.   {
  8383.           do_scoped_id:
  8384.             yyval.ttype = IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype);
  8385. ***************
  8386. *** 5035,5042 ****
  8387.   
  8388.           ;
  8389.       break;}
  8390. ! case 257:
  8391. ! #line 1485 "parse.y"
  8392.   {
  8393.             got_scope = NULL_TREE;
  8394.             if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
  8395. --- 4979,4986 ----
  8396.   
  8397.           ;
  8398.       break;}
  8399. ! case 255:
  8400. ! #line 1481 "parse.y"
  8401.   {
  8402.             got_scope = NULL_TREE;
  8403.             if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
  8404. ***************
  8405. *** 5044,5071 ****
  8406.             yyval.ttype = yyvsp[0].ttype;
  8407.           ;
  8408.       break;}
  8409.   case 258:
  8410.   #line 1492 "parse.y"
  8411. ! { yyval.ttype = build_offset_ref (OP0 (yyval.ttype), OP1 (yyval.ttype)); ;
  8412.       break;}
  8413.   case 259:
  8414.   #line 1494 "parse.y"
  8415. ! { yyval.ttype = build_member_call (OP0 (yyval.ttype), OP1 (yyval.ttype), yyvsp[-1].ttype); ;
  8416.       break;}
  8417.   case 260:
  8418.   #line 1496 "parse.y"
  8419. ! { yyval.ttype = build_member_call (OP0 (yyval.ttype), OP1 (yyval.ttype), NULL_TREE); ;
  8420.       break;}
  8421.   case 261:
  8422.   #line 1498 "parse.y"
  8423. - { yyval.ttype = build_component_ref (yyval.ttype, yyvsp[0].ttype, NULL_TREE, 1); ;
  8424. -     break;}
  8425. - case 262:
  8426. - #line 1500 "parse.y"
  8427. - { yyval.ttype = build_object_ref (yyval.ttype, OP0 (yyvsp[0].ttype), OP1 (yyvsp[0].ttype)); ;
  8428. -     break;}
  8429. - case 263:
  8430. - #line 1502 "parse.y"
  8431.   {
  8432.   #if 0
  8433.             /* This is a future direction of this code, but because
  8434. --- 4988,5015 ----
  8435.             yyval.ttype = yyvsp[0].ttype;
  8436.           ;
  8437.       break;}
  8438. + case 256:
  8439. + #line 1488 "parse.y"
  8440. + { yyval.ttype = build_offset_ref (OP0 (yyval.ttype), OP1 (yyval.ttype)); ;
  8441. +     break;}
  8442. + case 257:
  8443. + #line 1490 "parse.y"
  8444. + { yyval.ttype = build_member_call (OP0 (yyval.ttype), OP1 (yyval.ttype), yyvsp[-1].ttype); ;
  8445. +     break;}
  8446.   case 258:
  8447.   #line 1492 "parse.y"
  8448. ! { yyval.ttype = build_member_call (OP0 (yyval.ttype), OP1 (yyval.ttype), NULL_TREE); ;
  8449.       break;}
  8450.   case 259:
  8451.   #line 1494 "parse.y"
  8452. ! { yyval.ttype = build_component_ref (yyval.ttype, yyvsp[0].ttype, NULL_TREE, 1); ;
  8453.       break;}
  8454.   case 260:
  8455.   #line 1496 "parse.y"
  8456. ! { yyval.ttype = build_object_ref (yyval.ttype, OP0 (yyvsp[0].ttype), OP1 (yyvsp[0].ttype)); ;
  8457.       break;}
  8458.   case 261:
  8459.   #line 1498 "parse.y"
  8460.   {
  8461.   #if 0
  8462.             /* This is a future direction of this code, but because
  8463. ***************
  8464. *** 5081,5088 ****
  8465.   #endif
  8466.           ;
  8467.       break;}
  8468. ! case 264:
  8469. ! #line 1517 "parse.y"
  8470.   {
  8471.   #if 0
  8472.             /* This is a future direction of this code, but because
  8473. --- 5025,5032 ----
  8474.   #endif
  8475.           ;
  8476.       break;}
  8477. ! case 262:
  8478. ! #line 1513 "parse.y"
  8479.   {
  8480.   #if 0
  8481.             /* This is a future direction of this code, but because
  8482. ***************
  8483. *** 5098,5105 ****
  8484.   #endif
  8485.           ;
  8486.       break;}
  8487. ! case 265:
  8488. ! #line 1532 "parse.y"
  8489.   {
  8490.             if (IS_SIGNATURE (IDENTIFIER_TYPE_VALUE (OP0 (yyvsp[-3].ttype))))
  8491.               {
  8492. --- 5042,5049 ----
  8493.   #endif
  8494.           ;
  8495.       break;}
  8496. ! case 263:
  8497. ! #line 1528 "parse.y"
  8498.   {
  8499.             if (IS_SIGNATURE (IDENTIFIER_TYPE_VALUE (OP0 (yyvsp[-3].ttype))))
  8500.               {
  8501. ***************
  8502. *** 5111,5118 ****
  8503.               yyval.ttype = build_scoped_method_call (yyval.ttype, OP0 (yyvsp[-3].ttype), OP1 (yyvsp[-3].ttype), yyvsp[-1].ttype);
  8504.           ;
  8505.       break;}
  8506. ! case 266:
  8507. ! #line 1543 "parse.y"
  8508.   {
  8509.             if (IS_SIGNATURE (IDENTIFIER_TYPE_VALUE (OP0 (yyvsp[-1].ttype))))
  8510.               {
  8511. --- 5055,5062 ----
  8512.               yyval.ttype = build_scoped_method_call (yyval.ttype, OP0 (yyvsp[-3].ttype), OP1 (yyvsp[-3].ttype), yyvsp[-1].ttype);
  8513.           ;
  8514.       break;}
  8515. ! case 264:
  8516. ! #line 1539 "parse.y"
  8517.   {
  8518.             if (IS_SIGNATURE (IDENTIFIER_TYPE_VALUE (OP0 (yyvsp[-1].ttype))))
  8519.               {
  8520. ***************
  8521. *** 5124,5131 ****
  8522.               yyval.ttype = build_scoped_method_call (yyval.ttype, OP0 (yyvsp[-1].ttype), OP1 (yyvsp[-1].ttype), NULL_TREE);
  8523.           ;
  8524.       break;}
  8525. ! case 267:
  8526. ! #line 1555 "parse.y"
  8527.   { 
  8528.             if (TREE_CODE (TREE_TYPE (yyvsp[-3].ttype)) 
  8529.                 != TREE_CODE (TREE_TYPE (IDENTIFIER_GLOBAL_VALUE (yyvsp[-1].ttype))))
  8530. --- 5068,5075 ----
  8531.               yyval.ttype = build_scoped_method_call (yyval.ttype, OP0 (yyvsp[-1].ttype), OP1 (yyvsp[-1].ttype), NULL_TREE);
  8532.           ;
  8533.       break;}
  8534. ! case 265:
  8535. ! #line 1551 "parse.y"
  8536.   { 
  8537.             if (TREE_CODE (TREE_TYPE (yyvsp[-3].ttype)) 
  8538.                 != TREE_CODE (TREE_TYPE (IDENTIFIER_GLOBAL_VALUE (yyvsp[-1].ttype))))
  8539. ***************
  8540. *** 5133,5140 ****
  8541.             yyval.ttype = convert (void_type_node, yyvsp[-3].ttype);
  8542.           ;
  8543.       break;}
  8544. ! case 268:
  8545. ! #line 1562 "parse.y"
  8546.   { 
  8547.             if (yyvsp[-4].ttype != yyvsp[-1].ttype)
  8548.               cp_error ("destructor specifier `%T::~%T()' must have matching names", yyvsp[-4].ttype, yyvsp[-1].ttype);
  8549. --- 5077,5084 ----
  8550.             yyval.ttype = convert (void_type_node, yyvsp[-3].ttype);
  8551.           ;
  8552.       break;}
  8553. ! case 266:
  8554. ! #line 1558 "parse.y"
  8555.   { 
  8556.             if (yyvsp[-4].ttype != yyvsp[-1].ttype)
  8557.               cp_error ("destructor specifier `%T::~%T()' must have matching names", yyvsp[-4].ttype, yyvsp[-1].ttype);
  8558. ***************
  8559. *** 5144,5179 ****
  8560.             yyval.ttype = convert (void_type_node, yyvsp[-5].ttype);
  8561.           ;
  8562.       break;}
  8563. ! case 269:
  8564. ! #line 1611 "parse.y"
  8565.   { yyval.itype = 0; ;
  8566.       break;}
  8567. ! case 270:
  8568. ! #line 1613 "parse.y"
  8569.   { got_scope = NULL_TREE; yyval.itype = 1; ;
  8570.       break;}
  8571. ! case 271:
  8572. ! #line 1617 "parse.y"
  8573.   { yyval.itype = 0; ;
  8574.       break;}
  8575. ! case 272:
  8576. ! #line 1619 "parse.y"
  8577.   { got_scope = NULL_TREE; yyval.itype = 1; ;
  8578.       break;}
  8579. ! case 273:
  8580. ! #line 1624 "parse.y"
  8581.   { yyval.ttype = true_node; ;
  8582.       break;}
  8583. ! case 274:
  8584. ! #line 1626 "parse.y"
  8585.   { yyval.ttype = false_node; ;
  8586.       break;}
  8587. ! case 276:
  8588. ! #line 1633 "parse.y"
  8589.   { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
  8590.       break;}
  8591. ! case 277:
  8592. ! #line 1638 "parse.y"
  8593.   {
  8594.             if (! current_function_parms_stored)
  8595.               store_parm_decls ();
  8596. --- 5088,5123 ----
  8597.             yyval.ttype = convert (void_type_node, yyvsp[-5].ttype);
  8598.           ;
  8599.       break;}
  8600. ! case 267:
  8601. ! #line 1607 "parse.y"
  8602.   { yyval.itype = 0; ;
  8603.       break;}
  8604. ! case 268:
  8605. ! #line 1609 "parse.y"
  8606.   { got_scope = NULL_TREE; yyval.itype = 1; ;
  8607.       break;}
  8608. ! case 269:
  8609. ! #line 1613 "parse.y"
  8610.   { yyval.itype = 0; ;
  8611.       break;}
  8612. ! case 270:
  8613. ! #line 1615 "parse.y"
  8614.   { got_scope = NULL_TREE; yyval.itype = 1; ;
  8615.       break;}
  8616. ! case 271:
  8617. ! #line 1620 "parse.y"
  8618.   { yyval.ttype = true_node; ;
  8619.       break;}
  8620. ! case 272:
  8621. ! #line 1622 "parse.y"
  8622.   { yyval.ttype = false_node; ;
  8623.       break;}
  8624. ! case 274:
  8625. ! #line 1629 "parse.y"
  8626.   { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
  8627.       break;}
  8628. ! case 275:
  8629. ! #line 1634 "parse.y"
  8630.   {
  8631.             if (! current_function_parms_stored)
  8632.               store_parm_decls ();
  8633. ***************
  8634. *** 5184,5197 ****
  8635.             keep_next_level ();
  8636.           ;
  8637.       break;}
  8638. ! case 279:
  8639. ! #line 1651 "parse.y"
  8640.   {
  8641.             yyval.ttype = build_x_arrow (yyval.ttype);
  8642.           ;
  8643.       break;}
  8644. ! case 280:
  8645. ! #line 1659 "parse.y"
  8646.   { tree d = get_decl_list (yyvsp[-2].ttype);
  8647.             int yes = suspend_momentary ();
  8648.             d = start_decl (yyvsp[-1].ttype, d, 0, NULL_TREE);
  8649. --- 5128,5141 ----
  8650.             keep_next_level ();
  8651.           ;
  8652.       break;}
  8653. ! case 277:
  8654. ! #line 1647 "parse.y"
  8655.   {
  8656.             yyval.ttype = build_x_arrow (yyval.ttype);
  8657.           ;
  8658.       break;}
  8659. ! case 278:
  8660. ! #line 1655 "parse.y"
  8661.   { tree d = get_decl_list (yyvsp[-2].ttype);
  8662.             int yes = suspend_momentary ();
  8663.             d = start_decl (yyvsp[-1].ttype, d, 0, NULL_TREE);
  8664. ***************
  8665. *** 5201,5208 ****
  8666.               note_got_semicolon (yyvsp[-2].ttype);
  8667.           ;
  8668.       break;}
  8669. ! case 281:
  8670. ! #line 1668 "parse.y"
  8671.   { tree d = yyvsp[-2].ttype;
  8672.             int yes = suspend_momentary ();
  8673.             d = start_decl (yyvsp[-1].ttype, d, 0, NULL_TREE);
  8674. --- 5145,5152 ----
  8675.               note_got_semicolon (yyvsp[-2].ttype);
  8676.           ;
  8677.       break;}
  8678. ! case 279:
  8679. ! #line 1664 "parse.y"
  8680.   { tree d = yyvsp[-2].ttype;
  8681.             int yes = suspend_momentary ();
  8682.             d = start_decl (yyvsp[-1].ttype, d, 0, NULL_TREE);
  8683. ***************
  8684. *** 5211,5374 ****
  8685.             note_list_got_semicolon (yyvsp[-2].ttype);
  8686.           ;
  8687.       break;}
  8688. ! case 282:
  8689. ! #line 1676 "parse.y"
  8690.   {
  8691.             resume_momentary (yyvsp[-1].itype);
  8692.             if (IS_AGGR_TYPE_CODE (TREE_CODE (yyvsp[-2].ttype)))
  8693.               note_got_semicolon (yyvsp[-2].ttype);
  8694.           ;
  8695.       break;}
  8696. ! case 283:
  8697. ! #line 1682 "parse.y"
  8698.   {
  8699.             resume_momentary (yyvsp[-1].itype);
  8700.             note_list_got_semicolon (yyvsp[-2].ttype);
  8701.           ;
  8702.       break;}
  8703. ! case 284:
  8704. ! #line 1687 "parse.y"
  8705.   { resume_momentary (yyvsp[-1].itype); ;
  8706.       break;}
  8707. ! case 285:
  8708. ! #line 1689 "parse.y"
  8709.   {
  8710.             shadow_tag (yyvsp[-1].ttype);
  8711.             note_list_got_semicolon (yyvsp[-1].ttype);
  8712.           ;
  8713.       break;}
  8714. ! case 286:
  8715. ! #line 1694 "parse.y"
  8716.   { warning ("empty declaration"); ;
  8717.       break;}
  8718. ! case 289:
  8719. ! #line 1708 "parse.y"
  8720.   { yyval.ttype = build_parse_node (CALL_EXPR, NULL_TREE, empty_parms (),
  8721.                        NULL_TREE); ;
  8722.       break;}
  8723. ! case 290:
  8724. ! #line 1711 "parse.y"
  8725.   { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), 
  8726.                        NULL_TREE); ;
  8727.       break;}
  8728.   case 291:
  8729.   #line 1718 "parse.y"
  8730. ! { yyval.ttype = build_decl_list (yyval.ttype, yyvsp[0].ttype); ;
  8731.       break;}
  8732.   case 292:
  8733.   #line 1720 "parse.y"
  8734. ! { yyval.ttype = build_decl_list (yyval.ttype, yyvsp[0].ttype); ;
  8735.       break;}
  8736.   case 293:
  8737.   #line 1722 "parse.y"
  8738. - { yyval.ttype = build_decl_list (get_decl_list (yyval.ttype), yyvsp[0].ttype); ;
  8739. -     break;}
  8740. - case 294:
  8741. - #line 1724 "parse.y"
  8742.   { yyval.ttype = build_decl_list (yyval.ttype, NULL_TREE); ;
  8743.       break;}
  8744. ! case 295:
  8745. ! #line 1726 "parse.y"
  8746. ! { yyval.ttype = build_decl_list (yyval.ttype, NULL_TREE); ;
  8747.       break;}
  8748.   case 298:
  8749.   #line 1739 "parse.y"
  8750. ! { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  8751.       break;}
  8752.   case 299:
  8753.   #line 1741 "parse.y"
  8754. ! { yyval.ttype = decl_tree_cons (NULL_TREE, yyval.ttype, yyvsp[0].ttype); ;
  8755.       break;}
  8756.   case 300:
  8757.   #line 1743 "parse.y"
  8758. - { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype)); ;
  8759. -     break;}
  8760. - case 301:
  8761. - #line 1745 "parse.y"
  8762. - { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype)); ;
  8763. -     break;}
  8764. - case 302:
  8765. - #line 1747 "parse.y"
  8766.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-2].ttype, 
  8767.                          chainon (yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype))); ;
  8768.       break;}
  8769. ! case 303:
  8770. ! #line 1753 "parse.y"
  8771.   { if (extra_warnings)
  8772.               warning ("`%s' is not at beginning of declaration",
  8773.                    IDENTIFIER_POINTER (yyval.ttype));
  8774.             yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
  8775.       break;}
  8776. ! case 304:
  8777. ! #line 1758 "parse.y"
  8778.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  8779.       break;}
  8780. ! case 305:
  8781. ! #line 1760 "parse.y"
  8782.   { if (extra_warnings)
  8783.               warning ("`%s' is not at beginning of declaration",
  8784.                    IDENTIFIER_POINTER (yyvsp[0].ttype));
  8785.             yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  8786.       break;}
  8787. ! case 306:
  8788. ! #line 1772 "parse.y"
  8789.   { TREE_STATIC (yyval.ttype) = 1; ;
  8790.       break;}
  8791. ! case 307:
  8792. ! #line 1774 "parse.y"
  8793.   { yyval.ttype = IDENTIFIER_AS_LIST (yyval.ttype); ;
  8794.       break;}
  8795. ! case 308:
  8796. ! #line 1776 "parse.y"
  8797.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype);
  8798.             TREE_STATIC (yyval.ttype) = 1; ;
  8799.       break;}
  8800. ! case 309:
  8801. ! #line 1779 "parse.y"
  8802.   { if (extra_warnings && TREE_STATIC (yyval.ttype))
  8803.               warning ("`%s' is not at beginning of declaration",
  8804.                    IDENTIFIER_POINTER (yyvsp[0].ttype));
  8805.             yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype);
  8806.             TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;
  8807.       break;}
  8808. ! case 310:
  8809. ! #line 1795 "parse.y"
  8810.   { yyval.ttype = get_decl_list (yyval.ttype); ;
  8811.       break;}
  8812. ! case 311:
  8813. ! #line 1797 "parse.y"
  8814.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  8815.       break;}
  8816. ! case 312:
  8817. ! #line 1799 "parse.y"
  8818.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyval.ttype, yyvsp[0].ttype); ;
  8819.       break;}
  8820. ! case 313:
  8821. ! #line 1801 "parse.y"
  8822.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype)); ;
  8823.       break;}
  8824. ! case 314:
  8825. ! #line 1806 "parse.y"
  8826.   { yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
  8827.       break;}
  8828. ! case 315:
  8829. ! #line 1808 "parse.y"
  8830.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  8831.       break;}
  8832. ! case 319:
  8833. ! #line 1819 "parse.y"
  8834.   { yyval.ttype = TREE_TYPE (yyvsp[-1].ttype);
  8835.             if (flag_ansi)
  8836.               pedwarn ("ANSI C++ forbids `typeof'"); ;
  8837.       break;}
  8838. ! case 320:
  8839. ! #line 1823 "parse.y"
  8840.   { yyval.ttype = groktypename (yyvsp[-1].ttype);
  8841.             if (flag_ansi)
  8842.               pedwarn ("ANSI C++ forbids `typeof'"); ;
  8843.       break;}
  8844. ! case 321:
  8845. ! #line 1827 "parse.y"
  8846.   { tree type = TREE_TYPE (yyvsp[-1].ttype);
  8847.   
  8848.             if (IS_AGGR_TYPE (type))
  8849. --- 5155,5318 ----
  8850.             note_list_got_semicolon (yyvsp[-2].ttype);
  8851.           ;
  8852.       break;}
  8853. ! case 280:
  8854. ! #line 1672 "parse.y"
  8855.   {
  8856.             resume_momentary (yyvsp[-1].itype);
  8857.             if (IS_AGGR_TYPE_CODE (TREE_CODE (yyvsp[-2].ttype)))
  8858.               note_got_semicolon (yyvsp[-2].ttype);
  8859.           ;
  8860.       break;}
  8861. ! case 281:
  8862. ! #line 1678 "parse.y"
  8863.   {
  8864.             resume_momentary (yyvsp[-1].itype);
  8865.             note_list_got_semicolon (yyvsp[-2].ttype);
  8866.           ;
  8867.       break;}
  8868. ! case 282:
  8869. ! #line 1683 "parse.y"
  8870.   { resume_momentary (yyvsp[-1].itype); ;
  8871.       break;}
  8872. ! case 283:
  8873. ! #line 1685 "parse.y"
  8874.   {
  8875.             shadow_tag (yyvsp[-1].ttype);
  8876.             note_list_got_semicolon (yyvsp[-1].ttype);
  8877.           ;
  8878.       break;}
  8879. ! case 284:
  8880. ! #line 1690 "parse.y"
  8881.   { warning ("empty declaration"); ;
  8882.       break;}
  8883. ! case 287:
  8884. ! #line 1704 "parse.y"
  8885.   { yyval.ttype = build_parse_node (CALL_EXPR, NULL_TREE, empty_parms (),
  8886.                        NULL_TREE); ;
  8887.       break;}
  8888. ! case 288:
  8889. ! #line 1707 "parse.y"
  8890.   { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), 
  8891.                        NULL_TREE); ;
  8892.       break;}
  8893. + case 289:
  8894. + #line 1714 "parse.y"
  8895. + { yyval.ttype = build_decl_list (yyval.ttype, yyvsp[0].ttype); ;
  8896. +     break;}
  8897. + case 290:
  8898. + #line 1716 "parse.y"
  8899. + { yyval.ttype = build_decl_list (yyval.ttype, yyvsp[0].ttype); ;
  8900. +     break;}
  8901.   case 291:
  8902.   #line 1718 "parse.y"
  8903. ! { yyval.ttype = build_decl_list (get_decl_list (yyval.ttype), yyvsp[0].ttype); ;
  8904.       break;}
  8905.   case 292:
  8906.   #line 1720 "parse.y"
  8907. ! { yyval.ttype = build_decl_list (yyval.ttype, NULL_TREE); ;
  8908.       break;}
  8909.   case 293:
  8910.   #line 1722 "parse.y"
  8911.   { yyval.ttype = build_decl_list (yyval.ttype, NULL_TREE); ;
  8912.       break;}
  8913. ! case 296:
  8914. ! #line 1735 "parse.y"
  8915. ! { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  8916. !     break;}
  8917. ! case 297:
  8918. ! #line 1737 "parse.y"
  8919. ! { yyval.ttype = decl_tree_cons (NULL_TREE, yyval.ttype, yyvsp[0].ttype); ;
  8920.       break;}
  8921.   case 298:
  8922.   #line 1739 "parse.y"
  8923. ! { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype)); ;
  8924.       break;}
  8925.   case 299:
  8926.   #line 1741 "parse.y"
  8927. ! { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype)); ;
  8928.       break;}
  8929.   case 300:
  8930.   #line 1743 "parse.y"
  8931.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-2].ttype, 
  8932.                          chainon (yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype))); ;
  8933.       break;}
  8934. ! case 301:
  8935. ! #line 1749 "parse.y"
  8936.   { if (extra_warnings)
  8937.               warning ("`%s' is not at beginning of declaration",
  8938.                    IDENTIFIER_POINTER (yyval.ttype));
  8939.             yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
  8940.       break;}
  8941. ! case 302:
  8942. ! #line 1754 "parse.y"
  8943.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  8944.       break;}
  8945. ! case 303:
  8946. ! #line 1756 "parse.y"
  8947.   { if (extra_warnings)
  8948.               warning ("`%s' is not at beginning of declaration",
  8949.                    IDENTIFIER_POINTER (yyvsp[0].ttype));
  8950.             yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  8951.       break;}
  8952. ! case 304:
  8953. ! #line 1768 "parse.y"
  8954.   { TREE_STATIC (yyval.ttype) = 1; ;
  8955.       break;}
  8956. ! case 305:
  8957. ! #line 1770 "parse.y"
  8958.   { yyval.ttype = IDENTIFIER_AS_LIST (yyval.ttype); ;
  8959.       break;}
  8960. ! case 306:
  8961. ! #line 1772 "parse.y"
  8962.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype);
  8963.             TREE_STATIC (yyval.ttype) = 1; ;
  8964.       break;}
  8965. ! case 307:
  8966. ! #line 1775 "parse.y"
  8967.   { if (extra_warnings && TREE_STATIC (yyval.ttype))
  8968.               warning ("`%s' is not at beginning of declaration",
  8969.                    IDENTIFIER_POINTER (yyvsp[0].ttype));
  8970.             yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype);
  8971.             TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;
  8972.       break;}
  8973. ! case 308:
  8974. ! #line 1791 "parse.y"
  8975.   { yyval.ttype = get_decl_list (yyval.ttype); ;
  8976.       break;}
  8977. ! case 309:
  8978. ! #line 1793 "parse.y"
  8979.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  8980.       break;}
  8981. ! case 310:
  8982. ! #line 1795 "parse.y"
  8983.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyval.ttype, yyvsp[0].ttype); ;
  8984.       break;}
  8985. ! case 311:
  8986. ! #line 1797 "parse.y"
  8987.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype)); ;
  8988.       break;}
  8989. ! case 312:
  8990. ! #line 1802 "parse.y"
  8991.   { yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
  8992.       break;}
  8993. ! case 313:
  8994. ! #line 1804 "parse.y"
  8995.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  8996.       break;}
  8997. ! case 317:
  8998. ! #line 1815 "parse.y"
  8999.   { yyval.ttype = TREE_TYPE (yyvsp[-1].ttype);
  9000.             if (flag_ansi)
  9001.               pedwarn ("ANSI C++ forbids `typeof'"); ;
  9002.       break;}
  9003. ! case 318:
  9004. ! #line 1819 "parse.y"
  9005.   { yyval.ttype = groktypename (yyvsp[-1].ttype);
  9006.             if (flag_ansi)
  9007.               pedwarn ("ANSI C++ forbids `typeof'"); ;
  9008.       break;}
  9009. ! case 319:
  9010. ! #line 1823 "parse.y"
  9011.   { tree type = TREE_TYPE (yyvsp[-1].ttype);
  9012.   
  9013.             if (IS_AGGR_TYPE (type))
  9014. ***************
  9015. *** 5383,5390 ****
  9016.               }
  9017.           ;
  9018.       break;}
  9019. ! case 322:
  9020. ! #line 1841 "parse.y"
  9021.   { tree type = groktypename (yyvsp[-1].ttype);
  9022.   
  9023.             if (IS_AGGR_TYPE (type))
  9024. --- 5327,5334 ----
  9025.               }
  9026.           ;
  9027.       break;}
  9028. ! case 320:
  9029. ! #line 1837 "parse.y"
  9030.   { tree type = groktypename (yyvsp[-1].ttype);
  9031.   
  9032.             if (IS_AGGR_TYPE (type))
  9033. ***************
  9034. *** 5399,5414 ****
  9035.               }
  9036.           ;
  9037.       break;}
  9038. ! case 332:
  9039. ! #line 1880 "parse.y"
  9040.   { yyval.ttype = NULL_TREE; ;
  9041.       break;}
  9042. ! case 333:
  9043. ! #line 1882 "parse.y"
  9044.   { if (TREE_CHAIN (yyvsp[-1].ttype)) yyvsp[-1].ttype = combine_strings (yyvsp[-1].ttype); yyval.ttype = yyvsp[-1].ttype; ;
  9045.       break;}
  9046. ! case 334:
  9047. ! #line 1887 "parse.y"
  9048.   { current_declspecs = yyvsp[-5].ttype;
  9049.             if (TREE_CODE (current_declspecs) != TREE_LIST)
  9050.               current_declspecs = get_decl_list (current_declspecs);
  9051. --- 5343,5358 ----
  9052.               }
  9053.           ;
  9054.       break;}
  9055. ! case 330:
  9056. ! #line 1876 "parse.y"
  9057.   { yyval.ttype = NULL_TREE; ;
  9058.       break;}
  9059. ! case 331:
  9060. ! #line 1878 "parse.y"
  9061.   { if (TREE_CHAIN (yyvsp[-1].ttype)) yyvsp[-1].ttype = combine_strings (yyvsp[-1].ttype); yyval.ttype = yyvsp[-1].ttype; ;
  9062.       break;}
  9063. ! case 332:
  9064. ! #line 1883 "parse.y"
  9065.   { current_declspecs = yyvsp[-5].ttype;
  9066.             if (TREE_CODE (current_declspecs) != TREE_LIST)
  9067.               current_declspecs = get_decl_list (current_declspecs);
  9068. ***************
  9069. *** 5423,5435 ****
  9070.             yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
  9071.             cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
  9072.       break;}
  9073. ! case 335:
  9074. ! #line 1902 "parse.y"
  9075.   { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0);
  9076.             yyval.itype = yyvsp[-2].itype; ;
  9077.       break;}
  9078. ! case 336:
  9079. ! #line 1905 "parse.y"
  9080.   { tree d;
  9081.             current_declspecs = yyvsp[-4].ttype;
  9082.             if (TREE_CODE (current_declspecs) != TREE_LIST)
  9083. --- 5367,5379 ----
  9084.             yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
  9085.             cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
  9086.       break;}
  9087. ! case 333:
  9088. ! #line 1898 "parse.y"
  9089.   { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0);
  9090.             yyval.itype = yyvsp[-2].itype; ;
  9091.       break;}
  9092. ! case 334:
  9093. ! #line 1901 "parse.y"
  9094.   { tree d;
  9095.             current_declspecs = yyvsp[-4].ttype;
  9096.             if (TREE_CODE (current_declspecs) != TREE_LIST)
  9097. ***************
  9098. *** 5446,5480 ****
  9099.             cplus_decl_attributes (d, yyvsp[0].ttype);
  9100.             finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 0); ;
  9101.       break;}
  9102. ! case 337:
  9103. ! #line 1924 "parse.y"
  9104.   { yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
  9105.             cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
  9106.       break;}
  9107. ! case 338:
  9108. ! #line 1928 "parse.y"
  9109.   { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0); ;
  9110.       break;}
  9111. ! case 339:
  9112. ! #line 1930 "parse.y"
  9113.   { yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 0, yyvsp[-2].ttype);
  9114.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype);
  9115.             finish_decl (yyval.ttype, NULL_TREE, yyvsp[-1].ttype, 0); ;
  9116.       break;}
  9117. ! case 340:
  9118. ! #line 1937 "parse.y"
  9119.   { current_declspecs = yyvsp[-5].ttype;
  9120.             yyvsp[0].itype = suspend_momentary ();
  9121.             yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
  9122.             cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
  9123.       break;}
  9124. ! case 341:
  9125. ! #line 1943 "parse.y"
  9126.   { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0);
  9127.             yyval.itype = yyvsp[-2].itype; ;
  9128.       break;}
  9129. ! case 342:
  9130. ! #line 1946 "parse.y"
  9131.   { tree d;
  9132.             current_declspecs = yyvsp[-4].ttype;
  9133.             yyval.itype = suspend_momentary ();
  9134. --- 5390,5424 ----
  9135.             cplus_decl_attributes (d, yyvsp[0].ttype);
  9136.             finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 0); ;
  9137.       break;}
  9138. ! case 335:
  9139. ! #line 1920 "parse.y"
  9140.   { yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
  9141.             cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
  9142.       break;}
  9143. ! case 336:
  9144. ! #line 1924 "parse.y"
  9145.   { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0); ;
  9146.       break;}
  9147. ! case 337:
  9148. ! #line 1926 "parse.y"
  9149.   { yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 0, yyvsp[-2].ttype);
  9150.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype);
  9151.             finish_decl (yyval.ttype, NULL_TREE, yyvsp[-1].ttype, 0); ;
  9152.       break;}
  9153. ! case 338:
  9154. ! #line 1933 "parse.y"
  9155.   { current_declspecs = yyvsp[-5].ttype;
  9156.             yyvsp[0].itype = suspend_momentary ();
  9157.             yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
  9158.             cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
  9159.       break;}
  9160. ! case 339:
  9161. ! #line 1939 "parse.y"
  9162.   { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0);
  9163.             yyval.itype = yyvsp[-2].itype; ;
  9164.       break;}
  9165. ! case 340:
  9166. ! #line 1942 "parse.y"
  9167.   { tree d;
  9168.             current_declspecs = yyvsp[-4].ttype;
  9169.             yyval.itype = suspend_momentary ();
  9170. ***************
  9171. *** 5482,5501 ****
  9172.             cplus_decl_attributes (d, yyvsp[0].ttype);
  9173.             finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 0); ;
  9174.       break;}
  9175. ! case 343:
  9176. ! #line 1956 "parse.y"
  9177.   { current_declspecs = NULL_TREE;
  9178.             yyvsp[0].itype = suspend_momentary ();
  9179.             yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
  9180.             cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
  9181.       break;}
  9182. ! case 344:
  9183. ! #line 1962 "parse.y"
  9184.   { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0);
  9185.             yyval.itype = yyvsp[-2].itype; ;
  9186.       break;}
  9187. ! case 345:
  9188. ! #line 1965 "parse.y"
  9189.   { tree d;
  9190.             current_declspecs = NULL_TREE;
  9191.             yyval.itype = suspend_momentary ();
  9192. --- 5426,5445 ----
  9193.             cplus_decl_attributes (d, yyvsp[0].ttype);
  9194.             finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 0); ;
  9195.       break;}
  9196. ! case 341:
  9197. ! #line 1952 "parse.y"
  9198.   { current_declspecs = NULL_TREE;
  9199.             yyvsp[0].itype = suspend_momentary ();
  9200.             yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
  9201.             cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
  9202.       break;}
  9203. ! case 342:
  9204. ! #line 1958 "parse.y"
  9205.   { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0);
  9206.             yyval.itype = yyvsp[-2].itype; ;
  9207.       break;}
  9208. ! case 343:
  9209. ! #line 1961 "parse.y"
  9210.   { tree d;
  9211.             current_declspecs = NULL_TREE;
  9212.             yyval.itype = suspend_momentary ();
  9213. ***************
  9214. *** 5503,5649 ****
  9215.             cplus_decl_attributes (d, yyvsp[0].ttype);
  9216.             finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 0); ;
  9217.       break;}
  9218. ! case 346:
  9219. ! #line 1977 "parse.y"
  9220.   { yyval.ttype = NULL_TREE; ;
  9221.       break;}
  9222. ! case 347:
  9223. ! #line 1979 "parse.y"
  9224.   { yyval.ttype = yyvsp[0].ttype; ;
  9225.       break;}
  9226. ! case 348:
  9227. ! #line 1984 "parse.y"
  9228.   { yyval.ttype = yyvsp[0].ttype; ;
  9229.       break;}
  9230. ! case 349:
  9231. ! #line 1986 "parse.y"
  9232.   { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  9233.       break;}
  9234. ! case 350:
  9235. ! #line 1991 "parse.y"
  9236.   { yyval.ttype = yyvsp[-2].ttype; ;
  9237.       break;}
  9238. ! case 351:
  9239. ! #line 1996 "parse.y"
  9240.   { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
  9241.       break;}
  9242. ! case 352:
  9243. ! #line 1998 "parse.y"
  9244.   { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
  9245.       break;}
  9246. ! case 353:
  9247. ! #line 2003 "parse.y"
  9248.   { yyval.ttype = NULL_TREE; ;
  9249.       break;}
  9250. ! case 354:
  9251. ! #line 2005 "parse.y"
  9252.   { yyval.ttype = yyvsp[0].ttype; ;
  9253.       break;}
  9254. ! case 355:
  9255. ! #line 2007 "parse.y"
  9256.   { yyval.ttype = tree_cons (yyvsp[-3].ttype, NULL_TREE, build_tree_list (NULL_TREE, yyvsp[-1].ttype)); ;
  9257.       break;}
  9258. ! case 356:
  9259. ! #line 2009 "parse.y"
  9260.   { yyval.ttype = tree_cons (yyvsp[-5].ttype, NULL_TREE, tree_cons (NULL_TREE, yyvsp[-3].ttype, yyvsp[-1].ttype)); ;
  9261.       break;}
  9262. ! case 357:
  9263. ! #line 2011 "parse.y"
  9264.   { yyval.ttype = tree_cons (yyvsp[-3].ttype, NULL_TREE, yyvsp[-1].ttype); ;
  9265.       break;}
  9266. ! case 362:
  9267. ! #line 2027 "parse.y"
  9268.   { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
  9269.       break;}
  9270. ! case 363:
  9271. ! #line 2029 "parse.y"
  9272.   { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
  9273.       break;}
  9274. ! case 365:
  9275. ! #line 2035 "parse.y"
  9276.   { yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, NULL_TREE);
  9277.             TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
  9278.       break;}
  9279. ! case 366:
  9280. ! #line 2038 "parse.y"
  9281.   { yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, nreverse (yyvsp[-1].ttype));
  9282.             TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
  9283.       break;}
  9284. ! case 367:
  9285. ! #line 2041 "parse.y"
  9286.   { yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, nreverse (yyvsp[-2].ttype));
  9287.             TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
  9288.       break;}
  9289. ! case 368:
  9290. ! #line 2044 "parse.y"
  9291.   { yyval.ttype = NULL_TREE; ;
  9292.       break;}
  9293. ! case 369:
  9294. ! #line 2051 "parse.y"
  9295.   { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
  9296.       break;}
  9297. ! case 370:
  9298. ! #line 2053 "parse.y"
  9299.   { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  9300.       break;}
  9301. ! case 371:
  9302. ! #line 2056 "parse.y"
  9303.   { yyval.ttype = build_tree_list (yyvsp[-2].ttype, yyvsp[0].ttype); ;
  9304.       break;}
  9305. ! case 372:
  9306. ! #line 2058 "parse.y"
  9307.   { yyval.ttype = tree_cons (yyvsp[-2].ttype, yyvsp[0].ttype, yyval.ttype); ;
  9308.       break;}
  9309. ! case 373:
  9310. ! #line 2060 "parse.y"
  9311.   { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
  9312.       break;}
  9313. ! case 374:
  9314. ! #line 2062 "parse.y"
  9315.   { yyval.ttype = tree_cons (yyvsp[-2].ttype, yyvsp[0].ttype, yyval.ttype); ;
  9316.       break;}
  9317. ! case 375:
  9318. ! #line 2067 "parse.y"
  9319.   { yyvsp[0].itype = suspend_momentary ();
  9320.             yyval.ttype = start_enum (yyvsp[-1].ttype); ;
  9321.       break;}
  9322. ! case 376:
  9323. ! #line 2070 "parse.y"
  9324.   { yyval.ttype = finish_enum (yyvsp[-3].ttype, yyvsp[-2].ttype);
  9325.             resume_momentary ((int) yyvsp[-4].itype);
  9326.             check_for_missing_semicolon (yyvsp[-3].ttype); ;
  9327.       break;}
  9328. ! case 377:
  9329. ! #line 2074 "parse.y"
  9330.   { yyval.ttype = finish_enum (start_enum (yyvsp[-2].ttype), NULL_TREE);
  9331.             check_for_missing_semicolon (yyval.ttype); ;
  9332.       break;}
  9333. ! case 378:
  9334. ! #line 2077 "parse.y"
  9335.   { yyvsp[0].itype = suspend_momentary ();
  9336.             yyval.ttype = start_enum (make_anon_name ()); ;
  9337.       break;}
  9338. ! case 379:
  9339. ! #line 2080 "parse.y"
  9340.   { yyval.ttype = finish_enum (yyvsp[-3].ttype, yyvsp[-2].ttype);
  9341.             resume_momentary ((int) yyvsp[-5].itype);
  9342.             check_for_missing_semicolon (yyvsp[-3].ttype); ;
  9343.       break;}
  9344. ! case 380:
  9345. ! #line 2084 "parse.y"
  9346.   { yyval.ttype = finish_enum (start_enum (make_anon_name()), NULL_TREE);
  9347.             check_for_missing_semicolon (yyval.ttype); ;
  9348.       break;}
  9349. ! case 381:
  9350. ! #line 2087 "parse.y"
  9351.   { yyval.ttype = xref_tag (enum_type_node, yyvsp[0].ttype, NULL_TREE, 0); ;
  9352.       break;}
  9353. ! case 382:
  9354. ! #line 2089 "parse.y"
  9355.   { yyval.ttype = xref_tag (enum_type_node, yyvsp[0].ttype, NULL_TREE, 0); ;
  9356.       break;}
  9357. ! case 383:
  9358. ! #line 2093 "parse.y"
  9359.   {
  9360.             int semi;
  9361.             tree id;
  9362. --- 5447,5593 ----
  9363.             cplus_decl_attributes (d, yyvsp[0].ttype);
  9364.             finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 0); ;
  9365.       break;}
  9366. ! case 344:
  9367. ! #line 1973 "parse.y"
  9368.   { yyval.ttype = NULL_TREE; ;
  9369.       break;}
  9370. ! case 345:
  9371. ! #line 1975 "parse.y"
  9372.   { yyval.ttype = yyvsp[0].ttype; ;
  9373.       break;}
  9374. ! case 346:
  9375. ! #line 1980 "parse.y"
  9376.   { yyval.ttype = yyvsp[0].ttype; ;
  9377.       break;}
  9378. ! case 347:
  9379. ! #line 1982 "parse.y"
  9380.   { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  9381.       break;}
  9382. ! case 348:
  9383. ! #line 1987 "parse.y"
  9384.   { yyval.ttype = yyvsp[-2].ttype; ;
  9385.       break;}
  9386. ! case 349:
  9387. ! #line 1992 "parse.y"
  9388.   { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
  9389.       break;}
  9390. ! case 350:
  9391. ! #line 1994 "parse.y"
  9392.   { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
  9393.       break;}
  9394. ! case 351:
  9395. ! #line 1999 "parse.y"
  9396.   { yyval.ttype = NULL_TREE; ;
  9397.       break;}
  9398. ! case 352:
  9399. ! #line 2001 "parse.y"
  9400.   { yyval.ttype = yyvsp[0].ttype; ;
  9401.       break;}
  9402. ! case 353:
  9403. ! #line 2003 "parse.y"
  9404.   { yyval.ttype = tree_cons (yyvsp[-3].ttype, NULL_TREE, build_tree_list (NULL_TREE, yyvsp[-1].ttype)); ;
  9405.       break;}
  9406. ! case 354:
  9407. ! #line 2005 "parse.y"
  9408.   { yyval.ttype = tree_cons (yyvsp[-5].ttype, NULL_TREE, tree_cons (NULL_TREE, yyvsp[-3].ttype, yyvsp[-1].ttype)); ;
  9409.       break;}
  9410. ! case 355:
  9411. ! #line 2007 "parse.y"
  9412.   { yyval.ttype = tree_cons (yyvsp[-3].ttype, NULL_TREE, yyvsp[-1].ttype); ;
  9413.       break;}
  9414. ! case 360:
  9415. ! #line 2023 "parse.y"
  9416.   { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
  9417.       break;}
  9418. ! case 361:
  9419. ! #line 2025 "parse.y"
  9420.   { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
  9421.       break;}
  9422. ! case 363:
  9423. ! #line 2031 "parse.y"
  9424.   { yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, NULL_TREE);
  9425.             TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
  9426.       break;}
  9427. ! case 364:
  9428. ! #line 2034 "parse.y"
  9429.   { yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, nreverse (yyvsp[-1].ttype));
  9430.             TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
  9431.       break;}
  9432. ! case 365:
  9433. ! #line 2037 "parse.y"
  9434.   { yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, nreverse (yyvsp[-2].ttype));
  9435.             TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
  9436.       break;}
  9437. ! case 366:
  9438. ! #line 2040 "parse.y"
  9439.   { yyval.ttype = NULL_TREE; ;
  9440.       break;}
  9441. ! case 367:
  9442. ! #line 2047 "parse.y"
  9443.   { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
  9444.       break;}
  9445. ! case 368:
  9446. ! #line 2049 "parse.y"
  9447.   { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  9448.       break;}
  9449. ! case 369:
  9450. ! #line 2052 "parse.y"
  9451.   { yyval.ttype = build_tree_list (yyvsp[-2].ttype, yyvsp[0].ttype); ;
  9452.       break;}
  9453. ! case 370:
  9454. ! #line 2054 "parse.y"
  9455.   { yyval.ttype = tree_cons (yyvsp[-2].ttype, yyvsp[0].ttype, yyval.ttype); ;
  9456.       break;}
  9457. ! case 371:
  9458. ! #line 2056 "parse.y"
  9459.   { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
  9460.       break;}
  9461. ! case 372:
  9462. ! #line 2058 "parse.y"
  9463.   { yyval.ttype = tree_cons (yyvsp[-2].ttype, yyvsp[0].ttype, yyval.ttype); ;
  9464.       break;}
  9465. ! case 373:
  9466. ! #line 2063 "parse.y"
  9467.   { yyvsp[0].itype = suspend_momentary ();
  9468.             yyval.ttype = start_enum (yyvsp[-1].ttype); ;
  9469.       break;}
  9470. ! case 374:
  9471. ! #line 2066 "parse.y"
  9472.   { yyval.ttype = finish_enum (yyvsp[-3].ttype, yyvsp[-2].ttype);
  9473.             resume_momentary ((int) yyvsp[-4].itype);
  9474.             check_for_missing_semicolon (yyvsp[-3].ttype); ;
  9475.       break;}
  9476. ! case 375:
  9477. ! #line 2070 "parse.y"
  9478.   { yyval.ttype = finish_enum (start_enum (yyvsp[-2].ttype), NULL_TREE);
  9479.             check_for_missing_semicolon (yyval.ttype); ;
  9480.       break;}
  9481. ! case 376:
  9482. ! #line 2073 "parse.y"
  9483.   { yyvsp[0].itype = suspend_momentary ();
  9484.             yyval.ttype = start_enum (make_anon_name ()); ;
  9485.       break;}
  9486. ! case 377:
  9487. ! #line 2076 "parse.y"
  9488.   { yyval.ttype = finish_enum (yyvsp[-3].ttype, yyvsp[-2].ttype);
  9489.             resume_momentary ((int) yyvsp[-5].itype);
  9490.             check_for_missing_semicolon (yyvsp[-3].ttype); ;
  9491.       break;}
  9492. ! case 378:
  9493. ! #line 2080 "parse.y"
  9494.   { yyval.ttype = finish_enum (start_enum (make_anon_name()), NULL_TREE);
  9495.             check_for_missing_semicolon (yyval.ttype); ;
  9496.       break;}
  9497. ! case 379:
  9498. ! #line 2083 "parse.y"
  9499.   { yyval.ttype = xref_tag (enum_type_node, yyvsp[0].ttype, NULL_TREE, 0); ;
  9500.       break;}
  9501. ! case 380:
  9502. ! #line 2085 "parse.y"
  9503.   { yyval.ttype = xref_tag (enum_type_node, yyvsp[0].ttype, NULL_TREE, 0); ;
  9504.       break;}
  9505. ! case 381:
  9506. ! #line 2089 "parse.y"
  9507.   {
  9508.             int semi;
  9509.             tree id;
  9510. ***************
  9511. *** 5695,5702 ****
  9512.             if (! semi)
  9513.               check_for_missing_semicolon (yyval.ttype); ;
  9514.       break;}
  9515. ! case 384:
  9516. ! #line 2144 "parse.y"
  9517.   {
  9518.   #if 0
  9519.     /* It's no longer clear what the following error is supposed to
  9520. --- 5639,5646 ----
  9521.             if (! semi)
  9522.               check_for_missing_semicolon (yyval.ttype); ;
  9523.       break;}
  9524. ! case 382:
  9525. ! #line 2140 "parse.y"
  9526.   {
  9527.   #if 0
  9528.     /* It's no longer clear what the following error is supposed to
  9529. ***************
  9530. *** 5710,5781 ****
  9531.   #endif
  9532.           ;
  9533.       break;}
  9534. ! case 388:
  9535. ! #line 2166 "parse.y"
  9536.   { if (pedantic) pedwarn ("comma at end of enumerator list"); ;
  9537.       break;}
  9538. ! case 390:
  9539. ! #line 2171 "parse.y"
  9540.   { error ("storage class specifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
  9541.       break;}
  9542. ! case 391:
  9543. ! #line 2173 "parse.y"
  9544.   { error ("type specifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
  9545.       break;}
  9546. ! case 392:
  9547. ! #line 2175 "parse.y"
  9548.   { error ("type qualifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
  9549.       break;}
  9550. ! case 393:
  9551. ! #line 2177 "parse.y"
  9552.   { error ("no body nor ';' separates two class, struct or union declarations"); ;
  9553.       break;}
  9554. ! case 394:
  9555. ! #line 2182 "parse.y"
  9556.   { 
  9557.             yyungetc (';', 1); current_aggr = yyval.ttype; yyval.ttype = yyvsp[-1].ttype; 
  9558.             if (yyvsp[-3].ttype == ridpointers[(int) RID_TEMPLATE])
  9559.               instantiate_class_template (yyval.ttype, 2);
  9560.           ;
  9561.       break;}
  9562. ! case 395:
  9563. ! #line 2191 "parse.y"
  9564.   { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
  9565.       break;}
  9566. ! case 396:
  9567. ! #line 2193 "parse.y"
  9568.   { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
  9569.       break;}
  9570. ! case 397:
  9571. ! #line 2195 "parse.y"
  9572.   { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
  9573.       break;}
  9574. ! case 398:
  9575. ! #line 2197 "parse.y"
  9576.   { yyungetc ('{', 1);
  9577.           aggr2:
  9578.             current_aggr = yyval.ttype;
  9579.             yyval.ttype = yyvsp[-1].ttype;
  9580.             overload_template_name (yyval.ttype, 0); ;
  9581.       break;}
  9582. ! case 399:
  9583. ! #line 2203 "parse.y"
  9584.   { yyungetc (':', 1); goto aggr2; ;
  9585.       break;}
  9586. ! case 401:
  9587. ! #line 2209 "parse.y"
  9588.   { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
  9589.       break;}
  9590. ! case 402:
  9591. ! #line 2213 "parse.y"
  9592.   { yyval.ttype = xref_tag (current_aggr, yyvsp[0].ttype, NULL_TREE, 1); ;
  9593.       break;}
  9594. ! case 403:
  9595. ! #line 2216 "parse.y"
  9596.   { yyval.ttype = xref_defn_tag (current_aggr, yyvsp[0].ttype, NULL_TREE); ;
  9597.       break;}
  9598. ! case 404:
  9599. ! #line 2221 "parse.y"
  9600.   {
  9601.             if (yyvsp[0].ttype)
  9602.               yyval.ttype = xref_tag (current_aggr, yyvsp[-2].ttype, yyvsp[0].ttype, 1);
  9603. --- 5654,5725 ----
  9604.   #endif
  9605.           ;
  9606.       break;}
  9607. ! case 386:
  9608. ! #line 2162 "parse.y"
  9609.   { if (pedantic) pedwarn ("comma at end of enumerator list"); ;
  9610.       break;}
  9611. ! case 388:
  9612. ! #line 2167 "parse.y"
  9613.   { error ("storage class specifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
  9614.       break;}
  9615. ! case 389:
  9616. ! #line 2169 "parse.y"
  9617.   { error ("type specifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
  9618.       break;}
  9619. ! case 390:
  9620. ! #line 2171 "parse.y"
  9621.   { error ("type qualifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
  9622.       break;}
  9623. ! case 391:
  9624. ! #line 2173 "parse.y"
  9625.   { error ("no body nor ';' separates two class, struct or union declarations"); ;
  9626.       break;}
  9627. ! case 392:
  9628. ! #line 2178 "parse.y"
  9629.   { 
  9630.             yyungetc (';', 1); current_aggr = yyval.ttype; yyval.ttype = yyvsp[-1].ttype; 
  9631.             if (yyvsp[-3].ttype == ridpointers[(int) RID_TEMPLATE])
  9632.               instantiate_class_template (yyval.ttype, 2);
  9633.           ;
  9634.       break;}
  9635. ! case 393:
  9636. ! #line 2187 "parse.y"
  9637.   { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
  9638.       break;}
  9639. ! case 394:
  9640. ! #line 2189 "parse.y"
  9641.   { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
  9642.       break;}
  9643. ! case 395:
  9644. ! #line 2191 "parse.y"
  9645.   { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
  9646.       break;}
  9647. ! case 396:
  9648. ! #line 2193 "parse.y"
  9649.   { yyungetc ('{', 1);
  9650.           aggr2:
  9651.             current_aggr = yyval.ttype;
  9652.             yyval.ttype = yyvsp[-1].ttype;
  9653.             overload_template_name (yyval.ttype, 0); ;
  9654.       break;}
  9655. ! case 397:
  9656. ! #line 2199 "parse.y"
  9657.   { yyungetc (':', 1); goto aggr2; ;
  9658.       break;}
  9659. ! case 399:
  9660. ! #line 2205 "parse.y"
  9661.   { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
  9662.       break;}
  9663. ! case 400:
  9664. ! #line 2209 "parse.y"
  9665.   { yyval.ttype = xref_tag (current_aggr, yyvsp[0].ttype, NULL_TREE, 1); ;
  9666.       break;}
  9667. ! case 401:
  9668. ! #line 2212 "parse.y"
  9669.   { yyval.ttype = xref_defn_tag (current_aggr, yyvsp[0].ttype, NULL_TREE); ;
  9670.       break;}
  9671. ! case 402:
  9672. ! #line 2217 "parse.y"
  9673.   {
  9674.             if (yyvsp[0].ttype)
  9675.               yyval.ttype = xref_tag (current_aggr, yyvsp[-2].ttype, yyvsp[0].ttype, 1);
  9676. ***************
  9677. *** 5783,5790 ****
  9678.               yyval.ttype = yyvsp[-1].ttype;
  9679.           ;
  9680.       break;}
  9681. ! case 405:
  9682. ! #line 2230 "parse.y"
  9683.   {
  9684.             if (yyvsp[0].ttype)
  9685.               yyval.ttype = xref_defn_tag (current_aggr, yyvsp[-2].ttype, yyvsp[0].ttype);
  9686. --- 5727,5734 ----
  9687.               yyval.ttype = yyvsp[-1].ttype;
  9688.           ;
  9689.       break;}
  9690. ! case 403:
  9691. ! #line 2226 "parse.y"
  9692.   {
  9693.             if (yyvsp[0].ttype)
  9694.               yyval.ttype = xref_defn_tag (current_aggr, yyvsp[-2].ttype, yyvsp[0].ttype);
  9695. ***************
  9696. *** 5792,5820 ****
  9697.               yyval.ttype = yyvsp[-1].ttype;
  9698.           ;
  9699.       break;}
  9700. ! case 406:
  9701. ! #line 2239 "parse.y"
  9702.   { yyval.ttype = xref_tag (yyval.ttype, make_anon_name (), NULL_TREE, 0);
  9703.             yyungetc ('{', 1); ;
  9704.       break;}
  9705. ! case 409:
  9706. ! #line 2247 "parse.y"
  9707.   { yyval.ttype = NULL_TREE; ;
  9708.       break;}
  9709. ! case 410:
  9710. ! #line 2249 "parse.y"
  9711.   { yyungetc(':', 1); yyval.ttype = NULL_TREE; ;
  9712.       break;}
  9713. ! case 411:
  9714. ! #line 2251 "parse.y"
  9715.   { yyval.ttype = yyvsp[0].ttype; ;
  9716.       break;}
  9717. ! case 413:
  9718. ! #line 2257 "parse.y"
  9719.   { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
  9720.       break;}
  9721. ! case 414:
  9722. ! #line 2262 "parse.y"
  9723.   {
  9724.             tree type;
  9725.            do_base_class1:
  9726. --- 5736,5764 ----
  9727.               yyval.ttype = yyvsp[-1].ttype;
  9728.           ;
  9729.       break;}
  9730. ! case 404:
  9731. ! #line 2235 "parse.y"
  9732.   { yyval.ttype = xref_tag (yyval.ttype, make_anon_name (), NULL_TREE, 0);
  9733.             yyungetc ('{', 1); ;
  9734.       break;}
  9735. ! case 407:
  9736. ! #line 2243 "parse.y"
  9737.   { yyval.ttype = NULL_TREE; ;
  9738.       break;}
  9739. ! case 408:
  9740. ! #line 2245 "parse.y"
  9741.   { yyungetc(':', 1); yyval.ttype = NULL_TREE; ;
  9742.       break;}
  9743. ! case 409:
  9744. ! #line 2247 "parse.y"
  9745.   { yyval.ttype = yyvsp[0].ttype; ;
  9746.       break;}
  9747. ! case 411:
  9748. ! #line 2253 "parse.y"
  9749.   { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
  9750.       break;}
  9751. ! case 412:
  9752. ! #line 2258 "parse.y"
  9753.   {
  9754.             tree type;
  9755.            do_base_class1:
  9756. ***************
  9757. *** 5842,5849 ****
  9758.               yyval.ttype = build_tree_list ((tree)access_default, yyval.ttype);
  9759.           ;
  9760.       break;}
  9761. ! case 415:
  9762. ! #line 2289 "parse.y"
  9763.   {
  9764.             tree type;
  9765.            do_base_class2:
  9766. --- 5786,5793 ----
  9767.               yyval.ttype = build_tree_list ((tree)access_default, yyval.ttype);
  9768.           ;
  9769.       break;}
  9770. ! case 413:
  9771. ! #line 2285 "parse.y"
  9772.   {
  9773.             tree type;
  9774.            do_base_class2:
  9775. ***************
  9776. *** 5873,5880 ****
  9777.               yyval.ttype = build_tree_list ((tree) yyval.ttype, yyvsp[0].ttype);
  9778.           ;
  9779.       break;}
  9780. ! case 417:
  9781. ! #line 2322 "parse.y"
  9782.   {
  9783.             if (current_aggr == signature_type_node)
  9784.               {
  9785. --- 5817,5824 ----
  9786.               yyval.ttype = build_tree_list ((tree) yyval.ttype, yyvsp[0].ttype);
  9787.           ;
  9788.       break;}
  9789. ! case 415:
  9790. ! #line 2318 "parse.y"
  9791.   {
  9792.             if (current_aggr == signature_type_node)
  9793.               {
  9794. ***************
  9795. *** 5897,5904 ****
  9796.               }
  9797.           ;
  9798.       break;}
  9799. ! case 418:
  9800. ! #line 2344 "parse.y"
  9801.   {
  9802.             if (current_aggr == signature_type_node)
  9803.               {
  9804. --- 5841,5848 ----
  9805.               }
  9806.           ;
  9807.       break;}
  9808. ! case 416:
  9809. ! #line 2340 "parse.y"
  9810.   {
  9811.             if (current_aggr == signature_type_node)
  9812.               {
  9813. ***************
  9814. *** 5921,5934 ****
  9815.               }
  9816.           ;
  9817.       break;}
  9818. ! case 420:
  9819. ! #line 2370 "parse.y"
  9820.   { if (yyval.ttype != ridpointers[(int)RID_VIRTUAL])
  9821.               sorry ("non-virtual access");
  9822.             yyval.itype = access_default_virtual; ;
  9823.       break;}
  9824. ! case 421:
  9825. ! #line 2374 "parse.y"
  9826.   { int err = 0;
  9827.             if (yyvsp[0].itype == access_protected)
  9828.               {
  9829. --- 5865,5878 ----
  9830.               }
  9831.           ;
  9832.       break;}
  9833. ! case 418:
  9834. ! #line 2366 "parse.y"
  9835.   { if (yyval.ttype != ridpointers[(int)RID_VIRTUAL])
  9836.               sorry ("non-virtual access");
  9837.             yyval.itype = access_default_virtual; ;
  9838.       break;}
  9839. ! case 419:
  9840. ! #line 2370 "parse.y"
  9841.   { int err = 0;
  9842.             if (yyvsp[0].itype == access_protected)
  9843.               {
  9844. ***************
  9845. *** 5955,5962 ****
  9846.               }
  9847.           ;
  9848.       break;}
  9849. ! case 422:
  9850. ! #line 2400 "parse.y"
  9851.   { if (yyvsp[0].ttype != ridpointers[(int)RID_VIRTUAL])
  9852.               sorry ("non-virtual access");
  9853.             if (yyval.itype == access_public)
  9854. --- 5899,5906 ----
  9855.               }
  9856.           ;
  9857.       break;}
  9858. ! case 420:
  9859. ! #line 2396 "parse.y"
  9860.   { if (yyvsp[0].ttype != ridpointers[(int)RID_VIRTUAL])
  9861.               sorry ("non-virtual access");
  9862.             if (yyval.itype == access_public)
  9863. ***************
  9864. *** 5964,5971 ****
  9865.             else if (yyval.itype == access_private)
  9866.               yyval.itype = access_private_virtual; ;
  9867.       break;}
  9868. ! case 423:
  9869. ! #line 2409 "parse.y"
  9870.   { tree t = yyvsp[-1].ttype;
  9871.             push_obstacks_nochange ();
  9872.             end_temporary_allocation ();
  9873. --- 5908,5915 ----
  9874.             else if (yyval.itype == access_private)
  9875.               yyval.itype = access_private_virtual; ;
  9876.       break;}
  9877. ! case 421:
  9878. ! #line 2405 "parse.y"
  9879.   { tree t = yyvsp[-1].ttype;
  9880.             push_obstacks_nochange ();
  9881.             end_temporary_allocation ();
  9882. ***************
  9883. *** 6026,6037 ****
  9884.   #endif
  9885.           ;
  9886.       break;}
  9887. ! case 424:
  9888. ! #line 2472 "parse.y"
  9889.   { yyval.ttype = NULL_TREE; ;
  9890.       break;}
  9891. ! case 425:
  9892. ! #line 2474 "parse.y"
  9893.   {
  9894.             if (current_aggr == signature_type_node)
  9895.               yyval.ttype = build_tree_list ((tree) access_public, yyval.ttype);
  9896. --- 5970,5981 ----
  9897.   #endif
  9898.           ;
  9899.       break;}
  9900. ! case 422:
  9901. ! #line 2468 "parse.y"
  9902.   { yyval.ttype = NULL_TREE; ;
  9903.       break;}
  9904. ! case 423:
  9905. ! #line 2470 "parse.y"
  9906.   {
  9907.             if (current_aggr == signature_type_node)
  9908.               yyval.ttype = build_tree_list ((tree) access_public, yyval.ttype);
  9909. ***************
  9910. *** 6039,6046 ****
  9911.               yyval.ttype = build_tree_list ((tree) access_default, yyval.ttype);
  9912.           ;
  9913.       break;}
  9914. ! case 426:
  9915. ! #line 2481 "parse.y"
  9916.   {
  9917.             tree visspec = (tree) yyvsp[-2].itype;
  9918.   
  9919. --- 5983,5990 ----
  9920.               yyval.ttype = build_tree_list ((tree) access_default, yyval.ttype);
  9921.           ;
  9922.       break;}
  9923. ! case 424:
  9924. ! #line 2477 "parse.y"
  9925.   {
  9926.             tree visspec = (tree) yyvsp[-2].itype;
  9927.   
  9928. ***************
  9929. *** 6052,6071 ****
  9930.             yyval.ttype = chainon (yyval.ttype, build_tree_list (visspec, yyvsp[0].ttype));
  9931.           ;
  9932.       break;}
  9933. ! case 427:
  9934. ! #line 2492 "parse.y"
  9935.   {
  9936.             if (current_aggr == signature_type_node)
  9937.               error ("access specifier not allowed in signature");
  9938.           ;
  9939.       break;}
  9940. ! case 428:
  9941. ! #line 2502 "parse.y"
  9942.   { if (yyval.ttype == void_type_node) yyval.ttype = NULL_TREE; 
  9943.           ;
  9944.       break;}
  9945. ! case 429:
  9946. ! #line 2505 "parse.y"
  9947.   { /* In pushdecl, we created a reverse list of names
  9948.                in this binding level.  Make sure that the chain
  9949.                of what we're trying to add isn't the item itself
  9950. --- 5996,6015 ----
  9951.             yyval.ttype = chainon (yyval.ttype, build_tree_list (visspec, yyvsp[0].ttype));
  9952.           ;
  9953.       break;}
  9954. ! case 425:
  9955. ! #line 2488 "parse.y"
  9956.   {
  9957.             if (current_aggr == signature_type_node)
  9958.               error ("access specifier not allowed in signature");
  9959.           ;
  9960.       break;}
  9961. ! case 426:
  9962. ! #line 2498 "parse.y"
  9963.   { if (yyval.ttype == void_type_node) yyval.ttype = NULL_TREE; 
  9964.           ;
  9965.       break;}
  9966. ! case 427:
  9967. ! #line 2501 "parse.y"
  9968.   { /* In pushdecl, we created a reverse list of names
  9969.                in this binding level.  Make sure that the chain
  9970.                of what we're trying to add isn't the item itself
  9971. ***************
  9972. *** 6079,6142 ****
  9973.               }
  9974.           ;
  9975.       break;}
  9976. ! case 432:
  9977. ! #line 2523 "parse.y"
  9978.   { error ("missing ';' before right brace");
  9979.             yyungetc ('}', 0); ;
  9980.       break;}
  9981. ! case 433:
  9982. ! #line 2528 "parse.y"
  9983.   { yyval.ttype = finish_method (yyval.ttype); ;
  9984.       break;}
  9985. ! case 434:
  9986. ! #line 2530 "parse.y"
  9987.   { yyval.ttype = finish_method (yyval.ttype); ;
  9988.       break;}
  9989. ! case 435:
  9990. ! #line 2538 "parse.y"
  9991.   {
  9992.             yyval.ttype = grok_x_components (yyval.ttype, yyvsp[0].ttype);
  9993.           ;
  9994.       break;}
  9995. ! case 436:
  9996. ! #line 2542 "parse.y"
  9997.   { 
  9998.             yyval.ttype = grok_x_components (yyval.ttype, yyvsp[0].ttype);
  9999.           ;
  10000.       break;}
  10001. ! case 437:
  10002. ! #line 2546 "parse.y"
  10003.   { yyval.ttype = grokfield (yyval.ttype, NULL_TREE, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
  10004.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10005.       break;}
  10006. ! case 438:
  10007. ! #line 2549 "parse.y"
  10008.   { yyval.ttype = grokbitfield (NULL_TREE, NULL_TREE, yyvsp[0].ttype); ;
  10009.       break;}
  10010. ! case 439:
  10011. ! #line 2551 "parse.y"
  10012.   { yyval.ttype = NULL_TREE; ;
  10013.       break;}
  10014. ! case 440:
  10015. ! #line 2562 "parse.y"
  10016.   { yyval.ttype = build_parse_node (CALL_EXPR, TREE_VALUE (yyvsp[-4].ttype),
  10017.                        yyvsp[-2].ttype, yyvsp[0].ttype);
  10018.             yyval.ttype = grokfield (yyval.ttype, TREE_CHAIN (yyvsp[-4].ttype), NULL_TREE, NULL_TREE,
  10019.                     NULL_TREE); ;
  10020.       break;}
  10021. ! case 441:
  10022. ! #line 2567 "parse.y"
  10023.   { yyval.ttype = build_parse_node (CALL_EXPR, TREE_VALUE (yyvsp[-2].ttype),
  10024.                        empty_parms (), yyvsp[0].ttype);
  10025.             yyval.ttype = grokfield (yyval.ttype, TREE_CHAIN (yyvsp[-2].ttype), NULL_TREE, NULL_TREE,
  10026.                     NULL_TREE); ;
  10027.       break;}
  10028. ! case 442:
  10029. ! #line 2576 "parse.y"
  10030.   { yyval.ttype = NULL_TREE; ;
  10031.       break;}
  10032. ! case 444:
  10033. ! #line 2579 "parse.y"
  10034.   {
  10035.             /* In this context, void_type_node encodes
  10036.                friends.  They have been recorded elsewhere.  */
  10037. --- 6023,6086 ----
  10038.               }
  10039.           ;
  10040.       break;}
  10041. ! case 430:
  10042. ! #line 2519 "parse.y"
  10043.   { error ("missing ';' before right brace");
  10044.             yyungetc ('}', 0); ;
  10045.       break;}
  10046. ! case 431:
  10047. ! #line 2524 "parse.y"
  10048.   { yyval.ttype = finish_method (yyval.ttype); ;
  10049.       break;}
  10050. ! case 432:
  10051. ! #line 2526 "parse.y"
  10052.   { yyval.ttype = finish_method (yyval.ttype); ;
  10053.       break;}
  10054. ! case 433:
  10055. ! #line 2534 "parse.y"
  10056.   {
  10057.             yyval.ttype = grok_x_components (yyval.ttype, yyvsp[0].ttype);
  10058.           ;
  10059.       break;}
  10060. ! case 434:
  10061. ! #line 2538 "parse.y"
  10062.   { 
  10063.             yyval.ttype = grok_x_components (yyval.ttype, yyvsp[0].ttype);
  10064.           ;
  10065.       break;}
  10066. ! case 435:
  10067. ! #line 2542 "parse.y"
  10068.   { yyval.ttype = grokfield (yyval.ttype, NULL_TREE, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
  10069.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10070.       break;}
  10071. ! case 436:
  10072. ! #line 2545 "parse.y"
  10073.   { yyval.ttype = grokbitfield (NULL_TREE, NULL_TREE, yyvsp[0].ttype); ;
  10074.       break;}
  10075. ! case 437:
  10076. ! #line 2547 "parse.y"
  10077.   { yyval.ttype = NULL_TREE; ;
  10078.       break;}
  10079. ! case 438:
  10080. ! #line 2558 "parse.y"
  10081.   { yyval.ttype = build_parse_node (CALL_EXPR, TREE_VALUE (yyvsp[-4].ttype),
  10082.                        yyvsp[-2].ttype, yyvsp[0].ttype);
  10083.             yyval.ttype = grokfield (yyval.ttype, TREE_CHAIN (yyvsp[-4].ttype), NULL_TREE, NULL_TREE,
  10084.                     NULL_TREE); ;
  10085.       break;}
  10086. ! case 439:
  10087. ! #line 2563 "parse.y"
  10088.   { yyval.ttype = build_parse_node (CALL_EXPR, TREE_VALUE (yyvsp[-2].ttype),
  10089.                        empty_parms (), yyvsp[0].ttype);
  10090.             yyval.ttype = grokfield (yyval.ttype, TREE_CHAIN (yyvsp[-2].ttype), NULL_TREE, NULL_TREE,
  10091.                     NULL_TREE); ;
  10092.       break;}
  10093. ! case 440:
  10094. ! #line 2572 "parse.y"
  10095.   { yyval.ttype = NULL_TREE; ;
  10096.       break;}
  10097. ! case 442:
  10098. ! #line 2575 "parse.y"
  10099.   {
  10100.             /* In this context, void_type_node encodes
  10101.                friends.  They have been recorded elsewhere.  */
  10102. ***************
  10103. *** 6146,6157 ****
  10104.               yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype);
  10105.           ;
  10106.       break;}
  10107. ! case 445:
  10108. ! #line 2591 "parse.y"
  10109.   { yyval.ttype = NULL_TREE; ;
  10110.       break;}
  10111. ! case 447:
  10112. ! #line 2594 "parse.y"
  10113.   {
  10114.             /* In this context, void_type_node encodes
  10115.                friends.  They have been recorded elsewhere.  */
  10116. --- 6090,6101 ----
  10117.               yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype);
  10118.           ;
  10119.       break;}
  10120. ! case 443:
  10121. ! #line 2587 "parse.y"
  10122.   { yyval.ttype = NULL_TREE; ;
  10123.       break;}
  10124. ! case 445:
  10125. ! #line 2590 "parse.y"
  10126.   {
  10127.             /* In this context, void_type_node encodes
  10128.                friends.  They have been recorded elsewhere.  */
  10129. ***************
  10130. *** 6161,6265 ****
  10131.               yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype);
  10132.           ;
  10133.       break;}
  10134. ! case 452:
  10135. ! #line 2616 "parse.y"
  10136.   { current_declspecs = yyvsp[-4].ttype;
  10137.             yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
  10138.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10139.       break;}
  10140. ! case 453:
  10141. ! #line 2620 "parse.y"
  10142.   { current_declspecs = yyvsp[-6].ttype;
  10143.             yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
  10144.             cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
  10145.       break;}
  10146. ! case 454:
  10147. ! #line 2624 "parse.y"
  10148.   { current_declspecs = yyvsp[-4].ttype;
  10149.             yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
  10150.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10151.       break;}
  10152. ! case 455:
  10153. ! #line 2631 "parse.y"
  10154.   { current_declspecs = yyvsp[-4].ttype;
  10155.             yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
  10156.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10157.       break;}
  10158. ! case 456:
  10159. ! #line 2635 "parse.y"
  10160.   { current_declspecs = yyvsp[-6].ttype;
  10161.             yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
  10162.             cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
  10163.       break;}
  10164. ! case 457:
  10165. ! #line 2639 "parse.y"
  10166.   { current_declspecs = yyvsp[-4].ttype;
  10167.             yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
  10168.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10169.       break;}
  10170. ! case 458:
  10171. ! #line 2643 "parse.y"
  10172.   { current_declspecs = yyvsp[-3].ttype;
  10173.             yyval.ttype = grokbitfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype);
  10174.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10175.       break;}
  10176. ! case 459:
  10177. ! #line 2650 "parse.y"
  10178.   { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
  10179.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10180.       break;}
  10181. ! case 460:
  10182. ! #line 2653 "parse.y"
  10183.   { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
  10184.             cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
  10185.       break;}
  10186. ! case 461:
  10187. ! #line 2656 "parse.y"
  10188.   { yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
  10189.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10190.       break;}
  10191. ! case 462:
  10192. ! #line 2662 "parse.y"
  10193.   { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
  10194.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10195.       break;}
  10196. ! case 463:
  10197. ! #line 2665 "parse.y"
  10198.   { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
  10199.             cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
  10200.       break;}
  10201. ! case 464:
  10202. ! #line 2668 "parse.y"
  10203.   { yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
  10204.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10205.       break;}
  10206. ! case 465:
  10207. ! #line 2671 "parse.y"
  10208.   { yyval.ttype = grokbitfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype);
  10209.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10210.       break;}
  10211. ! case 467:
  10212. ! #line 2682 "parse.y"
  10213.   { TREE_CHAIN (yyvsp[0].ttype) = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
  10214.       break;}
  10215. ! case 468:
  10216. ! #line 2687 "parse.y"
  10217.   { yyval.ttype = build_enumerator (yyval.ttype, NULL_TREE); ;
  10218.       break;}
  10219. ! case 469:
  10220. ! #line 2689 "parse.y"
  10221.   { yyval.ttype = build_enumerator (yyval.ttype, yyvsp[0].ttype); ;
  10222.       break;}
  10223. ! case 470:
  10224. ! #line 2695 "parse.y"
  10225.   { yyval.ttype = build_decl_list (yyval.ttype, yyvsp[0].ttype); ;
  10226.       break;}
  10227. ! case 471:
  10228. ! #line 2697 "parse.y"
  10229.   { yyval.ttype = build_decl_list (yyval.ttype, NULL_TREE); ;
  10230.       break;}
  10231. ! case 472:
  10232. ! #line 2701 "parse.y"
  10233.   {
  10234.             if (flag_ansi)
  10235.               pedwarn ("ANSI C++ forbids array dimensions with parenthesized type in new");
  10236. --- 6105,6209 ----
  10237.               yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype);
  10238.           ;
  10239.       break;}
  10240. ! case 450:
  10241. ! #line 2612 "parse.y"
  10242.   { current_declspecs = yyvsp[-4].ttype;
  10243.             yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
  10244.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10245.       break;}
  10246. ! case 451:
  10247. ! #line 2616 "parse.y"
  10248.   { current_declspecs = yyvsp[-6].ttype;
  10249.             yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
  10250.             cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
  10251.       break;}
  10252. ! case 452:
  10253. ! #line 2620 "parse.y"
  10254.   { current_declspecs = yyvsp[-4].ttype;
  10255.             yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
  10256.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10257.       break;}
  10258. ! case 453:
  10259. ! #line 2627 "parse.y"
  10260.   { current_declspecs = yyvsp[-4].ttype;
  10261.             yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
  10262.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10263.       break;}
  10264. ! case 454:
  10265. ! #line 2631 "parse.y"
  10266.   { current_declspecs = yyvsp[-6].ttype;
  10267.             yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
  10268.             cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
  10269.       break;}
  10270. ! case 455:
  10271. ! #line 2635 "parse.y"
  10272.   { current_declspecs = yyvsp[-4].ttype;
  10273.             yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
  10274.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10275.       break;}
  10276. ! case 456:
  10277. ! #line 2639 "parse.y"
  10278.   { current_declspecs = yyvsp[-3].ttype;
  10279.             yyval.ttype = grokbitfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype);
  10280.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10281.       break;}
  10282. ! case 457:
  10283. ! #line 2646 "parse.y"
  10284.   { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
  10285.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10286.       break;}
  10287. ! case 458:
  10288. ! #line 2649 "parse.y"
  10289.   { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
  10290.             cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
  10291.       break;}
  10292. ! case 459:
  10293. ! #line 2652 "parse.y"
  10294.   { yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
  10295.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10296.       break;}
  10297. ! case 460:
  10298. ! #line 2658 "parse.y"
  10299.   { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
  10300.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10301.       break;}
  10302. ! case 461:
  10303. ! #line 2661 "parse.y"
  10304.   { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
  10305.             cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
  10306.       break;}
  10307. ! case 462:
  10308. ! #line 2664 "parse.y"
  10309.   { yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
  10310.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10311.       break;}
  10312. ! case 463:
  10313. ! #line 2667 "parse.y"
  10314.   { yyval.ttype = grokbitfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype);
  10315.             cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
  10316.       break;}
  10317. ! case 465:
  10318. ! #line 2678 "parse.y"
  10319.   { TREE_CHAIN (yyvsp[0].ttype) = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
  10320.       break;}
  10321. ! case 466:
  10322. ! #line 2683 "parse.y"
  10323.   { yyval.ttype = build_enumerator (yyval.ttype, NULL_TREE); ;
  10324.       break;}
  10325. ! case 467:
  10326. ! #line 2685 "parse.y"
  10327.   { yyval.ttype = build_enumerator (yyval.ttype, yyvsp[0].ttype); ;
  10328.       break;}
  10329. ! case 468:
  10330. ! #line 2691 "parse.y"
  10331.   { yyval.ttype = build_decl_list (yyval.ttype, yyvsp[0].ttype); ;
  10332.       break;}
  10333. ! case 469:
  10334. ! #line 2693 "parse.y"
  10335.   { yyval.ttype = build_decl_list (yyval.ttype, NULL_TREE); ;
  10336.       break;}
  10337. ! case 470:
  10338. ! #line 2697 "parse.y"
  10339.   {
  10340.             if (flag_ansi)
  10341.               pedwarn ("ANSI C++ forbids array dimensions with parenthesized type in new");
  10342. ***************
  10343. *** 6267,6320 ****
  10344.             yyval.ttype = build_decl_list (TREE_PURPOSE (yyvsp[-4].ttype), yyval.ttype);
  10345.           ;
  10346.       break;}
  10347. ! case 473:
  10348. ! #line 2711 "parse.y"
  10349.   { yyval.ttype = NULL_TREE; ;
  10350.       break;}
  10351.   case 474:
  10352. ! #line 2713 "parse.y"
  10353.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  10354.       break;}
  10355.   case 475:
  10356. ! #line 2718 "parse.y"
  10357. ! { yyval.ttype = IDENTIFIER_AS_LIST (yyval.ttype); ;
  10358.       break;}
  10359.   case 476:
  10360. ! #line 2720 "parse.y"
  10361. ! { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  10362.       break;}
  10363.   case 477:
  10364. ! #line 2728 "parse.y"
  10365. ! { yyval.itype = suspend_momentary (); ;
  10366.       break;}
  10367.   case 478:
  10368. ! #line 2729 "parse.y"
  10369. ! { resume_momentary ((int) yyvsp[-1].itype); yyval.ttype = yyvsp[0].ttype; ;
  10370.       break;}
  10371.   case 479:
  10372.   #line 2736 "parse.y"
  10373. ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10374.       break;}
  10375.   case 480:
  10376.   #line 2738 "parse.y"
  10377. ! { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10378.       break;}
  10379.   case 481:
  10380.   #line 2740 "parse.y"
  10381. - { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10382. -     break;}
  10383. - case 482:
  10384. - #line 2742 "parse.y"
  10385. - { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10386. -     break;}
  10387. - case 483:
  10388. - #line 2744 "parse.y"
  10389.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  10390.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  10391.           ;
  10392.       break;}
  10393. ! case 485:
  10394. ! #line 2752 "parse.y"
  10395.   {
  10396.             /* Remember that this name has been used in the class
  10397.                definition, as per [class.scope0] */
  10398. --- 6211,6264 ----
  10399.             yyval.ttype = build_decl_list (TREE_PURPOSE (yyvsp[-4].ttype), yyval.ttype);
  10400.           ;
  10401.       break;}
  10402. ! case 471:
  10403. ! #line 2707 "parse.y"
  10404.   { yyval.ttype = NULL_TREE; ;
  10405.       break;}
  10406. + case 472:
  10407. + #line 2709 "parse.y"
  10408. + { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  10409. +     break;}
  10410. + case 473:
  10411. + #line 2714 "parse.y"
  10412. + { yyval.ttype = IDENTIFIER_AS_LIST (yyval.ttype); ;
  10413. +     break;}
  10414.   case 474:
  10415. ! #line 2716 "parse.y"
  10416.   { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  10417.       break;}
  10418.   case 475:
  10419. ! #line 2724 "parse.y"
  10420. ! { yyval.itype = suspend_momentary (); ;
  10421.       break;}
  10422.   case 476:
  10423. ! #line 2725 "parse.y"
  10424. ! { resume_momentary ((int) yyvsp[-1].itype); yyval.ttype = yyvsp[0].ttype; ;
  10425.       break;}
  10426.   case 477:
  10427. ! #line 2732 "parse.y"
  10428. ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10429.       break;}
  10430.   case 478:
  10431. ! #line 2734 "parse.y"
  10432. ! { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10433.       break;}
  10434.   case 479:
  10435.   #line 2736 "parse.y"
  10436. ! { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10437.       break;}
  10438.   case 480:
  10439.   #line 2738 "parse.y"
  10440. ! { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10441.       break;}
  10442.   case 481:
  10443.   #line 2740 "parse.y"
  10444.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  10445.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  10446.           ;
  10447.       break;}
  10448. ! case 483:
  10449. ! #line 2748 "parse.y"
  10450.   {
  10451.             /* Remember that this name has been used in the class
  10452.                definition, as per [class.scope0] */
  10453. ***************
  10454. *** 6328,6604 ****
  10455.               }
  10456.           ;
  10457.       break;}
  10458. ! case 487:
  10459. ! #line 2769 "parse.y"
  10460.   { yyval.ttype = yyvsp[0].ttype; ;
  10461.       break;}
  10462.   case 488:
  10463.   #line 2774 "parse.y"
  10464. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10465.       break;}
  10466.   case 489:
  10467.   #line 2776 "parse.y"
  10468. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10469.       break;}
  10470.   case 490:
  10471.   #line 2778 "parse.y"
  10472. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), yyvsp[0].ttype); ;
  10473.       break;}
  10474.   case 491:
  10475.   #line 2780 "parse.y"
  10476. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, NULL_TREE, NULL_TREE); ;
  10477.       break;}
  10478.   case 492:
  10479.   #line 2782 "parse.y"
  10480. ! { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
  10481.       break;}
  10482.   case 493:
  10483.   #line 2784 "parse.y"
  10484. - { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
  10485. -     break;}
  10486. - case 494:
  10487. - #line 2786 "parse.y"
  10488. - { yyval.ttype = yyvsp[-1].ttype; ;
  10489. -     break;}
  10490. - case 495:
  10491. - #line 2788 "parse.y"
  10492.   { push_nested_class (TREE_TYPE (yyval.ttype), 3);
  10493.             yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype);
  10494.             TREE_COMPLEXITY (yyval.ttype) = current_class_depth; ;
  10495.       break;}
  10496. ! case 497:
  10497. ! #line 2799 "parse.y"
  10498.   { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10499.       break;}
  10500. ! case 498:
  10501. ! #line 2801 "parse.y"
  10502.   { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10503.       break;}
  10504. ! case 499:
  10505. ! #line 2803 "parse.y"
  10506.   { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10507.       break;}
  10508. ! case 500:
  10509. ! #line 2805 "parse.y"
  10510.   { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10511.       break;}
  10512. ! case 501:
  10513. ! #line 2807 "parse.y"
  10514.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  10515.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  10516.           ;
  10517.       break;}
  10518. ! case 503:
  10519. ! #line 2815 "parse.y"
  10520.   { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10521.       break;}
  10522. ! case 504:
  10523. ! #line 2817 "parse.y"
  10524.   { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10525.       break;}
  10526. ! case 505:
  10527. ! #line 2819 "parse.y"
  10528.   { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10529.       break;}
  10530. ! case 506:
  10531. ! #line 2821 "parse.y"
  10532.   { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10533.       break;}
  10534. ! case 507:
  10535. ! #line 2823 "parse.y"
  10536.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  10537.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  10538.           ;
  10539.       break;}
  10540.   case 509:
  10541.   #line 2831 "parse.y"
  10542. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10543.       break;}
  10544.   case 510:
  10545.   #line 2833 "parse.y"
  10546. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10547.       break;}
  10548.   case 511:
  10549.   #line 2835 "parse.y"
  10550. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), yyvsp[0].ttype); ;
  10551.       break;}
  10552.   case 512:
  10553.   #line 2837 "parse.y"
  10554. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, NULL_TREE, NULL_TREE); ;
  10555.       break;}
  10556.   case 513:
  10557.   #line 2839 "parse.y"
  10558. ! { yyval.ttype = yyvsp[-1].ttype; ;
  10559.       break;}
  10560.   case 514:
  10561.   #line 2841 "parse.y"
  10562. - { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
  10563. -     break;}
  10564. - case 515:
  10565. - #line 2843 "parse.y"
  10566.   { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
  10567.       break;}
  10568. ! case 516:
  10569. ! #line 2848 "parse.y"
  10570.   { got_scope = NULL_TREE;
  10571.             yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype); ;
  10572.       break;}
  10573. ! case 517:
  10574. ! #line 2854 "parse.y"
  10575.   { got_scope = NULL_TREE;
  10576.             yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype); ;
  10577.       break;}
  10578. ! case 519:
  10579. ! #line 2861 "parse.y"
  10580.   { yyval.ttype = yyvsp[0].ttype; ;
  10581.       break;}
  10582.   case 520:
  10583.   #line 2866 "parse.y"
  10584. ! { yyval.ttype = build_functional_cast (yyval.ttype, yyvsp[-1].ttype); ;
  10585.       break;}
  10586.   case 521:
  10587.   #line 2868 "parse.y"
  10588. - { yyval.ttype = reparse_decl_as_expr (yyval.ttype, yyvsp[-1].ttype); ;
  10589. -     break;}
  10590. - case 522:
  10591. - #line 2870 "parse.y"
  10592.   { yyval.ttype = reparse_absdcl_as_expr (yyval.ttype, yyvsp[0].ttype); ;
  10593.       break;}
  10594. ! case 526:
  10595. ! #line 2881 "parse.y"
  10596.   { yyval.ttype = yyvsp[0].ttype; ;
  10597.       break;}
  10598.   case 527:
  10599.   #line 2888 "parse.y"
  10600.   { got_scope = TREE_TYPE (yyval.ttype); ;
  10601.       break;}
  10602. ! case 528:
  10603. ! #line 2890 "parse.y"
  10604. ! { got_scope = TREE_TYPE (yyval.ttype); ;
  10605.       break;}
  10606. ! case 530:
  10607. ! #line 2906 "parse.y"
  10608.   { yyval.ttype = yyvsp[0].ttype; ;
  10609.       break;}
  10610.   case 532:
  10611. ! #line 2912 "parse.y"
  10612. ! { yyval.ttype = yyvsp[0].ttype; ;
  10613.       break;}
  10614.   case 533:
  10615.   #line 2917 "parse.y"
  10616. ! { got_scope = NULL_TREE; ;
  10617.       break;}
  10618.   case 534:
  10619. ! #line 2919 "parse.y"
  10620. ! { yyval.ttype = yyvsp[-1].ttype; got_scope = NULL_TREE; ;
  10621.       break;}
  10622.   case 535:
  10623. ! #line 2926 "parse.y"
  10624. ! { got_scope = void_type_node; ;
  10625.       break;}
  10626.   case 536:
  10627.   #line 2932 "parse.y"
  10628. ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10629.       break;}
  10630.   case 537:
  10631.   #line 2934 "parse.y"
  10632. ! { yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ;
  10633.       break;}
  10634.   case 538:
  10635.   #line 2936 "parse.y"
  10636. ! { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10637.       break;}
  10638.   case 539:
  10639.   #line 2938 "parse.y"
  10640. - { yyval.ttype = make_reference_declarator (yyvsp[0].ttype, NULL_TREE); ;
  10641. -     break;}
  10642. - case 540:
  10643. - #line 2940 "parse.y"
  10644.   { tree arg = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE);
  10645.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, arg);
  10646.           ;
  10647.       break;}
  10648. ! case 541:
  10649. ! #line 2944 "parse.y"
  10650.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  10651.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  10652.           ;
  10653.       break;}
  10654.   case 543:
  10655.   #line 2953 "parse.y"
  10656. ! { yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
  10657.       break;}
  10658.   case 544:
  10659. ! #line 2955 "parse.y"
  10660. ! { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
  10661.       break;}
  10662.   case 545:
  10663.   #line 2961 "parse.y"
  10664. ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10665.       break;}
  10666.   case 546:
  10667.   #line 2963 "parse.y"
  10668. ! { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10669.       break;}
  10670.   case 547:
  10671.   #line 2965 "parse.y"
  10672. ! { yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ;
  10673.       break;}
  10674.   case 548:
  10675.   #line 2967 "parse.y"
  10676. ! { yyval.ttype = make_pointer_declarator (NULL_TREE, NULL_TREE); ;
  10677.       break;}
  10678.   case 549:
  10679.   #line 2969 "parse.y"
  10680. ! { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10681.       break;}
  10682.   case 550:
  10683.   #line 2971 "parse.y"
  10684. ! { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10685.       break;}
  10686.   case 551:
  10687.   #line 2973 "parse.y"
  10688. ! { yyval.ttype = make_reference_declarator (yyvsp[0].ttype, NULL_TREE); ;
  10689.       break;}
  10690.   case 552:
  10691.   #line 2975 "parse.y"
  10692. - { yyval.ttype = make_reference_declarator (NULL_TREE, NULL_TREE); ;
  10693. -     break;}
  10694. - case 553:
  10695. - #line 2977 "parse.y"
  10696.   { tree arg = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE);
  10697.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, arg);
  10698.           ;
  10699.       break;}
  10700. ! case 554:
  10701. ! #line 2981 "parse.y"
  10702.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  10703.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  10704.           ;
  10705.       break;}
  10706. ! case 556:
  10707. ! #line 2990 "parse.y"
  10708.   { yyval.ttype = yyvsp[-1].ttype; ;
  10709.       break;}
  10710.   case 558:
  10711.   #line 2994 "parse.y"
  10712. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10713.       break;}
  10714.   case 559:
  10715.   #line 2996 "parse.y"
  10716. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), yyvsp[0].ttype); ;
  10717.       break;}
  10718.   case 560:
  10719.   #line 2998 "parse.y"
  10720. ! { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
  10721.       break;}
  10722.   case 561:
  10723.   #line 3000 "parse.y"
  10724. ! { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
  10725.       break;}
  10726.   case 562:
  10727.   #line 3002 "parse.y"
  10728. ! { yyval.ttype = build_parse_node (CALL_EXPR, NULL_TREE, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10729.       break;}
  10730.   case 563:
  10731.   #line 3004 "parse.y"
  10732. --- 6272,6556 ----
  10733.               }
  10734.           ;
  10735.       break;}
  10736. ! case 485:
  10737. ! #line 2765 "parse.y"
  10738.   { yyval.ttype = yyvsp[0].ttype; ;
  10739.       break;}
  10740. + case 486:
  10741. + #line 2770 "parse.y"
  10742. + { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10743. +     break;}
  10744. + case 487:
  10745. + #line 2772 "parse.y"
  10746. + { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10747. +     break;}
  10748.   case 488:
  10749.   #line 2774 "parse.y"
  10750. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), yyvsp[0].ttype); ;
  10751.       break;}
  10752.   case 489:
  10753.   #line 2776 "parse.y"
  10754. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, NULL_TREE, NULL_TREE); ;
  10755.       break;}
  10756.   case 490:
  10757.   #line 2778 "parse.y"
  10758. ! { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
  10759.       break;}
  10760.   case 491:
  10761.   #line 2780 "parse.y"
  10762. ! { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
  10763.       break;}
  10764.   case 492:
  10765.   #line 2782 "parse.y"
  10766. ! { yyval.ttype = yyvsp[-1].ttype; ;
  10767.       break;}
  10768.   case 493:
  10769.   #line 2784 "parse.y"
  10770.   { push_nested_class (TREE_TYPE (yyval.ttype), 3);
  10771.             yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype);
  10772.             TREE_COMPLEXITY (yyval.ttype) = current_class_depth; ;
  10773.       break;}
  10774. ! case 495:
  10775. ! #line 2795 "parse.y"
  10776.   { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10777.       break;}
  10778. ! case 496:
  10779. ! #line 2797 "parse.y"
  10780.   { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10781.       break;}
  10782. ! case 497:
  10783. ! #line 2799 "parse.y"
  10784.   { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10785.       break;}
  10786. ! case 498:
  10787. ! #line 2801 "parse.y"
  10788.   { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10789.       break;}
  10790. ! case 499:
  10791. ! #line 2803 "parse.y"
  10792.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  10793.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  10794.           ;
  10795.       break;}
  10796. ! case 501:
  10797. ! #line 2811 "parse.y"
  10798.   { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10799.       break;}
  10800. ! case 502:
  10801. ! #line 2813 "parse.y"
  10802.   { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10803.       break;}
  10804. ! case 503:
  10805. ! #line 2815 "parse.y"
  10806.   { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10807.       break;}
  10808. ! case 504:
  10809. ! #line 2817 "parse.y"
  10810.   { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10811.       break;}
  10812. ! case 505:
  10813. ! #line 2819 "parse.y"
  10814.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  10815.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  10816.           ;
  10817.       break;}
  10818. + case 507:
  10819. + #line 2827 "parse.y"
  10820. + { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10821. +     break;}
  10822. + case 508:
  10823. + #line 2829 "parse.y"
  10824. + { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10825. +     break;}
  10826.   case 509:
  10827.   #line 2831 "parse.y"
  10828. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), yyvsp[0].ttype); ;
  10829.       break;}
  10830.   case 510:
  10831.   #line 2833 "parse.y"
  10832. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, NULL_TREE, NULL_TREE); ;
  10833.       break;}
  10834.   case 511:
  10835.   #line 2835 "parse.y"
  10836. ! { yyval.ttype = finish_decl_parsing (yyvsp[-1].ttype); ;
  10837.       break;}
  10838.   case 512:
  10839.   #line 2837 "parse.y"
  10840. ! { yyval.ttype = yyvsp[-1].ttype; ;
  10841.       break;}
  10842.   case 513:
  10843.   #line 2839 "parse.y"
  10844. ! { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
  10845.       break;}
  10846.   case 514:
  10847.   #line 2841 "parse.y"
  10848.   { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
  10849.       break;}
  10850. ! case 515:
  10851. ! #line 2846 "parse.y"
  10852.   { got_scope = NULL_TREE;
  10853.             yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype); ;
  10854.       break;}
  10855. ! case 516:
  10856. ! #line 2852 "parse.y"
  10857.   { got_scope = NULL_TREE;
  10858.             yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype); ;
  10859.       break;}
  10860. ! case 518:
  10861. ! #line 2859 "parse.y"
  10862.   { yyval.ttype = yyvsp[0].ttype; ;
  10863.       break;}
  10864. + case 519:
  10865. + #line 2864 "parse.y"
  10866. + { yyval.ttype = build_functional_cast (yyval.ttype, yyvsp[-1].ttype); ;
  10867. +     break;}
  10868.   case 520:
  10869.   #line 2866 "parse.y"
  10870. ! { yyval.ttype = reparse_decl_as_expr (yyval.ttype, yyvsp[-1].ttype); ;
  10871.       break;}
  10872.   case 521:
  10873.   #line 2868 "parse.y"
  10874.   { yyval.ttype = reparse_absdcl_as_expr (yyval.ttype, yyvsp[0].ttype); ;
  10875.       break;}
  10876. ! case 525:
  10877. ! #line 2879 "parse.y"
  10878.   { yyval.ttype = yyvsp[0].ttype; ;
  10879.       break;}
  10880. + case 526:
  10881. + #line 2886 "parse.y"
  10882. + { got_scope = TREE_TYPE (yyval.ttype); ;
  10883. +     break;}
  10884.   case 527:
  10885.   #line 2888 "parse.y"
  10886.   { got_scope = TREE_TYPE (yyval.ttype); ;
  10887.       break;}
  10888. ! case 529:
  10889. ! #line 2904 "parse.y"
  10890. ! { yyval.ttype = yyvsp[0].ttype; ;
  10891.       break;}
  10892. ! case 531:
  10893. ! #line 2910 "parse.y"
  10894.   { yyval.ttype = yyvsp[0].ttype; ;
  10895.       break;}
  10896.   case 532:
  10897. ! #line 2915 "parse.y"
  10898. ! { got_scope = NULL_TREE; ;
  10899.       break;}
  10900.   case 533:
  10901.   #line 2917 "parse.y"
  10902. ! { yyval.ttype = yyvsp[-1].ttype; got_scope = NULL_TREE; ;
  10903.       break;}
  10904.   case 534:
  10905. ! #line 2924 "parse.y"
  10906. ! { got_scope = void_type_node; ;
  10907.       break;}
  10908.   case 535:
  10909. ! #line 2930 "parse.y"
  10910. ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10911.       break;}
  10912.   case 536:
  10913.   #line 2932 "parse.y"
  10914. ! { yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ;
  10915.       break;}
  10916.   case 537:
  10917.   #line 2934 "parse.y"
  10918. ! { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10919.       break;}
  10920.   case 538:
  10921.   #line 2936 "parse.y"
  10922. ! { yyval.ttype = make_reference_declarator (yyvsp[0].ttype, NULL_TREE); ;
  10923.       break;}
  10924.   case 539:
  10925.   #line 2938 "parse.y"
  10926.   { tree arg = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE);
  10927.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, arg);
  10928.           ;
  10929.       break;}
  10930. ! case 540:
  10931. ! #line 2942 "parse.y"
  10932.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  10933.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  10934.           ;
  10935.       break;}
  10936. + case 542:
  10937. + #line 2951 "parse.y"
  10938. + { yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
  10939. +     break;}
  10940.   case 543:
  10941.   #line 2953 "parse.y"
  10942. ! { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
  10943.       break;}
  10944.   case 544:
  10945. ! #line 2959 "parse.y"
  10946. ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10947.       break;}
  10948.   case 545:
  10949.   #line 2961 "parse.y"
  10950. ! { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10951.       break;}
  10952.   case 546:
  10953.   #line 2963 "parse.y"
  10954. ! { yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ;
  10955.       break;}
  10956.   case 547:
  10957.   #line 2965 "parse.y"
  10958. ! { yyval.ttype = make_pointer_declarator (NULL_TREE, NULL_TREE); ;
  10959.       break;}
  10960.   case 548:
  10961.   #line 2967 "parse.y"
  10962. ! { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  10963.       break;}
  10964.   case 549:
  10965.   #line 2969 "parse.y"
  10966. ! { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
  10967.       break;}
  10968.   case 550:
  10969.   #line 2971 "parse.y"
  10970. ! { yyval.ttype = make_reference_declarator (yyvsp[0].ttype, NULL_TREE); ;
  10971.       break;}
  10972.   case 551:
  10973.   #line 2973 "parse.y"
  10974. ! { yyval.ttype = make_reference_declarator (NULL_TREE, NULL_TREE); ;
  10975.       break;}
  10976.   case 552:
  10977.   #line 2975 "parse.y"
  10978.   { tree arg = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE);
  10979.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, arg);
  10980.           ;
  10981.       break;}
  10982. ! case 553:
  10983. ! #line 2979 "parse.y"
  10984.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  10985.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  10986.           ;
  10987.       break;}
  10988. ! case 555:
  10989. ! #line 2988 "parse.y"
  10990.   { yyval.ttype = yyvsp[-1].ttype; ;
  10991.       break;}
  10992. + case 557:
  10993. + #line 2992 "parse.y"
  10994. + { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  10995. +     break;}
  10996.   case 558:
  10997.   #line 2994 "parse.y"
  10998. ! { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), yyvsp[0].ttype); ;
  10999.       break;}
  11000.   case 559:
  11001.   #line 2996 "parse.y"
  11002. ! { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
  11003.       break;}
  11004.   case 560:
  11005.   #line 2998 "parse.y"
  11006. ! { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
  11007.       break;}
  11008.   case 561:
  11009.   #line 3000 "parse.y"
  11010. ! { yyval.ttype = build_parse_node (CALL_EXPR, NULL_TREE, yyvsp[-2].ttype, yyvsp[0].ttype); ;
  11011.       break;}
  11012.   case 562:
  11013.   #line 3002 "parse.y"
  11014. ! { TREE_OPERAND (yyval.ttype, 2) = yyvsp[0].ttype; ;
  11015.       break;}
  11016.   case 563:
  11017.   #line 3004 "parse.y"
  11018. ***************
  11019. *** 6606,6636 ****
  11020.       break;}
  11021.   case 564:
  11022.   #line 3006 "parse.y"
  11023. ! { TREE_OPERAND (yyval.ttype, 2) = yyvsp[0].ttype; ;
  11024.       break;}
  11025.   case 565:
  11026.   #line 3008 "parse.y"
  11027. - { yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
  11028. -     break;}
  11029. - case 566:
  11030. - #line 3010 "parse.y"
  11031.   { yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, NULL_TREE); ;
  11032.       break;}
  11033. ! case 572:
  11034. ! #line 3032 "parse.y"
  11035.   { emit_line_note (input_filename, lineno);
  11036.             pushlevel (0);
  11037.             clear_last_expr ();
  11038.             push_momentary ();
  11039.             expand_start_bindings (0); ;
  11040.       break;}
  11041. ! case 574:
  11042. ! #line 3044 "parse.y"
  11043.   { if (flag_ansi)
  11044.               pedwarn ("ANSI C++ forbids label declarations"); ;
  11045.       break;}
  11046. ! case 577:
  11047. ! #line 3055 "parse.y"
  11048.   { tree link;
  11049.             for (link = yyvsp[-1].ttype; link; link = TREE_CHAIN (link))
  11050.               {
  11051. --- 6558,6584 ----
  11052.       break;}
  11053.   case 564:
  11054.   #line 3006 "parse.y"
  11055. ! { yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
  11056.       break;}
  11057.   case 565:
  11058.   #line 3008 "parse.y"
  11059.   { yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, NULL_TREE); ;
  11060.       break;}
  11061. ! case 571:
  11062. ! #line 3030 "parse.y"
  11063.   { emit_line_note (input_filename, lineno);
  11064.             pushlevel (0);
  11065.             clear_last_expr ();
  11066.             push_momentary ();
  11067.             expand_start_bindings (0); ;
  11068.       break;}
  11069. ! case 573:
  11070. ! #line 3042 "parse.y"
  11071.   { if (flag_ansi)
  11072.               pedwarn ("ANSI C++ forbids label declarations"); ;
  11073.       break;}
  11074. ! case 576:
  11075. ! #line 3053 "parse.y"
  11076.   { tree link;
  11077.             for (link = yyvsp[-1].ttype; link; link = TREE_CHAIN (link))
  11078.               {
  11079. ***************
  11080. *** 6640,6702 ****
  11081.               }
  11082.           ;
  11083.       break;}
  11084. ! case 578:
  11085. ! #line 3069 "parse.y"
  11086.   {;
  11087.       break;}
  11088. ! case 580:
  11089. ! #line 3074 "parse.y"
  11090.   { expand_end_bindings (getdecls (), kept_level_p(), 1);
  11091.             yyval.ttype = poplevel (kept_level_p (), 1, 0);
  11092.             pop_momentary (); ;
  11093.       break;}
  11094. ! case 581:
  11095. ! #line 3078 "parse.y"
  11096.   { expand_end_bindings (getdecls (), kept_level_p(), 1);
  11097.             yyval.ttype = poplevel (kept_level_p (), 1, 0);
  11098.             pop_momentary (); ;
  11099.       break;}
  11100. ! case 582:
  11101. ! #line 3082 "parse.y"
  11102.   { expand_end_bindings (getdecls (), kept_level_p(), 1);
  11103.             yyval.ttype = poplevel (kept_level_p (), 0, 0);
  11104.             pop_momentary (); ;
  11105.       break;}
  11106. ! case 583:
  11107. ! #line 3086 "parse.y"
  11108.   { expand_end_bindings (getdecls (), kept_level_p(), 1);
  11109.             yyval.ttype = poplevel (kept_level_p (), 0, 0);
  11110.             pop_momentary (); ;
  11111.       break;}
  11112. ! case 584:
  11113. ! #line 3093 "parse.y"
  11114.   { cond_stmt_keyword = "if"; ;
  11115.       break;}
  11116. ! case 585:
  11117. ! #line 3095 "parse.y"
  11118.   { emit_line_note (input_filename, lineno);
  11119.             expand_start_cond (yyvsp[0].ttype, 0); ;
  11120.       break;}
  11121. ! case 587:
  11122. ! #line 3102 "parse.y"
  11123.   { finish_stmt (); ;
  11124.       break;}
  11125. ! case 588:
  11126. ! #line 3104 "parse.y"
  11127.   { expand_end_bindings (getdecls (), kept_level_p (), 1);
  11128.             yyval.ttype = poplevel (kept_level_p (), 1, 0);
  11129.             pop_momentary (); ;
  11130.       break;}
  11131. ! case 589:
  11132. ! #line 3111 "parse.y"
  11133.   { finish_stmt (); ;
  11134.       break;}
  11135.   case 591:
  11136.   #line 3117 "parse.y"
  11137. - { finish_stmt (); ;
  11138. -     break;}
  11139. - case 592:
  11140. - #line 3119 "parse.y"
  11141.   {
  11142.             tree expr = yyvsp[-1].ttype;
  11143.             emit_line_note (input_filename, lineno);
  11144. --- 6588,6650 ----
  11145.               }
  11146.           ;
  11147.       break;}
  11148. ! case 577:
  11149. ! #line 3067 "parse.y"
  11150.   {;
  11151.       break;}
  11152. ! case 579:
  11153. ! #line 3072 "parse.y"
  11154.   { expand_end_bindings (getdecls (), kept_level_p(), 1);
  11155.             yyval.ttype = poplevel (kept_level_p (), 1, 0);
  11156.             pop_momentary (); ;
  11157.       break;}
  11158. ! case 580:
  11159. ! #line 3076 "parse.y"
  11160.   { expand_end_bindings (getdecls (), kept_level_p(), 1);
  11161.             yyval.ttype = poplevel (kept_level_p (), 1, 0);
  11162.             pop_momentary (); ;
  11163.       break;}
  11164. ! case 581:
  11165. ! #line 3080 "parse.y"
  11166.   { expand_end_bindings (getdecls (), kept_level_p(), 1);
  11167.             yyval.ttype = poplevel (kept_level_p (), 0, 0);
  11168.             pop_momentary (); ;
  11169.       break;}
  11170. ! case 582:
  11171. ! #line 3084 "parse.y"
  11172.   { expand_end_bindings (getdecls (), kept_level_p(), 1);
  11173.             yyval.ttype = poplevel (kept_level_p (), 0, 0);
  11174.             pop_momentary (); ;
  11175.       break;}
  11176. ! case 583:
  11177. ! #line 3091 "parse.y"
  11178.   { cond_stmt_keyword = "if"; ;
  11179.       break;}
  11180. ! case 584:
  11181. ! #line 3093 "parse.y"
  11182.   { emit_line_note (input_filename, lineno);
  11183.             expand_start_cond (yyvsp[0].ttype, 0); ;
  11184.       break;}
  11185. ! case 586:
  11186. ! #line 3100 "parse.y"
  11187.   { finish_stmt (); ;
  11188.       break;}
  11189. ! case 587:
  11190. ! #line 3102 "parse.y"
  11191.   { expand_end_bindings (getdecls (), kept_level_p (), 1);
  11192.             yyval.ttype = poplevel (kept_level_p (), 1, 0);
  11193.             pop_momentary (); ;
  11194.       break;}
  11195. ! case 588:
  11196. ! #line 3109 "parse.y"
  11197. ! { finish_stmt (); ;
  11198. !     break;}
  11199. ! case 590:
  11200. ! #line 3115 "parse.y"
  11201.   { finish_stmt (); ;
  11202.       break;}
  11203.   case 591:
  11204.   #line 3117 "parse.y"
  11205.   {
  11206.             tree expr = yyvsp[-1].ttype;
  11207.             emit_line_note (input_filename, lineno);
  11208. ***************
  11209. *** 6710,6791 ****
  11210.             clear_momentary ();
  11211.             finish_stmt (); ;
  11212.       break;}
  11213. ! case 593:
  11214. ! #line 3132 "parse.y"
  11215.   { expand_start_else (); ;
  11216.       break;}
  11217. ! case 594:
  11218. ! #line 3134 "parse.y"
  11219.   { expand_end_cond ();
  11220.             expand_end_bindings (getdecls (), kept_level_p (), 1);
  11221.             poplevel (kept_level_p (), 1, 0);
  11222.             pop_momentary ();
  11223.             finish_stmt (); ;
  11224.       break;}
  11225. ! case 595:
  11226. ! #line 3140 "parse.y"
  11227.   { expand_end_cond ();
  11228.             expand_end_bindings (getdecls (), kept_level_p (), 1);
  11229.             poplevel (kept_level_p (), 1, 0);
  11230.             pop_momentary ();
  11231.             finish_stmt (); ;
  11232.       break;}
  11233. ! case 596:
  11234. ! #line 3146 "parse.y"
  11235.   { emit_nop ();
  11236.             emit_line_note (input_filename, lineno);
  11237.             expand_start_loop (1);
  11238.             cond_stmt_keyword = "while"; ;
  11239.       break;}
  11240.   case 597:
  11241.   #line 3151 "parse.y"
  11242. - { expand_exit_loop_if_false (0, yyvsp[0].ttype); ;
  11243. -     break;}
  11244. - case 598:
  11245. - #line 3153 "parse.y"
  11246.   { expand_end_bindings (getdecls (), kept_level_p (), 1);
  11247.             poplevel (kept_level_p (), 1, 0);
  11248.             pop_momentary ();
  11249.             expand_end_loop ();
  11250.             finish_stmt (); ;
  11251.       break;}
  11252. ! case 599:
  11253. ! #line 3159 "parse.y"
  11254.   { emit_nop ();
  11255.             emit_line_note (input_filename, lineno);
  11256.             expand_start_loop_continue_elsewhere (1); ;
  11257.       break;}
  11258. ! case 600:
  11259. ! #line 3163 "parse.y"
  11260.   { expand_loop_continue_here ();
  11261.             cond_stmt_keyword = "do"; ;
  11262.       break;}
  11263. ! case 601:
  11264. ! #line 3166 "parse.y"
  11265.   { emit_line_note (input_filename, lineno);
  11266.             expand_exit_loop_if_false (0, yyvsp[-1].ttype);
  11267.             expand_end_loop ();
  11268.             clear_momentary ();
  11269.             finish_stmt (); ;
  11270.       break;}
  11271. ! case 602:
  11272. ! #line 3172 "parse.y"
  11273.   { emit_nop ();
  11274.             emit_line_note (input_filename, lineno);
  11275.             if (yyvsp[0].ttype) cplus_expand_expr_stmt (yyvsp[0].ttype);
  11276.             expand_start_loop_continue_elsewhere (1); ;
  11277.       break;}
  11278. ! case 603:
  11279. ! #line 3177 "parse.y"
  11280.   { emit_line_note (input_filename, lineno);
  11281.             if (yyvsp[-1].ttype) expand_exit_loop_if_false (0, yyvsp[-1].ttype); ;
  11282.       break;}
  11283. ! case 604:
  11284. ! #line 3182 "parse.y"
  11285.   { push_momentary (); ;
  11286.       break;}
  11287. ! case 605:
  11288. ! #line 3184 "parse.y"
  11289.   { emit_line_note (input_filename, lineno);
  11290.             expand_end_bindings (getdecls (), kept_level_p (), 1);
  11291.             poplevel (kept_level_p (), 1, 0);
  11292. --- 6658,6739 ----
  11293.             clear_momentary ();
  11294.             finish_stmt (); ;
  11295.       break;}
  11296. ! case 592:
  11297. ! #line 3130 "parse.y"
  11298.   { expand_start_else (); ;
  11299.       break;}
  11300. ! case 593:
  11301. ! #line 3132 "parse.y"
  11302.   { expand_end_cond ();
  11303.             expand_end_bindings (getdecls (), kept_level_p (), 1);
  11304.             poplevel (kept_level_p (), 1, 0);
  11305.             pop_momentary ();
  11306.             finish_stmt (); ;
  11307.       break;}
  11308. ! case 594:
  11309. ! #line 3138 "parse.y"
  11310.   { expand_end_cond ();
  11311.             expand_end_bindings (getdecls (), kept_level_p (), 1);
  11312.             poplevel (kept_level_p (), 1, 0);
  11313.             pop_momentary ();
  11314.             finish_stmt (); ;
  11315.       break;}
  11316. ! case 595:
  11317. ! #line 3144 "parse.y"
  11318.   { emit_nop ();
  11319.             emit_line_note (input_filename, lineno);
  11320.             expand_start_loop (1);
  11321.             cond_stmt_keyword = "while"; ;
  11322.       break;}
  11323. + case 596:
  11324. + #line 3149 "parse.y"
  11325. + { expand_exit_loop_if_false (0, yyvsp[0].ttype); ;
  11326. +     break;}
  11327.   case 597:
  11328.   #line 3151 "parse.y"
  11329.   { expand_end_bindings (getdecls (), kept_level_p (), 1);
  11330.             poplevel (kept_level_p (), 1, 0);
  11331.             pop_momentary ();
  11332.             expand_end_loop ();
  11333.             finish_stmt (); ;
  11334.       break;}
  11335. ! case 598:
  11336. ! #line 3157 "parse.y"
  11337.   { emit_nop ();
  11338.             emit_line_note (input_filename, lineno);
  11339.             expand_start_loop_continue_elsewhere (1); ;
  11340.       break;}
  11341. ! case 599:
  11342. ! #line 3161 "parse.y"
  11343.   { expand_loop_continue_here ();
  11344.             cond_stmt_keyword = "do"; ;
  11345.       break;}
  11346. ! case 600:
  11347. ! #line 3164 "parse.y"
  11348.   { emit_line_note (input_filename, lineno);
  11349.             expand_exit_loop_if_false (0, yyvsp[-1].ttype);
  11350.             expand_end_loop ();
  11351.             clear_momentary ();
  11352.             finish_stmt (); ;
  11353.       break;}
  11354. ! case 601:
  11355. ! #line 3170 "parse.y"
  11356.   { emit_nop ();
  11357.             emit_line_note (input_filename, lineno);
  11358.             if (yyvsp[0].ttype) cplus_expand_expr_stmt (yyvsp[0].ttype);
  11359.             expand_start_loop_continue_elsewhere (1); ;
  11360.       break;}
  11361. ! case 602:
  11362. ! #line 3175 "parse.y"
  11363.   { emit_line_note (input_filename, lineno);
  11364.             if (yyvsp[-1].ttype) expand_exit_loop_if_false (0, yyvsp[-1].ttype); ;
  11365.       break;}
  11366. ! case 603:
  11367. ! #line 3180 "parse.y"
  11368.   { push_momentary (); ;
  11369.       break;}
  11370. ! case 604:
  11371. ! #line 3182 "parse.y"
  11372.   { emit_line_note (input_filename, lineno);
  11373.             expand_end_bindings (getdecls (), kept_level_p (), 1);
  11374.             poplevel (kept_level_p (), 1, 0);
  11375. ***************
  11376. *** 6796,6819 ****
  11377.             expand_end_loop ();
  11378.             finish_stmt (); ;
  11379.       break;}
  11380. ! case 606:
  11381. ! #line 3194 "parse.y"
  11382.   { emit_nop ();
  11383.             emit_line_note (input_filename, lineno);
  11384.             expand_start_loop_continue_elsewhere (1); ;
  11385.       break;}
  11386. ! case 607:
  11387. ! #line 3198 "parse.y"
  11388.   { emit_line_note (input_filename, lineno);
  11389.             if (yyvsp[-1].ttype) expand_exit_loop_if_false (0, yyvsp[-1].ttype); ;
  11390.       break;}
  11391. ! case 608:
  11392. ! #line 3203 "parse.y"
  11393.   { push_momentary ();
  11394.             yyvsp[0].itype = lineno; ;
  11395.       break;}
  11396. ! case 609:
  11397. ! #line 3206 "parse.y"
  11398.   { emit_line_note (input_filename, (int) yyvsp[-2].itype);
  11399.             expand_end_bindings (getdecls (), kept_level_p (), 1);
  11400.             poplevel (kept_level_p (), 1, 0);
  11401. --- 6744,6767 ----
  11402.             expand_end_loop ();
  11403.             finish_stmt (); ;
  11404.       break;}
  11405. ! case 605:
  11406. ! #line 3192 "parse.y"
  11407.   { emit_nop ();
  11408.             emit_line_note (input_filename, lineno);
  11409.             expand_start_loop_continue_elsewhere (1); ;
  11410.       break;}
  11411. ! case 606:
  11412. ! #line 3196 "parse.y"
  11413.   { emit_line_note (input_filename, lineno);
  11414.             if (yyvsp[-1].ttype) expand_exit_loop_if_false (0, yyvsp[-1].ttype); ;
  11415.       break;}
  11416. ! case 607:
  11417. ! #line 3201 "parse.y"
  11418.   { push_momentary ();
  11419.             yyvsp[0].itype = lineno; ;
  11420.       break;}
  11421. ! case 608:
  11422. ! #line 3204 "parse.y"
  11423.   { emit_line_note (input_filename, (int) yyvsp[-2].itype);
  11424.             expand_end_bindings (getdecls (), kept_level_p (), 1);
  11425.             poplevel (kept_level_p (), 1, 0);
  11426. ***************
  11427. *** 6825,6840 ****
  11428.             finish_stmt ();
  11429.           ;
  11430.       break;}
  11431. ! case 610:
  11432. ! #line 3217 "parse.y"
  11433.   { emit_line_note (input_filename, lineno);
  11434.             c_expand_start_case (yyvsp[-1].ttype);
  11435.             /* Don't let the tree nodes for $4 be discarded by
  11436.                clear_momentary during the parsing of the next stmt.  */
  11437.             push_momentary (); ;
  11438.       break;}
  11439. ! case 611:
  11440. ! #line 3223 "parse.y"
  11441.   { expand_end_case (yyvsp[-3].ttype);
  11442.             pop_momentary ();
  11443.             expand_end_bindings (getdecls (), kept_level_p (), 1);
  11444. --- 6773,6788 ----
  11445.             finish_stmt ();
  11446.           ;
  11447.       break;}
  11448. ! case 609:
  11449. ! #line 3215 "parse.y"
  11450.   { emit_line_note (input_filename, lineno);
  11451.             c_expand_start_case (yyvsp[-1].ttype);
  11452.             /* Don't let the tree nodes for $4 be discarded by
  11453.                clear_momentary during the parsing of the next stmt.  */
  11454.             push_momentary (); ;
  11455.       break;}
  11456. ! case 610:
  11457. ! #line 3221 "parse.y"
  11458.   { expand_end_case (yyvsp[-3].ttype);
  11459.             pop_momentary ();
  11460.             expand_end_bindings (getdecls (), kept_level_p (), 1);
  11461. ***************
  11462. *** 6842,6849 ****
  11463.             pop_momentary ();
  11464.             finish_stmt (); ;
  11465.       break;}
  11466. ! case 612:
  11467. ! #line 3230 "parse.y"
  11468.   { register tree value = check_cp_case_value (yyvsp[-1].ttype);
  11469.             register tree label
  11470.               = build_decl (LABEL_DECL, NULL_TREE, NULL_TREE);
  11471. --- 6790,6797 ----
  11472.             pop_momentary ();
  11473.             finish_stmt (); ;
  11474.       break;}
  11475. ! case 611:
  11476. ! #line 3228 "parse.y"
  11477.   { register tree value = check_cp_case_value (yyvsp[-1].ttype);
  11478.             register tree label
  11479.               = build_decl (LABEL_DECL, NULL_TREE, NULL_TREE);
  11480. ***************
  11481. *** 6868,6875 ****
  11482.             define_case_label (label);
  11483.           ;
  11484.       break;}
  11485. ! case 614:
  11486. ! #line 3255 "parse.y"
  11487.   { register tree value1 = check_cp_case_value (yyvsp[-3].ttype);
  11488.             register tree value2 = check_cp_case_value (yyvsp[-1].ttype);
  11489.             register tree label
  11490. --- 6816,6823 ----
  11491.             define_case_label (label);
  11492.           ;
  11493.       break;}
  11494. ! case 613:
  11495. ! #line 3253 "parse.y"
  11496.   { register tree value1 = check_cp_case_value (yyvsp[-3].ttype);
  11497.             register tree value2 = check_cp_case_value (yyvsp[-1].ttype);
  11498.             register tree label
  11499. ***************
  11500. *** 6901,6908 ****
  11501.             define_case_label (label);
  11502.           ;
  11503.       break;}
  11504. ! case 616:
  11505. ! #line 3287 "parse.y"
  11506.   {
  11507.             tree duplicate;
  11508.             register tree label
  11509. --- 6849,6856 ----
  11510.             define_case_label (label);
  11511.           ;
  11512.       break;}
  11513. ! case 615:
  11514. ! #line 3285 "parse.y"
  11515.   {
  11516.             tree duplicate;
  11517.             register tree label
  11518. ***************
  11519. *** 6918,6957 ****
  11520.             define_case_label (NULL_TREE);
  11521.           ;
  11522.       break;}
  11523. ! case 618:
  11524. ! #line 3303 "parse.y"
  11525.   { emit_line_note (input_filename, lineno);
  11526.             if ( ! expand_exit_something ())
  11527.               error ("break statement not within loop or switch"); ;
  11528.       break;}
  11529. ! case 619:
  11530. ! #line 3307 "parse.y"
  11531.   { emit_line_note (input_filename, lineno);
  11532.             if (! expand_continue_loop (0))
  11533.               error ("continue statement not within a loop"); ;
  11534.       break;}
  11535. ! case 620:
  11536. ! #line 3311 "parse.y"
  11537.   { emit_line_note (input_filename, lineno);
  11538.             c_expand_return (NULL_TREE); ;
  11539.       break;}
  11540. ! case 621:
  11541. ! #line 3314 "parse.y"
  11542.   { emit_line_note (input_filename, lineno);
  11543.             c_expand_return (yyvsp[-1].ttype);
  11544.             finish_stmt ();
  11545.           ;
  11546.       break;}
  11547. ! case 622:
  11548. ! #line 3319 "parse.y"
  11549.   { if (TREE_CHAIN (yyvsp[-2].ttype)) yyvsp[-2].ttype = combine_strings (yyvsp[-2].ttype);
  11550.             emit_line_note (input_filename, lineno);
  11551.             expand_asm (yyvsp[-2].ttype);
  11552.             finish_stmt ();
  11553.           ;
  11554.       break;}
  11555. ! case 623:
  11556. ! #line 3326 "parse.y"
  11557.   { if (TREE_CHAIN (yyvsp[-4].ttype)) yyvsp[-4].ttype = combine_strings (yyvsp[-4].ttype);
  11558.             emit_line_note (input_filename, lineno);
  11559.             c_expand_asm_operands (yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE, NULL_TREE,
  11560. --- 6866,6905 ----
  11561.             define_case_label (NULL_TREE);
  11562.           ;
  11563.       break;}
  11564. ! case 617:
  11565. ! #line 3301 "parse.y"
  11566.   { emit_line_note (input_filename, lineno);
  11567.             if ( ! expand_exit_something ())
  11568.               error ("break statement not within loop or switch"); ;
  11569.       break;}
  11570. ! case 618:
  11571. ! #line 3305 "parse.y"
  11572.   { emit_line_note (input_filename, lineno);
  11573.             if (! expand_continue_loop (0))
  11574.               error ("continue statement not within a loop"); ;
  11575.       break;}
  11576. ! case 619:
  11577. ! #line 3309 "parse.y"
  11578.   { emit_line_note (input_filename, lineno);
  11579.             c_expand_return (NULL_TREE); ;
  11580.       break;}
  11581. ! case 620:
  11582. ! #line 3312 "parse.y"
  11583.   { emit_line_note (input_filename, lineno);
  11584.             c_expand_return (yyvsp[-1].ttype);
  11585.             finish_stmt ();
  11586.           ;
  11587.       break;}
  11588. ! case 621:
  11589. ! #line 3317 "parse.y"
  11590.   { if (TREE_CHAIN (yyvsp[-2].ttype)) yyvsp[-2].ttype = combine_strings (yyvsp[-2].ttype);
  11591.             emit_line_note (input_filename, lineno);
  11592.             expand_asm (yyvsp[-2].ttype);
  11593.             finish_stmt ();
  11594.           ;
  11595.       break;}
  11596. ! case 622:
  11597. ! #line 3324 "parse.y"
  11598.   { if (TREE_CHAIN (yyvsp[-4].ttype)) yyvsp[-4].ttype = combine_strings (yyvsp[-4].ttype);
  11599.             emit_line_note (input_filename, lineno);
  11600.             c_expand_asm_operands (yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE, NULL_TREE,
  11601. ***************
  11602. *** 6960,6967 ****
  11603.             finish_stmt ();
  11604.           ;
  11605.       break;}
  11606. ! case 624:
  11607. ! #line 3335 "parse.y"
  11608.   { if (TREE_CHAIN (yyvsp[-6].ttype)) yyvsp[-6].ttype = combine_strings (yyvsp[-6].ttype);
  11609.             emit_line_note (input_filename, lineno);
  11610.             c_expand_asm_operands (yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE,
  11611. --- 6908,6915 ----
  11612.             finish_stmt ();
  11613.           ;
  11614.       break;}
  11615. ! case 623:
  11616. ! #line 3333 "parse.y"
  11617.   { if (TREE_CHAIN (yyvsp[-6].ttype)) yyvsp[-6].ttype = combine_strings (yyvsp[-6].ttype);
  11618.             emit_line_note (input_filename, lineno);
  11619.             c_expand_asm_operands (yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE,
  11620. ***************
  11621. *** 6970,6977 ****
  11622.             finish_stmt ();
  11623.           ;
  11624.       break;}
  11625. ! case 625:
  11626. ! #line 3345 "parse.y"
  11627.   { if (TREE_CHAIN (yyvsp[-8].ttype)) yyvsp[-8].ttype = combine_strings (yyvsp[-8].ttype);
  11628.             emit_line_note (input_filename, lineno);
  11629.             c_expand_asm_operands (yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype,
  11630. --- 6918,6925 ----
  11631.             finish_stmt ();
  11632.           ;
  11633.       break;}
  11634. ! case 624:
  11635. ! #line 3343 "parse.y"
  11636.   { if (TREE_CHAIN (yyvsp[-8].ttype)) yyvsp[-8].ttype = combine_strings (yyvsp[-8].ttype);
  11637.             emit_line_note (input_filename, lineno);
  11638.             c_expand_asm_operands (yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype,
  11639. ***************
  11640. *** 6980,7062 ****
  11641.             finish_stmt ();
  11642.           ;
  11643.       break;}
  11644. ! case 626:
  11645. ! #line 3353 "parse.y"
  11646.   { emit_line_note (input_filename, lineno);
  11647.             expand_computed_goto (yyvsp[-1].ttype); ;
  11648.       break;}
  11649. ! case 627:
  11650. ! #line 3356 "parse.y"
  11651.   { tree decl;
  11652.             emit_line_note (input_filename, lineno);
  11653.             decl = lookup_label (yyvsp[-1].ttype);
  11654.             TREE_USED (decl) = 1;
  11655.             expand_goto (decl); ;
  11656.       break;}
  11657. ! case 628:
  11658. ! #line 3362 "parse.y"
  11659.   { finish_stmt (); ;
  11660.       break;}
  11661. ! case 629:
  11662. ! #line 3364 "parse.y"
  11663.   { error ("label must be followed by statement");
  11664.             yyungetc ('}', 0);
  11665.             finish_stmt (); ;
  11666.       break;}
  11667. ! case 630:
  11668. ! #line 3368 "parse.y"
  11669.   { finish_stmt (); ;
  11670.       break;}
  11671. ! case 632:
  11672. ! #line 3374 "parse.y"
  11673.   { expand_start_try_stmts (); ;
  11674.       break;}
  11675. ! case 633:
  11676. ! #line 3376 "parse.y"
  11677.   { expand_end_try_stmts ();
  11678.             expand_start_all_catch (); ;
  11679.       break;}
  11680. ! case 634:
  11681. ! #line 3379 "parse.y"
  11682.   { expand_end_all_catch (); ;
  11683.       break;}
  11684. ! case 635:
  11685. ! #line 3387 "parse.y"
  11686.   { expand_end_bindings (0,1,1);
  11687.             poplevel (2,0,0);
  11688.           ;
  11689.       break;}
  11690. ! case 636:
  11691. ! #line 3391 "parse.y"
  11692.   { expand_end_bindings (0,1,1);
  11693.             poplevel (2,0,0);
  11694.           ;
  11695.       break;}
  11696. ! case 637:
  11697. ! #line 3395 "parse.y"
  11698.   { expand_end_bindings (0,1,1);
  11699.             poplevel (2,0,0);
  11700.           ;
  11701.       break;}
  11702. ! case 639:
  11703. ! #line 3403 "parse.y"
  11704.   { emit_line_note (input_filename, lineno); ;
  11705.       break;}
  11706. ! case 640:
  11707. ! #line 3405 "parse.y"
  11708.   { expand_end_catch_block (); ;
  11709.       break;}
  11710. ! case 643:
  11711. ! #line 3415 "parse.y"
  11712.   { expand_start_catch_block (NULL_TREE, NULL_TREE); ;
  11713.       break;}
  11714. ! case 644:
  11715. ! #line 3427 "parse.y"
  11716.   { expand_start_catch_block (TREE_PURPOSE (yyvsp[-1].ttype),
  11717.                           TREE_VALUE (yyvsp[-1].ttype)); ;
  11718.       break;}
  11719. ! case 645:
  11720. ! #line 3433 "parse.y"
  11721.   { tree label;
  11722.           do_label:
  11723.             label = define_label (input_filename, lineno, yyvsp[-1].ttype);
  11724. --- 6928,7010 ----
  11725.             finish_stmt ();
  11726.           ;
  11727.       break;}
  11728. ! case 625:
  11729. ! #line 3351 "parse.y"
  11730.   { emit_line_note (input_filename, lineno);
  11731.             expand_computed_goto (yyvsp[-1].ttype); ;
  11732.       break;}
  11733. ! case 626:
  11734. ! #line 3354 "parse.y"
  11735.   { tree decl;
  11736.             emit_line_note (input_filename, lineno);
  11737.             decl = lookup_label (yyvsp[-1].ttype);
  11738.             TREE_USED (decl) = 1;
  11739.             expand_goto (decl); ;
  11740.       break;}
  11741. ! case 627:
  11742. ! #line 3360 "parse.y"
  11743.   { finish_stmt (); ;
  11744.       break;}
  11745. ! case 628:
  11746. ! #line 3362 "parse.y"
  11747.   { error ("label must be followed by statement");
  11748.             yyungetc ('}', 0);
  11749.             finish_stmt (); ;
  11750.       break;}
  11751. ! case 629:
  11752. ! #line 3366 "parse.y"
  11753.   { finish_stmt (); ;
  11754.       break;}
  11755. ! case 631:
  11756. ! #line 3372 "parse.y"
  11757.   { expand_start_try_stmts (); ;
  11758.       break;}
  11759. ! case 632:
  11760. ! #line 3374 "parse.y"
  11761.   { expand_end_try_stmts ();
  11762.             expand_start_all_catch (); ;
  11763.       break;}
  11764. ! case 633:
  11765. ! #line 3377 "parse.y"
  11766.   { expand_end_all_catch (); ;
  11767.       break;}
  11768. ! case 634:
  11769. ! #line 3385 "parse.y"
  11770.   { expand_end_bindings (0,1,1);
  11771.             poplevel (2,0,0);
  11772.           ;
  11773.       break;}
  11774. ! case 635:
  11775. ! #line 3389 "parse.y"
  11776.   { expand_end_bindings (0,1,1);
  11777.             poplevel (2,0,0);
  11778.           ;
  11779.       break;}
  11780. ! case 636:
  11781. ! #line 3393 "parse.y"
  11782.   { expand_end_bindings (0,1,1);
  11783.             poplevel (2,0,0);
  11784.           ;
  11785.       break;}
  11786. ! case 638:
  11787. ! #line 3401 "parse.y"
  11788.   { emit_line_note (input_filename, lineno); ;
  11789.       break;}
  11790. ! case 639:
  11791. ! #line 3403 "parse.y"
  11792.   { expand_end_catch_block (); ;
  11793.       break;}
  11794. ! case 642:
  11795. ! #line 3413 "parse.y"
  11796.   { expand_start_catch_block (NULL_TREE, NULL_TREE); ;
  11797.       break;}
  11798. ! case 643:
  11799. ! #line 3425 "parse.y"
  11800.   { expand_start_catch_block (TREE_PURPOSE (yyvsp[-1].ttype),
  11801.                           TREE_VALUE (yyvsp[-1].ttype)); ;
  11802.       break;}
  11803. ! case 644:
  11804. ! #line 3431 "parse.y"
  11805.   { tree label;
  11806.           do_label:
  11807.             label = define_label (input_filename, lineno, yyvsp[-1].ttype);
  11808. ***************
  11809. *** 7064,7088 ****
  11810.               expand_label (label);
  11811.           ;
  11812.       break;}
  11813.   case 646:
  11814.   #line 3440 "parse.y"
  11815.   { goto do_label; ;
  11816.       break;}
  11817.   case 647:
  11818. ! #line 3442 "parse.y"
  11819. ! { goto do_label; ;
  11820.       break;}
  11821.   case 648:
  11822.   #line 3447 "parse.y"
  11823. ! { yyval.ttype = NULL_TREE; ;
  11824.       break;}
  11825.   case 649:
  11826.   #line 3449 "parse.y"
  11827. ! { yyval.ttype = yyvsp[-1].ttype; ;
  11828.       break;}
  11829.   case 650:
  11830. ! #line 3451 "parse.y"
  11831. ! { yyval.ttype = NULL_TREE; ;
  11832.       break;}
  11833.   case 651:
  11834.   #line 3456 "parse.y"
  11835. --- 7012,7040 ----
  11836.               expand_label (label);
  11837.           ;
  11838.       break;}
  11839. + case 645:
  11840. + #line 3438 "parse.y"
  11841. + { goto do_label; ;
  11842. +     break;}
  11843.   case 646:
  11844.   #line 3440 "parse.y"
  11845.   { goto do_label; ;
  11846.       break;}
  11847.   case 647:
  11848. ! #line 3445 "parse.y"
  11849. ! { yyval.ttype = NULL_TREE; ;
  11850.       break;}
  11851.   case 648:
  11852.   #line 3447 "parse.y"
  11853. ! { yyval.ttype = yyvsp[-1].ttype; ;
  11854.       break;}
  11855.   case 649:
  11856.   #line 3449 "parse.y"
  11857. ! { yyval.ttype = NULL_TREE; ;
  11858.       break;}
  11859.   case 650:
  11860. ! #line 3454 "parse.y"
  11861. ! { yyval.itype = 0; ;
  11862.       break;}
  11863.   case 651:
  11864.   #line 3456 "parse.y"
  11865. ***************
  11866. *** 7090,7144 ****
  11867.       break;}
  11868.   case 652:
  11869.   #line 3458 "parse.y"
  11870. ! { yyval.itype = 0; ;
  11871.       break;}
  11872.   case 653:
  11873.   #line 3460 "parse.y"
  11874. - { yyval.itype = 1; ;
  11875. -     break;}
  11876. - case 654:
  11877. - #line 3462 "parse.y"
  11878.   { yyval.itype = -1; ;
  11879.       break;}
  11880. ! case 655:
  11881. ! #line 3469 "parse.y"
  11882.   { emit_line_note (input_filename, lineno);
  11883.             yyval.ttype = NULL_TREE; ;
  11884.       break;}
  11885. ! case 656:
  11886. ! #line 3472 "parse.y"
  11887.   { emit_line_note (input_filename, lineno); ;
  11888.       break;}
  11889. ! case 657:
  11890. ! #line 3477 "parse.y"
  11891.   { yyval.ttype = NULL_TREE; ;
  11892.       break;}
  11893. ! case 659:
  11894. ! #line 3480 "parse.y"
  11895.   { yyval.ttype = NULL_TREE; ;
  11896.       break;}
  11897. ! case 660:
  11898. ! #line 3486 "parse.y"
  11899.   { yyval.ttype = NULL_TREE; ;
  11900.       break;}
  11901. ! case 663:
  11902. ! #line 3493 "parse.y"
  11903.   { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
  11904.       break;}
  11905. ! case 664:
  11906. ! #line 3498 "parse.y"
  11907.   { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[-1].ttype); ;
  11908.       break;}
  11909. ! case 665:
  11910. ! #line 3503 "parse.y"
  11911.   { yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, NULL_TREE); ;
  11912.       break;}
  11913. ! case 666:
  11914. ! #line 3505 "parse.y"
  11915.   { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  11916.       break;}
  11917. ! case 667:
  11918. ! #line 3515 "parse.y"
  11919.   {
  11920.             if (strict_prototype)
  11921.               yyval.ttype = void_list_node;
  11922. --- 7042,7092 ----
  11923.       break;}
  11924.   case 652:
  11925.   #line 3458 "parse.y"
  11926. ! { yyval.itype = 1; ;
  11927.       break;}
  11928.   case 653:
  11929.   #line 3460 "parse.y"
  11930.   { yyval.itype = -1; ;
  11931.       break;}
  11932. ! case 654:
  11933. ! #line 3467 "parse.y"
  11934.   { emit_line_note (input_filename, lineno);
  11935.             yyval.ttype = NULL_TREE; ;
  11936.       break;}
  11937. ! case 655:
  11938. ! #line 3470 "parse.y"
  11939.   { emit_line_note (input_filename, lineno); ;
  11940.       break;}
  11941. ! case 656:
  11942. ! #line 3475 "parse.y"
  11943.   { yyval.ttype = NULL_TREE; ;
  11944.       break;}
  11945. ! case 658:
  11946. ! #line 3478 "parse.y"
  11947.   { yyval.ttype = NULL_TREE; ;
  11948.       break;}
  11949. ! case 659:
  11950. ! #line 3484 "parse.y"
  11951.   { yyval.ttype = NULL_TREE; ;
  11952.       break;}
  11953. ! case 662:
  11954. ! #line 3491 "parse.y"
  11955.   { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
  11956.       break;}
  11957. ! case 663:
  11958. ! #line 3496 "parse.y"
  11959.   { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[-1].ttype); ;
  11960.       break;}
  11961. ! case 664:
  11962. ! #line 3501 "parse.y"
  11963.   { yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, NULL_TREE); ;
  11964.       break;}
  11965. ! case 665:
  11966. ! #line 3503 "parse.y"
  11967.   { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
  11968.       break;}
  11969. ! case 666:
  11970. ! #line 3513 "parse.y"
  11971.   {
  11972.             if (strict_prototype)
  11973.               yyval.ttype = void_list_node;
  11974. ***************
  11975. *** 7146,7184 ****
  11976.               yyval.ttype = NULL_TREE;
  11977.           ;
  11978.       break;}
  11979. ! case 669:
  11980. ! #line 3523 "parse.y"
  11981.   { yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, void_list_node);
  11982.             TREE_PARMLIST (yyval.ttype) = 1; ;
  11983.       break;}
  11984. ! case 670:
  11985. ! #line 3531 "parse.y"
  11986.   {
  11987.             yyval.ttype = chainon (yyval.ttype, void_list_node);
  11988.             TREE_PARMLIST (yyval.ttype) = 1;
  11989.           ;
  11990.       break;}
  11991. ! case 671:
  11992. ! #line 3536 "parse.y"
  11993.   {
  11994.             TREE_PARMLIST (yyval.ttype) = 1;
  11995.           ;
  11996.       break;}
  11997. ! case 672:
  11998. ! #line 3541 "parse.y"
  11999.   {
  12000.             TREE_PARMLIST (yyval.ttype) = 1;
  12001.           ;
  12002.       break;}
  12003. ! case 673:
  12004. ! #line 3545 "parse.y"
  12005.   {
  12006.             yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); 
  12007.             TREE_PARMLIST (yyval.ttype) = 1;
  12008.           ;
  12009.       break;}
  12010. ! case 674:
  12011. ! #line 3550 "parse.y"
  12012.   {
  12013.             /* ARM $8.2.5 has this as a boxed-off comment.  */
  12014.             if (pedantic)
  12015. --- 7094,7132 ----
  12016.               yyval.ttype = NULL_TREE;
  12017.           ;
  12018.       break;}
  12019. ! case 668:
  12020. ! #line 3521 "parse.y"
  12021.   { yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, void_list_node);
  12022.             TREE_PARMLIST (yyval.ttype) = 1; ;
  12023.       break;}
  12024. ! case 669:
  12025. ! #line 3529 "parse.y"
  12026.   {
  12027.             yyval.ttype = chainon (yyval.ttype, void_list_node);
  12028.             TREE_PARMLIST (yyval.ttype) = 1;
  12029.           ;
  12030.       break;}
  12031. ! case 670:
  12032. ! #line 3534 "parse.y"
  12033.   {
  12034.             TREE_PARMLIST (yyval.ttype) = 1;
  12035.           ;
  12036.       break;}
  12037. ! case 671:
  12038. ! #line 3539 "parse.y"
  12039.   {
  12040.             TREE_PARMLIST (yyval.ttype) = 1;
  12041.           ;
  12042.       break;}
  12043. ! case 672:
  12044. ! #line 3543 "parse.y"
  12045.   {
  12046.             yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); 
  12047.             TREE_PARMLIST (yyval.ttype) = 1;
  12048.           ;
  12049.       break;}
  12050. ! case 673:
  12051. ! #line 3548 "parse.y"
  12052.   {
  12053.             /* ARM $8.2.5 has this as a boxed-off comment.  */
  12054.             if (pedantic)
  12055. ***************
  12056. *** 7186,7212 ****
  12057.             yyval.ttype = NULL_TREE;
  12058.           ;
  12059.       break;}
  12060. ! case 675:
  12061. ! #line 3557 "parse.y"
  12062.   {
  12063.             TREE_PARMLIST (yyval.ttype) = 1;
  12064.           ;
  12065.       break;}
  12066. ! case 676:
  12067. ! #line 3561 "parse.y"
  12068.   {
  12069.             TREE_PARMLIST (yyval.ttype) = 1;
  12070.           ;
  12071.       break;}
  12072. ! case 677:
  12073. ! #line 3565 "parse.y"
  12074.   {
  12075.             yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype);
  12076.             TREE_PARMLIST (yyval.ttype) = 1;
  12077.           ;
  12078.       break;}
  12079. ! case 678:
  12080. ! #line 3570 "parse.y"
  12081.   {
  12082.             /* This helps us recover from really nasty
  12083.                parse errors, for example, a missing right
  12084. --- 7134,7160 ----
  12085.             yyval.ttype = NULL_TREE;
  12086.           ;
  12087.       break;}
  12088. ! case 674:
  12089. ! #line 3555 "parse.y"
  12090.   {
  12091.             TREE_PARMLIST (yyval.ttype) = 1;
  12092.           ;
  12093.       break;}
  12094. ! case 675:
  12095. ! #line 3559 "parse.y"
  12096.   {
  12097.             TREE_PARMLIST (yyval.ttype) = 1;
  12098.           ;
  12099.       break;}
  12100. ! case 676:
  12101. ! #line 3563 "parse.y"
  12102.   {
  12103.             yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype);
  12104.             TREE_PARMLIST (yyval.ttype) = 1;
  12105.           ;
  12106.       break;}
  12107. ! case 677:
  12108. ! #line 3568 "parse.y"
  12109.   {
  12110.             /* This helps us recover from really nasty
  12111.                parse errors, for example, a missing right
  12112. ***************
  12113. *** 7218,7225 ****
  12114.             yychar = ')';
  12115.           ;
  12116.       break;}
  12117. ! case 679:
  12118. ! #line 3581 "parse.y"
  12119.   {
  12120.             /* This helps us recover from really nasty
  12121.                parse errors, for example, a missing right
  12122. --- 7166,7173 ----
  12123.             yychar = ')';
  12124.           ;
  12125.       break;}
  12126. ! case 678:
  12127. ! #line 3579 "parse.y"
  12128.   {
  12129.             /* This helps us recover from really nasty
  12130.                parse errors, for example, a missing right
  12131. ***************
  12132. *** 7231,7414 ****
  12133.             yychar = ')';
  12134.           ;
  12135.       break;}
  12136.   case 680:
  12137.   #line 3596 "parse.y"
  12138. ! { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
  12139.       break;}
  12140.   case 681:
  12141.   #line 3598 "parse.y"
  12142. ! { yyval.ttype = build_tree_list (yyvsp[0].ttype, yyval.ttype); ;
  12143.       break;}
  12144.   case 682:
  12145.   #line 3600 "parse.y"
  12146. ! { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
  12147.       break;}
  12148.   case 683:
  12149.   #line 3602 "parse.y"
  12150. - { yyval.ttype = chainon (yyval.ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
  12151. -     break;}
  12152. - case 684:
  12153. - #line 3604 "parse.y"
  12154.   { yyval.ttype = chainon (yyval.ttype, build_tree_list (yyvsp[0].ttype, yyvsp[-2].ttype)); ;
  12155.       break;}
  12156. ! case 686:
  12157. ! #line 3610 "parse.y"
  12158.   { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
  12159.       break;}
  12160.   case 687:
  12161.   #line 3633 "parse.y"
  12162.   { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
  12163.       break;}
  12164.   case 688:
  12165.   #line 3635 "parse.y"
  12166. ! { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
  12167.       break;}
  12168.   case 689:
  12169.   #line 3637 "parse.y"
  12170. ! { yyval.ttype = build_tree_list (get_decl_list (yyval.ttype), yyvsp[0].ttype); ;
  12171.       break;}
  12172.   case 690:
  12173.   #line 3639 "parse.y"
  12174. ! { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
  12175.       break;}
  12176.   case 691:
  12177.   #line 3641 "parse.y"
  12178. ! { yyval.ttype = build_tree_list (yyval.ttype, NULL_TREE); ;
  12179.       break;}
  12180.   case 692:
  12181. ! #line 3643 "parse.y"
  12182. ! { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
  12183.       break;}
  12184.   case 693:
  12185.   #line 3648 "parse.y"
  12186. - { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
  12187. -     break;}
  12188. - case 694:
  12189. - #line 3650 "parse.y"
  12190.   { yyval.ttype = build_tree_list (yyvsp[0].ttype, yyval.ttype); ;
  12191.       break;}
  12192. ! case 697:
  12193. ! #line 3659 "parse.y"
  12194.   { see_typename (); ;
  12195.       break;}
  12196. ! case 698:
  12197. ! #line 3682 "parse.y"
  12198.   {
  12199.             warning ("type specifier omitted for parameter");
  12200.             yyval.ttype = build_tree_list (TREE_PURPOSE (TREE_VALUE (yyvsp[-1].ttype)), NULL_TREE);
  12201.           ;
  12202.       break;}
  12203. ! case 699:
  12204. ! #line 3687 "parse.y"
  12205.   {
  12206.             warning ("type specifier omitted for parameter");
  12207.             yyval.ttype = build_tree_list (TREE_PURPOSE (TREE_VALUE (yyvsp[-2].ttype)), yyval.ttype);
  12208.           ;
  12209.       break;}
  12210. ! case 700:
  12211. ! #line 3695 "parse.y"
  12212.   { yyval.ttype = NULL_TREE; ;
  12213.       break;}
  12214. ! case 701:
  12215. ! #line 3697 "parse.y"
  12216.   { yyval.ttype = yyvsp[-1].ttype; ;
  12217.       break;}
  12218. ! case 702:
  12219. ! #line 3702 "parse.y"
  12220.   { yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
  12221.       break;}
  12222. ! case 704:
  12223. ! #line 3708 "parse.y"
  12224.   {
  12225.             TREE_CHAIN (yyvsp[0].ttype) = yyval.ttype;
  12226.             yyval.ttype = yyvsp[0].ttype;
  12227.           ;
  12228.       break;}
  12229.   case 705:
  12230.   #line 3716 "parse.y"
  12231. ! { yyval.ttype = NULL_TREE; ;
  12232.       break;}
  12233.   case 706:
  12234.   #line 3718 "parse.y"
  12235. ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  12236.       break;}
  12237.   case 707:
  12238.   #line 3720 "parse.y"
  12239. - { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  12240. -     break;}
  12241. - case 708:
  12242. - #line 3722 "parse.y"
  12243.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  12244.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  12245.           ;
  12246.       break;}
  12247. ! case 709:
  12248. ! #line 3728 "parse.y"
  12249.   { got_scope = NULL_TREE; ;
  12250.       break;}
  12251.   case 710:
  12252.   #line 3733 "parse.y"
  12253. ! { yyval.ttype = ansi_opname[MULT_EXPR]; ;
  12254.       break;}
  12255.   case 711:
  12256.   #line 3735 "parse.y"
  12257. ! { yyval.ttype = ansi_opname[TRUNC_DIV_EXPR]; ;
  12258.       break;}
  12259.   case 712:
  12260.   #line 3737 "parse.y"
  12261. ! { yyval.ttype = ansi_opname[TRUNC_MOD_EXPR]; ;
  12262.       break;}
  12263.   case 713:
  12264.   #line 3739 "parse.y"
  12265. ! { yyval.ttype = ansi_opname[PLUS_EXPR]; ;
  12266.       break;}
  12267.   case 714:
  12268.   #line 3741 "parse.y"
  12269. ! { yyval.ttype = ansi_opname[MINUS_EXPR]; ;
  12270.       break;}
  12271.   case 715:
  12272.   #line 3743 "parse.y"
  12273. ! { yyval.ttype = ansi_opname[BIT_AND_EXPR]; ;
  12274.       break;}
  12275.   case 716:
  12276.   #line 3745 "parse.y"
  12277. ! { yyval.ttype = ansi_opname[BIT_IOR_EXPR]; ;
  12278.       break;}
  12279.   case 717:
  12280.   #line 3747 "parse.y"
  12281. ! { yyval.ttype = ansi_opname[BIT_XOR_EXPR]; ;
  12282.       break;}
  12283.   case 718:
  12284.   #line 3749 "parse.y"
  12285. ! { yyval.ttype = ansi_opname[BIT_NOT_EXPR]; ;
  12286.       break;}
  12287.   case 719:
  12288.   #line 3751 "parse.y"
  12289. ! { yyval.ttype = ansi_opname[COMPOUND_EXPR]; ;
  12290.       break;}
  12291.   case 720:
  12292.   #line 3753 "parse.y"
  12293. ! { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
  12294.       break;}
  12295.   case 721:
  12296.   #line 3755 "parse.y"
  12297. ! { yyval.ttype = ansi_opname[LT_EXPR]; ;
  12298.       break;}
  12299.   case 722:
  12300.   #line 3757 "parse.y"
  12301. ! { yyval.ttype = ansi_opname[GT_EXPR]; ;
  12302.       break;}
  12303.   case 723:
  12304.   #line 3759 "parse.y"
  12305. ! { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
  12306.       break;}
  12307.   case 724:
  12308.   #line 3761 "parse.y"
  12309. ! { yyval.ttype = ansi_assopname[yyvsp[0].code]; ;
  12310.       break;}
  12311.   case 725:
  12312.   #line 3763 "parse.y"
  12313. ! { yyval.ttype = ansi_opname [MODIFY_EXPR]; ;
  12314.       break;}
  12315.   case 726:
  12316.   #line 3765 "parse.y"
  12317. --- 7179,7366 ----
  12318.             yychar = ')';
  12319.           ;
  12320.       break;}
  12321. + case 679:
  12322. + #line 3594 "parse.y"
  12323. + { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
  12324. +     break;}
  12325.   case 680:
  12326.   #line 3596 "parse.y"
  12327. ! { yyval.ttype = build_tree_list (yyvsp[0].ttype, yyval.ttype); ;
  12328.       break;}
  12329.   case 681:
  12330.   #line 3598 "parse.y"
  12331. ! { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
  12332.       break;}
  12333.   case 682:
  12334.   #line 3600 "parse.y"
  12335. ! { yyval.ttype = chainon (yyval.ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
  12336.       break;}
  12337.   case 683:
  12338.   #line 3602 "parse.y"
  12339.   { yyval.ttype = chainon (yyval.ttype, build_tree_list (yyvsp[0].ttype, yyvsp[-2].ttype)); ;
  12340.       break;}
  12341. ! case 685:
  12342. ! #line 3608 "parse.y"
  12343.   { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
  12344.       break;}
  12345. + case 686:
  12346. + #line 3631 "parse.y"
  12347. + { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
  12348. +     break;}
  12349.   case 687:
  12350.   #line 3633 "parse.y"
  12351.   { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
  12352.       break;}
  12353.   case 688:
  12354.   #line 3635 "parse.y"
  12355. ! { yyval.ttype = build_tree_list (get_decl_list (yyval.ttype), yyvsp[0].ttype); ;
  12356.       break;}
  12357.   case 689:
  12358.   #line 3637 "parse.y"
  12359. ! { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
  12360.       break;}
  12361.   case 690:
  12362.   #line 3639 "parse.y"
  12363. ! { yyval.ttype = build_tree_list (yyval.ttype, NULL_TREE); ;
  12364.       break;}
  12365.   case 691:
  12366.   #line 3641 "parse.y"
  12367. ! { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
  12368.       break;}
  12369.   case 692:
  12370. ! #line 3646 "parse.y"
  12371. ! { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
  12372.       break;}
  12373.   case 693:
  12374.   #line 3648 "parse.y"
  12375.   { yyval.ttype = build_tree_list (yyvsp[0].ttype, yyval.ttype); ;
  12376.       break;}
  12377. ! case 696:
  12378. ! #line 3657 "parse.y"
  12379.   { see_typename (); ;
  12380.       break;}
  12381. ! case 697:
  12382. ! #line 3680 "parse.y"
  12383.   {
  12384.             warning ("type specifier omitted for parameter");
  12385.             yyval.ttype = build_tree_list (TREE_PURPOSE (TREE_VALUE (yyvsp[-1].ttype)), NULL_TREE);
  12386.           ;
  12387.       break;}
  12388. ! case 698:
  12389. ! #line 3685 "parse.y"
  12390.   {
  12391.             warning ("type specifier omitted for parameter");
  12392.             yyval.ttype = build_tree_list (TREE_PURPOSE (TREE_VALUE (yyvsp[-2].ttype)), yyval.ttype);
  12393.           ;
  12394.       break;}
  12395. ! case 699:
  12396. ! #line 3693 "parse.y"
  12397.   { yyval.ttype = NULL_TREE; ;
  12398.       break;}
  12399. ! case 700:
  12400. ! #line 3695 "parse.y"
  12401.   { yyval.ttype = yyvsp[-1].ttype; ;
  12402.       break;}
  12403. ! case 701:
  12404. ! #line 3700 "parse.y"
  12405.   { yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
  12406.       break;}
  12407. ! case 703:
  12408. ! #line 3706 "parse.y"
  12409.   {
  12410.             TREE_CHAIN (yyvsp[0].ttype) = yyval.ttype;
  12411.             yyval.ttype = yyvsp[0].ttype;
  12412.           ;
  12413.       break;}
  12414. + case 704:
  12415. + #line 3714 "parse.y"
  12416. + { yyval.ttype = NULL_TREE; ;
  12417. +     break;}
  12418.   case 705:
  12419.   #line 3716 "parse.y"
  12420. ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  12421.       break;}
  12422.   case 706:
  12423.   #line 3718 "parse.y"
  12424. ! { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  12425.       break;}
  12426.   case 707:
  12427.   #line 3720 "parse.y"
  12428.   { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
  12429.             yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
  12430.           ;
  12431.       break;}
  12432. ! case 708:
  12433. ! #line 3726 "parse.y"
  12434.   { got_scope = NULL_TREE; ;
  12435.       break;}
  12436. + case 709:
  12437. + #line 3731 "parse.y"
  12438. + { yyval.ttype = ansi_opname[MULT_EXPR]; ;
  12439. +     break;}
  12440.   case 710:
  12441.   #line 3733 "parse.y"
  12442. ! { yyval.ttype = ansi_opname[TRUNC_DIV_EXPR]; ;
  12443.       break;}
  12444.   case 711:
  12445.   #line 3735 "parse.y"
  12446. ! { yyval.ttype = ansi_opname[TRUNC_MOD_EXPR]; ;
  12447.       break;}
  12448.   case 712:
  12449.   #line 3737 "parse.y"
  12450. ! { yyval.ttype = ansi_opname[PLUS_EXPR]; ;
  12451.       break;}
  12452.   case 713:
  12453.   #line 3739 "parse.y"
  12454. ! { yyval.ttype = ansi_opname[MINUS_EXPR]; ;
  12455.       break;}
  12456.   case 714:
  12457.   #line 3741 "parse.y"
  12458. ! { yyval.ttype = ansi_opname[BIT_AND_EXPR]; ;
  12459.       break;}
  12460.   case 715:
  12461.   #line 3743 "parse.y"
  12462. ! { yyval.ttype = ansi_opname[BIT_IOR_EXPR]; ;
  12463.       break;}
  12464.   case 716:
  12465.   #line 3745 "parse.y"
  12466. ! { yyval.ttype = ansi_opname[BIT_XOR_EXPR]; ;
  12467.       break;}
  12468.   case 717:
  12469.   #line 3747 "parse.y"
  12470. ! { yyval.ttype = ansi_opname[BIT_NOT_EXPR]; ;
  12471.       break;}
  12472.   case 718:
  12473.   #line 3749 "parse.y"
  12474. ! { yyval.ttype = ansi_opname[COMPOUND_EXPR]; ;
  12475.       break;}
  12476.   case 719:
  12477.   #line 3751 "parse.y"
  12478. ! { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
  12479.       break;}
  12480.   case 720:
  12481.   #line 3753 "parse.y"
  12482. ! { yyval.ttype = ansi_opname[LT_EXPR]; ;
  12483.       break;}
  12484.   case 721:
  12485.   #line 3755 "parse.y"
  12486. ! { yyval.ttype = ansi_opname[GT_EXPR]; ;
  12487.       break;}
  12488.   case 722:
  12489.   #line 3757 "parse.y"
  12490. ! { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
  12491.       break;}
  12492.   case 723:
  12493.   #line 3759 "parse.y"
  12494. ! { yyval.ttype = ansi_assopname[yyvsp[0].code]; ;
  12495.       break;}
  12496.   case 724:
  12497.   #line 3761 "parse.y"
  12498. ! { yyval.ttype = ansi_opname [MODIFY_EXPR]; ;
  12499.       break;}
  12500.   case 725:
  12501.   #line 3763 "parse.y"
  12502. ! { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
  12503.       break;}
  12504.   case 726:
  12505.   #line 3765 "parse.y"
  12506. ***************
  12507. *** 7416,7494 ****
  12508.       break;}
  12509.   case 727:
  12510.   #line 3767 "parse.y"
  12511. ! { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
  12512.       break;}
  12513.   case 728:
  12514.   #line 3769 "parse.y"
  12515. ! { yyval.ttype = ansi_opname[POSTINCREMENT_EXPR]; ;
  12516.       break;}
  12517.   case 729:
  12518.   #line 3771 "parse.y"
  12519. ! { yyval.ttype = ansi_opname[PREDECREMENT_EXPR]; ;
  12520.       break;}
  12521.   case 730:
  12522.   #line 3773 "parse.y"
  12523. ! { yyval.ttype = ansi_opname[TRUTH_ANDIF_EXPR]; ;
  12524.       break;}
  12525.   case 731:
  12526.   #line 3775 "parse.y"
  12527. ! { yyval.ttype = ansi_opname[TRUTH_ORIF_EXPR]; ;
  12528.       break;}
  12529.   case 732:
  12530.   #line 3777 "parse.y"
  12531. ! { yyval.ttype = ansi_opname[TRUTH_NOT_EXPR]; ;
  12532.       break;}
  12533.   case 733:
  12534.   #line 3779 "parse.y"
  12535. ! { yyval.ttype = ansi_opname[COND_EXPR]; ;
  12536.       break;}
  12537.   case 734:
  12538.   #line 3781 "parse.y"
  12539. ! { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
  12540.       break;}
  12541.   case 735:
  12542.   #line 3783 "parse.y"
  12543. ! { yyval.ttype = ansi_opname[COMPONENT_REF]; ;
  12544.       break;}
  12545.   case 736:
  12546.   #line 3785 "parse.y"
  12547. ! { yyval.ttype = ansi_opname[MEMBER_REF]; ;
  12548.       break;}
  12549.   case 737:
  12550.   #line 3787 "parse.y"
  12551. ! { yyval.ttype = ansi_opname[CALL_EXPR]; ;
  12552.       break;}
  12553.   case 738:
  12554.   #line 3789 "parse.y"
  12555. ! { yyval.ttype = ansi_opname[ARRAY_REF]; ;
  12556.       break;}
  12557.   case 739:
  12558.   #line 3791 "parse.y"
  12559. ! { yyval.ttype = ansi_opname[NEW_EXPR]; ;
  12560.       break;}
  12561.   case 740:
  12562.   #line 3793 "parse.y"
  12563. ! { yyval.ttype = ansi_opname[DELETE_EXPR]; ;
  12564.       break;}
  12565.   case 741:
  12566.   #line 3795 "parse.y"
  12567. ! { yyval.ttype = ansi_opname[VEC_NEW_EXPR]; ;
  12568.       break;}
  12569.   case 742:
  12570. ! #line 3797 "parse.y"
  12571. ! { yyval.ttype = ansi_opname[VEC_DELETE_EXPR]; ;
  12572.       break;}
  12573.   case 743:
  12574.   #line 3800 "parse.y"
  12575. - { yyval.ttype = grokoptypename (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  12576. -     break;}
  12577. - case 744:
  12578. - #line 3802 "parse.y"
  12579.   { yyval.ttype = ansi_opname[ERROR_MARK]; ;
  12580.       break;}
  12581.   }
  12582.      /* the action file gets copied in in place of this dollarsign */
  12583. ! #line 480 "/usr/local/lib/bison.simple"
  12584.   
  12585.     yyvsp -= yylen;
  12586.     yyssp -= yylen;
  12587. --- 7368,7442 ----
  12588.       break;}
  12589.   case 727:
  12590.   #line 3767 "parse.y"
  12591. ! { yyval.ttype = ansi_opname[POSTINCREMENT_EXPR]; ;
  12592.       break;}
  12593.   case 728:
  12594.   #line 3769 "parse.y"
  12595. ! { yyval.ttype = ansi_opname[PREDECREMENT_EXPR]; ;
  12596.       break;}
  12597.   case 729:
  12598.   #line 3771 "parse.y"
  12599. ! { yyval.ttype = ansi_opname[TRUTH_ANDIF_EXPR]; ;
  12600.       break;}
  12601.   case 730:
  12602.   #line 3773 "parse.y"
  12603. ! { yyval.ttype = ansi_opname[TRUTH_ORIF_EXPR]; ;
  12604.       break;}
  12605.   case 731:
  12606.   #line 3775 "parse.y"
  12607. ! { yyval.ttype = ansi_opname[TRUTH_NOT_EXPR]; ;
  12608.       break;}
  12609.   case 732:
  12610.   #line 3777 "parse.y"
  12611. ! { yyval.ttype = ansi_opname[COND_EXPR]; ;
  12612.       break;}
  12613.   case 733:
  12614.   #line 3779 "parse.y"
  12615. ! { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
  12616.       break;}
  12617.   case 734:
  12618.   #line 3781 "parse.y"
  12619. ! { yyval.ttype = ansi_opname[COMPONENT_REF]; ;
  12620.       break;}
  12621.   case 735:
  12622.   #line 3783 "parse.y"
  12623. ! { yyval.ttype = ansi_opname[MEMBER_REF]; ;
  12624.       break;}
  12625.   case 736:
  12626.   #line 3785 "parse.y"
  12627. ! { yyval.ttype = ansi_opname[CALL_EXPR]; ;
  12628.       break;}
  12629.   case 737:
  12630.   #line 3787 "parse.y"
  12631. ! { yyval.ttype = ansi_opname[ARRAY_REF]; ;
  12632.       break;}
  12633.   case 738:
  12634.   #line 3789 "parse.y"
  12635. ! { yyval.ttype = ansi_opname[NEW_EXPR]; ;
  12636.       break;}
  12637.   case 739:
  12638.   #line 3791 "parse.y"
  12639. ! { yyval.ttype = ansi_opname[DELETE_EXPR]; ;
  12640.       break;}
  12641.   case 740:
  12642.   #line 3793 "parse.y"
  12643. ! { yyval.ttype = ansi_opname[VEC_NEW_EXPR]; ;
  12644.       break;}
  12645.   case 741:
  12646.   #line 3795 "parse.y"
  12647. ! { yyval.ttype = ansi_opname[VEC_DELETE_EXPR]; ;
  12648.       break;}
  12649.   case 742:
  12650. ! #line 3798 "parse.y"
  12651. ! { yyval.ttype = grokoptypename (yyvsp[-1].ttype, yyvsp[0].ttype); ;
  12652.       break;}
  12653.   case 743:
  12654.   #line 3800 "parse.y"
  12655.   { yyval.ttype = ansi_opname[ERROR_MARK]; ;
  12656.       break;}
  12657.   }
  12658.      /* the action file gets copied in in place of this dollarsign */
  12659. ! #line 465 "/gnu/lib/bison.simple"
  12660.   
  12661.     yyvsp -= yylen;
  12662.     yyssp -= yylen;
  12663. ***************
  12664. *** 7684,7690 ****
  12665.     yystate = yyn;
  12666.     goto yynewstate;
  12667.   }
  12668. ! #line 3805 "parse.y"
  12669.   
  12670.   
  12671.   #ifdef SPEW_DEBUG
  12672. --- 7632,7638 ----
  12673.     yystate = yyn;
  12674.     goto yynewstate;
  12675.   }
  12676. ! #line 3803 "parse.y"
  12677.   
  12678.   
  12679.   #ifdef SPEW_DEBUG
  12680. diff -rc --new-file gcc-2.6.3/final.c /gnu/src/amiga/gcc-2.6.3/final.c
  12681. *** gcc-2.6.3/final.c    Wed Sep 21 00:05:03 1994
  12682. --- /gnu/src/amiga/gcc-2.6.3/final.c    Sat Dec  3 15:02:16 1994
  12683. ***************
  12684. *** 2021,2026 ****
  12685. --- 2021,2030 ----
  12686.   
  12687.     if (write_symbols != NO_DEBUG)
  12688.       {
  12689. + /* Phil.B: 03-Oct-94 added q_anote from albaugh@agames.com (Mike Albaugh) */
  12690. + #if defined(amigados) && defined(ASM_NOTE_SOURCE_LINE)
  12691. +   ASM_NOTE_SOURCE_LINE(file,last_linenum,filename);
  12692. + #endif
  12693.   #ifdef SDB_DEBUGGING_INFO
  12694.         if (write_symbols == SDB_DEBUG
  12695.   #if 0 /* People like having line numbers even in wrong file!  */
  12696. diff -rc --new-file gcc-2.6.3/gcc.c /gnu/src/amiga/gcc-2.6.3/gcc.c
  12697. *** gcc-2.6.3/gcc.c    Mon Nov  7 16:01:43 1994
  12698. --- /gnu/src/amiga/gcc-2.6.3/gcc.c    Thu Dec 22 19:56:33 1994
  12699. ***************
  12700. *** 207,212 ****
  12701. --- 207,217 ----
  12702.   
  12703.   static int save_temps_flag;
  12704.   
  12705. + #ifdef amigados
  12706. + /* Phil.B: 03-Oct-94 Flag indicating process priority */
  12707. + static int amiga_priority = 0;
  12708. + #endif /* amigados */
  12709.   /* The compiler version.  */
  12710.   
  12711.   static char *compiler_version;
  12712. ***************
  12713. *** 836,841 ****
  12714. --- 841,850 ----
  12715.      {"--pedantic-errors", "-pedantic-errors", 0},
  12716.      {"--pipe", "-pipe", 0},
  12717.      {"--prefix", "-B", "a"},
  12718. + /* Phil.B: 03-Oct-94, allow priority settings for all programs started by gcc */
  12719. + #ifdef amigados
  12720. +    {"--priority", "-P", "a"},
  12721. + #endif /* amigados */
  12722.      {"--preprocess", "-E", 0},
  12723.      {"--print-file-name", "-print-file-name=", "aj"},
  12724.      {"--print-libgcc-file-name", "-print-libgcc-file-name", 0},
  12725. ***************
  12726. *** 984,991 ****
  12727.           }
  12728.           }
  12729.         i++;
  12730. -     }
  12731.   
  12732.         /* Handle old-fashioned options--just copy them through,
  12733.        with their arguments.  */
  12734.         else if (argv[i][0] == '-')
  12735. --- 993,1000 ----
  12736.           }
  12737.           }
  12738.         i++;
  12739.   
  12740. +     }
  12741.         /* Handle old-fashioned options--just copy them through,
  12742.        with their arguments.  */
  12743.         else if (argv[i][0] == '-')
  12744. ***************
  12745. *** 1339,1355 ****
  12746.   #endif
  12747.   
  12748.   #ifndef STANDARD_EXEC_PREFIX
  12749. ! #define STANDARD_EXEC_PREFIX "/usr/local/lib/gcc-lib/"
  12750.   #endif /* !defined STANDARD_EXEC_PREFIX */
  12751.   
  12752.   static char *standard_exec_prefix = STANDARD_EXEC_PREFIX;
  12753. ! static char *standard_exec_prefix_1 = "/usr/lib/gcc/";
  12754.   #ifdef MD_EXEC_PREFIX
  12755.   static char *md_exec_prefix = MD_EXEC_PREFIX;
  12756.   #endif
  12757.   
  12758.   #ifndef STANDARD_STARTFILE_PREFIX
  12759. ! #define STANDARD_STARTFILE_PREFIX "/usr/local/lib/"
  12760.   #endif /* !defined STANDARD_STARTFILE_PREFIX */
  12761.   
  12762.   #ifdef MD_STARTFILE_PREFIX
  12763. --- 1348,1364 ----
  12764.   #endif
  12765.   
  12766.   #ifndef STANDARD_EXEC_PREFIX
  12767. ! #define STANDARD_EXEC_PREFIX "/gnu/lib/gcc-lib/"
  12768.   #endif /* !defined STANDARD_EXEC_PREFIX */
  12769.   
  12770.   static char *standard_exec_prefix = STANDARD_EXEC_PREFIX;
  12771. ! static char *standard_exec_prefix_1 = "/local/lib/gcc-lib/";
  12772.   #ifdef MD_EXEC_PREFIX
  12773.   static char *md_exec_prefix = MD_EXEC_PREFIX;
  12774.   #endif
  12775.   
  12776.   #ifndef STANDARD_STARTFILE_PREFIX
  12777. ! #define STANDARD_STARTFILE_PREFIX "/gnu/lib/"
  12778.   #endif /* !defined STANDARD_STARTFILE_PREFIX */
  12779.   
  12780.   #ifdef MD_STARTFILE_PREFIX
  12781. ***************
  12782. *** 1359,1369 ****
  12783.   static char *md_startfile_prefix_1 = MD_STARTFILE_PREFIX_1;
  12784.   #endif
  12785.   static char *standard_startfile_prefix = STANDARD_STARTFILE_PREFIX;
  12786. ! static char *standard_startfile_prefix_1 = "/lib/";
  12787. ! static char *standard_startfile_prefix_2 = "/usr/lib/";
  12788.   
  12789.   #ifndef TOOLDIR_BASE_PREFIX
  12790. ! #define TOOLDIR_BASE_PREFIX "/usr/local/"
  12791.   #endif
  12792.   static char *tooldir_base_prefix = TOOLDIR_BASE_PREFIX;
  12793.   static char *tooldir_prefix;
  12794. --- 1368,1378 ----
  12795.   static char *md_startfile_prefix_1 = MD_STARTFILE_PREFIX_1;
  12796.   #endif
  12797.   static char *standard_startfile_prefix = STANDARD_STARTFILE_PREFIX;
  12798. ! static char *standard_startfile_prefix_1 = "/local/lib/";
  12799. ! static char *standard_startfile_prefix_2 = "/local/lib/";
  12800.   
  12801.   #ifndef TOOLDIR_BASE_PREFIX
  12802. ! #define TOOLDIR_BASE_PREFIX "/local/"
  12803.   #endif
  12804.   static char *tooldir_base_prefix = TOOLDIR_BASE_PREFIX;
  12805.   static char *tooldir_prefix;
  12806. ***************
  12807. *** 1564,1574 ****
  12808. --- 1573,1589 ----
  12809.     base = choose_temp_base_try (P_tmpdir, base);
  12810.   #endif
  12811.   
  12812. + #ifdef amigados
  12813. +   if (!base) /* No env var set */
  12814. +     base = "RAM:";
  12815. + #else
  12816.     base = choose_temp_base_try (concat4 (dir_separator_str, "usr", 
  12817.                                           dir_separator_str, "tmp"), 
  12818.                                   base);
  12819.     base = choose_temp_base_try (concat (dir_separator_str, "tmp"), base);
  12820.    
  12821. + #endif
  12822.     /* If all else fails, use the current directory! */  
  12823.     if (base == (char *)0) base = concat(".", dir_separator_str);
  12824.   
  12825. ***************
  12826. *** 1577,1583 ****
  12827.                                                    "ccXXXXXX")) + 1);
  12828.     strcpy (temp_filename, base);
  12829.     if (len > 0 && temp_filename[len-1] != '/'
  12830. !       && temp_filename[len-1] != DIR_SEPARATOR)
  12831.       temp_filename[len++] = DIR_SEPARATOR;
  12832.     strcpy (temp_filename + len, "ccXXXXXX");
  12833.   
  12834. --- 1592,1602 ----
  12835.                                                    "ccXXXXXX")) + 1);
  12836.     strcpy (temp_filename, base);
  12837.     if (len > 0 && temp_filename[len-1] != '/'
  12838. !       && temp_filename[len-1] != DIR_SEPARATOR
  12839. ! #ifdef amigados
  12840. !                         && temp_filename[len-1] != ':'
  12841. ! #endif
  12842. !     )
  12843.       temp_filename[len++] = DIR_SEPARATOR;
  12844.     strcpy (temp_filename + len, "ccXXXXXX");
  12845.   
  12846. ***************
  12847. *** 1722,1728 ****
  12848.   
  12849.     /* Determine the filename to execute (special case for absolute paths).  */
  12850.   
  12851. !   if (*name == '/' || *name == DIR_SEPARATOR)
  12852.       {
  12853.         if (access (name, mode))
  12854.       {
  12855. --- 1741,1751 ----
  12856.   
  12857.     /* Determine the filename to execute (special case for absolute paths).  */
  12858.   
  12859. !   if (*name == '/' || *name == DIR_SEPARATOR
  12860. ! #ifdef amigados
  12861. !           || index (name, ':')
  12862. ! #endif
  12863. !     )
  12864.       {
  12865.         if (access (name, mode))
  12866.       {
  12867. ***************
  12868. *** 1942,1947 ****
  12869. --- 1965,1971 ----
  12870.      NOT_LAST is nonzero if this is not the last subcommand
  12871.      (i.e. its output should be piped to the next one.)  */
  12872.   
  12873. + #ifndef PEXECUTE
  12874.   #ifdef __MSDOS__
  12875.   
  12876.   #include <process.h>
  12877. ***************
  12878. *** 2143,2150 ****
  12879.   {
  12880.     return (search_flag ? spawnv : spawnvp) (1, program, FIX_ARGV (argv));
  12881.   }
  12882. ! #endif /* OS2 or WINNT */
  12883.   
  12884.   /* Execute the command specified by the arguments on the current line of spec.
  12885.      When using pipes, this includes several piped-together commands
  12886. --- 2167,2174 ----
  12887.   {
  12888.     return (search_flag ? spawnv : spawnvp) (1, program, FIX_ARGV (argv));
  12889.   }
  12890. ! #endif /* OS2 or WINNT*/
  12891. ! #endif /* !defined (PEXECUTE) */
  12892.   
  12893.   /* Execute the command specified by the arguments on the current line of spec.
  12894.      When using pipes, this includes several piped-together commands
  12895. ***************
  12896. *** 2239,2247 ****
  12897. --- 2263,2277 ----
  12898.       {
  12899.         char *string = commands[i].argv[0];
  12900.   
  12901. + #ifdef PEXECUTE
  12902. +       commands[i].pid = PEXECUTE (string != commands[i].prog,
  12903. +                   string, commands[i].argv,
  12904. +                   i + 1 < n_commands);
  12905. + #else
  12906.         commands[i].pid = pexecute (string != commands[i].prog,
  12907.                     string, commands[i].argv,
  12908.                     i + 1 < n_commands);
  12909. + #endif
  12910.   
  12911.         if (string != commands[i].prog)
  12912.       free (string);
  12913. ***************
  12914. *** 2262,2267 ****
  12915. --- 2292,2300 ----
  12916.       int pid;
  12917.       char *prog = "unknown";
  12918.   
  12919. + #ifdef PEXECUTE_RESULT
  12920. +     pid = PEXECUTE_RESULT (status, commands[i]);
  12921. + #else /* PEXECUTE_RESULT */
  12922.   #ifdef __MSDOS__
  12923.           status = pid = commands[i].pid;
  12924.   #else
  12925. ***************
  12926. *** 2271,2276 ****
  12927. --- 2304,2310 ----
  12928.       pid = wait (&status);
  12929.   #endif
  12930.   #endif
  12931. + #endif /* PEXECUTE_RESULT */
  12932.       if (pid < 0)
  12933.         abort ();
  12934.   
  12935. ***************
  12936. *** 2389,2394 ****
  12937. --- 2423,2429 ----
  12938.         if (*endp == PATH_SEPARATOR || *endp == 0)
  12939.           {
  12940.             strncpy (nstore, startp, endp-startp);
  12941. + #ifndef amigados
  12942.             if (endp == startp)
  12943.           strcpy (nstore, concat (".", dir_separator_str));
  12944.             else if (endp[-1] != '/' && endp[-1] != DIR_SEPARATOR)
  12945. ***************
  12946. *** 2398,2403 ****
  12947. --- 2433,2447 ----
  12948.           }
  12949.             else
  12950.           nstore[endp-startp] = 0;
  12951. + #else
  12952. +           if (endp[-1] != '/' && endp[-1] != ':')
  12953. +         {
  12954. +           nstore[endp-startp] = '/';
  12955. +           nstore[endp-startp+1] = 0;
  12956. +         }
  12957. +           else
  12958. +         nstore[endp-startp] = 0;
  12959. + #endif
  12960.             add_prefix (&exec_prefixes, nstore, 0, 0, NULL_PTR);
  12961.             if (*endp == 0)
  12962.           break;
  12963. ***************
  12964. *** 2420,2425 ****
  12965. --- 2464,2470 ----
  12966.         if (*endp == PATH_SEPARATOR || *endp == 0)
  12967.           {
  12968.             strncpy (nstore, startp, endp-startp);
  12969. + #ifndef amigados
  12970.             if (endp == startp)
  12971.           strcpy (nstore, concat (".", dir_separator_str));
  12972.             else if (endp[-1] != '/' && endp[-1] != DIR_SEPARATOR)
  12973. ***************
  12974. *** 2429,2434 ****
  12975. --- 2474,2488 ----
  12976.           }
  12977.             else
  12978.           nstore[endp-startp] = 0;
  12979. + #else
  12980. +           if (endp[-1] != '/' && endp[-1] != ':')
  12981. +         {
  12982. +           nstore[endp-startp] = '/';
  12983. +           nstore[endp-startp+1] = 0;
  12984. +         }
  12985. +           else
  12986. +         nstore[endp-startp] = 0;
  12987. + #endif
  12988.             add_prefix (&startfile_prefixes, nstore, 0, 0, NULL_PTR);
  12989.             if (*endp == 0)
  12990.           break;
  12991. ***************
  12992. *** 2452,2466 ****
  12993.         if (*endp == PATH_SEPARATOR || *endp == 0)
  12994.           {
  12995.             strncpy (nstore, startp, endp-startp);
  12996.             if (endp == startp)
  12997.           strcpy (nstore, concat (".", dir_separator_str));
  12998.             else if (endp[-1] != '/' && endp[-1] != DIR_SEPARATOR)
  12999. !         {
  13000.             nstore[endp-startp] = DIR_SEPARATOR;
  13001.             nstore[endp-startp+1] = 0;
  13002.           }
  13003.             else
  13004.           nstore[endp-startp] = 0;
  13005.             add_prefix (&startfile_prefixes, nstore, 0, 0, NULL_PTR);
  13006.             if (*endp == 0)
  13007.           break;
  13008. --- 2506,2530 ----
  13009.         if (*endp == PATH_SEPARATOR || *endp == 0)
  13010.           {
  13011.             strncpy (nstore, startp, endp-startp);
  13012. + #ifndef amigados
  13013.             if (endp == startp)
  13014.           strcpy (nstore, concat (".", dir_separator_str));
  13015.             else if (endp[-1] != '/' && endp[-1] != DIR_SEPARATOR)
  13016. !           {
  13017.             nstore[endp-startp] = DIR_SEPARATOR;
  13018.             nstore[endp-startp+1] = 0;
  13019.           }
  13020.             else
  13021.           nstore[endp-startp] = 0;
  13022. + #else
  13023. +           if (endp[-1] != '/' && endp[-1] != ':')
  13024. +         {
  13025. +           nstore[endp-startp] = '/';
  13026. +           nstore[endp-startp+1] = 0;
  13027. +         }
  13028. +           else
  13029. +         nstore[endp-startp] = 0;
  13030. + #endif
  13031.             add_prefix (&startfile_prefixes, nstore, 0, 0, NULL_PTR);
  13032.             if (*endp == 0)
  13033.           break;
  13034. ***************
  13035. *** 2480,2485 ****
  13036. --- 2544,2559 ----
  13037.   
  13038.     for (i = 1; i < argc; i++)
  13039.       {
  13040. + #ifdef amigados
  13041. +       /* Phil.B 03-Oct-94 added -priority keyword */
  13042. +       if (! strcmp (argv[i], "-priority"))
  13043. +         {
  13044. +       if (i + 1 == argc)
  13045. +         fatal ("argument to `-priority' is missing");
  13046. +           amiga_priority = atoi(argv[++i]);
  13047. +         }
  13048. +       else
  13049. + #endif /* amigados */
  13050.         if (! strcmp (argv[i], "-dumpspecs"))
  13051.       {
  13052.         printf ("*asm:\n%s\n\n", asm_spec);
  13053. ***************
  13054. *** 2657,2662 ****
  13055. --- 2731,2747 ----
  13056.             }
  13057.             break;
  13058.   
  13059. + #ifdef amigados
  13060. +             case 'P': /* Phil.B 03-Oct-94 added -priority keyword */
  13061. +           if (p[1] == 0 && i + 1 == argc)
  13062. +         fatal ("argument to `-P' is missing");
  13063. +           if (p[1] == 0)
  13064. +         amiga_priority = atoi(argv[++i]);
  13065. +           else
  13066. +         amiga_priority = atoi((char *)(p + 1));
  13067. +           break;
  13068. + #endif /* amigados */
  13069.           case 'v':    /* Print our subcommands and print versions.  */
  13070.             n_switches++;
  13071.             /* If they do anything other than exactly `-v', don't set
  13072. ***************
  13073. *** 2745,2754 ****
  13074.   
  13075.     add_prefix (&exec_prefixes, 
  13076.                 concat3 (tooldir_prefix, "bin", dir_separator_str),
  13077. !           0, 0, NULL_PTR);
  13078.     add_prefix (&startfile_prefixes,
  13079.             concat3 (tooldir_prefix, "lib", dir_separator_str),
  13080. !           0, 0, NULL_PTR);
  13081.   
  13082.     /* More prefixes are enabled in main, after we read the specs file
  13083.        and determine whether this is cross-compilation or not.  */
  13084. --- 2830,2839 ----
  13085.   
  13086.     add_prefix (&exec_prefixes, 
  13087.                 concat3 (tooldir_prefix, "bin", dir_separator_str),
  13088. !             0, 0, NULL_PTR);
  13089.     add_prefix (&startfile_prefixes,
  13090.             concat3 (tooldir_prefix, "lib", dir_separator_str),
  13091. !             0, 0, NULL_PTR);
  13092.   
  13093.     /* More prefixes are enabled in main, after we read the specs file
  13094.        and determine whether this is cross-compilation or not.  */
  13095. ***************
  13096. *** 2829,2835 ****
  13097.         register char *p = &argv[i][1];
  13098.         register int c = *p;
  13099.   
  13100. !       if (c == 'B' || c == 'b' || c == 'V')
  13101.           {
  13102.             /* Skip a separate arg, if any.  */
  13103.             if (p[1] == 0)
  13104. --- 2914,2925 ----
  13105.         register char *p = &argv[i][1];
  13106.         register int c = *p;
  13107.   
  13108. !           /* Phil.B: 05-Oct-94 added support for '-P' */
  13109. !       if (c == 'B' || c == 'b' || c == 'V'
  13110. ! #ifdef amigados
  13111. !           || c == 'P'
  13112. ! #endif /* amigdos */
  13113. ! )
  13114.           {
  13115.             /* Skip a separate arg, if any.  */
  13116.             if (p[1] == 0)
  13117. ***************
  13118. *** 4397,4406 ****
  13119. --- 4487,4500 ----
  13120.         register char *p;
  13121.         int len;
  13122.   
  13123. + #ifdef FILE_NAME_NONDIRECTORY
  13124. +       input_basename = FILE_NAME_NONDIRECTORY (input_filename);
  13125. + #else
  13126.         input_basename = input_filename;
  13127.         for (p = input_filename; *p; p++)
  13128.           if (*p == '/' || *p == DIR_SEPARATOR)
  13129.             input_basename = p + 1;
  13130. + #endif
  13131.   
  13132.         /* Find a suffix starting with the last period,
  13133.            and set basename_length to exclude that suffix.  */
  13134. ***************
  13135. *** 4612,4629 ****
  13136.     return value;
  13137.   }
  13138.   
  13139. ! /* Return a newly-allocated string whose contents concatenate those of s1, s2 */
  13140.   
  13141. ! static char *
  13142.   concat (s1, s2)
  13143.        char *s1, *s2;
  13144. ! {
  13145.     int len1 = strlen (s1);
  13146.     int len2 = strlen (s2);
  13147.     char *result = xmalloc (len1 + len2 + 1);
  13148. !   strcpy (result, s1);
  13149. !   strcpy (result + len1, s2);
  13150.     *(result + len1 + len2) = 0;
  13151.   
  13152.     return result;
  13153. --- 4706,4723 ----
  13154.     return value;
  13155.   }
  13156.   
  13157. ! /* Return a newly-allocated string whose contents concatenate those of s1, s2, s3.  */
  13158.   
  13159. !   static char *
  13160.   concat (s1, s2)
  13161.        char *s1, *s2;
  13162. !   {
  13163.     int len1 = strlen (s1);
  13164.     int len2 = strlen (s2);
  13165.     char *result = xmalloc (len1 + len2 + 1);
  13166. !   
  13167. !     strcpy (result, s1);
  13168. !     strcpy (result + len1, s2);
  13169.     *(result + len1 + len2) = 0;
  13170.   
  13171.     return result;
  13172. diff -rc --new-file gcc-2.6.3/gcc.info /gnu/src/amiga/gcc-2.6.3/gcc.info
  13173. *** gcc-2.6.3/gcc.info    Wed Nov 23 22:54:18 1994
  13174. --- /gnu/src/amiga/gcc-2.6.3/gcc.info    Thu Dec 22 22:41:36 1994
  13175. ***************
  13176. *** 37,60 ****
  13177.   gcc.info-4: 141516
  13178.   gcc.info-5: 189933
  13179.   gcc.info-6: 221957
  13180. ! gcc.info-7: 269574
  13181. ! gcc.info-8: 319268
  13182. ! gcc.info-9: 368568
  13183. ! gcc.info-10: 417318
  13184. ! gcc.info-11: 458309
  13185. ! gcc.info-12: 495659
  13186. ! gcc.info-13: 545024
  13187. ! gcc.info-14: 588340
  13188. ! gcc.info-15: 637892
  13189. ! gcc.info-16: 670616
  13190. ! gcc.info-17: 718011
  13191. ! gcc.info-18: 763563
  13192. ! gcc.info-19: 813295
  13193. ! gcc.info-20: 862496
  13194. ! gcc.info-21: 912088
  13195. ! gcc.info-22: 956435
  13196. ! gcc.info-23: 999520
  13197. ! gcc.info-24: 1022946
  13198.   
  13199.   Tag Table:
  13200.   (Indirect)
  13201. --- 37,60 ----
  13202.   gcc.info-4: 141516
  13203.   gcc.info-5: 189933
  13204.   gcc.info-6: 221957
  13205. ! gcc.info-7: 269579
  13206. ! gcc.info-8: 319273
  13207. ! gcc.info-9: 368573
  13208. ! gcc.info-10: 417323
  13209. ! gcc.info-11: 458314
  13210. ! gcc.info-12: 495664
  13211. ! gcc.info-13: 545029
  13212. ! gcc.info-14: 588345
  13213. ! gcc.info-15: 637897
  13214. ! gcc.info-16: 670621
  13215. ! gcc.info-17: 718016
  13216. ! gcc.info-18: 763568
  13217. ! gcc.info-19: 813300
  13218. ! gcc.info-20: 862501
  13219. ! gcc.info-21: 912093
  13220. ! gcc.info-22: 956440
  13221. ! gcc.info-23: 999525
  13222. ! gcc.info-24: 1022951
  13223.   
  13224.   Tag Table:
  13225.   (Indirect)
  13226. ***************
  13227. *** 101,290 ****
  13228.   Node: Running Protoize194233
  13229.   Node: Installation200462
  13230.   Node: Configurations221957
  13231. ! Node: Other Dir253053
  13232. ! Node: Cross-Compiler254769
  13233. ! Node: Steps of Cross256600
  13234. ! Node: Configure Cross257718
  13235. ! Node: Tools and Libraries258355
  13236. ! Node: Cross Runtime260798
  13237. ! Node: Cross Headers264552
  13238. ! Node: Build Cross266537
  13239. ! Node: Sun Install268442
  13240. ! Node: VMS Install269574
  13241. ! Node: Collect2279503
  13242. ! Node: Header Dirs282212
  13243. ! Node: C Extensions283626
  13244. ! Node: Statement Exprs286800
  13245. ! Node: Local Labels288694
  13246. ! Node: Labels as Values290756
  13247. ! Node: Nested Functions292621
  13248. ! Node: Constructing Calls296477
  13249. ! Node: Naming Types298534
  13250. ! Node: Typeof299628
  13251. ! Node: Lvalues301493
  13252. ! Node: Conditionals303933
  13253. ! Node: Long Long304824
  13254. ! Node: Complex306268
  13255. ! Node: Zero Length308130
  13256. ! Node: Variable Length308804
  13257. ! Node: Macro Varargs311329
  13258. ! Node: Subscripting313432
  13259. ! Node: Pointer Arith313915
  13260. ! Node: Initializers314480
  13261. ! Node: Constructors314945
  13262. ! Node: Labeled Elements316639
  13263. ! Node: Case Ranges319268
  13264. ! Node: Cast to Union319949
  13265. ! Node: Function Attributes321027
  13266. ! Node: Function Prototypes327904
  13267. ! Node: Dollar Signs329703
  13268. ! Node: Character Escapes330490
  13269. ! Node: Alignment330771
  13270. ! Node: Variable Attributes332247
  13271. ! Node: Inline337966
  13272. ! Node: Extended Asm341843
  13273. ! Node: Asm Labels352130
  13274. ! Node: Explicit Reg Vars353449
  13275. ! Node: Global Reg Vars354697
  13276. ! Node: Local Reg Vars359262
  13277. ! Node: Alternate Keywords360854
  13278. ! Node: Incomplete Enums362256
  13279. ! Node: Function Names363012
  13280. ! Node: C++ Extensions364017
  13281. ! Node: Naming Results365254
  13282. ! Node: Min and Max368568
  13283. ! Node: Destructors and Goto370018
  13284. ! Node: C++ Interface370568
  13285. ! Node: Template Instantiation375791
  13286. ! Node: C++ Signatures381583
  13287. ! Node: Trouble385844
  13288. ! Node: Actual Bugs387412
  13289. ! Node: Installation Problems388681
  13290. ! Node: Cross-Compiler Problems402467
  13291. ! Node: Interoperation403938
  13292. ! Node: External Bugs417318
  13293. ! Node: Incompatibilities419450
  13294. ! Node: Fixed Headers427998
  13295. ! Node: Disappointments430337
  13296. ! Node: C++ Misunderstandings434557
  13297. ! Node: Static Definitions435204
  13298. ! Node: Temporaries436258
  13299. ! Node: Protoize Caveats438462
  13300. ! Node: Non-bugs442417
  13301. ! Node: Warnings and Errors451377
  13302. ! Node: Bugs453148
  13303. ! Node: Bug Criteria454508
  13304. ! Node: Bug Lists456938
  13305. ! Node: Bug Reporting458309
  13306. ! Node: Sending Patches470432
  13307. ! Node: Service475784
  13308. ! Node: VMS476345
  13309. ! Node: Include Files and VMS476738
  13310. ! Node: Global Declarations480628
  13311. ! Node: VMS Misc484937
  13312. ! Node: Portability489263
  13313. ! Node: Interface491026
  13314. ! Node: Passes495659
  13315. ! Node: RTL513002
  13316. ! Node: RTL Objects514890
  13317. ! Node: Accessors517934
  13318. ! Node: Flags523260
  13319. ! Node: Machine Modes532279
  13320. ! Node: Constants539836
  13321. ! Node: Regs and Memory545024
  13322. ! Node: Arithmetic556734
  13323. ! Node: Comparisons562632
  13324. ! Node: Bit Fields566694
  13325. ! Node: Conversions568058
  13326. ! Node: RTL Declarations570946
  13327. ! Node: Side Effects571755
  13328. ! Node: Incdec584302
  13329. ! Node: Assembler586818
  13330. ! Node: Insns588340
  13331. ! Node: Calls609193
  13332. ! Node: Sharing611788
  13333. ! Node: Reading RTL614864
  13334. ! Node: Machine Desc615808
  13335. ! Node: Patterns617661
  13336. ! Node: Example620605
  13337. ! Node: RTL Template621733
  13338. ! Node: Output Template633931
  13339. ! Node: Output Statement637892
  13340. ! Node: Constraints641605
  13341. ! Node: Simple Constraints642608
  13342. ! Node: Multi-Alternative654041
  13343. ! Node: Class Preferences656877
  13344. ! Node: Modifiers657757
  13345. ! Node: Machine Constraints660917
  13346. ! Node: No Constraints669495
  13347. ! Node: Standard Names670616
  13348. ! Node: Pattern Ordering697615
  13349. ! Node: Dependent Patterns698841
  13350. ! Node: Jump Patterns701781
  13351. ! Node: Insn Canonicalizations707597
  13352. ! Node: Peephole Definitions711092
  13353. ! Node: Expander Definitions718011
  13354. ! Node: Insn Splitting725151
  13355. ! Node: Insn Attributes732165
  13356. ! Node: Defining Attributes733212
  13357. ! Node: Expressions735224
  13358. ! Node: Tagging Insns741536
  13359. ! Node: Attr Example745899
  13360. ! Node: Insn Lengths748275
  13361. ! Node: Constant Attributes751639
  13362. ! Node: Delay Slots752799
  13363. ! Node: Function Units756010
  13364. ! Node: Target Macros761680
  13365. ! Node: Driver763563
  13366. ! Node: Run-time Target773870
  13367. ! Node: Storage Layout779877
  13368. ! Node: Type Layout792844
  13369. ! Node: Registers799173
  13370. ! Node: Register Basics800153
  13371. ! Node: Allocation Order804190
  13372. ! Node: Values in Registers805608
  13373. ! Node: Leaf Functions809987
  13374. ! Node: Stack Registers812462
  13375. ! Node: Obsolete Register Macros813295
  13376. ! Node: Register Classes815990
  13377. ! Node: Stack and Calling835562
  13378. ! Node: Frame Layout835998
  13379. ! Node: Frame Registers839439
  13380. ! Node: Elimination843249
  13381. ! Node: Stack Arguments847505
  13382. ! Node: Register Arguments853821
  13383. ! Node: Scalar Return862496
  13384. ! Node: Aggregate Return866459
  13385. ! Node: Caller Saves870174
  13386. ! Node: Function Entry871324
  13387. ! Node: Profiling880252
  13388. ! Node: Varargs883156
  13389. ! Node: Trampolines889980
  13390. ! Node: Library Calls896442
  13391. ! Node: Addressing Modes904500
  13392. ! Node: Condition Code912088
  13393. ! Node: Costs918287
  13394. ! Node: Sections926666
  13395. ! Node: PIC931455
  13396. ! Node: Assembler Format934214
  13397. ! Node: File Framework935219
  13398. ! Node: Data Output939392
  13399. ! Node: Uninitialized Data945316
  13400. ! Node: Label Output948023
  13401. ! Node: Initialization956435
  13402. ! Node: Macros for Initialization962578
  13403. ! Node: Instruction Output966011
  13404. ! Node: Dispatch Tables974006
  13405. ! Node: Alignment Output976383
  13406. ! Node: Debugging Info978123
  13407. ! Node: All Debuggers978732
  13408. ! Node: DBX Options981146
  13409. ! Node: DBX Hooks986031
  13410. ! Node: File Names and DBX989370
  13411. ! Node: SDB and DWARF991343
  13412. ! Node: Cross-compilation993073
  13413. ! Node: Misc999520
  13414. ! Node: Config1016085
  13415. ! Node: Index1022946
  13416.   
  13417.   End Tag Table
  13418. --- 101,290 ----
  13419.   Node: Running Protoize194233
  13420.   Node: Installation200462
  13421.   Node: Configurations221957
  13422. ! Node: Other Dir253058
  13423. ! Node: Cross-Compiler254774
  13424. ! Node: Steps of Cross256605
  13425. ! Node: Configure Cross257723
  13426. ! Node: Tools and Libraries258360
  13427. ! Node: Cross Runtime260803
  13428. ! Node: Cross Headers264557
  13429. ! Node: Build Cross266542
  13430. ! Node: Sun Install268447
  13431. ! Node: VMS Install269579
  13432. ! Node: Collect2279508
  13433. ! Node: Header Dirs282217
  13434. ! Node: C Extensions283631
  13435. ! Node: Statement Exprs286805
  13436. ! Node: Local Labels288699
  13437. ! Node: Labels as Values290761
  13438. ! Node: Nested Functions292626
  13439. ! Node: Constructing Calls296482
  13440. ! Node: Naming Types298539
  13441. ! Node: Typeof299633
  13442. ! Node: Lvalues301498
  13443. ! Node: Conditionals303938
  13444. ! Node: Long Long304829
  13445. ! Node: Complex306273
  13446. ! Node: Zero Length308135
  13447. ! Node: Variable Length308809
  13448. ! Node: Macro Varargs311334
  13449. ! Node: Subscripting313437
  13450. ! Node: Pointer Arith313920
  13451. ! Node: Initializers314485
  13452. ! Node: Constructors314950
  13453. ! Node: Labeled Elements316644
  13454. ! Node: Case Ranges319273
  13455. ! Node: Cast to Union319954
  13456. ! Node: Function Attributes321032
  13457. ! Node: Function Prototypes327909
  13458. ! Node: Dollar Signs329708
  13459. ! Node: Character Escapes330495
  13460. ! Node: Alignment330776
  13461. ! Node: Variable Attributes332252
  13462. ! Node: Inline337971
  13463. ! Node: Extended Asm341848
  13464. ! Node: Asm Labels352135
  13465. ! Node: Explicit Reg Vars353454
  13466. ! Node: Global Reg Vars354702
  13467. ! Node: Local Reg Vars359267
  13468. ! Node: Alternate Keywords360859
  13469. ! Node: Incomplete Enums362261
  13470. ! Node: Function Names363017
  13471. ! Node: C++ Extensions364022
  13472. ! Node: Naming Results365259
  13473. ! Node: Min and Max368573
  13474. ! Node: Destructors and Goto370023
  13475. ! Node: C++ Interface370573
  13476. ! Node: Template Instantiation375796
  13477. ! Node: C++ Signatures381588
  13478. ! Node: Trouble385849
  13479. ! Node: Actual Bugs387417
  13480. ! Node: Installation Problems388686
  13481. ! Node: Cross-Compiler Problems402472
  13482. ! Node: Interoperation403943
  13483. ! Node: External Bugs417323
  13484. ! Node: Incompatibilities419455
  13485. ! Node: Fixed Headers428003
  13486. ! Node: Disappointments430342
  13487. ! Node: C++ Misunderstandings434562
  13488. ! Node: Static Definitions435209
  13489. ! Node: Temporaries436263
  13490. ! Node: Protoize Caveats438467
  13491. ! Node: Non-bugs442422
  13492. ! Node: Warnings and Errors451382
  13493. ! Node: Bugs453153
  13494. ! Node: Bug Criteria454513
  13495. ! Node: Bug Lists456943
  13496. ! Node: Bug Reporting458314
  13497. ! Node: Sending Patches470437
  13498. ! Node: Service475789
  13499. ! Node: VMS476350
  13500. ! Node: Include Files and VMS476743
  13501. ! Node: Global Declarations480633
  13502. ! Node: VMS Misc484942
  13503. ! Node: Portability489268
  13504. ! Node: Interface491031
  13505. ! Node: Passes495664
  13506. ! Node: RTL513007
  13507. ! Node: RTL Objects514895
  13508. ! Node: Accessors517939
  13509. ! Node: Flags523265
  13510. ! Node: Machine Modes532284
  13511. ! Node: Constants539841
  13512. ! Node: Regs and Memory545029
  13513. ! Node: Arithmetic556739
  13514. ! Node: Comparisons562637
  13515. ! Node: Bit Fields566699
  13516. ! Node: Conversions568063
  13517. ! Node: RTL Declarations570951
  13518. ! Node: Side Effects571760
  13519. ! Node: Incdec584307
  13520. ! Node: Assembler586823
  13521. ! Node: Insns588345
  13522. ! Node: Calls609198
  13523. ! Node: Sharing611793
  13524. ! Node: Reading RTL614869
  13525. ! Node: Machine Desc615813
  13526. ! Node: Patterns617666
  13527. ! Node: Example620610
  13528. ! Node: RTL Template621738
  13529. ! Node: Output Template633936
  13530. ! Node: Output Statement637897
  13531. ! Node: Constraints641610
  13532. ! Node: Simple Constraints642613
  13533. ! Node: Multi-Alternative654046
  13534. ! Node: Class Preferences656882
  13535. ! Node: Modifiers657762
  13536. ! Node: Machine Constraints660922
  13537. ! Node: No Constraints669500
  13538. ! Node: Standard Names670621
  13539. ! Node: Pattern Ordering697620
  13540. ! Node: Dependent Patterns698846
  13541. ! Node: Jump Patterns701786
  13542. ! Node: Insn Canonicalizations707602
  13543. ! Node: Peephole Definitions711097
  13544. ! Node: Expander Definitions718016
  13545. ! Node: Insn Splitting725156
  13546. ! Node: Insn Attributes732170
  13547. ! Node: Defining Attributes733217
  13548. ! Node: Expressions735229
  13549. ! Node: Tagging Insns741541
  13550. ! Node: Attr Example745904
  13551. ! Node: Insn Lengths748280
  13552. ! Node: Constant Attributes751644
  13553. ! Node: Delay Slots752804
  13554. ! Node: Function Units756015
  13555. ! Node: Target Macros761685
  13556. ! Node: Driver763568
  13557. ! Node: Run-time Target773875
  13558. ! Node: Storage Layout779882
  13559. ! Node: Type Layout792849
  13560. ! Node: Registers799178
  13561. ! Node: Register Basics800158
  13562. ! Node: Allocation Order804195
  13563. ! Node: Values in Registers805613
  13564. ! Node: Leaf Functions809992
  13565. ! Node: Stack Registers812467
  13566. ! Node: Obsolete Register Macros813300
  13567. ! Node: Register Classes815995
  13568. ! Node: Stack and Calling835567
  13569. ! Node: Frame Layout836003
  13570. ! Node: Frame Registers839444
  13571. ! Node: Elimination843254
  13572. ! Node: Stack Arguments847510
  13573. ! Node: Register Arguments853826
  13574. ! Node: Scalar Return862501
  13575. ! Node: Aggregate Return866464
  13576. ! Node: Caller Saves870179
  13577. ! Node: Function Entry871329
  13578. ! Node: Profiling880257
  13579. ! Node: Varargs883161
  13580. ! Node: Trampolines889985
  13581. ! Node: Library Calls896447
  13582. ! Node: Addressing Modes904505
  13583. ! Node: Condition Code912093
  13584. ! Node: Costs918292
  13585. ! Node: Sections926671
  13586. ! Node: PIC931460
  13587. ! Node: Assembler Format934219
  13588. ! Node: File Framework935224
  13589. ! Node: Data Output939397
  13590. ! Node: Uninitialized Data945321
  13591. ! Node: Label Output948028
  13592. ! Node: Initialization956440
  13593. ! Node: Macros for Initialization962583
  13594. ! Node: Instruction Output966016
  13595. ! Node: Dispatch Tables974011
  13596. ! Node: Alignment Output976388
  13597. ! Node: Debugging Info978128
  13598. ! Node: All Debuggers978737
  13599. ! Node: DBX Options981151
  13600. ! Node: DBX Hooks986036
  13601. ! Node: File Names and DBX989375
  13602. ! Node: SDB and DWARF991348
  13603. ! Node: Cross-compilation993078
  13604. ! Node: Misc999525
  13605. ! Node: Config1016090
  13606. ! Node: Index1022951
  13607.   
  13608.   End Tag Table
  13609. diff -rc --new-file gcc-2.6.3/gcc.info-6 /gnu/src/amiga/gcc-2.6.3/gcc.info-6
  13610. *** gcc-2.6.3/gcc.info-6    Wed Nov 23 22:54:08 1994
  13611. --- /gnu/src/amiga/gcc-2.6.3/gcc.info-6    Thu Dec 22 22:41:33 1994
  13612. ***************
  13613. *** 669,676 ****
  13614.        to AIX 3.2.4 include a version of the IBM assembler which does not
  13615.        accept debugging directives: assembler updates are available as
  13616.        PTFs.  See the file `README.RS6000' for more details on both of
  13617. !      these problems.  Only AIX is supported on the PowerPC.  GNU CC
  13618. !      does not yet support the 64-bit PowerPC instructions.
  13619.   
  13620.        Objective C does not work on this architecture.
  13621.   
  13622. --- 669,678 ----
  13623.        to AIX 3.2.4 include a version of the IBM assembler which does not
  13624.        accept debugging directives: assembler updates are available as
  13625.        PTFs.  See the file `README.RS6000' for more details on both of
  13626. !      these problems.
  13627. !      Only AIX is supported on the PowerPC.  GNU CC does not yet support
  13628. !      the 64-bit PowerPC instructions.
  13629.   
  13630.        Objective C does not work on this architecture.
  13631.   
  13632. diff -rc --new-file gcc-2.6.3/genconfig.c /gnu/src/amiga/gcc-2.6.3/genconfig.c
  13633. *** gcc-2.6.3/genconfig.c    Wed Jun 15 07:37:01 1994
  13634. --- /gnu/src/amiga/gcc-2.6.3/genconfig.c    Sat Dec  3 15:02:26 1994
  13635. ***************
  13636. *** 303,310 ****
  13637. --- 303,318 ----
  13638.     printf ("/* Generated automatically by the program `genconfig'\n\
  13639.   from the machine description file `md'.  */\n\n");
  13640.   
  13641. + #ifdef amigados
  13642. +   /* this constant probably better be 14 in general, or a cross compiling
  13643. +      host might choke on some amigados header files... */
  13644. +   /* Allow at least 14 operands for the sake of asm constructs.  */
  13645. +   max_recog_operands = 14;
  13646. + #else
  13647.     /* Allow at least 10 operands for the sake of asm constructs.  */
  13648.     max_recog_operands = 9;  /* We will add 1 later.  */
  13649. + #endif
  13650.     max_dup_operands = 1;
  13651.   
  13652.     /* Read the machine description.  */
  13653. diff -rc --new-file gcc-2.6.3/ginclude/stdarg.h /gnu/src/amiga/gcc-2.6.3/ginclude/stdarg.h
  13654. *** gcc-2.6.3/ginclude/stdarg.h    Sat Jul  9 02:04:27 1994
  13655. --- /gnu/src/amiga/gcc-2.6.3/ginclude/stdarg.h    Sat Dec  3 15:02:28 1994
  13656. ***************
  13657. *** 156,159 ****
  13658. --- 156,167 ----
  13659.   #endif /* _STDARG_H */
  13660.   
  13661.   #endif /* not _ANSI_STDARG_H_ */
  13662. + #ifdef amigados
  13663. + # ifndef _VA_LIST
  13664. + #  define _VA_LIST
  13665. +    typedef __gnuc_va_list va_list;
  13666. + # endif
  13667. + #endif /* amigados */
  13668.   #endif /* not _STDARG_H */
  13669. diff -rc --new-file gcc-2.6.3/ginclude/stddef.h /gnu/src/amiga/gcc-2.6.3/ginclude/stddef.h
  13670. *** gcc-2.6.3/ginclude/stddef.h    Thu Nov 17 22:26:41 1994
  13671. --- /gnu/src/amiga/gcc-2.6.3/ginclude/stddef.h    Sat Dec  3 15:02:28 1994
  13672. ***************
  13673. *** 3,8 ****
  13674. --- 3,48 ----
  13675.   #ifndef _ANSI_STDDEF_H
  13676.   #ifndef __STDDEF_H__
  13677.   
  13678. + #ifdef amigados
  13679. + /* GNU libc has special support in this file, 4.3bsd-net2 libc deserves that
  13680. +    just as well. The system headers are ANSI compliant, the used compiler IS
  13681. +    gcc, so it's really ok to use the system header, no reason to hassle
  13682. +    with a jungle of ifdefs. Besides, amigados is only defined if compiling
  13683. +    with host=amigados, it doesn't apply if compiling with target=amigados
  13684. +    on a different host with possibly different system headers. Same thing
  13685. +    would apply to gstdarg.h and gvarargs.h, but those headers are more
  13686. +    easily fixable than this one and I'm sick of writing the same comment
  13687. +    there as well. MW
  13688. +    Include the contents of <stddef.h> inline rather than with a #include,
  13689. +    to avoid infinite include recursion when this file is installed in
  13690. +    gcc's include directory as stddef.h.  (fnf)  */
  13691. + #define _STDDEF_H_
  13692. + #include <machine/ansi.h>
  13693. + typedef    _PTRDIFF_T_    ptrdiff_t;
  13694. + #ifdef    _SIZE_T_
  13695. + typedef    _SIZE_T_    size_t;
  13696. + #undef    _SIZE_T_
  13697. + #endif
  13698. + #ifdef    _WCHAR_T_
  13699. + typedef    _WCHAR_T_    wchar_t;
  13700. + #undef    _WCHAR_T_
  13701. + #endif
  13702. + #ifndef    NULL
  13703. + #define    NULL    0
  13704. + #endif
  13705. + #define    offsetof(type, member)    ((size_t)(&((type *)0)->member))
  13706. + #else /* not amigados */
  13707.   /* Any one of these symbols __need_* means that GNU libc
  13708.      wants us just to define one data type.  So don't define
  13709.      the symbols that indicate this file's entire job has been done.  */
  13710. ***************
  13711. *** 212,217 ****
  13712. --- 252,259 ----
  13713.   #ifndef __WCHAR_TYPE__
  13714.   #define __WCHAR_TYPE__ int
  13715.   #endif
  13716. + #endif /* not  amigados */
  13717.   typedef __WCHAR_TYPE__ wchar_t;
  13718.   #endif
  13719.   #endif
  13720. diff -rc --new-file gcc-2.6.3/ginclude/varargs.h /gnu/src/amiga/gcc-2.6.3/ginclude/varargs.h
  13721. *** gcc-2.6.3/ginclude/varargs.h    Sat Jul  9 02:04:32 1994
  13722. --- /gnu/src/amiga/gcc-2.6.3/ginclude/varargs.h    Sat Dec  3 15:02:29 1994
  13723. ***************
  13724. *** 173,175 ****
  13725. --- 173,182 ----
  13726.   #ifdef _BSD_VA_LIST
  13727.   #undef _BSD_VA_LIST
  13728.   #endif
  13729. + #ifdef amigados
  13730. + # ifndef _VA_LIST
  13731. + #  define _VA_LIST
  13732. +    typedef __gnuc_va_list va_list;
  13733. + # endif
  13734. + #endif /* amigados */
  13735. diff -rc --new-file gcc-2.6.3/protoize.c /gnu/src/amiga/gcc-2.6.3/protoize.c
  13736. *** gcc-2.6.3/protoize.c    Tue Nov  8 02:27:44 1994
  13737. --- /gnu/src/amiga/gcc-2.6.3/protoize.c    Sat Dec  3 15:02:35 1994
  13738. ***************
  13739. *** 847,854 ****
  13740. --- 847,859 ----
  13741.   {
  13742.     struct default_include *p;
  13743.   
  13744. + #ifdef FILE_NAME_ABSOLUTE_P
  13745. +   if (! FILE_NAME_ABSOLUTE_P (path))
  13746. +     abort ();
  13747. + #else
  13748.     if (path[0] != '/')
  13749.       abort ();        /* Must be an absolutized filename.  */
  13750. + #endif
  13751.   
  13752.     for (p = include_defaults; p->fname; p++)
  13753.       if (!strncmp (path, p->fname, strlen (p->fname))
  13754. ***************
  13755. *** 1275,1281 ****
  13756. --- 1280,1290 ----
  13757.     {
  13758.       const char *src_p;
  13759.   
  13760. + #ifdef FILE_NAME_ABSOLUTE_P
  13761. +     if (! FILE_NAME_ABSOLUTE_P (rel_filename))
  13762. + #else
  13763.       if (rel_filename[0] != '/')
  13764. + #endif
  13765.         {
  13766.           src_p = cwd2;
  13767.           while (*endp++ = *src_p++)
  13768. ***************
  13769. *** 1538,1543 ****
  13770. --- 1547,1571 ----
  13771.     return ++q;
  13772.   }
  13773.   
  13774. + /* Use this macro to advance a char * over the filename part in a line
  13775. +    read from an aux-info file. */
  13776. + #ifndef amigados
  13777. + /* Version for file systems where the colon has no special meaning */
  13778. + #define ADVANCE_PAST_FILENAME(CP) \
  13779. +   while (* (CP) != ':') (CP)++
  13780. + #else
  13781. + /* Have to heuristically decide whether the colon is part of the filename
  13782. +    or whether it serves to delimit the filename from the line number. If
  13783. +    it's the latter case, then the character following the colon *must*
  13784. +    be a digit. Note that this heuristic fails if the filename starts
  13785. +    with a digit. */
  13786. + #define ADVANCE_PAST_FILENAME(CP) \
  13787. +     while ((CP)[0] != ':' || !isdigit ((CP)[1])) \
  13788. +       (CP)++;
  13789. + #endif
  13790.   /* Given a line from  an aux info file, and a time at which the aux info
  13791.      file it came from was created, check to see if the item described in
  13792.      the line comes from a file which has been modified since the aux info
  13793. ***************
  13794. *** 1559,1566 ****
  13795.     {
  13796.       const char *filename_start = p = l + 3;
  13797.   
  13798. !     while (*p != ':')
  13799. !       p++;
  13800.       filename = (char *) alloca ((size_t) (p - filename_start) + 1);
  13801.       strncpy (filename, filename_start, (size_t) (p - filename_start));
  13802.       filename[p-filename_start] = '\0';
  13803. --- 1587,1593 ----
  13804.     {
  13805.       const char *filename_start = p = l + 3;
  13806.   
  13807. !     ADVANCE_PAST_FILENAME (p);
  13808.       filename = (char *) alloca ((size_t) (p - filename_start) + 1);
  13809.       strncpy (filename, filename_start, (size_t) (p - filename_start));
  13810.       filename[p-filename_start] = '\0';
  13811. ***************
  13812. *** 1617,1624 ****
  13813.       const char *filename_start = p = l + 3;
  13814.       char *filename;
  13815.   
  13816. !     while (*p != ':')
  13817. !       p++;
  13818.       filename = (char *) alloca ((size_t) (p - filename_start) + 1);
  13819.       strncpy (filename, filename_start, (size_t) (p - filename_start));
  13820.       filename[p-filename_start] = '\0';
  13821. --- 1644,1650 ----
  13822.       const char *filename_start = p = l + 3;
  13823.       char *filename;
  13824.   
  13825. !     ADVANCE_PAST_FILENAME (p);
  13826.       filename = (char *) alloca ((size_t) (p - filename_start) + 1);
  13827.       strncpy (filename, filename_start, (size_t) (p - filename_start));
  13828.       filename[p-filename_start] = '\0';
  13829. ***************
  13830. *** 2338,2344 ****
  13831.     {
  13832.       char *p = aux_info_base;
  13833.   
  13834. !     while (*p != ':')
  13835.         p++;
  13836.       p++;
  13837.       while (*p == ' ')
  13838. --- 2364,2372 ----
  13839.     {
  13840.       char *p = aux_info_base;
  13841.   
  13842. !     /* have to make sure at least one space is following the colon to make
  13843. !        sure the colon is not part of the filename */
  13844. !     while (*p != ':' && p[1] != ' ')
  13845.         p++;
  13846.       p++;
  13847.       while (*p == ' ')
  13848. ***************
  13849. *** 2352,2358 ****
  13850.         continue;
  13851.       aux_info_second_line = p;
  13852.       aux_info_relocated_name = 0;
  13853. !     if (invocation_filename[0] != '/')
  13854.         {
  13855.       /* INVOCATION_FILENAME is relative;
  13856.          append it to BASE_SOURCE_FILENAME's dir.  */
  13857. --- 2380,2390 ----
  13858.         continue;
  13859.       aux_info_second_line = p;
  13860.       aux_info_relocated_name = 0;
  13861. ! #ifdef FILE_NAME_ABSOLUTE_P
  13862. !     if (! FILE_NAME_ABSOLUTE_P (invocation_filename))
  13863. ! #else
  13864. !       if (invocation_filename[0] != '/')
  13865. ! #endif
  13866.         {
  13867.       /* INVOCATION_FILENAME is relative;
  13868.          append it to BASE_SOURCE_FILENAME's dir.  */
  13869. ***************
  13870. *** 2441,2447 ****
  13871.   #ifndef UNPROTOIZE
  13872.   
  13873.   /* Check an individual filename for a .c suffix.  If the filename has this
  13874. !    suffix, rename the file such that its suffix is changed to .C.  This
  13875.      function implements the -C option.  */
  13876.   
  13877.   static void
  13878. --- 2473,2479 ----
  13879.   #ifndef UNPROTOIZE
  13880.   
  13881.   /* Check an individual filename for a .c suffix.  If the filename has this
  13882. !    suffix, rename the file such that its suffix is changed to .cc.  This
  13883.      function implements the -C option.  */
  13884.   
  13885.   static void
  13886. ***************
  13887. *** 2450,2456 ****
  13888.   {
  13889.     const char *filename = hp->symbol;
  13890.     int last_char_index = strlen (filename) - 1;
  13891. !   char *const new_filename = (char *) alloca (strlen (filename) + 1);
  13892.   
  13893.     /* Note that we don't care here if the given file was converted or not.  It
  13894.        is possible that the given file was *not* converted, simply because there
  13895. --- 2482,2488 ----
  13896.   {
  13897.     const char *filename = hp->symbol;
  13898.     int last_char_index = strlen (filename) - 1;
  13899. !   char *const new_filename = (char *) alloca (strlen (filename) + 2);
  13900.   
  13901.     /* Note that we don't care here if the given file was converted or not.  It
  13902.        is possible that the given file was *not* converted, simply because there
  13903. ***************
  13904. *** 2462,2469 ****
  13905.       return;
  13906.   
  13907.     strcpy (new_filename, filename);
  13908. !   new_filename[last_char_index] = 'C';
  13909.   
  13910.     if (my_link (filename, new_filename) == -1)
  13911.       {
  13912.         fprintf (stderr, "%s: warning: can't link file `%s' to `%s': %s\n",
  13913. --- 2494,2518 ----
  13914.       return;
  13915.   
  13916.     strcpy (new_filename, filename);
  13917. !   strcat (new_filename + last_char_index, "cc");
  13918. !   
  13919. !   /* use rename(2) if available !! Update config files to include HAVE_rename
  13920. !      if the used OS provides it. Advantages are: it's atomic, it's one
  13921. !      system call compared to two. */
  13922. ! #ifdef HAVE_rename
  13923. !   /* if the mentioned systems (POSIX 1003.1-1988) have rename(2), this has
  13924. !      to be changed to `my_rename' as well. */
  13925.   
  13926. +   if (rename (filename, new_filename) == -1)
  13927. +     {
  13928. +       fprintf (stderr, "%s: warning: can't rename file `%s' to `%s': %s\n",
  13929. +            pname, shortpath (NULL, filename),
  13930. +            shortpath (NULL, new_filename), sys_errlist[errno]);
  13931. +       errors++;
  13932. +       return;
  13933. +     }
  13934. + #else
  13935.     if (my_link (filename, new_filename) == -1)
  13936.       {
  13937.         fprintf (stderr, "%s: warning: can't link file `%s' to `%s': %s\n",
  13938. ***************
  13939. *** 2480,2485 ****
  13940. --- 2529,2535 ----
  13941.         errors++;
  13942.         return;
  13943.       }
  13944. + #endif
  13945.   }
  13946.   
  13947.   #endif /* !defined (UNPROTOIZE) */
  13948. diff -rc --new-file gcc-2.6.3/real.c /gnu/src/amiga/gcc-2.6.3/real.c
  13949. *** gcc-2.6.3/real.c    Sat Nov  5 18:57:08 1994
  13950. --- /gnu/src/amiga/gcc-2.6.3/real.c    Sat Dec  3 15:02:40 1994
  13951. ***************
  13952. *** 4279,4287 ****
  13953. --- 4279,4293 ----
  13954.     if (y[NE - 1] == 0x7fff)
  13955.       {
  13956.         if (sign)
  13957. + #ifdef amigados
  13958.       sprintf (wstring, " -Infinity ");
  13959.         else
  13960.       sprintf (wstring, " Infinity ");
  13961. + #else
  13962. +     sprintf (wstring, " -NaN ");
  13963. +       else
  13964. +     sprintf (wstring, " NaN ");
  13965. + #endif
  13966.         goto bxit;
  13967.       }
  13968.   
  13969. diff -rc --new-file gcc-2.6.3/scan-types.sh /gnu/src/amiga/gcc-2.6.3/scan-types.sh
  13970. *** gcc-2.6.3/scan-types.sh    Mon Apr 18 07:07:12 1994
  13971. --- /gnu/src/amiga/gcc-2.6.3/scan-types.sh    Sat Dec  3 15:02:43 1994
  13972. ***************
  13973. *** 1,4 ****
  13974. ! #! /bin/sh
  13975.   # Deduce values of standard ANSI and POSIX types (e.g. size_t, pid_t).
  13976.   # Emits macros definitions for these, and some other types.
  13977.   # Intended to be used to massage the sys-protos.h file.
  13978. --- 1,4 ----
  13979. ! #!/bin/sh
  13980.   # Deduce values of standard ANSI and POSIX types (e.g. size_t, pid_t).
  13981.   # Emits macros definitions for these, and some other types.
  13982.   # Intended to be used to massage the sys-protos.h file.
  13983. diff -rc --new-file gcc-2.6.3/toplev.c /gnu/src/amiga/gcc-2.6.3/toplev.c
  13984. *** gcc-2.6.3/toplev.c    Tue Oct 25 20:09:12 1994
  13985. --- /gnu/src/amiga/gcc-2.6.3/toplev.c    Thu Dec 22 21:00:43 1994
  13986. ***************
  13987. *** 135,140 ****
  13988. --- 135,153 ----
  13989.   static void print_switch_values ();
  13990.   static char *decl_name ();
  13991.   
  13992. + #ifdef amigados_fails
  13993. + /* Phil.B: 03-Oct-94 Flag indicating process priority */
  13994. + static int amiga_priority = -1;
  13995. + /* Handle new stack allocating */
  13996. + #include <proto/exec.h>
  13997. + struct Task *amiga_task;
  13998. + #if 0
  13999. + struct StackSwapStruct oldstack, newstack;
  14000. + long amiga_stksize = 50000;
  14001. + int amiga_newstack = FALSE;
  14002. + #endif
  14003. + #endif /* amigados */
  14004.   /* Name of program invoked, sans directories.  */
  14005.   
  14006.   char *progname;
  14007. ***************
  14008. *** 530,535 ****
  14009. --- 543,549 ----
  14010.     {"unroll-all-loops", &flag_unroll_all_loops, 1},
  14011.     {"writable-strings", &flag_writable_strings, 1},
  14012.     {"peephole", &flag_no_peephole, 0},
  14013. +   {"large-baserel", &flag_pic, 4},
  14014.     {"force-mem", &flag_force_mem, 1},
  14015.     {"force-addr", &flag_force_addr, 1},
  14016.     {"function-cse", &flag_no_function_cse, 0},
  14017. ***************
  14018. *** 548,553 ****
  14019. --- 562,568 ----
  14020.     {"schedule-insns2", &flag_schedule_insns_after_reload, 1},
  14021.     {"pic", &flag_pic, 1},
  14022.     {"PIC", &flag_pic, 2},
  14023. +   {"baserel", &flag_pic, 3},
  14024.     {"fast-math", &flag_fast_math, 1},
  14025.     {"common", &flag_no_common, 0},
  14026.     {"inhibit-size-directive", &flag_inhibit_size_directive, 1},
  14027. ***************
  14028. *** 1966,1971 ****
  14029. --- 1981,1989 ----
  14030.        FILE *asm_file;
  14031.        char *input_name;
  14032.   {
  14033. + #ifdef FILE_NAME_NONDIRECTORY
  14034. +   char *na = FILE_NAME_NONDIRECTORY (input_name);
  14035. + #else
  14036.     int len = strlen (input_name);
  14037.     char *na = input_name + len;
  14038.   
  14039. ***************
  14040. *** 1976,1981 ****
  14041. --- 1994,2000 ----
  14042.       break;
  14043.         na--;
  14044.       }
  14045. + #endif
  14046.   
  14047.   #ifdef ASM_OUTPUT_MAIN_SOURCE_FILENAME
  14048.     ASM_OUTPUT_MAIN_SOURCE_FILENAME (asm_file, na);
  14049. ***************
  14050. *** 3368,3373 ****
  14051. --- 3387,3405 ----
  14052.     }
  14053.   #endif /* RLIMIT_STACK */
  14054.   
  14055. + #ifdef amigados_fails
  14056. +   {
  14057. +     char *envstr;
  14058. + #if 0
  14059. +     if (envstr = getenv("GCCSTACK"))
  14060. +       if ((i = atoi(envstr)) > amiga_stksize) amiga_stksize = i;
  14061. + #endif
  14062. +     if (envstr = getenv("GCCPRIORITY"))
  14063. +       if (((i = atoi(envstr)) > -20) && (i < 20)) amiga_priority = i;
  14064. +   }
  14065. + #endif /* amigados */
  14066.     signal (SIGFPE, float_signal);
  14067.   
  14068.   #ifdef SIGPIPE
  14069. ***************
  14070. *** 3612,3617 ****
  14071. --- 3644,3674 ----
  14072.           pedantic = 1;
  14073.         else if (!strcmp (str, "pedantic-errors"))
  14074.           flag_pedantic_errors = pedantic = 1;
  14075. + #ifdef amigados_fails
  14076. +       else if (!strcmp (str, "priority"))
  14077. +         {
  14078. +           char *p = str + 1;
  14079. +           if (*p)
  14080. +         amiga_priority = atoi (p);
  14081. +               if (amiga_priority < -25)
  14082. +             amiga_priority = -25;
  14083. +               else if (amiga_priority > 25)
  14084. +             amiga_priority = 25;
  14085. +         }
  14086. + #if 0
  14087. +       else if (!strcmp (str, "stacksize"))
  14088. +         {
  14089. +           char *p = str + 1;
  14090. +           long size;
  14091. +           if (*p)
  14092. +         size = atoi (p);
  14093. +               if ((size > 0) && (size > amiga_stksize))
  14094. +             amiga_stksize = size;
  14095. +         }
  14096. + #endif
  14097. + #endif /* amigados */
  14098.         else if (!strcmp (str, "quiet"))
  14099.           quiet_flag = 1;
  14100.         else if (!strcmp (str, "version"))
  14101. ***************
  14102. *** 3861,3866 ****
  14103. --- 3918,3955 ----
  14104.       filename = argv[i];
  14105.       }
  14106.   
  14107. + #ifdef amigados_fails
  14108. +   Forbid();
  14109. +   amiga_task = FindTask(NULL);
  14110. + #if 0
  14111. +   oldstack.stk_Lower = amiga_task->tc_SPLower;
  14112. +   oldstack.stk_Upper = amiga_task->tc_SPUpper;
  14113. +   oldstack.stk_Pointer = amiga_task->tc_SPReg;
  14114. +   newstack.stk_Lower = (APTR)((long)oldstack.stk_Upper - (long)oldstack.stk_Lower);
  14115. + #endif
  14116. +   Permit();
  14117. +   SetTaskPri(amiga_task, amiga_priority);
  14118. + #if 0
  14119. +   /* Allocate new stack (50000 default). First check if new stack > existing
  14120. +      stacksize */
  14121. +   amiga_newstack = FALSE;
  14122. +   if ((long)newstack.stk_Lower < amiga_stksize) {
  14123. +     Forbid();
  14124. +     if (newstack.stk_Lower = (APTR)malloc(amiga_stksize)) {
  14125. +       long stk_offset = (long)oldstack.stk_Upper - (long)oldstack.stk_Pointer;
  14126. +       amiga_newstack = TRUE;
  14127. +       newstack.stk_Upper = (APTR)((long)newstack.stk_Lower + amiga_stksize);
  14128. +       newstack.stk_Pointer = (APTR)((long)newstack.stk_Upper - stk_offset);
  14129. +       bcopy(oldstack.stk_Pointer, newstack.stk_Pointer, stk_offset);
  14130. +       StackSwap(&newstack);
  14131. +     } else
  14132. +       error("Can't allocate new %ld stack", amiga_stksize);
  14133. +     Permit();
  14134. +   }
  14135. + #endif
  14136. + #endif /* amigados */
  14137.     /* Initialize for bytecode output.  A good idea to do this as soon as
  14138.        possible after the "-f" options have been parsed. */
  14139.     if (output_bytecode)
  14140. ***************
  14141. *** 3947,3953 ****
  14142.   
  14143.     compile_file (filename);
  14144.   
  14145. ! #if !defined(OS2) && !defined(VMS) && !defined(WINNT)
  14146.     if (flag_print_mem)
  14147.       {
  14148.   #ifdef __alpha
  14149. --- 4036,4042 ----
  14150.   
  14151.     compile_file (filename);
  14152.   
  14153. ! #if !defined(OS2) && !defined(VMS) && !defined(WINNT) && !defined(amigados)
  14154.     if (flag_print_mem)
  14155.       {
  14156.   #ifdef __alpha
  14157. ***************
  14158. *** 3965,3971 ****
  14159.         system ("ps v");
  14160.   #endif /* not USG */
  14161.       }
  14162. ! #endif /* not OS2 and not VMS and not WINNT */
  14163.   
  14164.     if (errorcount)
  14165.       exit (FATAL_EXIT_CODE);
  14166. --- 4054,4069 ----
  14167.         system ("ps v");
  14168.   #endif /* not USG */
  14169.       }
  14170. ! #endif /* not OS2 and not VMS and not WINNT and not amigados*/
  14171. ! #if 0
  14172. !   if (amiga_newstack) {
  14173. !     Forbid();
  14174. !     StackSwap(&newstack);
  14175. !     free(newstack.stk_Lower);
  14176. !     Permit();
  14177. !   }
  14178. ! #endif
  14179.   
  14180.     if (errorcount)
  14181.       exit (FATAL_EXIT_CODE);
  14182.