]> granicus.if.org Git - nethack/commitdiff
New precompiled versions of these
authorDerek S. Ray <derekray@gmail.com>
Wed, 27 May 2015 02:54:55 +0000 (22:54 -0400)
committerDerek S. Ray <derekray@gmail.com>
Wed, 27 May 2015 02:54:55 +0000 (22:54 -0400)
sys/share/dgn_comp.h
sys/share/dgn_lex.c
sys/share/dgn_yacc.c
sys/share/lev_comp.h
sys/share/lev_lex.c
sys/share/lev_yacc.c

index 6dede16f051d3d4ba44ff103ca9b2b8d9d1a9919..39a15c077a1f005220b4f2ce9fa2519283fe3dec 100644 (file)
@@ -2,20 +2,20 @@
 /* A Bison parser, made by GNU Bison 2.4.1.  */
 
 /* Skeleton interface for Bison's Yacc-like parsers in C
-
+   
       Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
    Free Software Foundation, Inc.
-
+   
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
-
+   
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-
+   
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
    special exception, which will cause the skeleton and the resulting
    Bison output files to be licensed under the GNU General Public
    License without this special exception.
-
+   
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
+
 /* Tokens.  */
 #ifndef YYTOKENTYPE
-#define YYTOKENTYPE
-/* Put the tokens into the symbol table, so that GDB and other debuggers
-   know about them.  */
-enum yytokentype {
-    INTEGER = 258,
-    A_DUNGEON = 259,
-    BRANCH = 260,
-    CHBRANCH = 261,
-    LEVEL = 262,
-    RNDLEVEL = 263,
-    CHLEVEL = 264,
-    RNDCHLEVEL = 265,
-    UP_OR_DOWN = 266,
-    PROTOFILE = 267,
-    DESCRIPTION = 268,
-    DESCRIPTOR = 269,
-    LEVELDESC = 270,
-    ALIGNMENT = 271,
-    LEVALIGN = 272,
-    ENTRY = 273,
-    STAIR = 274,
-    NO_UP = 275,
-    NO_DOWN = 276,
-    PORTAL = 277,
-    STRING = 278
-};
+# define YYTOKENTYPE
+   /* Put the tokens into the symbol table, so that GDB and other debuggers
+      know about them.  */
+   enum yytokentype {
+     INTEGER = 258,
+     A_DUNGEON = 259,
+     BRANCH = 260,
+     CHBRANCH = 261,
+     LEVEL = 262,
+     RNDLEVEL = 263,
+     CHLEVEL = 264,
+     RNDCHLEVEL = 265,
+     UP_OR_DOWN = 266,
+     PROTOFILE = 267,
+     DESCRIPTION = 268,
+     DESCRIPTOR = 269,
+     LEVELDESC = 270,
+     ALIGNMENT = 271,
+     LEVALIGN = 272,
+     ENTRY = 273,
+     STAIR = 274,
+     NO_UP = 275,
+     NO_DOWN = 276,
+     PORTAL = 277,
+     STRING = 278
+   };
 #endif
 /* Tokens.  */
 #define INTEGER 258
