Difference for common/loader.c from version 1.15 to 1.16


version 1.15 version 1.16
Line 1
 
Line 1
 /* A lexical scanner generated by flex */  /* A lexical scanner generated by flex */
   
 /* Scanner skeleton version:  /* Scanner skeleton version:
  * $Header: /cvsroot/crossfire/crossfire/common/loader.c,v 1.15 2001/10/14 07:57:14 gros Exp $   * $NetBSD: flex.skl,v 1.15 2000/06/17 11:56:21 assar Exp $
  */   */
   
 #define FLEX_SCANNER  #define FLEX_SCANNER
Line 237
 
Line 237
   
 YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));  YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
 YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));  YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
 YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));  YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, yy_size_t len ));
   
 static void *yy_flex_alloc YY_PROTO(( yy_size_t ));  
 static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));  
 static void yy_flex_free YY_PROTO(( void * ));  
   
 #define yy_new_buffer yy_create_buffer  #define yy_new_buffer yy_create_buffer
   
Line 270
 
Line 266
 extern char *yytext;  extern char *yytext;
 #define yytext_ptr yytext  #define yytext_ptr yytext
   
   static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
   #ifndef YY_USES_REJECT
   static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
   #endif
   static void yy_flex_free YY_PROTO(( void * ));
   
 static yy_state_type yy_get_previous_state YY_PROTO(( void ));  static yy_state_type yy_get_previous_state YY_PROTO(( void ));
 static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));  static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
 static int yy_get_next_buffer YY_PROTO(( void ));  static int yy_get_next_buffer YY_PROTO(( void ));
Line 285
 
Line 287
  *yy_cp = '\0'; \   *yy_cp = '\0'; \
  yy_c_buf_p = yy_cp;   yy_c_buf_p = yy_cp;
   
 #define YY_NUM_RULES 250  #define YY_NUM_RULES 251
 #define YY_END_OF_BUFFER 251  #define YY_END_OF_BUFFER 252
 static yyconst short int yy_accept[2205] =  static yyconst short int yy_accept[2216] =
     {   0,      {   0,
       249,  249,    3,    3,    0,    0,  251,  249,  247,  249,        250,  250,    3,    3,    0,    0,  252,  250,  248,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,    3,    3,    3,  250,  250,  249,        250,  250,  250,  250,    3,    3,    3,  251,  251,  250,
       249,  248,  249,  247,  249,  249,  249,  249,  249,  249,        250,  249,  250,  248,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
   
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,    3,        250,  250,  250,  250,  250,  250,  250,  250,  250,    3,
         3,    3,    3,    0,  247,  249,  249,  249,  249,  249,          3,    3,    3,    0,  248,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
   
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,   40,   40,  249,   41,   41,    3,   39,   39,  249,        250,  250,   40,   40,  250,   41,   41,    3,   39,   39,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,   13,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,   13,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,   29,   29,        250,  250,  250,  250,  250,  250,  250,  250,  250,   29,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,         29,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
   
         1,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,    1,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,   31,   31,        250,  250,  250,  250,  250,  250,  250,  250,  250,   31,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,         31,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,   38,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
        38,  249,  249,  249,  249,  249,    3,  249,  249,  249,         38,   38,  250,  250,  250,  250,  250,  250,    3,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,   26,   26,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,   24,   24,  249,  249,  249,  249,  249,   37,   37,         26,   26,  250,   24,   24,  250,  250,  250,  250,  250,
       249,   23,   23,  249,  249,  249,   35,   35,  249,  249,         37,   37,  250,   23,   23,  250,  250,  250,   35,   35,
   
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,   27,   27,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,   27,   27,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,   12,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,   12,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,   28,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
        28,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,   28,   28,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,   22,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
        22,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,   22,   22,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,   25,   25,   95,   95,  249,        250,  250,  250,  250,  250,  250,  250,  250,   25,   25,
   
         3,  249,  249,  249,  249,  249,    9,    9,  249,  249,         95,   95,  250,    3,  250,  250,  250,  250,  250,    9,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,          9,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,   21,   21,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,   21,   21,
        36,   36,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,   36,   36,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
        99,   99,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,   99,   99,  250,  250,  250,  250,  250,
         5,    5,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,    5,    5,  250,  250,  250,  250,  250,
       249,  249,  249,   42,   42,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,   42,   42,  250,  250,
   
       249,  249,  249,  249,  249,    6,    6,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,    6,    6,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,   45,   45,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,         45,   45,  250,  250,  250,  250,  250,  250,  250,  250,
         3,   57,   57,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,    3,   57,   57,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
        33,   33,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,   33,   33,  250,  250,  250,  250,
   
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,   43,   43,  249,   55,   55,        250,  250,  250,  250,  250,  250,  250,  250,  250,   43,
       249,  249,  249,   30,   30,   32,   32,  249,  249,  249,         43,  250,   55,   55,  250,  250,  250,   30,   30,   32,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,         32,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  124,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       124,  249,   18,   18,  249,  249,  249,  249,   56,   56,        250,  250,  250,  124,  124,  250,   18,   18,  250,  250,
       249,  249,  168,  168,  249,  249,  249,  249,  249,   47,        250,  250,   56,   56,  250,  250,  168,  168,  250,  250,
        47,  249,  249,  249,  249,  249,  249,  120,  120,    3,        250,  250,  250,   47,   47,  250,  250,  250,  250,  250,
         2,  249,  249,  249,  249,  128,  128,  249,  249,  249,        250,  250,  120,  120,    3,    2,  250,  250,  250,  250,
   
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        128,  128,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  161,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       161,  162,  162,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  161,  161,  162,  162,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  173,  173,  249,   66,   66,   69,   69,  249,  249,        250,  250,  250,  250,  250,  250,  173,  173,  250,   66,
       249,  249,  249,  249,  153,  153,  249,  249,  249,  249,         66,   69,   69,  250,  250,  250,  250,  250,  250,  153,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        153,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,    4,    4,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,    4,    4,  250,
   
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,   90,   90,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,   90,   90,  250,
       249,  249,  249,  249,  249,  249,   89,   89,  174,  174,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
        59,   59,  249,  249,  249,  249,   48,   48,  249,  249,        250,   89,   89,  174,  174,   59,   59,  250,  250,  250,
       249,   58,   58,  249,  249,  249,  249,  249,  249,  249,        250,  250,   48,   48,  250,  250,  250,   58,   58,  250,
       249,  193,  193,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  193,  193,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
   
        67,   67,  249,  249,  249,  249,   85,   85,  249,  249,        250,  250,  250,  250,  250,  250,   67,   67,  250,  250,
       249,  249,  249,  249,  249,  187,  187,  249,  249,  249,        250,  250,   85,   85,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,   15,   15,        250,  187,  187,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,   70,   70,  249,   60,   60,   61,        250,  250,  250,  250,   15,   15,  250,  250,  250,  250,
        61,  106,  106,  249,  249,   63,   63,   62,   62,  249,         70,   70,  250,   60,   60,   61,   61,  106,  106,  250,
       249,  249,  249,  189,  189,  249,  249,  249,  249,  249,        250,   63,   63,   62,   62,  250,  250,  250,  250,  189,
       249,  103,  103,  249,  249,  249,  249,  249,  249,  249,        189,  250,  250,  250,  250,  250,  250,  103,  103,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,    7,    7,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,    7,
   
       159,  159,  249,  249,  249,  249,  249,   64,   64,   96,          7,  250,  250,  250,  250,  250,  159,  159,  250,  250,
        96,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,   64,   64,   96,   96,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,   78,   78,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,   49,        250,  250,  250,  250,   78,   78,  250,  250,  250,  250,
        49,   83,   83,  158,  158,  249,  249,  249,  249,   88,        250,  250,  250,  250,  250,  250,   49,   49,   83,   83,
        88,  249,  249,  249,  249,  249,  249,  249,  249,  249,        158,  158,  250,  250,  250,  250,   88,   88,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,   71,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
        71,  249,  249,  249,  249,  249,  249,    8,  249,  249,        250,  250,  250,  250,  250,  250,   71,   71,  250,  250,
       183,  183,  249,  121,  121,  178,  178,  249,  249,  249,        250,  250,  250,  250,    8,  250,  250,  183,  183,  250,
       249,  249,  249,   17,   17,  249,  249,  122,  122,  249,        121,  121,  178,  178,  250,  250,  250,  250,  250,  250,
   
        46,   46,   34,   34,  249,  249,   94,   94,  249,  249,         17,   17,  250,  250,  122,  122,  250,   46,   46,   34,
       188,  188,  249,  249,  249,  249,  249,  249,  249,  249,         34,  250,  250,   94,   94,  250,  250,  188,  188,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  100,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       100,  249,  249,  249,  249,  249,  249,  249,  249,   75,        250,  250,  250,  250,  250,  250,  100,  100,  250,  250,
        75,  249,  249,   65,   65,  249,  249,   11,   11,  249,        250,  250,  250,  250,  250,  250,   75,   75,  250,  250,
       249,  249,  249,  249,  249,  110,  110,  249,  249,  249,         65,   65,  250,  250,  250,   11,   11,  250,  250,  250,
       249,  191,  191,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  110,  110,  250,  250,  250,  250,  191,
       249,  249,  249,  249,  160,  160,  105,  105,  249,   44,        191,  250,  250,  250,  250,  250,  250,  250,  250,  250,
   
        44,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  160,  160,  105,  105,  250,   44,   44,  250,
       249,  249,  249,  249,  225,  225,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,   72,   72,  249,  249,  249,        250,  250,  226,  226,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,   54,   54,  249,  249,   73,        250,  250,  250,   72,   72,  250,  250,  250,  250,  250,
        73,  249,  249,  177,  177,  249,  249,  249,   14,   14,        250,  250,  250,   54,   54,  250,  250,   73,   73,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  101,  101,        250,  177,  177,  250,  250,  250,   14,   14,  250,  250,
       249,  249,  249,  154,  154,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  101,  101,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  154,  154,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,   20,   20,  249,   84,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
   
        84,  249,  249,   98,   98,  249,  249,  249,  104,  104,        250,  250,  250,  250,   20,   20,  250,   84,   84,  250,
        76,   76,  249,   50,   50,   74,   74,  249,   87,   87,        250,   98,   98,  250,  250,  250,  250,  104,  104,   76,
       249,  249,  192,  192,  249,  249,  249,  249,  249,  249,         76,  250,   50,   50,   74,   74,  250,   87,   87,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  192,  192,  250,  250,  250,  250,  250,  250,  250,
       201,  201,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  202,
       210,  210,  249,  249,  249,  249,  249,  249,  249,  249,        202,  250,  250,  250,  250,  250,  250,  250,  250,  211,
       249,  249,  249,  231,  231,  249,  249,  249,  249,  234,        211,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       234,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  232,  232,  250,  250,  250,  250,  235,  235,
       249,   81,   81,  176,  176,  249,  249,  249,   80,   80,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,   16,   16,  249,  157,  157,  249,  107,  107,         81,   81,  176,  176,  250,  250,  250,   80,   80,  250,
   
       249,  249,  249,   10,   10,  249,  249,  249,  249,  249,        250,   16,   16,  250,  157,  157,  250,  107,  107,  250,
       249,  249,  249,   82,   82,  249,  249,  249,  249,  249,        250,  250,   10,   10,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,   82,   82,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,   19,   19,  249,   86,   86,  249,  155,  155,  108,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       108,  249,  249,  249,  249,  249,  249,  249,  249,  114,         19,   19,  250,   86,   86,  250,  155,  155,  195,  195,
       114,  249,  249,  170,  170,  249,  249,  249,  249,  249,        108,  108,  250,  250,  250,  250,  250,  250,  250,  250,
       195,  195,  249,  249,  249,  249,  249,  249,  243,  243,        114,  114,  250,  250,  170,  170,  250,  250,  250,  250,
       249,  249,  204,  204,  249,  249,  207,  207,  249,  249,        250,  196,  196,  250,  250,  250,  250,  250,  250,  244,
       249,  249,  213,  213,  249,  249,  249,  249,  249,  249,        244,  250,  250,  205,  205,  250,  250,  208,  208,  250,
   
       249,  249,  249,  249,  228,  228,  249,  249,  249,  249,        250,  250,  250,  214,  214,  250,  250,  250,  250,  250,
       237,  237,  249,  249,  249,  249,  249,  182,  182,  249,        250,  250,  250,  250,  250,  229,  229,  250,  250,  250,
       249,  249,  249,  249,  249,   68,   68,  185,  185,   79,        250,  238,  238,  250,  250,  250,  250,  250,  182,  182,
        79,  249,  249,  249,  249,  249,  123,  123,  127,  127,        250,  250,  250,  250,  250,  250,   68,   68,  185,  185,
       249,   53,   53,  249,  126,  126,  249,  186,  186,  249,         79,   79,  250,  250,  250,  250,  250,  123,  123,  127,
       249,  135,  135,  249,  249,  249,  133,  133,  249,  249,        127,  250,   53,   53,  250,  126,  126,  250,  186,  186,
       249,  249,  249,  249,  143,  143,  131,  131,  249,  249,        250,  250,  135,  135,  250,  250,  250,  133,  133,  250,
       249,  249,  249,  249,  249,  249,  140,  140,  249,  249,        250,  250,  250,  250,  250,  143,  143,  131,  131,  250,
       249,  249,  125,  125,  249,  249,  167,  167,  249,  249,        250,  250,  250,  250,  250,  250,  250,  140,  140,  250,
       249,  249,  249,  249,  172,  172,  117,  117,  249,  249,        250,  250,  250,  125,  125,  250,  250,  167,  167,  250,
   
       113,  113,  249,  249,  249,  249,  198,  198,  249,  249,        250,  250,  250,  250,  250,  172,  172,  117,  117,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  113,  113,  250,  250,  250,  250,  199,  199,  250,
       249,  249,  216,  216,  249,  249,  219,  219,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       222,  222,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  217,  217,  250,  250,  220,  220,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  223,  223,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  165,  165,  249,  249,  249,  249,   51,   51,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  151,  151,  249,  147,  147,  249,        250,  250,  250,  165,  165,  250,  250,  250,  250,   51,
       249,  146,  146,  249,  136,  136,  249,  249,  249,  249,         51,  250,  250,  250,  250,  151,  151,  250,  147,  147,
       249,  130,  130,  249,  249,  249,  249,  249,  163,  163,        250,  250,  146,  146,  250,  136,  136,  250,  250,  250,
       249,   91,   91,  249,  249,  249,  190,  190,  102,  102,        250,  250,  130,  130,  250,  250,  250,  250,  250,  163,
   
       249,  249,  249,  166,  166,  249,  249,  249,  249,  249,        163,  250,   91,   91,  250,  250,  250,  190,  190,  102,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        102,  250,  250,  250,  166,  166,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  240,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       240,  249,  249,  119,  119,  249,  169,  169,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  164,  164,  249,   97,   97,  249,   52,   52,  249,        241,  241,  250,  250,  119,  119,  250,  169,  169,  250,
       249,   93,   93,  249,  249,  249,  249,  249,  249,  249,        250,  250,  164,  164,  250,   97,   97,  250,   52,   52,
       249,  249,  249,  249,  139,  139,  249,  249,   77,   77,        250,  250,   93,   93,  250,  250,  250,  250,  250,  250,
       249,  111,  111,  194,  194,  249,  115,  115,  112,  112,        250,  250,  250,  250,  250,  139,  139,  250,  250,   77,
       116,  116,  249,  249,  249,  249,  249,  249,  249,  249,         77,  250,  111,  111,  194,  194,  250,  115,  115,  112,
   
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        112,  116,  116,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  171,  171,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       118,  118,  249,  175,  175,  181,  181,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  171,  171,
       249,  249,  145,  145,  249,  249,  249,  249,  249,  249,        250,  118,  118,  250,  175,  175,  181,  181,  250,  250,
       249,  249,  249,  156,  156,  184,  184,  249,  249,  249,        250,  250,  250,  145,  145,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  156,  156,  184,  184,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  179,  179,  249,  109,  109,   92,   92,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
   
       249,  249,  249,  138,  138,  149,  149,  150,  150,  152,        250,  250,  250,  179,  179,  250,  109,  109,   92,   92,
       152,  141,  141,  129,  129,  249,  249,  249,  249,  249,        250,  250,  250,  250,  138,  138,  149,  149,  150,  150,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        152,  152,  141,  141,  129,  129,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  226,  226,  249,  249,  249,  249,  249,  249,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  180,  180,  249,  134,  134,  249,  249,        250,  250,  227,  227,  250,  250,  250,  250,  250,  250,
       249,  249,  249,  249,  249,  249,  249,  249,  202,  202,        250,  250,  250,  250,  180,  180,  250,  134,  134,  250,
       249,  249,  249,  249,  249,  249,  249,  211,  211,  249,        250,  250,  250,  250,  250,  250,  250,  250,  250,  203,
       249,  249,  249,  249,  249,  249,  249,  227,  227,  249,        203,  250,  250,  250,  250,  250,  250,  250,  212,  212,
       249,  249,  232,  232,  249,  249,  249,  235,  235,  249,        250,  250,  250,  250,  250,  250,  250,  250,  228,  228,
   
       249,  249,  249,  249,  249,  249,  249,  249,  196,  196,        250,  250,  250,  233,  233,  250,  250,  250,  236,  236,
       249,  249,  203,  203,  249,  244,  244,  249,  205,  205,        250,  250,  250,  250,  250,  250,  250,  250,  250,  197,
       249,  208,  208,  212,  212,  249,  214,  214,  249,  249,        197,  250,  250,  204,  204,  250,  245,  245,  250,  206,
       249,  249,  249,  249,  249,  229,  229,  233,  233,  249,        206,  250,  209,  209,  213,  213,  250,  215,  215,  250,
       238,  238,  236,  236,  249,  249,  249,  249,  132,  132,        250,  250,  250,  250,  250,  250,  230,  230,  234,  234,
       142,  142,  137,  137,  249,  197,  197,  249,  199,  199,        250,  239,  239,  237,  237,  250,  250,  250,  250,  132,
       245,  245,  206,  206,  209,  209,  215,  215,  249,  217,        132,  142,  142,  137,  137,  250,  198,  198,  250,  200,
       217,  249,  220,  220,  249,  223,  223,  230,  230,  239,        200,  246,  246,  207,  207,  210,  210,  216,  216,  250,
       239,  249,  249,  144,  144,  148,  148,  249,  200,  200,        218,  218,  250,  221,  221,  250,  224,  224,  231,  231,
       218,  218,  221,  221,  224,  224,  249,  241,  241,  246,        240,  240,  250,  250,  144,  144,  148,  148,  250,  201,
   
       246,  242,  242,    0        201,  219,  219,  222,  222,  225,  225,  250,  242,  242,
         247,  247,  243,  243,    0
     } ;      } ;
   
 static yyconst int yy_ec[256] =  static yyconst int yy_ec[256] =
Line 574
 
Line 577
         1,    1,    1          1,    1,    1
     } ;      } ;
   
 static yyconst short int yy_base[2452] =  static yyconst short int yy_base[2464] =
     {   0,      {   0,
         0,    6,   37,   38,   39,   43, 2475,    0, 2476, 2471,          0,    6,   37,   38,   39,   43, 2487,    0, 2488, 2483,
         0,   41,   35,   48,   45,   44,   59,   60,   66,   66,          0,   41,   35,   48,   45,   44,   59,   60,   66,   66,
      2452,   82,   75,   83,   79,   91,  103,  122,  105, 2451,       2464,   82,   75,   83,   79,   91,  103,  122,  105, 2463,
        94,  117,   46, 2469,    0,   91, 2449, 2476,  107,    0,         94,  117,   46, 2481,    0,   91, 2461, 2488,  107,    0,
      2466, 2476,  118,    0, 2466, 2451, 2450, 2442,   94, 2437,       2478, 2488,  118,    0, 2478, 2463, 2462, 2454,   94, 2449,
      2436, 2450, 2439,  103, 2452, 2438, 2433, 2437, 2425, 2430,       2448, 2462, 2451,  103, 2464, 2450, 2445, 2449, 2437, 2442,
      2438, 2442, 2440, 2428, 2440, 2417, 2426, 2431, 2425, 2423,       2450, 2454, 2452, 2440, 2452, 2429, 2438, 2443, 2437, 2435,
      2436, 2417, 2415, 2439, 2428, 2419,  109, 2431, 2415, 2410,       2448, 2429, 2427, 2451, 2440, 2431,  109, 2443, 2427, 2422,
      2406, 2421, 2423,  121,  121, 2418, 2411, 2418, 2422, 2406,       2418, 2433, 2435,  121,  121, 2430, 2423, 2430, 2434, 2418,
      2410,   40, 2411,   92, 2415, 2394, 2401,  130,  130, 2401,       2422,   40, 2423,   92, 2427, 2406, 2413,  130,  130, 2413,
   
      2413, 2408,  145,  142,  147, 2411, 2391, 2405, 2393,  152,       2425, 2420,  145,  142,  147, 2423, 2403, 2417, 2405,  152,
      2396, 2395,  139, 2411, 2396,  143, 2409, 2402, 2407,    0,       2408, 2407,  139, 2423,  154,  145, 2422, 2415, 2420,    0,
       168,    0, 2397,  169, 2476, 2405, 2377, 2385, 2385, 2388,        164,    0, 2410,  171, 2488, 2418, 2390, 2398, 2398, 2401,
      2380, 2393, 2378, 2378, 2388, 2390, 2371,  145,  175,  153,       2393, 2406, 2391, 2391, 2401, 2403, 2384,  172,  175,  154,
       162, 2393, 2382, 2366,  178, 2371,  180, 2379,  177, 2379,        179, 2406, 2395, 2379,  180, 2384,  183, 2392,  179, 2392,
      2377, 2376, 2357, 2376, 2378, 2375, 2381, 2361, 2353, 2378,       2390, 2389, 2370, 2389, 2391, 2388, 2394, 2374, 2366, 2391,
       178,  195, 2349, 2351, 2365, 2364, 2357, 2358, 2361, 2360,        182,  196, 2362, 2364, 2378, 2377, 2370, 2371, 2374, 2373,
       172, 2345, 2358, 2357,  189, 2356, 2356,  215, 2353, 2353,        199, 2358, 2371, 2370,  188, 2369, 2369,  216, 2366, 2366,
      2357, 2331, 2350, 2335, 2345, 2341, 2356, 2330, 2344, 2344,       2370, 2344, 2363, 2348, 2358, 2354, 2369, 2343, 2357, 2357,
      2335, 2337, 2345, 2326, 2343, 2317, 2336, 2317, 2344, 2333,       2348, 2350, 2358, 2339, 2356, 2330, 2349, 2330, 2357, 2346,
   
      2328,  174, 2335, 2340, 2316, 2321, 2331, 2326, 2323, 2324,       2341,  191, 2348, 2353, 2329, 2334, 2344, 2339, 2336, 2337,
      2311, 2326, 2305, 2311, 2313, 2323, 2327, 2314, 2308, 2324,       2324, 2339, 2318, 2324, 2326, 2336, 2340, 2318, 2326, 2320,
      2323,    0, 2322, 2291,    0, 2320, 2301,    0, 2318, 2307,       2336, 2335,    0, 2334, 2303,    0, 2332, 2313,    0, 2330,
       204,  181, 2316, 2289, 2306, 2308, 2307, 2295,  234, 2280,       2319,  212,  176, 2328, 2301, 2318, 2320, 2319, 2307,  235,
      2309, 2296, 2307, 2280, 2295, 2298, 2293, 2292, 2301, 2290,       2292, 2321, 2308, 2319, 2292, 2307, 2310, 2305, 2304, 2313,
      2299, 2290, 2291,  212, 2476, 2271, 2295, 2268, 2293, 2272,       2302, 2311, 2302, 2303,  219, 2488, 2283, 2307, 2280, 2305,
      2272, 2290, 2270, 2265, 2282, 2276, 2262, 2278,    0, 2283,       2284, 2284, 2302, 2282, 2277, 2294, 2288, 2274, 2290,    0,
      2257, 2262, 2280, 2262, 2259, 2253, 2257, 2258, 2268, 2247,       2295, 2269, 2274, 2292, 2274, 2271, 2265, 2269, 2270, 2280,
      2255, 2257,  192, 2246, 2249, 2249, 2262, 2249, 2241, 2264,       2259, 2267, 2269,  169, 2258, 2261, 2261, 2274, 2261, 2253,
      2255, 2257, 2238, 2237, 2238, 2237, 2232,  214, 2251,  216,       2276, 2267, 2269, 2250, 2249, 2250, 2249, 2244,  228, 2263,
   
      2476, 2255, 2249, 2230, 2238, 2245,  221,  203, 2250, 2241,        230, 2488, 2267, 2261, 2242, 2250, 2257,  232,  183, 2262,
      2235, 2242, 2223, 2240, 2239, 2238, 2242, 2231, 2240, 2219,       2253, 2247, 2254, 2235, 2252, 2251, 2250, 2254, 2243, 2252,
      2228, 2213, 2230, 2225,  216, 2220, 2212, 2227,    0, 2231,       2231, 2240, 2225, 2242, 2237,  233, 2232, 2224, 2239,    0,
      2221, 2204, 2219, 2202, 2216, 2208, 2224, 2218, 2212, 2197,       2243, 2233, 2216, 2231, 2214, 2228, 2220, 2236, 2230, 2224,
      2220, 2207, 2212, 2191, 2202, 2205, 2204, 2208, 2184,    0,       2209, 2232, 2219, 2224, 2203, 2214, 2217, 2216, 2220, 2196,
      2211, 2197, 2204, 2208, 2207, 2182, 2181, 2204, 2179, 2177,          0, 2223, 2202, 2208, 2215, 2219, 2218, 2193, 2192, 2215,
      2191, 2195, 2199, 2175, 2181, 2190, 2189, 2170, 2172,  181,       2190, 2188, 2202, 2206, 2210, 2186, 2192, 2201, 2200, 2181,
      2186, 2173, 2171, 2183, 2168, 2177, 2162, 2171,    0, 2184,       2183,  207, 2197, 2184, 2182, 2194, 2179, 2188, 2173, 2182,
      2169,    0, 2182, 2157, 2172, 2165, 2159, 2168,    0, 2176,          0, 2195, 2180,    0, 2193, 2168, 2183, 2176, 2170, 2179,
      2166,    0, 2174, 2148, 2165, 2166,    0, 2170, 2152, 2168,          0, 2187, 2177,    0, 2185, 2159, 2176, 2177,    0, 2181,
   
       218, 2155, 2166, 2156, 2158, 2140, 2162, 2151, 2152, 2145,       2163, 2179,  231, 2166, 2177, 2167, 2169, 2151, 2173, 2162,
      2148,    0, 2157, 2136, 2130, 2140, 2139, 2138, 2125, 2126,       2163, 2156, 2159,    0, 2168, 2147, 2141, 2151, 2150, 2149,
      2129, 2131, 2124, 2123, 2135, 2124, 2138,  239, 2142, 2135,       2136, 2137, 2140, 2142, 2135, 2134, 2146, 2135, 2149,  250,
      2140, 2139, 2124, 2123, 2130, 2135, 2134, 2123,  231, 2476,       2153, 2146, 2151, 2150, 2135, 2134, 2141, 2146, 2145, 2134,
      2108, 2131,  232, 2110, 2100, 2116, 2103, 2118, 2115, 2110,        235, 2488, 2119, 2142,  239, 2121, 2111, 2127, 2114, 2129,
       224, 2123, 2097, 2107, 2114, 2114, 2093,  247, 2091,    0,       2126, 2121,  242, 2134, 2108, 2118, 2125, 2125, 2104,  248,
      2116, 2107, 2114, 2095, 2104, 2086, 2082, 2100, 2089, 2088,       2102,    0, 2127, 2118, 2125, 2106, 2115, 2097, 2093, 2111,
      2087, 2105, 2086,  254, 2078, 2097, 2091, 2100, 2074,    0,       2100, 2099, 2098, 2116, 2097,  264, 2089, 2108, 2102, 2111,
      2098, 2088, 2096, 2069, 2094, 2070, 2083, 2081, 2081, 2089,       2085,    0, 2109, 2099, 2107, 2080, 2105, 2081, 2094, 2092,
      2065, 2067, 2072, 2060, 2078,    0, 2083,    0, 2082, 2081,       2092, 2100, 2076, 2078, 2083, 2077, 2070, 2088,    0, 2093,
   
      2068, 2079, 2057, 2063, 2067, 2055,    0, 2074, 2073,  220,          0, 2092, 2091, 2078, 2089, 2067, 2073, 2077, 2065,    0,
      2051, 2050, 2043, 2048, 2044, 2042, 2048, 2044, 2044,  238,       2084, 2083,  243, 2061, 2060, 2053, 2058, 2054, 2052, 2058,
      2046, 2052, 2051, 2041, 2040, 2048, 2032, 2037, 2030, 2054,       2054, 2054,  243, 2056, 2062, 2061, 2051, 2050, 2058, 2042,
      2053, 2038, 2034,  265, 2050,    0, 2049, 2037, 2047, 2046,       2047, 2040, 2064, 2063, 2048, 2044,  269, 2060,    0, 2059,
         0, 2045, 2027, 2018, 2036, 2041, 2034, 2023, 2027, 2037,       2047, 2057, 2056,    0, 2055, 2037, 2028, 2046, 2051, 2044,
      2028, 2015, 2027, 2015, 2013, 2014, 2005, 2009, 2011, 2007,       2033, 2037, 2047, 2038, 2025, 2037, 2025, 2023, 2024, 2015,
      2007, 2016, 2015,  257, 2017, 1999, 2011, 1999, 2019, 1991,       2019, 2021, 2017, 2017, 2026, 2025,  262, 2027, 2009, 2021,
         0, 2017, 2016, 1996, 2008, 2005, 2012, 2011, 1987, 1984,       2009, 2029, 2001,    0, 2027, 2026, 2006, 2018, 2015, 2022,
         0, 2008, 1988, 1996, 1984, 1999, 1989, 1978, 1985, 1975,       2021, 1997, 1994,    0, 2018, 1998, 2006, 1994, 2009, 1999,
      1982, 1992, 1987,    0, 1996, 1995, 1969, 1968, 1986, 1978,       1988, 1995, 1985, 1992, 2002, 1997,    0, 2006, 2005, 1979,
   
      1965, 1979, 1978, 1966, 1961,    0, 1985,  262, 1959, 1978,       1978, 1996, 1988, 1975, 1989, 1988, 1976, 1971,    0, 1995,
      1976, 1981, 1950, 1952, 1966, 1977, 1956, 1975,   39,   64,        267, 1969, 1988, 1986, 1991, 1960, 1962, 1976, 1987,   36,
        77,  102,  241,  251,  246,  268,  246,    0,  277,  268,         78,   84,  110,  121,  163,  197,  202,  206,  232,  250,
       279,  280,  281,  283,  278,  274,  256,  291,  271,  294,          0,  279,  272,  283,  284,  285,  287,  282,  278,  260,
       295,    0,  297,  288,  279,  300,  282,  302,  285,  274,        270,  296,  277,  299,  300,    0,  302,  293,  284,  305,
       284,  285,  293,  291,  284,  310,  306,  306,  305,  291,        287,  307,  290,  279,  289,  290,  298,  296,  289,  315,
       291,  299,  312,  313,  307,  308,  312,  312,  313,  319,        311,  311,  310,  296,  296,  304,  317,  318,  312,  313,
       325,  326,  307,  318,  308,  310,  314,  322,  314,  321,        317,  317,  318,  324,  330,  331,  312,  323,  313,  315,
       326,  333,  328,  340,  343,  344,  347,  318,  329,  341,        319,  327,  319,  326,  331,  338,  333,  345,  348,  349,
         0,  352,  344,  354,  341,  356,  341,  335,  342,  354,        352,  323,  334,  346,    0,  357,  349,  359,  346,  361,
   
       352,  353,  363,  341,  335,  338,  361,  363,  359,  344,        346,  340,  347,  359,  357,  358,  368,  346,  340,  343,
       365,  347,  367,  368,  375,    0,  376,  367,    0,  378,        366,  368,  364,  349,  370,  352,  372,  373,  380,    0,
       352,  363,  371,    0,  382,    0,  383,  384,  379,  386,        381,  372,    0,  383,  357,  368,  376,    0,  387,    0,
       387,  388,  368,  382,  391,  392,  383,  377,  378,  377,        388,  389,  384,  391,  392,  393,  373,  387,  396,  397,
       397,  398,  374,  377,  378,  377,  384,  383,  405,  396,        388,  382,  383,  382,  402,  403,  379,  382,  383,  382,
       389,  383,  404,  413,  380,  411,  384,  399,  414,    0,        389,  388,  410,  401,  394,  388,  409,  418,  385,  416,
       415,  389,    0,  417,  418,  410,  405,  406,    0,  433,        389,  404,  419,    0,  420,  394,    0,  422,  423,  415,
       435,  408,    0,  439,  430,  418,  443,  444,  445,    0,        410,  411,    0,  438,  440,  413,    0,  444,  435,  423,
       446,  440,  437,  449,  450,  451,  431,    0,  453,  454,        448,  449,  450,    0,  451,  445,  442,  454,  455,  426,
      2476,  446,  438,  458,  451,    0,  460,  441,  441,  446,        457,  437,    0,  459,  460, 2488,  452,  444,  464,  457,
   
       447,  455,  436,  462,  468,  463,  453,  455,  442,  468,          0,  466,  447,  447,  452,  453,  461,  442,  468,  474,
       474,  461,  470,  478,  479,  480,  472,  459,  456,    0,        469,  459,  461,  448,  474,  480,  467,  476,  484,  485,
       485,    0,  486,  468,  488,  468,  465,  468,  472,  489,        486,  478,  465,  462,    0,  491,    0,  492,  474,  494,
       490,  477,  487,  492,  483,  472,  483,  487,  482,  488,        474,  471,  474,  478,  495,  496,  483,  493,  498,  489,
       493,    0,  508,  509,    0,  510,    0,  511,  512,  490,        478,  489,  493,  488,  494,  499,    0,  514,  515,    0,
       500,  485,  516,  507,    0,  518,  509,  490,  511,  497,        516,    0,  517,  518,  496,  506,  491,  522,  513,    0,
       523,  501,  525,  526,  527,  509,  522,  504,  522,  509,        524,  515,  496,  517,  503,  529,  507,  531,  532,  533,
       521,  534,  527,  519,  537,  538,  525,  540,  541,  542,        515,  528,  510,  528,  515,  527,  540,  533,  525,  543,
       518,  544,  545,  546,  530,  548,  549,  550,  522,  547,        544,  531,  546,  547,  548,  524,  550,  551,  552,  536,
       553,  542,    0,  555,  556,  551,  550,  533,  534,  547,        554,  555,  556,  528,  553,  559,  548,    0,  561,  562,
   
       552,  563,  555,  545,  556,  549,  549,  561,  553,  565,        557,  556,  539,  540,  553,  558,  569,  561,  551,  562,
       564,  555,  565,  563,  557,  561,  575,  576,  567,  560,        555,  555,  567,  559,  571,  570,  561,  571,  569,  563,
       578,  590,    0,  591,  579,  569,  594,  585,  586,  586,        567,  581,  582,  573,  566,  584,  596,    0,  597,  585,
       585,  586,  601,  583,  603,  580,    0,  605,    0,  606,        575,  600,  591,  592,  592,  591,  592,  607,  589,  609,
         0,  607,  591,  609,  610,  611,    0,  612,  596,  605,        586,    0,  611,    0,  612,    0,  613,  597,  615,  616,
       615,    0,  616,  607,  591,  609,  590,  607,  594,  623,        617,  597,    0,  619,  603,  612,  622,    0,  623,  614,
       600,    0,  625,  603,  617,  621,  629,  605,  631,  613,        598,  616,  597,  614,  601,  630,  607,    0,  632,  610,
       610,  614,  615,  622,  629,  633,  638,  640,  641,  644,        624,  628,  636,  612,  638,  620,  617,  621,  622,  629,
       646,  637,  648,  649,  633,  645,  633,  629,  630,  630,        636,  640,  645,  647,  648,  651,  653,  644,  655,  656,
       635,  643,  642,  639,  660,  635,  645,  644,  656,  655,        640,  652,  640,  636,  637,  637,  642,  650,  649,  646,
   
         0,  668,  669,  670,  645,  667,    0,  673,  665,  666,        667,  642,  652,  651,  663,  662,    0,  675,  676,  677,
       675,  677,  668,  679,  660,    0,  681,  682,  683,  684,        652,  674,    0,  680,  672,  673,  682,  684,  675,  686,
       668,  665,  687,  664,  675,  690,  681,  692,    0,  693,        667,    0,  688,  689,  690,  691,  675,  672,  694,  671,
       694,  671,  696,  697,    0,  698,  689,    0,  700,    0,        682,  697,  688,  699,    0,  700,  701,  678,  703,  704,
       701,    0,  702,  697,  704,    0,  705,    0,  706,  682,          0,  705,  696,    0,  707,    0,  708,    0,  709,  704,
       694,  709,  685,    0,  711,  704,  700,  714,  696,  706,        711,    0,  712,    0,  713,  689,  701,  716,  692,    0,
       700,    0,  718,  719,  693,  703,  708,  702,  712,  711,        718,  711,  707,  721,  703,  713,  707,    0,  725,  726,
       712,  708,  722,  712,  724,  726,  723,  728,  712,  716,        700,  710,  715,  709,  719,  718,  719,  715,  729,  719,
       728,  722,  715,  729,  719,  713,  730,  726,  724,  742,        731,  733,  730,  735,  719,  723,  735,  729,  722,  736,
       749,  740,  737,    0,  752,  753,  729,  755,  739,  736,        726,  720,  737,  733,  731,  749,  756,  747,  744,    0,
   
         0,  758,  759,  760,  747,  752,  763,    0,  764,    0,        759,  760,  736,  762,  746,  743,    0,  765,  766,  767,
       765,  736,  767,  768,  769,  760,  771,  772,  763,  774,        754,  759,  770,    0,  771,    0,  772,  763,  744,  775,
       775,  755,  759,  778,  773,  780,  768,    0,  782,  778,        776,  777,  768,  779,  780,  771,  782,  783,  763,  767,
       766,  757,  763,  768,  779,  766,  776,  772,  786,    0,        786,  781,  788,  776,    0,  790,  786,  774,  765,  771,
       793,    0,  794,    0,  795,  796,  797,  792,  799,    0,        776,  787,  774,  784,  780,  794,    0,  801,    0,  802,
       800,  771,  794,  803,  794,  792,  793,  807,  790,  784,          0,  803,  804,  805,  800,  807,    0,  808,  779,  802,
       785,  786,  814,  795,  792,  818,  791,  820,  809,    0,        811,  802,  800,  801,  815,  798,  792,  793,  794,  822,
       822,  824,  802,  820,  828,  829,  829, 2476,  831,  823,        803,  800,  826,  799,  828,  817,    0,  830,  832,  810,
         0,  834,  816,    0,  836,    0,  837,  838,  829,  840,        828,  836,  837,  837, 2488,  839,  831,    0,  842,  824,
       841,  832,  837,    0,  846,  847,  849,    0,  850,  837,          0,  844,    0,  845,  846,  837,  848,  849,  840,  845,
   
         0,  852,    0,  853,  854,  825,    0,  856,  857,  849,          0,  854,  855,  857,    0,  858,  845,    0,  860,    0,
         0,  859,  847,  845,  862,  863,  854,  856,  849,  867,        861,  862,  833,    0,  864,  865,  857,    0,  867,  855,
       858,  845,  846,  861,  872,  864,  855,  867,  856,  868,        853,  870,  871,  862,  864,  857,  875,  866,  853,  854,
       867,  860,  855,  864,  868,  875,  861,  875,  862,  866,        869,  880,  872,  863,  875,  864,  876,  875,  868,  863,
       858,  879,  876,  885,  868,  869,  866,  876,  875,    0,        872,  876,  883,  869,  883,  870,  874,  866,  887,  884,
       897,  875,  892,  900,  901,  902,  886,  904,  905,    0,        893,  876,  877,  874,  884,  883,    0,  905,  883,  900,
       906,  880,  908,    0,  909,  910,  911,    0,  912,  913,        908,  909,  910,  894,  912,  913,    0,  914,  888,  916,
       896,  915,  916,  908,  918,    0,  919,  910,  901,  922,          0,  917,  918,  919,  920,    0,  921,  922,  905,  924,
       915,    0,  924,  902,  917,  907,  928,  910,  918,  931,        925,  917,  927,    0,  928,  919,  910,  931,  924,    0,
       912,  916,  925,  914,    0,  936,    0,  937,  917,    0,        933,  911,  926,  916,  937,  919,  927,  940,  921,  925,
   
       939,  940,  925,  942,  923,  946,  947,  948,  949,  934,        934,  923,    0,  945,    0,  946,  926,    0,  948,  949,
       956,  925,  936,  948,    0,  959,  939,  945,  963,  964,        934,  951,  932,  955,  956,  957,  958,  943,  965,  934,
       945,  967,  969,  950,  963,    0,  974,  975,  956,  957,        945,  957,    0,  968,  948,  954,  972,  973,  954,  976,
       958,  963,  974,  981,  982,    0,  983,  985,  986,    0,        978,  959,  972,    0,  983,  984,  965,  966,  967,  972,
       987,  988,  989,    0,  990,  982,  986,  993,    0,  994,        983,  990,  991,    0,  992,  994,  995,    0,  996,  997,
       988,  996,  987,  998,  989, 1000, 1001, 1002,    0, 1003,        998,    0,  999,  991,  995, 1002,    0, 1003,  997, 1005,
       995, 1005,  996,    0, 1007, 1008, 1009,  986,  994, 1012,        996, 1007,  998, 1009, 1010, 1011,    0, 1012, 1004, 1014,
      1013, 1005, 1005,  992, 1017,  992,  994, 1007, 1011, 1003,       1005,    0, 1016, 1017, 1018,  995, 1003, 1021, 1022, 1014,
       998, 1024, 1025, 1002, 1008, 1001, 1007, 1023, 1015, 1019,       1014, 1001, 1026, 1001, 1003, 1016, 1020, 1012, 1007, 1033,
      1014, 1035, 1031, 1017, 1028, 1022,    0, 1040, 1041,    0,       1034, 1011, 1017, 1010, 1016, 1032, 1024, 1028, 1023, 1044,
   
      1042, 1043, 1044,    0, 1045, 1036, 1047, 1048,    0, 1049,       1040, 1026, 1037, 1031,    0, 1049, 1050,    0, 1051, 1052,
         0, 1050, 1041,    0, 1052,    0, 1053, 1054,    0, 1055,       1053,    0, 1054, 1045, 1056, 1057, 1058,    0, 1059,    0,
      1039, 1031,    0, 1058, 1043, 1034, 1055, 1036, 1063, 1064,       1060, 1051,    0, 1062,    0, 1063, 1064,    0, 1065, 1049,
      1065, 1066, 1050, 1051, 1069, 1050, 1051, 1072, 1053, 1075,       1041,    0, 1068, 1053, 1044, 1065, 1046, 1073, 1074, 1075,
         0, 1076, 1056, 1061, 1079, 1061, 1083, 1064, 1086, 1067,       1076, 1060, 1061, 1079, 1060, 1061, 1082, 1063, 1085,    0,
         0, 1089, 1069, 1074, 1092, 1073, 1095, 1096, 1097, 1073,       1086, 1066, 1071, 1089, 1071, 1093, 1074, 1096, 1077,    0,
      1073, 1103, 1084,    0, 1106, 1086, 1091, 1109, 1090,    0,       1099, 1079, 1084, 1102, 1083, 1105, 1106, 1107, 1083, 1083,
      1112, 1092, 1097, 1092, 1116, 1089, 1095, 1110, 1106, 1102,       1113, 1094,    0, 1116, 1096, 1101, 1119, 1100,    0, 1122,
      1116,    0, 1123,    0, 1124, 1125, 1126, 1127,    0, 1128,       1102, 1107, 1102, 1126, 1099, 1105, 1120, 1116, 1112, 1126,
      1129, 1113,    0, 1131, 1115,    0, 1133, 1111,    0, 1135,          0, 1133,    0, 1134, 1135, 1136, 1137,    0, 1138, 1139,
   
      1117, 1137, 1138,    0, 1139, 1140, 1141, 1133, 1143, 1134,       1123,    0, 1141, 1125,    0, 1143, 1121,    0, 1145, 1127,
      1145, 1132, 1130,    0, 1148, 1149, 1150, 1134, 1152, 1153,       1147, 1148,    0, 1149, 1150, 1151, 1143, 1153, 1144, 1155,
      1130, 1145, 1156, 1132, 1158, 1136, 1160, 1161, 1149, 1135,       1142, 1140,    0, 1158, 1159, 1160, 1144, 1162, 1163, 1140,
      1144, 1146, 1166, 1137, 1160, 1150, 1170, 1145, 1153, 1173,       1155, 1166, 1142, 1168, 1146, 1170, 1171, 1159, 1145, 1154,
      1164,    0, 1175, 1176,    0, 1177, 1178,    0, 1179,    0,       1156, 1176, 1147, 1170, 1160, 1180, 1155, 1163, 1183, 1174,
      1180, 1162, 1182, 1166, 1161, 1185, 1186, 1164, 1165,    0,          0, 1185, 1186,    0, 1187, 1188,    0, 1189,    0, 1190,
      1189, 1190, 1191,    0, 1192, 1176, 1194, 1195, 1177, 1178,          0, 1191, 1173, 1193, 1177, 1172, 1196, 1197, 1175, 1176,
         0, 1198, 1178, 1183, 1201, 1182, 1179, 1179,    0, 1206,          0, 1200, 1201, 1202,    0, 1203, 1187, 1205, 1206, 1188,
      1186, 1191,    0, 1209, 1189, 1194,    0, 1212, 1192, 1197,       1189,    0, 1209, 1189, 1194, 1212, 1193, 1190, 1190,    0,
      1190, 1190,    0, 1217, 1197, 1202, 1220, 1201, 1223, 1204,       1217, 1197, 1202,    0, 1220, 1200, 1205,    0, 1223, 1203,
   
      1226, 1207, 1215, 1218,    0, 1231, 1211, 1216, 1209, 1209,       1208, 1201, 1201,    0, 1228, 1208, 1213, 1231, 1212, 1234,
         0, 1236, 1216, 1221, 1214, 1214, 1241,    0, 1242, 1243,       1215, 1237, 1218, 1226, 1229,    0, 1242, 1222, 1227, 1220,
      1225, 1245, 1230, 1239, 1228,    0, 1250,    0, 1251,    0,       1220,    0, 1247, 1227, 1232, 1225, 1225, 1252,    0, 1253,
      1252, 1253, 1254, 1245, 1256, 1232,    0, 1258,    0, 1259,       1254, 1236, 1256, 1241, 1250, 1239,    0, 1261,    0, 1262,
      1260,    0, 1261, 1262,    0, 1263, 1245,    0, 1265, 1249,          0, 1263, 1264, 1265, 1256, 1267, 1243,    0, 1269,    0,
      1267,    0, 1268, 1269, 1253, 1271,    0, 1272, 1259, 1251,       1270, 1271,    0, 1272, 1273,    0, 1274, 1256,    0, 1276,
      1275, 1266, 1277, 1264,    0, 1279,    0, 1280, 1267, 1272,       1260, 1278,    0, 1279, 1280, 1264, 1282,    0, 1283, 1270,
      1260, 1278, 1285, 1255, 1281, 1288,    0, 1289, 1271, 1273,       1262, 1286, 1277, 1288, 1275,    0, 1290,    0, 1291, 1278,
      1292, 1293,    0, 1294, 1295, 1271,    0, 1297, 1298, 1299,       1283, 1271, 1289, 1296, 1266, 1292, 1299,    0, 1300, 1282,
      1300, 1301, 1286, 1303,    0, 1304,    0, 1305, 1306, 1307,       1284, 1303, 1304,    0, 1305, 1306, 1282,    0, 1308, 1309,
   
         0, 1308, 1309, 1305, 1286, 1286,    0, 1313, 1293, 1298,       1310, 1311, 1312, 1297, 1314,    0, 1315,    0, 1316, 1317,
      1302, 1305, 1293, 1293, 1295, 1295, 1297, 1297, 1310, 1313,       1318,    0, 1319, 1320, 1316, 1297, 1297,    0, 1324, 1304,
      1301, 1301,    0, 1328, 1308, 1313,    0, 1331, 1311, 1316,       1309, 1313, 1316, 1304, 1304, 1306, 1306, 1308, 1308, 1321,
         0, 1334, 1314, 1319, 1317, 1324, 1314, 1314, 1327, 1330,       1324, 1312, 1312,    0, 1339, 1319, 1324,    0, 1342, 1322,
      1318, 1318, 1331, 1334, 1347, 1328, 1350, 1351, 1352, 1336,       1327,    0, 1345, 1325, 1330, 1328, 1335, 1325, 1325, 1338,
      1354, 1335,    0, 1356, 1357, 1358, 1359, 1360,    0, 1361,       1341, 1329, 1329, 1342, 1345, 1358, 1339, 1361, 1362, 1363,
      1362, 1338, 1354, 1365,    0, 1366, 1361,    0, 1368, 1349,       1347, 1365, 1346,    0, 1367, 1368, 1369, 1370, 1371,    0,
      1346,    0, 1371, 1372,    0, 1373, 1366, 1350, 1353, 1368,       1372, 1373, 1349, 1365, 1376,    0, 1377, 1372,    0, 1379,
      1361,    0, 1379, 1370, 1364, 1382, 1374, 1378,    0, 1385,       1360, 1357,    0, 1382, 1383,    0, 1384, 1377, 1361, 1364,
      1386,    0, 1387, 1388, 1389, 1390,    0, 1391,    0, 1392,       1379, 1372,    0, 1390, 1381, 1375, 1393, 1385, 1389,    0,
   
      1393, 1394, 1395,    0, 1396, 1397, 1374, 1385, 1388, 1376,       1396, 1397,    0, 1398, 1399, 1400, 1401,    0, 1402,    0,
      1376, 1383, 1390, 1391, 1394, 1393, 1396, 1395, 1398, 1391,       1403, 1404, 1405, 1406,    0, 1407, 1408, 1385, 1396, 1399,
      1398, 1399, 1402, 1390, 1390, 1392, 1392, 1394, 1394, 1402,       1387, 1387, 1394, 1401, 1402, 1405, 1404, 1407, 1406, 1409,
      1403, 1409, 1412, 1405, 1412, 1413, 1416, 1409, 1416,    0,       1402, 1409, 1410, 1413, 1401, 1401, 1403, 1403, 1405, 1405,
      1431, 1411, 1416,    0, 1434, 1435,    0, 1436, 1437, 1438,       1413, 1414, 1420, 1423, 1416, 1423, 1424, 1427, 1420, 1427,
      1420,    0, 1440, 1441,    0, 1442, 1443,    0, 1444, 1445,          0, 1442, 1422, 1427,    0, 1445, 1446,    0, 1447, 1448,
      1446,    0, 1447, 1423, 1430, 1429, 1451, 1438, 1453, 1454,       1449, 1431,    0, 1451, 1452,    0, 1453, 1454,    0, 1455,
      1455, 1456, 1457, 1458,    0, 1459, 1450, 1449,    0, 1462,       1456, 1457,    0, 1458, 1434, 1441, 1440, 1462, 1449, 1464,
      1463,    0, 1464,    0, 1465, 1466,    0, 1467,    0, 1468,       1465, 1466, 1467, 1468, 1469,    0, 1470, 1461, 1460,    0,
         0, 1469, 1462, 1451, 1458, 1459, 1462, 1456, 1457, 1457,       1473, 1474,    0, 1475,    0, 1476, 1477,    0, 1478,    0,
   
      1464, 1459, 1466, 1461, 1468, 1464, 1465, 1465, 1472, 1473,       1479,    0, 1480, 1473, 1462, 1469, 1470, 1473, 1467, 1468,
      1476, 1475, 1478, 1477, 1480, 1469, 1494, 1475, 1482, 1478,       1468, 1475, 1470, 1477, 1472, 1479, 1475, 1476, 1476, 1483,
      1479, 1479, 1486, 1482, 1483, 1478, 1478,    0, 1505, 1506,       1484, 1487, 1486, 1489, 1488, 1491, 1480, 1505, 1486, 1493,
         0, 1507, 1508,    0, 1509,    0, 1510, 1511, 1512, 1499,       1489, 1490, 1490, 1497, 1493, 1494, 1489, 1489,    0, 1516,
      1514, 1505,    0, 1516, 1492, 1518, 1519, 1520, 1521, 1522,       1517,    0, 1518, 1519,    0, 1520,    0, 1521, 1522, 1523,
      1523, 1518, 1511,    0, 1526,    0, 1527, 1505, 1510, 1511,       1510, 1525, 1516,    0, 1527, 1503, 1529, 1530, 1531, 1532,
      1511, 1518, 1509, 1534, 1516, 1517, 1518, 1519, 1520, 1521,       1533, 1534, 1529, 1522,    0, 1537,    0, 1538, 1516, 1521,
      1517, 1542, 1524, 1525, 1525, 1532, 1527, 1534, 1529, 1536,       1522, 1522, 1529, 1520, 1545, 1527, 1528, 1529, 1530, 1531,
      1551, 1552, 1534, 1535, 1531, 1556, 1538, 1539, 1535, 1560,       1532, 1528, 1553, 1535, 1536, 1536, 1543, 1538, 1545, 1540,
      1547, 1550,    0, 1563, 1564,    0, 1565,    0, 1566, 1547,       1547, 1562, 1563, 1545, 1546, 1542, 1567, 1549, 1550, 1546,
   
      1568, 1552, 1540,    0, 1571,    0, 1572,    0, 1573,    0,       1571, 1558, 1561,    0, 1574, 1575,    0, 1576,    0, 1577,
      1574,    0, 1575,    0, 1576, 1568, 1570, 1565, 1556, 1581,       1558, 1579, 1563, 1551,    0, 1582,    0, 1583,    0, 1584,
      1563, 1564, 1584, 1585, 1562, 1587, 1564, 1589, 1566, 1591,          0, 1585,    0, 1586,    0, 1587, 1579, 1581, 1576, 1567,
      1592, 1593, 1570, 1595, 1577, 1578, 1579, 1580, 1581, 1582,       1592, 1574, 1575, 1595, 1596, 1573, 1598, 1575, 1600, 1577,
      1602,    0, 1603, 1580, 1605, 1606, 1607, 1584, 1609, 1610,       1602, 1603, 1604, 1581, 1606, 1588, 1589, 1590, 1591, 1592,
      1611, 1592, 1599,    0, 1614, 1596,    0, 1616, 1600, 1618,       1593, 1613,    0, 1614, 1591, 1616, 1617, 1618, 1595, 1620,
      1619, 1620, 1600, 1622, 1623, 1600, 1625, 1626,    0, 1627,       1621, 1622, 1603, 1610,    0, 1625, 1607,    0, 1627, 1611,
      1628, 1629, 1630, 1631, 1632, 1633, 1634,    0, 1635, 1636,       1629, 1630, 1631, 1611, 1633, 1634, 1611, 1636, 1637,    0,
      1637, 1614, 1639, 1616, 1641, 1618, 1643,    0, 1644, 1645,       1638, 1639, 1640, 1641, 1642, 1643, 1644, 1645,    0, 1646,
      1646, 1647,    0, 1648, 1649, 1650, 1651,    0, 1652, 1634,       1647, 1648, 1625, 1650, 1627, 1652, 1629, 1654,    0, 1655,
   
      1635, 1655, 1656, 1657, 1658, 1659, 1635, 1661,    0, 1662,       1656, 1657, 1658,    0, 1659, 1660, 1661, 1662,    0, 1663,
      1663, 1664,    0, 1665, 1666,    0, 1667, 1668,    0, 1669,       1645, 1646, 1666, 1667, 1668, 1669, 1670, 1646, 1672,    0,
      1670,    0, 1671,    0, 1672, 1673,    0, 1674, 1675, 1676,       1673, 1674, 1675,    0, 1676, 1677,    0, 1678, 1679,    0,
      1677, 1678, 1679, 1680, 1681,    0, 1682,    0, 1683, 1684,       1680, 1681,    0, 1682,    0, 1683, 1684,    0, 1685, 1686,
         0, 1685,    0, 1686, 1663, 1688, 1689, 1690,    0, 1691,       1687, 1688, 1689, 1690, 1691, 1692,    0, 1693,    0, 1694,
         0, 1692,    0, 1693, 1694,    0, 1695, 1696,    0, 1697,       1695,    0, 1696,    0, 1697, 1674, 1699, 1700, 1701,    0,
         0, 1698,    0, 1699,    0, 1700,    0, 1701, 1702,    0,       1702,    0, 1703,    0, 1704, 1705,    0, 1706, 1707,    0,
      1703, 1704,    0, 1705, 1706,    0, 1707,    0, 1708,    0,       1708,    0, 1709,    0, 1710,    0, 1711,    0, 1712, 1713,
      1709, 1710, 1711,    0, 1712,    0, 1713, 1714,    0, 1715,          0, 1714, 1715,    0, 1716, 1717,    0, 1718,    0, 1719,
         0, 1716,    0, 1717,    0, 1718, 1719,    0, 1720,    0,          0, 1720, 1721, 1722,    0, 1723,    0, 1724, 1725,    0,
   
      1721,    0, 1722, 2476, 1724, 1726, 1728, 1730, 1731, 1733,       1726,    0, 1727,    0, 1728,    0, 1729, 1730,    0, 1731,
      1734, 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743,          0, 1732,    0, 1733, 2488, 1735, 1737, 1739, 1741, 1742,
      1744, 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1753,       1744, 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1753,
      1754, 1755, 1756, 1757, 1758, 1759, 1760, 1761, 1762, 1763,       1754, 1755, 1756, 1757, 1758, 1759, 1760, 1761, 1762, 1763,
      1764, 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773,       1764, 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773,
      1774, 1775, 1776, 1777, 1778, 1779, 1780, 1781, 1782, 1783,       1774, 1775, 1776, 1777, 1778, 1779, 1780, 1781, 1782, 1783,
      1784, 1785, 1786, 1787, 1788, 1789, 1790, 1791, 1792, 1793,       1784, 1785, 1786, 1787, 1788, 1789, 1790, 1791, 1792, 1793,
      1794, 1795, 1796, 1797, 1798, 1799, 1800, 1801, 1802, 1803,       1794, 1795, 1796, 1797, 1798, 1799, 1800, 1801, 1802, 1803,
      1804, 1805, 1806, 1807, 1809, 1810, 1811, 1812, 1813, 1814,       1804, 1805, 1806, 1807, 1808, 1809, 1810, 1811, 1812, 1813,
      1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1824,       1814, 1815, 1816, 1817, 1818, 1820, 1821, 1822, 1823, 1824,
   
      1825, 1826, 1827, 1828, 1829, 1830, 1831, 1832, 1833, 1834,       1825, 1826, 1827, 1828, 1829, 1830, 1831, 1832, 1833, 1834,
      1835, 1836, 1837, 1838, 1839, 1840, 1841, 1842, 1843, 1844,       1835, 1836, 1837, 1838, 1839, 1840, 1841, 1842, 1843, 1844,
Line 845
 
Line 848
      1945, 1946, 1947, 1948, 1949, 1950, 1951, 1952, 1953, 1954,       1945, 1946, 1947, 1948, 1949, 1950, 1951, 1952, 1953, 1954,
      1955, 1956, 1957, 1958, 1959, 1960, 1961, 1962, 1963, 1964,       1955, 1956, 1957, 1958, 1959, 1960, 1961, 1962, 1963, 1964,
      1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974,       1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974,
      1975       1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984,
        1985, 1986, 1987
     } ;      } ;
   
 static yyconst short int yy_def[2452] =  static yyconst short int yy_def[2464] =
     {   0,      {   0,
      2205, 2204, 2206, 2206, 2207, 2207, 2204, 2208, 2204, 2209,       2216, 2215, 2217, 2217, 2218, 2218, 2215, 2219, 2215, 2220,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2210, 2210, 2210, 2204, 2204, 2208,       2219, 2219, 2219, 2219, 2221, 2221, 2221, 2215, 2215, 2219,
      2209, 2204, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2220, 2215, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
   
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2211, 2208, 2212, 2210,       2219, 2219, 2219, 2219, 2219, 2219, 2222, 2219, 2223, 2221,
      2210, 2210, 2210, 2204, 2204, 2213, 2208, 2208, 2208, 2208,       2221, 2221, 2221, 2215, 2215, 2224, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2214, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2225, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2215, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2226, 2219,
   
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2216, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2227, 2219, 2219, 2219,
      2208, 2211, 2211, 2208, 2212, 2212, 2210, 2213, 2213, 2208,       2219, 2219, 2222, 2222, 2219, 2223, 2223, 2221, 2224, 2224,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2217, 2208, 2218, 2208, 2208, 2208, 2208, 2208, 2219, 2208,       2219, 2228, 2219, 2229, 2219, 2219, 2219, 2219, 2219, 2230,
      2220, 2208, 2208, 2208, 2204, 2208, 2221, 2208, 2208, 2208,       2219, 2231, 2219, 2219, 2219, 2215, 2219, 2232, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2214, 2214,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2225,
      2208, 2208, 2222, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2225, 2219, 2219, 2233, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
   
      2204, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2215, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2223, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2234, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2215, 2215,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2226,
      2208, 2208, 2208, 2208, 2208, 2208, 2224, 2208, 2208, 2208,       2226, 2219, 2219, 2219, 2219, 2219, 2219, 2235, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2216,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2216, 2208, 2208, 2225, 2226, 2208, 2210, 2208, 2208, 2208,       2227, 2227, 2219, 2219, 2219, 2236, 2237, 2219, 2221, 2219,
      2208, 2208, 2227, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2238, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2217, 2217,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2218, 2218, 2208, 2208, 2208, 2208, 2208, 2219, 2219,       2228, 2228, 2219, 2229, 2229, 2219, 2219, 2219, 2219, 2219,
      2208, 2220, 2220, 2208, 2208, 2208, 2221, 2221, 2208, 2228,       2230, 2230, 2219, 2231, 2231, 2219, 2219, 2219, 2232, 2232,
   
      2208, 2208, 2229, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2239, 2219, 2219, 2240, 2219, 2219, 2219, 2219, 2219,
      2208, 2222, 2222, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2233, 2233, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2230, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2204,       2219, 2219, 2241, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2231, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2215, 2219, 2242, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2232, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2223,       2219, 2219, 2219, 2243, 2219, 2219, 2219, 2219, 2219, 2219,
      2223, 2208, 2233, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2234, 2234, 2219, 2244, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2224,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2224, 2208, 2208, 2208, 2234, 2208, 2208, 2208, 2208, 2208,       2219, 2235, 2235, 2219, 2219, 2219, 2245, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2225, 2225, 2226, 2226, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2236, 2236,
   
      2210, 2235, 2208, 2208, 2208, 2208, 2227, 2227, 2208, 2208,       2237, 2237, 2219, 2221, 2246, 2219, 2219, 2219, 2219, 2238,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2238, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2228, 2228, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2239, 2239,
      2229, 2229, 2208, 2208, 2208, 2236, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2240, 2240, 2219, 2219, 2219, 2247, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2237, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2230, 2230, 2238, 2208, 2208, 2208, 2239, 2240, 2208, 2208,       2219, 2248, 2219, 2241, 2241, 2249, 2219, 2219, 2219, 2250,
      2231, 2231, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2251, 2219, 2219, 2242, 2242, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2232, 2232, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2243, 2243, 2219, 2219,
   
      2208, 2208, 2208, 2208, 2208, 2233, 2233, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2244, 2244,
      2208, 2208, 2208, 2208, 2208, 2241, 2208, 2242, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2252, 2219,
      2208, 2208, 2243, 2208, 2208, 2244, 2208, 2234, 2234, 2208,       2253, 2219, 2219, 2219, 2219, 2254, 2219, 2219, 2255, 2219,
      2208, 2208, 2208, 2245, 2208, 2208, 2208, 2208, 2208, 2246,       2245, 2245, 2219, 2219, 2219, 2219, 2256, 2219, 2219, 2219,
      2210, 2235, 2235, 2208, 2208, 2208, 2208, 2247, 2208, 2208,       2219, 2219, 2219, 2257, 2221, 2246, 2246, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2258, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2248, 2249, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2259, 2260, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2250, 2208, 2251, 2252, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2261, 2219, 2262,
      2236, 2236, 2208, 2208, 2208, 2253, 2208, 2208, 2208, 2208,       2263, 2219, 2219, 2219, 2247, 2247, 2219, 2219, 2219, 2264,
   
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2237, 2237, 2208, 2238, 2238,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2248,
      2208, 2208, 2208, 2239, 2239, 2240, 2240, 2208, 2208, 2208,       2248, 2219, 2249, 2249, 2219, 2219, 2219, 2250, 2250, 2251,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2251, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2254, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2265, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2255, 2208, 2208, 2208, 2241,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2266,
      2241, 2208, 2242, 2242, 2208, 2208, 2208, 2208, 2243, 2243,       2219, 2219, 2219, 2252, 2252, 2219, 2253, 2253, 2219, 2219,
      2208, 2208, 2244, 2244, 2208, 2208, 2256, 2257, 2258, 2245,       2219, 2219, 2254, 2254, 2219, 2219, 2255, 2255, 2219, 2219,
      2245, 2208, 2208, 2208, 2208, 2259, 2208, 2246, 2246, 2210,       2267, 2268, 2269, 2256, 2256, 2219, 2219, 2219, 2219, 2219,
      2204, 2208, 2208, 2260, 2208, 2247, 2247, 2208, 2208, 2208,       2270, 2219, 2257, 2257, 2221, 2215, 2219, 2219, 2271, 2219,
   
      2208, 2208, 2208, 2208, 2261, 2208, 2208, 2208, 2208, 2208,       2258, 2258, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2272,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2248,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2248, 2249, 2249, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2259, 2259, 2260, 2260, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2250, 2250, 2262, 2251, 2251, 2252, 2252, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2261, 2261, 2273, 2262,
      2208, 2208, 2263, 2208, 2253, 2253, 2208, 2208, 2208, 2208,       2262, 2263, 2263, 2219, 2219, 2219, 2219, 2274, 2219, 2264,
      2208, 2208, 2264, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2264, 2219, 2219, 2219, 2219, 2219, 2219, 2275, 2219, 2219,
      2208, 2208, 2208, 2208, 2265, 2208, 2208, 2208, 2208, 2266,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2276,
      2208, 2267, 2268, 2269, 2208, 2208, 2270, 2271, 2208, 2208,       2219, 2219, 2219, 2219, 2277, 2219, 2278, 2279, 2280, 2219,
      2208, 2208, 2254, 2254, 2272, 2208, 2208, 2208, 2208, 2208,       2219, 2281, 2282, 2219, 2219, 2219, 2219, 2265, 2265, 2283,
   
      2208, 2273, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2284, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2255, 2255, 2208, 2208, 2274, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2266, 2266, 2219,
      2208, 2208, 2275, 2208, 2208, 2208, 2256, 2256, 2257, 2257,       2219, 2285, 2219, 2219, 2219, 2219, 2219, 2286, 2219, 2219,
      2258, 2258, 2208, 2208, 2276, 2277, 2259, 2259, 2208, 2208,       2219, 2267, 2267, 2268, 2268, 2269, 2269, 2219, 2219, 2287,
      2208, 2260, 2260, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2288, 2219, 2270, 2270, 2219, 2219, 2219, 2271, 2271, 2219,
      2208, 2261, 2261, 2208, 2208, 2208, 2208, 2208, 2278, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2272, 2272, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2279, 2280, 2281, 2208,       2219, 2219, 2219, 2219, 2289, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2282, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2290, 2291, 2292, 2219, 2219, 2219, 2219, 2293,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
   
      2262, 2262, 2283, 2208, 2208, 2208, 2263, 2263, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2273, 2273, 2294, 2219,
      2284, 2208, 2208, 2285, 2208, 2264, 2264, 2286, 2287, 2208,       2219, 2219, 2274, 2274, 2219, 2219, 2295, 2219, 2219, 2296,
      2208, 2208, 2208, 2208, 2208, 2288, 2208, 2208, 2265, 2265,       2219, 2275, 2275, 2297, 2298, 2219, 2219, 2219, 2219, 2219,
      2289, 2208, 2290, 2291, 2266, 2266, 2208, 2267, 2267, 2268,       2219, 2299, 2219, 2219, 2276, 2276, 2300, 2219, 2301, 2302,
      2268, 2269, 2269, 2208, 2292, 2270, 2270, 2271, 2271, 2208,       2277, 2277, 2219, 2278, 2278, 2279, 2279, 2280, 2280, 2219,
      2208, 2293, 2208, 2272, 2272, 2208, 2208, 2208, 2208, 2208,       2303, 2281, 2281, 2282, 2282, 2219, 2219, 2304, 2219, 2283,
      2208, 2273, 2273, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2283, 2219, 2219, 2219, 2219, 2219, 2219, 2284, 2284, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2294, 2208, 2208, 2274, 2274, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2305, 2219, 2219, 2285,
   
      2275, 2275, 2208, 2295, 2208, 2208, 2296, 2276, 2276, 2277,       2285, 2219, 2219, 2219, 2219, 2219, 2286, 2286, 2219, 2306,
      2277, 2208, 2208, 2297, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2307, 2287, 2287, 2288, 2288, 2219, 2219, 2219,
      2298, 2208, 2208, 2208, 2208, 2299, 2208, 2278, 2278, 2208,       2308, 2219, 2219, 2219, 2219, 2219, 2219, 2309, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2279,       2219, 2219, 2310, 2219, 2289, 2289, 2219, 2219, 2219, 2219,
      2279, 2280, 2280, 2281, 2281, 2300, 2301, 2208, 2302, 2282,       2219, 2219, 2219, 2219, 2219, 2219, 2290, 2290, 2291, 2291,
      2282, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2292, 2292, 2311, 2312, 2219, 2313, 2293, 2293, 2219, 2219,
      2208, 2208, 2303, 2208, 2208, 2208, 2208, 2208, 2208, 2283,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2314,
      2283, 2304, 2208, 2208, 2208, 2208, 2284, 2204, 2305, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2294, 2294, 2315, 2219,
      2285, 2285, 2208, 2286, 2286, 2287, 2287, 2306, 2208, 2208,       2219, 2219, 2219, 2295, 2215, 2316, 2219, 2296, 2296, 2219,
      2307, 2208, 2208, 2288, 2288, 2208, 2308, 2289, 2289, 2208,       2297, 2297, 2298, 2298, 2317, 2219, 2219, 2318, 2219, 2219,
   
      2290, 2290, 2291, 2291, 2208, 2208, 2292, 2292, 2208, 2208,       2299, 2299, 2219, 2319, 2300, 2300, 2219, 2301, 2301, 2302,
      2293, 2293, 2208, 2208, 2208, 2309, 2208, 2208, 2208, 2310,       2302, 2219, 2219, 2303, 2303, 2219, 2219, 2304, 2304, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2320, 2219, 2219, 2219, 2321, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2294,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2294, 2208, 2208, 2311, 2208, 2312, 2208, 2208, 2313, 2295,       2219, 2219, 2219, 2219, 2219, 2219, 2305, 2305, 2219, 2219,
      2295, 2208, 2208, 2296, 2296, 2208, 2314, 2297, 2297, 2315,       2322, 2219, 2323, 2219, 2219, 2324, 2306, 2306, 2219, 2219,
      2208, 2316, 2317, 2208, 2318, 2298, 2298, 2208, 2208, 2319,       2307, 2307, 2219, 2219, 2325, 2308, 2308, 2326, 2219, 2327,
      2208, 2299, 2299, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2328, 2219, 2329, 2309, 2309, 2219, 2219, 2330, 2219, 2310,
      2208, 2208, 2208, 2208, 2300, 2300, 2301, 2301, 2208, 2302,       2310, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
   
      2302, 2208, 2208, 2320, 2208, 2208, 2208, 2208, 2321, 2208,       2219, 2219, 2311, 2311, 2312, 2312, 2219, 2313, 2313, 2219,
      2208, 2208, 2208, 2208, 2303, 2303, 2208, 2208, 2208, 2322,       2219, 2331, 2219, 2219, 2219, 2219, 2332, 2219, 2219, 2219,
      2208, 2208, 2323, 2208, 2208, 2304, 2304, 2208, 2208, 2208,       2219, 2219, 2314, 2314, 2219, 2219, 2219, 2333, 2219, 2219,
      2208, 2208, 2208, 2324, 2325, 2305, 2305, 2208, 2208, 2306,       2334, 2219, 2219, 2315, 2315, 2219, 2219, 2219, 2219, 2219,
      2306, 2208, 2326, 2307, 2307, 2208, 2208, 2327, 2308, 2308,       2219, 2335, 2336, 2316, 2316, 2219, 2219, 2317, 2317, 2219,
      2208, 2328, 2208, 2329, 2208, 2208, 2208, 2330, 2309, 2309,       2337, 2318, 2318, 2219, 2219, 2338, 2319, 2319, 2219, 2339,
      2208, 2208, 2208, 2310, 2310, 2208, 2208, 2208, 2208, 2331,       2219, 2340, 2219, 2219, 2219, 2341, 2320, 2320, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2321, 2321, 2219, 2219, 2219, 2219, 2342, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2311, 2311, 2332, 2312,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
   
      2312, 2208, 2333, 2313, 2313, 2208, 2334, 2335, 2314, 2314,       2219, 2219, 2219, 2219, 2322, 2322, 2343, 2323, 2323, 2219,
      2315, 2315, 2208, 2316, 2316, 2317, 2317, 2208, 2318, 2318,       2344, 2324, 2324, 2219, 2345, 2346, 2347, 2325, 2325, 2326,
      2208, 2208, 2319, 2319, 2208, 2208, 2208, 2208, 2336, 2208,       2326, 2219, 2327, 2327, 2328, 2328, 2219, 2329, 2329, 2219,
      2208, 2337, 2208, 2208, 2208, 2208, 2208, 2338, 2208, 2208,       2219, 2330, 2330, 2219, 2219, 2219, 2219, 2348, 2219, 2219,
      2320, 2320, 2208, 2208, 2339, 2208, 2340, 2208, 2341, 2208,       2349, 2219, 2219, 2219, 2219, 2219, 2350, 2219, 2219, 2331,
      2321, 2321, 2208, 2208, 2342, 2208, 2208, 2208, 2208, 2208,       2331, 2219, 2219, 2351, 2219, 2352, 2219, 2353, 2219, 2332,
      2208, 2343, 2208, 2322, 2322, 2208, 2208, 2344, 2208, 2323,       2332, 2219, 2219, 2354, 2219, 2219, 2219, 2219, 2219, 2219,
      2323, 2208, 2208, 2208, 2345, 2208, 2208, 2208, 2208, 2208,       2355, 2219, 2333, 2333, 2219, 2219, 2356, 2219, 2334, 2334,
      2208, 2324, 2324, 2325, 2325, 2346, 2347, 2348, 2326, 2326,       2219, 2219, 2219, 2357, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2327, 2327, 2208, 2328, 2328, 2208, 2329, 2329,       2335, 2335, 2336, 2336, 2358, 2359, 2360, 2337, 2337, 2219,
   
      2208, 2349, 2350, 2330, 2330, 2208, 2351, 2208, 2352, 2208,       2219, 2338, 2338, 2219, 2339, 2339, 2219, 2340, 2340, 2219,
      2353, 2208, 2208, 2331, 2331, 2354, 2208, 2208, 2208, 2355,       2361, 2362, 2341, 2341, 2219, 2363, 2219, 2364, 2219, 2365,
      2208, 2208, 2208, 2208, 2208, 2208, 2356, 2357, 2208, 2208,       2219, 2219, 2342, 2342, 2366, 2219, 2219, 2219, 2367, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2358, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2368, 2369, 2219, 2219, 2219,
      2208, 2332, 2332, 2359, 2333, 2333, 2208, 2334, 2334, 2335,       2219, 2219, 2219, 2219, 2219, 2370, 2219, 2219, 2219, 2219,
      2335, 2208, 2360, 2208, 2208, 2208, 2208, 2208, 2208, 2336,       2343, 2343, 2371, 2344, 2344, 2219, 2345, 2345, 2346, 2346,
      2336, 2361, 2362, 2337, 2337, 2208, 2208, 2363, 2208, 2208,       2347, 2347, 2219, 2372, 2219, 2219, 2219, 2219, 2219, 2219,
      2338, 2338, 2208, 2208, 2364, 2208, 2208, 2208, 2339, 2339,       2348, 2348, 2373, 2374, 2349, 2349, 2219, 2219, 2375, 2219,
      2208, 2208, 2340, 2340, 2208, 2208, 2341, 2341, 2208, 2208,       2219, 2350, 2350, 2219, 2219, 2376, 2219, 2219, 2219, 2351,
      2208, 2208, 2342, 2342, 2208, 2208, 2365, 2208, 2366, 2208,       2351, 2219, 2219, 2352, 2352, 2219, 2219, 2353, 2353, 2219,
   
      2367, 2208, 2208, 2208, 2343, 2343, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2354, 2354, 2219, 2219, 2377, 2219, 2378,
      2344, 2344, 2208, 2208, 2208, 2208, 2208, 2345, 2345, 2208,       2219, 2379, 2219, 2219, 2219, 2355, 2355, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2346, 2346, 2347, 2347, 2348,       2219, 2356, 2356, 2219, 2219, 2219, 2219, 2219, 2357, 2357,
      2348, 2368, 2208, 2208, 2208, 2208, 2349, 2349, 2350, 2350,       2219, 2219, 2219, 2219, 2219, 2219, 2358, 2358, 2359, 2359,
      2369, 2351, 2351, 2208, 2352, 2352, 2208, 2353, 2353, 2208,       2360, 2360, 2380, 2219, 2219, 2219, 2219, 2361, 2361, 2362,
      2208, 2354, 2354, 2370, 2208, 2371, 2355, 2355, 2208, 2208,       2362, 2381, 2363, 2363, 2219, 2364, 2364, 2219, 2365, 2365,
      2372, 2208, 2373, 2208, 2356, 2356, 2357, 2357, 2208, 2208,       2219, 2219, 2366, 2366, 2382, 2219, 2383, 2367, 2367, 2219,
      2208, 2208, 2374, 2208, 2208, 2208, 2358, 2358, 2208, 2208,       2219, 2384, 2219, 2385, 2219, 2368, 2368, 2369, 2369, 2219,
      2375, 2208, 2359, 2359, 2376, 2208, 2360, 2360, 2208, 2208,       2219, 2219, 2219, 2386, 2219, 2219, 2219, 2370, 2370, 2219,
      2377, 2378, 2208, 2208, 2361, 2361, 2362, 2362, 2208, 2379,       2219, 2387, 2219, 2371, 2371, 2388, 2219, 2372, 2372, 2219,
   
      2363, 2363, 2208, 2208, 2208, 2208, 2364, 2364, 2208, 2208,       2219, 2389, 2390, 2219, 2219, 2373, 2373, 2374, 2374, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2391, 2375, 2375, 2219, 2219, 2219, 2219, 2376, 2376, 2219,
      2208, 2208, 2365, 2365, 2208, 2208, 2366, 2366, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2367, 2367, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2377, 2377, 2219, 2219, 2378, 2378, 2219,
      2208, 2208, 2208, 2208, 2380, 2208, 2381, 2208, 2382, 2208,       2219, 2379, 2379, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2368, 2368, 2383, 2208, 2384, 2208, 2369, 2369,       2219, 2219, 2219, 2219, 2219, 2392, 2219, 2393, 2219, 2394,
      2385, 2208, 2208, 2386, 2370, 2370, 2208, 2371, 2371, 2208,       2219, 2219, 2219, 2380, 2380, 2395, 2219, 2396, 2219, 2381,
      2208, 2372, 2372, 2208, 2373, 2373, 2208, 2208, 2208, 2208,       2381, 2397, 2219, 2219, 2398, 2382, 2382, 2219, 2383, 2383,
      2208, 2374, 2374, 2208, 2208, 2387, 2208, 2208, 2375, 2375,       2219, 2219, 2384, 2384, 2219, 2385, 2385, 2219, 2219, 2219,
      2388, 2376, 2376, 2208, 2389, 2390, 2377, 2377, 2378, 2378,       2219, 2219, 2386, 2386, 2219, 2219, 2399, 2219, 2219, 2387,
   
      2208, 2391, 2392, 2379, 2379, 2393, 2208, 2208, 2208, 2208,       2387, 2400, 2388, 2388, 2219, 2401, 2402, 2389, 2389, 2390,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2390, 2219, 2403, 2404, 2391, 2391, 2405, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2380,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2380, 2208, 2208, 2381, 2381, 2394, 2382, 2382, 2208, 2395,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2383, 2383, 2396, 2384, 2384, 2397, 2385, 2385, 2208,       2392, 2392, 2219, 2219, 2393, 2393, 2406, 2394, 2394, 2219,
      2208, 2386, 2386, 2208, 2208, 2208, 2398, 2208, 2208, 2208,       2407, 2219, 2395, 2395, 2408, 2396, 2396, 2409, 2397, 2397,
      2208, 2208, 2208, 2208, 2387, 2387, 2208, 2208, 2388, 2388,       2219, 2219, 2398, 2398, 2219, 2219, 2219, 2410, 2219, 2219,
      2399, 2389, 2389, 2390, 2390, 2400, 2391, 2391, 2392, 2392,       2219, 2219, 2219, 2219, 2219, 2399, 2399, 2219, 2219, 2400,
      2393, 2393, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2400, 2411, 2401, 2401, 2402, 2402, 2412, 2403, 2403, 2404,
   
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2404, 2405, 2405, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2394, 2394, 2401,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2395, 2395, 2208, 2396, 2396, 2397, 2397, 2402, 2403, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2406, 2406,
      2208, 2208, 2398, 2398, 2208, 2404, 2405, 2406, 2407, 2408,       2413, 2407, 2407, 2219, 2408, 2408, 2409, 2409, 2414, 2415,
      2409, 2208, 2208, 2399, 2399, 2400, 2400, 2208, 2208, 2208,       2219, 2219, 2219, 2410, 2410, 2219, 2416, 2417, 2418, 2419,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2420, 2421, 2219, 2219, 2411, 2411, 2412, 2412, 2219, 2219,
      2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2410, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2208, 2208, 2401, 2401, 2411, 2402, 2402, 2403, 2403, 2208,       2219, 2219, 2422, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
   
      2412, 2208, 2208, 2404, 2404, 2405, 2405, 2406, 2406, 2407,       2219, 2219, 2219, 2413, 2413, 2423, 2414, 2414, 2415, 2415,
      2407, 2408, 2408, 2409, 2409, 2208, 2208, 2208, 2208, 2208,       2219, 2424, 2219, 2219, 2416, 2416, 2417, 2417, 2418, 2418,
      2208, 2208, 2208, 2413, 2208, 2208, 2208, 2208, 2208, 2208,       2419, 2419, 2420, 2420, 2421, 2421, 2219, 2219, 2219, 2219,
      2208, 2414, 2208, 2208, 2208, 2208, 2208, 2208, 2208, 2208,       2219, 2219, 2219, 2219, 2425, 2219, 2219, 2219, 2219, 2219,
      2415, 2410, 2410, 2208, 2208, 2208, 2416, 2208, 2208, 2208,       2219, 2219, 2426, 2219, 2219, 2219, 2219, 2219, 2219, 2219,
      2417, 2208, 2208, 2411, 2411, 2208, 2412, 2412, 2208, 2208,       2219, 2427, 2422, 2422, 2219, 2219, 2219, 2428, 2219, 2219,
      2208, 2208, 2208, 2208, 2418, 2208, 2208, 2419, 2413, 2413,       2219, 2429, 2219, 2219, 2423, 2423, 2219, 2424, 2424, 2219,
      2208, 2420, 2208, 2421, 2208, 2422, 2423, 2414, 2414, 2208,       2219, 2219, 2219, 2219, 2219, 2430, 2219, 2219, 2431, 2425,
      2424, 2208, 2208, 2208, 2208, 2208, 2208, 2415, 2415, 2208,       2425, 2219, 2432, 2219, 2433, 2219, 2434, 2435, 2426, 2426,
      2425, 2426, 2416, 2416, 2208, 2427, 2428, 2417, 2417, 2208,       2219, 2436, 2219, 2219, 2219, 2219, 2219, 2219, 2427, 2427,
   
      2208, 2208, 2208, 2429, 2430, 2431, 2208, 2432, 2418, 2418,       2219, 2437, 2438, 2428, 2428, 2219, 2439, 2440, 2429, 2429,
      2208, 2433, 2419, 2419, 2434, 2420, 2420, 2435, 2421, 2421,       2219, 2219, 2219, 2219, 2441, 2442, 2443, 2219, 2444, 2430,
      2436, 2422, 2422, 2423, 2423, 2437, 2424, 2424, 2208, 2438,       2430, 2219, 2445, 2431, 2431, 2446, 2432, 2432, 2447, 2433,
      2208, 2439, 2208, 2440, 2441, 2425, 2425, 2426, 2426, 2442,       2433, 2448, 2434, 2434, 2435, 2435, 2449, 2436, 2436, 2219,
      2427, 2427, 2428, 2428, 2208, 2208, 2443, 2444, 2429, 2429,       2450, 2219, 2451, 2219, 2452, 2453, 2437, 2437, 2438, 2438,
      2430, 2430, 2431, 2431, 2208, 2432, 2432, 2445, 2433, 2433,       2454, 2439, 2439, 2440, 2440, 2219, 2219, 2455, 2456, 2441,
      2434, 2434, 2435, 2435, 2436, 2436, 2437, 2437, 2446, 2438,       2441, 2442, 2442, 2443, 2443, 2219, 2444, 2444, 2457, 2445,
      2438, 2447, 2439, 2439, 2448, 2440, 2440, 2441, 2441, 2442,       2445, 2446, 2446, 2447, 2447, 2448, 2448, 2449, 2449, 2458,
      2442, 2208, 2449, 2443, 2443, 2444, 2444, 2450, 2445, 2445,       2450, 2450, 2459, 2451, 2451, 2460, 2452, 2452, 2453, 2453,
      2446, 2446, 2447, 2447, 2448, 2448, 2451, 2449, 2449, 2450,       2454, 2454, 2219, 2461, 2455, 2455, 2456, 2456, 2462, 2457,
   
      2450, 2451, 2451,    0, 2204, 2204, 2204, 2204, 2204, 2204,       2457, 2458, 2458, 2459, 2459, 2460, 2460, 2463, 2461, 2461,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2462, 2462, 2463, 2463,    0, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
   
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
   
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
      2204       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
        2215, 2215, 2215
     } ;      } ;
   
 static yyconst short int yy_nxt[2510] =  static yyconst short int yy_nxt[2522] =
     {   0,      {   0,
      2204,   43,    9,   10,   44,   11,    8,    8,    9,   10,       2215,   43,    9,   10,   44,   11,    8,    8,    9,   10,
         8,   11,    8,   12,   13,   14,   15,   16,   17,   18,          8,   11,    8,   12,   13,   14,   15,   16,   17,   18,
        19,   20,    8,   21,   22,   23,   24,   25,   26,    8,         19,   20,    8,   21,   22,   23,   24,   25,   26,    8,
        27,   28,   29,   30,   31,   32,   33,   34,    8,    9,         27,   28,   29,   30,   31,   32,   33,   34,    8,    9,
         9,    9,   36,   36,   39,    9,   52,  117,   39,   37,          9,    9,   36,   36,   39,    9,   52,  117,   39,   37,
        45,  181,   58,   53,   61,   54,   59,  765,  182,   46,         45,  181,   58,   53,   61,   54,   59,  766,  182,   46,
        60,   47,   55,   48,   62,   49,   65,   50,   51,   56,         60,   47,   55,   48,   62,   49,   65,   50,   51,   56,
       118,   69,   63,   72,   64,   57,   75,   66,   70,  766,        118,   69,   63,   72,   64,   57,   75,   66,   70,  768,
        67,   73,   84,   68,   71,   76,   77,   91,   74,   80,         67,   73,   84,   68,   71,   76,   77,   91,   74,   80,
        87,   78,  121,   81,   88,  122,   85,   82,   94,   92,         87,   78,  121,   81,   88,  122,   85,   82,   94,   92,
   
        86,  111,  767,  130,   89,   93,   95,   90,  124,   83,         86,  111,  769,  130,   89,   93,   95,   90,  124,   83,
        98,  125,   96,  131,   99,   97,  106,  184,  185,   43,         98,  125,   96,  131,   99,   97,  106,  184,  185,   43,
       107,  112,   44,  136,  113,  768,  114,  137,  115,  108,        107,  112,   44,  136,  113,  770,  114,  137,  115,  108,
       100,  101,  116,  102,  168,  160,  109,  161,  169,  189,        100,  101,  116,  102,  168,  160,  109,  161,  169,  189,
       103,  172,  191,  199,  104,  173,  241,  170,  105,  174,        103,  172,  191,  199,  104,  173,  771,  170,  105,  174,
       190,  171,  196,  200,  202,  192,  197,  215,  203,  209,        190,  171,  196,  200,  202,  192,  197,  215,  203,  209,
       201,  219,  210,  249,  216,  242,  198,  211,  220,  121,        201,  218,  210,  220,  216,  121,  198,  211,  122,  219,
       124,  204,  122,  125,  212,  221,  243,  247,  248,  254,        221,  204,  124,  242,  212,  125,  244,  222,  248,  249,
       255,  257,  250,  260,  274,  294,  295,  244,  515,  275,        250,  255,  256,  425,  258,  261,  772,  245,  275,  301,
       300,  301,  261,  276,  333,  245,  361,  296,  334,  258,        302,  363,  243,  276,  262,  246,  426,  277,  774,  251,
   
       335,  246,  277,  278,  279,  280,  423,  281,  516,  282,        452,  247,  259,  278,  279,  280,  281,  364,  282,  453,
       359,  360,  362,  254,  255,  439,  440,  300,  301,  424,        283,  334,  295,  296,  518,  335,  775,  336,  361,  362,
       450,  283,  284,  469,  285,  304,  649,  305,  447,  451,        255,  256,  284,  285,  297,  286,  305,  776,  306,  441,
       538,  470,  439,  440,  306,  592,  448,  307,  539,  583,        442,  301,  302,  778,  519,  307,  441,  442,  308,  449,
       308,  369,  770,  370,  371,  449,  650,  584,  593,  372,        471,  309,  371,  541,  372,  373,  586,  450,  472,  653,
       565,  373,  566,  567,  601,  618,  374,  602,  375,  376,        374,  542,  375,  595,  587,  604,  451,  376,  605,  377,
       619,  377,  660,  661,  568,  771,  710,  772,  751,  774,        378,  568,  379,  569,  570,  621,  596,  664,  665,  654,
       775,  603,  675,  676,  677,  678,  711,  752,  629,  776,        622,  714,  606,  755,  779,  571,  679,  680,  681,  682,
       777,  778,  779,  679,  781,  782,  783,  680,  785,  681,        632,  715,  756,  780,  781,  782,  783,  683,  785,  786,
       682,  683,  786,  787,  784,  789,  790,  791,  643,  792,        787,  684,  789,  685,  686,  687,  790,  791,  788,  792,
   
       793,  794,  795,  797,  798,  799,  800,  801,  802,  803,        794,  795,  796,  647,  797,  798,  799,  800,  802,  803,
       804,  805,  806,  807,  808,  809,  810,  811,  812,  813,        804,  805,  806,  807,  808,  809,  810,  811,  812,  813,
       814,  815,  816,  817,  818,  819,  821,  823,  824,  825,        814,  815,  816,  817,  818,  819,  820,  821,  822,  823,
       826,  828,  829,  831,  827,  833,  834,  835,  830,  838,        824,  826,  828,  829,  830,  831,  833,  834,  836,  832,
       836,  843,  839,  840,  844,  846,  832,  837,  848,  849,        838,  839,  840,  835,  843,  841,  848,  844,  845,  849,
       850,  851,  841,  692,  852,  853,  854,  856,  857,  858,        851,  837,  842,  853,  854,  855,  856,  846,  696,  857,
       859,  860,  861,  862,  863,  864,  865,  866,  867,  868,        858,  859,  861,  862,  863,  864,  865,  866,  867,  868,
       869,  870,  871,  872,  873,  874,  875,  717,  876,  720,        869,  870,  871,  872,  873,  874,  875,  876,  877,  878,
       877,  878,  879,  725,  727,  880,  881,  882,  883,  884,        879,  880,  721,  881,  724,  882,  883,  884,  729,  731,
       885,  886,  887,  888,  889,  890,  891,  892,  894,  895,        885,  886,  887,  888,  889,  890,  891,  892,  893,  894,
   
       896,  897,  898,  899,  900,  901,  902,  903,  904,  905,        895,  896,  897,  899,  900,  901,  902,  903,  904,  905,
       906,  922,  924,  925,  926,  927,  761,  928,  764,  907,        906,  907,  908,  909,  910,  911,  927,  929,  930,  931,
       908,  909,  910,  911,  912,  913,  914,  915,  916,  929,        932,  765,  933,  768,  912,  913,  914,  915,  916,  917,
       930,  931,  917,  932,  770,  918,  933,  934,  919,  920,        918,  919,  920,  921,  934,  935,  936,  922,  937,  774,
       774,  935,  921,  936,  938,  940,  942,  781,  943,  944,        923,  938,  939,  924,  925,  778,  940,  926,  941,  943,
       945,  946,  948,  949,  789,  790,  791,  950,  951,  953,        945,  947,  785,  948,  949,  950,  951,  952,  954,  955,
       954,  797,  955,  956,  957,  958,  959,  960,  961,  963,        794,  795,  796,  956,  957,  959,  960,  802,  961,  962,
       964,  965,  966,  967,  968,  969,  970,  971,  972,  977,        963,  964,  965,  966,  967,  969,  970,  971,  972,  973,
       978,  979,  980,  981,  973,  982,  821,  823,  983,  984,        974,  975,  976,  977,  978,  983,  984,  985,  986,  987,
       985,  986,  987,  988,  974,  975,  989,  990,  991,  976,        979,  988,  826,  828,  989,  990,  991,  992,  993,  994,
   
       992,  993,  994,  995,  996,  997,  998,  999, 1000,  843,        980,  981,  995,  996,  997,  982,  998,  999, 1000, 1001,
      1002,  846,  848, 1003, 1004, 1005, 1006, 1008, 1009,  856,       1002, 1003, 1004, 1005, 1006,  848, 1008,  851,  853, 1009,
      1010, 1011, 1012, 1013, 1014, 1015, 1017, 1018, 1019, 1020,       1010, 1011, 1012, 1014, 1015,  861, 1016, 1017, 1018, 1019,
      1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1030, 1031,       1020, 1021, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
      1032, 1033, 1034, 1036, 1037, 1039, 1041, 1043, 1044, 1045,       1031, 1032, 1033, 1034, 1036, 1037, 1038, 1039, 1040, 1042,
      1047, 1049, 1050, 1051, 1052, 1053,  894, 1055, 1056, 1057,       1043, 1045, 1047, 1049, 1050, 1051, 1053, 1055, 1056, 1057,
      1058, 1059, 1060, 1061, 1063, 1064, 1065, 1066, 1067, 1069,       1058, 1059,  899, 1061, 1062, 1063, 1064, 1065, 1066, 1067,
      1070, 1071, 1072, 1077, 1068, 1075, 1078, 1080, 1082, 1073,       1069, 1070, 1071, 1072, 1073, 1075, 1076, 1077, 1078, 1083,
      1079, 1083, 1084, 1085, 1081, 1088, 1074, 1089, 1076, 1090,       1074, 1081, 1084, 1086, 1088, 1079, 1085, 1089, 1090, 1091,
      1086, 1091,  924, 1092, 1093, 1095, 1096, 1087, 1097, 1098,       1087, 1094, 1080, 1095, 1082, 1096, 1092, 1097,  929, 1098,
   
      1099, 1100, 1102, 1103, 1104, 1105,  938,  940,  942, 1106,       1099, 1101, 1102, 1093, 1103, 1104, 1105, 1106, 1108, 1109,
      1107, 1109, 1111,  948, 1112, 1113, 1114,  953, 1115, 1116,       1110, 1111,  943,  945,  947, 1112, 1113, 1115, 1117, 1118,
      1117, 1118, 1119, 1120, 1121, 1122,  963, 1123, 1124, 1125,        954, 1119, 1120, 1121,  959, 1122, 1123, 1124, 1125, 1126,
      1126, 1127, 1129, 1130, 1131, 1132, 1133, 1134, 1136, 1141,       1127, 1128, 1129,  969, 1130, 1131, 1132, 1133, 1134, 1136,
      1138, 1143, 1145, 1135, 1139, 1146, 1137, 1147, 1148, 1149,       1137, 1138, 1139, 1140, 1141, 1143, 1148, 1145, 1150, 1152,
      1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1159, 1161,       1142, 1146, 1153, 1144, 1154, 1155, 1156, 1158, 1159, 1160,
      1162, 1163, 1165, 1166, 1160, 1167, 1164, 1168, 1169, 1002,       1161, 1162, 1163, 1164, 1165, 1166, 1168, 1169, 1170, 1172,
      1171, 1172, 1173, 1174, 1008, 1175, 1176, 1178, 1179, 1180,       1173, 1167, 1174, 1171, 1175, 1176, 1008, 1178, 1179, 1180,
      1182, 1183, 1017, 1185, 1187, 1188, 1189, 1190, 1191, 1192,       1181, 1014, 1182, 1183, 1185, 1186, 1187, 1189, 1190, 1023,
      1193, 1195, 1196, 1197, 1030, 1199, 1200, 1202, 1204, 1036,       1192, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1202, 1203,
   
      1205, 1039, 1041, 1043, 1206, 1208, 1047, 1049, 1209, 1210,       1204, 1036, 1206, 1207, 1209, 1211, 1042, 1212, 1045, 1047,
      1212, 1213, 1055, 1214, 1215, 1216, 1217, 1218, 1219, 1063,       1049, 1213, 1215, 1053, 1055, 1216, 1217, 1219, 1220, 1061,
      1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229,       1221, 1222, 1223, 1224, 1225, 1226, 1069, 1227, 1228, 1229,
      1230, 1233, 1231, 1235, 1236, 1237, 1238, 1239, 1240, 1232,       1230, 1231, 1232, 1233, 1234, 1235, 1236, 1237, 1240, 1238,
      1241, 1242, 1243, 1244, 1245, 1246, 1234, 1247, 1248, 1249,       1242, 1243, 1244, 1245, 1246, 1247, 1239, 1248, 1249, 1250,
      1251, 1252, 1253, 1095, 1254, 1255, 1256, 1257, 1258, 1102,       1251, 1252, 1253, 1241, 1254, 1255, 1256, 1258, 1259, 1260,
      1259, 1261, 1262, 1263, 1265, 1109, 1111, 1266, 1267, 1269,       1101, 1261, 1262, 1263, 1264, 1265, 1108, 1266, 1268, 1269,
      1270, 1271, 1272, 1273, 1274, 1275, 1277, 1278, 1279, 1280,       1270, 1272, 1115, 1117, 1273, 1274, 1275, 1277, 1278, 1279,
      1281, 1283, 1284, 1129, 1285, 1286, 1287, 1288, 1289, 1290,       1280, 1281, 1282, 1283, 1285, 1286, 1287, 1288, 1289, 1291,
      1291, 1292, 1293, 1294, 1141, 1143, 1145, 1296, 1298, 1299,       1292, 1136, 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300,
   
      1301, 1151, 1302, 1303, 1304, 1306, 1307, 1308, 1309, 1305,       1301, 1302, 1148, 1150, 1152, 1304, 1306, 1307, 1309, 1158,
      1311, 1312, 1313, 1310, 1314, 1316, 1317, 1318, 1319, 1320,       1310, 1311, 1312, 1314, 1315, 1316, 1317, 1313, 1319, 1320,
      1322, 1323, 1325, 1171, 1321, 1327, 1324, 1328, 1329, 1334,       1321, 1318, 1322, 1324, 1325, 1326, 1327, 1328, 1330, 1331,
      1335, 1178, 1337, 1338, 1330, 1182, 1339, 1185, 1187, 1341,       1333, 1178, 1329, 1335, 1332, 1336, 1337, 1342, 1343, 1185,
      1342, 1343, 1345, 1346, 1331, 1332, 1347, 1195, 1348, 1333,       1345, 1346, 1338, 1189, 1347, 1192, 1194, 1349, 1350, 1351,
      1350, 1199, 1351, 1202, 1204, 1352, 1353, 1208, 1354, 1355,       1353, 1354, 1339, 1340, 1355, 1202, 1356, 1341, 1358, 1206,
      1212, 1356, 1357, 1358, 1360, 1361, 1362, 1363, 1365, 1366,       1359, 1209, 1211, 1360, 1361, 1215, 1362, 1363, 1219, 1364,
      1367, 1368, 1369, 1370, 1371, 1372, 1373, 1374, 1375, 1376,       1365, 1366, 1368, 1369, 1370, 1371, 1373, 1374, 1375, 1376,
      1377, 1378, 1379, 1380, 1381, 1382, 1383, 1384, 1385, 1386,       1377, 1378, 1379, 1380, 1381, 1382, 1383, 1384, 1385, 1386,
      1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1251, 1395,       1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1395, 1396,
   
      1396, 1398, 1399, 1401, 1402, 1403, 1405, 1261, 1406, 1407,       1397, 1398, 1399, 1400, 1401, 1402, 1258, 1403, 1404, 1406,
      1265, 1408, 1410, 1269, 1412, 1413, 1415, 1417, 1418, 1420,       1407, 1409, 1410, 1411, 1413, 1268, 1414, 1415, 1272, 1416,
      1277, 1421, 1422, 1424, 1425, 1283, 1426, 1427, 1428, 1429,       1417, 1419, 1277, 1421, 1422, 1424, 1426, 1427, 1429, 1285,
      1430, 1431, 1432, 1433, 1434, 1435, 1436, 1296, 1298, 1437,       1430, 1431, 1433, 1434, 1291, 1435, 1436, 1437, 1438, 1439,
      1301, 1438, 1440, 1442, 1443, 1444, 1439, 1445, 1447, 1449,       1440, 1441, 1442, 1443, 1444, 1445, 1304, 1306, 1446, 1309,
      1452, 1457, 1446, 1448, 1450, 1453, 1454, 1455, 1458, 1459,       1447, 1449, 1451, 1452, 1453, 1448, 1454, 1456, 1458, 1461,
      1316, 1460, 1456, 1461, 1462, 1465, 1466, 1467, 1468, 1463,       1466, 1455, 1457, 1459, 1462, 1463, 1464, 1467, 1468, 1324,
      1471, 1472, 1473, 1469, 1474, 1327, 1475, 1476, 1477, 1478,       1469, 1465, 1470, 1471, 1474, 1475, 1476, 1477, 1472, 1480,
      1479, 1480, 1483, 1485, 1337, 1481, 1486, 1487, 1341, 1488,       1481, 1482, 1478, 1483, 1335, 1484, 1485, 1486, 1487, 1488,
      1490, 1345, 1491, 1492, 1494, 1350, 1495, 1497, 1498, 1500,       1489, 1492, 1494, 1345, 1490, 1495, 1496, 1349, 1497, 1499,
   
      1501, 1502, 1503, 1505, 1360, 1506, 1507, 1508, 1365, 1509,       1353, 1500, 1501, 1503, 1358, 1504, 1506, 1507, 1509, 1510,
      1511, 1512, 1513, 1515, 1516, 1517, 1518, 1519, 1520, 1521,       1511, 1512, 1514, 1368, 1515, 1516, 1517, 1373, 1518, 1520,
      1522, 1523, 1524, 1525, 1526, 1527, 1528, 1510, 1529, 1530,       1521, 1522, 1524, 1525, 1526, 1527, 1528, 1529, 1530, 1531,
      1531, 1532, 1533, 1534, 1535, 1536, 1537, 1538, 1539, 1540,       1532, 1533, 1534, 1535, 1536, 1537, 1519, 1538, 1539, 1540,
      1541, 1398, 1543, 1401, 1544, 1546, 1405, 1547, 1549, 1551,       1541, 1542, 1543, 1544, 1545, 1546, 1547, 1548, 1549, 1550,
      1410, 1412, 1552, 1415, 1417, 1553, 1420, 1554, 1555, 1424,       1406, 1552, 1409, 1553, 1555, 1413, 1556, 1558, 1560, 1562,
      1556, 1557, 1558, 1559, 1561, 1562, 1563, 1565, 1566, 1567,       1419, 1421, 1563, 1424, 1426, 1564, 1429, 1565, 1566, 1433,
      1568, 1569, 1570, 1572, 1573, 1574, 1575, 1442, 1577, 1578,       1567, 1568, 1569, 1570, 1572, 1573, 1574, 1576, 1577, 1578,
      1580, 1576, 1581, 1582, 1584, 1585, 1586, 1588, 1589, 1590,       1579, 1580, 1581, 1583, 1584, 1585, 1586, 1451, 1588, 1589,
      1452, 1591, 1592, 1594, 1595, 1596, 1597, 1599, 1601, 1603,       1591, 1587, 1592, 1593, 1595, 1596, 1597, 1599, 1600, 1601,
   
      1604, 1598, 1600, 1602, 1606, 1607, 1608, 1465, 1609, 1610,       1461, 1602, 1603, 1605, 1606, 1607, 1608, 1610, 1612, 1614,
      1612, 1613, 1614, 1471, 1615, 1616, 1617, 1619, 1620, 1621,       1615, 1609, 1611, 1613, 1617, 1618, 1619, 1474, 1620, 1621,
      1622, 1623, 1624, 1625, 1483, 1485, 1627, 1629, 1631, 1490,       1623, 1624, 1625, 1480, 1626, 1627, 1628, 1630, 1631, 1632,
      1632, 1633, 1494, 1634, 1497, 1635, 1500, 1636, 1638, 1640,       1633, 1634, 1635, 1636, 1492, 1494, 1638, 1640, 1642, 1499,
      1505, 1641, 1643, 1644, 1646, 1647, 1649, 1650, 1651, 1515,       1643, 1644, 1503, 1645, 1506, 1646, 1509, 1647, 1649, 1651,
      1653, 1654, 1655, 1656, 1658, 1659, 1660, 1661, 1662, 1663,       1514, 1652, 1654, 1655, 1657, 1658, 1660, 1661, 1662, 1524,
      1664, 1666, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675,       1664, 1665, 1666, 1667, 1669, 1670, 1671, 1672, 1673, 1674,
      1676, 1678, 1679, 1680, 1681, 1682, 1543, 1684, 1546, 1685,       1675, 1677, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686,
      1549, 1551, 1686, 1688, 1689, 1690, 1691, 1692, 1693, 1694,       1687, 1689, 1690, 1691, 1692, 1693, 1552, 1695, 1555, 1696,
      1561, 1696, 1698, 1565, 1699, 1700, 1702, 1703, 1704, 1572,       1558, 1560, 1562, 1697, 1699, 1700, 1701, 1702, 1703, 1704,
   
      1705, 1706, 1708, 1709, 1710, 1711, 1712, 1580, 1713, 1714,       1705, 1572, 1707, 1709, 1576, 1710, 1711, 1713, 1714, 1715,
      1584, 1715, 1716, 1588, 1717, 1718, 1719, 1720, 1594, 1721,       1583, 1716, 1717, 1719, 1720, 1721, 1722, 1723, 1591, 1724,
      1722, 1724, 1725, 1726, 1728, 1729, 1730, 1732, 1733, 1734,       1725, 1595, 1726, 1727, 1599, 1728, 1729, 1730, 1731, 1605,
      1735, 1736, 1606, 1737, 1738, 1739, 1740, 1612, 1741, 1742,       1732, 1733, 1735, 1736, 1737, 1739, 1740, 1741, 1743, 1744,
      1743, 1744, 1745, 1619, 1747, 1748, 1749, 1746, 1750, 1751,       1745, 1746, 1747, 1617, 1748, 1749, 1750, 1751, 1623, 1752,
      1752, 1627, 1629, 1631, 1754, 1755, 1756, 1757, 1758, 1638,       1753, 1754, 1755, 1756, 1630, 1758, 1759, 1760, 1757, 1761,
      1640, 1760, 1643, 1761, 1646, 1762, 1649, 1763, 1764, 1653,       1762, 1763, 1638, 1640, 1642, 1765, 1766, 1767, 1768, 1769,
      1766, 1767, 1769, 1658, 1770, 1771, 1773, 1774, 1776, 1777,       1649, 1651, 1771, 1654, 1772, 1657, 1773, 1660, 1774, 1775,
      1666, 1668, 1778, 1779, 1780, 1781, 1783, 1784, 1785, 1786,       1664, 1777, 1778, 1780, 1669, 1781, 1782, 1784, 1785, 1787,
      1678, 1787, 1788, 1790, 1791, 1684, 1793, 1794, 1688, 1795,       1788, 1677, 1679, 1789, 1790, 1791, 1792, 1794, 1795, 1796,
   
      1796, 1798, 1800, 1801, 1802, 1696, 1698, 1803, 1805, 1702,       1797, 1689, 1798, 1799, 1801, 1802, 1695, 1804, 1805, 1699,
      1806, 1807, 1808, 1809, 1708, 1810, 1811, 1812, 1813, 1814,       1806, 1807, 1809, 1811, 1812, 1813, 1707, 1709, 1814, 1816,
      1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1724,       1713, 1817, 1818, 1819, 1820, 1719, 1821, 1822, 1823, 1824,
      1824, 1825, 1728, 1826, 1827, 1732, 1828, 1829, 1830, 1831,       1825, 1826, 1827, 1828, 1829, 1830, 1831, 1832, 1833, 1834,
      1832, 1833, 1834, 1835, 1836, 1837, 1838, 1839, 1841, 1842,       1735, 1835, 1836, 1739, 1837, 1838, 1743, 1839, 1840, 1841,
      1843, 1845, 1846, 1848, 1849, 1850, 1851, 1754, 1853, 1854,       1842, 1843, 1844, 1845, 1846, 1847, 1848, 1849, 1850, 1852,
      1856, 1857, 1760, 1859, 1860, 1861, 1863, 1766, 1864, 1769,       1853, 1854, 1856, 1857, 1859, 1860, 1861, 1862, 1765, 1864,
      1865, 1866, 1773, 1867, 1776, 1868, 1869, 1870, 1871, 1872,       1865, 1867, 1868, 1771, 1870, 1871, 1872, 1874, 1777, 1875,
      1783, 1873, 1874, 1876, 1877, 1878, 1790, 1880, 1793, 1881,       1780, 1876, 1877, 1784, 1878, 1787, 1879, 1880, 1881, 1882,
      1883, 1885, 1798, 1800, 1886, 1888, 1890, 1805, 1892, 1893,       1883, 1794, 1884, 1885, 1887, 1888, 1889, 1801, 1891, 1804,
   
      1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903,       1892, 1894, 1896, 1809, 1811, 1897, 1899, 1901, 1816, 1903,
      1904, 1905, 1906, 1907, 1908, 1909, 1910, 1911, 1912, 1913,       1904, 1905, 1906, 1907, 1908, 1909, 1910, 1911, 1912, 1913,
      1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921, 1922, 1923,       1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921, 1922, 1923,
      1924, 1925, 1841, 1926, 1927, 1845, 1929, 1848, 1930, 1932,       1924, 1925, 1926, 1927, 1928, 1929, 1930, 1931, 1932, 1933,
      1933, 1853, 1935, 1856, 1937, 1859, 1938, 1939, 1863, 1940,       1934, 1935, 1936, 1852, 1937, 1938, 1856, 1940, 1859, 1941,
      1941, 1942, 1944, 1945, 1946, 1947, 1948, 1949, 1950, 1951,       1943, 1944, 1864, 1946, 1867, 1948, 1870, 1949, 1950, 1874,
      1876, 1952, 1953, 1880, 1955, 1883, 1885, 1957, 1888, 1890,       1951, 1952, 1953, 1955, 1956, 1957, 1958, 1959, 1960, 1961,
      1892, 1958, 1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966,       1962, 1887, 1963, 1964, 1891, 1966, 1894, 1896, 1968, 1899,
      1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976,       1901, 1903, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976,
      1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986,       1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986,
   
      1987, 1988, 1989, 1990, 1991, 1992, 1929, 1994, 1932, 1995,       1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
      1935, 1937, 1997, 1999, 2000, 2001, 2002, 1944, 2003, 2005,       1997, 1998, 1999, 2000, 2001, 2002, 2003, 1940, 2005, 1943,
      2007, 2009, 2011, 2013, 2015, 2016, 2017, 1955, 1957, 2018,       2006, 1946, 1948, 2008, 2010, 2011, 2012, 2013, 1955, 2014,
      2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026, 2027, 2028,       2016, 2018, 2020, 2022, 2024, 2026, 2027, 2028, 1966, 1968,
      2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038,       2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038,
      2039, 2040, 2041, 2043, 2044, 2045, 2046, 2047, 2048, 2049,       2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048,
      2050, 2051, 2052, 2053, 1994, 2055, 1997, 1999, 2056, 2058,       2049, 2050, 2051, 2052, 2054, 2055, 2056, 2057, 2058, 2059,
      2059, 2060, 2005, 2007, 2009, 2011, 2013, 2015, 2061, 2062,       2060, 2061, 2062, 2063, 2064, 2005, 2066, 2008, 2010, 2067,
      2063, 2064, 2065, 2066, 2067, 2068, 2070, 2071, 2072, 2073,       2069, 2070, 2071, 2016, 2018, 2020, 2022, 2024, 2026, 2072,
      2074, 2075, 2076, 2077, 2079, 2080, 2081, 2082, 2083, 2084,       2073, 2074, 2075, 2076, 2077, 2078, 2079, 2081, 2082, 2083,
   
      2085, 2086, 2087, 2089, 2043, 2090, 2091, 2092, 2094, 2095,       2084, 2085, 2086, 2087, 2088, 2090, 2091, 2092, 2093, 2094,
      2096, 2097, 2099, 2100, 2101, 2055, 2102, 2058, 2103, 2104,       2095, 2096, 2097, 2098, 2100, 2054, 2101, 2102, 2103, 2105,
      2105, 2106, 2107, 2108, 2110, 2111, 2112, 2114, 2070, 2115,       2106, 2107, 2108, 2110, 2111, 2112, 2066, 2113, 2069, 2114,
      2117, 2118, 2120, 2121, 2123, 2125, 2079, 2126, 2128, 2129,       2115, 2116, 2117, 2118, 2119, 2121, 2122, 2123, 2125, 2081,
      2130, 2131, 2132, 2133, 2134, 2089, 2135, 2137, 2139, 2094,       2126, 2128, 2129, 2131, 2132, 2134, 2136, 2090, 2137, 2139,
      2140, 2142, 2144, 2099, 2145, 2146, 2147, 2148, 2150, 2152,       2140, 2141, 2142, 2143, 2144, 2145, 2100, 2146, 2148, 2150,
      2154, 2155, 2157, 2110, 2158, 2160, 2114, 2162, 2117, 2164,       2105, 2151, 2153, 2155, 2110, 2156, 2157, 2158, 2159, 2161,
      2120, 2166, 2123, 2125, 2168, 2128, 2169, 2171, 2172, 2174,       2163, 2165, 2166, 2168, 2121, 2169, 2171, 2125, 2173, 2128,
      2175, 2177, 2179, 2137, 2139, 2181, 2142, 2144, 2182, 2183,       2175, 2131, 2177, 2134, 2136, 2179, 2139, 2180, 2182, 2183,
      2185, 2187, 2150, 2152, 2154, 2188, 2157, 2190, 2160, 2162,       2185, 2186, 2188, 2190, 2148, 2150, 2192, 2153, 2155, 2193,
   
      2164, 2166, 2168, 2192, 2171, 2194, 2174, 2196, 2177, 2179,       2194, 2196, 2198, 2161, 2163, 2165, 2199, 2168, 2201, 2171,
      2181, 2197, 2199, 2185, 2187, 2201, 2190, 2192, 2194, 2196,       2173, 2175, 2177, 2179, 2203, 2182, 2205, 2185, 2207, 2188,
      2203, 2199, 2201, 2203,    8,    8,   35,   35,   38,   38,       2190, 2192, 2208, 2210, 2196, 2198, 2212, 2201, 2203, 2205,
        40,   41,   41,  120,  222,  225,  228,  269,  329,  350,       2207, 2214, 2210, 2212, 2214,    8,    8,   35,   35,   38,
       379,  382,  389,  392,  397,  412,  460,  480,  496,  498,         38,   40,   41,   41,  120,  223,  226,  229,  270,  330,
       507,  536,  541,  571,  581,  594,  606,  628,  642,  691,        351,  381,  384,  391,  394,  399,  414,  462,  482,  499,
       716,  719,  724,  726,  760,  763,  769,  773,  780,  788,        501,  510,  539,  544,  574,  584,  597,  609,  631,  646,
       796,  820,  822,  842,  845,  847,  855,  893,  923,  937,        695,  720,  723,  728,  730,  764,  767,  773,  777,  784,
       939,  941,  947,  952,  962, 1001, 1007, 1016, 1029, 1035,        793,  801,  825,  827,  847,  850,  852,  860,  898,  928,
      1038, 1040, 1042, 1046, 1048, 1054, 1062, 1094, 1101, 1108,        942,  944,  946,  953,  958,  968, 1007, 1013, 1022, 1035,
   
      1110, 1128, 1140, 1142, 1144, 1150, 1170, 1177, 1177, 1181,       1041, 1044, 1046, 1048, 1052, 1054, 1060, 1068, 1100, 1107,
      1184, 1186, 1194, 1198, 1201, 1203, 1207, 1211, 1250, 1260,       1114, 1116, 1135, 1147, 1149, 1151, 1157, 1177, 1184, 1184,
      1264, 1268, 1276, 1282, 1295, 1297, 1300, 1315, 1326, 1336,       1188, 1191, 1193, 1201, 1205, 1208, 1210, 1214, 1218, 1257,
      1340, 1344, 1349, 1359, 1364, 1397, 1400, 1404, 1409, 1411,       1267, 1271, 1276, 1284, 1290, 1303, 1305, 1308, 1323, 1334,
      1414, 1416, 1419, 1423, 1441, 1451, 1464, 1470, 1482, 1484,       1344, 1348, 1352, 1357, 1367, 1372, 1405, 1408, 1412, 1418,
      1489, 1493, 1496, 1499, 1504, 1514, 1542, 1545, 1548, 1550,       1420, 1423, 1425, 1428, 1432, 1450, 1460, 1473, 1479, 1491,
      1560, 1564, 1571, 1579, 1583, 1587, 1593, 1605, 1611, 1618,       1493, 1498, 1502, 1505, 1508, 1513, 1523, 1551, 1554, 1557,
      1626, 1628, 1630, 1637, 1639, 1642, 1645, 1648, 1652, 1657,       1559, 1561, 1571, 1575, 1582, 1590, 1594, 1598, 1604, 1616,
      1665, 1667, 1677, 1683, 1687, 1695, 1697, 1701, 1707, 1723,       1622, 1629, 1637, 1639, 1641, 1648, 1650, 1653, 1656, 1659,
      1727, 1731, 1753, 1759, 1765, 1768, 1772, 1775, 1782, 1789,       1663, 1668, 1676, 1678, 1688, 1694, 1698, 1706, 1708, 1712,
   
      1792, 1797, 1799, 1804, 1840, 1844, 1847, 1852, 1855, 1858,       1718, 1734, 1738, 1742, 1764, 1770, 1776, 1779, 1783, 1786,
      1862, 1875, 1879, 1882, 1884, 1887, 1889, 1891, 1928, 1931,       1793, 1800, 1803, 1808, 1810, 1815, 1851, 1855, 1858, 1863,
      1934, 1936, 1943, 1954, 1956, 1993, 1996, 1998, 2004, 2006,       1866, 1869, 1873, 1886, 1890, 1893, 1895, 1898, 1900, 1902,
      2008, 2010, 2012, 2014, 2042, 2054, 2057, 2069, 2078, 2088,       1939, 1942, 1945, 1947, 1954, 1965, 1967, 2004, 2007, 2009,
      2093, 2098, 2109, 2113, 2116, 2119, 2122, 2124, 2127, 2136,       2015, 2017, 2019, 2021, 2023, 2025, 2053, 2065, 2068, 2080,
      2138, 2141, 2143, 2149, 2151, 2153, 2156, 2159, 2161, 2163,       2089, 2099, 2104, 2109, 2120, 2124, 2127, 2130, 2133, 2135,
      2165, 2167, 2170, 2173, 2176, 2178, 2180, 2184, 2186, 2189,       2138, 2147, 2149, 2152, 2154, 2160, 2162, 2164, 2167, 2170,
      2191, 2193, 2195, 2198, 2200, 2202,  764,  762,  761,  759,       2172, 2174, 2176, 2178, 2181, 2184, 2187, 2189, 2191, 2195,
       758,  757,  756,  755,  754,  753,  607,  750,  749,  748,       2197, 2200, 2202, 2204, 2206, 2209, 2211, 2213,  765,  763,
       747,  746,  745,  744,  743,  742,  741,  595,  740,  739,        762,  761,  760,  759,  758,  757,  610,  754,  753,  752,
   
       738,  737,  736,  735,  734,  733,  732,  731,  730,  582,        751,  750,  749,  748,  747,  746,  745,  598,  744,  743,
       729,  728,  727,  725,  723,  722,  721,  720,  572,  718,        742,  741,  740,  739,  738,  737,  736,  735,  734,  585,
       717,  715,  714,  713,  712,  709,  708,  707,  706,  705,        733,  732,  731,  729,  727,  726,  725,  724,  575,  722,
       704,  703,  702,  701,  700,  699,  698,  697,  696,  695,        721,  719,  718,  717,  716,  713,  712,  711,  710,  709,
       694,  693,  692,  690,  689,  688,  542,  687,  686,  685,        708,  707,  706,  705,  704,  703,  702,  701,  700,  699,
       537,  684,  674,  673,  672,  671,  670,  669,  668,  667,        698,  697,  696,  694,  693,  692,  545,  691,  690,  689,
       666,  665,  664,  663,  662,  659,  658,  657,  656,  655,        540,  688,  678,  677,  676,  675,  674,  673,  672,  671,
       654,  653,  652,  651,  648,  508,  647,  646,  645,  644,        670,  669,  668,  667,  666,  663,  662,  661,  660,  659,
       643,  641,  640,  499,  497,  639,  638,  637,  636,  635,        658,  657,  656,  655,  652,  511,  651,  650,  649,  648,
       634,  633,  632,  631,  630,  629,  627,  626,  625,  481,        647,  645,  644,  502,  500,  643,  642,  641,  640,  639,
   
       624,  623,  622,  621,  620,  617,  616,  615,  614,  613,        638,  637,  636,  635,  634,  633,  632,  630,  629,  628,
       612,  611,  610,  609,  608,  607,  605,  461,  604,  600,        483,  627,  626,  625,  624,  623,  620,  619,  618,  617,
       599,  598,  597,  596,  595,  591,  590,  589,  588,  587,        616,  615,  614,  613,  612,  611,  610,  608,  463,  607,
       586,  585,  582,  580,  579,  578,  577,  576,  575,  574,        603,  602,  601,  600,  599,  598,  594,  593,  592,  591,
       573,  572,  570,  569,  564,  563,  562,  561,  560,  559,        590,  589,  588,  585,  583,  582,  581,  580,  579,  578,
       558,  557,  556,  555,  554,  553,  552,  551,  413,  550,        577,  576,  575,  573,  572,  567,  566,  565,  564,  563,
       549,  548,  547,  546,  545,  544,  543,  542,  540,  537,        562,  561,  560,  559,  558,  557,  556,  555,  554,  415,
       535,  398,  534,  533,  532,  393,  531,  390,  530,  529,        553,  552,  551,  550,  549,  548,  547,  546,  545,  543,
       528,  527,  526,  383,  525,  380,  524,  523,  522,  521,        540,  538,  400,  537,  536,  535,  395,  534,  392,  533,
       520,  519,  518,  517,  514,  513,  512,  511,  510,  509,        532,  531,  530,  529,  385,  528,  382,  527,  526,  525,
   
       508,  506,  505,  504,  503,  502,  501,  500,  499,  497,        524,  523,  522,  521,  520,  517,  516,  515,  514,  513,
       495,  494,  351,  493,  492,  491,  490,  489,  488,  487,        512,  511,  509,  508,  507,  506,  505,  504,  503,  502,
       486,  485,  484,  483,  482,  481,  479,  478,  477,  476,        500,  498,  497,  496,  352,  495,  494,  493,  492,  491,
       475,  474,  330,  473,  472,  471,  468,  467,  466,  465,        490,  489,  488,  487,  486,  485,  484,  483,  481,  480,
       464,  463,  462,  461,  459,  458,  457,  456,  455,  454,        479,  478,  477,  476,  331,  475,  474,  473,  470,  469,
       453,  452,  446,  445,  444,  443,  442,  441,  438,  437,        468,  467,  466,  465,  464,  463,  461,  460,  459,  458,
       436,  435,  434,  433,  432,  431,  430,  429,  428,  427,        457,  456,  455,  454,  448,  447,  446,  445,  444,  443,
       426,  425,  422,  421,  420,  419,  418,  417,  416,  415,        440,  439,  438,  437,  436,  435,  434,  433,  432,  431,
       414,  413,  411,  410,  270,  409,  408,  407,  406,  405,        430,  429,  428,  427,  424,  423,  422,  421,  420,  419,
       404,  403,  402,  401,  400,  399,  398,  396,  395,  394,        418,  417,  416,  415,  413,  412,  271,  411,  410,  409,
   
       393,  391,  390,  388,  387,  386,  385,  384,  383,  381,        408,  407,  406,  405,  404,  403,  402,  401,  400,  398,
       380,  378,  368,  367,  366,  365,  364,  363,  358,  229,        397,  396,  395,  393,  392,  390,  389,  388,  387,  386,
       357,  226,  356,  223,  355,  354,  353,  352,  351,  349,        385,  383,  382,  380,  370,  369,  368,  367,  366,  365,
       348,  347,  346,  345,  344,  343,  342,  341,  340,  339,        360,  230,  359,  227,  358,  224,  357,  356,  355,  354,
       338,  337,  336,  332,  331,  330,  328,  327,  326,  325,        353,  352,  350,  349,  348,  347,  346,  345,  344,  343,
       324,  323,  322,  321,  320,  319,  318,  317,  316,  315,        342,  341,  340,  339,  338,  337,  333,  332,  331,  329,
       314,  313,  312,  311,  310,  309,  303,  302,  299,  298,        328,  327,  326,  325,  324,  323,  322,  321,  320,  319,
       297,  293,  292,  291,  290,  289,  288,  287,  286,  273,        318,  317,  316,  315,  314,  313,  312,  311,  310,  304,
       272,  271,  270,  268,  267,  266,  265,  264,  263,  262,        303,  300,  299,  298,  294,  293,  292,  291,  290,  289,
       259,  256,  253,  252,  251,  240,  239,  238,  237,  236,        288,  287,  274,  273,  272,  271,  269,  268,  267,  266,
   
       235,  234,  233,  232,  231,  230,  229,  227,  226,  224,        265,  264,  263,  260,  257,  254,  253,  252,  241,  240,
       223,  218,  217,  214,  213,  208,  207,  206,  205,  195,        239,  238,  237,  236,  235,  234,  233,  232,  231,  230,
       194,  193,  188,  187,  186,  183,  180,  179,  178,  177,        228,  227,  225,  224,  217,  214,  213,  208,  207,  206,
       176,  175,  167,  166,  165,  164,  163,  162,  159,  158,        205,  195,  194,  193,  188,  187,  186,  183,  180,  179,
       157,  156,  155,  154,  153,  152,  151,  150,  149,  148,        178,  177,  176,  175,  167,  166,  165,  164,  163,  162,
       147,  146,  145,  144,  143,  142,  141,  140,  139,  138,        159,  158,  157,  156,  155,  154,  153,  152,  151,  150,
       135,  134,  133,  132,  129,  128,  127,  126,   42,  123,        149,  148,  147,  146,  145,  144,  143,  142,  141,  140,
       119,  110,   79,   42, 2204,    7, 2204, 2204, 2204, 2204,        139,  138,  135,  134,  133,  132,  129,  128,  127,  126,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,         42,  123,  119,  110,   79,   42, 2215,    7, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
   
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
        2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
        2215
     } ;      } ;
   
 static yyconst short int yy_chk[2510] =  static yyconst short int yy_chk[2522] =
     {   0,      {   0,
         0,   11,    1,    1,   11,    1,    2,    2,    2,    2,          0,   11,    1,    1,   11,    1,    2,    2,    2,    2,
         2,    2,    2,    2,    2,    2,    2,    2,    2,    2,          2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
         2,    2,    2,    2,    2,    2,    2,    2,    2,    2,          2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
         2,    2,    2,    2,    2,    2,    2,    2,    2,    3,          2,    2,    2,    2,    2,    2,    2,    2,    2,    3,
         4,    5,    3,    4,    5,    6,   13,   33,    6,    4,          4,    5,    3,    4,    5,    6,   13,   33,    6,    4,
        12,   92,   15,   13,   16,   14,   15,  619,   92,   12,         12,   92,   15,   13,   16,   14,   15,  620,   92,   12,
        15,   12,   14,   12,   16,   12,   17,   12,   12,   14,         15,   12,   14,   12,   16,   12,   17,   12,   12,   14,
        33,   18,   16,   19,   16,   14,   20,   17,   18,  620,         33,   18,   16,   19,   16,   14,   20,   17,   18,  621,
        17,   19,   23,   17,   18,   20,   20,   25,   19,   22,         17,   19,   23,   17,   18,   20,   20,   25,   19,   22,
        24,   20,   36,   22,   24,   36,   23,   22,   26,   25,         24,   20,   36,   22,   24,   36,   23,   22,   26,   25,
   
        23,   31,  621,   49,   24,   25,   26,   24,   39,   22,         23,   31,  622,   49,   24,   25,   26,   24,   39,   22,
        27,   39,   26,   49,   27,   26,   29,   94,   94,   43,         27,   39,   26,   49,   27,   26,   29,   94,   94,   43,
        29,   31,   43,   54,   32,  622,   32,   54,   32,   29,         29,   31,   43,   54,   32,  623,   32,   54,   32,   29,
        27,   28,   32,   28,   84,   77,   29,   77,   84,   98,         27,   28,   32,   28,   84,   77,   29,   77,   84,   98,
        28,   85,   99,  104,   28,   85,  138,   84,   28,   85,         28,   85,   99,  104,   28,   85,  624,   84,   28,   85,
        98,   84,  103,  104,  105,   99,  103,  113,  105,  110,         98,   84,  103,  104,  105,   99,  103,  113,  105,  110,
       104,  116,  110,  141,  113,  138,  103,  110,  116,  121,        104,  115,  110,  116,  113,  121,  103,  110,  121,  115,
       124,  105,  121,  124,  110,  116,  139,  140,  140,  145,        116,  105,  124,  138,  110,  124,  139,  116,  140,  140,
       145,  147,  141,  149,  161,  171,  171,  139,  370,  161,        141,  145,  145,  284,  147,  149,  625,  139,  161,  175,
       175,  175,  149,  161,  202,  139,  232,  171,  202,  147,        175,  233,  138,  161,  149,  139,  284,  161,  626,  141,
   
       202,  139,  162,  162,  162,  162,  283,  162,  370,  162,        309,  139,  147,  162,  162,  162,  162,  233,  162,  309,
       231,  231,  232,  254,  254,  298,  298,  300,  300,  283,        162,  202,  171,  171,  372,  202,  627,  202,  232,  232,
       308,  162,  162,  325,  162,  178,  510,  178,  307,  308,        255,  255,  162,  162,  171,  162,  178,  628,  178,  299,
       401,  325,  439,  439,  178,  451,  307,  178,  401,  443,        299,  301,  301,  629,  372,  178,  441,  441,  178,  308,
       178,  239,  623,  239,  239,  307,  510,  443,  451,  239,        326,  178,  240,  403,  240,  240,  445,  308,  326,  513,
       428,  239,  428,  428,  458,  474,  239,  458,  239,  239,        240,  403,  240,  453,  445,  460,  308,  240,  460,  240,
       474,  239,  520,  520,  428,  624,  564,  625,  608,  626,        240,  430,  240,  430,  430,  476,  453,  523,  523,  513,
       627,  458,  534,  534,  534,  534,  564,  608,  629,  630,        476,  567,  460,  611,  630,  430,  537,  537,  537,  537,
       631,  632,  633,  534,  634,  635,  636,  534,  637,  534,        632,  567,  611,  633,  634,  635,  636,  537,  637,  638,
       534,  534,  638,  639,  636,  640,  641,  641,  643,  644,        639,  537,  640,  537,  537,  537,  641,  642,  639,  643,
   
       645,  646,  647,  648,  649,  650,  651,  652,  653,  654,        644,  645,  645,  647,  648,  649,  650,  651,  652,  653,
       655,  656,  657,  658,  659,  660,  661,  662,  663,  664,        654,  655,  656,  657,  658,  659,  660,  661,  662,  663,
       665,  666,  667,  668,  669,  670,  671,  672,  673,  674,        664,  665,  666,  667,  668,  669,  670,  671,  672,  673,
       675,  676,  677,  678,  675,  679,  680,  681,  677,  683,        674,  675,  676,  677,  678,  679,  680,  681,  682,  679,
       682,  684,  683,  683,  685,  686,  678,  682,  687,  688,        683,  684,  685,  681,  687,  686,  688,  687,  687,  689,
       689,  690,  683,  692,  693,  694,  695,  696,  697,  698,        690,  682,  686,  691,  692,  693,  694,  687,  696,  697,
       699,  700,  701,  702,  703,  704,  705,  706,  707,  708,        698,  699,  700,  701,  702,  703,  704,  705,  706,  707,
       709,  710,  711,  712,  713,  714,  715,  717,  718,  720,        708,  709,  710,  711,  712,  713,  714,  715,  716,  717,
       721,  722,  723,  725,  727,  728,  729,  730,  731,  732,        718,  719,  721,  722,  724,  725,  726,  727,  729,  731,
       733,  734,  735,  736,  737,  738,  739,  740,  741,  742,        732,  733,  734,  735,  736,  737,  738,  739,  740,  741,
   
       743,  744,  745,  746,  747,  748,  749,  750,  751,  752,        742,  743,  744,  745,  746,  747,  748,  749,  750,  751,
       753,  755,  756,  757,  758,  759,  761,  762,  764,  753,        752,  753,  754,  755,  756,  757,  759,  760,  761,  762,
       754,  754,  754,  754,  754,  754,  754,  754,  754,  765,        763,  765,  766,  768,  757,  758,  758,  758,  758,  758,
       766,  767,  754,  768,  770,  754,  771,  772,  754,  754,        758,  758,  758,  758,  769,  770,  771,  758,  772,  774,
       774,  775,  754,  776,  777,  778,  779,  781,  782,  783,        758,  775,  776,  758,  758,  778,  779,  758,  780,  781,
       784,  785,  786,  787,  789,  790,  790,  792,  793,  794,        782,  783,  785,  786,  787,  788,  789,  790,  791,  792,
       795,  797,  798,  799,  800,  801,  802,  803,  804,  805,        794,  795,  795,  797,  798,  799,  800,  802,  803,  804,
       806,  807,  808,  809,  810,  811,  812,  813,  813,  814,        805,  806,  807,  808,  809,  810,  811,  812,  813,  814,
       815,  816,  817,  818,  813,  819,  821,  823,  824,  825,        815,  816,  817,  818,  818,  819,  820,  821,  822,  823,
       826,  827,  828,  829,  813,  813,  830,  831,  832,  813,        818,  824,  826,  828,  829,  830,  831,  832,  833,  834,
   
       833,  834,  835,  836,  837,  838,  839,  840,  841,  843,        818,  818,  835,  836,  837,  818,  838,  839,  840,  841,
       844,  846,  848,  849,  850,  851,  852,  853,  854,  856,        842,  843,  844,  845,  846,  848,  849,  851,  853,  854,
       857,  858,  859,  860,  861,  862,  863,  864,  865,  866,        855,  856,  857,  858,  859,  861,  862,  863,  864,  865,
       867,  868,  869,  870,  871,  872,  873,  874,  875,  876,        866,  867,  868,  869,  870,  871,  872,  873,  874,  875,
       877,  878,  879,  880,  881,  882,  883,  884,  885,  886,        876,  877,  878,  879,  880,  881,  882,  883,  884,  885,
       887,  888,  889,  890,  891,  892,  894,  895,  896,  897,        886,  887,  888,  889,  890,  891,  892,  893,  894,  895,
       898,  899,  900,  901,  902,  903,  904,  905,  906,  907,        896,  897,  899,  900,  901,  902,  903,  904,  905,  906,
       908,  909,  910,  912,  906,  911,  913,  914,  915,  910,        907,  908,  909,  910,  911,  912,  913,  914,  915,  917,
       913,  916,  917,  918,  914,  919,  910,  920,  911,  921,        911,  916,  918,  919,  920,  915,  918,  921,  922,  923,
       918,  922,  924,  925,  926,  927,  928,  918,  929,  930,        919,  924,  915,  925,  916,  926,  923,  927,  929,  930,
   
       931,  932,  933,  934,  935,  936,  938,  940,  942,  943,        931,  932,  933,  923,  934,  935,  936,  937,  938,  939,
       944,  945,  946,  948,  949,  950,  951,  953,  954,  955,        940,  941,  943,  945,  947,  948,  949,  950,  951,  952,
       956,  957,  958,  959,  960,  961,  963,  964,  965,  966,        954,  955,  956,  957,  959,  960,  961,  962,  963,  964,
       967,  968,  969,  970,  971,  972,  973,  974,  975,  977,        965,  966,  967,  969,  970,  971,  972,  973,  974,  975,
       976,  978,  979,  974,  976,  980,  975,  981,  982,  983,        976,  977,  978,  979,  980,  981,  983,  982,  984,  985,
       984,  985,  986,  987,  988,  989,  990,  991,  992,  993,        980,  982,  986,  981,  987,  988,  989,  990,  991,  992,
       994,  995,  996,  997,  992,  998,  995,  999, 1000, 1002,        993,  994,  995,  996,  997,  998,  999, 1000, 1001, 1002,
      1003, 1004, 1005, 1006, 1008, 1009, 1010, 1011, 1012, 1013,       1003,  998, 1004, 1001, 1005, 1006, 1008, 1009, 1010, 1011,
      1014, 1015, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,       1012, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1023,
      1025, 1026, 1027, 1028, 1030, 1031, 1032, 1033, 1034, 1036,       1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033,
   
      1037, 1039, 1041, 1043, 1044, 1045, 1047, 1049, 1050, 1051,       1034, 1036, 1037, 1038, 1039, 1040, 1042, 1043, 1045, 1047,
      1052, 1053, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1063,       1049, 1050, 1051, 1053, 1055, 1056, 1057, 1058, 1059, 1061,
      1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073,       1062, 1063, 1064, 1065, 1066, 1067, 1069, 1070, 1071, 1072,
      1074, 1075, 1074, 1076, 1077, 1078, 1079, 1080, 1081, 1074,       1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1080,
      1082, 1083, 1084, 1085, 1086, 1087, 1075, 1088, 1089, 1090,       1082, 1083, 1084, 1085, 1086, 1087, 1080, 1088, 1089, 1090,
      1091, 1092, 1093, 1095, 1096, 1097, 1098, 1099, 1100, 1102,       1091, 1092, 1093, 1081, 1094, 1095, 1096, 1097, 1098, 1099,
      1103, 1104, 1105, 1106, 1107, 1109, 1111, 1112, 1113, 1114,       1101, 1102, 1103, 1104, 1105, 1106, 1108, 1109, 1110, 1111,
      1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,       1112, 1113, 1115, 1117, 1118, 1119, 1120, 1121, 1122, 1123,
      1125, 1126, 1127, 1129, 1130, 1131, 1132, 1133, 1134, 1135,       1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133,
      1136, 1137, 1138, 1139, 1141, 1143, 1145, 1146, 1147, 1148,       1134, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144,
   
      1149, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1154,       1145, 1146, 1148, 1150, 1152, 1153, 1154, 1155, 1156, 1158,
      1159, 1160, 1161, 1158, 1162, 1163, 1164, 1164, 1165, 1166,       1159, 1160, 1161, 1162, 1163, 1164, 1165, 1161, 1166, 1167,
      1167, 1168, 1169, 1171, 1166, 1172, 1168, 1173, 1174, 1175,       1168, 1165, 1169, 1170, 1171, 1171, 1172, 1173, 1174, 1175,
      1176, 1177, 1179, 1180, 1174, 1182, 1183, 1185, 1187, 1188,       1176, 1178, 1173, 1179, 1175, 1180, 1181, 1182, 1183, 1184,
      1189, 1190, 1191, 1192, 1174, 1174, 1193, 1195, 1196, 1174,       1186, 1187, 1181, 1189, 1190, 1192, 1194, 1195, 1196, 1197,
      1197, 1199, 1200, 1202, 1204, 1205, 1206, 1208, 1209, 1210,       1198, 1199, 1181, 1181, 1200, 1202, 1203, 1181, 1204, 1206,
      1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221,       1207, 1209, 1211, 1212, 1213, 1215, 1216, 1217, 1219, 1220,
      1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231,       1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230,
      1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241,       1231, 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240,
      1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1251, 1252,       1241, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250,
   
      1253, 1254, 1255, 1256, 1257, 1258, 1259, 1261, 1262, 1263,       1251, 1252, 1253, 1254, 1255, 1256, 1258, 1259, 1260, 1261,
      1265, 1266, 1267, 1269, 1270, 1271, 1272, 1273, 1274, 1275,       1262, 1263, 1264, 1265, 1266, 1268, 1269, 1270, 1272, 1273,
      1277, 1278, 1279, 1280, 1281, 1283, 1284, 1285, 1286, 1287,       1274, 1275, 1277, 1278, 1279, 1280, 1281, 1282, 1283, 1285,
      1288, 1289, 1290, 1291, 1292, 1293, 1294, 1296, 1298, 1299,       1286, 1287, 1288, 1289, 1291, 1292, 1293, 1294, 1295, 1296,
      1301, 1302, 1303, 1304, 1305, 1305, 1302, 1306, 1307, 1308,       1297, 1298, 1299, 1300, 1301, 1302, 1304, 1306, 1307, 1309,
      1309, 1312, 1306, 1307, 1308, 1310, 1310, 1311, 1313, 1314,       1310, 1311, 1312, 1313, 1313, 1310, 1314, 1315, 1316, 1317,
      1316, 1317, 1311, 1318, 1319, 1320, 1321, 1321, 1322, 1319,       1320, 1314, 1315, 1316, 1318, 1318, 1319, 1321, 1322, 1324,
      1323, 1324, 1324, 1322, 1325, 1327, 1328, 1329, 1330, 1331,       1325, 1319, 1326, 1327, 1328, 1329, 1329, 1330, 1327, 1331,
      1332, 1333, 1334, 1335, 1337, 1333, 1338, 1339, 1341, 1342,       1332, 1332, 1330, 1333, 1335, 1336, 1337, 1338, 1339, 1340,
      1343, 1345, 1346, 1347, 1348, 1350, 1351, 1352, 1353, 1354,       1341, 1342, 1343, 1345, 1341, 1346, 1347, 1349, 1350, 1351,
   
      1355, 1356, 1357, 1358, 1360, 1361, 1362, 1363, 1365, 1366,       1353, 1354, 1355, 1356, 1358, 1359, 1360, 1361, 1362, 1363,
      1367, 1368, 1369, 1370, 1371, 1372, 1373, 1374, 1375, 1376,       1364, 1365, 1366, 1368, 1369, 1370, 1371, 1373, 1374, 1375,
      1377, 1378, 1379, 1380, 1381, 1382, 1383, 1366, 1384, 1385,       1376, 1377, 1378, 1379, 1380, 1381, 1382, 1383, 1384, 1385,
      1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1395,       1386, 1387, 1388, 1389, 1390, 1391, 1374, 1392, 1393, 1394,
      1396, 1398, 1399, 1401, 1402, 1403, 1405, 1406, 1407, 1408,       1395, 1396, 1397, 1398, 1399, 1400, 1401, 1402, 1403, 1404,
      1410, 1412, 1413, 1415, 1417, 1418, 1420, 1421, 1422, 1424,       1406, 1407, 1409, 1410, 1411, 1413, 1414, 1415, 1416, 1417,
      1425, 1426, 1427, 1428, 1429, 1430, 1431, 1432, 1433, 1434,       1419, 1421, 1422, 1424, 1426, 1427, 1429, 1430, 1431, 1433,
      1435, 1436, 1437, 1438, 1439, 1439, 1440, 1442, 1443, 1444,       1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441, 1442, 1443,
      1445, 1440, 1446, 1446, 1447, 1448, 1448, 1449, 1450, 1450,       1444, 1445, 1446, 1447, 1448, 1448, 1449, 1451, 1452, 1453,
      1452, 1453, 1454, 1455, 1456, 1456, 1457, 1458, 1459, 1460,       1454, 1449, 1455, 1455, 1456, 1457, 1457, 1458, 1459, 1459,
   
      1461, 1457, 1458, 1459, 1462, 1463, 1463, 1465, 1466, 1467,       1461, 1462, 1463, 1464, 1465, 1465, 1466, 1467, 1468, 1469,
      1468, 1469, 1469, 1471, 1472, 1473, 1474, 1475, 1476, 1477,       1470, 1466, 1467, 1468, 1471, 1472, 1472, 1474, 1475, 1476,
      1478, 1479, 1480, 1481, 1483, 1485, 1486, 1487, 1488, 1490,       1477, 1478, 1478, 1480, 1481, 1482, 1483, 1484, 1485, 1486,
      1491, 1492, 1494, 1495, 1497, 1498, 1500, 1501, 1502, 1503,       1487, 1488, 1489, 1490, 1492, 1494, 1495, 1496, 1497, 1499,
      1505, 1506, 1507, 1508, 1509, 1510, 1511, 1512, 1513, 1515,       1500, 1501, 1503, 1504, 1506, 1507, 1509, 1510, 1511, 1512,
      1516, 1517, 1518, 1519, 1520, 1521, 1522, 1523, 1524, 1525,       1514, 1515, 1516, 1517, 1518, 1519, 1520, 1521, 1522, 1524,
      1526, 1527, 1528, 1529, 1530, 1531, 1532, 1533, 1534, 1535,       1525, 1526, 1527, 1528, 1529, 1530, 1531, 1532, 1533, 1534,
      1536, 1537, 1538, 1539, 1540, 1541, 1543, 1544, 1546, 1547,       1535, 1536, 1537, 1538, 1539, 1540, 1541, 1542, 1543, 1544,
      1549, 1551, 1552, 1553, 1554, 1555, 1556, 1557, 1558, 1559,       1545, 1546, 1547, 1548, 1549, 1550, 1552, 1553, 1555, 1556,
      1561, 1562, 1563, 1565, 1566, 1567, 1568, 1569, 1570, 1572,       1558, 1560, 1562, 1563, 1564, 1565, 1566, 1567, 1568, 1569,
   
      1573, 1574, 1575, 1576, 1576, 1577, 1578, 1580, 1581, 1582,       1570, 1572, 1573, 1574, 1576, 1577, 1578, 1579, 1580, 1581,
      1584, 1585, 1586, 1588, 1589, 1590, 1591, 1592, 1594, 1595,       1583, 1584, 1585, 1586, 1587, 1587, 1588, 1589, 1591, 1592,
      1596, 1597, 1598, 1598, 1599, 1600, 1600, 1601, 1602, 1602,       1593, 1595, 1596, 1597, 1599, 1600, 1601, 1602, 1603, 1605,
      1603, 1604, 1606, 1607, 1608, 1609, 1610, 1612, 1613, 1614,       1606, 1607, 1608, 1609, 1609, 1610, 1611, 1611, 1612, 1613,
      1615, 1616, 1617, 1619, 1620, 1621, 1622, 1617, 1623, 1624,       1613, 1614, 1615, 1617, 1618, 1619, 1620, 1621, 1623, 1624,
      1625, 1627, 1629, 1631, 1632, 1633, 1634, 1635, 1636, 1638,       1625, 1626, 1627, 1628, 1630, 1631, 1632, 1633, 1628, 1634,
      1640, 1641, 1643, 1644, 1646, 1647, 1649, 1650, 1651, 1653,       1635, 1636, 1638, 1640, 1642, 1643, 1644, 1645, 1646, 1647,
      1654, 1655, 1656, 1658, 1659, 1660, 1661, 1662, 1663, 1664,       1649, 1651, 1652, 1654, 1655, 1657, 1658, 1660, 1661, 1662,
      1666, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1676,       1664, 1665, 1666, 1667, 1669, 1670, 1671, 1672, 1673, 1674,
      1678, 1679, 1680, 1681, 1682, 1684, 1685, 1686, 1688, 1689,       1675, 1677, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686,
   
      1690, 1691, 1692, 1693, 1694, 1696, 1698, 1699, 1700, 1702,       1687, 1689, 1690, 1691, 1692, 1693, 1695, 1696, 1697, 1699,
      1703, 1704, 1705, 1706, 1708, 1709, 1710, 1711, 1712, 1713,       1700, 1701, 1702, 1703, 1704, 1705, 1707, 1709, 1710, 1711,
      1714, 1715, 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1724,       1713, 1714, 1715, 1716, 1717, 1719, 1720, 1721, 1722, 1723,
      1725, 1726, 1728, 1729, 1730, 1732, 1733, 1734, 1735, 1736,       1724, 1725, 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1733,
      1737, 1738, 1739, 1740, 1741, 1742, 1743, 1744, 1745, 1746,       1735, 1736, 1737, 1739, 1740, 1741, 1743, 1744, 1745, 1746,
      1746, 1747, 1748, 1749, 1750, 1751, 1752, 1754, 1755, 1756,       1747, 1748, 1749, 1750, 1751, 1752, 1753, 1754, 1755, 1756,
      1757, 1758, 1760, 1761, 1762, 1763, 1764, 1766, 1767, 1769,       1757, 1757, 1758, 1759, 1760, 1761, 1762, 1763, 1765, 1766,
      1770, 1771, 1773, 1774, 1776, 1777, 1778, 1779, 1780, 1781,       1767, 1768, 1769, 1771, 1772, 1773, 1774, 1775, 1777, 1778,
      1783, 1784, 1785, 1786, 1787, 1788, 1790, 1791, 1793, 1794,       1780, 1781, 1782, 1784, 1785, 1787, 1788, 1789, 1790, 1791,
      1795, 1796, 1798, 1800, 1801, 1802, 1803, 1805, 1806, 1807,       1792, 1794, 1795, 1796, 1797, 1798, 1799, 1801, 1802, 1804,
   
      1808, 1809, 1810, 1811, 1812, 1813, 1814, 1815, 1816, 1817,       1805, 1806, 1807, 1809, 1811, 1812, 1813, 1814, 1816, 1817,
      1818, 1819, 1820, 1821, 1822, 1823, 1824, 1825, 1826, 1827,       1818, 1819, 1820, 1821, 1822, 1823, 1824, 1825, 1826, 1827,
      1828, 1829, 1830, 1831, 1832, 1833, 1834, 1835, 1836, 1837,       1828, 1829, 1830, 1831, 1832, 1833, 1834, 1835, 1836, 1837,
      1838, 1839, 1841, 1842, 1843, 1845, 1846, 1848, 1849, 1850,       1838, 1839, 1840, 1841, 1842, 1843, 1844, 1845, 1846, 1847,
      1851, 1853, 1854, 1856, 1857, 1859, 1860, 1861, 1863, 1864,       1848, 1849, 1850, 1852, 1853, 1854, 1856, 1857, 1859, 1860,
      1865, 1866, 1867, 1868, 1869, 1870, 1871, 1872, 1873, 1874,       1861, 1862, 1864, 1865, 1867, 1868, 1870, 1871, 1872, 1874,
      1876, 1877, 1878, 1880, 1881, 1883, 1885, 1886, 1888, 1890,       1875, 1876, 1877, 1878, 1879, 1880, 1881, 1882, 1883, 1884,
      1892, 1893, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901,       1885, 1887, 1888, 1889, 1891, 1892, 1894, 1896, 1897, 1899,
      1902, 1903, 1904, 1905, 1906, 1907, 1908, 1909, 1910, 1911,       1901, 1903, 1904, 1905, 1906, 1907, 1908, 1909, 1910, 1911,
      1912, 1913, 1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921,       1912, 1913, 1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921,
   
      1922, 1923, 1924, 1925, 1926, 1927, 1929, 1930, 1932, 1933,       1922, 1923, 1924, 1925, 1926, 1927, 1928, 1929, 1930, 1931,
      1935, 1937, 1938, 1939, 1940, 1941, 1942, 1944, 1945, 1946,       1932, 1933, 1934, 1935, 1936, 1937, 1938, 1940, 1941, 1943,
      1947, 1948, 1949, 1950, 1951, 1952, 1953, 1955, 1957, 1958,       1944, 1946, 1948, 1949, 1950, 1951, 1952, 1953, 1955, 1956,
      1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, 1968,       1957, 1958, 1959, 1960, 1961, 1962, 1963, 1964, 1966, 1968,
      1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1977, 1978,       1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1977, 1978,
      1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988,       1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988,
      1989, 1990, 1991, 1992, 1994, 1995, 1997, 1999, 2000, 2001,       1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
      2002, 2003, 2005, 2007, 2009, 2011, 2013, 2015, 2016, 2017,       1999, 2000, 2001, 2002, 2003, 2005, 2006, 2008, 2010, 2011,
      2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026, 2027,       2012, 2013, 2014, 2016, 2018, 2020, 2022, 2024, 2026, 2027,
      2028, 2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037,       2028, 2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037,
   
      2038, 2039, 2040, 2041, 2043, 2044, 2045, 2046, 2047, 2048,       2038, 2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047,
      2049, 2050, 2051, 2052, 2053, 2055, 2056, 2058, 2059, 2060,       2048, 2049, 2050, 2051, 2052, 2054, 2055, 2056, 2057, 2058,
      2061, 2062, 2063, 2064, 2065, 2066, 2067, 2068, 2070, 2071,       2059, 2060, 2061, 2062, 2063, 2064, 2066, 2067, 2069, 2070,
      2072, 2073, 2074, 2075, 2076, 2077, 2079, 2080, 2081, 2082,       2071, 2072, 2073, 2074, 2075, 2076, 2077, 2078, 2079, 2081,
      2083, 2084, 2085, 2086, 2087, 2089, 2090, 2091, 2092, 2094,       2082, 2083, 2084, 2085, 2086, 2087, 2088, 2090, 2091, 2092,
      2095, 2096, 2097, 2099, 2100, 2101, 2102, 2103, 2104, 2105,       2093, 2094, 2095, 2096, 2097, 2098, 2100, 2101, 2102, 2103,
      2106, 2107, 2108, 2110, 2111, 2112, 2114, 2115, 2117, 2118,       2105, 2106, 2107, 2108, 2110, 2111, 2112, 2113, 2114, 2115,
      2120, 2121, 2123, 2125, 2126, 2128, 2129, 2130, 2131, 2132,       2116, 2117, 2118, 2119, 2121, 2122, 2123, 2125, 2126, 2128,
      2133, 2134, 2135, 2137, 2139, 2140, 2142, 2144, 2145, 2146,       2129, 2131, 2132, 2134, 2136, 2137, 2139, 2140, 2141, 2142,
      2147, 2148, 2150, 2152, 2154, 2155, 2157, 2158, 2160, 2162,       2143, 2144, 2145, 2146, 2148, 2150, 2151, 2153, 2155, 2156,
   
      2164, 2166, 2168, 2169, 2171, 2172, 2174, 2175, 2177, 2179,       2157, 2158, 2159, 2161, 2163, 2165, 2166, 2168, 2169, 2171,
      2181, 2182, 2183, 2185, 2187, 2188, 2190, 2192, 2194, 2196,       2173, 2175, 2177, 2179, 2180, 2182, 2183, 2185, 2186, 2188,
      2197, 2199, 2201, 2203, 2205, 2205, 2206, 2206, 2207, 2207,       2190, 2192, 2193, 2194, 2196, 2198, 2199, 2201, 2203, 2205,
      2208, 2209, 2209, 2210, 2211, 2212, 2213, 2214, 2215, 2216,       2207, 2208, 2210, 2212, 2214, 2216, 2216, 2217, 2217, 2218,
      2217, 2218, 2219, 2220, 2221, 2222, 2223, 2224, 2225, 2226,       2218, 2219, 2220, 2220, 2221, 2222, 2223, 2224, 2225, 2226,
      2227, 2228, 2229, 2230, 2231, 2232, 2233, 2234, 2235, 2236,       2227, 2228, 2229, 2230, 2231, 2232, 2233, 2234, 2235, 2236,
      2237, 2238, 2239, 2240, 2241, 2242, 2243, 2244, 2245, 2246,       2237, 2238, 2239, 2240, 2241, 2242, 2243, 2244, 2245, 2246,
      2247, 2248, 2249, 2250, 2251, 2252, 2253, 2254, 2255, 2256,       2247, 2248, 2249, 2250, 2251, 2252, 2253, 2254, 2255, 2256,
      2257, 2258, 2259, 2260, 2261, 2262, 2263, 2264, 2265, 2266,       2257, 2258, 2259, 2260, 2261, 2262, 2263, 2264, 2265, 2266,
      2267, 2268, 2269, 2270, 2271, 2272, 2273, 2274, 2275, 2276,       2267, 2268, 2269, 2270, 2271, 2272, 2273, 2274, 2275, 2276,
   
      2277, 2278, 2279, 2280, 2281, 2282, 2283, 2284, 2284, 2285,       2277, 2278, 2279, 2280, 2281, 2282, 2283, 2284, 2285, 2286,
      2286, 2287, 2288, 2289, 2290, 2291, 2292, 2293, 2294, 2295,       2287, 2288, 2289, 2290, 2291, 2292, 2293, 2294, 2295, 2295,
      2296, 2297, 2298, 2299, 2300, 2301, 2302, 2303, 2304, 2305,       2296, 2297, 2298, 2299, 2300, 2301, 2302, 2303, 2304, 2305,
      2306, 2307, 2308, 2309, 2310, 2311, 2312, 2313, 2314, 2315,       2306, 2307, 2308, 2309, 2310, 2311, 2312, 2313, 2314, 2315,
      2316, 2317, 2318, 2319, 2320, 2321, 2322, 2323, 2324, 2325,       2316, 2317, 2318, 2319, 2320, 2321, 2322, 2323, 2324, 2325,
Line 1620
 
Line 1627
      2416, 2417, 2418, 2419, 2420, 2421, 2422, 2423, 2424, 2425,       2416, 2417, 2418, 2419, 2420, 2421, 2422, 2423, 2424, 2425,
      2426, 2427, 2428, 2429, 2430, 2431, 2432, 2433, 2434, 2435,       2426, 2427, 2428, 2429, 2430, 2431, 2432, 2433, 2434, 2435,
      2436, 2437, 2438, 2439, 2440, 2441, 2442, 2443, 2444, 2445,       2436, 2437, 2438, 2439, 2440, 2441, 2442, 2443, 2444, 2445,
      2446, 2447, 2448, 2449, 2450, 2451,  618,  617,  616,  615,       2446, 2447, 2448, 2449, 2450, 2451, 2452, 2453, 2454, 2455,
       614,  613,  612,  611,  610,  609,  607,  605,  604,  603,       2456, 2457, 2458, 2459, 2460, 2461, 2462, 2463,  619,  618,
       602,  601,  600,  599,  598,  597,  596,  595,  593,  592,        617,  616,  615,  614,  613,  612,  610,  608,  607,  606,
   
       591,  590,  589,  588,  587,  586,  585,  584,  583,  582,        605,  604,  603,  602,  601,  600,  599,  598,  596,  595,
       580,  579,  578,  577,  576,  575,  574,  573,  572,  570,        594,  593,  592,  591,  590,  589,  588,  587,  586,  585,
       569,  568,  567,  566,  565,  563,  562,  561,  560,  559,        583,  582,  581,  580,  579,  578,  577,  576,  575,  573,
       558,  557,  556,  555,  554,  553,  552,  551,  550,  549,        572,  571,  570,  569,  568,  566,  565,  564,  563,  562,
       548,  547,  546,  545,  544,  543,  542,  540,  539,  538,        561,  560,  559,  558,  557,  556,  555,  554,  553,  552,
       537,  535,  533,  532,  531,  530,  529,  528,  527,  526,        551,  550,  549,  548,  547,  546,  545,  543,  542,  541,
       525,  524,  523,  522,  521,  519,  518,  517,  516,  515,        540,  538,  536,  535,  534,  533,  532,  531,  530,  529,
       514,  513,  512,  511,  509,  508,  506,  505,  504,  503,        528,  527,  526,  525,  524,  522,  521,  520,  519,  518,
       502,  501,  500,  499,  497,  495,  494,  493,  492,  491,        517,  516,  515,  514,  512,  511,  509,  508,  507,  506,
       490,  489,  488,  487,  486,  485,  484,  483,  482,  481,        505,  504,  503,  502,  500,  498,  497,  496,  495,  494,
   
       479,  478,  477,  476,  475,  473,  472,  471,  470,  469,        493,  492,  491,  490,  489,  488,  487,  486,  485,  484,
       468,  467,  466,  465,  464,  463,  462,  461,  459,  457,        483,  481,  480,  479,  478,  477,  475,  474,  473,  472,
       456,  455,  454,  453,  452,  450,  449,  448,  447,  446,        471,  470,  469,  468,  467,  466,  465,  464,  463,  461,
       445,  444,  442,  441,  438,  437,  436,  435,  434,  433,        459,  458,  457,  456,  455,  454,  452,  451,  450,  449,
       432,  431,  430,  429,  427,  426,  425,  424,  423,  422,        448,  447,  446,  444,  443,  440,  439,  438,  437,  436,
       421,  420,  419,  418,  417,  416,  415,  414,  413,  411,        435,  434,  433,  432,  431,  429,  428,  427,  426,  425,
       410,  409,  408,  407,  406,  405,  404,  403,  402,  400,        424,  423,  422,  421,  420,  419,  418,  417,  416,  415,
       399,  398,  396,  395,  394,  393,  391,  390,  388,  387,        413,  412,  411,  410,  409,  408,  407,  406,  405,  404,
       386,  385,  384,  383,  381,  380,  378,  377,  376,  375,        402,  401,  400,  398,  397,  396,  395,  393,  392,  390,
       374,  373,  372,  371,  369,  368,  367,  366,  365,  364,        389,  388,  387,  386,  385,  383,  382,  380,  379,  378,
   
       363,  362,  361,  360,  359,  358,  357,  356,  355,  354,        377,  376,  375,  374,  373,  371,  370,  369,  368,  367,
       353,  352,  351,  349,  348,  347,  346,  345,  344,  343,        366,  365,  364,  363,  362,  361,  360,  359,  358,  357,
       342,  341,  340,  339,  338,  337,  336,  335,  334,  333,        356,  355,  354,  353,  352,  350,  349,  348,  347,  346,
       332,  331,  330,  328,  327,  326,  324,  323,  322,  321,        345,  344,  343,  342,  341,  340,  339,  338,  337,  336,
       320,  319,  318,  317,  316,  315,  314,  313,  312,  311,        335,  334,  333,  332,  331,  329,  328,  327,  325,  324,
       310,  309,  306,  305,  304,  303,  302,  299,  297,  296,        323,  322,  321,  320,  319,  318,  317,  316,  315,  314,
       295,  294,  293,  292,  291,  290,  289,  288,  287,  286,        313,  312,  311,  310,  307,  306,  305,  304,  303,  300,
       285,  284,  282,  281,  280,  279,  278,  277,  276,  275,        298,  297,  296,  295,  294,  293,  292,  291,  290,  289,
       274,  273,  272,  271,  270,  268,  267,  266,  265,  264,        288,  287,  286,  285,  283,  282,  281,  280,  279,  278,
       263,  262,  261,  260,  259,  258,  257,  256,  253,  252,        277,  276,  275,  274,  273,  272,  271,  269,  268,  267,
   
       251,  250,  249,  248,  247,  246,  245,  244,  243,  242,        266,  265,  264,  263,  262,  261,  260,  259,  258,  257,
       241,  240,  238,  237,  236,  235,  234,  233,  230,  229,        254,  253,  252,  251,  250,  249,  248,  247,  246,  245,
       227,  226,  224,  223,  221,  220,  219,  218,  217,  216,        244,  243,  242,  241,  239,  238,  237,  236,  235,  234,
       215,  214,  213,  212,  211,  210,  209,  208,  207,  206,        231,  230,  228,  227,  225,  224,  222,  221,  220,  219,
       205,  204,  203,  201,  200,  199,  198,  197,  196,  195,        218,  217,  216,  215,  214,  213,  212,  211,  210,  209,
       194,  193,  192,  191,  190,  189,  188,  187,  186,  185,        208,  207,  206,  205,  204,  203,  201,  200,  199,  198,
       184,  183,  182,  181,  180,  179,  177,  176,  174,  173,        197,  196,  195,  194,  193,  192,  191,  190,  189,  188,
       172,  170,  169,  168,  167,  166,  165,  164,  163,  160,        187,  186,  185,  184,  183,  182,  181,  180,  179,  177,
       159,  158,  157,  156,  155,  154,  153,  152,  151,  150,        176,  174,  173,  172,  170,  169,  168,  167,  166,  165,
       148,  146,  144,  143,  142,  137,  136,  135,  134,  133,        164,  163,  160,  159,  158,  157,  156,  155,  154,  153,
   
       132,  131,  130,  129,  128,  127,  126,  123,  119,  118,        152,  151,  150,  148,  146,  144,  143,  142,  137,  136,
       117,  115,  114,  112,  111,  109,  108,  107,  106,  102,        135,  134,  133,  132,  131,  130,  129,  128,  127,  126,
       101,  100,   97,   96,   95,   93,   91,   90,   89,   88,        123,  119,  118,  117,  114,  112,  111,  109,  108,  107,
        87,   86,   83,   82,   81,   80,   79,   78,   76,   75,        106,  102,  101,  100,   97,   96,   95,   93,   91,   90,
        74,   73,   72,   71,   70,   69,   68,   67,   66,   65,         89,   88,   87,   86,   83,   82,   81,   80,   79,   78,
        64,   63,   62,   61,   60,   59,   58,   57,   56,   55,         76,   75,   74,   73,   72,   71,   70,   69,   68,   67,
        53,   52,   51,   50,   48,   47,   46,   45,   41,   37,         66,   65,   64,   63,   62,   61,   60,   59,   58,   57,
        34,   30,   21,   10,    7, 2204, 2204, 2204, 2204, 2204,         56,   55,   53,   52,   51,   50,   48,   47,   46,   45,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,         41,   37,   34,   30,   21,   10,    7, 2215, 2215, 2215,
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204,       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
   
      2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204, 2204       2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
        2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215, 2215,
        2215
     } ;      } ;
   
 static yy_state_type yy_last_accepting_state;  static yy_state_type yy_last_accepting_state;