@@ -84,20 +85,29 @@ enum yytokentype {
 #define PORTAL 277
 #define STRING 278
 
-#if !defined YYSTYPE && !defined YYSTYPE_IS_DECLARED
-typedef union YYSTYPE {
+
+
+
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+typedef union YYSTYPE
+{
+
 /* Line 1676 of yacc.c  */
-#line 69 "dgn_comp.y"
+#line 67 "dgn_comp.y"
+
+       int     i;
+       char*   str;
+
 
-    int i;
-    char *str;
 
 /* Line 1676 of yacc.c  */
 #line 105 "y.tab.h"
 } YYSTYPE;
-#define YYSTYPE_IS_TRIVIAL 1
-#define yystype YYSTYPE /* obsolescent; will be withdrawn */
-#define YYSTYPE_IS_DECLARED 1
+# define YYSTYPE_IS_TRIVIAL 1
+# define yystype YYSTYPE /* obsolescent; will be withdrawn */
+# define YYSTYPE_IS_DECLARED 1
 #endif
 
 extern YYSTYPE yylval;
+
+
index 763ef81fccaf1174ef74ea41f1a5f2598a7f6a47..6af484b1412531a9806a7981d71c01c3a6e4cea0 100644 (file)
@@ -483,7 +483,7 @@ char *yytext;
 #line 1 "dgn_comp.l"
 #define INITIAL 0
 #line 2 "dgn_comp.l"
-/* NetHack 3.6  dgn_comp.l     $NHDT-Date: 1432512788 2015/05/25 00:13:08 $  $NHDT-Branch: master $:$NHDT-Revision: 1.12 $ */
+/* NetHack 3.6  dgn_comp.l     $NHDT-Date: 1432512785 2015/05/25 00:13:05 $  $NHDT-Branch: master $:$NHDT-Revision: 1.10 $ */
 /*     Copyright (c) 1989 by Jean-Christophe Collet */
 /*     Copyright (c) 1990 by M. Stephenson          */
 /* NetHack may be freely redistributed.  See license for details. */
@@ -559,7 +559,7 @@ extern YYSTYPE yylval;
 
 int nh_line_number = 1;
 
-#line 565 "lex.yy.c"
+#line 563 "lex.yy.c"
 
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
@@ -713,9 +713,9 @@ YY_DECL
        register char *yy_cp, *yy_bp;
        register int yy_act;
 
-#line 81 "dgn_comp.l"
+#line 79 "dgn_comp.l"
 
-#line 721 "lex.yy.c"
+#line 719 "lex.yy.c"
 
        if ( yy_init )
                {
@@ -801,152 +801,152 @@ do_action:      /* This label is used only to access EOF actions. */
 
 case 1:
 YY_RULE_SETUP
-#line 82 "dgn_comp.l"
+#line 80 "dgn_comp.l"
 return(A_DUNGEON);
        YY_BREAK
 case 2:
 YY_RULE_SETUP
-#line 83 "dgn_comp.l"
+#line 81 "dgn_comp.l"
 { yylval.i=1; return(UP_OR_DOWN); }
        YY_BREAK
 case 3:
 YY_RULE_SETUP
-#line 84 "dgn_comp.l"
+#line 82 "dgn_comp.l"
 { yylval.i=0; return(UP_OR_DOWN); }
        YY_BREAK
 case 4:
 YY_RULE_SETUP
-#line 85 "dgn_comp.l"
+#line 83 "dgn_comp.l"
 return(ENTRY);
        YY_BREAK
 case 5:
 YY_RULE_SETUP
-#line 86 "dgn_comp.l"
+#line 84 "dgn_comp.l"
 return(STAIR);
        YY_BREAK
 case 6:
 YY_RULE_SETUP
-#line 87 "dgn_comp.l"
+#line 85 "dgn_comp.l"
 return(NO_UP);
        YY_BREAK
 case 7:
 YY_RULE_SETUP
-#line 88 "dgn_comp.l"
+#line 86 "dgn_comp.l"
 return(NO_DOWN);
        YY_BREAK
 case 8:
 YY_RULE_SETUP
-#line 89 "dgn_comp.l"
+#line 87 "dgn_comp.l"
 return(PORTAL);
        YY_BREAK
 case 9:
 YY_RULE_SETUP
-#line 90 "dgn_comp.l"
+#line 88 "dgn_comp.l"
 return(PROTOFILE);
        YY_BREAK
 case 10:
 YY_RULE_SETUP
-#line 91 "dgn_comp.l"
+#line 89 "dgn_comp.l"
 return(DESCRIPTION);
        YY_BREAK
 case 11:
 YY_RULE_SETUP
-#line 92 "dgn_comp.l"
+#line 90 "dgn_comp.l"
 return(LEVELDESC);
        YY_BREAK
 case 12:
 YY_RULE_SETUP
-#line 93 "dgn_comp.l"
+#line 91 "dgn_comp.l"
 return(ALIGNMENT);
        YY_BREAK
 case 13:
 YY_RULE_SETUP
-#line 94 "dgn_comp.l"
+#line 92 "dgn_comp.l"
 return(LEVALIGN);
        YY_BREAK
 case 14:
 YY_RULE_SETUP
-#line 95 "dgn_comp.l"
+#line 93 "dgn_comp.l"
 { yylval.i=TOWN ; return(DESCRIPTOR); }
        YY_BREAK
 case 15:
 YY_RULE_SETUP
-#line 96 "dgn_comp.l"
+#line 94 "dgn_comp.l"
 { yylval.i=HELLISH ; return(DESCRIPTOR); }
        YY_BREAK
 case 16:
 YY_RULE_SETUP
-#line 97 "dgn_comp.l"
+#line 95 "dgn_comp.l"
 { yylval.i=MAZELIKE ; return(DESCRIPTOR); }
        YY_BREAK
 case 17:
 YY_RULE_SETUP
-#line 98 "dgn_comp.l"
+#line 96 "dgn_comp.l"
 { yylval.i=ROGUELIKE ; return(DESCRIPTOR); }
        YY_BREAK
 case 18:
 YY_RULE_SETUP
-#line 99 "dgn_comp.l"
+#line 97 "dgn_comp.l"
 { yylval.i=D_ALIGN_NONE ; return(DESCRIPTOR); }
        YY_BREAK
 case 19:
 YY_RULE_SETUP
-#line 100 "dgn_comp.l"
+#line 98 "dgn_comp.l"
 { yylval.i=D_ALIGN_NONE ; return(DESCRIPTOR); }
        YY_BREAK
 case 20:
 YY_RULE_SETUP
-#line 101 "dgn_comp.l"
+#line 99 "dgn_comp.l"
 { yylval.i=D_ALIGN_LAWFUL ; return(DESCRIPTOR); }
        YY_BREAK
 case 21:
 YY_RULE_SETUP
-#line 102 "dgn_comp.l"
+#line 100 "dgn_comp.l"
 { yylval.i=D_ALIGN_NEUTRAL ; return(DESCRIPTOR); }
        YY_BREAK
 case 22:
 YY_RULE_SETUP
-#line 103 "dgn_comp.l"
+#line 101 "dgn_comp.l"
 { yylval.i=D_ALIGN_CHAOTIC ; return(DESCRIPTOR); }
        YY_BREAK
 case 23:
 YY_RULE_SETUP
-#line 104 "dgn_comp.l"
+#line 102 "dgn_comp.l"
 return(BRANCH);
        YY_BREAK
 case 24:
 YY_RULE_SETUP
-#line 105 "dgn_comp.l"
+#line 103 "dgn_comp.l"
 return(CHBRANCH);
        YY_BREAK
 case 25:
 YY_RULE_SETUP
-#line 106 "dgn_comp.l"
+#line 104 "dgn_comp.l"
 return(LEVEL);
        YY_BREAK
 case 26:
 YY_RULE_SETUP
-#line 107 "dgn_comp.l"
+#line 105 "dgn_comp.l"
 return(RNDLEVEL);
        YY_BREAK
 case 27:
 YY_RULE_SETUP
-#line 108 "dgn_comp.l"
+#line 106 "dgn_comp.l"
 return(CHLEVEL);
        YY_BREAK
 case 28:
 YY_RULE_SETUP
-#line 109 "dgn_comp.l"
+#line 107 "dgn_comp.l"
 return(RNDCHLEVEL);
        YY_BREAK
 case 29:
 YY_RULE_SETUP
-#line 110 "dgn_comp.l"
+#line 108 "dgn_comp.l"
 { yylval.i=atoi(yytext); return(INTEGER); }
        YY_BREAK
 case 30:
 YY_RULE_SETUP
-#line 111 "dgn_comp.l"
+#line 109 "dgn_comp.l"
 { yytext[yyleng-1] = 0; /* Discard the trailing \" */
                  yylval.str = (char *) alloc(strlen(yytext+1)+1);
                  Strcpy(yylval.str, yytext+1); /* Discard the first \" */
@@ -954,30 +954,30 @@ YY_RULE_SETUP
        YY_BREAK
 case 31:
 YY_RULE_SETUP
-#line 115 "dgn_comp.l"
+#line 113 "dgn_comp.l"
 { nh_line_number++; }
        YY_BREAK
 case 32:
 YY_RULE_SETUP
-#line 116 "dgn_comp.l"
+#line 114 "dgn_comp.l"
 { nh_line_number++; }
        YY_BREAK
 case 33:
 YY_RULE_SETUP
-#line 117 "dgn_comp.l"
+#line 115 "dgn_comp.l"
 ;      /* skip trailing tabs & spaces */
        YY_BREAK
 case 34:
 YY_RULE_SETUP
-#line 118 "dgn_comp.l"
+#line 116 "dgn_comp.l"
 { return yytext[0]; }
        YY_BREAK
 case 35:
 YY_RULE_SETUP
-#line 119 "dgn_comp.l"
+#line 117 "dgn_comp.l"
 ECHO;
        YY_BREAK
-#line 983 "lex.yy.c"
+#line 981 "lex.yy.c"
 case YY_STATE_EOF(INITIAL):
        yyterminate();
 
@@ -1865,7 +1865,7 @@ int main()
        return 0;
        }
 #endif
-#line 119 "dgn_comp.l"
+#line 117 "dgn_comp.l"
 
 
 /* routine to switch to another input file; needed for flex */
index 2e3283ecc85520e95c7642fe5409ec250b93f157..dfdb781ef2ed2ac030535061db95cc6a74c3983c 100644 (file)
@@ -70,7 +70,7 @@
 /* Line 189 of yacc.c  */
 #line 1 "dgn_comp.y"
 
-/* NetHack 3.6  dgn_comp.y     $NHDT-Date: 1432512787 2015/05/25 00:13:07 $  $NHDT-Branch: master $:$NHDT-Revision: 1.8 $ */
+/* NetHack 3.6  dgn_comp.y     $NHDT-Date: 1432512785 2015/05/25 00:13:05 $  $NHDT-Branch: master $:$NHDT-Revision: 1.8 $ */
 /*     Copyright (c) 1989 by Jean-Christophe Collet */
 /*     Copyright (c) 1990 by M. Stephenson                               */
 /* NetHack may be freely redistributed.  See license for details. */
@@ -135,7 +135,7 @@ extern FILE *yyin, *yyout;  /* from dgn_lex.c */
 
 
 /* Line 189 of yacc.c  */
-#line 141 "y.tab.c"
+#line 139 "y.tab.c"
 
 /* Enabling traces.  */
 #ifndef YYDEBUG
@@ -216,7 +216,7 @@ typedef union YYSTYPE
 {
 
 /* Line 214 of yacc.c  */
-#line 69 "dgn_comp.y"
+#line 67 "dgn_comp.y"
 
        int     i;
        char*   str;
@@ -224,7 +224,7 @@ typedef union YYSTYPE
 
 
 /* Line 214 of yacc.c  */
-#line 230 "y.tab.c"
+#line 228 "y.tab.c"
 } YYSTYPE;
 # define YYSTYPE_IS_TRIVIAL 1
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
@@ -236,7 +236,7 @@ typedef union YYSTYPE
 
 
 /* Line 264 of yacc.c  */
-#line 242 "y.tab.c"
+#line 240 "y.tab.c"
 
 #ifdef short
 # undef short
@@ -541,11 +541,11 @@ static const yytype_int8 yyrhs[] =
 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
 static const yytype_uint16 yyrline[] =
 {
-       0,    83,    83,    84,    90,    91,    94,    95,    96,    97,
-     100,   113,   116,   122,   123,   124,   127,   133,   136,   143,
-     152,   159,   160,   161,   162,   163,   166,   176,   189,   200,
-     214,   221,   230,   243,   259,   273,   290,   291,   294,   308,
-     325,   328,   332,   336,   340,   347,   350,   356,   386,   423
+       0,    81,    81,    82,    88,    89,    92,    93,    94,    95,
+      98,   111,   114,   120,   121,   122,   125,   131,   134,   141,
+     150,   157,   158,   159,   160,   161,   164,   174,   187,   198,
+     212,   219,   228,   241,   257,   271,   288,   289,   292,   306,
+     323,   326,   330,   334,   338,   345,   348,   354,   384,   421
 };
 #endif
 
@@ -1508,7 +1508,7 @@ yyreduce:
         case 3:
 
 /* Line 1455 of yacc.c  */
-#line 85 "dgn_comp.y"
+#line 83 "dgn_comp.y"
     {
                        output_dgn();
                  }
@@ -1517,7 +1517,7 @@ yyreduce:
   case 10:
 
 /* Line 1455 of yacc.c  */
-#line 101 "dgn_comp.y"
+#line 99 "dgn_comp.y"
     {
                        init_dungeon();
                        Strcpy(tmpdungeon[n_dgns].name, (yyvsp[(3) - (6)].str));
@@ -1532,7 +1532,7 @@ yyreduce:
   case 11:
 
 /* Line 1455 of yacc.c  */
-#line 113 "dgn_comp.y"
+#line 111 "dgn_comp.y"
     {
                        (yyval.i) = 0;
                  }
@@ -1541,7 +1541,7 @@ yyreduce:
   case 12:
 
 /* Line 1455 of yacc.c  */
-#line 117 "dgn_comp.y"
+#line 115 "dgn_comp.y"
     {
                        (yyval.i) = (yyvsp[(1) - (1)].i);
                  }
@@ -1550,7 +1550,7 @@ yyreduce:
   case 16:
 
 /* Line 1455 of yacc.c  */
-#line 128 "dgn_comp.y"
+#line 126 "dgn_comp.y"
     {
                        tmpdungeon[n_dgns].entry_lev = (yyvsp[(3) - (3)].i);
                  }
@@ -1559,7 +1559,7 @@ yyreduce:
   case 18:
 
 /* Line 1455 of yacc.c  */
-#line 137 "dgn_comp.y"
+#line 135 "dgn_comp.y"
     {
                        if((yyvsp[(3) - (3)].i) <= TOWN || (yyvsp[(3) - (3)].i) >= D_ALIGN_CHAOTIC)
                            yyerror("Illegal description - ignoring!");
@@ -1571,7 +1571,7 @@ yyreduce:
   case 19:
 
 /* Line 1455 of yacc.c  */
-#line 144 "dgn_comp.y"
+#line 142 "dgn_comp.y"
     {
                        if((yyvsp[(3) - (3)].i) && (yyvsp[(3) - (3)].i) < D_ALIGN_CHAOTIC)
                            yyerror("Illegal alignment - ignoring!");
@@ -1583,7 +1583,7 @@ yyreduce:
   case 20:
 
 /* Line 1455 of yacc.c  */
-#line 153 "dgn_comp.y"
+#line 151 "dgn_comp.y"
     {
                        Strcpy(tmpdungeon[n_dgns].protoname, (yyvsp[(3) - (3)].str));
                        Free((yyvsp[(3) - (3)].str));
@@ -1593,7 +1593,7 @@ yyreduce:
   case 26:
 
 /* Line 1455 of yacc.c  */
-#line 167 "dgn_comp.y"
+#line 165 "dgn_comp.y"
     {
                        init_level();
                        Strcpy(tmplevel[n_levs].name, (yyvsp[(3) - (6)].str));
@@ -1608,7 +1608,7 @@ yyreduce:
   case 27:
 
 /* Line 1455 of yacc.c  */
-#line 177 "dgn_comp.y"
+#line 175 "dgn_comp.y"
     {
                        init_level();
                        Strcpy(tmplevel[n_levs].name, (yyvsp[(3) - (7)].str));
@@ -1624,7 +1624,7 @@ yyreduce:
   case 28:
 
 /* Line 1455 of yacc.c  */
-#line 190 "dgn_comp.y"
+#line 188 "dgn_comp.y"
     {
                        init_level();
                        Strcpy(tmplevel[n_levs].name, (yyvsp[(3) - (7)].str));
@@ -1640,7 +1640,7 @@ yyreduce:
   case 29:
 
 /* Line 1455 of yacc.c  */
-#line 201 "dgn_comp.y"
+#line 199 "dgn_comp.y"
     {
                        init_level();
                        Strcpy(tmplevel[n_levs].name, (yyvsp[(3) - (8)].str));
@@ -1657,7 +1657,7 @@ yyreduce:
   case 30:
 
 /* Line 1455 of yacc.c  */
-#line 215 "dgn_comp.y"
+#line 213 "dgn_comp.y"
     {
                        if((yyvsp[(3) - (3)].i) >= D_ALIGN_CHAOTIC)
                            yyerror("Illegal description - ignoring!");
@@ -1669,7 +1669,7 @@ yyreduce:
   case 31:
 
 /* Line 1455 of yacc.c  */
-#line 222 "dgn_comp.y"
+#line 220 "dgn_comp.y"
     {
                        if((yyvsp[(3) - (3)].i) && (yyvsp[(3) - (3)].i) < D_ALIGN_CHAOTIC)
                            yyerror("Illegal alignment - ignoring!");
@@ -1681,7 +1681,7 @@ yyreduce:
   case 32:
 
 /* Line 1455 of yacc.c  */
-#line 231 "dgn_comp.y"
+#line 229 "dgn_comp.y"
     {
                        init_level();
                        Strcpy(tmplevel[n_levs].name, (yyvsp[(3) - (7)].str));
@@ -1699,7 +1699,7 @@ yyreduce:
   case 33:
 
 /* Line 1455 of yacc.c  */
-#line 244 "dgn_comp.y"
+#line 242 "dgn_comp.y"
     {
                        init_level();
                        Strcpy(tmplevel[n_levs].name, (yyvsp[(3) - (8)].str));
@@ -1718,7 +1718,7 @@ yyreduce:
   case 34:
 
 /* Line 1455 of yacc.c  */
-#line 260 "dgn_comp.y"
+#line 258 "dgn_comp.y"
     {
                        init_level();
                        Strcpy(tmplevel[n_levs].name, (yyvsp[(3) - (8)].str));
@@ -1737,7 +1737,7 @@ yyreduce:
   case 35:
 
 /* Line 1455 of yacc.c  */
-#line 274 "dgn_comp.y"
+#line 272 "dgn_comp.y"
     {
                        init_level();
                        Strcpy(tmplevel[n_levs].name, (yyvsp[(3) - (9)].str));
@@ -1757,7 +1757,7 @@ yyreduce:
   case 38:
 
 /* Line 1455 of yacc.c  */
-#line 295 "dgn_comp.y"
+#line 293 "dgn_comp.y"
     {
                        init_branch();
                        Strcpy(tmpbranch[n_brs].name, (yyvsp[(3) - (7)].str));
@@ -1774,7 +1774,7 @@ yyreduce:
   case 39:
 
 /* Line 1455 of yacc.c  */
-#line 309 "dgn_comp.y"
+#line 307 "dgn_comp.y"
     {
                        init_branch();
                        Strcpy(tmpbranch[n_brs].name, (yyvsp[(3) - (8)].str));
@@ -1793,7 +1793,7 @@ yyreduce:
   case 40:
 
 /* Line 1455 of yacc.c  */
-#line 325 "dgn_comp.y"
+#line 323 "dgn_comp.y"
     {
                        (yyval.i) = TBR_STAIR;  /* two way stair */
                  }
@@ -1802,7 +1802,7 @@ yyreduce:
   case 41:
 
 /* Line 1455 of yacc.c  */
-#line 329 "dgn_comp.y"
+#line 327 "dgn_comp.y"
     {
                        (yyval.i) = TBR_STAIR;  /* two way stair */
                  }
@@ -1811,7 +1811,7 @@ yyreduce:
   case 42:
 
 /* Line 1455 of yacc.c  */
-#line 333 "dgn_comp.y"
+#line 331 "dgn_comp.y"
     {
                        (yyval.i) = TBR_NO_UP;  /* no up staircase */
                  }
@@ -1820,7 +1820,7 @@ yyreduce:
   case 43:
 
 /* Line 1455 of yacc.c  */
-#line 337 "dgn_comp.y"
+#line 335 "dgn_comp.y"
     {
                        (yyval.i) = TBR_NO_DOWN;        /* no down staircase */
                  }
@@ -1829,7 +1829,7 @@ yyreduce:
   case 44:
 
 /* Line 1455 of yacc.c  */
-#line 341 "dgn_comp.y"
+#line 339 "dgn_comp.y"
     {
                        (yyval.i) = TBR_PORTAL; /* portal connection */
                  }
@@ -1838,7 +1838,7 @@ yyreduce:
   case 45:
 
 /* Line 1455 of yacc.c  */
-#line 347 "dgn_comp.y"
+#line 345 "dgn_comp.y"
     {
                        (yyval.i) = 0;  /* defaults to down */
                  }
@@ -1847,7 +1847,7 @@ yyreduce:
   case 46:
 
 /* Line 1455 of yacc.c  */
-#line 351 "dgn_comp.y"
+#line 349 "dgn_comp.y"
     {
                        (yyval.i) = (yyvsp[(1) - (1)].i);
                  }
@@ -1856,7 +1856,7 @@ yyreduce:
   case 47:
 
 /* Line 1455 of yacc.c  */
-#line 357 "dgn_comp.y"
+#line 355 "dgn_comp.y"
     {
                        char *p = (yyvsp[(1) - (1)].str);
                        if (strlen(p) != 1) {
@@ -1872,7 +1872,7 @@ yyreduce:
   case 48:
 
 /* Line 1455 of yacc.c  */
-#line 387 "dgn_comp.y"
+#line 385 "dgn_comp.y"
     {
                        if ((yyvsp[(2) - (5)].i) < -MAXLEVEL || (yyvsp[(2) - (5)].i) > MAXLEVEL) {
                            yyerror("Abs base out of dlevel range - zeroing!");
@@ -1892,7 +1892,7 @@ yyreduce:
   case 49:
 
 /* Line 1455 of yacc.c  */
-#line 424 "dgn_comp.y"
+#line 422 "dgn_comp.y"
     {
                        if ((yyvsp[(2) - (5)].i) < -MAXLEVEL || (yyvsp[(2) - (5)].i) > MAXLEVEL) {
                            yyerror("Rel base out of dlevel range - zeroing!");
@@ -1907,7 +1907,7 @@ yyreduce:
 
 
 /* Line 1455 of yacc.c  */
-#line 1913 "y.tab.c"
+#line 1911 "y.tab.c"
       default: break;
     }
   YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
@@ -2119,7 +2119,7 @@ yyreturn:
 
 
 /* Line 1675 of yacc.c  */
-#line 434 "dgn_comp.y"
+#line 432 "dgn_comp.y"
 
 
 void
index 80f63652a95934e73ec25cee819509156d7bb3ab..39a15c077a1f005220b4f2ce9fa2519283fe3dec 100644 (file)
@@ -2,20 +2,20 @@
 /* A Bison parser, made by GNU Bison 2.4.1.  */
 
 /* Skeleton interface for Bison's Yacc-like parsers in C
-
+   
       Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
    Free Software Foundation, Inc.
-
+   
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
-
+   
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-
+   
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
    special exception, which will cause the skeleton and the resulting
    Bison output files to be licensed under the GNU General Public
    License without this special exception.
-
+   
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
+
 /* Tokens.  */
 #ifndef YYTOKENTYPE
-#define YYTOKENTYPE
-/* Put the tokens into the symbol table, so that GDB and other debuggers
-   know about them.  */
-enum yytokentype {
-    CHAR = 258,
-    INTEGER = 259,
-    BOOLEAN = 260,
-    PERCENT = 261,
-    SPERCENT = 262,
-    MINUS_INTEGER = 263,
-    PLUS_INTEGER = 264,
-    MAZE_GRID_ID = 265,
-    SOLID_FILL_ID = 266,
-    MINES_ID = 267,
-    ROGUELEV_ID = 268,
-    MESSAGE_ID = 269,
-    MAZE_ID = 270,
-    LEVEL_ID = 271,
-    LEV_INIT_ID = 272,
-    GEOMETRY_ID = 273,
-    NOMAP_ID = 274,
-    OBJECT_ID = 275,
-    COBJECT_ID = 276,
-    MONSTER_ID = 277,
-    TRAP_ID = 278,
-    DOOR_ID = 279,
-    DRAWBRIDGE_ID = 280,
-    object_ID = 281,
-    monster_ID = 282,
-    terrain_ID = 283,
-    MAZEWALK_ID = 284,
-    WALLIFY_ID = 285,
-    REGION_ID = 286,
-    FILLING = 287,
-    IRREGULAR = 288,
-    JOINED = 289,
-    ALTAR_ID = 290,
-    LADDER_ID = 291,
-    STAIR_ID = 292,
-    NON_DIGGABLE_ID = 293,
-    NON_PASSWALL_ID = 294,
-    ROOM_ID = 295,
-    PORTAL_ID = 296,
-    TELEPRT_ID = 297,
-    BRANCH_ID = 298,
-    LEV = 299,
-    MINERALIZE_ID = 300,
-    CORRIDOR_ID = 301,
-    GOLD_ID = 302,
-    ENGRAVING_ID = 303,
-    FOUNTAIN_ID = 304,
-    POOL_ID = 305,
-    SINK_ID = 306,
-    NONE = 307,
-    RAND_CORRIDOR_ID = 308,
-    DOOR_STATE = 309,
-    LIGHT_STATE = 310,
-    CURSE_TYPE = 311,
-    ENGRAVING_TYPE = 312,
-    DIRECTION = 313,
-    RANDOM_TYPE = 314,
-    RANDOM_TYPE_BRACKET = 315,
-    A_REGISTER = 316,
-    ALIGNMENT = 317,
-    LEFT_OR_RIGHT = 318,
-    CENTER = 319,
-    TOP_OR_BOT = 320,
-    ALTAR_TYPE = 321,
-    UP_OR_DOWN = 322,
-    SUBROOM_ID = 323,
-    NAME_ID = 324,
-    FLAGS_ID = 325,
-    FLAG_TYPE = 326,
-    MON_ATTITUDE = 327,
-    MON_ALERTNESS = 328,
-    MON_APPEARANCE = 329,
-    ROOMDOOR_ID = 330,
-    IF_ID = 331,
-    ELSE_ID = 332,
-    TERRAIN_ID = 333,
-    HORIZ_OR_VERT = 334,
-    REPLACE_TERRAIN_ID = 335,
-    EXIT_ID = 336,
-    SHUFFLE_ID = 337,
-    QUANTITY_ID = 338,
-    BURIED_ID = 339,
-    LOOP_ID = 340,
-    FOR_ID = 341,
-    TO_ID = 342,
-    SWITCH_ID = 343,
-    CASE_ID = 344,
-    BREAK_ID = 345,
-    DEFAULT_ID = 346,
-    ERODED_ID = 347,
-    TRAPPED_ID = 348,
-    RECHARGED_ID = 349,
-    INVIS_ID = 350,
-    GREASED_ID = 351,
-    FEMALE_ID = 352,
-    CANCELLED_ID = 353,
-    REVIVED_ID = 354,
-    AVENGE_ID = 355,
-    FLEEING_ID = 356,
-    BLINDED_ID = 357,
-    PARALYZED_ID = 358,
-    STUNNED_ID = 359,
-    CONFUSED_ID = 360,
-    SEENTRAPS_ID = 361,
-    ALL_ID = 362,
-    MONTYPE_ID = 363,
-    GRAVE_ID = 364,
-    ERODEPROOF_ID = 365,
-    FUNCTION_ID = 366,
-    MSG_OUTPUT_TYPE = 367,
-    COMPARE_TYPE = 368,
-    UNKNOWN_TYPE = 369,
-    rect_ID = 370,
-    fillrect_ID = 371,
-    line_ID = 372,
-    randline_ID = 373,
-    grow_ID = 374,
-    selection_ID = 375,
-    flood_ID = 376,
-    rndcoord_ID = 377,
-    circle_ID = 378,
-    ellipse_ID = 379,
-    filter_ID = 380,
-    complement_ID = 381,
-    gradient_ID = 382,
-    GRADIENT_TYPE = 383,
-    LIMITED = 384,
-    HUMIDITY_TYPE = 385,
-    STRING = 386,
-    MAP_ID = 387,
-    NQSTRING = 388,
-    VARSTRING = 389,
-    CFUNC = 390,
-    CFUNC_INT = 391,
-    CFUNC_STR = 392,
-    CFUNC_COORD = 393,
-    CFUNC_REGION = 394,
-    VARSTRING_INT = 395,
-    VARSTRING_INT_ARRAY = 396,
-    VARSTRING_STRING = 397,
-    VARSTRING_STRING_ARRAY = 398,
-    VARSTRING_VAR = 399,
-    VARSTRING_VAR_ARRAY = 400,
-    VARSTRING_COORD = 401,
-    VARSTRING_COORD_ARRAY = 402,
-    VARSTRING_REGION = 403,
-    VARSTRING_REGION_ARRAY = 404,
-    VARSTRING_MAPCHAR = 405,
-    VARSTRING_MAPCHAR_ARRAY = 406,
-    VARSTRING_MONST = 407,
-    VARSTRING_MONST_ARRAY = 408,
-    VARSTRING_OBJ = 409,
-    VARSTRING_OBJ_ARRAY = 410,
-    VARSTRING_SEL = 411,
-    VARSTRING_SEL_ARRAY = 412,
-    METHOD_INT = 413,
-    METHOD_INT_ARRAY = 414,
-    METHOD_STRING = 415,
-    METHOD_STRING_ARRAY = 416,
-    METHOD_VAR = 417,
-    METHOD_VAR_ARRAY = 418,
-    METHOD_COORD = 419,
-    METHOD_COORD_ARRAY = 420,
-    METHOD_REGION = 421,
-    METHOD_REGION_ARRAY = 422,
-    METHOD_MAPCHAR = 423,
-    METHOD_MAPCHAR_ARRAY = 424,
-    METHOD_MONST = 425,
-    METHOD_MONST_ARRAY = 426,
-    METHOD_OBJ = 427,
-    METHOD_OBJ_ARRAY = 428,
-    METHOD_SEL = 429,
-    METHOD_SEL_ARRAY = 430,
-    DICE = 431
-};
+# define YYTOKENTYPE
+   /* Put the tokens into the symbol table, so that GDB and other debuggers
+      know about them.  */
+   enum yytokentype {
+     INTEGER = 258,
+     A_DUNGEON = 259,
+     BRANCH = 260,
+     CHBRANCH = 261,
+     LEVEL = 262,
+     RNDLEVEL = 263,
+     CHLEVEL = 264,
+     RNDCHLEVEL = 265,
+     UP_OR_DOWN = 266,
+     PROTOFILE = 267,
+     DESCRIPTION = 268,
+     DESCRIPTOR = 269,
+     LEVELDESC = 270,
+     ALIGNMENT = 271,
+     LEVALIGN = 272,
+     ENTRY = 273,
+     STAIR = 274,
+     NO_UP = 275,
+     NO_DOWN = 276,
+     PORTAL = 277,
+     STRING = 278
+   };
 #endif
 /* Tokens.  */
-#define CHAR 258
-#define INTEGER 259
-#define BOOLEAN 260
-#define PERCENT 261
-#define SPERCENT 262
-#define MINUS_INTEGER 263
-#define PLUS_INTEGER 264
-#define MAZE_GRID_ID 265
-#define SOLID_FILL_ID 266
-#define MINES_ID 267
-#define ROGUELEV_ID 268
-#define MESSAGE_ID 269
-#define MAZE_ID 270
-#define LEVEL_ID 271
-#define LEV_INIT_ID 272
-#define GEOMETRY_ID 273
-#define NOMAP_ID 274
-#define OBJECT_ID 275
-#define COBJECT_ID 276
-#define MONSTER_ID 277
-#define TRAP_ID 278
-#define DOOR_ID 279
-#define DRAWBRIDGE_ID 280
-#define object_ID 281
-#define monster_ID 282
-#define terrain_ID 283
-#define MAZEWALK_ID 284
-#define WALLIFY_ID 285
-#define REGION_ID 286
-#define FILLING 287
-#define IRREGULAR 288
-#define JOINED 289
-#define ALTAR_ID 290
-#define LADDER_ID 291
-#define STAIR_ID 292
-#define NON_DIGGABLE_ID 293
-#define NON_PASSWALL_ID 294
-#define ROOM_ID 295
-#define PORTAL_ID 296
-#define TELEPRT_ID 297
-#define BRANCH_ID 298
-#define LEV 299
-#define MINERALIZE_ID 300
-#define CORRIDOR_ID 301
-#define GOLD_ID 302
-#define ENGRAVING_ID 303
-#define FOUNTAIN_ID 304
-#define POOL_ID 305
-#define SINK_ID 306
-#define NONE 307
-#define RAND_CORRIDOR_ID 308
-#define DOOR_STATE 309
-#define LIGHT_STATE 310
-#define CURSE_TYPE 311
-#define ENGRAVING_TYPE 312
-#define DIRECTION 313
-#define RANDOM_TYPE 314
-#define RANDOM_TYPE_BRACKET 315
-#define A_REGISTER 316
-#define ALIGNMENT 317
-#define LEFT_OR_RIGHT 318
-#define CENTER 319
-#define TOP_OR_BOT 320
-#define ALTAR_TYPE 321
-#define UP_OR_DOWN 322
-#define SUBROOM_ID 323
-#define NAME_ID 324
-#define FLAGS_ID 325
-#define FLAG_TYPE 326
-#define MON_ATTITUDE 327
-#define MON_ALERTNESS 328
-#define MON_APPEARANCE 329
-#define ROOMDOOR_ID 330
-#define IF_ID 331
-#define ELSE_ID 332
-#define TERRAIN_ID 333
-#define HORIZ_OR_VERT 334
-#define REPLACE_TERRAIN_ID 335
-#define EXIT_ID 336
-#define SHUFFLE_ID 337
-#define QUANTITY_ID 338
-#define BURIED_ID 339
-#define LOOP_ID 340
-#define FOR_ID 341
-#define TO_ID 342
-#define SWITCH_ID 343
-#define CASE_ID 344
-#define BREAK_ID 345
-#define DEFAULT_ID 346
-#define ERODED_ID 347
-#define TRAPPED_ID 348
-#define RECHARGED_ID 349
-#define INVIS_ID 350
-#define GREASED_ID 351
-#define FEMALE_ID 352
-#define CANCELLED_ID 353
-#define REVIVED_ID 354
-#define AVENGE_ID 355
-#define FLEEING_ID 356
-#define BLINDED_ID 357
-#define PARALYZED_ID 358
-#define STUNNED_ID 359
-#define CONFUSED_ID 360
-#define SEENTRAPS_ID 361
-#define ALL_ID 362
-#define MONTYPE_ID 363
-#define GRAVE_ID 364
-#define ERODEPROOF_ID 365
-#define FUNCTION_ID 366
-#define MSG_OUTPUT_TYPE 367
-#define COMPARE_TYPE 368
-#define UNKNOWN_TYPE 369
-#define rect_ID 370
-#define fillrect_ID 371
-#define line_ID 372
-#define randline_ID 373
-#define grow_ID 374
-#define selection_ID 375
-#define flood_ID 376
-#define rndcoord_ID 377
-#define circle_ID 378
-#define ellipse_ID 379
-#define filter_ID 380
-#define complement_ID 381
-#define gradient_ID 382
-#define GRADIENT_TYPE 383
-#define LIMITED 384
-#define HUMIDITY_TYPE 385
-#define STRING 386
-#define MAP_ID 387
-#define NQSTRING 388
-#define VARSTRING 389
-#define CFUNC 390
-#define CFUNC_INT 391
-#define CFUNC_STR 392
-#define CFUNC_COORD 393
-#define CFUNC_REGION 394
-#define VARSTRING_INT 395
-#define VARSTRING_INT_ARRAY 396
-#define VARSTRING_STRING 397
-#define VARSTRING_STRING_ARRAY 398
-#define VARSTRING_VAR 399
-#define VARSTRING_VAR_ARRAY 400
-#define VARSTRING_COORD 401
-#define VARSTRING_COORD_ARRAY 402
-#define VARSTRING_REGION 403
-#define VARSTRING_REGION_ARRAY 404
-#define VARSTRING_MAPCHAR 405
-#define VARSTRING_MAPCHAR_ARRAY 406
-#define VARSTRING_MONST 407
-#define VARSTRING_MONST_ARRAY 408
-#define VARSTRING_OBJ 409
-#define VARSTRING_OBJ_ARRAY 410
-#define VARSTRING_SEL 411
-#define VARSTRING_SEL_ARRAY 412
-#define METHOD_INT 413
-#define METHOD_INT_ARRAY 414
-#define METHOD_STRING 415
-#define METHOD_STRING_ARRAY 416
-#define METHOD_VAR 417
-#define METHOD_VAR_ARRAY 418
-#define METHOD_COORD 419
-#define METHOD_COORD_ARRAY 420
-#define METHOD_REGION 421
-#define METHOD_REGION_ARRAY 422
-#define METHOD_MAPCHAR 423
-#define METHOD_MAPCHAR_ARRAY 424
-#define METHOD_MONST 425
-#define METHOD_MONST_ARRAY 426
-#define METHOD_OBJ 427
-#define METHOD_OBJ_ARRAY 428
-#define METHOD_SEL 429
-#define METHOD_SEL_ARRAY 430
-#define DICE 431
+#define INTEGER 258
+#define A_DUNGEON 259
+#define BRANCH 260
+#define CHBRANCH 261
+#define LEVEL 262
+#define RNDLEVEL 263
+#define CHLEVEL 264
+#define RNDCHLEVEL 265
+#define UP_OR_DOWN 266
+#define PROTOFILE 267
+#define DESCRIPTION 268
+#define DESCRIPTOR 269
+#define LEVELDESC 270
+#define ALIGNMENT 271
+#define LEVALIGN 272
+#define ENTRY 273
+#define STAIR 274
+#define NO_UP 275
+#define NO_DOWN 276
+#define PORTAL 277
+#define STRING 278
+
+
+
+
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+typedef union YYSTYPE
+{
 
-#if !defined YYSTYPE && !defined YYSTYPE_IS_DECLARED
-typedef union YYSTYPE {
 /* Line 1676 of yacc.c  */
-#line 149 "lev_comp.y"
+#line 67 "dgn_comp.y"
+
+       int     i;
+       char*   str;
+
 
-    long i;
-    char *map;
-    struct {
-        long room;
-        long wall;
-        long door;
-    } corpos;
-    struct {
-        long area;
-        long x1;
-        long y1;
-        long x2;
-        long y2;
-    } lregn;
-    struct {
-        long x;
-        long y;
-    } crd;
-    struct {
-        long ter;
-        long lit;
-    } terr;
-    struct {
-        long height;
-        long width;
-    } sze;
-    struct {
-        long die;
-        long num;
-    } dice;
-    struct {
-        long cfunc;
-        char *varstr;
-    } meth;
 
 /* Line 1676 of yacc.c  */
-#line 443 "y.tab.h"
+#line 105 "y.tab.h"
 } YYSTYPE;
-#define YYSTYPE_IS_TRIVIAL 1
-#define yystype YYSTYPE /* obsolescent; will be withdrawn */
-#define YYSTYPE_IS_DECLARED 1
+# define YYSTYPE_IS_TRIVIAL 1
+# define yystype YYSTYPE /* obsolescent; will be withdrawn */
+# define YYSTYPE_IS_DECLARED 1
 #endif
 
 extern YYSTYPE yylval;
+
+
index 75be725e06f5cc7188f48faa9a07c6a69dade2f9..dbfdb4187c4bb2e0b7997bc0b81736b0f95b8ef5 100644 (file)
@@ -282,124 +282,125 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
        *yy_cp = '\0'; \
        yy_c_buf_p = yy_cp;
 
-#define YY_NUM_RULES 198
-#define YY_END_OF_BUFFER 199
-static yyconst short int yy_accept[1038] =
+#define YY_NUM_RULES 199
+#define YY_END_OF_BUFFER 200
+static yyconst short int yy_accept[1046] =
     {   0,
-        0,    0,    0,    0,  199,  197,  193,  192,  197,  197,
-      197,  197,  197,  197,  196,  182,  190,  197,  191,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  197,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      193,  197,  196,    2,  197,  193,  197,  197,  196,  182,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  193,  197,  193,  192,  186,    0,  183,  184,
-        0,    0,  180,  196,  179,  181,  182,  196,  188,  187,
-
-      185,  189,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,   39,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-       55,  196,  196,    0,    0,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  153,  196,  196,  193,    0,    0,    3,  196,
-        2,    2,    0,  193,    0,  180,  196,  179,  182,  196,
-      196,  196,  196,   39,  196,  196,  196,  196,  196,  196,
-      193,    0,    2,    0,    0,  195,    0,  195,  177,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,   54,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,    0,  196,  103,  196,   83,
-
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,   79,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,   81,
-      196,  196,  196,  196,  138,  196,  196,  196,  196,  127,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,   16,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  125,  196,  196,  196,  196,  196,  196,  196,  196,
-
-       80,  196,  196,  196,  196,  196,  196,  196,  196,  194,
-      196,  196,  196,   58,  196,  196,  196,   22,  196,   40,
-      196,   41,  196,  196,  196,  196,   49,  196,  196,  196,
-      196,   56,    6,  196,  196,  196,   53,  196,  196,  196,
-       36,  196,  196,  196,  196,   42,  196,   35,  196,  196,
-      196,  196,  196,   21,  196,    0,  178,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  159,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      154,  157,  113,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,   69,  196,  196,  196,  196,
-
-      196,  196,  196,  196,  120,  196,  196,   67,  196,  196,
-      196,  196,  160,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  118,  196,  196,  196,  106,  196,  196,  196,
-      196,  196,  196,  196,   65,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  156,  196,  196,  196,  196,  196,  115,
-       15,    0,  196,  196,  196,  196,  196,   28,  196,   59,
-      196,  196,  196,  196,  196,   13,  196,  196,  196,   50,
-      196,  196,    7,  196,  196,  196,  196,    5,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,   30,  196,  196,
-
-      196,  196,  196,  119,  152,  196,  196,  196,  146,  196,
-      196,  161,  196,  196,  196,  196,  196,  140,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  155,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,   11,  196,  196,  196,  196,  196,
-      196,  196,  112,  196,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  124,  196,   12,  196,  196,
-      196,  196,  196,  196,  196,   82,  114,  196,  196,  196,
-      196,  196,  196,  196,  196,  128,  196,  196,  196,  196,
-
-       33,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-       29,  196,  196,  196,  196,  196,  196,   17,   31,  196,
-       27,  196,  196,  196,  196,   57,  196,  196,  196,  196,
-      145,   96,  196,  196,  126,  110,   86,  196,  122,   72,
-      107,  196,  196,  196,  196,  164,  196,  196,   87,  196,
-       93,  129,  196,   74,  196,  196,  196,  196,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  134,  196,  196,
-      108,  196,  196,  196,  196,  196,  196,  196,  196,  196,
-      109,  167,  196,  196,   16,  196,  196,  196,  196,   77,
-      196,  116,  196,  196,  196,  196,  196,  111,  196,  196,
-
-      196,  151,  172,  196,  196,   78,  196,  196,  196,  196,
-      196,  196,  196,  196,    1,   57,  196,  196,  196,   60,
-      196,  196,  196,  196,  196,  196,  196,    4,  196,   19,
-      196,  196,  196,  196,  196,   62,   43,  196,   46,   26,
-      196,  162,   98,  196,  196,  196,  196,  196,   73,  158,
-      196,  196,   97,  196,  196,  196,   92,  196,  196,  196,
-      196,  144,  196,  196,  196,  196,  135,  196,  196,  196,
-      196,  196,   20,   63,  139,  137,  196,  196,  196,  196,
-      196,  196,  196,  117,  196,  131,   95,  196,  150,  196,
-      196,  196,  196,  196,  100,   47,   89,  196,  196,  196,
-
-      196,  196,  196,   45,  196,  196,   34,   61,   14,    8,
-       25,  196,  196,  196,  196,  196,   23,  196,  168,  196,
-      196,  196,  101,  176,  196,   66,  196,   75,  196,  196,
-      196,  196,  196,  196,  196,  196,  196,  196,  196,  149,
-        9,  196,  196,  196,  196,  143,  196,   85,   68,  196,
-       71,  196,  196,  196,  196,  175,  163,  130,  133,  196,
-      105,   18,  196,   51,  196,  196,  196,  196,  196,  196,
-       94,  141,  196,  196,   70,  173,  121,  196,  166,  196,
-      174,   91,  132,   84,  147,  148,  170,  196,  196,   99,
-      171,   90,  196,   64,  196,   10,  136,   24,   52,  196,
-
-      196,  196,  196,  196,   76,   88,  123,  104,  196,  165,
-      102,  196,  196,  196,  196,  196,  196,  196,  196,   37,
-       38,  196,  196,  196,  142,  169,  196,  196,  196,  196,
-      196,  196,  196,   48,   32,   44,    0
+        0,    0,    0,    0,  200,  198,  194,  193,  198,  198,
+      198,  198,  198,  198,  197,  183,  191,  198,  192,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  198,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      194,  198,  197,    2,  198,  194,  198,  198,  197,  183,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  194,  198,  194,  193,  187,    0,  184,  185,
+        0,    0,  181,  197,  180,  182,  183,  197,  189,  188,
+
+      186,  190,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,   39,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+       55,  197,  197,    0,    0,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  154,  197,  197,  194,    0,    0,    3,  197,
+        2,    2,    0,  194,    0,  181,  197,  180,  183,  197,
+      197,  197,  197,   39,  197,  197,  197,  197,  197,  197,
+      194,    0,    2,    0,    0,  196,    0,  196,  178,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,   54,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,    0,  197,  104,  197,   83,
+
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,   79,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,   81,
+      197,  197,  197,  197,  139,  197,  197,  197,  197,  128,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,   16,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  126,  197,  197,  197,  197,  197,  197,  197,  197,
+
+       80,  197,  197,  197,  197,  197,  197,  197,  197,  195,
+      197,  197,  197,   58,  197,  197,  197,   22,  197,   40,
+      197,   41,  197,  197,  197,  197,   49,  197,  197,  197,
+      197,   56,    6,  197,  197,  197,   53,  197,  197,  197,
+       36,  197,  197,  197,  197,   42,  197,   35,  197,  197,
+      197,  197,  197,   21,  197,    0,  179,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  160,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      155,  158,  114,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,   69,  197,  197,  197,  197,
+
+      197,  197,  197,  197,  121,  197,  197,   67,  197,  197,
+      197,  197,  161,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  119,  197,  197,  197,  197,  107,  197,  197,
+      197,  197,  197,  197,  197,   65,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  157,  197,  197,  197,  197,  197,
+      116,   15,    0,  197,  197,  197,  197,  197,   28,  197,
+       59,  197,  197,  197,  197,  197,   13,  197,  197,  197,
+       50,  197,  197,    7,  197,  197,  197,  197,    5,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,   30,  197,
+
+      197,  197,  197,  197,  120,  153,  197,  197,  197,  147,
+      197,  197,  162,  197,  197,  197,  197,  197,  141,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  156,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,   11,  197,  197,  197,  197,
+      197,  197,  197,  113,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  125,  197,   12,
+      197,  197,  197,  197,  197,  197,  197,   82,  115,  197,
+      197,  197,  197,  197,  197,  197,  197,  129,  197,  197,
+
+      197,  197,   33,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,   29,  197,  197,  197,  197,  197,  197,   17,
+       31,  197,   27,  197,  197,  197,  197,   57,  197,  197,
+      197,  197,  146,   97,  197,  197,  127,  111,   86,  197,
+      123,   72,  108,  197,  197,  197,  197,  165,  197,  197,
+       87,  197,   94,  130,  197,   74,  197,  197,  197,  197,
+      197,  197,  197,  197,  197,  197,  197,  197,  197,  135,
+      197,  197,  109,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  110,  168,  197,  197,  197,   16,  197,  197,
+      197,  197,   77,  197,  117,  197,  197,  197,  197,  197,
+
+      112,  197,  197,  197,  152,  173,  197,  197,   78,  197,
+      197,  197,  197,  197,  197,  197,  197,    1,   57,  197,
+      197,  197,   60,  197,  197,  197,  197,  197,  197,  197,
+        4,  197,   19,  197,  197,  197,  197,  197,   62,   43,
+      197,   46,   26,  197,  163,   99,  197,  197,  197,  197,
+      197,   73,  159,  197,  197,   98,  197,  197,  197,   93,
+      197,  197,  197,  197,  145,  197,  197,  197,  197,  136,
+      197,  197,  197,  197,  197,   20,   63,  140,  138,  197,
+      197,  197,  197,  197,  197,  197,  197,  118,  197,  132,
+       96,  197,  151,  197,  197,  197,  197,  197,  101,   47,
+
+       89,  197,  197,  197,  197,  197,  197,   45,  197,  197,
+       34,   61,   14,    8,   25,  197,  197,  197,  197,  197,
+       23,  197,  169,  197,  197,  197,  102,  177,  197,   66,
+      197,   75,  197,  197,  197,  197,  197,  197,  197,  197,
+      197,  197,  197,  150,    9,  197,  197,  197,  197,  197,
+      144,  197,   85,   68,  197,   71,  197,  197,  197,  197,
+      176,  164,  131,  134,  197,  106,   18,  197,   51,  197,
+      197,  197,  197,  197,  197,   95,  142,  197,  197,   70,
+      174,  122,  197,  167,  197,  175,   92,  133,   84,  148,
+      149,  171,  197,  197,  197,  100,  172,   91,  197,   64,
+
+      197,   10,  137,   24,   52,  197,  197,  197,  197,  197,
+       76,   88,  124,  105,  197,  197,  166,  103,  197,  197,
+      197,  197,  197,  197,  197,   90,  197,   37,   38,  197,
+      197,  197,  143,  170,  197,  197,  197,  197,  197,  197,
+      197,   48,   32,   44,    0
     } ;
 
 static yyconst int yy_ec[256] =
@@ -446,245 +447,247 @@ static yyconst int yy_meta[75] =
         6,    5,    6,    6
     } ;
 
-static yyconst short int yy_base[1045] =
+static yyconst short int yy_base[1053] =
     {   0,
-        0,   73,  102,   77, 1235, 1236,   75, 1236, 1231, 1216,
-     1225,    0, 1185, 1215, 1214,   78,   66, 1211, 1210, 1196,
-     1189,   57,   63,   59,   64,  101,    0,   63,   79,  119,
-       94, 1204, 1190,  122,  123,  121, 1203,  104,  105,  100,
-      124,   90,  129,  137, 1155,   84,  117, 1157,  139,  150,
-      151,  151,  156, 1150,  163,  168,  166,   56, 1165, 1164,
-      232, 1213,  216, 1236, 1212,  242,  248,  251,  264,  196,
-      155,  167,  208,  228,  241, 1199,  249,  242,  195,  277,
-      284,  223,  319,  334,  257, 1236, 1236, 1206, 1236,    0,
-     1201, 1200, 1195,    0, 1194, 1236,  298, 1193, 1236, 1236,
-
-     1236, 1236, 1169,  263, 1169,  264, 1181, 1171, 1184, 1165,
-     1176, 1173, 1180,  270, 1166, 1164, 1166, 1176,    0, 1167,
-     1171, 1152, 1158, 1146, 1152, 1156, 1155, 1155,  280, 1157,
-      292, 1152,  301, 1150, 1143, 1149, 1161, 1159, 1151,  259,
-        0, 1158, 1146,  203,  304,  272, 1102, 1124, 1113, 1119,
-     1122,  288, 1102, 1106, 1102, 1105, 1104, 1116, 1098, 1100,
-      308, 1096, 1090, 1087, 1092, 1091, 1097, 1101, 1092, 1094,
-     1092, 1092,  234,  281,  296,  299, 1098, 1080, 1083, 1091,
-     1076,   81,  315, 1095,  324,   26, 1083, 1082, 1082, 1073,
-      330, 1083, 1087, 1073, 1089, 1084, 1087,  281,  333, 1080,
-
-     1082, 1078, 1070,  342,  323,  321, 1062, 1061, 1063, 1064,
-      345,  350,    0, 1061,  332,  407, 1123, 1122, 1236,  363,
-     1236, 1236, 1121,  411,  415,  416, 1108,    0,  412,  390,
-      396,  404,  415, 1107,  337,  410,  420,  417,  423,  424,
-        0,    0, 1236, 1118,    0, 1236, 1109, 1108, 1103, 1098,
-     1084, 1096, 1091, 1075, 1076, 1092, 1074, 1068, 1085, 1071,
-     1068, 1080,    0, 1072, 1082, 1071, 1079, 1060, 1061, 1076,
-     1074, 1062, 1072, 1057, 1070, 1055, 1068, 1071, 1041, 1065,
-     1057, 1048, 1063, 1057, 1053, 1051, 1057, 1051, 1052, 1042,
-     1039, 1053, 1039, 1040, 1043,  326, 1017,    0, 1022,    0,
-
-     1007, 1016, 1006, 1008,  999, 1003, 1001,  995, 1003,  380,
-     1010,  992,  996, 1007,  990,  996,  991, 1000,  987,  985,
-      989,    0,  982,  981,  991,  981,  994,  978,  995,  380,
-      990,  979,  389,  992,  969,  985,  986,  980,  968,    0,
-      983,  977,  980,  970,    0,  963,  964,  972,  975,    0,
-      968,  973,  962,  974,  964,  969,  968,  376,  967,  951,
-      958,  954,  955,  394,  947,  961,  960,  950,  962,  959,
-      948,  946,  950,  954,  390,  936,  947,  947,  951,  932,
-      949,  933,  936,  944,  930,  394,  938,  926,  944,  930,
-      925,    0,  926,  936,  919,  930,  923,  928,  916,  915,
-
-        0,  452,  446,  445,  951,  438,  447,  451,  452, 1236,
-      945,  959,  950,    0,  959,  950,  937,    0,  955,    0,
-      955,    0,  936,  934,  933,  947,    0,  946,  920,  944,
-      936,    0,  924,  945,  927,  924,    0,  927,  447,  939,
-        0,  940,  925,  924,  937,  933,  930,    0,  917,  919,
-      930,  916,  930,    0,  921,  465, 1236,  885,  880,  879,
-      891,  888,  889,  874,  888,  887,  875,  884,  883,    0,
-      882,  881,  866,  872,  878,  873,  869,  859,  866,  873,
-        0,    0,    0,  861,  875,  870,  869,  861,  418,  867,
-      862,  866,  860,  863,  848,    0,  901,  859,  838,  854,
-
-      846,  842,  853,  854,    0,  853,  837,    0,  851,  854,
-      840,  843,    0,  417,  833,  831,  825,  831,  839,  832,
-      845,  830,    0,  836,  831,  839,    0,  829,  835,  838,
-      818,  836,  413,  835,    0,  823,  812,  813,  817,  826,
-      810,  824,  828,  824,  806,  811,  803,  819,  814,  803,
-      806,  818,  802,    0,  799,  804,  806,  417,  805,    0,
-     1236,  858,  460,  841,  464,  465,  468,    0,  833,    0,
-      831,  835,  826,  819,  814,    0,  834,  825,  813,    0,
-      819,  813,    0,  829,  822,  827,  822,    0,  817,  824,
-      804,  811,  809,  807,  817,  804,  806,    0,  802,  808,
-
-      800,  805,  807,    0,    0,  777,  765,  775,    0,  774,
-      773,    0,  764,  762,  771,  762,  755,    0,  767,  767,
-      763,  764,  749,  766,  762,  746,  742,  435,    0,  758,
-      758,  756,  742,  745,  752,  752,  731,  750,  428,  742,
-      738,  740,  736,  741,  728,  744,  740,  741,  741,  724,
-      724,  737,  723,  735,    0,  734,  722,  736,  729,  717,
-      718,  732,    0,  727,  711,  705,  723,  712,  718,  714,
-      716,  711,  705,  721,  716,    0,  705,    0,  698,  698,
-      697,  696,  696,  709,  709,  436,    0,  707,  706,  701,
-      704,  689,  695,  692,  696,    0,  701,  717,  476,  477,
-
-        0,  718,  716,  710,  720,  719,  718,  711,  707,  723,
-        0,  711,  717,  709,  699,  691,   74,    0,    0,  110,
-        0,  207,  230,  474,  467,    0,  467,  472,  462,  457,
-        0,    0,  455,  456,    0,    0,    0,  449,    0,    0,
-        0,  448,  450,  460,  440,    0,  462,  463,    0,  451,
-        0,    0,  467,    0,  464,  463,  459,  473,  471,  471,
-      468,  463,  465,  475,  466,  480,  471,    0,  475,  481,
-        0,  465,  467,  485,  480,  468,  473,  487,  481,  480,
-        0,    0,  483,  480,    0,  471,  477,  483,  480,    0,
-      487,  505,  496,  486,  501,  488,  494,    0,  490,  500,
-
-      501,    0,    0,  502,  506,    0,  509,  500,  511,  511,
-      512,  513,  499,  519,    0,  554,  555,  548,  536,    0,
-      551,  542,  543,  544,  534,  544,  550,    0,  553,    0,
-      556,  545,  562,  536,  549,    0,    0,  548,    0,    0,
-      527,    0,    0,  535,  536,  537,  539,  539,    0,    0,
-      530,  526,    0,  535,  528,  531,    0,  545,  545,  538,
-      534,    0,  543,  544,  556,  543,    0,  541,  555,  541,
-      558,  558,    0,    0,    0,    0,  555,  550,  561,  555,
-      563,  544,  565, 1236,  566,    0,    0,  568,    0,  572,
-      559,  568,  564,  552,    0,    0,    0,  574,  575,  576,
-
-      576,  570,  595,    0,  607,  608,    0,    0,    0,    0,
-        0,  590,  616,  595,  604,  600,    0,  591,    0,  588,
-      589,  580,    0,    0,  580,    0,  584,    0,  593,  578,
-      591,  582,  600,  583,  598,  586,  591,  601,  589,    0,
-        0,  596,  602,  592,  607,    0,  608,    0,    0,  609,
-        0,  598,  601,  608,  605,    0,    0,    0,    0,  614,
-        0,    0,  644,    0,  645,  649,  651,  635,  649,  637,
-        0,    0,  606,  621,    0,    0,    0,  608,    0,  617,
-        0,    0,    0,    0,    0,    0,    0,  616,  611,    0,
-        0,    0,  613,    0,  613,    0,    0,    0,    0,  652,
-
-      653,  648,  649,  663,    0,    0,    0,    0,  634,    0,
-        0,  635,  666,  660,  664,  656,  668,  642,  643,    0,
-        0,  674,  678,  671,    0,    0,  666,  673,  668,  666,
-      671,  672,  668,    0,    0,    0, 1236,  705,  707,  713,
-      716,  722,  727,  732
+        0,   73,  102,   77, 1243, 1244,   75, 1244, 1239, 1224,
+     1233,    0, 1193, 1223, 1222,   78,   66, 1219, 1218, 1204,
+     1197,   57,   63,   59,   64,  101,    0,   63,   79,  119,
+       94, 1212, 1198,  122,  123,  121, 1211,  104,  105,  100,
+      124,   90,  129,  137, 1163,   84,  117, 1165,  139,  150,
+      151,  151,  156, 1158,  163,  168,  166,   56, 1173, 1172,
+      232, 1221,  216, 1244, 1220,  242,  248,  251,  264,  196,
+      155,  167,  208,  228,  241, 1207,  249,  242,  195,  277,
+      284,  223,  319,  334,  257, 1244, 1244, 1214, 1244,    0,
+     1209, 1208, 1203,    0, 1202, 1244,  298, 1201, 1244, 1244,
+
+     1244, 1244, 1177,  263, 1177,  264, 1189, 1179, 1192, 1173,
+     1184, 1181, 1188,  270, 1174, 1172, 1174, 1184,    0, 1175,
+     1179, 1160, 1166, 1154, 1160, 1164, 1163, 1163,  280, 1165,
+      292, 1160,  301, 1158, 1151, 1157, 1169, 1167, 1159,  259,
+        0, 1166, 1154,  203,  304,  272, 1110, 1132, 1121, 1127,
+     1130,  288, 1110, 1114, 1110, 1113, 1112, 1124, 1106, 1108,
+      308, 1104, 1098, 1095, 1100, 1099, 1105, 1109, 1100, 1102,
+     1100, 1100,  234,  281,  296,  299, 1106, 1088, 1091, 1099,
+     1084,   81,  315, 1103,  324,   26, 1091, 1090, 1090, 1081,
+      330, 1091, 1095, 1081, 1097, 1092, 1095,  281,  333, 1088,
+
+     1090, 1086, 1078,  342,  323,  321, 1070, 1069, 1071, 1072,
+      345,  350,    0, 1069,  332,  407, 1131, 1130, 1244,  363,
+     1244, 1244, 1129,  411,  415,  416, 1116,    0,  412,  390,
+      396,  404,  415, 1115,  337,  410,  420,  417,  423,  424,
+        0,    0, 1244, 1126,    0, 1244, 1117, 1116, 1111, 1106,
+     1092, 1104, 1099, 1083, 1084, 1100, 1082, 1076, 1093, 1079,
+     1076, 1088,    0, 1080, 1090, 1079, 1087, 1068, 1069, 1084,
+     1082, 1070, 1080, 1065, 1078, 1063, 1076, 1079, 1049, 1073,
+     1065, 1056, 1071, 1065, 1061, 1059, 1065, 1059, 1060, 1050,
+     1047, 1061, 1047, 1048, 1051,  326, 1025,    0, 1030,    0,
+
+     1015, 1024, 1014, 1016, 1007, 1011, 1009, 1003, 1011,  380,
+     1018, 1000, 1004, 1015,  998, 1004,  999, 1008,  995,  993,
+      997,    0,  990,  989,  999,  989, 1002,  986, 1003,  380,
+      998,  987,  389, 1000,  977,  993,  994,  988,  976,    0,
+      991,  985,  988,  978,    0,  971,  972,  980,  983,    0,
+      976,  981,  970,  982,  972,  977,  976,  376,  975,  959,
+      966,  962,  963,  394,  955,  398,  969,  959,  971,  968,
+      957,  955,  959,  963,  397,  945,  956,  956,  960,  941,
+      958,  942,  945,  953,  939,  398,  947,  935,  953,  939,
+      934,    0,  935,  945,  928,  939,  932,  937,  925,  924,
+
+        0,  453,  443,  445,  960,  448,  451,  452,  454, 1244,
+      954,  968,  959,    0,  968,  959,  946,    0,  964,    0,
+      964,    0,  945,  943,  942,  956,    0,  955,  929,  953,
+      945,    0,  933,  954,  936,  933,    0,  936,  448,  948,
+        0,  949,  934,  933,  946,  942,  939,    0,  926,  928,
+      939,  925,  939,    0,  930,  466, 1244,  894,  889,  888,
+      900,  897,  898,  883,  897,  896,  884,  893,  892,    0,
+      891,  890,  875,  881,  887,  882,  878,  868,  875,  882,
+        0,    0,    0,  870,  884,  879,  878,  870,  419,  876,
+      871,  875,  869,  872,  857,    0,  910,  868,  847,  863,
+
+      855,  851,  862,  863,    0,  862,  846,    0,  860,  863,
+      849,  852,    0,  419,  842,  840,  834,  840,  848,  841,
+      854,  839,    0,  845,  832,  839,  847,    0,  837,  843,
+      846,  826,  844,  417,  843,    0,  831,  820,  821,  825,
+      834,  818,  832,  836,  832,  814,  819,  811,  827,  822,
+      811,  814,  826,  810,    0,  807,  812,  814,  415,  813,
+        0, 1244,  866,  460,  849,  466,  471,  472,    0,  841,
+        0,  839,  843,  834,  827,  822,    0,  842,  833,  821,
+        0,  827,  821,    0,  837,  830,  835,  830,    0,  825,
+      832,  812,  819,  817,  815,  825,  812,  814,    0,  810,
+
+      816,  808,  813,  815,    0,    0,  785,  773,  783,    0,
+      782,  781,    0,  772,  770,  779,  770,  763,    0,  775,
+      775,  771,  772,  757,  774,  770,  754,  750,  436,    0,
+      766,  766,  764,  750,  753,  760,  760,  739,  758,  429,
+      750,  746,  748,  744,  749,  736,  752,  748,  749,  749,
+      732,  732,  745,  731,  743,    0,  742,  730,  744,  737,
+      725,  726,  740,    0,  722,  734,  718,  712,  730,  719,
+      725,  721,  723,  718,  712,  728,  723,    0,  712,    0,
+      705,  705,  704,  703,  703,  716,  716,  437,    0,  714,
+      713,  708,  711,  696,  702,  699,  703,    0,  708,  724,
+
+      478,  482,    0,  725,  723,  717,  727,  726,  725,  718,
+      714,  730,    0,  718,  724,  713,  688,   86,  121,    0,
+        0,  182,    0,  240,  465,  478,  472,    0,  469,  475,
+      465,  460,    0,    0,  458,  459,    0,    0,    0,  452,
+        0,    0,    0,  452,  454,  463,  443,    0,  465,  466,
+        0,  454,    0,    0,  470,    0,  467,  466,  462,  476,
+      474,  474,  471,  466,  468,  478,  469,  483,  474,    0,
+      478,  484,    0,  468,  470,  488,  483,  471,  476,  490,
+      484,  483,    0,    0,  486,  498,  484,    0,  475,  481,
+      487,  484,    0,  491,  509,  500,  490,  505,  492,  498,
+
+        0,  494,  504,  505,    0,    0,  506,  510,    0,  513,
+      504,  515,  515,  516,  517,  503,  523,    0,  558,  559,
+      552,  540,    0,  555,  546,  547,  548,  538,  548,  554,
+        0,  557,    0,  560,  549,  566,  540,  553,    0,    0,
+      552,    0,    0,  531,    0,    0,  539,  540,  541,  543,
+      543,    0,    0,  534,  530,    0,  539,  532,  535,    0,
+      549,  549,  542,  538,    0,  547,  548,  560,  547,    0,
+      545,  559,  545,  562,  562,    0,    0,    0,    0,  559,
+      553,  555,  566,  560,  568,  549,  570, 1244,  571,    0,
+        0,  573,    0,  577,  564,  573,  569,  557,    0,    0,
+
+        0,  579,  580,  581,  581,  575,  600,    0,  612,  613,
+        0,    0,    0,    0,    0,  595,  621,  600,  609,  605,
+        0,  596,    0,  593,  594,  585,    0,    0,  585,    0,
+      589,    0,  598,  583,  596,  587,  605,  588,  603,  591,
+      596,  606,  594,    0,    0,  601,  607,  599,  598,  613,
+        0,  614,    0,    0,  615,    0,  604,  607,  614,  611,
+        0,    0,    0,    0,  620,    0,    0,  650,    0,  651,
+      655,  657,  641,  655,  643,    0,    0,  612,  627,    0,
+        0,    0,  614,    0,  623,    0,    0,    0,    0,    0,
+        0,    0,  622,  632,  618,    0,    0,    0,  620,    0,
+
+      620,    0,    0,    0,    0,  659,  660,  655,  656,  670,
+        0,    0,    0,    0,  641,  643,    0,    0,  643,  674,
+      668,  672,  664,  676,  650,    0,  651,    0,    0,  682,
+      686,  679,    0,    0,  674,  681,  676,  674,  679,  680,
+      676,    0,    0,    0, 1244,  713,  715,  721,  724,  730,
+      735,  740
     } ;
 
-static yyconst short int yy_def[1045] =
+static yyconst short int yy_def[1053] =
     {   0,
-     1037,    1,    1,    3, 1037, 1037, 1037, 1037, 1037, 1037,
-     1038, 1039, 1040, 1037, 1041, 1041, 1037, 1037, 1037, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1037, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1037, 1042, 1041, 1037, 1037, 1043, 1043, 1043, 1041,   69,
-       69,   69,   69, 1041,   69,   69,   69,   69,   69,   69,
-       69,   69, 1043, 1042, 1037, 1037, 1037, 1038, 1037, 1039,
-     1037, 1044, 1037, 1041, 1041, 1037, 1041, 1041, 1037, 1037,
-
-     1037, 1037, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1037, 1037, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1037, 1042, 1042, 1037, 1041,
-     1037, 1037, 1037,   83,   83,   83,   69,   69,   69,   69,
-       69, 1041,   69,   69,   69,   69,   69,   69,   69,   69,
-       83,   84, 1037, 1042,   84, 1037, 1037, 1037, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1037, 1041, 1041, 1041, 1041,
-
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-
-     1041, 1041,   69,   69, 1041,   69,   69,   69,   69, 1037,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1037, 1037, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1037, 1037,   69, 1041,   69,   69,   69, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,   69,   69,
-
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041,   69,   69, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1037, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
-     1041, 1041, 1041, 1041, 1041, 1041,    0, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037
+     1045,    1,    1,    3, 1045, 1045, 1045, 1045, 1045, 1045,
+     1046, 1047, 1048, 1045, 1049, 1049, 1045, 1045, 1045, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1045, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1045, 1050, 1049, 1045, 1045, 1051, 1051, 1051, 1049,   69,
+       69,   69,   69, 1049,   69,   69,   69,   69,   69,   69,
+       69,   69, 1051, 1050, 1045, 1045, 1045, 1046, 1045, 1047,
+     1045, 1052, 1045, 1049, 1049, 1045, 1049, 1049, 1045, 1045,
+
+     1045, 1045, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1045, 1045, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1045, 1050, 1050, 1045, 1049,
+     1045, 1045, 1045,   83,   83,   83,   69,   69,   69,   69,
+       69, 1049,   69,   69,   69,   69,   69,   69,   69,   69,
+       83,   84, 1045, 1050,   84, 1045, 1045, 1045, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1045, 1049, 1049, 1049, 1049,
+
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+
+     1049, 1049,   69,   69, 1049,   69,   69,   69,   69, 1045,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1045, 1045, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1045, 1045,   69, 1049,   69,   69,   69, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+
+       69,   69, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,   69,   69,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1045, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
+     1049, 1049, 1049, 1049,    0, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045
     } ;
 
-static yyconst short int yy_nxt[1311] =
+static yyconst short int yy_nxt[1319] =
     {   0,
         6,    7,    8,    9,    7,   10,   11,    6,   12,    6,
        13,   14,   15,    6,   16,   17,   18,   19,   20,   21,
@@ -698,11 +701,11 @@ static yyconst short int yy_nxt[1311] =
       111,  355,   97,  113,  120,  108,  114,  121,  109,  356,
 
       112,  122,  115,   63,   64,   65,   66,   63,  144,   67,
-      832,  123,  128,   68,   69,   67,   70,  212,  145,  213,
+      834,  123,  128,   68,   69,   67,   70,  212,  145,  213,
        71,   72,   73,  116,   74,   75,  129,   76,   77,   98,
        76,   78,  175,  117,  346,   79,  118,  124,   80,   81,
       132,  125,   82,  140,  133,  126,  176,   67,  135,  136,
-      347,  127,  163,  141,  134,  164,  142,  833,  165,  152,
+      347,  127,  163,  141,  134,  164,  142,  835,  165,  152,
       137,  138,  153,  139,  146,  154,  147,  177,  155,  227,
       148,  149,  156,   76,  150,  151,  157,  166,  178,  158,
       159,  227,  179,  160,  230,  170,  161,  181,  167,  171,
@@ -710,11 +713,11 @@ static yyconst short int yy_nxt[1311] =
 
       192,  184,  104,  190,  194,   96,  187,  144,  195,  227,
       229,  198,  188,  191,  193,  199,  203,  145,  209,  200,
-      204,  196,  227,  205,  201,  202,  231,  131,  210,  834,
+      204,  196,  227,  205,  201,  202,  231,  131,  210,  836,
       206,  211,  207,  216,  220,  208,  216,  227,  125,  217,
-      106,  240,  126,   85,  222,  223,  224,   98,  127, 1037,
-      222,  223, 1037,  222,  223,  227,  227,  110,   85,  232,
-      235,   85,  835,  227,  122,  226,  222,  223,  225,  112,
+      106,  240,  126,   85,  222,  223,  224,   98,  127, 1045,
+      222,  223, 1045,  222,  223,  227,  227,  110,   85,  232,
+      235,   85,  837,  227,  122,  226,  222,  223,  225,  112,
       233,  225,  234,  114,  123,  225,  227,  225,  228,  115,
       120,  251,  227,  227,  227,  252,  331,  227,  292,  227,
       227,  227,  227,  227,  293,  254,  332,  227,  227,  255,
@@ -731,28 +734,28 @@ static yyconst short int yy_nxt[1311] =
       363,  364,  382,  393,  383,  365,  402,  366,  400,  401,
 
       395,  384,  377,  396,  227,  245,  273,  397,  216,  398,
-      227,  216,   85,  394,  217,  224, 1037, 1037,  225,  225,
+      227,  216,   85,  394,  217,  224, 1045, 1045,  225,  225,
       225,   96,  225,  225,  227,  405,  229,  403,  260,  227,
       226,  227,  404,  406,  227,  407,  469,  227,  227,  489,
-      493,  470,  516,  517,  522,  534,  523,  490,  287,  408,
-      546,  288,  227,  409,  561,  562,  547,  535,  494,  227,
-      227,  227,  423,   98,  563,  227,  227,  414,  589,  456,
-      631,  653,  671,  565,  227,  672,  654,  695,  227,  227,
-      590,  567,  227,  632,  696,  699,  749,  760,  566,  804,
-      227,  227,  805,  761,  700,  568,  836,  837,  750,  598,
-
-      817,  816,  838,  839,  840,  841,  842,  843,  844,  845,
-      846,  457,  847,  848,  849,  850,  851,  852,  853,  854,
+      493,  470,  516,  517,  522,  525,  523,  490,  287,  408,
+      526,  288,  535,  409,  547,  562,  563,  227,  494,  227,
+      548,  564,  227,   98,  536,  227,  227,  414,  227,  590,
+      456,  632,  423,  654,  227,  697,  673,  566,  655,  674,
+      227,  591,  698,  568,  633,  227,  227,  751,  762,  567,
+      807,  701,  227,  808,  763,  569,  227,  838,  702,  752,
+
+      839,  599,  840,  819,  841,  820,  842,  843,  844,  845,
+      846,  847,  457,  848,  849,  850,  851,  852,  853,  854,
       855,  856,  857,  858,  859,  860,  861,  862,  863,  864,
       865,  866,  867,  868,  869,  870,  871,  872,  873,  874,
       875,  876,  877,  878,  879,  880,  881,  882,  883,  884,
       885,  886,  887,  888,  889,  890,  891,  892,  893,  894,
-      895,  896,  897,  898,  899,  900,  901,  902,  227,  227,
-      903,  904,  905,  906,  907,  908,  909,  910,  911,  912,
+      895,  896,  897,  898,  899,  900,  901,  902,  903,  904,
+      905,  906,  227,  227,  907,  908,  909,  910,  911,  912,
       913,  914,  915,  916,  917,  918,  919,  920,  921,  922,
-      923,  924,  925,  926,  927,  928,  929,  840,  930,  931,
+      923,  924,  925,  926,  927,  928,  929,  930,  931,  932,
 
-      932,  933,  934,  935,  936,  937,  938,  939,  940,  941,
+      933,  843,  934,  935,  936,  937,  938,  939,  940,  941,
       942,  943,  944,  945,  946,  947,  948,  949,  950,  951,
       952,  953,  954,  955,  956,  957,  958,  959,  960,  961,
       962,  963,  964,  965,  966,  967,  968,  969,  970,  971,
@@ -763,76 +766,77 @@ static yyconst short int yy_nxt[1311] =
      1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
      1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
 
-     1032, 1033, 1034, 1035, 1036,   88,   88,   88,   88,   88,
-       88,   90,   90,   91,   91,  831,   91,   91,   91,   94,
-       94,   94,  218,  218,  218,  218,  218,  218,  225,  225,
-      225,  225,  247,  247,  830,  247,  247,  247,  829,  828,
-      827,  826,  825,  824,  823,  822,  821,  820,  819,  818,
-      815,  814,  813,  812,  811,  810,  809,  808,  807,  806,
+     1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
+     1042, 1043, 1044,   88,   88,   88,   88,   88,   88,   90,
+       90,   91,   91,  833,   91,   91,   91,   94,   94,   94,
+      218,  218,  218,  218,  218,  218,  225,  225,  225,  225,
+      247,  247,  832,  247,  247,  247,  831,  830,  829,  828,
+      827,  826,  825,  824,  823,  822,  821,  818,  817,  816,
+      815,  814,  813,  812,  811,  810,  809,  806,  805,  804,
       803,  802,  801,  800,  799,  798,  797,  796,  795,  794,
       793,  792,  791,  790,  789,  788,  787,  786,  785,  784,
       783,  782,  781,  780,  779,  778,  777,  776,  775,  774,
-      773,  772,  771,  770,  769,  768,  767,  766,  765,  764,
 
-      763,  762,  759,  758,  757,  756,  755,  754,  753,  752,
-      751,  748,  747,  746,  745,  744,  743,  742,  741,  740,
+      773,  772,  771,  770,  769,  768,  767,  766,  765,  764,
+      761,  760,  759,  758,  757,  756,  755,  754,  753,  750,
+      749,  748,  747,  746,  745,  744,  743,  742,  741,  740,
       739,  738,  737,  736,  735,  734,  733,  732,  731,  730,
       729,  728,  727,  726,  725,  724,  723,  722,  721,  720,
       719,  718,  717,  716,  715,  714,  713,  712,  711,  710,
-      709,  708,  707,  706,  705,  704,  703,  702,  701,  698,
-      561,  697,  694,  693,  692,  691,  690,  689,  688,  687,
+      709,  708,  707,  706,  705,  704,  703,  700,  562,  699,
+      696,  695,  694,  693,  692,  691,  690,  689,  688,  687,
       686,  685,  684,  683,  682,  681,  680,  679,  678,  677,
-      676,  675,  674,  673,  670,  669,  668,  667,  666,  665,
-      664,  663,  662,  661,  660,  659,  658,  657,  656,  655,
+      676,  675,  672,  671,  670,  669,  668,  667,  666,  665,
 
+      664,  663,  662,  661,  660,  659,  658,  657,  656,  653,
       652,  651,  650,  649,  648,  647,  646,  645,  644,  643,
-      642,  641,  640,  639,  638,  637,  636,  635,  634,  633,
+      642,  641,  640,  639,  638,  637,  636,  635,  634,  631,
       630,  629,  628,  627,  626,  625,  624,  623,  622,  621,
       620,  619,  618,  617,  616,  615,  614,  613,  612,  611,
       610,  609,  608,  607,  606,  605,  604,  603,  602,  601,
-      600,  599,  598,  597,  596,  595,  594,  593,  592,  591,
+      600,  599,  598,  597,  596,  595,  594,  593,  592,  589,
       588,  587,  586,  585,  584,  583,  582,  581,  580,  579,
       578,  577,  576,  575,  574,  573,  572,  571,  570,  569,
-      568,  564,  560,  559,  558,  557,  556,  555,  554,  553,
-      552,  551,  550,  549,  548,  545,  544,  543,  542,  541,
-
-      540,  539,  538,  537,  536,  533,  532,  531,  530,  529,
-      528,  527,  526,  525,  524,  521,  520,  519,  518,  437,
-      515,  514,  513,  512,  511,  510,  509,  508,  507,  506,
-      505,  504,  503,  502,  501,  500,  499,  498,  497,  496,
-      495,  492,  491,  488,  487,  486,  485,  484,  483,  482,
-      481,  480,  479,  478,  477,  476,  475,  474,  473,  472,
-      471,  468,  467,  466,  465,  464,  463,  462,  461,  460,
-      459,  458,  455,  454,  453,  452,  451,  450,  449,  448,
-      447,  446,  445,  444,  443,  442,  441,  440,  439,  438,
-      437,  436,  435,  434,  433,  432,  431,  430,  429,  428,
-
-      427,  426,  425,  424,  423,  422,  421,  420,  419,  418,
-      417,  416,  415,  414,  413,  412,  411,  249,  410,  410,
-      243,  227,  227,  222,  219,  219,  399,  392,  391,  390,
-      389,  381,  380,  379,  378,  372,  371,  370,  369,  368,
-      367,  360,  359,  358,  357,  351,  345,  344,  343,  342,
-      341,  330,  329,  328,  327,  326,  325,  324,  323,  322,
-      321,  320,  315,  314,  313,  312,  311,  310,  309,  308,
-      304,  303,  302,  301,  300,  295,  294,  291,  290,  289,
-      288,  287,  286,  283,  280,  277,  276,  275,  274,  273,
-      272,  271,  270,  269,  268,  267,  266,  265,  262,  261,
-
-      260,  259,  258,  257,  256,  253,  250,  249,   95,   93,
-      248,  246,   89,  227,  221,  219,  215,  214,  197,  180,
-      174,  143,  131,  130,  104,  103,  102,  101,   95,   93,
-       92,   89,   87,   86, 1037,    5, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037
+      565,  561,  560,  559,  558,  557,  556,  555,  554,  553,
+
+      552,  551,  550,  549,  546,  545,  544,  543,  542,  541,
+      540,  539,  538,  537,  534,  533,  532,  531,  530,  529,
+      528,  527,  524,  521,  520,  519,  518,  437,  515,  514,
+      513,  512,  511,  510,  509,  508,  507,  506,  505,  504,
+      503,  502,  501,  500,  499,  498,  497,  496,  495,  492,
+      491,  488,  487,  486,  485,  484,  483,  482,  481,  480,
+      479,  478,  477,  476,  475,  474,  473,  472,  471,  468,
+      467,  466,  465,  464,  463,  462,  461,  460,  459,  458,
+      455,  454,  453,  452,  451,  450,  449,  448,  447,  446,
+      445,  444,  443,  442,  441,  440,  439,  438,  437,  436,
+
+      435,  434,  433,  432,  431,  430,  429,  428,  427,  426,
+      425,  424,  423,  422,  421,  420,  419,  418,  417,  416,
+      415,  414,  413,  412,  411,  249,  410,  410,  243,  227,
+      227,  222,  219,  219,  399,  392,  391,  390,  389,  381,
+      380,  379,  378,  372,  371,  370,  369,  368,  367,  360,
+      359,  358,  357,  351,  345,  344,  343,  342,  341,  330,
+      329,  328,  327,  326,  325,  324,  323,  322,  321,  320,
+      315,  314,  313,  312,  311,  310,  309,  308,  304,  303,
+      302,  301,  300,  295,  294,  291,  290,  289,  288,  287,
+      286,  283,  280,  277,  276,  275,  274,  273,  272,  271,
+
+      270,  269,  268,  267,  266,  265,  262,  261,  260,  259,
+      258,  257,  256,  253,  250,  249,   95,   93,  248,  246,
+       89,  227,  221,  219,  215,  214,  197,  180,  174,  143,
+      131,  130,  104,  103,  102,  101,   95,   93,   92,   89,
+       87,   86, 1045,    5, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045
     } ;
 
-static yyconst short int yy_chk[1311] =
+static yyconst short int yy_chk[1319] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
@@ -846,11 +850,11 @@ static yyconst short int yy_chk[1311] =
        24,  186,   16,   25,   28,   23,   25,   29,   23,  186,
 
        24,   29,   25,    2,    3,    3,    3,    4,   38,    3,
-      717,   29,   31,    3,    3,    3,    3,   58,   38,   58,
+      718,   29,   31,    3,    3,    3,    3,   58,   38,   58,
         3,    3,    3,   26,    3,    3,   31,    3,    3,   16,
         3,    3,   46,   26,  182,    3,   26,   30,    3,    3,
        34,   30,    3,   36,   34,   30,   46,    3,   35,   35,
-      182,   30,   42,   36,   34,   42,   36,  720,   42,   40,
+      182,   30,   42,   36,   34,   42,   36,  719,   42,   40,
        35,   35,   40,   35,   39,   40,   39,   47,   40,   71,
        39,   39,   41,    3,   39,   39,   41,   43,   47,   41,
        41,   72,   47,   41,   71,   44,   41,   49,   43,   44,
@@ -862,7 +866,7 @@ static yyconst short int yy_chk[1311] =
        56,   57,   56,   61,   63,   56,   61,   82,   63,   61,
        73,   82,   63,   66,   66,   66,   66,   70,   63,   67,
        67,   67,   68,   68,   68,   75,   78,   74,   85,   74,
-       78,   85,  723,   77,   78,   68,   69,   69,   69,   74,
+       78,   85,  724,   77,   78,   68,   69,   69,   69,   74,
        75,   69,   77,   75,   78,   69,   69,   69,   69,   75,
        77,  104,   69,   69,   69,  104,  173,   69,  140,   69,
        69,   80,   69,   69,  140,  106,  173,   69,   81,  106,
@@ -882,102 +886,103 @@ static yyconst short int yy_chk[1311] =
       231,  216,  224,  211,  216,  224,  225,  226,  224,  225,
       226,  229,  225,  226,  236,  232,  229,  230,  232,  233,
       226,  238,  231,  233,  237,  238,  310,  239,  240,  330,
-      333,  310,  358,  358,  364,  375,  364,  330,  236,  239,
-      386,  237,  406,  240,  402,  402,  386,  375,  333,  404,
-      403,  407,  406,  229,  403,  408,  409,  404,  439,  456,
-      489,  514,  533,  407,  563,  533,  514,  558,  565,  566,
-      439,  409,  567,  489,  558,  566,  628,  639,  408,  686,
-      699,  700,  686,  639,  567,  563,  724,  725,  628,  565,
-
-      700,  699,  727,  728,  729,  730,  733,  734,  738,  742,
-      743,  456,  744,  745,  747,  748,  750,  753,  755,  756,
-      757,  758,  759,  760,  761,  762,  763,  764,  765,  766,
-      767,  769,  770,  772,  773,  774,  775,  776,  777,  778,
-      779,  780,  783,  784,  786,  787,  788,  789,  791,  792,
-      793,  794,  795,  796,  797,  799,  800,  801,  804,  805,
-      807,  808,  809,  810,  811,  812,  813,  814,  816,  817,
-      818,  819,  821,  822,  823,  824,  825,  826,  827,  829,
-      831,  832,  833,  834,  835,  838,  841,  844,  845,  846,
-      847,  848,  851,  852,  854,  855,  856,  817,  858,  859,
-
-      860,  861,  863,  864,  865,  866,  868,  869,  870,  871,
-      872,  877,  878,  879,  880,  881,  882,  883,  885,  888,
-      890,  891,  892,  893,  894,  898,  899,  900,  901,  902,
-      903,  905,  906,  912,  913,  914,  915,  916,  918,  920,
-      921,  922,  925,  927,  929,  930,  931,  932,  933,  934,
-      935,  936,  937,  938,  939,  942,  943,  944,  945,  947,
-      950,  952,  953,  954,  955,  960,  963,  965,  966,  967,
-      968,  969,  970,  973,  974,  978,  980,  988,  989,  993,
-      995, 1000, 1001, 1002, 1003, 1004, 1009, 1012, 1013, 1014,
-     1015, 1016, 1017, 1018, 1019, 1022, 1023, 1024, 1027, 1028,
-
-     1029, 1030, 1031, 1032, 1033, 1038, 1038, 1038, 1038, 1038,
-     1038, 1039, 1039, 1040, 1040,  716, 1040, 1040, 1040, 1041,
-     1041, 1041, 1042, 1042, 1042, 1042, 1042, 1042, 1043, 1043,
-     1043, 1043, 1044, 1044,  715, 1044, 1044, 1044,  714,  713,
-      712,  710,  709,  708,  707,  706,  705,  704,  703,  702,
-      698,  697,  695,  694,  693,  692,  691,  690,  689,  688,
-      685,  684,  683,  682,  681,  680,  679,  677,  675,  674,
-      673,  672,  671,  670,  669,  668,  667,  666,  665,  664,
-      662,  661,  660,  659,  658,  657,  656,  654,  653,  652,
-      651,  650,  649,  648,  647,  646,  645,  644,  643,  642,
-
-      641,  640,  638,  637,  636,  635,  634,  633,  632,  631,
-      630,  627,  626,  625,  624,  623,  622,  621,  620,  619,
-      617,  616,  615,  614,  613,  611,  610,  608,  607,  606,
-      603,  602,  601,  600,  599,  597,  596,  595,  594,  593,
-      592,  591,  590,  589,  587,  586,  585,  584,  582,  581,
-      579,  578,  577,  575,  574,  573,  572,  571,  569,  564,
-      562,  559,  557,  556,  555,  553,  552,  551,  550,  549,
-      548,  547,  546,  545,  544,  543,  542,  541,  540,  539,
-      538,  537,  536,  534,  532,  531,  530,  529,  528,  526,
-      525,  524,  522,  521,  520,  519,  518,  517,  516,  515,
-
-      512,  511,  510,  509,  507,  506,  504,  503,  502,  501,
-      500,  499,  498,  497,  495,  494,  493,  492,  491,  490,
-      488,  487,  486,  485,  484,  480,  479,  478,  477,  476,
-      475,  474,  473,  472,  471,  469,  468,  467,  466,  465,
-      464,  463,  462,  461,  460,  459,  458,  455,  453,  452,
-      451,  450,  449,  447,  446,  445,  444,  443,  442,  440,
-      438,  436,  435,  434,  433,  431,  430,  429,  428,  426,
-      425,  424,  423,  421,  419,  417,  416,  415,  413,  412,
-      411,  405,  400,  399,  398,  397,  396,  395,  394,  393,
-      391,  390,  389,  388,  387,  385,  384,  383,  382,  381,
-
-      380,  379,  378,  377,  376,  374,  373,  372,  371,  370,
-      369,  368,  367,  366,  365,  363,  362,  361,  360,  359,
-      357,  356,  355,  354,  353,  352,  351,  349,  348,  347,
-      346,  344,  343,  342,  341,  339,  338,  337,  336,  335,
-      334,  332,  331,  329,  328,  327,  326,  325,  324,  323,
-      321,  320,  319,  318,  317,  316,  315,  314,  313,  312,
-      311,  309,  308,  307,  306,  305,  304,  303,  302,  301,
-      299,  297,  295,  294,  293,  292,  291,  290,  289,  288,
-      287,  286,  285,  284,  283,  282,  281,  280,  279,  278,
-      277,  276,  275,  274,  273,  272,  271,  270,  269,  268,
-
-      267,  266,  265,  264,  262,  261,  260,  259,  258,  257,
-      256,  255,  254,  253,  252,  251,  250,  249,  248,  247,
-      244,  234,  227,  223,  218,  217,  214,  210,  209,  208,
-      207,  203,  202,  201,  200,  197,  196,  195,  194,  193,
-      192,  190,  189,  188,  187,  184,  181,  180,  179,  178,
-      177,  172,  171,  170,  169,  168,  167,  166,  165,  164,
-      163,  162,  160,  159,  158,  157,  156,  155,  154,  153,
-      151,  150,  149,  148,  147,  143,  142,  139,  138,  137,
-      136,  135,  134,  132,  130,  128,  127,  126,  125,  124,
-      123,  122,  121,  120,  118,  117,  116,  115,  113,  112,
-
-      111,  110,  109,  108,  107,  105,  103,   98,   95,   93,
-       92,   91,   88,   76,   65,   62,   60,   59,   54,   48,
-       45,   37,   33,   32,   21,   20,   19,   18,   15,   14,
-       13,   11,   10,    9,    5, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
-
-     1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037
+      333,  310,  358,  358,  364,  366,  364,  330,  236,  239,
+      366,  237,  375,  240,  386,  402,  402,  403,  333,  404,
+      386,  403,  406,  229,  375,  407,  408,  404,  409,  439,
+      456,  489,  406,  514,  564,  559,  534,  407,  514,  534,
+      566,  439,  559,  409,  489,  567,  568,  629,  640,  408,
+      688,  567,  701,  688,  640,  564,  702,  725,  568,  629,
+
+      726,  566,  727,  701,  729,  702,  730,  731,  732,  735,
+      736,  740,  456,  744,  745,  746,  747,  749,  750,  752,
+      755,  757,  758,  759,  760,  761,  762,  763,  764,  765,
+      766,  767,  768,  769,  771,  772,  774,  775,  776,  777,
+      778,  779,  780,  781,  782,  785,  786,  787,  789,  790,
+      791,  792,  794,  795,  796,  797,  798,  799,  800,  802,
+      803,  804,  807,  808,  810,  811,  812,  813,  814,  815,
+      816,  817,  819,  820,  821,  822,  824,  825,  826,  827,
+      828,  829,  830,  832,  834,  835,  836,  837,  838,  841,
+      844,  847,  848,  849,  850,  851,  854,  855,  857,  858,
+
+      859,  820,  861,  862,  863,  864,  866,  867,  868,  869,
+      871,  872,  873,  874,  875,  880,  881,  882,  883,  884,
+      885,  886,  887,  889,  892,  894,  895,  896,  897,  898,
+      902,  903,  904,  905,  906,  907,  909,  910,  916,  917,
+      918,  919,  920,  922,  924,  925,  926,  929,  931,  933,
+      934,  935,  936,  937,  938,  939,  940,  941,  942,  943,
+      946,  947,  948,  949,  950,  952,  955,  957,  958,  959,
+      960,  965,  968,  970,  971,  972,  973,  974,  975,  978,
+      979,  983,  985,  993,  994,  995,  999, 1001, 1006, 1007,
+     1008, 1009, 1010, 1015, 1016, 1019, 1020, 1021, 1022, 1023,
+
+     1024, 1025, 1027, 1030, 1031, 1032, 1035, 1036, 1037, 1038,
+     1039, 1040, 1041, 1046, 1046, 1046, 1046, 1046, 1046, 1047,
+     1047, 1048, 1048,  717, 1048, 1048, 1048, 1049, 1049, 1049,
+     1050, 1050, 1050, 1050, 1050, 1050, 1051, 1051, 1051, 1051,
+     1052, 1052,  716, 1052, 1052, 1052,  715,  714,  712,  711,
+      710,  709,  708,  707,  706,  705,  704,  700,  699,  697,
+      696,  695,  694,  693,  692,  691,  690,  687,  686,  685,
+      684,  683,  682,  681,  679,  677,  676,  675,  674,  673,
+      672,  671,  670,  669,  668,  667,  666,  665,  663,  662,
+      661,  660,  659,  658,  657,  655,  654,  653,  652,  651,
+
+      650,  649,  648,  647,  646,  645,  644,  643,  642,  641,
+      639,  638,  637,  636,  635,  634,  633,  632,  631,  628,
+      627,  626,  625,  624,  623,  622,  621,  620,  618,  617,
+      616,  615,  614,  612,  611,  609,  608,  607,  604,  603,
+      602,  601,  600,  598,  597,  596,  595,  594,  593,  592,
+      591,  590,  588,  587,  586,  585,  583,  582,  580,  579,
+      578,  576,  575,  574,  573,  572,  570,  565,  563,  560,
+      558,  557,  556,  554,  553,  552,  551,  550,  549,  548,
+      547,  546,  545,  544,  543,  542,  541,  540,  539,  538,
+      537,  535,  533,  532,  531,  530,  529,  527,  526,  525,
+
+      524,  522,  521,  520,  519,  518,  517,  516,  515,  512,
+      511,  510,  509,  507,  506,  504,  503,  502,  501,  500,
+      499,  498,  497,  495,  494,  493,  492,  491,  490,  488,
+      487,  486,  485,  484,  480,  479,  478,  477,  476,  475,
+      474,  473,  472,  471,  469,  468,  467,  466,  465,  464,
+      463,  462,  461,  460,  459,  458,  455,  453,  452,  451,
+      450,  449,  447,  446,  445,  444,  443,  442,  440,  438,
+      436,  435,  434,  433,  431,  430,  429,  428,  426,  425,
+      424,  423,  421,  419,  417,  416,  415,  413,  412,  411,
+      405,  400,  399,  398,  397,  396,  395,  394,  393,  391,
+
+      390,  389,  388,  387,  385,  384,  383,  382,  381,  380,
+      379,  378,  377,  376,  374,  373,  372,  371,  370,  369,
+      368,  367,  365,  363,  362,  361,  360,  359,  357,  356,
+      355,  354,  353,  352,  351,  349,  348,  347,  346,  344,
+      343,  342,  341,  339,  338,  337,  336,  335,  334,  332,
+      331,  329,  328,  327,  326,  325,  324,  323,  321,  320,
+      319,  318,  317,  316,  315,  314,  313,  312,  311,  309,
+      308,  307,  306,  305,  304,  303,  302,  301,  299,  297,
+      295,  294,  293,  292,  291,  290,  289,  288,  287,  286,
+      285,  284,  283,  282,  281,  280,  279,  278,  277,  276,
+
+      275,  274,  273,  272,  271,  270,  269,  268,  267,  266,
+      265,  264,  262,  261,  260,  259,  258,  257,  256,  255,
+      254,  253,  252,  251,  250,  249,  248,  247,  244,  234,
+      227,  223,  218,  217,  214,  210,  209,  208,  207,  203,
+      202,  201,  200,  197,  196,  195,  194,  193,  192,  190,
+      189,  188,  187,  184,  181,  180,  179,  178,  177,  172,
+      171,  170,  169,  168,  167,  166,  165,  164,  163,  162,
+      160,  159,  158,  157,  156,  155,  154,  153,  151,  150,
+      149,  148,  147,  143,  142,  139,  138,  137,  136,  135,
+      134,  132,  130,  128,  127,  126,  125,  124,  123,  122,
+
+      121,  120,  118,  117,  116,  115,  113,  112,  111,  110,
+      109,  108,  107,  105,  103,   98,   95,   93,   92,   91,
+       88,   76,   65,   62,   60,   59,   54,   48,   45,   37,
+       33,   32,   21,   20,   19,   18,   15,   14,   13,   11,
+       10,    9,    5, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
+     1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045
     } ;
 
 static yy_state_type yy_last_accepting_state;
@@ -994,7 +999,7 @@ char *yytext;
 #line 1 "lev_comp.l"
 #define INITIAL 0
 #line 2 "lev_comp.l"
-/* NetHack 3.6  lev_comp.l     $NHDT-Date: 1432512787 2015/05/25 00:13:07 $  $NHDT-Branch: master $:$NHDT-Revision: 1.17 $ */
+/* NetHack 3.6  lev_comp.l     $NHDT-Date: 1432512785 2015/05/25 00:13:05 $  $NHDT-Branch: master $:$NHDT-Revision: 1.19 $ */
 /*     Copyright (c) 1989 by Jean-Christophe Collet */
 /* NetHack may be freely redistributed.  See license for details. */
 
@@ -1092,7 +1097,7 @@ FILE *orig_yyin = NULL;
 
 #define MAPC 1
 
-#line 1098 "lex.yy.c"
+#line 1101 "lex.yy.c"
 
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
@@ -1246,9 +1251,9 @@ YY_DECL
        register char *yy_cp, *yy_bp;
        register int yy_act;
 
-#line 105 "lev_comp.l"
+#line 103 "lev_comp.l"
 
-#line 1254 "lex.yy.c"
+#line 1257 "lex.yy.c"
 
        if ( yy_init )
                {
@@ -1300,13 +1305,13 @@ yy_match:
                        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                                {
                                yy_current_state = (int) yy_def[yy_current_state];
-                               if ( yy_current_state >= 1038 )
+                               if ( yy_current_state >= 1046 )
                                        yy_c = yy_meta[(unsigned int) yy_c];
                                }
                        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
                        ++yy_cp;
                        }
-               while ( yy_base[yy_current_state] != 1236 );
+               while ( yy_base[yy_current_state] != 1244 );
 
 yy_find_action:
                yy_act = yy_accept[yy_current_state];
@@ -1334,7 +1339,7 @@ do_action:        /* This label is used only to access EOF actions. */
 
 case 1:
 YY_RULE_SETUP
-#line 106 "lev_comp.l"
+#line 104 "lev_comp.l"
 {
                  savetoken(yytext);
                  BEGIN(INITIAL);
@@ -1347,7 +1352,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 2:
 YY_RULE_SETUP
-#line 115 "lev_comp.l"
+#line 113 "lev_comp.l"
 {
                  int len = yyleng;
                  savetoken(yytext);
@@ -1362,877 +1367,882 @@ YY_RULE_SETUP
        YY_BREAK
 case 3:
 YY_RULE_SETUP
-#line 126 "lev_comp.l"
+#line 124 "lev_comp.l"
 { savetoken(yytext); newline(); }
        YY_BREAK
 case 4:
 YY_RULE_SETUP
-#line 127 "lev_comp.l"
+#line 125 "lev_comp.l"
 ST_RET(MESSAGE_ID);
        YY_BREAK
 case 5:
 YY_RULE_SETUP
-#line 128 "lev_comp.l"
+#line 126 "lev_comp.l"
 ST_RET(NOMAP_ID);
        YY_BREAK
 case 6:
 YY_RULE_SETUP
-#line 129 "lev_comp.l"
+#line 127 "lev_comp.l"
 ST_RET(MAZE_ID);
        YY_BREAK
 case 7:
 YY_RULE_SETUP
-#line 130 "lev_comp.l"
+#line 128 "lev_comp.l"
 ST_RET(LEVEL_ID);
        YY_BREAK
 case 8:
 YY_RULE_SETUP
-#line 131 "lev_comp.l"
+#line 129 "lev_comp.l"
 ST_RET(LEV_INIT_ID);
        YY_BREAK
 case 9:
 YY_RULE_SETUP
-#line 132 "lev_comp.l"
+#line 130 "lev_comp.l"
 ST_RET(MAZE_GRID_ID);
        YY_BREAK
 case 10:
 YY_RULE_SETUP
-#line 133 "lev_comp.l"
+#line 131 "lev_comp.l"
 ST_RET(SOLID_FILL_ID);
        YY_BREAK
 case 11:
 YY_RULE_SETUP
-#line 134 "lev_comp.l"
+#line 132 "lev_comp.l"
 ST_RET(MINES_ID);
        YY_BREAK
 case 12:
 YY_RULE_SETUP
-#line 135 "lev_comp.l"
+#line 133 "lev_comp.l"
 ST_RET(ROGUELEV_ID);
        YY_BREAK
 case 13:
 YY_RULE_SETUP
-#line 136 "lev_comp.l"
+#line 134 "lev_comp.l"
 ST_RET(FLAGS_ID);
        YY_BREAK
 case 14:
 YY_RULE_SETUP
-#line 137 "lev_comp.l"
+#line 135 "lev_comp.l"
 ST_RET(GEOMETRY_ID);
        YY_BREAK
 case 15:
 YY_RULE_SETUP
-#line 138 "lev_comp.l"
+#line 136 "lev_comp.l"
 { savetoken(yytext); BEGIN(MAPC); newline(); }
        YY_BREAK
 case 16:
 YY_RULE_SETUP
-#line 139 "lev_comp.l"
+#line 137 "lev_comp.l"
 ST_RET(object_ID);
        YY_BREAK
 case 17:
 YY_RULE_SETUP
-#line 140 "lev_comp.l"
+#line 138 "lev_comp.l"
 ST_RET(OBJECT_ID);
        YY_BREAK
 case 18:
 YY_RULE_SETUP
-#line 141 "lev_comp.l"
+#line 139 "lev_comp.l"
 ST_RET(COBJECT_ID);
        YY_BREAK
 case 19:
 YY_RULE_SETUP
-#line 142 "lev_comp.l"
+#line 140 "lev_comp.l"
 ST_RET(MONSTER_ID);
        YY_BREAK
 case 20:
 YY_RULE_SETUP
-#line 143 "lev_comp.l"
+#line 141 "lev_comp.l"
 ST_RET(monster_ID);
        YY_BREAK
 case 21:
 YY_RULE_SETUP
-#line 144 "lev_comp.l"
+#line 142 "lev_comp.l"
 ST_RET(TRAP_ID);
        YY_BREAK
 case 22:
 YY_RULE_SETUP
-#line 145 "lev_comp.l"
+#line 143 "lev_comp.l"
 ST_RET(DOOR_ID);
        YY_BREAK
 case 23:
 YY_RULE_SETUP
-#line 146 "lev_comp.l"
+#line 144 "lev_comp.l"
 ST_RET(ROOMDOOR_ID);
        YY_BREAK
 case 24:
 YY_RULE_SETUP
-#line 147 "lev_comp.l"
+#line 145 "lev_comp.l"
 ST_RET(DRAWBRIDGE_ID);
        YY_BREAK
 case 25:
 YY_RULE_SETUP
-#line 148 "lev_comp.l"
+#line 146 "lev_comp.l"
 ST_RET(MAZEWALK_ID);
        YY_BREAK
 case 26:
 YY_RULE_SETUP
-#line 149 "lev_comp.l"
+#line 147 "lev_comp.l"
 ST_RET(WALLIFY_ID);
        YY_BREAK
 case 27:
 YY_RULE_SETUP
-#line 150 "lev_comp.l"
+#line 148 "lev_comp.l"
 ST_RET(REGION_ID);
        YY_BREAK
 case 28:
 YY_RULE_SETUP
-#line 151 "lev_comp.l"
+#line 149 "lev_comp.l"
 ST_RET(ALTAR_ID);
        YY_BREAK
 case 29:
 YY_RULE_SETUP
-#line 152 "lev_comp.l"
+#line 150 "lev_comp.l"
 ST_RET(LADDER_ID);
        YY_BREAK
 case 30:
 YY_RULE_SETUP
-#line 153 "lev_comp.l"
+#line 151 "lev_comp.l"
 ST_RET(STAIR_ID);
        YY_BREAK
 case 31:
 YY_RULE_SETUP
-#line 154 "lev_comp.l"
+#line 152 "lev_comp.l"
 ST_RET(PORTAL_ID);
        YY_BREAK
 case 32:
 YY_RULE_SETUP
-#line 155 "lev_comp.l"
+#line 153 "lev_comp.l"
 ST_RET(TELEPRT_ID);
        YY_BREAK
 case 33:
 YY_RULE_SETUP
-#line 156 "lev_comp.l"
+#line 154 "lev_comp.l"
 ST_RET(BRANCH_ID);
        YY_BREAK
 case 34:
 YY_RULE_SETUP
-#line 157 "lev_comp.l"
+#line 155 "lev_comp.l"
 ST_RET(FOUNTAIN_ID);
        YY_BREAK
 case 35:
 YY_RULE_SETUP
-#line 158 "lev_comp.l"
+#line 156 "lev_comp.l"
 ST_RET(SINK_ID);
        YY_BREAK
 case 36:
 YY_RULE_SETUP
-#line 159 "lev_comp.l"
+#line 157 "lev_comp.l"
 ST_RET(POOL_ID);
        YY_BREAK
 case 37:
 YY_RULE_SETUP
-#line 160 "lev_comp.l"
+#line 158 "lev_comp.l"
 ST_RET(NON_DIGGABLE_ID);
        YY_BREAK
 case 38:
 YY_RULE_SETUP
-#line 161 "lev_comp.l"
+#line 159 "lev_comp.l"
 ST_RET(NON_PASSWALL_ID);
        YY_BREAK
 case 39:
 YY_RULE_SETUP
-#line 162 "lev_comp.l"
+#line 160 "lev_comp.l"
 ST_RET(IF_ID);
        YY_BREAK
 case 40:
 YY_RULE_SETUP
-#line 163 "lev_comp.l"
+#line 161 "lev_comp.l"
 ST_RET(ELSE_ID);
        YY_BREAK
 case 41:
 YY_RULE_SETUP
-#line 164 "lev_comp.l"
+#line 162 "lev_comp.l"
 ST_RET(EXIT_ID);
        YY_BREAK
 case 42:
 YY_RULE_SETUP
-#line 165 "lev_comp.l"
+#line 163 "lev_comp.l"
 ST_RET(ROOM_ID);
        YY_BREAK
 case 43:
 YY_RULE_SETUP
-#line 166 "lev_comp.l"
+#line 164 "lev_comp.l"
 ST_RET(SUBROOM_ID);
        YY_BREAK
 case 44:
 YY_RULE_SETUP
-#line 167 "lev_comp.l"
+#line 165 "lev_comp.l"
 ST_RET(RAND_CORRIDOR_ID);
        YY_BREAK
 case 45:
 YY_RULE_SETUP
-#line 168 "lev_comp.l"
+#line 166 "lev_comp.l"
 ST_RET(CORRIDOR_ID);
        YY_BREAK
 case 46:
 YY_RULE_SETUP
-#line 169 "lev_comp.l"
+#line 167 "lev_comp.l"
 ST_RET(TERRAIN_ID);
        YY_BREAK
 case 47:
 YY_RULE_SETUP
-#line 170 "lev_comp.l"
+#line 168 "lev_comp.l"
 ST_RET(terrain_ID);
        YY_BREAK
 case 48:
 YY_RULE_SETUP
-#line 171 "lev_comp.l"
+#line 169 "lev_comp.l"
 ST_RET(REPLACE_TERRAIN_ID);
        YY_BREAK
 case 49:
 YY_RULE_SETUP
-#line 172 "lev_comp.l"
+#line 170 "lev_comp.l"
 ST_RET(GOLD_ID);
        YY_BREAK
 case 50:
 YY_RULE_SETUP
-#line 173 "lev_comp.l"
+#line 171 "lev_comp.l"
 ST_RET(GRAVE_ID);
        YY_BREAK
 case 51:
 YY_RULE_SETUP
-#line 174 "lev_comp.l"
+#line 172 "lev_comp.l"
 ST_RET(ENGRAVING_ID);
        YY_BREAK
 case 52:
 YY_RULE_SETUP
-#line 175 "lev_comp.l"
+#line 173 "lev_comp.l"
 ST_RET(MINERALIZE_ID);
        YY_BREAK
 case 53:
 YY_RULE_SETUP
-#line 176 "lev_comp.l"
+#line 174 "lev_comp.l"
 ST_RET(NAME_ID);
        YY_BREAK
 case 54:
 YY_RULE_SETUP
-#line 177 "lev_comp.l"
+#line 175 "lev_comp.l"
 ST_RET(FOR_ID);
        YY_BREAK
 case 55:
 YY_RULE_SETUP
-#line 178 "lev_comp.l"
+#line 176 "lev_comp.l"
 ST_RET(TO_ID);
        YY_BREAK
 case 56:
 YY_RULE_SETUP
-#line 179 "lev_comp.l"
+#line 177 "lev_comp.l"
 ST_RET(LOOP_ID);
        YY_BREAK
 case 57:
 YY_RULE_SETUP
-#line 180 "lev_comp.l"
+#line 178 "lev_comp.l"
 ST_RET(SWITCH_ID);
        YY_BREAK
 case 58:
 YY_RULE_SETUP
-#line 181 "lev_comp.l"
+#line 179 "lev_comp.l"
 ST_RET(CASE_ID);
        YY_BREAK
 case 59:
 YY_RULE_SETUP
-#line 182 "lev_comp.l"
+#line 180 "lev_comp.l"
 ST_RET(BREAK_ID);
        YY_BREAK
 case 60:
 YY_RULE_SETUP
-#line 183 "lev_comp.l"
+#line 181 "lev_comp.l"
 ST_RET(DEFAULT_ID);
        YY_BREAK
 case 61:
 YY_RULE_SETUP
-#line 184 "lev_comp.l"
+#line 182 "lev_comp.l"
 ST_RET(FUNCTION_ID);
        YY_BREAK
 case 62:
 YY_RULE_SETUP
-#line 185 "lev_comp.l"
+#line 183 "lev_comp.l"
 ST_RET(SHUFFLE_ID);
        YY_BREAK
 case 63:
 YY_RULE_SETUP
-#line 186 "lev_comp.l"
+#line 184 "lev_comp.l"
 ST_RET(MONTYPE_ID);
        YY_BREAK
 case 64:
 YY_RULE_SETUP
-#line 187 "lev_comp.l"
+#line 185 "lev_comp.l"
 ST_RET(selection_ID);
        YY_BREAK
 case 65:
 YY_RULE_SETUP
-#line 188 "lev_comp.l"
+#line 186 "lev_comp.l"
 ST_RET(rect_ID);
        YY_BREAK
 case 66:
 YY_RULE_SETUP
-#line 189 "lev_comp.l"
+#line 187 "lev_comp.l"
 ST_RET(fillrect_ID);
        YY_BREAK
 case 67:
 YY_RULE_SETUP
-#line 190 "lev_comp.l"
+#line 188 "lev_comp.l"
 ST_RET(line_ID);
        YY_BREAK
 case 68:
 YY_RULE_SETUP
-#line 191 "lev_comp.l"
+#line 189 "lev_comp.l"
 ST_RET(randline_ID);
        YY_BREAK
 case 69:
 YY_RULE_SETUP
-#line 192 "lev_comp.l"
+#line 190 "lev_comp.l"
 ST_RET(grow_ID);
        YY_BREAK
 case 70:
 YY_RULE_SETUP
-#line 193 "lev_comp.l"
+#line 191 "lev_comp.l"
 ST_RET(flood_ID);
        YY_BREAK
 case 71:
 YY_RULE_SETUP
-#line 194 "lev_comp.l"
+#line 192 "lev_comp.l"
 ST_RET(rndcoord_ID);
        YY_BREAK
 case 72:
 YY_RULE_SETUP
-#line 195 "lev_comp.l"
+#line 193 "lev_comp.l"
 ST_RET(circle_ID);
        YY_BREAK
 case 73:
 YY_RULE_SETUP
-#line 196 "lev_comp.l"
+#line 194 "lev_comp.l"
 ST_RET(ellipse_ID);
        YY_BREAK
 case 74:
 YY_RULE_SETUP
-#line 197 "lev_comp.l"
+#line 195 "lev_comp.l"
 ST_RET(filter_ID);
        YY_BREAK
 case 75:
 YY_RULE_SETUP
-#line 198 "lev_comp.l"
+#line 196 "lev_comp.l"
 ST_RET(gradient_ID);
        YY_BREAK
 case 76:
 YY_RULE_SETUP
-#line 199 "lev_comp.l"
+#line 197 "lev_comp.l"
 ST_RET(complement_ID);
        YY_BREAK
 case 77:
 YY_RULE_SETUP
-#line 200 "lev_comp.l"
+#line 198 "lev_comp.l"
 { savetoken(yytext); yylval.i=SEL_GRADIENT_RADIAL;  return GRADIENT_TYPE; }
        YY_BREAK
 case 78:
 YY_RULE_SETUP
-#line 201 "lev_comp.l"
+#line 199 "lev_comp.l"
 { savetoken(yytext); yylval.i=SEL_GRADIENT_SQUARE;  return GRADIENT_TYPE; }
        YY_BREAK
 case 79:
 YY_RULE_SETUP
-#line 202 "lev_comp.l"
+#line 200 "lev_comp.l"
 { savetoken(yytext); yylval.i=DRY;  return HUMIDITY_TYPE; }
        YY_BREAK
 case 80:
 YY_RULE_SETUP
-#line 203 "lev_comp.l"
+#line 201 "lev_comp.l"
 { savetoken(yytext); yylval.i=WET;  return HUMIDITY_TYPE; }
        YY_BREAK
 case 81:
 YY_RULE_SETUP
-#line 204 "lev_comp.l"
+#line 202 "lev_comp.l"
 { savetoken(yytext); yylval.i=HOT;  return HUMIDITY_TYPE; }
        YY_BREAK
 case 82:
 YY_RULE_SETUP
-#line 205 "lev_comp.l"
+#line 203 "lev_comp.l"
 { savetoken(yytext); yylval.i=SOLID;  return HUMIDITY_TYPE; }
        YY_BREAK
 case 83:
 YY_RULE_SETUP
-#line 206 "lev_comp.l"
+#line 204 "lev_comp.l"
 { savetoken(yytext); yylval.i=ANY_LOC;  return HUMIDITY_TYPE; }
        YY_BREAK
 case 84:
 YY_RULE_SETUP
-#line 207 "lev_comp.l"
+#line 205 "lev_comp.l"
 ST_RET(LEV);
        YY_BREAK
 case 85:
 YY_RULE_SETUP
-#line 208 "lev_comp.l"
+#line 206 "lev_comp.l"
 ST_RET(QUANTITY_ID);
        YY_BREAK
 case 86:
 YY_RULE_SETUP
-#line 209 "lev_comp.l"
+#line 207 "lev_comp.l"
 ST_RET(BURIED_ID);
        YY_BREAK
 case 87:
 YY_RULE_SETUP
-#line 210 "lev_comp.l"
+#line 208 "lev_comp.l"
 ST_RET(ERODED_ID);
        YY_BREAK
 case 88:
 YY_RULE_SETUP
-#line 211 "lev_comp.l"
+#line 209 "lev_comp.l"
 ST_RET(ERODEPROOF_ID);
        YY_BREAK
 case 89:
 YY_RULE_SETUP
-#line 212 "lev_comp.l"
-ST_RET(TRAPPED_ID);
+#line 210 "lev_comp.l"
+{ savetoken(yytext); yylval.i=1; return TRAPPED_STATE; }
        YY_BREAK
 case 90:
 YY_RULE_SETUP
-#line 213 "lev_comp.l"
-ST_RET(RECHARGED_ID);
+#line 211 "lev_comp.l"
+{ savetoken(yytext); yylval.i=0; return TRAPPED_STATE; }
        YY_BREAK
 case 91:
 YY_RULE_SETUP
-#line 214 "lev_comp.l"
-ST_RET(INVIS_ID);
+#line 212 "lev_comp.l"
+ST_RET(RECHARGED_ID);
        YY_BREAK
 case 92:
 YY_RULE_SETUP
-#line 215 "lev_comp.l"
-ST_RET(GREASED_ID);
+#line 213 "lev_comp.l"
+ST_RET(INVIS_ID);
        YY_BREAK
 case 93:
 YY_RULE_SETUP
-#line 216 "lev_comp.l"
-ST_RET(FEMALE_ID);
+#line 214 "lev_comp.l"
+ST_RET(GREASED_ID);
        YY_BREAK
 case 94:
 YY_RULE_SETUP
-#line 217 "lev_comp.l"
-ST_RET(CANCELLED_ID);
+#line 215 "lev_comp.l"
+ST_RET(FEMALE_ID);
        YY_BREAK
 case 95:
 YY_RULE_SETUP
-#line 218 "lev_comp.l"
-ST_RET(REVIVED_ID);
+#line 216 "lev_comp.l"
+ST_RET(CANCELLED_ID);
        YY_BREAK
 case 96:
 YY_RULE_SETUP
-#line 219 "lev_comp.l"
-ST_RET(AVENGE_ID);
+#line 217 "lev_comp.l"
+ST_RET(REVIVED_ID);
        YY_BREAK
 case 97:
 YY_RULE_SETUP
-#line 220 "lev_comp.l"
-ST_RET(FLEEING_ID);
+#line 218 "lev_comp.l"
+ST_RET(AVENGE_ID);
        YY_BREAK
 case 98:
 YY_RULE_SETUP
-#line 221 "lev_comp.l"
-ST_RET(BLINDED_ID);
+#line 219 "lev_comp.l"
+ST_RET(FLEEING_ID);
        YY_BREAK
 case 99:
 YY_RULE_SETUP
-#line 222 "lev_comp.l"
-ST_RET(PARALYZED_ID);
+#line 220 "lev_comp.l"
+ST_RET(BLINDED_ID);
        YY_BREAK
 case 100:
 YY_RULE_SETUP
-#line 223 "lev_comp.l"
-ST_RET(STUNNED_ID);
+#line 221 "lev_comp.l"
+ST_RET(PARALYZED_ID);
        YY_BREAK
 case 101:
 YY_RULE_SETUP
-#line 224 "lev_comp.l"
-ST_RET(CONFUSED_ID);
+#line 222 "lev_comp.l"
+ST_RET(STUNNED_ID);
        YY_BREAK
 case 102:
 YY_RULE_SETUP
-#line 225 "lev_comp.l"
-ST_RET(SEENTRAPS_ID);
+#line 223 "lev_comp.l"
+ST_RET(CONFUSED_ID);
        YY_BREAK
 case 103:
 YY_RULE_SETUP
-#line 226 "lev_comp.l"
-ST_RET(ALL_ID);
+#line 224 "lev_comp.l"
+ST_RET(SEENTRAPS_ID);
        YY_BREAK
 case 104:
 YY_RULE_SETUP
-#line 227 "lev_comp.l"
-ST_RETF((yylval.i=1), HORIZ_OR_VERT);
+#line 225 "lev_comp.l"
+ST_RET(ALL_ID);
        YY_BREAK
 case 105:
 YY_RULE_SETUP
-#line 228 "lev_comp.l"
-{ savetoken(yytext); yylval.i=2; return HORIZ_OR_VERT; }
+#line 226 "lev_comp.l"
+ST_RETF((yylval.i=1), HORIZ_OR_VERT);
        YY_BREAK
 case 106:
 YY_RULE_SETUP
-#line 229 "lev_comp.l"
-{ savetoken(yytext); yylval.i=D_ISOPEN; return DOOR_STATE; }
+#line 227 "lev_comp.l"
+{ savetoken(yytext); yylval.i=2; return HORIZ_OR_VERT; }
        YY_BREAK
 case 107:
 YY_RULE_SETUP
-#line 230 "lev_comp.l"
-{ savetoken(yytext); yylval.i=D_CLOSED; return DOOR_STATE; }
+#line 228 "lev_comp.l"
+{ savetoken(yytext); yylval.i=D_ISOPEN; return DOOR_STATE; }
        YY_BREAK
 case 108:
 YY_RULE_SETUP
-#line 231 "lev_comp.l"
-{ savetoken(yytext); yylval.i=D_LOCKED; return DOOR_STATE; }
+#line 229 "lev_comp.l"
+{ savetoken(yytext); yylval.i=D_CLOSED; return DOOR_STATE; }
        YY_BREAK
 case 109:
 YY_RULE_SETUP
-#line 232 "lev_comp.l"
-{ savetoken(yytext); yylval.i=D_NODOOR; return DOOR_STATE; }
+#line 230 "lev_comp.l"
+{ savetoken(yytext); yylval.i=D_LOCKED; return DOOR_STATE; }
        YY_BREAK
 case 110:
 YY_RULE_SETUP
-#line 233 "lev_comp.l"
-{ savetoken(yytext); yylval.i=D_BROKEN; return DOOR_STATE; }
+#line 231 "lev_comp.l"
+{ savetoken(yytext); yylval.i=D_NODOOR; return DOOR_STATE; }
        YY_BREAK
 case 111:
 YY_RULE_SETUP
-#line 234 "lev_comp.l"
-{ savetoken(yytext); yylval.i=D_SECRET; return DOOR_STATE; }
+#line 232 "lev_comp.l"
+{ savetoken(yytext); yylval.i=D_BROKEN; return DOOR_STATE; }
        YY_BREAK
 case 112:
 YY_RULE_SETUP
-#line 235 "lev_comp.l"
-{ savetoken(yytext); yylval.i=W_NORTH; return DIRECTION; }
+#line 233 "lev_comp.l"
+{ savetoken(yytext); yylval.i=D_SECRET; return DOOR_STATE; }
        YY_BREAK
 case 113:
 YY_RULE_SETUP
-#line 236 "lev_comp.l"
-{ savetoken(yytext); yylval.i=W_EAST; return DIRECTION; }
+#line 234 "lev_comp.l"
+{ savetoken(yytext); yylval.i=W_NORTH; return DIRECTION; }
        YY_BREAK
 case 114:
 YY_RULE_SETUP
-#line 237 "lev_comp.l"
-{ savetoken(yytext); yylval.i=W_SOUTH; return DIRECTION; }
+#line 235 "lev_comp.l"
+{ savetoken(yytext); yylval.i=W_EAST; return DIRECTION; }
        YY_BREAK
 case 115:
 YY_RULE_SETUP
-#line 238 "lev_comp.l"
-{ savetoken(yytext); yylval.i=W_WEST; return DIRECTION; }
+#line 236 "lev_comp.l"
+{ savetoken(yytext); yylval.i=W_SOUTH; return DIRECTION; }
        YY_BREAK
 case 116:
 YY_RULE_SETUP
-#line 239 "lev_comp.l"
-{ savetoken(yytext); yylval.i = -1; return RANDOM_TYPE; }
+#line 237 "lev_comp.l"
+{ savetoken(yytext); yylval.i=W_WEST; return DIRECTION; }
        YY_BREAK
 case 117:
 YY_RULE_SETUP
-#line 240 "lev_comp.l"
-{ savetoken(yytext); yylval.i = -1; return RANDOM_TYPE_BRACKET; }
+#line 238 "lev_comp.l"
+{ savetoken(yytext); yylval.i = -1; return RANDOM_TYPE; }
        YY_BREAK
 case 118:
 YY_RULE_SETUP
-#line 241 "lev_comp.l"
-{ savetoken(yytext); yylval.i = -2; return NONE; }
+#line 239 "lev_comp.l"
+{ savetoken(yytext); yylval.i = -1; return RANDOM_TYPE_BRACKET; }
        YY_BREAK
 case 119:
 YY_RULE_SETUP
-#line 242 "lev_comp.l"
-ST_RET(A_REGISTER);
+#line 240 "lev_comp.l"
+{ savetoken(yytext); yylval.i = -2; return NONE; }
        YY_BREAK
 case 120:
 YY_RULE_SETUP
-#line 243 "lev_comp.l"
-{ savetoken(yytext); yylval.i=1; return LEFT_OR_RIGHT; }
+#line 241 "lev_comp.l"
+ST_RET(A_REGISTER);
        YY_BREAK
 case 121:
 YY_RULE_SETUP
-#line 244 "lev_comp.l"
-{ savetoken(yytext); yylval.i=2; return LEFT_OR_RIGHT; }
+#line 242 "lev_comp.l"
+{ savetoken(yytext); yylval.i=1; return LEFT_OR_RIGHT; }
        YY_BREAK
 case 122:
 YY_RULE_SETUP
-#line 245 "lev_comp.l"
-{ savetoken(yytext); yylval.i=3; return CENTER; }
+#line 243 "lev_comp.l"
+{ savetoken(yytext); yylval.i=2; return LEFT_OR_RIGHT; }
        YY_BREAK
 case 123:
 YY_RULE_SETUP
-#line 246 "lev_comp.l"
-{ savetoken(yytext); yylval.i=4; return LEFT_OR_RIGHT; }
+#line 244 "lev_comp.l"
+{ savetoken(yytext); yylval.i=3; return CENTER; }
        YY_BREAK
 case 124:
 YY_RULE_SETUP
-#line 247 "lev_comp.l"
-{ savetoken(yytext); yylval.i=5; return LEFT_OR_RIGHT; }
+#line 245 "lev_comp.l"
+{ savetoken(yytext); yylval.i=4; return LEFT_OR_RIGHT; }
        YY_BREAK
 case 125:
 YY_RULE_SETUP
-#line 248 "lev_comp.l"
-{ savetoken(yytext); yylval.i=1; return TOP_OR_BOT; }
+#line 246 "lev_comp.l"
+{ savetoken(yytext); yylval.i=5; return LEFT_OR_RIGHT; }
        YY_BREAK
 case 126:
 YY_RULE_SETUP
-#line 249 "lev_comp.l"
-{ savetoken(yytext); yylval.i=5; return TOP_OR_BOT; }
+#line 247 "lev_comp.l"
+{ savetoken(yytext); yylval.i=1; return TOP_OR_BOT; }
        YY_BREAK
 case 127:
 YY_RULE_SETUP
-#line 250 "lev_comp.l"
-{ savetoken(yytext); yylval.i=1; return LIGHT_STATE; }
+#line 248 "lev_comp.l"
+{ savetoken(yytext); yylval.i=5; return TOP_OR_BOT; }
        YY_BREAK
 case 128:
 YY_RULE_SETUP
-#line 251 "lev_comp.l"
-{ savetoken(yytext); yylval.i=0; return LIGHT_STATE; }
+#line 249 "lev_comp.l"
+{ savetoken(yytext); yylval.i=1; return LIGHT_STATE; }
        YY_BREAK
 case 129:
 YY_RULE_SETUP
-#line 252 "lev_comp.l"
-{ savetoken(yytext); yylval.i=1; return FILLING; }
+#line 250 "lev_comp.l"
+{ savetoken(yytext); yylval.i=0; return LIGHT_STATE; }
        YY_BREAK
 case 130:
 YY_RULE_SETUP
-#line 253 "lev_comp.l"
-{ savetoken(yytext); yylval.i=0; return FILLING; }
+#line 251 "lev_comp.l"
+{ savetoken(yytext); yylval.i=1; return FILLING; }
        YY_BREAK
 case 131:
 YY_RULE_SETUP
-#line 254 "lev_comp.l"
-{ savetoken(yytext); yylval.i=0; return IRREGULAR; }
+#line 252 "lev_comp.l"
+{ savetoken(yytext); yylval.i=0; return FILLING; }
        YY_BREAK
 case 132:
 YY_RULE_SETUP
-#line 255 "lev_comp.l"
+#line 253 "lev_comp.l"
+{ savetoken(yytext); yylval.i=0; return IRREGULAR; }
+       YY_BREAK
+case 133:
+YY_RULE_SETUP
+#line 254 "lev_comp.l"
 { savetoken(yytext); yylval.i=1; return IRREGULAR; }
        YY_BREAK
-case 133:
+case 134:
 YY_RULE_SETUP
-#line 256 "lev_comp.l"
+#line 255 "lev_comp.l"
 { savetoken(yytext); yylval.i=1; return JOINED; }
        YY_BREAK
-case 134:
+case 135:
 YY_RULE_SETUP
-#line 257 "lev_comp.l"
+#line 256 "lev_comp.l"
 { savetoken(yytext); yylval.i=0; return JOINED; }
        YY_BREAK
-case 135:
+case 136:
 YY_RULE_SETUP
-#line 258 "lev_comp.l"
+#line 257 "lev_comp.l"
 { savetoken(yytext); yylval.i=1; return LIMITED; }
        YY_BREAK
-case 136:
+case 137:
 YY_RULE_SETUP
-#line 259 "lev_comp.l"
+#line 258 "lev_comp.l"
 { savetoken(yytext); yylval.i=0; return LIMITED; }
        YY_BREAK
-case 137:
+case 138:
 YY_RULE_SETUP
-#line 260 "lev_comp.l"
+#line 259 "lev_comp.l"
 { savetoken(yytext); yylval.i= AM_NONE; return ALIGNMENT; }
        YY_BREAK
-case 138:
+case 139:
 YY_RULE_SETUP
-#line 261 "lev_comp.l"
+#line 260 "lev_comp.l"
 { savetoken(yytext); yylval.i= AM_LAWFUL; return ALIGNMENT; }
        YY_BREAK
-case 139:
+case 140:
 YY_RULE_SETUP
-#line 262 "lev_comp.l"
+#line 261 "lev_comp.l"
 { savetoken(yytext); yylval.i= AM_NEUTRAL; return ALIGNMENT; }
        YY_BREAK
-case 140:
+case 141:
 YY_RULE_SETUP
-#line 263 "lev_comp.l"
+#line 262 "lev_comp.l"
 { savetoken(yytext); yylval.i= AM_CHAOTIC; return ALIGNMENT; }
        YY_BREAK
-case 141:
+case 142:
 YY_RULE_SETUP
-#line 264 "lev_comp.l"
+#line 263 "lev_comp.l"
 { savetoken(yytext); yylval.i= AM_SPLEV_CO; return ALIGNMENT; }
        YY_BREAK
-case 142:
+case 143:
 YY_RULE_SETUP
-#line 265 "lev_comp.l"
+#line 264 "lev_comp.l"
 { savetoken(yytext); yylval.i= AM_SPLEV_NONCO; return ALIGNMENT; }
        YY_BREAK
-case 143:
+case 144:
 YY_RULE_SETUP
-#line 266 "lev_comp.l"
+#line 265 "lev_comp.l"
 { savetoken(yytext); yylval.i=1; return MON_ATTITUDE; }
        YY_BREAK
-case 144:
+case 145:
 YY_RULE_SETUP
-#line 267 "lev_comp.l"
+#line 266 "lev_comp.l"
 { savetoken(yytext); yylval.i=0; return MON_ATTITUDE; }
        YY_BREAK
-case 145:
+case 146:
 YY_RULE_SETUP
-#line 268 "lev_comp.l"
+#line 267 "lev_comp.l"
 { savetoken(yytext); yylval.i=1; return MON_ALERTNESS; }
        YY_BREAK
-case 146:
+case 147:
 YY_RULE_SETUP
-#line 269 "lev_comp.l"
+#line 268 "lev_comp.l"
 { savetoken(yytext); yylval.i=0; return MON_ALERTNESS; }
        YY_BREAK
-case 147:
+case 148:
 YY_RULE_SETUP
-#line 270 "lev_comp.l"
+#line 269 "lev_comp.l"
 { savetoken(yytext); yylval.i= M_AP_FURNITURE; return MON_APPEARANCE; }
        YY_BREAK
-case 148:
+case 149:
 YY_RULE_SETUP
-#line 271 "lev_comp.l"
+#line 270 "lev_comp.l"
 { savetoken(yytext); yylval.i= M_AP_MONSTER;   return MON_APPEARANCE; }
        YY_BREAK
-case 149:
+case 150:
 YY_RULE_SETUP
-#line 272 "lev_comp.l"
+#line 271 "lev_comp.l"
 { savetoken(yytext); yylval.i= M_AP_OBJECT;    return MON_APPEARANCE; }
        YY_BREAK
-case 150:
+case 151:
 YY_RULE_SETUP
-#line 273 "lev_comp.l"
+#line 272 "lev_comp.l"
 { savetoken(yytext); yylval.i=2; return ALTAR_TYPE; }
        YY_BREAK
-case 151:
+case 152:
 YY_RULE_SETUP
-#line 274 "lev_comp.l"
+#line 273 "lev_comp.l"
 { savetoken(yytext); yylval.i=1; return ALTAR_TYPE; }
        YY_BREAK
-case 152:
+case 153:
 YY_RULE_SETUP
-#line 275 "lev_comp.l"
+#line 274 "lev_comp.l"
 { savetoken(yytext); yylval.i=0; return ALTAR_TYPE; }
        YY_BREAK
-case 153:
+case 154:
 YY_RULE_SETUP
-#line 276 "lev_comp.l"
+#line 275 "lev_comp.l"
 { savetoken(yytext); yylval.i=1; return UP_OR_DOWN; }
        YY_BREAK
-case 154:
+case 155:
 YY_RULE_SETUP
-#line 277 "lev_comp.l"
+#line 276 "lev_comp.l"
 { savetoken(yytext); yylval.i=0; return UP_OR_DOWN; }
        YY_BREAK
-case 155:
+case 156:
 YY_RULE_SETUP
-#line 278 "lev_comp.l"
+#line 277 "lev_comp.l"
 { savetoken(yytext); yylval.i=0; return BOOLEAN; }
        YY_BREAK
-case 156:
+case 157:
 YY_RULE_SETUP
-#line 279 "lev_comp.l"
+#line 278 "lev_comp.l"
 { savetoken(yytext); yylval.i=1; return BOOLEAN; }
        YY_BREAK
-case 157:
+case 158:
 YY_RULE_SETUP
-#line 280 "lev_comp.l"
+#line 279 "lev_comp.l"
 { savetoken(yytext); yylval.i=DUST; return ENGRAVING_TYPE; }
        YY_BREAK
-case 158:
+case 159:
 YY_RULE_SETUP
-#line 281 "lev_comp.l"
+#line 280 "lev_comp.l"
 { savetoken(yytext); yylval.i=ENGRAVE; return ENGRAVING_TYPE; }
        YY_BREAK
-case 159:
+case 160:
 YY_RULE_SETUP
-#line 282 "lev_comp.l"
+#line 281 "lev_comp.l"
 { savetoken(yytext); yylval.i=BURN; return ENGRAVING_TYPE; }
        YY_BREAK
-case 160:
+case 161:
 YY_RULE_SETUP
-#line 283 "lev_comp.l"
+#line 282 "lev_comp.l"
 { savetoken(yytext); yylval.i=MARK; return ENGRAVING_TYPE; }
        YY_BREAK
-case 161:
+case 162:
 YY_RULE_SETUP
-#line 284 "lev_comp.l"
+#line 283 "lev_comp.l"
 { savetoken(yytext); yylval.i=ENGR_BLOOD; return ENGRAVING_TYPE; }
        YY_BREAK
-case 162:
+case 163:
 YY_RULE_SETUP
-#line 285 "lev_comp.l"
+#line 284 "lev_comp.l"
 { savetoken(yytext); yylval.i=1; return CURSE_TYPE; }
        YY_BREAK
-case 163:
+case 164:
 YY_RULE_SETUP
-#line 286 "lev_comp.l"
+#line 285 "lev_comp.l"
 { savetoken(yytext); yylval.i=2; return CURSE_TYPE; }
        YY_BREAK
-case 164:
+case 165:
 YY_RULE_SETUP
-#line 287 "lev_comp.l"
+#line 286 "lev_comp.l"
 { savetoken(yytext); yylval.i=3; return CURSE_TYPE; }
        YY_BREAK
-case 165:
+case 166:
 YY_RULE_SETUP
-#line 288 "lev_comp.l"
+#line 287 "lev_comp.l"
 { savetoken(yytext); yylval.i=NOTELEPORT; return FLAG_TYPE; }
        YY_BREAK
-case 166:
+case 167:
 YY_RULE_SETUP
-#line 289 "lev_comp.l"
+#line 288 "lev_comp.l"
 { savetoken(yytext); yylval.i=HARDFLOOR; return FLAG_TYPE; }
        YY_BREAK
-case 167:
+case 168:
 YY_RULE_SETUP
-#line 290 "lev_comp.l"
+#line 289 "lev_comp.l"
 { savetoken(yytext); yylval.i=NOMMAP; return FLAG_TYPE; }
        YY_BREAK
-case 168:
+case 169:
 YY_RULE_SETUP
-#line 291 "lev_comp.l"
+#line 290 "lev_comp.l"
 { savetoken(yytext); yylval.i=ARBOREAL; return FLAG_TYPE; }    /* KMH */
        YY_BREAK
-case 169:
+case 170:
 YY_RULE_SETUP
-#line 292 "lev_comp.l"
+#line 291 "lev_comp.l"
 { savetoken(yytext); yylval.i=SHORTSIGHTED; return FLAG_TYPE; }
        YY_BREAK
-case 170:
+case 171:
 YY_RULE_SETUP
-#line 293 "lev_comp.l"
+#line 292 "lev_comp.l"
 { savetoken(yytext); yylval.i=MAZELEVEL; return FLAG_TYPE; }
        YY_BREAK
-case 171:
+case 172:
 YY_RULE_SETUP
-#line 294 "lev_comp.l"
+#line 293 "lev_comp.l"
 { savetoken(yytext); yylval.i=PREMAPPED; return FLAG_TYPE; }
        YY_BREAK
-case 172:
+case 173:
 YY_RULE_SETUP
-#line 295 "lev_comp.l"
+#line 294 "lev_comp.l"
 { savetoken(yytext); yylval.i=SHROUD; return FLAG_TYPE; }
        YY_BREAK
-case 173:
+case 174:
 YY_RULE_SETUP
-#line 296 "lev_comp.l"
+#line 295 "lev_comp.l"
 { savetoken(yytext); yylval.i=GRAVEYARD; return FLAG_TYPE; }
        YY_BREAK
-case 174:
+case 175:
 YY_RULE_SETUP
-#line 297 "lev_comp.l"
+#line 296 "lev_comp.l"
 { savetoken(yytext); yylval.i=ICEDPOOLS; return FLAG_TYPE; }
        YY_BREAK
-case 175:
+case 176:
 YY_RULE_SETUP
-#line 298 "lev_comp.l"
+#line 297 "lev_comp.l"
 { savetoken(yytext); yylval.i=SOLIDIFY; return FLAG_TYPE; }
        YY_BREAK
-case 176:
+case 177:
 YY_RULE_SETUP
-#line 299 "lev_comp.l"
+#line 298 "lev_comp.l"
 { savetoken(yytext); yylval.i=CORRMAZE; return FLAG_TYPE; }
        YY_BREAK
-case 177:
+case 178:
 YY_RULE_SETUP
-#line 300 "lev_comp.l"
+#line 299 "lev_comp.l"
 { char *p = strchr(yytext, 'd');
                  savetoken(yytext);
                  if (p) {
@@ -2244,122 +2254,122 @@ YY_RULE_SETUP
                  return DICE;
                }
        YY_BREAK
-case 178:
+case 179:
 YY_RULE_SETUP
-#line 310 "lev_comp.l"
+#line 309 "lev_comp.l"
 { savetoken(yytext); yylval.i = atoi(yytext + 1);
                     if (yylval.i < 0 || yylval.i > 100)
                        lc_error("Unexpected percentile '%li%%'", yylval.i);
                     return PERCENT; }
        YY_BREAK
-case 179:
+case 180:
 YY_RULE_SETUP
-#line 314 "lev_comp.l"
+#line 313 "lev_comp.l"
 { savetoken(yytext); yylval.i=atoi(yytext); return MINUS_INTEGER; }
        YY_BREAK
-case 180:
+case 181:
 YY_RULE_SETUP
-#line 315 "lev_comp.l"
+#line 314 "lev_comp.l"
 { savetoken(yytext); yylval.i=atoi(yytext); return PLUS_INTEGER; }
        YY_BREAK
-case 181:
+case 182:
 YY_RULE_SETUP
-#line 316 "lev_comp.l"
+#line 315 "lev_comp.l"
 { savetoken(yytext); yylval.i = atoi(yytext);
                  if (yylval.i < 0 || yylval.i > 100)
                     lc_error("Unexpected percentile '%li%%'", yylval.i);
                  return SPERCENT; }
        YY_BREAK
-case 182:
+case 183:
 YY_RULE_SETUP
-#line 320 "lev_comp.l"
+#line 319 "lev_comp.l"
 { savetoken(yytext); yylval.i=atoi(yytext); return INTEGER; }
        YY_BREAK
-case 183:
+case 184:
 YY_RULE_SETUP
-#line 321 "lev_comp.l"
+#line 320 "lev_comp.l"
 { savetoken(yytext);
                  yytext[yyleng-1] = 0; /* Discard the trailing \" */
                  yylval.map = (char *) alloc(strlen(yytext+1)+1);
                  Strcpy(yylval.map, yytext+1); /* Discard the first \" */
                  return STRING; }
        YY_BREAK
-case 184:
+case 185:
 YY_RULE_SETUP
-#line 326 "lev_comp.l"
+#line 325 "lev_comp.l"
 { savetoken(yytext); return handle_varstring_check(); }
        YY_BREAK
-case 185:
+case 186:
 YY_RULE_SETUP
-#line 327 "lev_comp.l"
+#line 326 "lev_comp.l"
 { savetoken(yytext); yylval.i = SPO_JE; return COMPARE_TYPE; }
        YY_BREAK
-case 186:
+case 187:
 YY_RULE_SETUP
-#line 328 "lev_comp.l"
+#line 327 "lev_comp.l"
 { savetoken(yytext); yylval.i = SPO_JNE; return COMPARE_TYPE; }
        YY_BREAK
-case 187:
+case 188:
 YY_RULE_SETUP
-#line 329 "lev_comp.l"
+#line 328 "lev_comp.l"
 { savetoken(yytext); yylval.i = SPO_JNE; return COMPARE_TYPE; }
        YY_BREAK
-case 188:
+case 189:
 YY_RULE_SETUP
-#line 330 "lev_comp.l"
+#line 329 "lev_comp.l"
 { savetoken(yytext); yylval.i = SPO_JLE; return COMPARE_TYPE; }
        YY_BREAK
-case 189:
+case 190:
 YY_RULE_SETUP
-#line 331 "lev_comp.l"
+#line 330 "lev_comp.l"
 { savetoken(yytext); yylval.i = SPO_JGE; return COMPARE_TYPE; }
        YY_BREAK
-case 190:
+case 191:
 YY_RULE_SETUP
-#line 332 "lev_comp.l"
+#line 331 "lev_comp.l"
 { savetoken(yytext); yylval.i = SPO_JL; return COMPARE_TYPE; }
        YY_BREAK
-case 191:
+case 192:
 YY_RULE_SETUP
-#line 333 "lev_comp.l"
+#line 332 "lev_comp.l"
 { savetoken(yytext); yylval.i = SPO_JG; return COMPARE_TYPE; }
        YY_BREAK
-case 192:
+case 193:
 YY_RULE_SETUP
-#line 334 "lev_comp.l"
+#line 333 "lev_comp.l"
 { newline(); }
        YY_BREAK
-case 193:
+case 194:
 YY_RULE_SETUP
-#line 335 "lev_comp.l"
+#line 334 "lev_comp.l"
 { advancepos(yytext); }
        YY_BREAK
-case 194:
+case 195:
 YY_RULE_SETUP
-#line 336 "lev_comp.l"
+#line 335 "lev_comp.l"
 { savetoken(yytext); yylval.i = yytext[2]; return CHAR; }
        YY_BREAK
-case 195:
+case 196:
 YY_RULE_SETUP
-#line 337 "lev_comp.l"
+#line 336 "lev_comp.l"
 { savetoken(yytext); yylval.i = yytext[1]; return CHAR; }
        YY_BREAK
-case 196:
+case 197:
 YY_RULE_SETUP
-#line 338 "lev_comp.l"
+#line 337 "lev_comp.l"
 ST_RET(UNKNOWN_TYPE);
        YY_BREAK
-case 197:
+case 198:
 YY_RULE_SETUP
-#line 339 "lev_comp.l"
+#line 338 "lev_comp.l"
 { savetoken(yytext); return yytext[0]; }
        YY_BREAK
-case 198:
+case 199:
 YY_RULE_SETUP
-#line 340 "lev_comp.l"
+#line 339 "lev_comp.l"
 ECHO;
        YY_BREAK
-#line 2365 "lex.yy.c"
+#line 2373 "lex.yy.c"
 case YY_STATE_EOF(INITIAL):
 case YY_STATE_EOF(MAPC):
        yyterminate();
@@ -2653,7 +2663,7 @@ static yy_state_type yy_get_previous_state()
                while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                        {
                        yy_current_state = (int) yy_def[yy_current_state];
-                       if ( yy_current_state >= 1038 )
+                       if ( yy_current_state >= 1046 )
                                yy_c = yy_meta[(unsigned int) yy_c];
                        }
                yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -2688,11 +2698,11 @@ yy_state_type yy_current_state;
        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                {
                yy_current_state = (int) yy_def[yy_current_state];
-               if ( yy_current_state >= 1038 )
+               if ( yy_current_state >= 1046 )
                        yy_c = yy_meta[(unsigned int) yy_c];
                }
        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
-       yy_is_jam = (yy_current_state == 1037);
+       yy_is_jam = (yy_current_state == 1045);
 
        return yy_is_jam ? 0 : yy_current_state;
        }
@@ -3248,7 +3258,7 @@ int main()
        return 0;
        }
 #endif
-#line 340 "lev_comp.l"
+#line 339 "lev_comp.l"
 
 #ifdef AMIGA
 long *alloc(n)
index cb9d948d83b9c9d7fe330ab9504de0f0f93130bc..970dd96dad9f96dbd1ba8faa6ad50836214fb534 100644 (file)
@@ -70,7 +70,7 @@
 /* Line 189 of yacc.c  */
 #line 1 "lev_comp.y"
 
-/* NetHack 3.6  lev_comp.y     $NHDT-Date: 1432512787 2015/05/25 00:13:07 $  $NHDT-Branch: master $:$NHDT-Revision: 1.15 $ */
+/* NetHack 3.6  lev_comp.y     $NHDT-Date: 1432512785 2015/05/25 00:13:05 $  $NHDT-Branch: master $:$NHDT-Revision: 1.16 $ */
 /*     Copyright (c) 1989 by Jean-Christophe Collet */
 /* NetHack may be freely redistributed.  See license for details. */
 
@@ -215,7 +215,7 @@ extern char curr_token[512];
 
 
 /* Line 189 of yacc.c  */
-#line 221 "y.tab.c"
+#line 219 "y.tab.c"
 
 /* Enabling traces.  */
 #ifndef YYDEBUG
@@ -332,7 +332,7 @@ extern char curr_token[512];
      BREAK_ID = 345,
      DEFAULT_ID = 346,
      ERODED_ID = 347,
-     TRAPPED_ID = 348,
+     TRAPPED_STATE = 348,
      RECHARGED_ID = 349,
      INVIS_ID = 350,
      GREASED_ID = 351,
@@ -509,7 +509,7 @@ extern char curr_token[512];
 #define BREAK_ID 345
 #define DEFAULT_ID 346
 #define ERODED_ID 347
-#define TRAPPED_ID 348
+#define TRAPPED_STATE 348
 #define RECHARGED_ID 349
 #define INVIS_ID 350
 #define GREASED_ID 351
@@ -602,7 +602,7 @@ typedef union YYSTYPE
 {
 
 /* Line 214 of yacc.c  */
-#line 149 "lev_comp.y"
+#line 147 "lev_comp.y"
 
        long    i;
        char*   map;
@@ -642,7 +642,7 @@ typedef union YYSTYPE
 
 
 /* Line 214 of yacc.c  */
-#line 648 "y.tab.c"
+#line 646 "y.tab.c"
 } YYSTYPE;
 # define YYSTYPE_IS_TRIVIAL 1
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
@@ -654,7 +654,7 @@ typedef union YYSTYPE
 
 
 /* Line 264 of yacc.c  */
-#line 660 "y.tab.c"
+#line 658 "y.tab.c"
 
 #ifdef short
 # undef short
@@ -1130,47 +1130,47 @@ static const yytype_int16 yyrhs[] =
 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
 static const yytype_uint16 yyrline[] =
 {
-       0,   276,   276,   277,   280,   281,   284,   306,   311,   332,
-     336,   342,   352,   363,   369,   398,   401,   408,   412,   419,
-     422,   429,   430,   434,   437,   443,   447,   454,   457,   463,
-     469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
-     479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
-     489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
-     499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
-     509,   510,   511,   512,   515,   516,   517,   518,   519,   520,
-     521,   522,   523,   526,   527,   528,   529,   530,   531,   532,
-     533,   534,   537,   538,   539,   542,   543,   546,   558,   564,
-     570,   576,   582,   588,   594,   600,   606,   614,   622,   630,
-     638,   646,   654,   664,   669,   676,   681,   688,   693,   700,
-     704,   710,   715,   722,   726,   732,   736,   743,   765,   742,
-     779,   827,   834,   837,   843,   850,   854,   863,   867,   862,
-     929,   930,   934,   933,   946,   945,   960,   970,   971,   974,
-    1013,  1012,  1046,  1045,  1075,  1074,  1105,  1104,  1130,  1139,
-    1138,  1165,  1171,  1176,  1181,  1188,  1195,  1204,  1212,  1224,
-    1223,  1242,  1241,  1260,  1263,  1269,  1279,  1285,  1294,  1300,
-    1305,  1311,  1316,  1322,  1333,  1339,  1340,  1343,  1344,  1347,
-    1351,  1357,  1358,  1361,  1368,  1376,  1384,  1385,  1388,  1389,
-    1392,  1397,  1396,  1410,  1417,  1423,  1431,  1436,  1442,  1448,
-    1454,  1460,  1465,  1470,  1475,  1480,  1485,  1490,  1495,  1500,
-    1505,  1510,  1518,  1525,  1529,  1542,  1549,  1548,  1564,  1572,
-    1578,  1586,  1592,  1597,  1602,  1607,  1612,  1617,  1622,  1627,
-    1632,  1643,  1648,  1653,  1658,  1663,  1670,  1676,  1705,  1710,
-    1718,  1724,  1730,  1737,  1744,  1754,  1764,  1779,  1790,  1793,
-    1799,  1805,  1811,  1817,  1822,  1829,  1836,  1842,  1848,  1855,
-    1854,  1879,  1882,  1888,  1895,  1899,  1904,  1911,  1917,  1924,
-    1928,  1935,  1943,  1946,  1956,  1960,  1963,  1969,  1973,  1980,
-    1984,  1988,  1994,  1995,  1998,  1999,  2002,  2003,  2004,  2010,
-    2011,  2012,  2018,  2019,  2022,  2031,  2036,  2043,  2053,  2059,
-    2063,  2067,  2074,  2083,  2089,  2093,  2099,  2103,  2111,  2115,
-    2122,  2131,  2142,  2146,  2153,  2162,  2171,  2182,  2186,  2193,
-    2202,  2211,  2220,  2229,  2235,  2239,  2246,  2255,  2265,  2274,
-    2283,  2290,  2291,  2297,  2301,  2305,  2309,  2317,  2326,  2330,
-    2334,  2338,  2342,  2346,  2349,  2356,  2365,  2393,  2394,  2397,
-    2398,  2401,  2405,  2412,  2419,  2430,  2433,  2441,  2445,  2449,
-    2453,  2457,  2462,  2466,  2470,  2475,  2480,  2485,  2489,  2494,
-    2499,  2503,  2507,  2512,  2516,  2523,  2529,  2533,  2539,  2546,
-    2547,  2548,  2551,  2555,  2559,  2563,  2569,  2570,  2573,  2574,
-    2577,  2578,  2581,  2582,  2585,  2589,  2607
+       0,   274,   274,   275,   278,   279,   282,   304,   309,   330,
+     334,   340,   350,   361,   367,   396,   399,   406,   410,   417,
+     420,   427,   428,   432,   435,   441,   445,   452,   455,   461,
+     467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
+     477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
+     487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
+     497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
+     507,   508,   509,   510,   513,   514,   515,   516,   517,   518,
+     519,   520,   521,   524,   525,   526,   527,   528,   529,   530,
+     531,   532,   535,   536,   537,   540,   541,   544,   556,   562,
+     568,   574,   580,   586,   592,   598,   604,   612,   620,   628,
+     636,   644,   652,   662,   667,   674,   679,   686,   691,   698,
+     702,   708,   713,   720,   724,   730,   734,   741,   763,   740,
+     777,   825,   832,   835,   841,   848,   852,   861,   865,   860,
+     927,   928,   932,   931,   944,   943,   958,   968,   969,   972,
+    1011,  1010,  1044,  1043,  1073,  1072,  1103,  1102,  1128,  1137,
+    1136,  1163,  1169,  1174,  1179,  1186,  1193,  1202,  1210,  1222,
+    1221,  1240,  1239,  1258,  1261,  1267,  1277,  1283,  1292,  1298,
+    1303,  1309,  1314,  1320,  1331,  1337,  1338,  1341,  1342,  1345,
+    1349,  1355,  1356,  1359,  1366,  1374,  1382,  1383,  1386,  1387,
+    1390,  1395,  1394,  1408,  1415,  1421,  1429,  1434,  1440,  1446,
+    1452,  1458,  1463,  1468,  1473,  1478,  1483,  1488,  1493,  1498,
+    1503,  1508,  1516,  1523,  1527,  1540,  1547,  1546,  1562,  1570,
+    1576,  1584,  1590,  1595,  1600,  1605,  1610,  1615,  1620,  1625,
+    1630,  1641,  1646,  1651,  1656,  1661,  1668,  1674,  1703,  1708,
+    1716,  1722,  1728,  1735,  1742,  1752,  1762,  1777,  1788,  1791,
+    1797,  1803,  1809,  1815,  1820,  1827,  1834,  1840,  1846,  1853,
+    1852,  1877,  1880,  1886,  1893,  1897,  1902,  1909,  1915,  1922,
+    1926,  1933,  1941,  1944,  1954,  1958,  1961,  1967,  1971,  1978,
+    1982,  1986,  1992,  1993,  1996,  1997,  2000,  2001,  2002,  2008,
+    2009,  2010,  2016,  2017,  2020,  2029,  2034,  2041,  2051,  2057,
+    2061,  2065,  2072,  2081,  2087,  2091,  2097,  2101,  2109,  2113,
+    2120,  2129,  2140,  2144,  2151,  2160,  2169,  2180,  2184,  2191,
+    2200,  2209,  2218,  2227,  2233,  2237,  2244,  2253,  2263,  2272,
+    2281,  2288,  2289,  2295,  2299,  2303,  2307,  2315,  2324,  2328,
+    2332,  2336,  2340,  2344,  2347,  2354,  2363,  2391,  2392,  2395,
+    2396,  2399,  2403,  2410,  2417,  2428,  2431,  2439,  2443,  2447,
+    2451,  2455,  2460,  2464,  2468,  2473,  2478,  2483,  2487,  2492,
+    2497,  2501,  2505,  2510,  2514,  2521,  2527,  2531,  2537,  2544,
+    2545,  2546,  2549,  2553,  2557,  2561,  2567,  2568,  2571,  2572,
+    2575,  2576,  2579,  2580,  2583,  2587,  2605
 };
 #endif
 
@@ -1197,7 +1197,7 @@ static const char *const yytname[] =
   "ROOMDOOR_ID", "IF_ID", "ELSE_ID", "TERRAIN_ID", "HORIZ_OR_VERT",
   "REPLACE_TERRAIN_ID", "EXIT_ID", "SHUFFLE_ID", "QUANTITY_ID",
   "BURIED_ID", "LOOP_ID", "FOR_ID", "TO_ID", "SWITCH_ID", "CASE_ID",
-  "BREAK_ID", "DEFAULT_ID", "ERODED_ID", "TRAPPED_ID", "RECHARGED_ID",
+  "BREAK_ID", "DEFAULT_ID", "ERODED_ID", "TRAPPED_STATE", "RECHARGED_ID",
   "INVIS_ID", "GREASED_ID", "FEMALE_ID", "CANCELLED_ID", "REVIVED_ID",
   "AVENGE_ID", "FLEEING_ID", "BLINDED_ID", "PARALYZED_ID", "STUNNED_ID",
   "CONFUSED_ID", "SEENTRAPS_ID", "ALL_ID", "MONTYPE_ID", "GRAVE_ID",
@@ -2735,7 +2735,7 @@ yyreduce:
         case 6:
 
 /* Line 1455 of yacc.c  */
-#line 285 "lev_comp.y"
+#line 283 "lev_comp.y"
     {
                        if (fatal_error > 0) {
                                (void) fprintf(stderr,
@@ -2760,7 +2760,7 @@ yyreduce:
   case 7:
 
 /* Line 1455 of yacc.c  */
-#line 307 "lev_comp.y"
+#line 305 "lev_comp.y"
     {
                      start_level_def(&splev, (yyvsp[(3) - (3)].map));
                      (yyval.map) = (yyvsp[(3) - (3)].map);
@@ -2770,7 +2770,7 @@ yyreduce:
   case 8:
 
 /* Line 1455 of yacc.c  */
-#line 312 "lev_comp.y"
+#line 310 "lev_comp.y"
     {
                      start_level_def(&splev, (yyvsp[(3) - (5)].map));
                      if ((yyvsp[(5) - (5)].i) == -1) {
@@ -2794,7 +2794,7 @@ yyreduce:
   case 9:
 
 /* Line 1455 of yacc.c  */
-#line 333 "lev_comp.y"
+#line 331 "lev_comp.y"
     {
                      (yyval.i) = -1;
                  }
@@ -2803,7 +2803,7 @@ yyreduce:
   case 10:
 
 /* Line 1455 of yacc.c  */
-#line 337 "lev_comp.y"
+#line 335 "lev_comp.y"
     {
                      (yyval.i) = what_map_char((char) (yyvsp[(1) - (1)].i));
                  }
@@ -2812,7 +2812,7 @@ yyreduce:
   case 11:
 
 /* Line 1455 of yacc.c  */
-#line 343 "lev_comp.y"
+#line 341 "lev_comp.y"
     {
                      long filling = (yyvsp[(5) - (5)].terr).ter;
                      if (filling == INVALID_TYPE || filling >= MAX_TYPE)
@@ -2827,7 +2827,7 @@ yyreduce:
   case 12:
 
 /* Line 1455 of yacc.c  */
-#line 353 "lev_comp.y"
+#line 351 "lev_comp.y"
     {
                      long filling = what_map_char((char) (yyvsp[(5) - (5)].i));
                      if (filling == INVALID_TYPE || filling >= MAX_TYPE)
@@ -2843,7 +2843,7 @@ yyreduce:
   case 13:
 
 /* Line 1455 of yacc.c  */
-#line 364 "lev_comp.y"
+#line 362 "lev_comp.y"
     {
                      add_opvars(splev, "iiiiiiiio",
                                 VA_PASS9(LVLINIT_ROGUE,0,0,0,
@@ -2854,7 +2854,7 @@ yyreduce:
   case 14:
 
 /* Line 1455 of yacc.c  */
-#line 370 "lev_comp.y"
+#line 368 "lev_comp.y"
     {
                      long fg = what_map_char((char) (yyvsp[(5) - (16)].i));
                      long bg = what_map_char((char) (yyvsp[(7) - (16)].i));
@@ -2885,7 +2885,7 @@ yyreduce:
   case 15:
 
 /* Line 1455 of yacc.c  */
-#line 398 "lev_comp.y"
+#line 396 "lev_comp.y"
     {
                      (yyval.i) = 0;
                  }
@@ -2894,7 +2894,7 @@ yyreduce:
   case 16:
 
 /* Line 1455 of yacc.c  */
-#line 402 "lev_comp.y"
+#line 400 "lev_comp.y"
     {
                      (yyval.i) = (yyvsp[(2) - (2)].i);
                  }
@@ -2903,7 +2903,7 @@ yyreduce:
   case 17:
 
 /* Line 1455 of yacc.c  */
-#line 408 "lev_comp.y"
+#line 406 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_COPY));
                      (yyval.i) = 0;
@@ -2913,7 +2913,7 @@ yyreduce:
   case 18:
 
 /* Line 1455 of yacc.c  */
-#line 413 "lev_comp.y"
+#line 411 "lev_comp.y"
     {
                      (yyval.i) = 1;
                  }
@@ -2922,7 +2922,7 @@ yyreduce:
   case 19:
 
 /* Line 1455 of yacc.c  */
-#line 419 "lev_comp.y"
+#line 417 "lev_comp.y"
     {
                      (yyval.i) = -1;
                  }
@@ -2931,7 +2931,7 @@ yyreduce:
   case 20:
 
 /* Line 1455 of yacc.c  */
-#line 423 "lev_comp.y"
+#line 421 "lev_comp.y"
     {
                      (yyval.i) = what_map_char((char) (yyvsp[(2) - (2)].i));
                  }
@@ -2940,7 +2940,7 @@ yyreduce:
   case 23:
 
 /* Line 1455 of yacc.c  */
-#line 434 "lev_comp.y"
+#line 432 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2(0, SPO_LEVEL_FLAGS));
                  }
@@ -2949,7 +2949,7 @@ yyreduce:
   case 24:
 
 /* Line 1455 of yacc.c  */
-#line 438 "lev_comp.y"
+#line 436 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2((yyvsp[(3) - (3)].i), SPO_LEVEL_FLAGS));
                  }
@@ -2958,7 +2958,7 @@ yyreduce:
   case 25:
 
 /* Line 1455 of yacc.c  */
-#line 444 "lev_comp.y"
+#line 442 "lev_comp.y"
     {
                      (yyval.i) = ((yyvsp[(1) - (3)].i) | (yyvsp[(3) - (3)].i));
                  }
@@ -2967,7 +2967,7 @@ yyreduce:
   case 26:
 
 /* Line 1455 of yacc.c  */
-#line 448 "lev_comp.y"
+#line 446 "lev_comp.y"
     {
                      (yyval.i) = (yyvsp[(1) - (1)].i);
                  }
@@ -2976,7 +2976,7 @@ yyreduce:
   case 27:
 
 /* Line 1455 of yacc.c  */
-#line 454 "lev_comp.y"
+#line 452 "lev_comp.y"
     {
                      (yyval.i) = 0;
                  }
@@ -2985,7 +2985,7 @@ yyreduce:
   case 28:
 
 /* Line 1455 of yacc.c  */
-#line 458 "lev_comp.y"
+#line 456 "lev_comp.y"
     {
                      (yyval.i) = 1 + (yyvsp[(2) - (2)].i);
                  }
@@ -2994,7 +2994,7 @@ yyreduce:
   case 29:
 
 /* Line 1455 of yacc.c  */
-#line 464 "lev_comp.y"
+#line 462 "lev_comp.y"
     {
                      (yyval.i) = (yyvsp[(2) - (3)].i);
                  }
@@ -3003,7 +3003,7 @@ yyreduce:
   case 97:
 
 /* Line 1455 of yacc.c  */
-#line 547 "lev_comp.y"
+#line 545 "lev_comp.y"
     {
                      struct lc_vardefs *vd;
                      if ((vd = vardef_defined(variable_definitions, (yyvsp[(3) - (3)].map), 1))) {
@@ -3018,7 +3018,7 @@ yyreduce:
   case 98:
 
 /* Line 1455 of yacc.c  */
-#line 559 "lev_comp.y"
+#line 557 "lev_comp.y"
     {
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (3)].map), SPOVAR_INT);
                      add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[(1) - (3)].map), SPO_VAR_INIT));
@@ -3029,7 +3029,7 @@ yyreduce:
   case 99:
 
 /* Line 1455 of yacc.c  */
-#line 565 "lev_comp.y"
+#line 563 "lev_comp.y"
     {
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (5)].map), SPOVAR_SEL);
                      add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[(1) - (5)].map), SPO_VAR_INIT));
@@ -3040,7 +3040,7 @@ yyreduce:
   case 100:
 
 /* Line 1455 of yacc.c  */
-#line 571 "lev_comp.y"
+#line 569 "lev_comp.y"
     {
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (3)].map), SPOVAR_STRING);
                      add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[(1) - (3)].map), SPO_VAR_INIT));
@@ -3051,7 +3051,7 @@ yyreduce:
   case 101:
 
 /* Line 1455 of yacc.c  */
-#line 577 "lev_comp.y"
+#line 575 "lev_comp.y"
     {
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (5)].map), SPOVAR_MAPCHAR);
                      add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[(1) - (5)].map), SPO_VAR_INIT));
@@ -3062,7 +3062,7 @@ yyreduce:
   case 102:
 
 /* Line 1455 of yacc.c  */
-#line 583 "lev_comp.y"
+#line 581 "lev_comp.y"
     {
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (5)].map), SPOVAR_MONST);
                      add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[(1) - (5)].map), SPO_VAR_INIT));
@@ -3073,7 +3073,7 @@ yyreduce:
   case 103:
 
 /* Line 1455 of yacc.c  */
-#line 589 "lev_comp.y"
+#line 587 "lev_comp.y"
     {
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (5)].map), SPOVAR_OBJ);
                      add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[(1) - (5)].map), SPO_VAR_INIT));
@@ -3084,7 +3084,7 @@ yyreduce:
   case 104:
 
 /* Line 1455 of yacc.c  */
-#line 595 "lev_comp.y"
+#line 593 "lev_comp.y"
     {
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (3)].map), SPOVAR_COORD);
                      add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[(1) - (3)].map), SPO_VAR_INIT));
@@ -3095,7 +3095,7 @@ yyreduce:
   case 105:
 
 /* Line 1455 of yacc.c  */
-#line 601 "lev_comp.y"
+#line 599 "lev_comp.y"
     {
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (3)].map), SPOVAR_REGION);
                      add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[(1) - (3)].map), SPO_VAR_INIT));