Line 1698
 
Line 1707
 #line 2 "loader.l"  #line 2 "loader.l"
 /*  /*
  * static char *rcsid_object_c =   * static char *rcsid_object_c =
  *   "$Id: loader.c,v 1.15 2001/10/14 07:57:14 gros Exp $";   *   "$Id: loader.c,v 1.16 2001/10/31 07:09:30 garbled Exp $";
  */   */
   
 /*  /*
Line 1779
 
Line 1788
   "is_wooded","is_hilly","has_ready_skill","has_ready_weapon",    "is_wooded","is_hilly","has_ready_skill","has_ready_weapon",
   "no_skill_ident","glow_radius","is_blind","can_see_in_dark",    "no_skill_ident","glow_radius","is_blind","can_see_in_dark",
   "is_cauldron","randomitems","is_dust", "no_steal", "one_hit","berserk",    "is_cauldron","randomitems","is_dust", "no_steal", "one_hit","berserk",
     "weapontype",
 /* GROS - And those are for the new plugin system */  /* GROS - And those are for the new plugin system */
   "event_apply",    "event_apply_plugin",   "event_apply_options",    "event_apply",    "event_apply_plugin",   "event_apply_options",
   "event_attack",   "event_attack_plugin",  "event_attack_options",    "event_attack",   "event_attack_plugin",  "event_attack_options",