@@ -3106,7 +3106,7 @@ yyreduce:
   case 106:
 
 /* Line 1455 of yacc.c  */
-#line 607 "lev_comp.y"
+#line 605 "lev_comp.y"
     {
                      long n_items = (yyvsp[(4) - (5)].i);
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (5)].map), SPOVAR_INT|SPOVAR_ARRAY);
@@ -3119,7 +3119,7 @@ yyreduce:
   case 107:
 
 /* Line 1455 of yacc.c  */
-#line 615 "lev_comp.y"
+#line 613 "lev_comp.y"
     {
                      long n_items = (yyvsp[(4) - (5)].i);
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (5)].map), SPOVAR_COORD|SPOVAR_ARRAY);
@@ -3132,7 +3132,7 @@ yyreduce:
   case 108:
 
 /* Line 1455 of yacc.c  */
-#line 623 "lev_comp.y"
+#line 621 "lev_comp.y"
     {
                      long n_items = (yyvsp[(4) - (5)].i);
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (5)].map), SPOVAR_REGION|SPOVAR_ARRAY);
@@ -3145,7 +3145,7 @@ yyreduce:
   case 109:
 
 /* Line 1455 of yacc.c  */
-#line 631 "lev_comp.y"
+#line 629 "lev_comp.y"
     {
                      long n_items = (yyvsp[(6) - (7)].i);
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (7)].map), SPOVAR_MAPCHAR|SPOVAR_ARRAY);
@@ -3158,7 +3158,7 @@ yyreduce:
   case 110:
 
 /* Line 1455 of yacc.c  */