Line 1870
 
Line 1880
 #endif  #endif
   
 #ifndef YY_NO_UNPUT  #ifndef YY_NO_UNPUT
 static void yyunput YY_PROTO(( int c, char *buf_ptr ));  static void yyunput YY_PROTO(( int c, char *buf_ptr ))
   #ifdef __GNUC__
       __attribute__ ((unused))
   #endif
   ;
 #endif  #endif
   
 #ifndef yytext_ptr  #ifndef yytext_ptr
 static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));  static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, yy_size_t ));
 #endif  #endif
   
 #ifdef YY_NEED_STRLEN  #ifdef YY_NEED_STRLEN
 static int yy_flex_strlen YY_PROTO(( yyconst char * ));  static yy_size_t yy_flex_strlen YY_PROTO(( yyconst char * ));
 #endif  #endif
   
 #ifndef YY_NO_INPUT  #ifndef YY_NO_INPUT
Line 1935
 
Line 1949
 /* This used to be an fputs(), but since the string might contain NUL's,  /* This used to be an fputs(), but since the string might contain NUL's,
  * we now use fwrite().   * we now use fwrite().
  */   */
 #define ECHO (void) fwrite( yytext, yyleng, 1, yyout )  #define ECHO (void) fwrite( yytext, (size_t)yyleng, 1, yyout )
 #endif  #endif
   
 /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,  /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
Line 1955
 
Line 1969
  YY_FATAL_ERROR( "input in flex scanner failed" ); \   YY_FATAL_ERROR( "input in flex scanner failed" ); \
  result = n; \   result = n; \
  } \   } \
  else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \   else if ( ((result = fread( buf, 1, (size_t)max_size, yyin )) == 0) \
    && ferror( yyin ) ) \     && ferror( yyin ) ) \
  YY_FATAL_ERROR( "input in flex scanner failed" );   YY_FATAL_ERROR( "input in flex scanner failed" );
 #endif  #endif
Line 1994
 
Line 2008
   
 /* Code executed at the end of each rule. */  /* Code executed at the end of each rule. */
 #ifndef YY_BREAK  #ifndef YY_BREAK
 #define YY_BREAK break;  #define YY_BREAK /*LINTED*/break;
 #endif  #endif
   
 #define YY_RULE_SETUP \  #define YY_RULE_SETUP \
Line 2006
 
Line 2020
 YY_DECL  YY_DECL
  {   {
  register yy_state_type yy_current_state;   register yy_state_type yy_current_state;
  register char *yy_cp = NULL, *yy_bp = NULL;   register char *yy_cp, *yy_bp;
  register int yy_act;   register int yy_act;
   
 #line 172 "loader.l"  #line 173 "loader.l"
   
   
   
Line 2021
 
Line 2035
   
   
   
   #if defined(YY_USES_REJECT) && (defined(__GNUC__) || defined(lint))
    /* XXX: shut up `unused label' warning with %options yylineno */
    if (/*CONSTCOND*/0 && yy_full_match)
    goto find_rule;
   #endif
  if ( yy_init )   if ( yy_init )
  {   {
  yy_init = 0;   yy_init = 0;
Line 2045
 
Line 2064
  yy_load_buffer_state();   yy_load_buffer_state();
  }   }
   
  while ( 1 ) /* loops until end-of-file is reached */   while (/*CONSTCOND*/ 1 ) /* loops until end-of-file is reached */
  {   {
  yy_cp = yy_c_buf_p;   yy_cp = yy_c_buf_p;
   
Line 2071
 
Line 2090
  while ( yy_chk[yy_base[yy_current_state] + yy_c] != 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];   yy_current_state = (int) yy_def[yy_current_state];
  if ( yy_current_state >= 2205 )   if ( yy_current_state >= 2216 )
  yy_c = yy_meta[(unsigned int) yy_c];   yy_c = yy_meta[(unsigned int) yy_c];
  }   }
  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];   yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
  ++yy_cp;   ++yy_cp;
  }   }
  while ( yy_base[yy_current_state] != 2476 );   while ( yy_base[yy_current_state] != 2488 );
   
 yy_find_action:  yy_find_action:
  yy_act = yy_accept[yy_current_state];   yy_act = yy_accept[yy_current_state];