-#line 639 "lev_comp.y"
+#line 637 "lev_comp.y"
     {
                      long n_items = (yyvsp[(6) - (7)].i);
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (7)].map), SPOVAR_MONST|SPOVAR_ARRAY);
@@ -3171,7 +3171,7 @@ yyreduce:
   case 111:
 
 /* Line 1455 of yacc.c  */
-#line 647 "lev_comp.y"
+#line 645 "lev_comp.y"
     {
                      long n_items = (yyvsp[(6) - (7)].i);
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (7)].map), SPOVAR_OBJ|SPOVAR_ARRAY);
@@ -3184,7 +3184,7 @@ yyreduce:
   case 112:
 
 /* Line 1455 of yacc.c  */
-#line 655 "lev_comp.y"
+#line 653 "lev_comp.y"
     {
                      long n_items = (yyvsp[(4) - (5)].i);
                      variable_definitions = add_vardef_type(variable_definitions, (yyvsp[(1) - (5)].map), SPOVAR_STRING|SPOVAR_ARRAY);
@@ -3197,7 +3197,7 @@ yyreduce:
   case 113:
 
 /* Line 1455 of yacc.c  */
-#line 665 "lev_comp.y"
+#line 663 "lev_comp.y"
     {
                      add_opvars(splev, "O", VA_PASS1((yyvsp[(1) - (1)].i)));
                      (yyval.i) = 1;
@@ -3207,7 +3207,7 @@ yyreduce:
   case 114:
 
 /* Line 1455 of yacc.c  */
-#line 670 "lev_comp.y"
+#line 668 "lev_comp.y"
     {
                      add_opvars(splev, "O", VA_PASS1((yyvsp[(3) - (3)].i)));
                      (yyval.i) = 1 + (yyvsp[(1) - (3)].i);
@@ -3217,7 +3217,7 @@ yyreduce:
   case 115:
 
 /* Line 1455 of yacc.c  */
-#line 677 "lev_comp.y"
+#line 675 "lev_comp.y"
     {
                      add_opvars(splev, "M", VA_PASS1((yyvsp[(1) - (1)].i)));
                      (yyval.i) = 1;
@@ -3227,7 +3227,7 @@ yyreduce:
   case 116:
 
 /* Line 1455 of yacc.c  */
-#line 682 "lev_comp.y"
+#line 680 "lev_comp.y"
     {
                      add_opvars(splev, "M", VA_PASS1((yyvsp[(3) - (3)].i)));
                      (yyval.i) = 1 + (yyvsp[(1) - (3)].i);
@@ -3237,7 +3237,7 @@ yyreduce:
   case 117:
 
 /* Line 1455 of yacc.c  */
-#line 689 "lev_comp.y"
+#line 687 "lev_comp.y"
     {
                      add_opvars(splev, "m", VA_PASS1((yyvsp[(1) - (1)].i)));
                      (yyval.i) = 1;
@@ -3247,7 +3247,7 @@ yyreduce:
   case 118:
 
 /* Line 1455 of yacc.c  */
-#line 694 "lev_comp.y"
+#line 692 "lev_comp.y"
     {
                      add_opvars(splev, "m", VA_PASS1((yyvsp[(3) - (3)].i)));
                      (yyval.i) = 1 + (yyvsp[(1) - (3)].i);
@@ -3257,7 +3257,7 @@ yyreduce:
   case 119:
 
 /* Line 1455 of yacc.c  */
-#line 701 "lev_comp.y"
+#line 699 "lev_comp.y"
     {
                      (yyval.i) = 1;
                  }
@@ -3266,7 +3266,7 @@ yyreduce:
   case 120:
 
 /* Line 1455 of yacc.c  */
-#line 705 "lev_comp.y"
+#line 703 "lev_comp.y"
     {
                      (yyval.i) = 1 + (yyvsp[(1) - (3)].i);
                  }
@@ -3275,7 +3275,7 @@ yyreduce:
   case 121:
 
 /* Line 1455 of yacc.c  */
-#line 711 "lev_comp.y"
+#line 709 "lev_comp.y"
     {
                      add_opvars(splev, "c", VA_PASS1((yyvsp[(1) - (1)].i)));
                      (yyval.i) = 1;
@@ -3285,7 +3285,7 @@ yyreduce:
   case 122:
 
 /* Line 1455 of yacc.c  */
-#line 716 "lev_comp.y"
+#line 714 "lev_comp.y"
     {
                      add_opvars(splev, "c", VA_PASS1((yyvsp[(3) - (3)].i)));
                      (yyval.i) = 1 + (yyvsp[(1) - (3)].i);
@@ -3295,7 +3295,7 @@ yyreduce:
   case 123:
 
 /* Line 1455 of yacc.c  */
-#line 723 "lev_comp.y"
+#line 721 "lev_comp.y"
     {
                      (yyval.i) = 1;
                  }
@@ -3304,7 +3304,7 @@ yyreduce:
   case 124:
 
 /* Line 1455 of yacc.c  */
-#line 727 "lev_comp.y"
+#line 725 "lev_comp.y"
     {
                      (yyval.i) = 1 + (yyvsp[(1) - (3)].i);
                  }
@@ -3313,7 +3313,7 @@ yyreduce:
   case 125:
 
 /* Line 1455 of yacc.c  */
-#line 733 "lev_comp.y"
+#line 731 "lev_comp.y"
     {
                      (yyval.i) = 1;
                  }
@@ -3322,7 +3322,7 @@ yyreduce:
   case 126:
 
 /* Line 1455 of yacc.c  */
-#line 737 "lev_comp.y"
+#line 735 "lev_comp.y"
     {
                      (yyval.i) = 1 + (yyvsp[(1) - (3)].i);
                  }
@@ -3331,7 +3331,7 @@ yyreduce:
   case 127:
 
 /* Line 1455 of yacc.c  */
-#line 743 "lev_comp.y"
+#line 741 "lev_comp.y"
     {
                      struct lc_funcdefs *funcdef;
 
@@ -3358,7 +3358,7 @@ yyreduce:
   case 128:
 
 /* Line 1455 of yacc.c  */
-#line 765 "lev_comp.y"
+#line 763 "lev_comp.y"
     {
                      /* nothing */
                  }
@@ -3367,7 +3367,7 @@ yyreduce:
   case 129:
 
 /* Line 1455 of yacc.c  */
-#line 769 "lev_comp.y"
+#line 767 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2(0, SPO_RETURN));
                      splev = function_splev_backup;
@@ -3381,7 +3381,7 @@ yyreduce:
   case 130:
 
 /* Line 1455 of yacc.c  */
-#line 780 "lev_comp.y"
+#line 778 "lev_comp.y"
     {
                      struct lc_funcdefs *tmpfunc;
                      tmpfunc = funcdef_defined(function_definitions, (yyvsp[(1) - (4)].map), 1);
@@ -3432,7 +3432,7 @@ yyreduce:
   case 131:
 
 /* Line 1455 of yacc.c  */
-#line 828 "lev_comp.y"
+#line 826 "lev_comp.y"
     {
                      add_opcode(splev, SPO_EXIT, NULL);
                  }
@@ -3441,7 +3441,7 @@ yyreduce:
   case 132:
 
 /* Line 1455 of yacc.c  */
-#line 834 "lev_comp.y"
+#line 832 "lev_comp.y"
     {
                      (yyval.i) = 100;
                  }
@@ -3450,7 +3450,7 @@ yyreduce:
   case 133:
 
 /* Line 1455 of yacc.c  */
-#line 838 "lev_comp.y"
+#line 836 "lev_comp.y"
     {
                      (yyval.i) = (yyvsp[(1) - (1)].i);
                  }
@@ -3459,7 +3459,7 @@ yyreduce:
   case 134:
 
 /* Line 1455 of yacc.c  */
-#line 844 "lev_comp.y"
+#line 842 "lev_comp.y"
     {
                      /* val > rn2(100) */
                      add_opvars(splev, "iio",
@@ -3471,7 +3471,7 @@ yyreduce:
   case 135:
 
 /* Line 1455 of yacc.c  */
-#line 851 "lev_comp.y"
+#line 849 "lev_comp.y"
     {
                      (yyval.i) = (yyvsp[(3) - (5)].i);
                   }
@@ -3480,7 +3480,7 @@ yyreduce:
   case 136:
 
 /* Line 1455 of yacc.c  */
-#line 855 "lev_comp.y"
+#line 853 "lev_comp.y"
     {
                      /* boolean, explicit foo != 0 */
                      add_opvars(splev, "i", VA_PASS1(0));
@@ -3491,7 +3491,7 @@ yyreduce:
   case 137:
 
 /* Line 1455 of yacc.c  */
-#line 863 "lev_comp.y"
+#line 861 "lev_comp.y"
     {
                      is_inconstant_number = 0;
                  }
@@ -3500,7 +3500,7 @@ yyreduce:
   case 138:
 
 /* Line 1455 of yacc.c  */
-#line 867 "lev_comp.y"
+#line 865 "lev_comp.y"
     {
                      struct opvar *chkjmp;
                      if (in_switch_statement > 0)
@@ -3527,7 +3527,7 @@ yyreduce:
   case 139:
 
 /* Line 1455 of yacc.c  */
-#line 889 "lev_comp.y"
+#line 887 "lev_comp.y"
     {
                      struct opvar *endjump = New(struct opvar);
                      int i;
@@ -3571,7 +3571,7 @@ yyreduce:
   case 142:
 
 /* Line 1455 of yacc.c  */
-#line 934 "lev_comp.y"
+#line 932 "lev_comp.y"
     {
                      if (n_switch_case_list < MAX_SWITCH_CASES) {
                          struct opvar *tmppush = New(struct opvar);
@@ -3585,7 +3585,7 @@ yyreduce:
   case 143:
 
 /* Line 1455 of yacc.c  */
-#line 943 "lev_comp.y"
+#line 941 "lev_comp.y"
     {
                  }
     break;
@@ -3593,7 +3593,7 @@ yyreduce:
   case 144:
 
 /* Line 1455 of yacc.c  */
-#line 946 "lev_comp.y"
+#line 944 "lev_comp.y"
     {
                      struct opvar *tmppush = New(struct opvar);
 
@@ -3608,7 +3608,7 @@ yyreduce:
   case 145:
 
 /* Line 1455 of yacc.c  */
-#line 956 "lev_comp.y"
+#line 954 "lev_comp.y"
     {
                  }
     break;
@@ -3616,7 +3616,7 @@ yyreduce:
   case 146:
 
 /* Line 1455 of yacc.c  */
-#line 961 "lev_comp.y"
+#line 959 "lev_comp.y"
     {
                      if (!allow_break_statements)
                          lc_error("Cannot use BREAK outside a statement block.");
@@ -3629,7 +3629,7 @@ yyreduce:
   case 149:
 
 /* Line 1455 of yacc.c  */
-#line 975 "lev_comp.y"
+#line 973 "lev_comp.y"
     {
                      char buf[256], buf2[256];
 
@@ -3670,7 +3670,7 @@ yyreduce:
   case 150:
 
 /* Line 1455 of yacc.c  */
-#line 1013 "lev_comp.y"
+#line 1011 "lev_comp.y"
     {
                      /* nothing */
                      break_stmt_start();
@@ -3680,7 +3680,7 @@ yyreduce:
   case 151:
 
 /* Line 1455 of yacc.c  */
-#line 1018 "lev_comp.y"
+#line 1016 "lev_comp.y"
     {
                      char buf[256], buf2[256];
                      n_forloops--;
@@ -3711,7 +3711,7 @@ yyreduce:
   case 152:
 
 /* Line 1455 of yacc.c  */
-#line 1046 "lev_comp.y"
+#line 1044 "lev_comp.y"
     {
                      struct opvar *tmppush = New(struct opvar);
 
@@ -3730,7 +3730,7 @@ yyreduce:
   case 153:
 
 /* Line 1455 of yacc.c  */
-#line 1060 "lev_comp.y"
+#line 1058 "lev_comp.y"
     {
                      struct opvar *tmppush;
 
@@ -3748,7 +3748,7 @@ yyreduce:
   case 154:
 
 /* Line 1455 of yacc.c  */
-#line 1075 "lev_comp.y"
+#line 1073 "lev_comp.y"
     {
                      struct opvar *tmppush2 = New(struct opvar);
 
@@ -3773,7 +3773,7 @@ yyreduce:
   case 155:
 
 /* Line 1455 of yacc.c  */
-#line 1095 "lev_comp.y"
+#line 1093 "lev_comp.y"
     {
                      if (n_if_list > 0) {
                          struct opvar *tmppush;
@@ -3786,7 +3786,7 @@ yyreduce:
   case 156:
 
 /* Line 1455 of yacc.c  */
-#line 1105 "lev_comp.y"
+#line 1103 "lev_comp.y"
     {
                      struct opvar *tmppush2 = New(struct opvar);
 
@@ -3811,7 +3811,7 @@ yyreduce:
   case 157:
 
 /* Line 1455 of yacc.c  */
-#line 1125 "lev_comp.y"
+#line 1123 "lev_comp.y"
     {
                     /* do nothing */
                  }
@@ -3820,7 +3820,7 @@ yyreduce:
   case 158:
 
 /* Line 1455 of yacc.c  */
-#line 1131 "lev_comp.y"
+#line 1129 "lev_comp.y"
     {
                      if (n_if_list > 0) {
                          struct opvar *tmppush;
@@ -3833,7 +3833,7 @@ yyreduce:
   case 159:
 
 /* Line 1455 of yacc.c  */
-#line 1139 "lev_comp.y"
+#line 1137 "lev_comp.y"
     {
                      if (n_if_list > 0) {
                          struct opvar *tmppush = New(struct opvar);
@@ -3855,7 +3855,7 @@ yyreduce:
   case 160:
 
 /* Line 1455 of yacc.c  */
-#line 1156 "lev_comp.y"
+#line 1154 "lev_comp.y"
     {
                      if (n_if_list > 0) {
                          struct opvar *tmppush;
@@ -3868,7 +3868,7 @@ yyreduce:
   case 161:
 
 /* Line 1455 of yacc.c  */
-#line 1166 "lev_comp.y"
+#line 1164 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_MESSAGE));
                  }
@@ -3877,7 +3877,7 @@ yyreduce:
   case 162:
 
 /* Line 1455 of yacc.c  */
-#line 1172 "lev_comp.y"
+#line 1170 "lev_comp.y"
     {
                      add_opvars(splev, "iiiiiio",
                              VA_PASS7(-1,  0, -1, -1, -1, -1, SPO_CORRIDOR));
@@ -3887,7 +3887,7 @@ yyreduce:
   case 163:
 
 /* Line 1455 of yacc.c  */
-#line 1177 "lev_comp.y"
+#line 1175 "lev_comp.y"
     {
                      add_opvars(splev, "iiiiiio",
                              VA_PASS7(-1, (yyvsp[(3) - (3)].i), -1, -1, -1, -1, SPO_CORRIDOR));
@@ -3897,7 +3897,7 @@ yyreduce:
   case 164:
 
 /* Line 1455 of yacc.c  */
-#line 1182 "lev_comp.y"
+#line 1180 "lev_comp.y"
     {
                      add_opvars(splev, "iiiiiio",
                              VA_PASS7(-1, -1, -1, -1, -1, -1, SPO_CORRIDOR));
@@ -3907,7 +3907,7 @@ yyreduce:
   case 165:
 
 /* Line 1455 of yacc.c  */
-#line 1189 "lev_comp.y"
+#line 1187 "lev_comp.y"
     {
                      add_opvars(splev, "iiiiiio",
                                 VA_PASS7((yyvsp[(3) - (5)].corpos).room, (yyvsp[(3) - (5)].corpos).door, (yyvsp[(3) - (5)].corpos).wall,
@@ -3919,7 +3919,7 @@ yyreduce:
   case 166:
 
 /* Line 1455 of yacc.c  */
-#line 1196 "lev_comp.y"
+#line 1194 "lev_comp.y"
     {
                      add_opvars(splev, "iiiiiio",
                                 VA_PASS7((yyvsp[(3) - (5)].corpos).room, (yyvsp[(3) - (5)].corpos).door, (yyvsp[(3) - (5)].corpos).wall,
@@ -3931,7 +3931,7 @@ yyreduce:
   case 167:
 
 /* Line 1455 of yacc.c  */
-#line 1205 "lev_comp.y"
+#line 1203 "lev_comp.y"
     {
                        (yyval.corpos).room = (yyvsp[(2) - (7)].i);
                        (yyval.corpos).wall = (yyvsp[(4) - (7)].i);
@@ -3942,7 +3942,7 @@ yyreduce:
   case 168:
 
 /* Line 1455 of yacc.c  */
-#line 1213 "lev_comp.y"
+#line 1211 "lev_comp.y"
     {
                      if (((yyvsp[(2) - (4)].i) < 100) && ((yyvsp[(1) - (4)].i) == OROOM))
                          lc_error("Only typed rooms can have a chance.");
@@ -3956,7 +3956,7 @@ yyreduce:
   case 169:
 
 /* Line 1455 of yacc.c  */
-#line 1224 "lev_comp.y"
+#line 1222 "lev_comp.y"
     {
                      long rflags = (yyvsp[(8) - (8)].i);
 
@@ -3972,7 +3972,7 @@ yyreduce:
   case 170:
 
 /* Line 1455 of yacc.c  */
-#line 1235 "lev_comp.y"
+#line 1233 "lev_comp.y"
     {
                      break_stmt_end(splev);
                      add_opcode(splev, SPO_ENDROOM, NULL);
@@ -3982,7 +3982,7 @@ yyreduce:
   case 171:
 
 /* Line 1455 of yacc.c  */
-#line 1242 "lev_comp.y"
+#line 1240 "lev_comp.y"
     {
                      long rflags = (yyvsp[(8) - (10)].i);
 
@@ -3998,7 +3998,7 @@ yyreduce:
   case 172:
 
 /* Line 1455 of yacc.c  */
-#line 1253 "lev_comp.y"
+#line 1251 "lev_comp.y"
     {
                      break_stmt_end(splev);
                      add_opcode(splev, SPO_ENDROOM, NULL);
@@ -4008,7 +4008,7 @@ yyreduce:
   case 173:
 
 /* Line 1455 of yacc.c  */
-#line 1260 "lev_comp.y"
+#line 1258 "lev_comp.y"
     {
                        (yyval.i) = 1;
                  }
@@ -4017,7 +4017,7 @@ yyreduce:
   case 174:
 
 /* Line 1455 of yacc.c  */
-#line 1264 "lev_comp.y"
+#line 1262 "lev_comp.y"
     {
                        (yyval.i) = (yyvsp[(2) - (2)].i);
                  }
@@ -4026,7 +4026,7 @@ yyreduce:
   case 175:
 
 /* Line 1455 of yacc.c  */
-#line 1270 "lev_comp.y"
+#line 1268 "lev_comp.y"
     {
                        if ( (yyvsp[(2) - (5)].i) < 1 || (yyvsp[(2) - (5)].i) > 5 ||
                            (yyvsp[(4) - (5)].i) < 1 || (yyvsp[(4) - (5)].i) > 5 ) {
@@ -4041,7 +4041,7 @@ yyreduce:
   case 176:
 
 /* Line 1455 of yacc.c  */
-#line 1280 "lev_comp.y"
+#line 1278 "lev_comp.y"
     {
                        (yyval.crd).x = (yyval.crd).y = ERR;
                  }
@@ -4050,7 +4050,7 @@ yyreduce:
   case 177:
 
 /* Line 1455 of yacc.c  */
-#line 1286 "lev_comp.y"
+#line 1284 "lev_comp.y"
     {
                        if ( (yyvsp[(2) - (5)].i) < 0 || (yyvsp[(4) - (5)].i) < 0) {
                            lc_error("Invalid subroom position (%li,%li)!", (yyvsp[(2) - (5)].i), (yyvsp[(4) - (5)].i));
@@ -4064,7 +4064,7 @@ yyreduce:
   case 178:
 
 /* Line 1455 of yacc.c  */
-#line 1295 "lev_comp.y"
+#line 1293 "lev_comp.y"
     {
                        (yyval.crd).x = (yyval.crd).y = ERR;
                  }
@@ -4073,7 +4073,7 @@ yyreduce:
   case 179:
 
 /* Line 1455 of yacc.c  */
-#line 1301 "lev_comp.y"
+#line 1299 "lev_comp.y"
     {
                      (yyval.crd).x = (yyvsp[(2) - (5)].i);
                      (yyval.crd).y = (yyvsp[(4) - (5)].i);
@@ -4083,7 +4083,7 @@ yyreduce:
   case 180:
 
 /* Line 1455 of yacc.c  */
-#line 1306 "lev_comp.y"
+#line 1304 "lev_comp.y"
     {
                      (yyval.crd).x = (yyval.crd).y = ERR;
                  }
@@ -4092,7 +4092,7 @@ yyreduce:
   case 181:
 
 /* Line 1455 of yacc.c  */
-#line 1312 "lev_comp.y"
+#line 1310 "lev_comp.y"
     {
                        (yyval.sze).width = (yyvsp[(2) - (5)].i);
                        (yyval.sze).height = (yyvsp[(4) - (5)].i);
@@ -4102,7 +4102,7 @@ yyreduce:
   case 182:
 
 /* Line 1455 of yacc.c  */
-#line 1317 "lev_comp.y"
+#line 1315 "lev_comp.y"
     {
                        (yyval.sze).height = (yyval.sze).width = ERR;
                  }
@@ -4111,7 +4111,7 @@ yyreduce:
   case 183:
 
 /* Line 1455 of yacc.c  */
-#line 1323 "lev_comp.y"
+#line 1321 "lev_comp.y"
     {
                        /* ERR means random here */
                        if ((yyvsp[(7) - (9)].i) == ERR && (yyvsp[(9) - (9)].i) != ERR) {
@@ -4127,7 +4127,7 @@ yyreduce:
   case 184:
 
 /* Line 1455 of yacc.c  */
-#line 1334 "lev_comp.y"
+#line 1332 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2((long)(yyvsp[(3) - (5)].i), SPO_DOOR));
                  }
@@ -4136,7 +4136,7 @@ yyreduce:
   case 189:
 
 /* Line 1455 of yacc.c  */
-#line 1348 "lev_comp.y"
+#line 1346 "lev_comp.y"
     {
                      (yyval.i) = (yyvsp[(1) - (1)].i);
                  }
@@ -4145,7 +4145,7 @@ yyreduce:
   case 190:
 
 /* Line 1455 of yacc.c  */
-#line 1352 "lev_comp.y"
+#line 1350 "lev_comp.y"
     {
                      (yyval.i) = ((yyvsp[(1) - (3)].i) | (yyvsp[(3) - (3)].i));
                  }
@@ -4154,7 +4154,7 @@ yyreduce:
   case 193:
 
 /* Line 1455 of yacc.c  */
-#line 1362 "lev_comp.y"
+#line 1360 "lev_comp.y"
     {
                      add_opvars(splev, "ciisiio",
                                 VA_PASS7(0, 0, 1, (char *)0, 0, 0, SPO_MAP));
@@ -4166,7 +4166,7 @@ yyreduce:
   case 194:
 
 /* Line 1455 of yacc.c  */
-#line 1369 "lev_comp.y"
+#line 1367 "lev_comp.y"
     {
                      add_opvars(splev, "cii",
                                 VA_PASS3(SP_COORD_PACK(((yyvsp[(3) - (7)].i)),((yyvsp[(5) - (7)].i))),
@@ -4179,7 +4179,7 @@ yyreduce:
   case 195:
 
 /* Line 1455 of yacc.c  */
-#line 1377 "lev_comp.y"
+#line 1375 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(2, (long)(yyvsp[(4) - (5)].i)));
                      scan_map((yyvsp[(5) - (5)].map), splev);
@@ -4190,7 +4190,7 @@ yyreduce:
   case 200:
 
 /* Line 1455 of yacc.c  */
-#line 1393 "lev_comp.y"
+#line 1391 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2(0, SPO_MONSTER));
                  }
@@ -4199,7 +4199,7 @@ yyreduce:
   case 201:
 
 /* Line 1455 of yacc.c  */
-#line 1397 "lev_comp.y"
+#line 1395 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2(1, SPO_MONSTER));
                      in_container_obj++;
@@ -4210,7 +4210,7 @@ yyreduce:
   case 202:
 
 /* Line 1455 of yacc.c  */
-#line 1403 "lev_comp.y"
+#line 1401 "lev_comp.y"
     {
                     break_stmt_end(splev);
                     in_container_obj--;
@@ -4221,7 +4221,7 @@ yyreduce:
   case 203:
 
 /* Line 1455 of yacc.c  */
-#line 1411 "lev_comp.y"
+#line 1409 "lev_comp.y"
     {
                      /* nothing */
                  }
@@ -4230,7 +4230,7 @@ yyreduce:
   case 204:
 
 /* Line 1455 of yacc.c  */
-#line 1417 "lev_comp.y"
+#line 1415 "lev_comp.y"
     {
                      struct opvar *stopit = New(struct opvar);
                      set_opvar_int(stopit, SP_M_V_END);
@@ -4242,7 +4242,7 @@ yyreduce:
   case 205:
 
 /* Line 1455 of yacc.c  */
-#line 1424 "lev_comp.y"
+#line 1422 "lev_comp.y"
     {
                      if (( (yyvsp[(1) - (3)].i) & (yyvsp[(3) - (3)].i) ))
                          lc_error("MONSTER extra info defined twice.");
@@ -4253,7 +4253,7 @@ yyreduce:
   case 206:
 
 /* Line 1455 of yacc.c  */
-#line 1432 "lev_comp.y"
+#line 1430 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_M_V_NAME));
                      (yyval.i) = 0x0001;
@@ -4263,7 +4263,7 @@ yyreduce:
   case 207:
 
 /* Line 1455 of yacc.c  */
-#line 1437 "lev_comp.y"
+#line 1435 "lev_comp.y"
     {
                      add_opvars(splev, "ii",
                                 VA_PASS2((long)(yyvsp[(1) - (1)].i), SP_M_V_PEACEFUL));
@@ -4274,7 +4274,7 @@ yyreduce:
   case 208:
 
 /* Line 1455 of yacc.c  */
-#line 1443 "lev_comp.y"
+#line 1441 "lev_comp.y"
     {
                      add_opvars(splev, "ii",
                                 VA_PASS2((long)(yyvsp[(1) - (1)].i), SP_M_V_ASLEEP));
@@ -4285,7 +4285,7 @@ yyreduce:
   case 209:
 
 /* Line 1455 of yacc.c  */
-#line 1449 "lev_comp.y"
+#line 1447 "lev_comp.y"
     {
                      add_opvars(splev, "ii",
                                 VA_PASS2((long)(yyvsp[(1) - (1)].i), SP_M_V_ALIGN));
@@ -4296,7 +4296,7 @@ yyreduce:
   case 210:
 
 /* Line 1455 of yacc.c  */
-#line 1455 "lev_comp.y"
+#line 1453 "lev_comp.y"
     {
                      add_opvars(splev, "ii",
                                 VA_PASS2((long)(yyvsp[(1) - (2)].i), SP_M_V_APPEAR));
@@ -4307,7 +4307,7 @@ yyreduce:
   case 211:
 
 /* Line 1455 of yacc.c  */
-#line 1461 "lev_comp.y"
+#line 1459 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_FEMALE));
                      (yyval.i) = 0x0020;
@@ -4317,7 +4317,7 @@ yyreduce:
   case 212:
 
 /* Line 1455 of yacc.c  */
-#line 1466 "lev_comp.y"
+#line 1464 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_INVIS));
                      (yyval.i) = 0x0040;
@@ -4327,7 +4327,7 @@ yyreduce:
   case 213:
 
 /* Line 1455 of yacc.c  */
-#line 1471 "lev_comp.y"
+#line 1469 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_CANCELLED));
                      (yyval.i) = 0x0080;
@@ -4337,7 +4337,7 @@ yyreduce:
   case 214:
 
 /* Line 1455 of yacc.c  */
-#line 1476 "lev_comp.y"
+#line 1474 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_REVIVED));
                      (yyval.i) = 0x0100;
@@ -4347,7 +4347,7 @@ yyreduce:
   case 215:
 
 /* Line 1455 of yacc.c  */
-#line 1481 "lev_comp.y"
+#line 1479 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_AVENGE));
                      (yyval.i) = 0x0200;
@@ -4357,7 +4357,7 @@ yyreduce:
   case 216:
 
 /* Line 1455 of yacc.c  */
-#line 1486 "lev_comp.y"
+#line 1484 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_M_V_FLEEING));
                      (yyval.i) = 0x0400;
@@ -4367,7 +4367,7 @@ yyreduce:
   case 217:
 
 /* Line 1455 of yacc.c  */
-#line 1491 "lev_comp.y"
+#line 1489 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_M_V_BLINDED));
                      (yyval.i) = 0x0800;
@@ -4377,7 +4377,7 @@ yyreduce:
   case 218:
 
 /* Line 1455 of yacc.c  */
-#line 1496 "lev_comp.y"
+#line 1494 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_M_V_PARALYZED));
                      (yyval.i) = 0x1000;
@@ -4387,7 +4387,7 @@ yyreduce:
   case 219:
 
 /* Line 1455 of yacc.c  */
-#line 1501 "lev_comp.y"
+#line 1499 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_STUNNED));
                      (yyval.i) = 0x2000;
@@ -4397,7 +4397,7 @@ yyreduce:
   case 220:
 
 /* Line 1455 of yacc.c  */
-#line 1506 "lev_comp.y"
+#line 1504 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_CONFUSED));
                      (yyval.i) = 0x4000;
@@ -4407,7 +4407,7 @@ yyreduce:
   case 221:
 
 /* Line 1455 of yacc.c  */
-#line 1511 "lev_comp.y"
+#line 1509 "lev_comp.y"
     {
                      add_opvars(splev, "ii",
                                 VA_PASS2((long)(yyvsp[(3) - (3)].i), SP_M_V_SEENTRAPS));
@@ -4418,7 +4418,7 @@ yyreduce:
   case 222:
 
 /* Line 1455 of yacc.c  */
-#line 1519 "lev_comp.y"
+#line 1517 "lev_comp.y"
     {
                      int token = get_trap_type((yyvsp[(1) - (1)].map));
                      if (token == ERR || token == 0)
@@ -4430,7 +4430,7 @@ yyreduce:
   case 223:
 
 /* Line 1455 of yacc.c  */
-#line 1526 "lev_comp.y"
+#line 1524 "lev_comp.y"
     {
                      (yyval.i) = (long) ~0;
                  }
@@ -4439,7 +4439,7 @@ yyreduce:
   case 224:
 
 /* Line 1455 of yacc.c  */
-#line 1530 "lev_comp.y"
+#line 1528 "lev_comp.y"
     {
                      int token = get_trap_type((yyvsp[(1) - (3)].map));
                      if (token == ERR || token == 0)
@@ -4455,7 +4455,7 @@ yyreduce:
   case 225:
 
 /* Line 1455 of yacc.c  */
-#line 1543 "lev_comp.y"
+#line 1541 "lev_comp.y"
     {
                      long cnt = 0;
                      if (in_container_obj) cnt |= SP_OBJ_CONTENT;
@@ -4466,7 +4466,7 @@ yyreduce:
   case 226:
 
 /* Line 1455 of yacc.c  */
-#line 1549 "lev_comp.y"
+#line 1547 "lev_comp.y"
     {
                      long cnt = SP_OBJ_CONTAINER;
                      if (in_container_obj) cnt |= SP_OBJ_CONTENT;
@@ -4479,7 +4479,7 @@ yyreduce:
   case 227:
 
 /* Line 1455 of yacc.c  */
-#line 1557 "lev_comp.y"
+#line 1555 "lev_comp.y"
     {
                     break_stmt_end(splev);
                     in_container_obj--;
@@ -4490,7 +4490,7 @@ yyreduce:
   case 228:
 
 /* Line 1455 of yacc.c  */
-#line 1565 "lev_comp.y"
+#line 1563 "lev_comp.y"
     {
                      if (( (yyvsp[(2) - (2)].i) & 0x4000) && in_container_obj) lc_error("Object cannot have a coord when contained.");
                      else if (!( (yyvsp[(2) - (2)].i) & 0x4000) && !in_container_obj) lc_error("Object needs a coord when not contained.");
@@ -4500,7 +4500,7 @@ yyreduce:
   case 229:
 
 /* Line 1455 of yacc.c  */
-#line 1572 "lev_comp.y"
+#line 1570 "lev_comp.y"
     {
                      struct opvar *stopit = New(struct opvar);
                      set_opvar_int(stopit, SP_O_V_END);
@@ -4512,7 +4512,7 @@ yyreduce:
   case 230:
 
 /* Line 1455 of yacc.c  */
-#line 1579 "lev_comp.y"
+#line 1577 "lev_comp.y"
     {
                      if (( (yyvsp[(1) - (3)].i) & (yyvsp[(3) - (3)].i) ))
                          lc_error("OBJECT extra info '%s' defined twice.", curr_token);
@@ -4523,7 +4523,7 @@ yyreduce:
   case 231:
 
 /* Line 1455 of yacc.c  */
-#line 1587 "lev_comp.y"
+#line 1585 "lev_comp.y"
     {
                      add_opvars(splev, "ii",
                                 VA_PASS2((long)(yyvsp[(1) - (1)].i), SP_O_V_CURSE));
@@ -4534,7 +4534,7 @@ yyreduce:
   case 232:
 
 /* Line 1455 of yacc.c  */
-#line 1593 "lev_comp.y"
+#line 1591 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_O_V_CORPSENM));
                      (yyval.i) = 0x0002;
@@ -4544,7 +4544,7 @@ yyreduce:
   case 233:
 
 /* Line 1455 of yacc.c  */
-#line 1598 "lev_comp.y"
+#line 1596 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_O_V_SPE));
                      (yyval.i) = 0x0004;
@@ -4554,7 +4554,7 @@ yyreduce:
   case 234:
 
 /* Line 1455 of yacc.c  */
-#line 1603 "lev_comp.y"
+#line 1601 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_O_V_NAME));
                      (yyval.i) = 0x0008;
@@ -4564,7 +4564,7 @@ yyreduce:
   case 235:
 
 /* Line 1455 of yacc.c  */
-#line 1608 "lev_comp.y"
+#line 1606 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_O_V_QUAN));
                      (yyval.i) = 0x0010;
@@ -4574,7 +4574,7 @@ yyreduce:
   case 236:
 
 /* Line 1455 of yacc.c  */
-#line 1613 "lev_comp.y"
+#line 1611 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_BURIED));
                      (yyval.i) = 0x0020;
@@ -4584,7 +4584,7 @@ yyreduce:
   case 237:
 
 /* Line 1455 of yacc.c  */
-#line 1618 "lev_comp.y"
+#line 1616 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2((long)(yyvsp[(1) - (1)].i), SP_O_V_LIT));
                      (yyval.i) = 0x0040;
@@ -4594,7 +4594,7 @@ yyreduce:
   case 238:
 
 /* Line 1455 of yacc.c  */
-#line 1623 "lev_comp.y"
+#line 1621 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_O_V_ERODED));
                      (yyval.i) = 0x0080;
@@ -4604,7 +4604,7 @@ yyreduce:
   case 239:
 
 /* Line 1455 of yacc.c  */
-#line 1628 "lev_comp.y"
+#line 1626 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(-1, SP_O_V_ERODED));
                      (yyval.i) = 0x0080;
@@ -4614,7 +4614,7 @@ yyreduce:
   case 240:
 
 /* Line 1455 of yacc.c  */
-#line 1633 "lev_comp.y"
+#line 1631 "lev_comp.y"
     {
                      if ((yyvsp[(1) - (1)].i) == D_LOCKED) {
                          add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_LOCKED));
@@ -4630,9 +4630,9 @@ yyreduce:
   case 241:
 
 /* Line 1455 of yacc.c  */
-#line 1644 "lev_comp.y"
+#line 1642 "lev_comp.y"
     {
-                     add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_TRAPPED));
+                     add_opvars(splev, "ii", VA_PASS2((yyvsp[(1) - (1)].i), SP_O_V_TRAPPED));
                      (yyval.i) = 0x0400;
                  }
     break;
@@ -4640,7 +4640,7 @@ yyreduce:
   case 242:
 
 /* Line 1455 of yacc.c  */
-#line 1649 "lev_comp.y"
+#line 1647 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_O_V_RECHARGED));
                      (yyval.i) = 0x0800;
@@ -4650,7 +4650,7 @@ yyreduce:
   case 243:
 
 /* Line 1455 of yacc.c  */
-#line 1654 "lev_comp.y"
+#line 1652 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_INVIS));
                      (yyval.i) = 0x1000;
@@ -4660,7 +4660,7 @@ yyreduce:
   case 244:
 
 /* Line 1455 of yacc.c  */
-#line 1659 "lev_comp.y"
+#line 1657 "lev_comp.y"
     {
                      add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_GREASED));
                      (yyval.i) = 0x2000;
@@ -4670,7 +4670,7 @@ yyreduce:
   case 245:
 
 /* Line 1455 of yacc.c  */
-#line 1664 "lev_comp.y"
+#line 1662 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1(SP_O_V_COORD));
                      (yyval.i) = 0x4000;
@@ -4680,7 +4680,7 @@ yyreduce:
   case 246:
 
 /* Line 1455 of yacc.c  */
-#line 1671 "lev_comp.y"
+#line 1669 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2((long)(yyvsp[(3) - (5)].i), SPO_TRAP));
                  }
@@ -4689,7 +4689,7 @@ yyreduce:
   case 247:
 
 /* Line 1455 of yacc.c  */
-#line 1677 "lev_comp.y"
+#line 1675 "lev_comp.y"
     {
                       long dir, state = 0;
 
@@ -4721,7 +4721,7 @@ yyreduce:
   case 248:
 
 /* Line 1455 of yacc.c  */
-#line 1706 "lev_comp.y"
+#line 1704 "lev_comp.y"
     {
                      add_opvars(splev, "iiio",
                                 VA_PASS4((long)(yyvsp[(5) - (5)].i), 1, 0, SPO_MAZEWALK));
@@ -4731,7 +4731,7 @@ yyreduce:
   case 249:
 
 /* Line 1455 of yacc.c  */
-#line 1711 "lev_comp.y"
+#line 1709 "lev_comp.y"
     {
                      add_opvars(splev, "iiio",
                                 VA_PASS4((long)(yyvsp[(5) - (8)].i), (long)(yyvsp[(7) - (8)].i),
@@ -4742,7 +4742,7 @@ yyreduce:
   case 250:
 
 /* Line 1455 of yacc.c  */
-#line 1719 "lev_comp.y"
+#line 1717 "lev_comp.y"
     {
                      add_opvars(splev, "rio",
                                 VA_PASS3(SP_REGION_PACK(-1,-1,-1,-1),
@@ -4753,7 +4753,7 @@ yyreduce:
   case 251:
 
 /* Line 1455 of yacc.c  */
-#line 1725 "lev_comp.y"
+#line 1723 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2(1, SPO_WALLIFY));
                  }
@@ -4762,7 +4762,7 @@ yyreduce:
   case 252:
 
 /* Line 1455 of yacc.c  */
-#line 1731 "lev_comp.y"
+#line 1729 "lev_comp.y"
     {
                      add_opvars(splev, "io",
                                 VA_PASS2((long)(yyvsp[(5) - (5)].i), SPO_LADDER));
@@ -4772,7 +4772,7 @@ yyreduce:
   case 253:
 
 /* Line 1455 of yacc.c  */
-#line 1738 "lev_comp.y"
+#line 1736 "lev_comp.y"
     {
                      add_opvars(splev, "io",
                                 VA_PASS2((long)(yyvsp[(5) - (5)].i), SPO_STAIR));
@@ -4782,7 +4782,7 @@ yyreduce:
   case 254:
 
 /* Line 1455 of yacc.c  */
-#line 1745 "lev_comp.y"
+#line 1743 "lev_comp.y"
     {
                      add_opvars(splev, "iiiii iiiii iiso",
                                 VA_PASS14((yyvsp[(3) - (7)].lregn).x1, (yyvsp[(3) - (7)].lregn).y1, (yyvsp[(3) - (7)].lregn).x2, (yyvsp[(3) - (7)].lregn).y2, (yyvsp[(3) - (7)].lregn).area,
@@ -4795,7 +4795,7 @@ yyreduce:
   case 255:
 
 /* Line 1455 of yacc.c  */
-#line 1755 "lev_comp.y"
+#line 1753 "lev_comp.y"
     {
                      add_opvars(splev, "iiiii iiiii iiso",
                                 VA_PASS14((yyvsp[(3) - (7)].lregn).x1, (yyvsp[(3) - (7)].lregn).y1, (yyvsp[(3) - (7)].lregn).x2, (yyvsp[(3) - (7)].lregn).y2, (yyvsp[(3) - (7)].lregn).area,
@@ -4808,7 +4808,7 @@ yyreduce:
   case 256:
 
 /* Line 1455 of yacc.c  */
-#line 1765 "lev_comp.y"
+#line 1763 "lev_comp.y"
     {
                      long rtyp = 0;
                      switch((yyvsp[(6) - (6)].i)) {
@@ -4826,7 +4826,7 @@ yyreduce:
   case 257:
 
 /* Line 1455 of yacc.c  */
-#line 1780 "lev_comp.y"
+#line 1778 "lev_comp.y"
     {
                      add_opvars(splev, "iiiii iiiii iiso",
                                 VA_PASS14((yyvsp[(3) - (5)].lregn).x1, (yyvsp[(3) - (5)].lregn).y1, (yyvsp[(3) - (5)].lregn).x2, (yyvsp[(3) - (5)].lregn).y2, (yyvsp[(3) - (5)].lregn).area,
@@ -4839,7 +4839,7 @@ yyreduce:
   case 258:
 
 /* Line 1455 of yacc.c  */
-#line 1790 "lev_comp.y"
+#line 1788 "lev_comp.y"
     {
                        (yyval.i) = -1;
                  }
@@ -4848,7 +4848,7 @@ yyreduce:
   case 259:
 
 /* Line 1455 of yacc.c  */
-#line 1794 "lev_comp.y"
+#line 1792 "lev_comp.y"
     {
                        (yyval.i) = (yyvsp[(2) - (2)].i);
                  }
@@ -4857,7 +4857,7 @@ yyreduce:
   case 260:
 
 /* Line 1455 of yacc.c  */
-#line 1800 "lev_comp.y"
+#line 1798 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_FOUNTAIN));
                  }
@@ -4866,7 +4866,7 @@ yyreduce:
   case 261:
 
 /* Line 1455 of yacc.c  */
-#line 1806 "lev_comp.y"
+#line 1804 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_SINK));
                  }
@@ -4875,7 +4875,7 @@ yyreduce:
   case 262:
 
 /* Line 1455 of yacc.c  */
-#line 1812 "lev_comp.y"
+#line 1810 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_POOL));
                  }
@@ -4884,7 +4884,7 @@ yyreduce:
   case 263:
 
 /* Line 1455 of yacc.c  */
-#line 1818 "lev_comp.y"
+#line 1816 "lev_comp.y"
     {
                      (yyval.terr).lit = -2;
                      (yyval.terr).ter = what_map_char((char) (yyvsp[(1) - (1)].i));
@@ -4894,7 +4894,7 @@ yyreduce:
   case 264:
 
 /* Line 1455 of yacc.c  */
-#line 1823 "lev_comp.y"
+#line 1821 "lev_comp.y"
     {
                      (yyval.terr).lit = (yyvsp[(4) - (5)].i);
                      (yyval.terr).ter = what_map_char((char) (yyvsp[(2) - (5)].i));
@@ -4904,7 +4904,7 @@ yyreduce:
   case 265:
 
 /* Line 1455 of yacc.c  */
-#line 1830 "lev_comp.y"
+#line 1828 "lev_comp.y"
     {
                      add_opvars(splev, "io",
                                 VA_PASS2((yyvsp[(9) - (9)].i), SPO_REPLACETERRAIN));
@@ -4914,7 +4914,7 @@ yyreduce:
   case 266:
 
 /* Line 1455 of yacc.c  */
-#line 1837 "lev_comp.y"
+#line 1835 "lev_comp.y"
     {
                     add_opvars(splev, "o", VA_PASS1(SPO_TERRAIN));
                 }
@@ -4923,7 +4923,7 @@ yyreduce:
   case 267:
 
 /* Line 1455 of yacc.c  */
-#line 1843 "lev_comp.y"
+#line 1841 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_NON_DIGGABLE));
                  }
@@ -4932,7 +4932,7 @@ yyreduce:
   case 268:
 
 /* Line 1455 of yacc.c  */
-#line 1849 "lev_comp.y"
+#line 1847 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_NON_PASSWALL));
                  }
@@ -4941,7 +4941,7 @@ yyreduce:
   case 269:
 
 /* Line 1455 of yacc.c  */
-#line 1855 "lev_comp.y"
+#line 1853 "lev_comp.y"
     {
                      long irr;
                      long rt = (yyvsp[(7) - (8)].i);
@@ -4960,7 +4960,7 @@ yyreduce:
   case 270:
 
 /* Line 1455 of yacc.c  */
-#line 1869 "lev_comp.y"
+#line 1867 "lev_comp.y"
     {
                      break_stmt_end(splev);
                      if ( (yyvsp[(9) - (10)].i) ) {
@@ -4973,7 +4973,7 @@ yyreduce:
   case 271:
 
 /* Line 1455 of yacc.c  */
-#line 1879 "lev_comp.y"
+#line 1877 "lev_comp.y"
     {
                      (yyval.i) = 0;
                  }
@@ -4982,7 +4982,7 @@ yyreduce:
   case 272:
 
 /* Line 1455 of yacc.c  */
-#line 1883 "lev_comp.y"
+#line 1881 "lev_comp.y"
     {
                      (yyval.i) = (yyvsp[(1) - (1)].i);
                  }
@@ -4991,7 +4991,7 @@ yyreduce:
   case 273:
 
 /* Line 1455 of yacc.c  */
-#line 1889 "lev_comp.y"
+#line 1887 "lev_comp.y"
     {
                      add_opvars(splev, "iio",
                                 VA_PASS3((long)(yyvsp[(7) - (7)].i), (long)(yyvsp[(5) - (7)].i), SPO_ALTAR));
@@ -5001,7 +5001,7 @@ yyreduce:
   case 274:
 
 /* Line 1455 of yacc.c  */
-#line 1896 "lev_comp.y"
+#line 1894 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2(2, SPO_GRAVE));
                  }
@@ -5010,7 +5010,7 @@ yyreduce:
   case 275:
 
 /* Line 1455 of yacc.c  */
-#line 1900 "lev_comp.y"
+#line 1898 "lev_comp.y"
     {
                      add_opvars(splev, "sio",
                                 VA_PASS3((char *)0, 1, SPO_GRAVE));
@@ -5020,7 +5020,7 @@ yyreduce:
   case 276:
 
 /* Line 1455 of yacc.c  */
-#line 1905 "lev_comp.y"
+#line 1903 "lev_comp.y"
     {
                      add_opvars(splev, "sio",
                                 VA_PASS3((char *)0, 0, SPO_GRAVE));
@@ -5030,7 +5030,7 @@ yyreduce:
   case 277:
 
 /* Line 1455 of yacc.c  */
-#line 1912 "lev_comp.y"
+#line 1910 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_GOLD));
                  }
@@ -5039,7 +5039,7 @@ yyreduce:
   case 278:
 
 /* Line 1455 of yacc.c  */
-#line 1918 "lev_comp.y"
+#line 1916 "lev_comp.y"
     {
                      add_opvars(splev, "io",
                                 VA_PASS2((long)(yyvsp[(5) - (7)].i), SPO_ENGRAVING));
@@ -5049,7 +5049,7 @@ yyreduce:
   case 279:
 
 /* Line 1455 of yacc.c  */
-#line 1925 "lev_comp.y"
+#line 1923 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_MINERALIZE));
                  }
@@ -5058,7 +5058,7 @@ yyreduce:
   case 280:
 
 /* Line 1455 of yacc.c  */
-#line 1929 "lev_comp.y"
+#line 1927 "lev_comp.y"
     {
                      add_opvars(splev, "iiiio",
                                 VA_PASS5(-1L, -1L, -1L, -1L, SPO_MINERALIZE));
@@ -5068,7 +5068,7 @@ yyreduce:
   case 281:
 
 /* Line 1455 of yacc.c  */
-#line 1936 "lev_comp.y"
+#line 1934 "lev_comp.y"
     {
                        int token = get_trap_type((yyvsp[(1) - (1)].map));
                        if (token == ERR)
@@ -5081,7 +5081,7 @@ yyreduce:
   case 283:
 
 /* Line 1455 of yacc.c  */
-#line 1947 "lev_comp.y"
+#line 1945 "lev_comp.y"
     {
                        int token = get_room_type((yyvsp[(1) - (1)].map));
                        if (token == ERR) {
@@ -5096,7 +5096,7 @@ yyreduce:
   case 285:
 
 /* Line 1455 of yacc.c  */
-#line 1960 "lev_comp.y"
+#line 1958 "lev_comp.y"
     {
                        (yyval.i) = -1;
                  }
@@ -5105,7 +5105,7 @@ yyreduce:
   case 286:
 
 /* Line 1455 of yacc.c  */
-#line 1964 "lev_comp.y"
+#line 1962 "lev_comp.y"
     {
                        (yyval.i) = (yyvsp[(2) - (2)].i);
                  }
@@ -5114,7 +5114,7 @@ yyreduce:
   case 287:
 
 /* Line 1455 of yacc.c  */
-#line 1970 "lev_comp.y"
+#line 1968 "lev_comp.y"
     {
                        (yyval.i) = (yyvsp[(1) - (1)].i);
                  }
@@ -5123,7 +5123,7 @@ yyreduce:
   case 288:
 
 /* Line 1455 of yacc.c  */
-#line 1974 "lev_comp.y"
+#line 1972 "lev_comp.y"
     {
                        (yyval.i) = (yyvsp[(1) - (3)].i) | (yyvsp[(3) - (3)].i);
                  }
@@ -5132,7 +5132,7 @@ yyreduce:
   case 289:
 
 /* Line 1455 of yacc.c  */
-#line 1981 "lev_comp.y"
+#line 1979 "lev_comp.y"
     {
                      (yyval.i) = ((yyvsp[(1) - (1)].i) << 0);
                  }
@@ -5141,7 +5141,7 @@ yyreduce:
   case 290:
 
 /* Line 1455 of yacc.c  */
-#line 1985 "lev_comp.y"
+#line 1983 "lev_comp.y"
     {
                      (yyval.i) = ((yyvsp[(1) - (1)].i) << 1);
                  }
@@ -5150,7 +5150,7 @@ yyreduce:
   case 291:
 
 /* Line 1455 of yacc.c  */
-#line 1989 "lev_comp.y"
+#line 1987 "lev_comp.y"
     {
                      (yyval.i) = ((yyvsp[(1) - (1)].i) << 2);
                  }
@@ -5159,7 +5159,7 @@ yyreduce:
   case 298:
 
 /* Line 1455 of yacc.c  */
-#line 2005 "lev_comp.y"
+#line 2003 "lev_comp.y"
     {
                        (yyval.i) = - MAX_REGISTERS - 1;
                  }
@@ -5168,7 +5168,7 @@ yyreduce:
   case 301:
 
 /* Line 1455 of yacc.c  */
-#line 2013 "lev_comp.y"
+#line 2011 "lev_comp.y"
     {
                        (yyval.i) = - MAX_REGISTERS - 1;
                  }
@@ -5177,7 +5177,7 @@ yyreduce:
   case 304:
 
 /* Line 1455 of yacc.c  */
-#line 2023 "lev_comp.y"
+#line 2021 "lev_comp.y"
     {
                        if ( (yyvsp[(3) - (4)].i) >= 3 )
                                lc_error("Register Index overflow!");
@@ -5189,7 +5189,7 @@ yyreduce:
   case 305:
 
 /* Line 1455 of yacc.c  */
-#line 2032 "lev_comp.y"
+#line 2030 "lev_comp.y"
     {
                      add_opvars(splev, "s", VA_PASS1((yyvsp[(1) - (1)].map)));
                      Free((yyvsp[(1) - (1)].map));
@@ -5199,7 +5199,7 @@ yyreduce:
   case 306:
 
 /* Line 1455 of yacc.c  */
-#line 2037 "lev_comp.y"
+#line 2035 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (1)].map), SPOVAR_STRING);
                      vardef_used(variable_definitions, (yyvsp[(1) - (1)].map));
@@ -5211,7 +5211,7 @@ yyreduce:
   case 307:
 
 /* Line 1455 of yacc.c  */
-#line 2044 "lev_comp.y"
+#line 2042 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (4)].map), SPOVAR_STRING|SPOVAR_ARRAY);
                      vardef_used(variable_definitions, (yyvsp[(1) - (4)].map));
@@ -5223,7 +5223,7 @@ yyreduce:
   case 308:
 
 /* Line 1455 of yacc.c  */
-#line 2054 "lev_comp.y"
+#line 2052 "lev_comp.y"
     {
                      /* nothing */
                  }
@@ -5232,7 +5232,7 @@ yyreduce:
   case 309:
 
 /* Line 1455 of yacc.c  */
-#line 2060 "lev_comp.y"
+#line 2058 "lev_comp.y"
     {
                      add_opvars(splev, "c", VA_PASS1((yyvsp[(1) - (1)].i)));
                  }
@@ -5241,7 +5241,7 @@ yyreduce:
   case 310:
 
 /* Line 1455 of yacc.c  */
-#line 2064 "lev_comp.y"
+#line 2062 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_SEL_RNDCOORD));
                  }
@@ -5250,7 +5250,7 @@ yyreduce:
   case 311:
 
 /* Line 1455 of yacc.c  */
-#line 2068 "lev_comp.y"
+#line 2066 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (1)].map), SPOVAR_COORD);
                      vardef_used(variable_definitions, (yyvsp[(1) - (1)].map));
@@ -5262,7 +5262,7 @@ yyreduce:
   case 312:
 
 /* Line 1455 of yacc.c  */
-#line 2075 "lev_comp.y"
+#line 2073 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (4)].map), SPOVAR_COORD|SPOVAR_ARRAY);
                      vardef_used(variable_definitions, (yyvsp[(1) - (4)].map));
@@ -5274,7 +5274,7 @@ yyreduce:
   case 313:
 
 /* Line 1455 of yacc.c  */
-#line 2084 "lev_comp.y"
+#line 2082 "lev_comp.y"
     {
                      if ((yyvsp[(2) - (5)].i) < 0 || (yyvsp[(4) - (5)].i) < 0 || (yyvsp[(2) - (5)].i) >= COLNO || (yyvsp[(4) - (5)].i) >= ROWNO)
                          lc_error("Coordinates (%li,%li) out of map range!", (yyvsp[(2) - (5)].i), (yyvsp[(4) - (5)].i));
@@ -5285,7 +5285,7 @@ yyreduce:
   case 314:
 
 /* Line 1455 of yacc.c  */
-#line 2090 "lev_comp.y"
+#line 2088 "lev_comp.y"
     {
                      (yyval.i) = SP_COORD_PACK_RANDOM(0);
                  }
@@ -5294,7 +5294,7 @@ yyreduce:
   case 315:
 
 /* Line 1455 of yacc.c  */
-#line 2094 "lev_comp.y"
+#line 2092 "lev_comp.y"
     {
                      (yyval.i) = SP_COORD_PACK_RANDOM( (yyvsp[(2) - (3)].i) );
                  }
@@ -5303,7 +5303,7 @@ yyreduce:
   case 316:
 
 /* Line 1455 of yacc.c  */
-#line 2100 "lev_comp.y"
+#line 2098 "lev_comp.y"
     {
                      (yyval.i) = (yyvsp[(1) - (1)].i);
                  }
@@ -5312,7 +5312,7 @@ yyreduce:
   case 317:
 
 /* Line 1455 of yacc.c  */
-#line 2104 "lev_comp.y"
+#line 2102 "lev_comp.y"
     {
                      if (((yyvsp[(1) - (3)].i) & (yyvsp[(3) - (3)].i)))
                          lc_warning("Humidity flag used twice.");
@@ -5323,7 +5323,7 @@ yyreduce:
   case 318:
 
 /* Line 1455 of yacc.c  */
-#line 2112 "lev_comp.y"
+#line 2110 "lev_comp.y"
     {
                      /* nothing */
                  }
@@ -5332,7 +5332,7 @@ yyreduce:
   case 319:
 
 /* Line 1455 of yacc.c  */
-#line 2116 "lev_comp.y"
+#line 2114 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (1)].map), SPOVAR_REGION);
                      vardef_used(variable_definitions, (yyvsp[(1) - (1)].map));
@@ -5344,7 +5344,7 @@ yyreduce:
   case 320:
 
 /* Line 1455 of yacc.c  */
-#line 2123 "lev_comp.y"
+#line 2121 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (4)].map), SPOVAR_REGION|SPOVAR_ARRAY);
                      vardef_used(variable_definitions, (yyvsp[(1) - (4)].map));
@@ -5356,7 +5356,7 @@ yyreduce:
   case 321:
 
 /* Line 1455 of yacc.c  */
-#line 2132 "lev_comp.y"
+#line 2130 "lev_comp.y"
     {
                      long r = SP_REGION_PACK((yyvsp[(2) - (9)].i), (yyvsp[(4) - (9)].i), (yyvsp[(6) - (9)].i), (yyvsp[(8) - (9)].i));
                      if ( (yyvsp[(2) - (9)].i) > (yyvsp[(6) - (9)].i) || (yyvsp[(4) - (9)].i) > (yyvsp[(8) - (9)].i) )
@@ -5370,7 +5370,7 @@ yyreduce:
   case 322:
 
 /* Line 1455 of yacc.c  */
-#line 2143 "lev_comp.y"
+#line 2141 "lev_comp.y"
     {
                      add_opvars(splev, "m", VA_PASS1((yyvsp[(1) - (1)].i)));
                  }
@@ -5379,7 +5379,7 @@ yyreduce:
   case 323:
 
 /* Line 1455 of yacc.c  */
-#line 2147 "lev_comp.y"
+#line 2145 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (1)].map), SPOVAR_MAPCHAR);
                      vardef_used(variable_definitions, (yyvsp[(1) - (1)].map));
@@ -5391,7 +5391,7 @@ yyreduce:
   case 324:
 
 /* Line 1455 of yacc.c  */
-#line 2154 "lev_comp.y"
+#line 2152 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (4)].map), SPOVAR_MAPCHAR|SPOVAR_ARRAY);
                      vardef_used(variable_definitions, (yyvsp[(1) - (4)].map));
@@ -5403,7 +5403,7 @@ yyreduce:
   case 325:
 
 /* Line 1455 of yacc.c  */
-#line 2163 "lev_comp.y"
+#line 2161 "lev_comp.y"
     {
                      if (what_map_char((char) (yyvsp[(1) - (1)].i)) != INVALID_TYPE)
                          (yyval.i) = SP_MAPCHAR_PACK(what_map_char((char) (yyvsp[(1) - (1)].i)), -2);
@@ -5417,7 +5417,7 @@ yyreduce:
   case 326:
 
 /* Line 1455 of yacc.c  */
-#line 2172 "lev_comp.y"
+#line 2170 "lev_comp.y"
     {
                      if (what_map_char((char) (yyvsp[(2) - (5)].i)) != INVALID_TYPE)
                          (yyval.i) = SP_MAPCHAR_PACK(what_map_char((char) (yyvsp[(2) - (5)].i)), (yyvsp[(4) - (5)].i));
@@ -5431,7 +5431,7 @@ yyreduce:
   case 327:
 
 /* Line 1455 of yacc.c  */
-#line 2183 "lev_comp.y"
+#line 2181 "lev_comp.y"
     {
                      add_opvars(splev, "M", VA_PASS1((yyvsp[(1) - (1)].i)));
                  }
@@ -5440,7 +5440,7 @@ yyreduce:
   case 328:
 
 /* Line 1455 of yacc.c  */
-#line 2187 "lev_comp.y"
+#line 2185 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (1)].map), SPOVAR_MONST);
                      vardef_used(variable_definitions, (yyvsp[(1) - (1)].map));
@@ -5452,7 +5452,7 @@ yyreduce:
   case 329:
 
 /* Line 1455 of yacc.c  */
-#line 2194 "lev_comp.y"
+#line 2192 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (4)].map), SPOVAR_MONST|SPOVAR_ARRAY);
                      vardef_used(variable_definitions, (yyvsp[(1) - (4)].map));
@@ -5464,7 +5464,7 @@ yyreduce:
   case 330:
 
 /* Line 1455 of yacc.c  */
-#line 2203 "lev_comp.y"
+#line 2201 "lev_comp.y"
     {
                       long m = get_monster_id((yyvsp[(1) - (1)].map), (char)0);
                       if (m == ERR) {
@@ -5478,7 +5478,7 @@ yyreduce:
   case 331:
 
 /* Line 1455 of yacc.c  */
-#line 2212 "lev_comp.y"
+#line 2210 "lev_comp.y"
     {
                         if (check_monster_char((char) (yyvsp[(1) - (1)].i)))
                             (yyval.i) = SP_MONST_PACK(-1, (yyvsp[(1) - (1)].i));
@@ -5492,7 +5492,7 @@ yyreduce:
   case 332:
 
 /* Line 1455 of yacc.c  */
-#line 2221 "lev_comp.y"
+#line 2219 "lev_comp.y"
     {
                       long m = get_monster_id((yyvsp[(4) - (5)].map), (char) (yyvsp[(2) - (5)].i));
                       if (m == ERR) {
@@ -5506,7 +5506,7 @@ yyreduce:
   case 333:
 
 /* Line 1455 of yacc.c  */
-#line 2230 "lev_comp.y"
+#line 2228 "lev_comp.y"
     {
                       (yyval.i) = -1;
                   }
@@ -5515,7 +5515,7 @@ yyreduce:
   case 334:
 
 /* Line 1455 of yacc.c  */
-#line 2236 "lev_comp.y"
+#line 2234 "lev_comp.y"
     {
                      add_opvars(splev, "O", VA_PASS1((yyvsp[(1) - (1)].i)));
                  }
@@ -5524,7 +5524,7 @@ yyreduce:
   case 335:
 
 /* Line 1455 of yacc.c  */
-#line 2240 "lev_comp.y"
+#line 2238 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (1)].map), SPOVAR_OBJ);
                      vardef_used(variable_definitions, (yyvsp[(1) - (1)].map));
@@ -5536,7 +5536,7 @@ yyreduce:
   case 336:
 
 /* Line 1455 of yacc.c  */
-#line 2247 "lev_comp.y"
+#line 2245 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (4)].map), SPOVAR_OBJ|SPOVAR_ARRAY);
                      vardef_used(variable_definitions, (yyvsp[(1) - (4)].map));
@@ -5548,7 +5548,7 @@ yyreduce:
   case 337:
 
 /* Line 1455 of yacc.c  */
-#line 2256 "lev_comp.y"
+#line 2254 "lev_comp.y"
     {
                      long m = get_object_id((yyvsp[(1) - (1)].map), (char)0);
                      if (m == ERR) {
@@ -5563,7 +5563,7 @@ yyreduce:
   case 338:
 
 /* Line 1455 of yacc.c  */
-#line 2266 "lev_comp.y"
+#line 2264 "lev_comp.y"
     {
                        if (check_object_char((char) (yyvsp[(1) - (1)].i)))
                            (yyval.i) = SP_OBJ_PACK(-1, (yyvsp[(1) - (1)].i));
@@ -5577,7 +5577,7 @@ yyreduce:
   case 339:
 
 /* Line 1455 of yacc.c  */
-#line 2275 "lev_comp.y"
+#line 2273 "lev_comp.y"
     {
                      long m = get_object_id((yyvsp[(4) - (5)].map), (char) (yyvsp[(2) - (5)].i));
                      if (m == ERR) {
@@ -5591,7 +5591,7 @@ yyreduce:
   case 340:
 
 /* Line 1455 of yacc.c  */
-#line 2284 "lev_comp.y"
+#line 2282 "lev_comp.y"
     {
                      (yyval.i) = -1;
                  }
@@ -5600,14 +5600,14 @@ yyreduce:
   case 341:
 
 /* Line 1455 of yacc.c  */
-#line 2290 "lev_comp.y"
+#line 2288 "lev_comp.y"
     { }
     break;
 
   case 342:
 
 /* Line 1455 of yacc.c  */
-#line 2292 "lev_comp.y"
+#line 2290 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_MATH_ADD));
                  }
@@ -5616,7 +5616,7 @@ yyreduce:
   case 343:
 
 /* Line 1455 of yacc.c  */
-#line 2298 "lev_comp.y"
+#line 2296 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1((yyvsp[(1) - (1)].i)));
                  }
@@ -5625,7 +5625,7 @@ yyreduce:
   case 344:
 
 /* Line 1455 of yacc.c  */
-#line 2302 "lev_comp.y"
+#line 2300 "lev_comp.y"
     {
                      is_inconstant_number = 1;
                  }
@@ -5634,7 +5634,7 @@ yyreduce:
   case 345:
 
 /* Line 1455 of yacc.c  */
-#line 2306 "lev_comp.y"
+#line 2304 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1((yyvsp[(2) - (3)].i)));
                  }
@@ -5643,7 +5643,7 @@ yyreduce:
   case 346:
 
 /* Line 1455 of yacc.c  */
-#line 2310 "lev_comp.y"
+#line 2308 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (1)].map), SPOVAR_INT);
                      vardef_used(variable_definitions, (yyvsp[(1) - (1)].map));
@@ -5656,7 +5656,7 @@ yyreduce:
   case 347:
 
 /* Line 1455 of yacc.c  */
-#line 2318 "lev_comp.y"
+#line 2316 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions,
                                        (yyvsp[(1) - (4)].map), SPOVAR_INT|SPOVAR_ARRAY);
@@ -5670,7 +5670,7 @@ yyreduce:
   case 348:
 
 /* Line 1455 of yacc.c  */
-#line 2327 "lev_comp.y"
+#line 2325 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_MATH_ADD));
                  }
@@ -5679,7 +5679,7 @@ yyreduce:
   case 349:
 
 /* Line 1455 of yacc.c  */
-#line 2331 "lev_comp.y"
+#line 2329 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_MATH_SUB));
                  }
@@ -5688,7 +5688,7 @@ yyreduce:
   case 350:
 
 /* Line 1455 of yacc.c  */
-#line 2335 "lev_comp.y"
+#line 2333 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_MATH_MUL));
                  }
@@ -5697,7 +5697,7 @@ yyreduce:
   case 351:
 
 /* Line 1455 of yacc.c  */
-#line 2339 "lev_comp.y"
+#line 2337 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_MATH_DIV));
                  }
@@ -5706,7 +5706,7 @@ yyreduce:
   case 352:
 
 /* Line 1455 of yacc.c  */
-#line 2343 "lev_comp.y"
+#line 2341 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_MATH_MOD));
                  }
@@ -5715,14 +5715,14 @@ yyreduce:
   case 353:
 
 /* Line 1455 of yacc.c  */
-#line 2346 "lev_comp.y"
+#line 2344 "lev_comp.y"
     { }
     break;
 
   case 354:
 
 /* Line 1455 of yacc.c  */
-#line 2350 "lev_comp.y"
+#line 2348 "lev_comp.y"
     {
                      if (!strcmp("int", (yyvsp[(1) - (1)].map)) || !strcmp("integer", (yyvsp[(1) - (1)].map))) {
                          (yyval.i) = (int)'i';
@@ -5734,7 +5734,7 @@ yyreduce:
   case 355:
 
 /* Line 1455 of yacc.c  */
-#line 2357 "lev_comp.y"
+#line 2355 "lev_comp.y"
     {
                      if (!strcmp("str", (yyvsp[(1) - (1)].map)) || !strcmp("string", (yyvsp[(1) - (1)].map))) {
                          (yyval.i) = (int)'s';
@@ -5746,7 +5746,7 @@ yyreduce:
   case 356:
 
 /* Line 1455 of yacc.c  */
-#line 2366 "lev_comp.y"
+#line 2364 "lev_comp.y"
     {
                      struct lc_funcdefs_parm *tmp = New(struct lc_funcdefs_parm);
 
@@ -5777,7 +5777,7 @@ yyreduce:
   case 361:
 
 /* Line 1455 of yacc.c  */
-#line 2402 "lev_comp.y"
+#line 2400 "lev_comp.y"
     {
                              (yyval.i) = (int)'i';
                          }
@@ -5786,7 +5786,7 @@ yyreduce:
   case 362:
 
 /* Line 1455 of yacc.c  */
-#line 2406 "lev_comp.y"
+#line 2404 "lev_comp.y"
     {
                              (yyval.i) = (int)'s';
                          }
@@ -5795,7 +5795,7 @@ yyreduce:
   case 363:
 
 /* Line 1455 of yacc.c  */
-#line 2413 "lev_comp.y"
+#line 2411 "lev_comp.y"
     {
                              char tmpbuf[2];
                              tmpbuf[0] = (char) (yyvsp[(1) - (1)].i);
@@ -5807,7 +5807,7 @@ yyreduce:
   case 364:
 
 /* Line 1455 of yacc.c  */
-#line 2420 "lev_comp.y"
+#line 2418 "lev_comp.y"
     {
                              long len = strlen( (yyvsp[(1) - (3)].map) );
                              char *tmp = (char *)alloc(len + 2);
@@ -5820,7 +5820,7 @@ yyreduce:
   case 365:
 
 /* Line 1455 of yacc.c  */
-#line 2430 "lev_comp.y"
+#line 2428 "lev_comp.y"
     {
                              (yyval.map) = strdup("");
                          }
@@ -5829,7 +5829,7 @@ yyreduce:
   case 366:
 
 /* Line 1455 of yacc.c  */
-#line 2434 "lev_comp.y"
+#line 2432 "lev_comp.y"
     {
                              char *tmp = strdup( (yyvsp[(1) - (1)].map) );
                              Free( (yyvsp[(1) - (1)].map) );
@@ -5840,7 +5840,7 @@ yyreduce:
   case 367:
 
 /* Line 1455 of yacc.c  */
-#line 2442 "lev_comp.y"
+#line 2440 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_SEL_POINT));
                  }
@@ -5849,7 +5849,7 @@ yyreduce:
   case 368:
 
 /* Line 1455 of yacc.c  */
-#line 2446 "lev_comp.y"
+#line 2444 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_SEL_RECT));
                  }
@@ -5858,7 +5858,7 @@ yyreduce:
   case 369:
 
 /* Line 1455 of yacc.c  */
-#line 2450 "lev_comp.y"
+#line 2448 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_SEL_FILLRECT));
                  }
@@ -5867,7 +5867,7 @@ yyreduce:
   case 370:
 
 /* Line 1455 of yacc.c  */
-#line 2454 "lev_comp.y"
+#line 2452 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_SEL_LINE));
                  }
@@ -5876,7 +5876,7 @@ yyreduce:
   case 371:
 
 /* Line 1455 of yacc.c  */
-#line 2458 "lev_comp.y"
+#line 2456 "lev_comp.y"
     {
                      /* randline (x1,y1),(x2,y2), roughness */
                      add_opvars(splev, "o", VA_PASS1(SPO_SEL_RNDLINE));
@@ -5886,7 +5886,7 @@ yyreduce:
   case 372:
 
 /* Line 1455 of yacc.c  */
-#line 2463 "lev_comp.y"
+#line 2461 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2(W_ANY, SPO_SEL_GROW));
                  }
@@ -5895,7 +5895,7 @@ yyreduce:
   case 373:
 
 /* Line 1455 of yacc.c  */
-#line 2467 "lev_comp.y"
+#line 2465 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2((yyvsp[(3) - (6)].i), SPO_SEL_GROW));
                  }
@@ -5904,7 +5904,7 @@ yyreduce:
   case 374:
 
 /* Line 1455 of yacc.c  */
-#line 2471 "lev_comp.y"
+#line 2469 "lev_comp.y"
     {
                      add_opvars(splev, "iio",
                             VA_PASS3((yyvsp[(3) - (6)].i), SPOFILTER_PERCENT, SPO_SEL_FILTER));
@@ -5914,7 +5914,7 @@ yyreduce:
   case 375:
 
 /* Line 1455 of yacc.c  */
-#line 2476 "lev_comp.y"
+#line 2474 "lev_comp.y"
     {
                      add_opvars(splev, "io",
                               VA_PASS2(SPOFILTER_SELECTION, SPO_SEL_FILTER));
@@ -5924,7 +5924,7 @@ yyreduce:
   case 376:
 
 /* Line 1455 of yacc.c  */
-#line 2481 "lev_comp.y"
+#line 2479 "lev_comp.y"
     {
                      add_opvars(splev, "io",
                                 VA_PASS2(SPOFILTER_MAPCHAR, SPO_SEL_FILTER));
@@ -5934,7 +5934,7 @@ yyreduce:
   case 377:
 
 /* Line 1455 of yacc.c  */
-#line 2486 "lev_comp.y"
+#line 2484 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_SEL_FLOOD));
                  }
@@ -5943,7 +5943,7 @@ yyreduce:
   case 378:
 
 /* Line 1455 of yacc.c  */
-#line 2490 "lev_comp.y"
+#line 2488 "lev_comp.y"
     {
                      add_opvars(splev, "oio",
                                 VA_PASS3(SPO_COPY, 1, SPO_SEL_ELLIPSE));
@@ -5953,7 +5953,7 @@ yyreduce:
   case 379:
 
 /* Line 1455 of yacc.c  */
-#line 2495 "lev_comp.y"
+#line 2493 "lev_comp.y"
     {
                      add_opvars(splev, "oio",
                                 VA_PASS3(SPO_COPY, (yyvsp[(7) - (8)].i), SPO_SEL_ELLIPSE));
@@ -5963,7 +5963,7 @@ yyreduce:
   case 380:
 
 /* Line 1455 of yacc.c  */
-#line 2500 "lev_comp.y"
+#line 2498 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2(1, SPO_SEL_ELLIPSE));
                  }
@@ -5972,7 +5972,7 @@ yyreduce:
   case 381:
 
 /* Line 1455 of yacc.c  */
-#line 2504 "lev_comp.y"
+#line 2502 "lev_comp.y"
     {
                      add_opvars(splev, "io", VA_PASS2((yyvsp[(9) - (10)].i), SPO_SEL_ELLIPSE));
                  }
@@ -5981,7 +5981,7 @@ yyreduce:
   case 382:
 
 /* Line 1455 of yacc.c  */
-#line 2508 "lev_comp.y"
+#line 2506 "lev_comp.y"
     {
                      add_opvars(splev, "iio",
                                 VA_PASS3((yyvsp[(9) - (14)].i), (yyvsp[(3) - (14)].i), SPO_SEL_GRADIENT));
@@ -5991,7 +5991,7 @@ yyreduce:
   case 383:
 
 /* Line 1455 of yacc.c  */
-#line 2513 "lev_comp.y"
+#line 2511 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_SEL_COMPLEMENT));
                  }
@@ -6000,7 +6000,7 @@ yyreduce:
   case 384:
 
 /* Line 1455 of yacc.c  */
-#line 2517 "lev_comp.y"
+#line 2515 "lev_comp.y"
     {
                      check_vardef_type(variable_definitions, (yyvsp[(1) - (1)].map), SPOVAR_SEL);
                      vardef_used(variable_definitions, (yyvsp[(1) - (1)].map));
@@ -6012,7 +6012,7 @@ yyreduce:
   case 385:
 
 /* Line 1455 of yacc.c  */
-#line 2524 "lev_comp.y"
+#line 2522 "lev_comp.y"
     {
                      /* nothing */
                  }
@@ -6021,7 +6021,7 @@ yyreduce:
   case 386:
 
 /* Line 1455 of yacc.c  */
-#line 2530 "lev_comp.y"
+#line 2528 "lev_comp.y"
     {
                      /* nothing */
                  }
@@ -6030,7 +6030,7 @@ yyreduce:
   case 387:
 
 /* Line 1455 of yacc.c  */
-#line 2534 "lev_comp.y"
+#line 2532 "lev_comp.y"
     {
                      add_opvars(splev, "o", VA_PASS1(SPO_SEL_ADD));
                  }
@@ -6039,7 +6039,7 @@ yyreduce:
   case 388:
 
 /* Line 1455 of yacc.c  */
-#line 2540 "lev_comp.y"
+#line 2538 "lev_comp.y"
     {
                      add_opvars(splev, "iio",
                                 VA_PASS3((yyvsp[(1) - (1)].dice).num, (yyvsp[(1) - (1)].dice).die, SPO_DICE));
@@ -6049,7 +6049,7 @@ yyreduce:
   case 392:
 
 /* Line 1455 of yacc.c  */
-#line 2552 "lev_comp.y"
+#line 2550 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1((yyvsp[(1) - (1)].i)));
                  }
@@ -6058,7 +6058,7 @@ yyreduce:
   case 393:
 
 /* Line 1455 of yacc.c  */
-#line 2556 "lev_comp.y"
+#line 2554 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1((yyvsp[(1) - (1)].i)));
                  }
@@ -6067,7 +6067,7 @@ yyreduce:
   case 394:
 
 /* Line 1455 of yacc.c  */
-#line 2560 "lev_comp.y"
+#line 2558 "lev_comp.y"
     {
                      add_opvars(splev, "i", VA_PASS1((yyvsp[(1) - (1)].i)));
                  }
@@ -6076,7 +6076,7 @@ yyreduce:
   case 395:
 
 /* Line 1455 of yacc.c  */
-#line 2564 "lev_comp.y"
+#line 2562 "lev_comp.y"
     {
                      /* nothing */
                  }
@@ -6085,7 +6085,7 @@ yyreduce:
   case 404:
 
 /* Line 1455 of yacc.c  */
-#line 2586 "lev_comp.y"
+#line 2584 "lev_comp.y"
     {
                        (yyval.lregn) = (yyvsp[(1) - (1)].lregn);
                  }
@@ -6094,7 +6094,7 @@ yyreduce:
   case 405:
 
 /* Line 1455 of yacc.c  */
-#line 2590 "lev_comp.y"
+#line 2588 "lev_comp.y"
     {
                        if ((yyvsp[(3) - (10)].i) <= 0 || (yyvsp[(3) - (10)].i) >= COLNO)
                            lc_error("Region (%li,%li,%li,%li) out of level range (x1)!", (yyvsp[(3) - (10)].i), (yyvsp[(5) - (10)].i), (yyvsp[(7) - (10)].i), (yyvsp[(9) - (10)].i));
@@ -6115,7 +6115,7 @@ yyreduce:
   case 406:
 
 /* Line 1455 of yacc.c  */
-#line 2608 "lev_comp.y"
+#line 2606 "lev_comp.y"
     {
 /* This series of if statements is a hack for MSC 5.1.  It seems that its
    tiny little brain cannot compile if these are all one big if statement. */
@@ -6138,7 +6138,7 @@ yyreduce:
 
 
 /* Line 1455 of yacc.c  */
-#line 6144 "y.tab.c"
+#line 6142 "y.tab.c"
       default: break;
     }
   YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
@@ -6350,7 +6350,7 @@ yyreturn:
 
 
 /* Line 1675 of yacc.c  */
-#line 2628 "lev_comp.y"
+#line 2626 "lev_comp.y"
 
 
 /*lev_comp.y*/