Line 2108
 
Line 2127
 yy_c_buf_p = yy_cp -= 1;  yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */  YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 182 "loader.l"  #line 183 "loader.l"
 { BEGIN( MESSAGE ); msgbuf[0]='\0'; }  { BEGIN( MESSAGE ); msgbuf[0]='\0'; }
  YY_BREAK   YY_BREAK
 case 2:  case 2:
Line 2116
 
Line 2135
 yy_c_buf_p = yy_cp -= 1;  yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */  YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 183 "loader.l"  #line 184 "loader.l"
 { BEGIN( INITIAL );  { BEGIN( INITIAL );
  op->msg=add_string(msgbuf);   op->msg=add_string(msgbuf);
  /* Just print a warning so we can be reasonably safe   /* Just print a warning so we can be reasonably safe
Line 2129
 
Line 2148
  YY_BREAK   YY_BREAK
 case 3:  case 3:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 192 "loader.l"  #line 193 "loader.l"
 {strcat(msgbuf, yytext); strcat(msgbuf,"\n"); }  {strcat(msgbuf, yytext); strcat(msgbuf,"\n"); }
  YY_BREAK   YY_BREAK
 case 4:  case 4:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 193 "loader.l"  #line 194 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') {   if (*yv=='\0') {
Line 2147
 
Line 2166
  YY_BREAK   YY_BREAK
 case 5:  case 5:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 203 "loader.l"  #line 204 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Name without val\n");   if (*yv=='\0') LOG(llevError,"Name without val\n");
Line 2156
 
Line 2175
  YY_BREAK   YY_BREAK
 case 6:  case 6:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 208 "loader.l"  #line 209 "loader.l"
 FREE_AND_COPY(op->race,yval());  FREE_AND_COPY(op->race,yval());
  YY_BREAK   YY_BREAK
 case 7:  case 7:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 209 "loader.l"  #line 210 "loader.l"
 FREE_AND_COPY(op->slaying, yval());  FREE_AND_COPY(op->slaying, yval());
  YY_BREAK   YY_BREAK
 case 8:  case 8:
Line 2169
 
Line 2188
 yy_c_buf_p = yy_cp -= 1;  yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */  YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 210 "loader.l"  #line 211 "loader.l"
 LOG(llevError,"Got depreciated Inventory command?\n");  LOG(llevError,"Got depreciated Inventory command?\n");
  YY_BREAK   YY_BREAK
 case 9:  case 9:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 213 "loader.l"  #line 214 "loader.l"
 { /* If op->arch has been set, then this new object  { /* If op->arch has been set, then this new object
  * must be part of the inventory.  So process   * must be part of the inventory.  So process
  * appropriately.   * appropriately.
Line 2199
 
Line 2218
  YY_BREAK   YY_BREAK
 case 10:  case 10:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 235 "loader.l"  #line 236 "loader.l"
 op->other_arch=find_archetype(yval());  op->other_arch=find_archetype(yval());
  YY_BREAK   YY_BREAK
 case 11:  case 11:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 236 "loader.l"  #line 237 "loader.l"
 {  {
  if (strcmp (yval(), "NONE") == 0) {   if (strcmp (yval(), "NONE") == 0) {
      op->animation_id = 0;       op->animation_id = 0;
Line 2220
 
Line 2239
 yy_c_buf_p = yy_cp -= 1;  yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */  YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 246 "loader.l"  #line 247 "loader.l"
 { /* We need to record that this is a multipart object,  { /* We need to record that this is a multipart object,
         * so the calling function can glue things back together          * so the calling function can glue things back together
         */          */
Line 2232
 
Line 2251
 yy_c_buf_p = yy_cp -= 1;  yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */  YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 252 "loader.l"  #line 253 "loader.l"
 { if (ismore) return LL_MORE; else return LL_NORMAL; }  { if (ismore) return LL_MORE; else return LL_NORMAL; }
  YY_BREAK   YY_BREAK
 case 14:  case 14:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 253 "loader.l"  #line 254 "loader.l"
 op->last_heal = IVAL;  op->last_heal = IVAL;
  YY_BREAK   YY_BREAK
 case 15:  case 15:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 254 "loader.l"  #line 255 "loader.l"
 op->last_sp = IVAL;  op->last_sp = IVAL;
  YY_BREAK   YY_BREAK
 case 16:  case 16:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 255 "loader.l"  #line 256 "loader.l"
 op->last_grace = IVAL;  op->last_grace = IVAL;
  YY_BREAK   YY_BREAK
 case 17:  case 17:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 256 "loader.l"  #line 257 "loader.l"
 op->last_eat = IVAL;  op->last_eat = IVAL;
  YY_BREAK   YY_BREAK
 case 18:  case 18:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 257 "loader.l"  #line 258 "loader.l"
 { op->speed = FVAL;  { op->speed = FVAL;
  if (op->speed<0) op->speed_left = op->speed_left-RANDOM()%100/100.0;   if (op->speed<0) op->speed_left = op->speed_left-RANDOM()%100/100.0;
  if (!(map_flags & MAP_STYLE)) update_ob_speed(op);   if (!(map_flags & MAP_STYLE)) update_ob_speed(op);
Line 2266
 
Line 2285
  YY_BREAK   YY_BREAK
 case 19:  case 19:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 262 "loader.l"  #line 263 "loader.l"
 op->speed_left = FVAL;  op->speed_left = FVAL;
  YY_BREAK   YY_BREAK
 case 20:  case 20:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 263 "loader.l"  #line 264 "loader.l"
 { SET_SLOW_PENALTY(op,FVAL);  { SET_SLOW_PENALTY(op,FVAL);
  SET_FLAG(op, FLAG_SLOW_MOVE);   SET_FLAG(op, FLAG_SLOW_MOVE);
      }       }
  YY_BREAK   YY_BREAK
 case 21:  case 21:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 266 "loader.l"  #line 267 "loader.l"
 op->face = &new_faces[FindFace(yval(), 0)];  op->face = &new_faces[FindFace(yval(), 0)];
  YY_BREAK   YY_BREAK
 case 22:  case 22:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 267 "loader.l"  #line 268 "loader.l"
 op->stats.Str = IVAL;  op->stats.Str = IVAL;
  YY_BREAK   YY_BREAK
 case 23:  case 23:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 268 "loader.l"  #line 269 "loader.l"
 op->stats.Dex = IVAL;  op->stats.Dex = IVAL;
  YY_BREAK   YY_BREAK
 case 24:  case 24:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 269 "loader.l"  #line 270 "loader.l"
 op->stats.Con = IVAL;  op->stats.Con = IVAL;
  YY_BREAK   YY_BREAK
 case 25:  case 25:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 270 "loader.l"  #line 271 "loader.l"
 op->stats.Wis = IVAL;  op->stats.Wis = IVAL;
  YY_BREAK   YY_BREAK
 case 26:  case 26:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 271 "loader.l"  #line 272 "loader.l"
 op->stats.Cha = IVAL;  op->stats.Cha = IVAL;
  YY_BREAK   YY_BREAK
 case 27:  case 27:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 272 "loader.l"  #line 273 "loader.l"
 op->stats.Int = IVAL;  op->stats.Int = IVAL;
  YY_BREAK   YY_BREAK
 case 28:  case 28:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 273 "loader.l"  #line 274 "loader.l"
 op->stats.Pow = IVAL;  op->stats.Pow = IVAL;
  YY_BREAK   YY_BREAK
 case 29:  case 29:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 274 "loader.l"  #line 275 "loader.l"
 op->stats.hp = IVAL;  op->stats.hp = IVAL;
  YY_BREAK   YY_BREAK
 case 30:  case 30:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 275 "loader.l"  #line 276 "loader.l"
 op->stats.maxhp = IVAL;  op->stats.maxhp = IVAL;
  YY_BREAK   YY_BREAK
 case 31:  case 31:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 276 "loader.l"  #line 277 "loader.l"
 op->stats.sp = IVAL;  op->stats.sp = IVAL;
  YY_BREAK   YY_BREAK
 case 32:  case 32:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 277 "loader.l"  #line 278 "loader.l"
 op->stats.maxsp = IVAL;  op->stats.maxsp = IVAL;
  YY_BREAK   YY_BREAK
 case 33:  case 33:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 278 "loader.l"  #line 279 "loader.l"
 op->stats.grace = IVAL;  op->stats.grace = IVAL;
  YY_BREAK   YY_BREAK
 case 34:  case 34:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 279 "loader.l"  #line 280 "loader.l"
 op->stats.maxgrace = IVAL;  op->stats.maxgrace = IVAL;
  YY_BREAK   YY_BREAK
 case 35:  case 35:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 280 "loader.l"  #line 281 "loader.l"
 op->stats.exp = atol(yval());  op->stats.exp = atol(yval());
  YY_BREAK   YY_BREAK
 case 36:  case 36:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 281 "loader.l"  #line 282 "loader.l"
 op->stats.food = IVAL;  op->stats.food = IVAL;
  YY_BREAK   YY_BREAK
 case 37:  case 37:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 282 "loader.l"  #line 283 "loader.l"
 op->stats.dam = IVAL;  op->stats.dam = IVAL;
  YY_BREAK   YY_BREAK
 case 38:  case 38:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 283 "loader.l"  #line 284 "loader.l"
 op->stats.wc = IVAL;  op->stats.wc = IVAL;
  YY_BREAK   YY_BREAK
 case 39:  case 39:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 284 "loader.l"  #line 285 "loader.l"
 op->stats.ac = IVAL;  op->stats.ac = IVAL;
  YY_BREAK   YY_BREAK
 case 40:  case 40:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 285 "loader.l"  #line 286 "loader.l"
 {op->x = IVAL; op->ox= op->x; }  {op->x = IVAL; op->ox= op->x; }
  YY_BREAK   YY_BREAK
 case 41:  case 41:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 286 "loader.l"  #line 287 "loader.l"
 {op->y = IVAL; op->oy= op->y; }  {op->y = IVAL; op->oy= op->y; }
  YY_BREAK   YY_BREAK
 case 42:  case 42:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 287 "loader.l"  #line 288 "loader.l"
 op->nrof= atol(yval());  op->nrof= atol(yval());
  YY_BREAK   YY_BREAK
 case 43:  case 43:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 288 "loader.l"  #line 289 "loader.l"
 op->level = IVAL;  op->level = IVAL;
  YY_BREAK   YY_BREAK
 case 44:  case 44:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 289 "loader.l"  #line 290 "loader.l"
 op->direction = IVAL;  op->direction = IVAL;
  YY_BREAK   YY_BREAK
 case 45:  case 45:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 290 "loader.l"  #line 291 "loader.l"
 op->type = IVAL;  op->type = IVAL;
  YY_BREAK   YY_BREAK
 case 46:  case 46:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 291 "loader.l"  #line 292 "loader.l"
 op->material = IVAL;  op->material = IVAL;
  YY_BREAK   YY_BREAK
 case 47:  case 47:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 292 "loader.l"  #line 293 "loader.l"
 op->value = IVAL;  op->value = IVAL;
  YY_BREAK   YY_BREAK
 case 48:  case 48:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 293 "loader.l"  #line 294 "loader.l"
 op->weight = atol(yval());  op->weight = atol(yval());
  YY_BREAK   YY_BREAK
 case 49:  case 49:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 294 "loader.l"  #line 295 "loader.l"
 op->carrying = atol(yval());  op->carrying = atol(yval());
  YY_BREAK   YY_BREAK
 case 50:  case 50:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 295 "loader.l"  #line 296 "loader.l"
 op->attacktype = IVAL;  op->attacktype = IVAL;
  YY_BREAK   YY_BREAK
 case 51:  case 51:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 296 "loader.l"  #line 297 "loader.l"
 op->path_attuned = IVAL;  op->path_attuned = IVAL;
  YY_BREAK   YY_BREAK
 case 52:  case 52:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 297 "loader.l"  #line 298 "loader.l"
 op->path_repelled = IVAL;  op->path_repelled = IVAL;
  YY_BREAK   YY_BREAK
 case 53:  case 53:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 298 "loader.l"  #line 299 "loader.l"
 op->path_denied = IVAL;  op->path_denied = IVAL;
  YY_BREAK   YY_BREAK
 case 54:  case 54:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 299 "loader.l"  #line 300 "loader.l"
 op->invisible = IVAL;  op->invisible = IVAL;
  YY_BREAK   YY_BREAK
 case 55:  case 55:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 300 "loader.l"  #line 301 "loader.l"
 op->magic = IVAL;  op->magic = IVAL;
  YY_BREAK   YY_BREAK
 case 56:  case 56:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 301 "loader.l"  #line 302 "loader.l"
 op->state = IVAL;  op->state = IVAL;
  YY_BREAK   YY_BREAK
 case 57:  case 57:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 302 "loader.l"  #line 303 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_ALIVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_ALIVE, IVAL);
  YY_BREAK   YY_BREAK
 case 58:  case 58:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 303 "loader.l"  #line 304 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_APPLIED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_APPLIED, IVAL);
  YY_BREAK   YY_BREAK
 case 59:  case 59:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 304 "loader.l"  #line 305 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_UNPAID, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_UNPAID, IVAL);
  YY_BREAK   YY_BREAK
 case 60:  case 60:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 305 "loader.l"  #line 306 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_AN, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_AN, IVAL);
  YY_BREAK   YY_BREAK
 case 61:  case 61:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 306 "loader.l"  #line 307 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NEED_IE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NEED_IE, IVAL);
  YY_BREAK   YY_BREAK
 case 62:  case 62:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 307 "loader.l"  #line 308 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_PICK, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_PICK, IVAL);
  YY_BREAK   YY_BREAK
 case 63:  case 63:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 308 "loader.l"  #line 309 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_PASS, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_PASS, IVAL);
  YY_BREAK   YY_BREAK
 case 64:  case 64:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 309 "loader.l"  #line 310 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_WALK_ON, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_WALK_ON, IVAL);
  YY_BREAK   YY_BREAK
 case 65:  case 65:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 310 "loader.l"  #line 311 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_WALK_OFF, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_WALK_OFF, IVAL);
  YY_BREAK   YY_BREAK
 case 66:  case 66:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 311 "loader.l"  #line 312 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_FLY_ON, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_FLY_ON, IVAL);
  YY_BREAK   YY_BREAK
 case 67:  case 67:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 312 "loader.l"  #line 313 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_FLY_OFF, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_FLY_OFF, IVAL);
  YY_BREAK   YY_BREAK
 case 68:  case 68:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 313 "loader.l"  #line 314 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_ANIMATE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_ANIMATE, IVAL);
  YY_BREAK   YY_BREAK
 case 69:  case 69:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 314 "loader.l"  #line 315 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_FLYING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_FLYING, IVAL);
  YY_BREAK   YY_BREAK
 case 70:  case 70:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 315 "loader.l"  #line 316 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_MONSTER, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_MONSTER, IVAL);
  YY_BREAK   YY_BREAK
 case 71:  case 71:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 316 "loader.l"  #line 317 "loader.l"
 { if (IVAL) {  { if (IVAL) {
      SET_FLAG(op, FLAG_FRIENDLY);       SET_FLAG(op, FLAG_FRIENDLY);
      if (op->type != PLAYER) {       if (op->type != PLAYER) {
Line 2541
 
Line 2560
  YY_BREAK   YY_BREAK
 case 72:  case 72:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 325 "loader.l"  #line 326 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_GENERATOR, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_GENERATOR, IVAL);
  YY_BREAK   YY_BREAK
 case 73:  case 73:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 326 "loader.l"  #line 327 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_THROWN, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_THROWN, IVAL);
  YY_BREAK   YY_BREAK
 case 74:  case 74:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 327 "loader.l"  #line 328 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_AUTO_APPLY, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_AUTO_APPLY, IVAL);
  YY_BREAK   YY_BREAK
 case 75:  case 75:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 328 "loader.l"  #line 329 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_TREASURE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_TREASURE, IVAL);
  YY_BREAK   YY_BREAK
 case 76:  case 76:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 329 "loader.l"  #line 330 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_APPLY_ONCE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_APPLY_ONCE, IVAL);
  YY_BREAK   YY_BREAK
 case 77:  case 77:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 330 "loader.l"  #line 331 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SEE_INVISIBLE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SEE_INVISIBLE, IVAL);
  YY_BREAK   YY_BREAK
 case 78:  case 78:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 331 "loader.l"  #line 332 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CAN_ROLL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CAN_ROLL, IVAL);
  YY_BREAK   YY_BREAK
 case 79:  case 79:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 332 "loader.l"  #line 333 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_TURNABLE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_TURNABLE, IVAL);
  YY_BREAK   YY_BREAK
 case 80:  case 80:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 333 "loader.l"  #line 334 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_USED_UP, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_USED_UP, IVAL);
  YY_BREAK   YY_BREAK
 case 81:  case 81:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 334 "loader.l"  #line 335 "loader.l"
 { if (IVAL) {  { if (IVAL) {
      SET_FLAG(op, FLAG_IDENTIFIED);       SET_FLAG(op, FLAG_IDENTIFIED);
      CLEAR_FLAG(op, FLAG_KNOWN_MAGICAL);       CLEAR_FLAG(op, FLAG_KNOWN_MAGICAL);
Line 2596
 
Line 2615
  YY_BREAK   YY_BREAK
 case 82:  case 82:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 340 "loader.l"  #line 341 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_REFLECTING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_REFLECTING, IVAL);
  YY_BREAK   YY_BREAK
 case 83:  case 83:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 341 "loader.l"  #line 342 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CHANGING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CHANGING, IVAL);
  YY_BREAK   YY_BREAK
 case 84:  case 84:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 342 "loader.l"  #line 343 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SPLITTING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SPLITTING, IVAL);
  YY_BREAK   YY_BREAK
 case 85:  case 85:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 343 "loader.l"  #line 344 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_HITBACK, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_HITBACK, IVAL);
  YY_BREAK   YY_BREAK
 case 86:  case 86:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 344 "loader.l"  #line 345 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_STARTEQUIP, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_STARTEQUIP, IVAL);
  YY_BREAK   YY_BREAK
 case 87:  case 87:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 345 "loader.l"  #line 346 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_BLOCKSVIEW, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_BLOCKSVIEW, IVAL);
  YY_BREAK   YY_BREAK
 case 88:  case 88:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 346 "loader.l"  #line 347 "loader.l"
 op->arch->editable = IVAL;  op->arch->editable = IVAL;
  YY_BREAK   YY_BREAK
 case 89:  case 89:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 347 "loader.l"  #line 348 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_UNDEAD, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_UNDEAD, IVAL);
  YY_BREAK   YY_BREAK
 case 90:  case 90:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 348 "loader.l"  #line 349 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SCARED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SCARED, IVAL);
  YY_BREAK   YY_BREAK
 case 91:  case 91:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 349 "loader.l"  #line 350 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_UNAGGRESSIVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_UNAGGRESSIVE, IVAL);
  YY_BREAK   YY_BREAK
 case 92:  case 92:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 350 "loader.l"  #line 351 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_REFL_MISSILE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_REFL_MISSILE, IVAL);
  YY_BREAK   YY_BREAK
 case 93:  case 93:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 351 "loader.l"  #line 352 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_REFL_SPELL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_REFL_SPELL, IVAL);
  YY_BREAK   YY_BREAK
 case 94:  case 94:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 352 "loader.l"  #line 353 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_MAGIC, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_MAGIC, IVAL);
  YY_BREAK   YY_BREAK
 case 95:  case 95:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 353 "loader.l"  #line 354 "loader.l"
 { if (IVAL) {  { if (IVAL) {
      SET_FLAG(op, FLAG_WIZ);       SET_FLAG(op, FLAG_WIZ);
      SET_FLAG(op, FLAG_WAS_WIZ);       SET_FLAG(op, FLAG_WAS_WIZ);
Line 2675
 
Line 2694
  YY_BREAK   YY_BREAK
 case 96:  case 96:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 363 "loader.l"  #line 364 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_WAS_WIZ, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_WAS_WIZ, IVAL);
  YY_BREAK   YY_BREAK
 case 97:  case 97:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 364 "loader.l"  #line 365 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_FIX_PLAYER, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_FIX_PLAYER, IVAL);
  YY_BREAK   YY_BREAK
 case 98:  case 98:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 365 "loader.l"  #line 366 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_TEAR_DOWN, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_TEAR_DOWN, IVAL);
  YY_BREAK   YY_BREAK
 case 99:  case 99:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 366 "loader.l"  #line 367 "loader.l"
 op->stats.luck = IVAL;  op->stats.luck = IVAL;
  YY_BREAK   YY_BREAK
 case 100:  case 100:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 367 "loader.l"  #line 368 "loader.l"
 op->run_away = IVAL;  op->run_away = IVAL;
  YY_BREAK   YY_BREAK
 case 101:  case 101:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 368 "loader.l"  #line 369 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_PASS_THRU, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_PASS_THRU, IVAL);
  YY_BREAK   YY_BREAK
 case 102:  case 102:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 369 "loader.l"  #line 370 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CAN_PASS_THRU, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CAN_PASS_THRU, IVAL);
  YY_BREAK   YY_BREAK
 case 103:  case 103:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 370 "loader.l"  #line 371 "loader.l"
 op->pick_up = IVAL;  op->pick_up = IVAL;
  YY_BREAK   YY_BREAK
 case 104:  case 104:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 371 "loader.l"  #line 372 "loader.l"
 op->anim_speed = IVAL;  op->anim_speed = IVAL;
  YY_BREAK   YY_BREAK
 case 105:  case 105:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 372 "loader.l"  #line 373 "loader.l"
 op->weight_limit = IVAL;  op->weight_limit = IVAL;
  YY_BREAK   YY_BREAK
 case 106:  case 106:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 373 "loader.l"  #line 374 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_DROP, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_DROP, IVAL);
  YY_BREAK   YY_BREAK
 case 107:  case 107:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 374 "loader.l"  #line 375 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_PRETEXT, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_PRETEXT, IVAL);
  YY_BREAK   YY_BREAK
 case 108:  case 108:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 375 "loader.l"  #line 376 "loader.l"
 op->will_apply = IVAL;  op->will_apply = IVAL;
  YY_BREAK   YY_BREAK
 case 109:  case 109:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 376 "loader.l"  #line 377 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_RANDOM_MOVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_RANDOM_MOVE, IVAL);
  YY_BREAK   YY_BREAK
 case 110:  case 110:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 377 "loader.l"  #line 378 "loader.l"
 op->can_apply = IVAL;  op->can_apply = IVAL;
  YY_BREAK   YY_BREAK
 case 111:  case 111:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 378 "loader.l"  #line 379 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CAST_SPELL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CAST_SPELL, IVAL);
  YY_BREAK   YY_BREAK
 case 112:  case 112:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 379 "loader.l"  #line 380 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_SCROLL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_SCROLL, IVAL);
  YY_BREAK   YY_BREAK
 case 113:  case 113:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 380 "loader.l"  #line 381 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_WAND, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_WAND, IVAL);
  YY_BREAK   YY_BREAK
 case 114:  case 114:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 381 "loader.l"  #line 382 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_BOW, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_BOW, IVAL);
  YY_BREAK   YY_BREAK
 case 115:  case 115:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 382 "loader.l"  #line 383 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_ARMOUR, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_ARMOUR, IVAL);
  YY_BREAK   YY_BREAK
 case 116:  case 116:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 383 "loader.l"  #line 384 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_WEAPON, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_WEAPON, IVAL);
  YY_BREAK   YY_BREAK
 case 117:  case 117:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 384 "loader.l"  #line 385 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_RING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_RING, IVAL);
  YY_BREAK   YY_BREAK
 case 118:  case 118:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 385 "loader.l"  #line 386 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_WAND, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_WAND, IVAL);
  YY_BREAK   YY_BREAK
 case 119:  case 119:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 386 "loader.l"  #line 387 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_BOW, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_BOW, IVAL);
  YY_BREAK   YY_BREAK
 case 120:  case 120:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 387 "loader.l"  #line 388 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_XRAYS, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_XRAYS, IVAL);
  YY_BREAK   YY_BREAK
 case 121:  case 121:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 388 "loader.l"  #line 389 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_FLOOR, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_FLOOR, IVAL);
  YY_BREAK   YY_BREAK
 case 122:  case 122:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 389 "loader.l"  #line 390 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_LIFESAVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_LIFESAVE, IVAL);
  YY_BREAK   YY_BREAK
 case 123:  case 123:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 390 "loader.l"  #line 391 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_STRENGTH, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_STRENGTH, IVAL);
  YY_BREAK   YY_BREAK
 case 124:  case 124:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 391 "loader.l"  #line 392 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SLEEP, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SLEEP, IVAL);
  YY_BREAK   YY_BREAK
 case 125:  case 125:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 392 "loader.l"  #line 393 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_STAND_STILL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_STAND_STILL, IVAL);
  YY_BREAK   YY_BREAK
 case 126:  case 126:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 393 "loader.l"  #line 394 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_RANDOM_MOVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_RANDOM_MOVE, IVAL);
  YY_BREAK   YY_BREAK
 case 127:  case 127:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 394 "loader.l"  #line 395 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_ONLY_ATTACK, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_ONLY_ATTACK, IVAL);
  YY_BREAK   YY_BREAK
 /* armour is loaded for compatiblity reasons */  /* armour is loaded for compatiblity reasons */
 case 128:  case 128:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 397 "loader.l"  #line 398 "loader.l"
 SET_RESIST(op, ATNR_PHYSICAL, IVAL);  SET_RESIST(op, ATNR_PHYSICAL, IVAL);
  YY_BREAK   YY_BREAK
 /* Start of various attacktypes */  /* Start of various attacktypes */
 case 129:  case 129:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 399 "loader.l"  #line 400 "loader.l"
 SET_RESIST(op, ATNR_PHYSICAL, IVAL);  SET_RESIST(op, ATNR_PHYSICAL, IVAL);
  YY_BREAK   YY_BREAK
 case 130:  case 130:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 400 "loader.l"  #line 401 "loader.l"
 SET_RESIST(op, ATNR_MAGIC, IVAL);  SET_RESIST(op, ATNR_MAGIC, IVAL);
  YY_BREAK   YY_BREAK
 case 131:  case 131:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 401 "loader.l"  #line 402 "loader.l"
 SET_RESIST(op, ATNR_FIRE, IVAL);  SET_RESIST(op, ATNR_FIRE, IVAL);
  YY_BREAK   YY_BREAK
 case 132:  case 132:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 402 "loader.l"  #line 403 "loader.l"
 SET_RESIST(op, ATNR_ELECTRICITY, IVAL);  SET_RESIST(op, ATNR_ELECTRICITY, IVAL);
  YY_BREAK   YY_BREAK
 case 133:  case 133:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 403 "loader.l"  #line 404 "loader.l"
 SET_RESIST(op, ATNR_COLD, IVAL);  SET_RESIST(op, ATNR_COLD, IVAL);
  YY_BREAK   YY_BREAK
 case 134:  case 134:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 404 "loader.l"  #line 405 "loader.l"
 SET_RESIST(op, ATNR_CONFUSION, IVAL);  SET_RESIST(op, ATNR_CONFUSION, IVAL);
  YY_BREAK   YY_BREAK
 case 135:  case 135:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 405 "loader.l"  #line 406 "loader.l"
 SET_RESIST(op, ATNR_ACID, IVAL);  SET_RESIST(op, ATNR_ACID, IVAL);
  YY_BREAK   YY_BREAK
 case 136:  case 136:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 406 "loader.l"  #line 407 "loader.l"
 SET_RESIST(op, ATNR_DRAIN, IVAL);  SET_RESIST(op, ATNR_DRAIN, IVAL);
  YY_BREAK   YY_BREAK
 case 137:  case 137:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 407 "loader.l"  #line 408 "loader.l"
 SET_RESIST(op, ATNR_WEAPONMAGIC, IVAL);  SET_RESIST(op, ATNR_WEAPONMAGIC, IVAL);
  YY_BREAK   YY_BREAK
 case 138:  case 138:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 408 "loader.l"  #line 409 "loader.l"
 SET_RESIST(op, ATNR_GHOSTHIT, IVAL);  SET_RESIST(op, ATNR_GHOSTHIT, IVAL);
  YY_BREAK   YY_BREAK
 case 139:  case 139:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 409 "loader.l"  #line 410 "loader.l"
 SET_RESIST(op, ATNR_POISON, IVAL);  SET_RESIST(op, ATNR_POISON, IVAL);
  YY_BREAK   YY_BREAK
 case 140:  case 140:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 410 "loader.l"  #line 411 "loader.l"
 SET_RESIST(op, ATNR_SLOW, IVAL);  SET_RESIST(op, ATNR_SLOW, IVAL);
  YY_BREAK   YY_BREAK
 case 141:  case 141:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 411 "loader.l"  #line 412 "loader.l"
 SET_RESIST(op, ATNR_PARALYZE, IVAL);  SET_RESIST(op, ATNR_PARALYZE, IVAL);
  YY_BREAK   YY_BREAK
 case 142:  case 142:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 412 "loader.l"  #line 413 "loader.l"
 SET_RESIST(op, ATNR_TURN_UNDEAD, IVAL);  SET_RESIST(op, ATNR_TURN_UNDEAD, IVAL);
  YY_BREAK   YY_BREAK
 case 143:  case 143:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 413 "loader.l"  #line 414 "loader.l"
 SET_RESIST(op, ATNR_FEAR, IVAL);  SET_RESIST(op, ATNR_FEAR, IVAL);
  YY_BREAK   YY_BREAK
 case 144:  case 144:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 414 "loader.l"  #line 415 "loader.l"
 SET_RESIST(op, ATNR_CANCELLATION, IVAL);  SET_RESIST(op, ATNR_CANCELLATION, IVAL);
  YY_BREAK   YY_BREAK
 case 145:  case 145:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 415 "loader.l"  #line 416 "loader.l"
 SET_RESIST(op, ATNR_DEPLETE, IVAL);  SET_RESIST(op, ATNR_DEPLETE, IVAL);
  YY_BREAK   YY_BREAK
 case 146:  case 146:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 416 "loader.l"  #line 417 "loader.l"
 SET_RESIST(op, ATNR_DEATH, IVAL);  SET_RESIST(op, ATNR_DEATH, IVAL);
  YY_BREAK   YY_BREAK
 case 147:  case 147:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 417 "loader.l"  #line 418 "loader.l"
 SET_RESIST(op, ATNR_CHAOS, IVAL);  SET_RESIST(op, ATNR_CHAOS, IVAL);
  YY_BREAK   YY_BREAK
 case 148:  case 148:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 418 "loader.l"  #line 419 "loader.l"
 SET_RESIST(op, ATNR_COUNTERSPELL, IVAL);  SET_RESIST(op, ATNR_COUNTERSPELL, IVAL);
  YY_BREAK   YY_BREAK
 case 149:  case 149:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 419 "loader.l"  #line 420 "loader.l"
 SET_RESIST(op, ATNR_GODPOWER, IVAL);  SET_RESIST(op, ATNR_GODPOWER, IVAL);
  YY_BREAK   YY_BREAK
 case 150:  case 150:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 420 "loader.l"  #line 421 "loader.l"
 SET_RESIST(op, ATNR_HOLYWORD, IVAL);  SET_RESIST(op, ATNR_HOLYWORD, IVAL);
  YY_BREAK   YY_BREAK
 case 151:  case 151:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 421 "loader.l"  #line 422 "loader.l"
 SET_RESIST(op, ATNR_BLIND, IVAL);  SET_RESIST(op, ATNR_BLIND, IVAL);
  YY_BREAK   YY_BREAK
 case 152:  case 152:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 422 "loader.l"  #line 423 "loader.l"
 SET_RESIST(op, ATNR_INTERNAL, IVAL);  SET_RESIST(op, ATNR_INTERNAL, IVAL);
  YY_BREAK   YY_BREAK
 /* Old style resistances */  /* Old style resistances */
 case 153:  case 153:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 425 "loader.l"  #line 426 "loader.l"
 set_protection(op, IVAL, RESIST_IMMUNE);  set_protection(op, IVAL, RESIST_IMMUNE);
  YY_BREAK   YY_BREAK
 case 154:  case 154:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 426 "loader.l"  #line 427 "loader.l"
 set_protection(op, IVAL, RESIST_PROT);  set_protection(op, IVAL, RESIST_PROT);
  YY_BREAK   YY_BREAK
 case 155:  case 155:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 427 "loader.l"  #line 428 "loader.l"
 set_protection(op, IVAL, RESIST_VULN);  set_protection(op, IVAL, RESIST_VULN);
  YY_BREAK   YY_BREAK
 case 156:  case 156:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 429 "loader.l"  #line 430 "loader.l"
 op->move_type = IVAL;  op->move_type = IVAL;
  YY_BREAK   YY_BREAK
 case 157:  case 157:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 430 "loader.l"  #line 431 "loader.l"
 op->move_status = IVAL;  op->move_status = IVAL;
  YY_BREAK   YY_BREAK
 case 158:  case 158:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 431 "loader.l"  #line 432 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CONFUSED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CONFUSED, IVAL);
  YY_BREAK   YY_BREAK
 case 159:  case 159:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 432 "loader.l"  #line 433 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_STEALTH, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_STEALTH, IVAL);
  YY_BREAK   YY_BREAK
 case 160:  case 160:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 433 "loader.l"  #line 434 "loader.l"
 add_button_link(op, op->map, IVAL);  add_button_link(op, op->map, IVAL);
  YY_BREAK   YY_BREAK
 case 161:  case 161:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 434 "loader.l"  #line 435 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CURSED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CURSED, IVAL);
  YY_BREAK   YY_BREAK
 case 162:  case 162:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 435 "loader.l"  #line 436 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_DAMNED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_DAMNED, IVAL);
  YY_BREAK   YY_BREAK
 case 163:  case 163:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 436 "loader.l"  #line 437 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SEE_ANYWHERE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SEE_ANYWHERE, IVAL);
  YY_BREAK   YY_BREAK
 case 164:  case 164:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 437 "loader.l"  #line 438 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_KNOWN_MAGICAL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_KNOWN_MAGICAL, IVAL);
  YY_BREAK   YY_BREAK
 case 165:  case 165:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 438 "loader.l"  #line 439 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_KNOWN_CURSED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_KNOWN_CURSED, IVAL);
  YY_BREAK   YY_BREAK
 case 166:  case 166:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 439 "loader.l"  #line 440 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CAN_USE_SKILL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CAN_USE_SKILL, IVAL);
  YY_BREAK   YY_BREAK
 case 167:  case 167:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 440 "loader.l"  #line 441 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_BEEN_APPLIED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_BEEN_APPLIED, IVAL);
  YY_BREAK   YY_BREAK
 case 168:  case 168:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 441 "loader.l"  #line 442 "loader.l"
 { char *y=yval();  { char *y=yval();
  if (*y=='\0') LOG(llevError,"Title without value.\n");   if (*y=='\0') LOG(llevError,"Title without value.\n");
  else FREE_AND_COPY(op->title, y);   else FREE_AND_COPY(op->title, y);
Line 3046
 
Line 3065
  YY_BREAK   YY_BREAK
 case 169:  case 169:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 445 "loader.l"  #line 446 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_ROD, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_ROD, IVAL);
  YY_BREAK   YY_BREAK
 case 170:  case 170:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 446 "loader.l"  #line 447 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_ROD, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_ROD, IVAL);
  YY_BREAK   YY_BREAK
 case 171:  case 171:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 447 "loader.l"  #line 448 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_HORN, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_HORN, IVAL);
  YY_BREAK   YY_BREAK
 case 172:  case 172:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 448 "loader.l"  #line 449 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_HORN, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_HORN, IVAL);
  YY_BREAK   YY_BREAK
 case 173:  case 173:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 449 "loader.l"  #line 450 "loader.l"
 op->expmul = FVAL;  op->expmul = FVAL;
  YY_BREAK   YY_BREAK
 case 174:  case 174:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 450 "loader.l"  #line 451 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_UNIQUE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_UNIQUE, IVAL);
  YY_BREAK   YY_BREAK
 case 175:  case 175:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 451 "loader.l"  #line 452 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_MAKE_INVIS, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_MAKE_INVIS, IVAL);
  YY_BREAK   YY_BREAK
 case 176:  case 176:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 452 "loader.l"  #line 453 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_INV_LOCKED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_INV_LOCKED, IVAL);
  YY_BREAK   YY_BREAK
 case 177:  case 177:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 453 "loader.l"  #line 454 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_WOODED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_WOODED, IVAL);
  YY_BREAK   YY_BREAK
 case 178:  case 178:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 454 "loader.l"  #line 455 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_HILLY, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_HILLY, IVAL);
  YY_BREAK   YY_BREAK
 case 179:  case 179:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 455 "loader.l"  #line 456 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_SKILL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_SKILL, IVAL);
  YY_BREAK   YY_BREAK
 case 180:  case 180:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 456 "loader.l"  #line 457 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_WEAPON, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_WEAPON, IVAL);
  YY_BREAK   YY_BREAK
 case 181:  case 181:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 457 "loader.l"  #line 458 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_SKILL_IDENT, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_SKILL_IDENT, IVAL);
  YY_BREAK   YY_BREAK
 case 182:  case 182:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 458 "loader.l"  #line 459 "loader.l"
 op->glow_radius = IVAL;  op->glow_radius = IVAL;
  YY_BREAK   YY_BREAK
 case 183:  case 183:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 459 "loader.l"  #line 460 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_BLIND, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_BLIND, IVAL);
  YY_BREAK   YY_BREAK
 case 184:  case 184:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 460 "loader.l"  #line 461 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SEE_IN_DARK, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SEE_IN_DARK, IVAL);
  YY_BREAK   YY_BREAK
 case 185:  case 185:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 461 "loader.l"  #line 462 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_CAULDRON, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_CAULDRON, IVAL);
  YY_BREAK   YY_BREAK
 case 186:  case 186:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 462 "loader.l"  #line 463 "loader.l"
 op->randomitems = find_treasurelist(yval());  op->randomitems = find_treasurelist(yval());
  YY_BREAK   YY_BREAK
 case 187:  case 187:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 463 "loader.l"  #line 464 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_DUST, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_DUST, IVAL);
  YY_BREAK   YY_BREAK
 case 188:  case 188:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 464 "loader.l"  #line 465 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_STEAL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_STEAL, IVAL);
  YY_BREAK   YY_BREAK
 case 189:  case 189:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 465 "loader.l"  #line 466 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_ONE_HIT, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_ONE_HIT, IVAL);
  YY_BREAK   YY_BREAK
 case 190:  case 190:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 467 "loader.l"  #line 468 "loader.l"
 { /* Some archetypes have these values in them */ }  { /* Some archetypes have these values in them */ }
  YY_BREAK   YY_BREAK
 case 191:  case 191:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 468 "loader.l"  #line 469 "loader.l"
 { /* Probably the pupland archetypes - I imagined */ }  { /* Probably the pupland archetypes - I imagined */ }
  YY_BREAK   YY_BREAK
 case 192:  case 192:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 469 "loader.l"  #line 470 "loader.l"
 { /* That these are for the new combat code */ }  { /* That these are for the new combat code */ }
  YY_BREAK   YY_BREAK
 case 193:  case 193:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 470 "loader.l"  #line 471 "loader.l"
 { /* just ignore for now */ }  { /* just ignore for now */ }
  YY_BREAK   YY_BREAK
 case 194:  case 194:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 471 "loader.l"  #line 472 "loader.l"
 { }  { }
  YY_BREAK   YY_BREAK
 case 195:  case 195:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 472 "loader.l"  #line 473 "loader.l"
   op->weapontype = FVAL;
    YY_BREAK
   case 196:
   YY_RULE_SETUP
   #line 474 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (apply) without val\n");   if (*yv=='\0') LOG(llevError,"Event (apply) without val\n");
Line 3186
 
Line 3210
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 196:  case 197:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 480 "loader.l"  #line 482 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (apply) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (apply) without plugin\n");
Line 3198
 
Line 3222
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 197:  case 198:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 488 "loader.l"  #line 490 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (apply) without options\n");   if (*yv=='\0') LOG(llevError,"Event (apply) without options\n");
Line 3210
 
Line 3234
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 198:  case 199:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 496 "loader.l"  #line 498 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (attack) without val\n");   if (*yv=='\0') LOG(llevError,"Event (attack) without val\n");
Line 3222
 
Line 3246
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 199:  case 200:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 504 "loader.l"  #line 506 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (attack) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (attack) without plugin\n");
Line 3234
 
Line 3258
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 200:  case 201:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 512 "loader.l"  #line 514 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (attack) without options\n");   if (*yv=='\0') LOG(llevError,"Event (attack) without options\n");
Line 3246
 
Line 3270
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 201:  case 202:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 520 "loader.l"  #line 522 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (born) without val\n");   if (*yv=='\0') LOG(llevError,"Event (born) without val\n");
Line 3258
 
Line 3282
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 202:  case 203:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 528 "loader.l"  #line 530 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (born) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (born) without plugin\n");
Line 3270
 
Line 3294
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 203:  case 204:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 536 "loader.l"  #line 538 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (born) without options\n");   if (*yv=='\0') LOG(llevError,"Event (born) without options\n");
Line 3282
 
Line 3306
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 204:  case 205:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 544 "loader.l"  #line 546 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (crash) without val\n");   if (*yv=='\0') LOG(llevError,"Event (crash) without val\n");
Line 3294
 
Line 3318
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 205:  case 206:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 552 "loader.l"  #line 554 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (crash) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (crash) without plugin\n");
Line 3306
 
Line 3330
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 206:  case 207:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 560 "loader.l"  #line 562 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (crash) without options\n");   if (*yv=='\0') LOG(llevError,"Event (crash) without options\n");
Line 3318
 
Line 3342
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 207:  case 208:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 568 "loader.l"  #line 570 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (death) without val\n");   if (*yv=='\0') LOG(llevError,"Event (death) without val\n");
Line 3330
 
Line 3354
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 208:  case 209:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 576 "loader.l"  #line 578 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (death) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (death) without plugin\n");
Line 3342
 
Line 3366
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 209:  case 210:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 584 "loader.l"  #line 586 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (death) without options\n");   if (*yv=='\0') LOG(llevError,"Event (death) without options\n");
Line 3354
 
Line 3378
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 210:  case 211:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 592 "loader.l"  #line 594 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (drop) without val\n");   if (*yv=='\0') LOG(llevError,"Event (drop) without val\n");
Line 3366
 
Line 3390
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 211:  case 212:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 600 "loader.l"  #line 602 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (drop) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (drop) without plugin\n");
Line 3378
 
Line 3402
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 212:  case 213:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 608 "loader.l"  #line 610 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (drop) without options\n");   if (*yv=='\0') LOG(llevError,"Event (drop) without options\n");
Line 3390
 
Line 3414
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 213:  case 214:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 616 "loader.l"  #line 618 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (login) without val\n");   if (*yv=='\0') LOG(llevError,"Event (login) without val\n");
Line 3402
 
Line 3426
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 214:  case 215:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 624 "loader.l"  #line 626 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (login) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (login) without plugin\n");
Line 3414
 
Line 3438
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 215:  case 216:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 632 "loader.l"  #line 634 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (login) without options\n");   if (*yv=='\0') LOG(llevError,"Event (login) without options\n");
Line 3426
 
Line 3450
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 216:  case 217:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 640 "loader.l"  #line 642 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (logout) without val\n");   if (*yv=='\0') LOG(llevError,"Event (logout) without val\n");
Line 3438
 
Line 3462
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 217:  case 218:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 648 "loader.l"  #line 650 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (logout) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (logout) without plugin\n");
Line 3450
 
Line 3474
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 218:  case 219:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 656 "loader.l"  #line 658 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (logout) without options\n");   if (*yv=='\0') LOG(llevError,"Event (logout) without options\n");
Line 3462
 
Line 3486
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 219:  case 220:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 664 "loader.l"  #line 666 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (pickup) without val\n");   if (*yv=='\0') LOG(llevError,"Event (pickup) without val\n");
Line 3474
 
Line 3498
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 220:  case 221:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 672 "loader.l"  #line 674 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (pickup) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (pickup) without plugin\n");
Line 3486
 
Line 3510
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 221:  case 222:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 680 "loader.l"  #line 682 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (pickup) without options\n");   if (*yv=='\0') LOG(llevError,"Event (pickup) without options\n");
Line 3498
 
Line 3522
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 222:  case 223:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 688 "loader.l"  #line 690 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (remove) without val\n");   if (*yv=='\0') LOG(llevError,"Event (remove) without val\n");
Line 3510
 
Line 3534
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 223:  case 224:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 696 "loader.l"  #line 698 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (remove) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (remove) without plugin\n");
Line 3522
 
Line 3546
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 224:  case 225:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 704 "loader.l"  #line 706 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (remove) without options\n");   if (*yv=='\0') LOG(llevError,"Event (remove) without options\n");
Line 3534
 
Line 3558
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 225:  case 226:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 712 "loader.l"  #line 714 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (say) without val\n");   if (*yv=='\0') LOG(llevError,"Event (say) without val\n");
Line 3546
 
Line 3570
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 226:  case 227:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 720 "loader.l"  #line 722 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (say) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (say) without plugin\n");
Line 3558
 
Line 3582
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 227:  case 228:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 728 "loader.l"  #line 730 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (say) without options\n");   if (*yv=='\0') LOG(llevError,"Event (say) without options\n");
Line 3570
 
Line 3594
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 228:  case 229:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 736 "loader.l"  #line 738 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (shout) without val\n");   if (*yv=='\0') LOG(llevError,"Event (shout) without val\n");
Line 3582
 
Line 3606
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 229:  case 230:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 744 "loader.l"  #line 746 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (shout) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (shout) without plugin\n");
Line 3594
 
Line 3618
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 230:  case 231:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 752 "loader.l"  #line 754 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (shout) without options\n");   if (*yv=='\0') LOG(llevError,"Event (shout) without options\n");
Line 3606
 
Line 3630
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 231:  case 232:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 760 "loader.l"  #line 762 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (tell) without val\n");   if (*yv=='\0') LOG(llevError,"Event (tell) without val\n");
Line 3618
 
Line 3642
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 232:  case 233:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 768 "loader.l"  #line 770 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (tell) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (tell) without plugin\n");
Line 3630
 
Line 3654
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 233:  case 234:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 776 "loader.l"  #line 778 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (tell) without options\n");   if (*yv=='\0') LOG(llevError,"Event (tell) without options\n");
Line 3642
 
Line 3666
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 234:  case 235:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 784 "loader.l"  #line 786 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (time) without val\n");   if (*yv=='\0') LOG(llevError,"Event (time) without val\n");
Line 3654
 
Line 3678
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 235:  case 236:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 792 "loader.l"  #line 794 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (time) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (time) without plugin\n");
Line 3666
 
Line 3690
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 236:  case 237:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 800 "loader.l"  #line 802 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (time) without options\n");   if (*yv=='\0') LOG(llevError,"Event (time) without options\n");
Line 3678
 
Line 3702
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 237:  case 238:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 808 "loader.l"  #line 810 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (throw) without val\n");   if (*yv=='\0') LOG(llevError,"Event (throw) without val\n");
Line 3690
 
Line 3714
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 238:  case 239:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 816 "loader.l"  #line 818 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (throw) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (throw) without plugin\n");
Line 3702
 
Line 3726
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 239:  case 240:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 824 "loader.l"  #line 826 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (throw) without options\n");   if (*yv=='\0') LOG(llevError,"Event (throw) without options\n");
Line 3714
 
Line 3738
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 240:  case 241:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 832 "loader.l"  #line 834 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (trigger) without val\n");   if (*yv=='\0') LOG(llevError,"Event (trigger) without val\n");
Line 3726
 
Line 3750
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 241:  case 242:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 840 "loader.l"  #line 842 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (trigger) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (trigger) without plugin\n");
Line 3738
 
Line 3762
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 242:  case 243:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 848 "loader.l"  #line 850 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (trigger) without options\n");   if (*yv=='\0') LOG(llevError,"Event (trigger) without options\n");
Line 3750
 
Line 3774
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 243:  case 244:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 856 "loader.l"  #line 858 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (close) without val\n");   if (*yv=='\0') LOG(llevError,"Event (close) without val\n");
Line 3762
 
Line 3786
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 244:  case 245:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 864 "loader.l"  #line 866 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (close) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (close) without plugin\n");
Line 3774
 
Line 3798
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 245:  case 246:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 872 "loader.l"  #line 874 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Event (close) without options\n");   if (*yv=='\0') LOG(llevError,"Event (close) without options\n");
Line 3786
 
Line 3810
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 246:  case 247:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 880 "loader.l"  #line 882 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') LOG(llevError,"Script (current weapon) without val\n");   if (*yv=='\0') LOG(llevError,"Script (current weapon) without val\n");
Line 3798
 
Line 3822
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 247:  case 248:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 889 "loader.l"  #line 891 "loader.l"
 {/* ignore empty lines, newlines we don't do above */}  {/* ignore empty lines, newlines we don't do above */}
  YY_BREAK   YY_BREAK
 case 248:  case 249:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 890 "loader.l"  #line 892 "loader.l"
 {}  {}
  YY_BREAK   YY_BREAK
 case YY_STATE_EOF(INITIAL):  case YY_STATE_EOF(INITIAL):
 case YY_STATE_EOF(MESSAGE):  case YY_STATE_EOF(MESSAGE):
 case YY_STATE_EOF(SCRIPT):  case YY_STATE_EOF(SCRIPT):
 #line 892 "loader.l"  #line 894 "loader.l"
 {/* If we got an error, return the error.  Otherwise, return that we got EOF */  {/* If we got an error, return the error.  Otherwise, return that we got EOF */
      if (lex_error!=0) return lex_error; else return LL_EOF;}       if (lex_error!=0) return lex_error; else return LL_EOF;}
  YY_BREAK   YY_BREAK
 case 249:  case 250:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 894 "loader.l"  #line 896 "loader.l"
 { yyerror( "Unrecognized string"); lex_error= -1; }  { yyerror( "Unrecognized string"); lex_error= -1; }
  YY_BREAK   YY_BREAK
 case 250:  case 251:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 895 "loader.l"  #line 897 "loader.l"
 ECHO;  ECHO;
  YY_BREAK   YY_BREAK
   
Line 4115
 
Line 4139
  while ( yy_chk[yy_base[yy_current_state] + yy_c] != 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];   yy_current_state = (int) yy_def[yy_current_state];
  if ( yy_current_state >= 2205 )   if ( yy_current_state >= 2216 )
  yy_c = yy_meta[(unsigned int) yy_c];   yy_c = yy_meta[(unsigned int) yy_c];
  }   }
  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];   yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Line 4150
 
Line 4174
  while ( yy_chk[yy_base[yy_current_state] + yy_c] != 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];   yy_current_state = (int) yy_def[yy_current_state];
  if ( yy_current_state >= 2205 )   if ( yy_current_state >= 2216 )
  yy_c = yy_meta[(unsigned int) yy_c];   yy_c = yy_meta[(unsigned int) yy_c];
  }   }
  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];   yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
  yy_is_jam = (yy_current_state == 2204);   yy_is_jam = (yy_current_state == 2215);
   
  return yy_is_jam ? 0 : yy_current_state;   return yy_is_jam ? 0 : yy_current_state;
  }   }
Line 4246
 
Line 4270
  /* Reset buffer status. */   /* Reset buffer status. */
  yyrestart( yyin );   yyrestart( yyin );
   
  /* fall through */   /*FALLTHROUGH*/
   
  case EOB_ACT_END_OF_FILE:   case EOB_ACT_END_OF_FILE:
  {   {
Line 4497
 
Line 4521
 yyconst char *yy_str;  yyconst char *yy_str;
 #endif  #endif
  {   {
  int len;   yy_size_t len;
  for ( len = 0; yy_str[len]; ++len )   for ( len = 0; yy_str[len]; ++len )
  ;   ;
   
Line 4508
 
Line 4532
   
 #ifndef YY_NO_SCAN_BYTES  #ifndef YY_NO_SCAN_BYTES
 #ifdef YY_USE_PROTOS  #ifdef YY_USE_PROTOS
 YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )  YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, yy_size_t len )
 #else  #else
 YY_BUFFER_STATE yy_scan_bytes( bytes, len )  YY_BUFFER_STATE yy_scan_bytes( bytes, len )
 yyconst char *bytes;  yyconst char *bytes;
 int len;  yy_size_t len;
 #endif  #endif
  {   {
  YY_BUFFER_STATE b;   YY_BUFFER_STATE b;
  char *buf;   char *buf;
  yy_size_t n;   yy_size_t n, i;
  int i;  
   
  /* Get memory for full buffer, including space for trailing EOB's. */   /* Get memory for full buffer, including space for trailing EOB's. */
  n = len + 2;   n = len + 2;
Line 4634
 
Line 4657
   
 #ifndef yytext_ptr  #ifndef yytext_ptr
 #ifdef YY_USE_PROTOS  #ifdef YY_USE_PROTOS
 static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )  static void yy_flex_strncpy( char *s1, yyconst char *s2, yy_size_t n )
 #else  #else
 static void yy_flex_strncpy( s1, s2, n )  static void yy_flex_strncpy( s1, s2, n )
 char *s1;  char *s1;
 yyconst char *s2;  yyconst char *s2;
 int n;  yy_size_t n;
 #endif  #endif
  {   {
  register int i;   register yy_size_t i;
  for ( i = 0; i < n; ++i )   for ( i = 0; i < n; ++i )
  s1[i] = s2[i];   s1[i] = s2[i];
  }   }
Line 4650
 
Line 4673
   
 #ifdef YY_NEED_STRLEN  #ifdef YY_NEED_STRLEN
 #ifdef YY_USE_PROTOS  #ifdef YY_USE_PROTOS
 static int yy_flex_strlen( yyconst char *s )  static yy_size_t yy_flex_strlen( yyconst char *s )
 #else  #else
 static int yy_flex_strlen( s )  static yy_size_t yy_flex_strlen( s )
 yyconst char *s;  yyconst char *s;
 #endif  #endif
  {   {
  register int n;   register yy_size_t n;
  for ( n = 0; s[n]; ++n )   for ( n = 0; s[n]; ++n )
  ;   ;
   
Line 4675
 
Line 4698
  return (void *) malloc( size );   return (void *) malloc( size );
  }   }
   
   #ifndef YY_USES_REJECT
 #ifdef YY_USE_PROTOS  #ifdef YY_USE_PROTOS
 static void *yy_flex_realloc( void *ptr, yy_size_t size )  static void *yy_flex_realloc( void *ptr, yy_size_t size )
 #else  #else
Line 4692
 
Line 4716
  */   */
  return (void *) realloc( (char *) ptr, size );   return (void *) realloc( (char *) ptr, size );
  }   }
   #endif
   
 #ifdef YY_USE_PROTOS  #ifdef YY_USE_PROTOS
 static void yy_flex_free( void *ptr )  static void yy_flex_free( void *ptr )
Line 4710
 
Line 4735
  return 0;   return 0;
  }   }
 #endif  #endif
 #line 895 "loader.l"  #line 897 "loader.l"
   
   
   
Line 5280
 
Line 5305
   if (op->can_apply!=op2->can_apply)    if (op->can_apply!=op2->can_apply)
     save_long(buf,variable_const[V_CAN_APPLY],op->can_apply);      save_long(buf,variable_const[V_CAN_APPLY],op->can_apply);
   
     if(op->weapontype && op->weapontype!=op2->weapontype) {
       sprintf(buf2,"weapontype %d\n",op->weapontype);
       strcat(buf,buf2);
     }
   
   for (tmp=0; tmp <= NUM_FLAGS; tmp++) {    for (tmp=0; tmp <= NUM_FLAGS; tmp++) {
     if ((flag_links[tmp][0]!=-1) && (QUERY_FLAG(op, flag_links[tmp][0]) !=      if ((flag_links[tmp][0]!=-1) && (QUERY_FLAG(op, flag_links[tmp][0]) !=
  QUERY_FLAG(op2, flag_links[tmp][0]))) {   QUERY_FLAG(op2, flag_links[tmp][0]))) {


Legend:
line(s) removed in v.1.15 
line(s) changed
 line(s) added in v.1.16

File made using version 1.98 of cvs2html by leaf at 2011-07-21 17:11