Difference for common/loader.c from version 1.19 to 1.20


version 1.19 version 1.20
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.19 2001/11/27 04:33:46 michtoen Exp $   * $Header: /cvsroot/crossfire/crossfire/common/loader.c,v 1.20 2001/12/03 07:51:39 mwedel Exp $
  */   */
   
 #define FLEX_SCANNER  #define FLEX_SCANNER
Line 126
 
Line 126
  { \   { \
  /* Undo effects of setting up yytext. */ \   /* Undo effects of setting up yytext. */ \
  *yy_cp = yy_hold_char; \   *yy_cp = yy_hold_char; \
    YY_RESTORE_YY_MORE_OFFSET \
  yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \   yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
  YY_DO_BEFORE_ACTION; /* set up yytext again */ \   YY_DO_BEFORE_ACTION; /* set up yytext again */ \
  } \   } \
Line 235
 
Line 236
 #define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )  #define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
   
 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 *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, int len ));
   
 static void *yy_flex_alloc YY_PROTO(( yy_size_t ));  static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
Line 284
 
Line 285
  *yy_cp = '\0'; \   *yy_cp = '\0'; \
  yy_c_buf_p = yy_cp;   yy_c_buf_p = yy_cp;
   
 #define YY_NUM_RULES 260  #define YY_NUM_RULES 261
 #define YY_END_OF_BUFFER 261  #define YY_END_OF_BUFFER 262
 static yyconst short int yy_accept[2293] =  static yyconst short int yy_accept[2304] =
     {   0,      {   0,
       259,  259,    3,    3,    0,    0,  261,  259,  257,  259,        260,  260,    3,    3,    0,    0,  262,  260,  258,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,    3,    3,    3,  260,  260,  259,        260,  260,  260,  260,    3,    3,    3,  261,  261,  260,
       259,  258,  259,  257,  259,  259,  259,  259,  259,  259,        260,  259,  260,  258,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
   
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
         3,    3,    3,    3,    0,  257,  259,  259,  259,  259,        260,    3,    3,    3,    3,    0,  258,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
   
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,   40,   40,  259,   41,        260,  260,  260,  260,  260,  260,  260,  260,   40,   40,
        41,    3,   39,   39,  259,  259,  259,  259,  259,  259,        260,   41,   41,    3,   39,   39,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
        13,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,   13,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,   29,   29,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,   29,   29,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
   
       259,  259,  259,  259,  259,  259,    1,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,    1,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,   31,   31,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,   31,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,         31,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,   38,   38,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,    3,  259,  259,  259,        260,   38,   38,  260,  260,  260,  260,  260,  260,    3,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,   26,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
        26,  259,   24,   24,  259,  259,  259,  259,  259,   37,        260,  260,   26,   26,  260,   24,   24,  260,  260,  260,
   
        37,  259,   23,   23,  259,  259,  259,   35,   35,  259,        260,  260,   37,   37,  260,   23,   23,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,   35,   35,  260,  260,  260,  260,  260,  260,  260,
       259,  259,   27,   27,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,   27,   27,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
        12,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,   12,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,   28,   28,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,   28,   28,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,   22,   22,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,   22,   22,  260,
   
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,   25,   25,   98,   98,  259,    3,  259,  259,  259,        260,  260,  260,  260,  260,   25,   25,   98,   98,  260,
       259,  259,    9,    9,  259,  259,  259,  259,  259,  259,          3,  260,  260,  260,  260,  260,    9,    9,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,   21,   21,  259,  259,  259,   36,   36,  259,        260,  260,  260,  260,  260,  260,  260,   21,   21,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,   36,   36,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  102,  102,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,    5,    5,  259,        260,  260,  102,  102,  260,  260,  260,  260,  260,  260,
   
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,    5,    5,  260,  260,  260,  260,  260,  260,
       259,  259,  259,   42,   42,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,   42,   42,
       259,  259,  259,  259,  259,    6,    6,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,          6,    6,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,   45,   45,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,   45,   45,  260,  260,  260,  260,  260,
       259,  259,    3,   57,   57,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,    3,   57,   57,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
   
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,   33,   33,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,   33,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,         33,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,   43,   43,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,   55,   55,  259,  259,  259,   30,   30,   32,   32,        260,  260,  260,  260,   43,   43,  260,   55,   55,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,   30,   30,   32,   32,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  127,  127,  259,   18,   18,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,   56,   56,  259,  259,  259,  171,        260,  127,  127,  260,   18,   18,  260,  260,  260,  260,
   
       171,  259,  259,  259,  259,  259,   47,   47,  259,  259,         56,   56,  260,  260,  260,  171,  171,  260,  260,  260,
       259,  259,  259,  259,  259,  123,  123,    3,    2,  259,        260,  260,   47,   47,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  131,  131,  259,  259,  259,  259,  259,        260,  123,  123,    3,    2,  260,  260,  260,  260,  131,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        131,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  164,  164,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       165,  165,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  164,  164,  165,  165,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       176,  176,  259,   66,   66,   69,   69,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  176,  176,  260,
       259,  259,  259,  156,  156,  259,  259,  259,  259,  259,         66,   66,   69,   69,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        156,  156,  260,  260,  260,  260,  260,  260,  260,  260,
   
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,    4,    4,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,    4,    4,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,   93,   93,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,   92,        260,   93,   93,  260,  260,  260,  260,  260,  260,  260,
        92,  177,  177,   59,   59,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,   92,   92,  177,  177,
        48,   48,  259,  259,  259,   58,   58,  259,  259,  259,         59,   59,  260,  260,  260,  260,  260,   48,   48,  260,
       259,  259,  259,  259,  259,  196,  196,  259,  259,  259,        260,  260,   58,   58,  260,  260,  260,  260,  260,  260,
   
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  196,  196,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,   67,   67,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,   88,   88,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,   67,   67,  260,  260,  260,  260,   88,
       190,  190,  259,  259,  259,  259,  259,  259,  259,  259,         88,  260,  260,  260,  260,  260,  260,  260,  190,  190,
       259,  259,  259,   15,   15,  259,  259,  259,  259,   70,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
        70,  259,   60,   60,   61,   61,   71,   71,  259,  259,        260,   15,   15,  260,  260,  260,  260,   70,   70,  260,
       109,  109,  259,  259,   63,   63,   62,   62,  259,  259,         60,   60,   61,   61,   71,   71,  260,  260,  109,  109,
       259,  259,  192,  192,  259,  259,  259,  259,  259,  259,        260,  260,   63,   63,   62,   62,  260,  260,  260,  260,
   
       106,  106,  259,  259,  259,  259,  259,  259,  259,  259,        192,  192,  260,  260,  260,  260,  260,  260,  106,  106,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,    7,    7,  259,  259,  259,  259,  259,  162,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       162,  259,  259,  259,  259,  259,  259,  259,   64,   64,          7,    7,  260,  260,  260,  260,  260,  162,  162,  260,
        99,   99,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,   64,   64,   99,   99,
       259,  259,  259,  259,  259,  259,  259,  259,  259,   81,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
        81,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,   81,   81,  260,
       259,   49,   49,  259,   86,   86,  161,  161,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,   49,
       259,  259,   91,   91,  259,  259,  259,  259,  259,  259,         49,  260,   86,   86,  161,  161,  260,  260,  260,  260,
   
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,         91,   91,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,   74,   74,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
         8,  259,  259,  186,  186,  259,  124,  124,  181,  181,        260,   74,   74,  260,  260,  260,  260,  260,  260,    8,
       259,  259,  259,  259,  259,  259,   17,   17,  259,  259,        260,  260,  186,  186,  260,  124,  124,  181,  181,  260,
       125,  125,  259,   46,   46,   34,   34,  259,  259,  259,        260,  260,  260,  260,  260,   17,   17,  260,  260,  125,
       259,   97,   97,  259,  259,  191,  191,  259,  259,  259,        125,  260,   46,   46,   34,   34,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,         97,   97,  260,  260,  191,  191,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  103,  103,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
   
       259,  259,  259,  199,  199,  259,  259,   78,   78,  259,        260,  260,  260,  103,  103,  260,  260,  260,  260,  260,
       259,   65,   65,  259,  259,  259,   11,   11,  259,  259,        260,  260,  199,  199,  260,  260,   78,   78,  260,  260,
       259,  259,  259,  259,  113,  113,  259,  259,  259,  259,         65,   65,  260,  260,  260,   11,   11,  260,  260,  260,
       194,  194,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  113,  113,  260,  260,  260,  260,  194,
       259,  259,  259,  259,  163,  163,  108,  108,  259,   44,        194,  260,  260,  260,  260,  260,  260,  260,  260,  260,
        44,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  163,  163,  108,  108,  260,   44,   44,
       259,  259,  259,  259,  232,  232,  259,  259,  259,  259,        202,  202,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,   75,   75,  259,  259,        260,  260,  260,  260,  260,  233,  233,  260,  260,  260,
       259,  259,  259,  259,  259,  259,   54,   54,  259,  259,        260,  260,  260,  260,  260,  260,  260,   75,   75,  260,
        76,   76,  259,  259,  180,  180,  259,  259,  259,   14,        260,  260,  260,  260,  260,  260,  260,   54,   54,  260,
   
        14,  259,  259,   72,   72,   73,   73,  259,  259,  259,        260,   76,   76,  260,  260,  180,  180,  260,  260,  260,
       259,  259,  259,  104,  104,  259,  259,  259,  157,  157,         14,   14,  260,  260,   72,   72,   73,   73,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  104,  104,  260,  260,  260,  157,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        157,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,   20,   20,  259,   87,   87,  259,  259,  200,  200,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       101,  101,  259,  259,  259,  259,  107,  107,   79,   79,        260,  260,   20,   20,  260,   87,   87,  260,  260,  200,
       259,   50,   50,   77,   77,  259,   90,   90,  259,  259,        200,  101,  101,  260,  260,  260,  260,  107,  107,   79,
       195,  195,  259,  259,  259,  259,  259,  259,  259,  259,         79,  260,   50,   50,   77,   77,  260,   90,   90,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  208,        260,  195,  195,  260,  260,  260,  260,  260,  260,  260,
   
       208,  259,  259,  259,  259,  259,  259,  259,  259,  217,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       217,  259,  259,  259,  259,  259,  259,  259,  259,  259,        209,  209,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  238,  238,  259,  259,  259,  259,  241,  241,        218,  218,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  239,  239,  260,  260,  260,  260,  242,
       259,  259,   84,   84,  179,  179,  259,  259,  259,   83,        242,  260,  260,  260,  260,  260,  260,  260,  260,  260,
        83,  259,  259,   16,   16,  259,  160,  160,  259,  110,        260,  260,  260,   84,   84,  179,  179,  260,  260,  260,
       110,  259,  259,  259,   10,   10,  259,  259,  259,  259,         83,   83,  260,  260,   16,   16,  260,  160,  160,  260,
       259,  259,  259,  259,   85,   85,  259,  259,  259,  259,        110,  110,  260,  260,  260,   10,   10,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,   85,   85,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
   
       259,  259,   19,   19,  259,   89,   89,  259,  158,  158,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       198,  198,  111,  111,  259,  259,  259,  259,  259,  259,        260,  260,  260,   19,   19,  260,   89,   89,  260,  158,
       259,  259,  117,  117,  259,  259,  173,  173,  259,  259,        158,  198,  198,  111,  111,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  202,  202,  259,  259,  259,  259,        260,  260,  260,  117,  117,  260,  260,  173,  173,  260,
       259,  259,  253,  253,  259,  259,  211,  211,  259,  259,        260,  260,  260,  260,  260,  203,  203,  260,  260,  260,
       214,  214,  259,  259,  259,  259,  220,  220,  259,  259,        260,  260,  260,  254,  254,  260,  260,  212,  212,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  235,  235,        260,  215,  215,  260,  260,  260,  260,  221,  221,  260,
       259,  259,  259,  259,  247,  247,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  236,
       244,  244,  259,  259,  259,  185,  185,  259,  259,  259,        236,  260,  260,  260,  260,  248,  248,  260,  260,  260,
       259,  259,  259,   68,   68,  188,  188,   82,   82,  259,        260,  245,  245,  260,  260,  260,  185,  185,  260,  260,
   
       259,  259,  259,  259,  126,  126,  130,  130,  259,   53,        260,  260,  260,  260,   68,   68,  188,  188,   82,   82,
        53,  259,  129,  129,  259,  189,  189,  259,  259,  138,        260,  260,  260,  260,  260,  126,  126,  130,  130,  260,
       138,  259,  259,  259,  136,  136,  259,  259,  259,  259,         53,   53,  260,  129,  129,  260,  189,  189,  260,  260,
       259,  259,  146,  146,  134,  134,  259,  259,  259,  259,        138,  138,  260,  260,  260,  136,  136,  260,  260,  260,
       259,  259,  259,  259,  143,  143,  259,  259,  259,  259,        260,  260,  260,  146,  146,  134,  134,  260,  260,  260,
       128,  128,  259,  259,  170,  170,  259,  259,  259,  259,        260,  260,  260,  260,  260,  143,  143,  260,  260,  260,
       259,  259,  175,  175,  120,  120,  259,  259,  116,  116,        260,  128,  128,  260,  260,  170,  170,  260,  260,  260,
       259,  259,  259,  259,  259,  205,  205,  259,  259,  259,        260,  260,  260,  175,  175,  120,  120,  260,  260,  116,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        116,  260,  260,  260,  260,  260,  206,  206,  260,  260,
       259,  223,  223,  259,  259,  226,  226,  259,  259,  229,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
   
       229,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  224,  224,  260,  260,  227,  227,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        230,  230,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  168,  168,  259,  259,  259,  259,   51,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
        51,  259,  259,  259,  259,  154,  154,  259,  150,  150,        260,  260,  260,  260,  168,  168,  260,  260,  260,  260,
       259,  259,  149,  149,  259,  139,  139,  259,  259,  259,         51,   51,  260,  260,  260,  260,  154,  154,  260,  150,
       259,  259,  133,  133,  259,  259,  259,  259,  259,  166,        150,  260,  260,  149,  149,  260,  139,  139,  260,  260,
       166,  259,   94,   94,  259,  259,  259,  193,  193,  105,        260,  260,  260,  133,  133,  260,  260,  260,  260,  260,
       105,  259,  259,  259,  169,  169,  259,  201,  201,  259,        166,  166,  260,   94,   94,  260,  260,  260,  193,  193,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        105,  105,  260,  260,  260,  169,  169,  260,  201,  201,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
   
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  250,  250,  259,  259,  122,  122,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  172,  172,  259,  259,  259,  167,  167,  259,  100,        260,  260,  260,  260,  260,  251,  251,  260,  260,  122,
       100,  259,   52,   52,  259,  259,   96,   96,  259,  259,        122,  260,  172,  172,  260,  260,  260,  167,  167,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  142,        100,  100,  260,   52,   52,  260,  260,   96,   96,  260,
       142,  259,  259,   80,   80,  259,  114,  114,  197,  197,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  118,  118,  115,  115,  119,  119,  259,  259,  259,        142,  142,  260,  260,   80,   80,  260,  114,  114,  197,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        197,  260,  118,  118,  115,  115,  119,  119,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
   
       259,  259,  259,  259,  174,  174,  259,  121,  121,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       178,  178,  184,  184,  259,  259,  259,  259,  259,  148,        260,  260,  260,  260,  260,  174,  174,  260,  121,  121,
       148,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  178,  178,  184,  184,  260,  260,  260,  260,  260,
       159,  159,  187,  187,  259,  259,  259,  259,  259,  259,        148,  148,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  159,  159,  187,  187,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  182,  182,  259,  112,  112,   95,   95,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  141,  141,  152,  152,  153,  153,  155,  155,        260,  260,  182,  182,  260,  112,  112,   95,   95,  260,
       144,  144,  132,  132,  259,  259,  259,  259,  259,  259,        260,  260,  260,  141,  141,  152,  152,  153,  153,  155,
   
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        155,  144,  144,  132,  132,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       233,  233,  259,  259,  259,  259,  259,  259,  259,  259,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  183,  183,  259,  137,  137,  259,        260,  234,  234,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  209,        260,  260,  260,  260,  260,  183,  183,  260,  137,  137,
       209,  259,  259,  259,  259,  259,  259,  259,  218,  218,        260,  260,  260,  260,  260,  260,  260,  260,  260,  260,
       259,  259,  259,  259,  259,  259,  259,  259,  234,  234,        210,  210,  260,  260,  260,  260,  260,  260,  260,  219,
       259,  259,  259,  239,  239,  259,  259,  259,  242,  242,        219,  260,  260,  260,  260,  260,  260,  260,  260,  235,
       259,  259,  259,  259,  259,  259,  259,  259,  259,  259,        235,  260,  260,  260,  240,  240,  260,  260,  260,  243,
       259,  203,  203,  259,  259,  210,  210,  259,  254,  254,        243,  260,  260,  260,  260,  260,  260,  260,  260,  260,
   
       259,  212,  212,  259,  215,  215,  219,  219,  259,  221,        260,  260,  204,  204,  260,  260,  211,  211,  260,  255,
       221,  259,  259,  259,  259,  259,  259,  259,  236,  236,        255,  260,  213,  213,  260,  216,  216,  220,  220,  260,
       240,  240,  259,  248,  248,  243,  243,  259,  245,  245,        222,  222,  260,  260,  260,  260,  260,  260,  260,  237,
       259,  259,  259,  259,  135,  135,  145,  145,  140,  140,        237,  241,  241,  260,  249,  249,  244,  244,  260,  246,
       259,  204,  204,  259,  206,  206,  255,  255,  213,  213,        246,  260,  260,  260,  260,  135,  135,  145,  145,  140,
       216,  216,  222,  222,  259,  224,  224,  259,  227,  227,        140,  260,  205,  205,  260,  207,  207,  256,  256,  214,
       259,  230,  230,  237,  237,  249,  249,  246,  246,  259,        214,  217,  217,  223,  223,  260,  225,  225,  260,  228,
       259,  147,  147,  151,  151,  259,  207,  207,  225,  225,        228,  260,  231,  231,  238,  238,  250,  250,  247,  247,
       228,  228,  231,  231,  259,  251,  251,  256,  256,  252,        260,  260,  147,  147,  151,  151,  260,  208,  208,  226,
       252,    0        226,  229,  229,  232,  232,  260,  252,  252,  257,  257,
   
         253,  253,    0
     } ;      } ;
   
 static yyconst int yy_ec[256] =  static yyconst int yy_ec[256] =
Line 583
 
Line 585
         1,    1,    1,    1          1,    1,    1,    1
     } ;      } ;
   
 static yyconst short int yy_base[2552] =  static yyconst short int yy_base[2564] =
     {   0,      {   0,
         0,    7,   39,   40,   41,   42, 2577,    0, 2578, 2573,          0,    7,   39,   40,   41,   42, 2588,    0, 2589, 2584,
         0,   43,   37,   50,   43,   46,   61,   62,   68,   68,          0,   43,   37,   50,   43,   56,   61,   38,   65,   71,
      2553,   84,   77,   85,   81,   93,  105,  124,  107, 2552,       2564,   82,   81,   87,   75,   92,   93,  112,  104, 2563,
        96,  119,   81, 2571,    0,   59, 2550, 2578,   94,    0,         46,  103,  103, 2582,    0,   75, 2561, 2589,  122,    0,
      2568, 2578,  110,    0, 2568, 2552, 2551, 2543,  106, 2538,       2579, 2589,  126,    0, 2579, 2563, 2562, 2554,  122, 2549,
      2537, 2551, 2540,  116, 2553, 2539, 2534, 2538, 2526, 2531,       2548, 2562, 2551,  112, 2564, 2550, 2545, 2549, 2537, 2542,
      2539, 2543, 2541, 2529, 2541, 2518, 2527, 2532, 2526, 2524,       2550, 2553, 2553, 2551, 2539, 2551, 2528, 2537, 2542, 2536,
      2537, 2518, 2516, 2541, 2529, 2520,   93, 2532, 2516, 2511,       2534, 2547, 2528, 2526, 2551, 2539, 2530,  114, 2542, 2526,
      2507, 2522, 2524,  126,  125, 2519, 2512,   93, 2524, 2508,       2521, 2517, 2532, 2534,  130,  124, 2529, 2522,  106, 2534,
      2512,   42, 2513,  122, 2517, 2496, 2503,  135,  112, 2503,       2518, 2522,  135, 2523,   34, 2527, 2506, 2513,  141,   80,
   
      2515, 2510,  147,  159,  150, 2512, 2512, 2492, 2506, 2494,       2513, 2525, 2520,  138,  151,  147, 2522, 2522, 2502, 2516,
       156, 2497, 2496,  142, 2513,  157,  144, 2512, 2504, 2510,       2504,  157, 2507, 2506,  145, 2523,  150,  148, 2522, 2514,
         0,  179,    0, 2499,  180, 2578, 2508, 2479, 2487, 2487,       2520,    0,  174,    0, 2509,  175, 2589, 2518, 2489, 2497,
      2490, 2482, 2495, 2480, 2480, 2490, 2492, 2473, 2470,  165,       2497, 2500, 2492, 2505, 2490, 2490, 2500, 2502, 2483, 2480,
       175,  164,  173, 2495, 2483, 2467,  190, 2472,  181, 2480,        168,  181,  158,  176, 2505, 2493, 2477, 2474,  184, 2481,
       188, 2480, 2478, 2477, 2458, 2477, 2479, 2476, 2483, 2462,        186, 2489,  183, 2489, 2487, 2486, 2467, 2486, 2488, 2485,
      2454, 2480,  191,  200, 2450, 2452, 2466, 2465, 2458, 2459,       2492, 2471, 2463, 2489,  184,  201, 2459, 2461, 2475, 2474,
      2462, 2461,  191, 2446, 2459, 2458,  198, 2457, 2457, 2440,       2467, 2468, 2471, 2470,  178, 2455, 2468, 2467,  216, 2466,
       223, 2453, 2453, 2457, 2431, 2450, 2435, 2445, 2441, 2457,       2466, 2449,  224, 2462, 2462, 2466, 2440, 2459, 2444, 2454,
      2430, 2444, 2444, 2435, 2437, 2445, 2426, 2443, 2417, 2436,       2450, 2466, 2439, 2453, 2453, 2444, 2446, 2454, 2435, 2452,
   
      2417, 2445, 2433, 2428,  191, 2435, 2441, 2434, 2415, 2420,       2426, 2445, 2426, 2454, 2442, 2437,  180, 2444, 2450, 2443,
      2430, 2425, 2422, 2423, 2410, 2425, 2404, 2410, 2412, 2422,       2424, 2429, 2439, 2434, 2431, 2432, 2419, 2434, 2413, 2419,
      2427, 2404, 2412, 2406, 2423, 2422,    0, 2421, 2389,    0,       2421, 2431, 2436, 2413, 2421, 2415, 2432, 2431,    0, 2430,
      2419, 2399,    0, 2417, 2405,  212,  205, 2415, 2387, 2404,       2398,    0, 2428, 2408,    0, 2426, 2414,  212,  206, 2424,
      2406, 2405, 2393,  242, 2378, 2393, 2407, 2393, 2405, 2377,       2396, 2413, 2415, 2414, 2402,  243, 2387, 2402, 2416, 2402,
      2392, 2395, 2390, 2389, 2399, 2387, 2397, 2387, 2388,  221,       2414, 2386, 2401, 2404, 2399, 2398, 2408, 2396, 2406, 2396,
      2578, 2368, 2393, 2365, 2391, 2369, 2369, 2388, 2367, 2362,       2397, 2396,  222, 2589, 2376, 2401, 2373, 2399, 2377, 2377,
      2379, 2373, 2359, 2375,    0, 2381, 2354, 2359, 2378, 2359,       2396, 2375, 2370, 2387, 2381, 2367, 2383,    0, 2389, 2362,
      2356, 2350, 2354, 2355, 2365, 2344, 2352, 2354,  210, 2343,       2367, 2386, 2367, 2364, 2358, 2362, 2363, 2373, 2352, 2360,
      2346, 2346, 2359, 2346, 2338, 2362, 2352, 2354, 2335, 2334,       2362,  198, 2351, 2354, 2354, 2367, 2354, 2346, 2370, 2360,
   
      2335, 2334, 2329,  231, 2348,  238, 2578, 2353, 2346, 2327,       2362, 2343, 2342, 2343, 2342, 2337,  232, 2356,  238, 2589,
      2324,  189, 2334, 2341,  239,  208, 2347, 2337, 2331, 2338,       2361, 2354, 2335, 2332,  190, 2342, 2349,  233,  203, 2355,
      2319, 2336, 2335, 2334, 2339, 2327, 2337, 2315, 2324, 2309,       2345, 2339, 2346, 2327, 2344, 2343, 2342, 2347, 2335, 2345,
      2326, 2321,  177, 2316, 2308, 2323,    0, 2328, 2317, 2300,       2323, 2332, 2317, 2334, 2329,  187, 2324, 2316, 2331,    0,
      2315, 2298, 2312, 2304, 2321, 2294, 2313, 2307, 2292, 2316,       2336, 2325, 2308, 2323, 2306, 2320, 2312, 2329, 2302, 2321,
      2302, 2307, 2286, 2297, 2300, 2299, 2303, 2279,    0, 2307,       2315, 2300, 2324, 2310, 2315, 2294, 2305, 2308, 2307, 2311,
      2285, 2291, 2298, 2303, 2302, 2276, 2275, 2299, 2273, 2271,       2287,    0, 2315, 2293, 2299, 2306, 2311, 2310, 2284, 2283,
      2285, 2289, 2294, 2269, 2275, 2284, 2283, 2264, 2266,  216,       2307, 2281, 2279, 2293, 2297, 2302, 2277, 2283, 2292, 2291,
      2280, 2267, 2265, 2277, 2262, 2271, 2256, 2265, 2259,    0,       2272, 2274,  217, 2288, 2275, 2273, 2285, 2270, 2279, 2264,
      2278, 2262,    0, 2276, 2250, 2265, 2258, 2252, 2261,    0,       2273, 2267,    0, 2286, 2270,    0, 2284, 2258, 2273, 2266,
   
      2270, 2259,    0, 2268, 2241, 2258, 2259,    0, 2264, 2245,       2260, 2269,    0, 2278, 2267,    0, 2276, 2249, 2266, 2247,
      2262,  235, 2248, 2260, 2249, 2251, 2233, 2256, 2244, 2245,       2266,    0, 2271, 2252, 2269,  235, 2255, 2267, 2256, 2258,
      2238, 2241,    0, 2251, 2229, 2223, 2233, 2232, 2231, 2218,       2240, 2263, 2251, 2252, 2245, 2248,    0, 2258, 2236, 2230,
      2219, 2222, 2224, 2217, 2216, 2228, 2217, 2231,  247, 2236,       2240, 2239, 2238, 2225, 2226, 2229, 2231, 2224, 2223, 2235,
      2228, 2234, 2233, 2217, 2216, 2223, 2229, 2228, 2216,  240,       2224, 2238,  248, 2243, 2235, 2241, 2240, 2224, 2223, 2230,
      2578, 2201, 2225,  255, 2217, 2197, 2203, 2200, 2190, 2206,       2236, 2235, 2223,  241, 2589, 2208, 2232,  249, 2224, 2204,
      2193, 2208, 2205, 2200,  254, 2214, 2187, 2197, 2204, 2204,       2210, 2207, 2197, 2213, 2200, 2215, 2212, 2207,  252, 2221,
      2183,  261, 2181,    0, 2207, 2197, 2205, 2185, 2194, 2176,       2194, 2204, 2211, 2211, 2190,  259, 2188,    0, 2214, 2204,
      2172, 2190, 2179, 2178, 2177, 2196, 2176,  244, 2168, 2187,       2212, 2192, 2201, 2183, 2179, 2197, 2186, 2185, 2184, 2203,
      2181, 2191, 2164,    0, 2189, 2157, 2177, 2186, 2158, 2184,       2183,  245, 2175, 2194, 2188, 2198, 2171,    0, 2196, 2164,
   
      2159, 2172, 2170, 2170, 2179, 2154, 2156, 2161, 2155, 2148,       2184, 2193, 2165, 2191, 2166, 2179, 2177, 2177, 2186, 2161,
      2166,    0, 2172,    0, 2171, 2170, 2156, 2168, 2145, 2151,       2163, 2168, 2162, 2155, 2173,    0, 2179,    0, 2178, 2177,
      2155, 2143,    0, 2163, 2162,  247, 2139, 2138, 2131, 2136,       2163, 2175, 2152, 2158, 2162, 2150,    0, 2170, 2169,  248,
      2132, 2130, 2136, 2132, 2132,  250, 2134, 2140, 2139, 2129,       2146, 2145, 2138, 2143, 2139, 2137, 2143, 2139, 2139,  247,
      2135, 2127, 2135, 2119, 2124, 2117, 2142, 2141, 2125, 2121,       2141, 2147, 2146, 2136, 2142, 2134, 2142, 2126, 2131, 2124,
       279, 2138,    0, 2137, 2124, 2135, 2134,    0, 2133, 2114,       2149, 2148, 2132, 2128, 2130,  277, 2144,    0, 2143, 2130,
      2105, 2123, 2129, 2121, 2110, 2114, 2125, 2115, 2102, 2114,       2141, 2140,    0, 2139, 2120, 2111, 2129, 2135, 2127, 2116,
      2102, 2100, 2101, 2092, 2096, 2098, 2094, 2094, 2103, 2102,       2120, 2131, 2121, 2108, 2120, 2108, 2106, 2107, 2098, 2102,
       271, 2104, 2086, 2098, 2086, 2107, 2078,    0, 2105, 2104,       2104, 2100, 2100, 2109, 2108,  269, 2110, 2092, 2104, 2092,
      2083, 2095, 2092, 2100, 2099, 2074, 2071,    0, 2096, 2075,       2113, 2084,    0, 2111, 2110, 2089, 2101, 2098, 2106, 2105,
   
      2083, 2075, 2085, 2084, 2068, 2083, 2073, 2062, 2069, 2059,       2080, 2077,    0, 2102, 2081, 2089, 2081, 2091, 2090, 2074,
      2066, 2076, 2071,    0, 2081, 2080, 2053, 2052, 2070,   35,       2089, 2079, 2068, 2075, 2065, 2072, 2082, 2077,    0,    4,
        46,  116,  118,  164,  202,    0,  256,  276,  250,  271,        124,  129,  161,  219,  221,  249,  266,  268,  258,  255,
       272,  281,  252,  256,  279,  293,  273,  295,  278,  283,          0,  282,  283,  264,  285,  285,  293,  263,  268,  284,
       274,  277,  302,  292,  285,  287,  309,  286,    0,  311,        300,  283,  305,  288,  292,  283,  286,  310,  297,  290,
       301,  313,  314,  315,  316,  310,  306,  287,  294,  321,        292,  314,  291,    0,  316,  306,  318,  319,  320,  321,
       300,  323,  324,    0,  327,  317,  308,  330,  311,  332,        315,  311,  292,  299,  326,  305,  328,  329,    0,  332,
       314,  303,  313,  314,  322,  320,  313,  340,  335,  335,        322,  313,  335,  316,  337,  319,  308,  318,  319,  327,
       334,  320,  320,  328,  341,  342,  336,  344,  338,  342,        325,  318,  345,  340,  340,  339,  325,  325,  333,  346,
       342,  343,  349,  356,  357,  337,  348,  338,  340,  344,        347,  341,  349,  343,  347,  347,  348,  354,  361,  362,
   
       352,  344,  351,  356,  363,  358,  371,  374,  375,  378,        342,  353,  344,  344,  346,  350,  358,  350,  357,  362,
       348,  359,  371,    0,  383,  374,  385,  371,  387,  371,        369,  364,  377,  380,  381,  384,  354,  365,  377,    0,
       365,  372,  384,  382,  383,  394,  371,  365,  368,  391,        389,  380,  391,  377,  393,  377,  371,  378,  390,  388,
       393,  389,  374,  395,  377,  397,  398,  406,    0,  407,        389,  400,  377,  371,  374,  397,  399,  395,  380,  401,
       397,    0,  409,  382,  393,  401,    0,  413,    0,  414,        383,  403,  404,  412,    0,  413,  403,    0,  415,  388,
       415,  409,  417,  418,  419,  411,  408,  422,  401,  415,        399,  407,    0,  419,    0,  420,  421,  415,  423,  424,
       425,  426,  416,  410,  411,  410,  431,  432,  407,  410,        425,  417,  414,  428,  407,  421,  431,  432,  422,  416,
       411,  410,  417,  416,  439,  429,  422,  416,  437,  446,        417,  416,  437,  438,  413,  416,  417,  416,  423,  422,
       413,  445,  417,  432,  448,    0,  449,  422,    0,  451,        445,  435,  428,  422,  443,  452,  419,  451,  423,  438,
       451,  443,  438,  439,    0,  467,  469,  459,  444,    0,        454,    0,  455,  428,    0,  457,  457,  449,  444,  445,
   
       474,  465,  452,  478,  479,  480,    0,  481,  474,  471,          0,  473,  475,  465,  450,    0,  480,  471,  458,  484,
       484,  485,  455,  487,  466,    0,  489,  490, 2578,  481,        485,  486,    0,  487,  480,  477,  490,  491,  461,  493,
       473,  494,  486,    0,  496,  476,  476,  481,  482,  490,        472,    0,  495,  496, 2589,  487,  479,  500,  492,    0,
       471,  497,  504,  498,  488,  490,  477,  503,  510,  496,        502,  482,  482,  487,  488,  496,  477,  503,  510,  504,
       505,  514,  490,  516,  517,  508,  496,  492,    0,  522,        494,  496,  483,  509,  516,  502,  511,  520,  496,  522,
         0,  523,  504,  525,  504,  501,  504,  510,  525,  526,        523,  514,  502,  498,    0,  528,    0,  529,  510,  531,
       514,  523,  528,  519,  508,  519,  523,  518,  524,  529,        512,  511,  508,  513,  517,  532,  534,  521,  530,  535,
         0,  545,  546,    0,  547,    0,  548,  549,  526,  536,        526,  515,  526,  530,  525,  531,  536,    0,  552,  553,
       521,  553,  543,    0,  555,  545,  526,  547,  533,  560,          0,  554,    0,  555,  556,  533,  543,  528,  560,  550,
       537,  562,  563,  564,  545,  558,  540,  558,  545,  557,          0,  562,  552,  533,  554,  540,  567,  544,  569,  570,
   
       571,  563,  555,  574,  575,  561,  577,  578,  579,  554,        571,  552,  565,  547,  565,  552,  564,  578,  570,  562,
       581,  582,  583,  567,  574,  586,  569,  588,  589,  590,        581,  582,  568,  584,  585,  586,  561,  588,  589,  590,
       561,  586,  593,  581,    0,  595,  596,  590,  589,  572,        574,  581,  593,  576,  595,  596,  597,  568,  593,  600,
       573,  586,  591,  603,  594,  584,  595,  588,  588,  600,        588,    0,  602,  603,  597,  596,  579,  580,  593,  598,
       592,  604,  603,  594,  604,  602,  596,  600,  614,  615,        610,  601,  591,  602,  595,  595,  607,  599,  611,  610,
       606,  599,  617,  630,    0,  631,  618,  608,  634,  624,        601,  611,  609,  603,  607,  621,  622,  613,  606,  624,
       625,  625,  624,  625,  641,  642,  623,  644,  620,    0,        637,    0,  638,  625,  615,  641,  631,  632,  632,  631,
       647,    0,  648,    0,  649,  632,  651,  652,  653,  632,        632,  648,  649,  630,  651,  627,    0,  654,    0,  655,
         0,  655,  638,  647,  658,    0,  659,  649,  633,  651,          0,  656,  639,  658,  659,  660,  639,    0,  662,  645,
       632,  649,  636,  666,  642,    0,  668,  645,  659,  663,        654,  665,    0,  666,  656,  640,  658,  639,  656,  643,
   
       672,  647,  674,  655,  652,  656,  657,  664,  671,  675,        673,  649,    0,  675,  652,  666,  670,  679,  654,  681,
       681,  661,  684,  687,  689,  690,  680,  692,  693,  676,        662,  659,  663,  664,  671,  678,  682,  688,  668,  691,
       688,  676,  672,  673,  673,  678,  686,  685,  682,  704,        694,  696,  697,  687,  699,  700,  701,  684,  696,  684,
       678,  688,  687,  698,  698,    0,  712,  713,  714,  688,        680,  681,  681,  686,  694,  693,  690,  712,  686,  696,
       710,    0,  717,  708,  709,  719,  721,  711,  723,  703,        695,  706,  706,    0,  720,  721,  722,  696,  718,    0,
         0,  725,  726,  727,  728,  711,  708,  731,  707,  718,        725,  716,  717,  727,  729,  719,  731,  711,    0,  733,
       734,  724,  736,    0,  737,  738,  714,  740,  741,    0,        734,  735,  736,  719,  716,  739,  715,  726,  742,  732,
       742,  732,    0,  744,    0,  745,    0,  746,  747,  748,        744,    0,  745,  746,  722,  748,  749,    0,  750,  740,
         0,  749,  743,  751,    0,  752,    0,  753,  728,  740,          0,  752,    0,  753,    0,  754,  755,  756,    0,  757,
       756,  731,    0,  758,  750,  746,  761,  742,  752,  746,        751,  759,    0,  760,    0,  761,  736,  748,  764,  739,
   
         0,  765,  766,  739,  749,  754,  748,  758,  757,  758,          0,  766,  758,  754,  769,  750,  760,  754,    0,  773,
       754,  768,  758,  770,  772,  769,  774,  758,  762,  774,        774,  747,  757,  762,  756,  766,  765,  766,  762,  776,
       768,  761,  775,  765,  759,  776,  772,  770,  788,  796,        766,  778,  780,  777,  782,  766,  770,  782,  776,  769,
       786,  783,    0,  799,  800,  775,  802,  785,  782,    0,        783,  773,  767,  784,  780,  778,  796,  804,  794,  791,
       805,  806,  807,  808,  809,  795,  800,  812,    0,  813,          0,  807,  808,  783,  810,  793,  790,    0,  813,  814,
         0,  814,  804,  785,  817,  818,  819,  809,  821,  822,        815,  816,  817,  803,  808,  820,    0,  821,    0,  822,
       812,  824,  825,  804,  808,  828,  822,  830,  817,    0,        812,  793,  825,  826,  827,  817,  829,  830,  820,  832,
       832,  827,  815,  806,  812,  817,  828,  815,  825,  821,        833,  812,  816,  836,  830,  838,  825,    0,  840,  835,
       835,    0,  843,  833,    0,  845,    0,  846,  847,  848,        823,  814,  820,  825,  836,  823,  833,  829,  843,    0,
       842,  850,    0,  851,  821,  844,  854,  844,  842,  843,        851,  841,    0,  853,    0,  854,  855,  856,  850,  858,
   
       858,  839,  834,  835,  835,  865,  845,  842,  869,  841,          0,  859,  860,  830,  853,  863,  853,  851,  852,  867,
       871,  859,    0,  873,  874,  851,  872,  878,  879,  880,        848,  843,  844,  844,  874,  854,  851,  878,  850,  880,
      2578,  882,  873,    0,  884,  865,    0,  887,    0,  888,        868,    0,  882,  883,  860,  881,  887,  888,  889, 2589,
       889,  879,  891,  892,  882,  885,    0,  898,  899,  900,        891,  882,    0,  893,  874,    0,  896,    0,  897,  898,
         0,  902,  888,    0,  904,    0,  905,  906,  907,  908,        888,  900,  901,  891,  894,    0,  907,  908,  909,    0,
       878,    0,  910,  911,  902,    0,  913,  900,  898,  916,        911,  897,    0,  913,    0,  914,  915,  916,  917,  887,
       917,  907,  909,  902,  921,  911,  898,  899,  914,  926,          0,  919,  920,  911,    0,  922,  909,  907,  925,  926,
       917,  908,  920,  909,  921,  920,  913,  908,  917,  921,        916,  918,  911,  930,  920,  907,  908,  923,  935,  926,
       928,  914,  928,  915,  919,  911,  932,  929,  938,  921,        917,  929,  918,  930,  929,  922,  917,  926,  930,  937,
       922,  919,  929,  928,    0,  951,  928,  945,  954,  955,        923,  937,  924,  928,  920,  941,  938,  947,  930,  931,
   
       956,  939,  958,    0,  959,  960,  961,    0,  962,  935,        928,  938,  937,    0,  960,  937,  954,  963,  964,  965,
       964,    0,  965,  966,  967,  968,    0,  969,  970,  952,        948,  967,    0,  968,  969,  970,    0,  971,  944,  973,
       972,  973,  964,  975,    0,  976,  966,  957,  979,  971,          0,  974,  975,  976,  977,    0,  978,  979,  961,  981,
         0,  981,  958,  973,  963,  985,  966,  974,  988,  968,        982,  973,  984,    0,  985,  975,  966,  988,  980,    0,
       972,  981,  970,  982,    0,  994,    0,  995,  974,    0,        990,  967,  982,  972,  994,  975,  983,  997,  977,  981,
       997,  998,  982, 1000,  980, 1003, 1005, 1006, 1007,  992,        990,  979,  991,    0, 1003,    0, 1004,  983,    0, 1006,
      1010,  982,  993, 1006,    0, 1018,  997, 1002, 1021, 1022,          0, 1007, 1008,  992, 1010,  990, 1013, 1015, 1016, 1017,
      1002, 1025, 1026, 1007, 1030, 1021,    0, 1033, 1034, 1014,       1002, 1020,  992, 1003, 1016,    0, 1028, 1007, 1012, 1031,
      1016, 1017, 1022, 1033, 1041, 1042,    0, 1043, 1045, 1046,       1032, 1012, 1035, 1036, 1017, 1040, 1031,    0, 1043, 1044,
         0, 1047, 1048, 1049,    0, 1050, 1041, 1045, 1053,    0,       1024, 1026, 1027, 1032, 1043, 1051, 1052,    0, 1053, 1055,
   
      1054, 1047, 1056,    0, 1057,    0, 1058, 1048, 1060, 1050,       1056,    0, 1057, 1058, 1059,    0, 1060, 1051, 1055, 1063,
      1062, 1063, 1064,    0, 1065, 1056, 1067, 1057,    0, 1069,          0, 1064, 1057, 1066,    0, 1067,    0, 1068, 1058, 1070,
      1070, 1071, 1047, 1055, 1074, 1075, 1066, 1066, 1053, 1079,       1060, 1072, 1073, 1074,    0, 1075, 1066, 1077, 1067,    0,
      1053, 1055, 1068, 1072, 1064, 1059, 1086, 1087, 1062, 1069,       1079, 1080, 1081, 1057, 1065, 1084, 1085, 1076, 1076, 1063,
      1062, 1068, 1084, 1076, 1080, 1075, 1097, 1092, 1078, 1089,       1089, 1063, 1065, 1078, 1082, 1074, 1069, 1096, 1097, 1072,
      1083,    0, 1102, 1103,    0, 1104, 1105, 1106,    0, 1107,       1079, 1072, 1078, 1094, 1086, 1090, 1085, 1107, 1102, 1088,
         0, 1108, 1098, 1110, 1111, 1112,    0, 1113,    0, 1114,       1099, 1093,    0, 1112, 1113,    0, 1114, 1115, 1116,    0,
      1104,    0, 1116,    0, 1117, 1118,    0, 1119, 1102, 1094,       1117,    0, 1118, 1108, 1120, 1121, 1122,    0, 1123,    0,
         0, 1122, 1106, 1097, 1118, 1099, 1127, 1128, 1129, 1130,       1124, 1114,    0, 1126,    0, 1127, 1128,    0, 1129, 1112,
      1113, 1114, 1133, 1113, 1125, 1115, 1137, 1117, 1140,    0,       1104,    0, 1132, 1116, 1107, 1128, 1109, 1137, 1138, 1139,
   
      1141, 1120, 1125, 1144, 1126, 1145, 1128, 1151, 1131,    0,       1140, 1123, 1124, 1143, 1123, 1135, 1125, 1147, 1127, 1150,
      1154, 1133, 1138, 1157, 1137, 1160, 1161, 1162, 1137, 1137,          0, 1151, 1130, 1135, 1154, 1136, 1155, 1138, 1161, 1141,
      1165, 1148,    0, 1171, 1150, 1155, 1174, 1154,    0, 1177,          0, 1164, 1143, 1148, 1167, 1147, 1170, 1171, 1172, 1147,
      1156, 1161, 1180, 1160, 1159, 1184, 1156, 1162, 1177, 1173,       1147, 1175, 1158,    0, 1181, 1160, 1165, 1184, 1164,    0,
      1169, 1183,    0, 1191,    0, 1192, 1193, 1194, 1195,    0,       1187, 1166, 1171, 1190, 1170, 1169, 1194, 1166, 1172, 1187,
      1196, 1197, 1180,    0, 1199, 1182,    0, 1201, 1178,    0,       1183, 1179, 1193,    0, 1201,    0, 1202, 1203, 1204, 1205,
      1203, 1184, 1205, 1206,    0, 1207, 1208, 1209, 1200, 1211,          0, 1206, 1207, 1190,    0, 1209, 1192,    0, 1211, 1188,
      1201, 1213, 1199, 1197,    0, 1216, 1217, 1218, 1201, 1220,          0, 1213, 1194, 1215, 1216,    0, 1217, 1218, 1219, 1210,
      1221, 1197, 1212, 1224, 1199, 1226, 1203, 1228, 1229, 1216,       1221, 1211, 1223, 1209, 1207,    0, 1226, 1227, 1228, 1211,
      1202, 1211, 1213, 1234, 1204, 1227, 1217, 1238, 1212, 1220,       1230, 1231, 1207, 1222, 1234, 1209, 1236, 1213, 1238, 1239,
   
      1241, 1231,    0, 1243, 1244,    0, 1245, 1246,    0, 1247,       1226, 1212, 1221, 1223, 1244, 1214, 1237, 1227, 1248, 1222,
         0, 1248,    0, 1249, 1230, 1251, 1234, 1229, 1254, 1255,       1230, 1251, 1241,    0, 1253, 1254,    0, 1255, 1256,    0,
      1232, 1233,    0, 1258, 1259, 1260,    0, 1261, 1244, 1263,       1257,    0, 1258,    0, 1259, 1240, 1261, 1244, 1239, 1264,
      1264, 1245, 1266, 1247,    0, 1268, 1247, 1252, 1271, 1251,       1265, 1242, 1243,    0, 1268, 1269, 1270,    0, 1271, 1254,
      1248, 1248,    0, 1276, 1255, 1260,    0, 1279, 1258, 1263,       1273, 1274, 1255, 1276, 1257,    0, 1278, 1257, 1262, 1281,
         0, 1282, 1261, 1266, 1259, 1259,    0, 1287, 1266, 1271,       1261, 1258, 1258,    0, 1286, 1265, 1270,    0, 1289, 1268,
      1290, 1270, 1293, 1273, 1296, 1276, 1284, 1287,    0, 1301,       1273,    0, 1292, 1271, 1276, 1269, 1269,    0, 1297, 1276,
      1280, 1285, 1278, 1278,    0, 1306, 1285, 1290, 1283, 1283,       1281, 1300, 1280, 1303, 1283, 1306, 1286, 1294, 1297,    0,
         0, 1311, 1290, 1295, 1314,    0, 1315, 1316, 1297, 1318,       1311, 1290, 1295, 1288, 1288,    0, 1316, 1295, 1300, 1293,
      1301, 1311, 1300,    0, 1323,    0, 1324,    0, 1325, 1326,       1293,    0, 1321, 1300, 1305, 1324,    0, 1325, 1326, 1307,
   
      1327, 1317, 1329, 1304,    0, 1331,    0, 1332, 1333,    0,       1328, 1311, 1321, 1310,    0, 1333,    0, 1334,    0, 1335,
      1334, 1335,    0, 1336, 1317,    0, 1338, 1321, 1340,    0,       1336, 1337, 1327, 1339, 1314,    0, 1341,    0, 1342, 1343,
      1341, 1342, 1325, 1344,    0, 1345, 1331, 1323, 1348, 1338,          0, 1344, 1345,    0, 1346, 1327,    0, 1348, 1331, 1350,
      1350, 1336,    0, 1352,    0, 1353, 1339, 1344, 1332, 1350,          0, 1351, 1352, 1335, 1354,    0, 1355, 1341, 1333, 1358,
      1358, 1327, 1353, 1361,    0, 1362, 1343, 1345, 1365, 1366,       1348, 1360, 1346,    0, 1362,    0, 1363, 1349, 1354, 1342,
         0, 1367, 1368, 1343,    0, 1370, 1371, 1372, 1373, 1374,       1360, 1368, 1337, 1363, 1371,    0, 1372, 1353, 1355, 1375,
      1358, 1376,    0, 1377,    0, 1378, 1379, 1380,    0, 1381,       1376,    0, 1377, 1378, 1353,    0, 1380, 1381, 1382, 1383,
      1382, 1383, 1378, 1359, 1359,    0, 1387, 1366, 1371, 1375,       1384, 1368, 1386,    0, 1387,    0, 1388, 1389, 1390,    0,
      1378, 1366, 1366, 1368, 1368, 1370, 1370, 1383, 1386, 1374,       1391, 1392, 1393, 1388, 1369, 1369,    0, 1397, 1376, 1381,
      1374,    0, 1402, 1381, 1386,    0, 1405, 1384, 1389,    0,       1385, 1388, 1376, 1376, 1378, 1378, 1380, 1380, 1393, 1396,
   
      1408, 1387, 1392, 1390, 1397, 1387, 1387, 1400, 1403, 1391,       1384, 1384,    0, 1412, 1391, 1396,    0, 1415, 1394, 1399,
      1391, 1404, 1407, 1395, 1395, 1423, 1403, 1426, 1427, 1428,          0, 1418, 1397, 1402, 1400, 1407, 1397, 1397, 1410, 1413,
      1411, 1430, 1410,    0, 1432, 1433, 1434, 1435, 1436,    0,       1401, 1401, 1414, 1417, 1405, 1405, 1433, 1413, 1436, 1437,
      1437, 1438, 1413, 1429, 1441,    0, 1442, 1436,    0, 1444,       1438, 1421, 1440, 1420,    0, 1442, 1443, 1444, 1445, 1446,
      1424, 1421,    0, 1447, 1448,    0, 1449, 1441, 1425, 1428,          0, 1447, 1448, 1423, 1439, 1451,    0, 1452, 1446,    0,
      1443, 1436,    0, 1455, 1445, 1439, 1458, 1449, 1453,    0,       1454, 1434, 1431,    0, 1457, 1458,    0, 1459, 1451, 1435,
      1461, 1462,    0, 1463, 1464, 1465, 1466,    0, 1467,    0,       1438, 1453, 1446,    0, 1465, 1455, 1449, 1468, 1459, 1463,
      1468, 1469, 1470, 1471,    0, 1472, 1473,    0, 1474, 1450,          0, 1471, 1472,    0, 1473, 1474, 1475, 1476,    0, 1477,
      1461, 1464, 1452, 1452, 1459, 1466, 1467, 1470, 1469, 1472,          0, 1478, 1479, 1480, 1481,    0, 1482, 1483,    0, 1484,
      1471, 1474, 1467, 1474, 1475, 1478, 1466, 1466, 1468, 1468,       1460, 1471, 1474, 1462, 1462, 1469, 1476, 1477, 1480, 1479,
   
      1470, 1470, 1478, 1479, 1485, 1488, 1481, 1488, 1489, 1492,       1482, 1481, 1484, 1477, 1484, 1485, 1488, 1476, 1476, 1478,
      1485, 1492, 1493, 1496,    0, 1510, 1489, 1494,    0, 1513,       1478, 1480, 1480, 1488, 1489, 1495, 1498, 1491, 1498, 1499,
      1514,    0, 1515, 1516, 1517, 1498,    0, 1519, 1520,    0,       1502, 1495, 1502, 1503, 1506,    0, 1520, 1499, 1504,    0,
      1521, 1522,    0, 1523, 1524, 1525,    0, 1526, 1501, 1508,       1523, 1524,    0, 1525, 1526, 1527, 1508,    0, 1529, 1530,
      1507, 1530, 1516, 1532, 1533, 1534, 1535, 1536, 1537,    0,          0, 1531, 1532,    0, 1533, 1534, 1535,    0, 1536, 1511,
      1538, 1528, 1527,    0, 1541, 1542,    0, 1543,    0, 1544,       1518, 1517, 1540, 1526, 1542, 1543, 1544, 1545, 1546, 1547,
      1545,    0, 1546,    0, 1547,    0, 1548, 1540, 1529, 1536,          0, 1548, 1538, 1537,    0, 1551, 1552,    0, 1553,    0,
      1537, 1540, 1534, 1535, 1535, 1542, 1537, 1544, 1539, 1546,       1554, 1555,    0, 1556,    0, 1557,    0, 1558, 1550, 1539,
      1542, 1543, 1543, 1550, 1551, 1554, 1553, 1556, 1555, 1558,       1546, 1547, 1550, 1544, 1545, 1545, 1552, 1547, 1554, 1549,
      1547, 1573, 1553, 1560, 1556, 1557, 1557, 1564, 1560, 1561,       1556, 1552, 1553, 1553, 1560, 1561, 1564, 1563, 1566, 1565,
   
      1561, 1568, 1558, 1558,    0, 1586, 1587,    0, 1588, 1589,       1568, 1557, 1583, 1563, 1570, 1566, 1567, 1567, 1574, 1570,
         0, 1590,    0, 1591, 1592, 1593, 1579, 1595, 1585,    0,       1571, 1571, 1578, 1568, 1568,    0, 1596, 1597,    0, 1598,
      1597, 1572, 1599, 1600, 1601, 1602, 1603, 1604, 1598, 1591,       1599,    0, 1600,    0, 1601, 1602, 1603, 1589, 1605, 1595,
         0, 1607,    0, 1608, 1585, 1590, 1591, 1591, 1598, 1589,          0, 1607, 1582, 1609, 1610, 1611, 1612, 1613, 1614, 1608,
      1615, 1596, 1597, 1598, 1599, 1600, 1601, 1597, 1623, 1604,       1601,    0, 1617,    0, 1618, 1595, 1600, 1601, 1601, 1608,
      1605, 1605, 1612, 1607, 1614, 1609, 1616, 1632, 1633, 1614,       1599, 1625, 1606, 1607, 1608, 1609, 1610, 1611, 1607, 1633,
      1615, 1611, 1637, 1618, 1619, 1615, 1641, 1622, 1623, 1629,       1614, 1615, 1615, 1622, 1617, 1624, 1619, 1626, 1642, 1643,
      1632,    0, 1646, 1647,    0, 1648,    0, 1649, 1629, 1651,       1624, 1625, 1621, 1647, 1628, 1629, 1625, 1651, 1632, 1633,
      1634, 1622,    0, 1654,    0, 1655,    0, 1656,    0, 1657,       1639, 1642,    0, 1656, 1657,    0, 1658,    0, 1659, 1639,
         0, 1658,    0, 1659, 1650, 1652, 1647, 1638, 1664, 1645,       1661, 1644, 1632,    0, 1664,    0, 1665,    0, 1666,    0,
   
      1646, 1667, 1668, 1644, 1670, 1646, 1672, 1648, 1674, 1675,       1667,    0, 1668,    0, 1669, 1660, 1662, 1657, 1648, 1674,
      1676, 1652, 1678, 1659, 1660, 1661, 1662, 1663, 1664, 1685,       1655, 1656, 1677, 1678, 1654, 1680, 1656, 1682, 1658, 1684,
         0, 1686, 1662, 1688, 1689, 1690, 1666, 1692, 1693, 1694,       1685, 1686, 1662, 1688, 1669, 1670, 1671, 1672, 1673, 1674,
      1670, 1696, 1676, 1683,    0, 1699, 1680,    0, 1701, 1684,       1695,    0, 1696, 1672, 1698, 1699, 1700, 1676, 1702, 1703,
      1703, 1704, 1705, 1684, 1707, 1708, 1684, 1710, 1711,    0,       1704, 1680, 1706, 1686, 1693,    0, 1709, 1690,    0, 1711,
      1712, 1713, 1714, 1715, 1716, 1717, 1718, 1719,    0, 1720,       1694, 1713, 1714, 1715, 1694, 1717, 1718, 1694, 1720, 1721,
      1721, 1722, 1698, 1724, 1700, 1726, 1702, 1728,    0, 1729,          0, 1722, 1723, 1724, 1725, 1726, 1727, 1728, 1729,    0,
      1730, 1731, 1732,    0, 1733, 1734, 1735, 1736,    0, 1737,       1730, 1731, 1732, 1708, 1734, 1710, 1736, 1712, 1738,    0,
      1738, 1739, 1720, 1721, 1742, 1743, 1744, 1745, 1746, 1721,       1739, 1740, 1741, 1742,    0, 1743, 1744, 1745, 1746,    0,
      1748,    0, 1749, 1750, 1751,    0, 1752, 1753,    0, 1754,       1747, 1748, 1749, 1730, 1731, 1752, 1753, 1754, 1755, 1756,
   
      1755,    0, 1756, 1757,    0, 1758,    0, 1759, 1760,    0,       1731, 1758,    0, 1759, 1760, 1761,    0, 1762, 1763,    0,
      1761, 1762, 1763, 1764, 1765, 1766, 1767, 1768,    0, 1769,       1764, 1765,    0, 1766, 1767,    0, 1768,    0, 1769, 1770,
         0, 1770, 1771,    0, 1772,    0, 1773, 1774,    0, 1775,          0, 1771, 1772, 1773, 1774, 1775, 1776, 1777, 1778,    0,
      1751, 1777, 1778, 1779,    0, 1780,    0, 1781,    0, 1782,       1779,    0, 1780, 1781,    0, 1782,    0, 1783, 1784,    0,
      1783,    0, 1784, 1785,    0, 1786,    0, 1787,    0, 1788,       1785, 1761, 1787, 1788, 1789,    0, 1790,    0, 1791,    0,
         0, 1789,    0, 1790, 1791,    0, 1792, 1793,    0, 1794,       1792, 1793,    0, 1794, 1795,    0, 1796,    0, 1797,    0,
      1795,    0, 1796,    0, 1797,    0, 1798,    0, 1799, 1800,       1798,    0, 1799,    0, 1800, 1801,    0, 1802, 1803,    0,
      1801,    0, 1802,    0, 1803, 1804,    0, 1805,    0, 1806,       1804, 1805,    0, 1806,    0, 1807,    0, 1808,    0, 1809,
         0, 1807,    0, 1808, 1809,    0, 1810,    0, 1811,    0,       1810, 1811,    0, 1812,    0, 1813, 1814,    0, 1815,    0,
      1812, 2578, 1814, 1816, 1818, 1820, 1821, 1823, 1824, 1825,       1816,    0, 1817,    0, 1818, 1819,    0, 1820,    0, 1821,
   
      1826, 1827, 1828, 1829, 1830, 1831, 1832, 1833, 1834, 1835,          0, 1822, 2589, 1824, 1826, 1828, 1830, 1831, 1833, 1834,
      1836, 1837, 1838, 1839, 1840, 1841, 1842, 1843, 1844, 1845,       1835, 1836, 1837, 1838, 1839, 1840, 1841, 1842, 1843, 1844,
      1846, 1847, 1848, 1849, 1850, 1851, 1852, 1853, 1854, 1855,       1845, 1846, 1847, 1848, 1849, 1850, 1851, 1852, 1853, 1854,
      1856, 1857, 1858, 1859, 1860, 1861, 1862, 1863, 1864, 1865,       1855, 1856, 1857, 1858, 1859, 1860, 1861, 1862, 1863, 1864,
      1866, 1867, 1868, 1869, 1870, 1871, 1872, 1873, 1874, 1875,       1865, 1866, 1867, 1868, 1869, 1870, 1871, 1872, 1873, 1874,
      1876, 1877, 1878, 1879, 1880, 1881, 1882, 1883, 1884, 1885,       1875, 1876, 1877, 1878, 1879, 1880, 1881, 1882, 1883, 1884,
      1886, 1887, 1888, 1889, 1890, 1891, 1892, 1893, 1894, 1895,       1885, 1886, 1887, 1888, 1889, 1890, 1891, 1892, 1893, 1894,
      1896, 1897, 1898, 1900, 1901, 1902, 1903, 1904, 1905, 1906,       1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903, 1904,
      1907, 1908, 1909, 1910, 1911, 1912, 1913, 1914, 1915, 1916,       1905, 1906, 1907, 1908, 1910, 1911, 1912, 1913, 1914, 1915,
      1917, 1918, 1919, 1920, 1921, 1922, 1923, 1924, 1925, 1926,       1916, 1917, 1918, 1919, 1920, 1921, 1922, 1923, 1924, 1925,
   
      1927, 1928, 1929, 1930, 1931, 1932, 1933, 1934, 1935, 1936,       1926, 1927, 1928, 1929, 1930, 1931, 1932, 1933, 1934, 1935,
      1937, 1938, 1939, 1940, 1941, 1942, 1943, 1944, 1945, 1946,       1936, 1937, 1938, 1939, 1940, 1941, 1942, 1943, 1944, 1945,
      1947, 1948, 1949, 1950, 1951, 1952, 1953, 1954, 1955, 1956,       1946, 1947, 1948, 1949, 1950, 1951, 1952, 1953, 1954, 1955,
      1957, 1958, 1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966,       1956, 1957, 1958, 1959, 1960, 1961, 1962, 1963, 1964, 1965,
      1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976,       1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975,
      1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986,       1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
      1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,       1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
      1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,       1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
      2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016,       2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015,
      2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026,       2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025,
   
      2027, 2028, 2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036,       2026, 2027, 2028, 2029, 2030, 2031, 2032, 2033, 2034, 2035,
      2037, 2038, 2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046,       2036, 2037, 2038, 2039, 2040, 2041, 2042, 2043, 2044, 2045,
      2047, 2048, 2049, 2050, 2051, 2052, 2053, 2054, 2055, 2056,       2046, 2047, 2048, 2049, 2050, 2051, 2052, 2053, 2054, 2055,
      2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2066,       2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065,
      2067, 2068, 2069, 2070, 2071, 2072, 2073, 2074, 2075, 2076,       2066, 2067, 2068, 2069, 2070, 2071, 2072, 2073, 2074, 2075,
      2077       2076, 2077, 2078, 2079, 2080, 2081, 2082, 2083, 2084, 2085,
        2086, 2087, 2088
     } ;      } ;
   
 static yyconst short int yy_def[2552] =  static yyconst short int yy_def[2564] =
     {   0,      {   0,
      2293, 2292, 2294, 2294, 2295, 2295, 2292, 2296, 2292, 2297,       2304, 2303, 2305, 2305, 2306, 2306, 2303, 2307, 2303, 2308,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2298, 2298, 2298, 2292, 2292, 2296,       2307, 2307, 2307, 2307, 2309, 2309, 2309, 2303, 2303, 2307,
      2297, 2292, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2308, 2303, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
   
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2299, 2296, 2300,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2310, 2307,
      2298, 2298, 2298, 2298, 2292, 2292, 2301, 2296, 2296, 2296,       2311, 2309, 2309, 2309, 2309, 2303, 2303, 2312, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2302, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2313, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
   
      2296, 2303, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2314, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2304, 2296, 2296, 2296, 2296, 2296, 2299, 2299, 2296, 2300,       2307, 2307, 2315, 2307, 2307, 2307, 2307, 2307, 2310, 2310,
      2300, 2298, 2301, 2301, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2311, 2311, 2309, 2312, 2312, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2305, 2296, 2306, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2316, 2307,
      2296, 2296, 2296, 2296, 2307, 2296, 2308, 2296, 2296, 2296,       2317, 2307, 2307, 2307, 2307, 2307, 2318, 2307, 2319, 2307,
      2292, 2296, 2309, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2303, 2307, 2320, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2302, 2302, 2296, 2296, 2310, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2313, 2313, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2321, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
   
      2296, 2296, 2296, 2296, 2296, 2296, 2292, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2303,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2311, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2322, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2303, 2303, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2314,
      2296, 2296, 2296, 2296, 2312, 2296, 2296, 2296, 2296, 2296,       2314, 2307, 2307, 2307, 2307, 2307, 2307, 2323, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2304, 2304,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2313, 2314, 2296, 2298, 2296, 2296, 2296,       2307, 2315, 2315, 2307, 2307, 2307, 2324, 2325, 2307, 2309,
      2296, 2296, 2315, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2326, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2305,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2305, 2296, 2306, 2306, 2296, 2296, 2296, 2296, 2296, 2307,       2307, 2307, 2316, 2316, 2307, 2317, 2317, 2307, 2307, 2307,
   
      2307, 2296, 2308, 2308, 2296, 2296, 2296, 2309, 2309, 2296,       2307, 2307, 2318, 2318, 2307, 2319, 2319, 2307, 2307, 2307,
      2316, 2296, 2296, 2317, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2320, 2320, 2307, 2327, 2307, 2307, 2328, 2307, 2307,
      2296, 2296, 2310, 2310, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2321, 2321, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2318, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2329, 2307, 2307, 2307, 2307,
      2292, 2296, 2319, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2303, 2307, 2330, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2320, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2331,
      2296, 2296, 2296, 2311, 2311, 2296, 2321, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2322, 2322, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2332, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2312, 2312, 2296, 2296, 2296, 2296, 2322,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2323, 2323, 2307,
   
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2333, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2313, 2313, 2314, 2314, 2296, 2298, 2323, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2324, 2324, 2325, 2325, 2307,
      2296, 2296, 2315, 2315, 2296, 2296, 2296, 2296, 2296, 2296,       2309, 2334, 2307, 2307, 2307, 2307, 2326, 2326, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2316, 2316, 2296, 2296, 2296, 2317, 2317, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2327, 2327, 2307,
      2296, 2296, 2324, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2328, 2328, 2307, 2307, 2307, 2335, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2325, 2296, 2318, 2318, 2326,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2327, 2328, 2296, 2296, 2319, 2319, 2296,       2336, 2307, 2329, 2329, 2337, 2307, 2307, 2307, 2338, 2339,
   
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2330, 2330, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2320, 2320, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2331, 2331,
      2296, 2296, 2296, 2296, 2296, 2321, 2321, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2329, 2296, 2330, 2296, 2296,       2332, 2332, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2331, 2296, 2296, 2296, 2332, 2296, 2322, 2322,       2340, 2307, 2341, 2307, 2307, 2307, 2307, 2342, 2307, 2307,
      2296, 2296, 2296, 2296, 2333, 2296, 2296, 2296, 2296, 2296,       2307, 2343, 2307, 2333, 2333, 2307, 2307, 2307, 2307, 2344,
      2296, 2334, 2298, 2323, 2323, 2296, 2296, 2296, 2296, 2335,       2307, 2307, 2307, 2307, 2307, 2307, 2345, 2309, 2334, 2334,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2346, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2336, 2337, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2347, 2348,
   
      2296, 2296, 2296, 2296, 2296, 2296, 2338, 2296, 2339, 2340,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2324, 2324, 2296, 2296, 2296, 2341, 2296,       2307, 2307, 2349, 2307, 2350, 2351, 2307, 2307, 2307, 2335,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2335, 2307, 2307, 2307, 2352, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2325, 2325,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2326, 2326, 2296, 2296, 2296, 2327, 2327, 2328, 2328,       2307, 2307, 2307, 2307, 2336, 2336, 2307, 2337, 2337, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2338, 2338, 2339, 2339, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2342, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2353, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2343, 2296, 2296, 2296, 2329, 2329, 2296, 2330, 2330,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2354, 2307, 2307,
      2296, 2296, 2296, 2296, 2331, 2331, 2296, 2296, 2296, 2332,       2307, 2340, 2340, 2307, 2341, 2341, 2307, 2307, 2307, 2307,
   
      2332, 2296, 2296, 2344, 2345, 2346, 2333, 2333, 2296, 2296,       2342, 2342, 2307, 2307, 2307, 2343, 2343, 2307, 2307, 2355,
      2296, 2296, 2296, 2347, 2296, 2334, 2334, 2298, 2292, 2296,       2356, 2357, 2344, 2344, 2307, 2307, 2307, 2307, 2307, 2358,
      2296, 2348, 2296, 2335, 2335, 2296, 2296, 2296, 2296, 2296,       2307, 2345, 2345, 2309, 2303, 2307, 2307, 2359, 2307, 2346,
      2296, 2296, 2349, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2346, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2360, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2336, 2336,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2337, 2337, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2347, 2347, 2348, 2348, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2338, 2338, 2350, 2339, 2339, 2340, 2340, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2349, 2349, 2361,
      2296, 2351, 2296, 2341, 2341, 2296, 2296, 2296, 2296, 2296,       2350, 2350, 2351, 2351, 2307, 2307, 2307, 2307, 2362, 2307,
      2296, 2352, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2352, 2352, 2307, 2307, 2307, 2307, 2307, 2307, 2363, 2307,
   
      2296, 2296, 2296, 2353, 2296, 2296, 2296, 2296, 2354, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2355, 2356, 2357, 2296, 2296, 2358, 2296, 2296, 2359, 2360,       2364, 2307, 2307, 2307, 2307, 2365, 2307, 2366, 2367, 2368,
      2296, 2296, 2296, 2296, 2342, 2342, 2361, 2296, 2296, 2296,       2307, 2307, 2369, 2307, 2307, 2370, 2371, 2307, 2307, 2307,
      2296, 2296, 2296, 2362, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2353, 2353, 2372, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2373, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2343, 2343, 2296, 2296, 2363, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2364, 2296, 2296, 2296, 2296, 2344,       2307, 2354, 2354, 2307, 2307, 2374, 2307, 2307, 2307, 2307,
      2344, 2345, 2345, 2346, 2346, 2296, 2296, 2365, 2366, 2296,       2307, 2375, 2307, 2307, 2307, 2307, 2355, 2355, 2356, 2356,
      2347, 2347, 2296, 2296, 2296, 2348, 2348, 2296, 2296, 2296,       2357, 2357, 2307, 2307, 2376, 2377, 2307, 2358, 2358, 2307,
      2296, 2296, 2296, 2296, 2296, 2349, 2349, 2296, 2296, 2296,       2307, 2307, 2359, 2359, 2307, 2307, 2307, 2307, 2307, 2307,
   
      2296, 2296, 2367, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2360, 2360, 2307, 2307, 2307, 2307, 2307, 2378,
      2368, 2296, 2369, 2370, 2296, 2296, 2296, 2296, 2371, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2379, 2307, 2380,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2381, 2307, 2307, 2307, 2307, 2382, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2350, 2350, 2372, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2351, 2351, 2296, 2296, 2373, 2296, 2296, 2374, 2296,       2307, 2307, 2307, 2361, 2361, 2383, 2307, 2307, 2307, 2362,
      2352, 2352, 2375, 2376, 2296, 2296, 2296, 2296, 2296, 2296,       2362, 2307, 2307, 2384, 2307, 2307, 2385, 2307, 2363, 2363,
      2377, 2296, 2296, 2353, 2353, 2378, 2296, 2379, 2380, 2354,       2386, 2387, 2307, 2307, 2307, 2307, 2307, 2307, 2388, 2307,
      2354, 2296, 2355, 2355, 2356, 2356, 2357, 2357, 2296, 2296,       2307, 2364, 2364, 2389, 2307, 2390, 2391, 2365, 2365, 2307,
      2358, 2358, 2296, 2381, 2359, 2359, 2360, 2360, 2296, 2296,       2366, 2366, 2367, 2367, 2368, 2368, 2307, 2307, 2369, 2369,
      2382, 2296, 2361, 2361, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2392, 2370, 2370, 2371, 2371, 2307, 2307, 2393, 2307,
   
      2362, 2362, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2372, 2372, 2307, 2307, 2307, 2307, 2307, 2307, 2373, 2373,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2383,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2363, 2363, 2296, 2296, 2296, 2296, 2296, 2364,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2394, 2307, 2307,
      2364, 2384, 2296, 2296, 2385, 2296, 2296, 2386, 2365, 2365,       2374, 2374, 2307, 2307, 2307, 2307, 2307, 2375, 2375, 2395,
      2366, 2366, 2296, 2296, 2296, 2387, 2296, 2296, 2296, 2296,       2307, 2307, 2396, 2307, 2307, 2397, 2376, 2376, 2377, 2377,
      2296, 2296, 2388, 2296, 2296, 2296, 2296, 2389, 2296, 2367,       2307, 2307, 2307, 2398, 2307, 2307, 2307, 2307, 2307, 2307,
      2367, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2399, 2307, 2307, 2307, 2307, 2400, 2307, 2378, 2378, 2307,
      2296, 2368, 2368, 2296, 2369, 2369, 2370, 2370, 2390, 2391,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2379,
      2296, 2392, 2371, 2371, 2296, 2296, 2296, 2296, 2296, 2296,       2379, 2307, 2380, 2380, 2381, 2381, 2401, 2402, 2307, 2403,
   
      2296, 2296, 2296, 2296, 2296, 2393, 2296, 2296, 2296, 2296,       2382, 2382, 2404, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2372, 2372, 2394, 2296, 2296, 2296, 2296, 2373,       2307, 2307, 2307, 2307, 2405, 2307, 2307, 2307, 2307, 2307,
      2292, 2395, 2296, 2374, 2374, 2296, 2375, 2375, 2376, 2376,       2307, 2383, 2383, 2406, 2307, 2307, 2307, 2307, 2384, 2303,
      2396, 2296, 2296, 2397, 2296, 2296, 2377, 2377, 2296, 2398,       2407, 2307, 2385, 2385, 2307, 2386, 2386, 2387, 2387, 2408,
      2378, 2378, 2296, 2379, 2379, 2380, 2380, 2296, 2399, 2400,       2307, 2307, 2409, 2307, 2307, 2388, 2388, 2307, 2410, 2389,
      2296, 2381, 2381, 2296, 2296, 2382, 2382, 2296, 2296, 2296,       2389, 2307, 2390, 2390, 2391, 2391, 2307, 2411, 2412, 2307,
      2401, 2296, 2296, 2296, 2402, 2296, 2296, 2296, 2296, 2296,       2392, 2392, 2307, 2307, 2393, 2393, 2307, 2307, 2307, 2413,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2414, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2383, 2383, 2296, 2296, 2403, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
   
      2404, 2296, 2296, 2384, 2384, 2405, 2406, 2385, 2385, 2296,       2307, 2307, 2307, 2394, 2394, 2307, 2307, 2415, 2307, 2416,
      2296, 2386, 2386, 2296, 2296, 2407, 2387, 2387, 2408, 2296,       2307, 2307, 2395, 2395, 2417, 2418, 2396, 2396, 2307, 2307,
      2409, 2410, 2296, 2411, 2388, 2388, 2296, 2296, 2412, 2296,       2397, 2397, 2307, 2307, 2419, 2398, 2398, 2420, 2307, 2421,
      2389, 2389, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2422, 2307, 2423, 2399, 2399, 2307, 2307, 2424, 2307, 2400,
      2296, 2296, 2296, 2296, 2390, 2390, 2391, 2391, 2296, 2392,       2400, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2392, 2296, 2296, 2413, 2296, 2296, 2296, 2296, 2414, 2296,       2307, 2307, 2307, 2401, 2401, 2402, 2402, 2307, 2403, 2403,
      2296, 2296, 2296, 2296, 2393, 2393, 2296, 2296, 2296, 2415,       2404, 2404, 2307, 2307, 2425, 2307, 2307, 2307, 2307, 2426,
      2296, 2296, 2416, 2296, 2296, 2296, 2394, 2394, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2405, 2405, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2417, 2418, 2395, 2395, 2296, 2296,       2427, 2307, 2307, 2428, 2307, 2307, 2307, 2406, 2406, 2307,
      2396, 2396, 2296, 2419, 2397, 2397, 2296, 2296, 2420, 2398,       2307, 2307, 2307, 2307, 2307, 2429, 2430, 2407, 2407, 2307,
   
      2398, 2296, 2421, 2399, 2399, 2400, 2400, 2296, 2422, 2296,       2307, 2408, 2408, 2307, 2431, 2409, 2409, 2307, 2307, 2432,
      2296, 2296, 2423, 2401, 2401, 2296, 2296, 2296, 2402, 2402,       2410, 2410, 2307, 2433, 2411, 2411, 2412, 2412, 2307, 2434,
      2296, 2296, 2296, 2296, 2424, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2435, 2413, 2413, 2307, 2307, 2307, 2414,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2414, 2307, 2307, 2307, 2307, 2436, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2403, 2403, 2425, 2404, 2404, 2296, 2426, 2405, 2405,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2406, 2406, 2296, 2427, 2428, 2429, 2407, 2407, 2408, 2408,       2307, 2307, 2415, 2415, 2437, 2416, 2416, 2307, 2438, 2417,
      2296, 2409, 2409, 2410, 2410, 2296, 2411, 2411, 2296, 2296,       2417, 2418, 2418, 2307, 2439, 2440, 2441, 2419, 2419, 2420,
      2412, 2412, 2296, 2296, 2296, 2296, 2430, 2296, 2296, 2431,       2420, 2307, 2421, 2421, 2422, 2422, 2307, 2423, 2423, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2432, 2296, 2296, 2413,       2307, 2424, 2424, 2307, 2307, 2307, 2307, 2442, 2307, 2307,
   
      2413, 2296, 2296, 2433, 2296, 2434, 2296, 2435, 2296, 2414,       2443, 2307, 2307, 2307, 2307, 2307, 2307, 2444, 2307, 2307,
      2414, 2296, 2296, 2436, 2296, 2296, 2296, 2296, 2296, 2296,       2425, 2425, 2307, 2307, 2445, 2307, 2446, 2307, 2447, 2307,
      2437, 2296, 2415, 2415, 2296, 2296, 2438, 2296, 2416, 2416,       2426, 2426, 2307, 2307, 2448, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2439, 2296, 2296, 2440, 2296, 2296, 2296, 2296,       2307, 2449, 2307, 2427, 2427, 2307, 2307, 2450, 2307, 2428,
      2296, 2296, 2417, 2417, 2418, 2418, 2441, 2442, 2443, 2419,       2428, 2307, 2307, 2451, 2307, 2307, 2452, 2307, 2307, 2307,
      2419, 2296, 2296, 2420, 2420, 2296, 2421, 2421, 2296, 2422,       2307, 2307, 2307, 2429, 2429, 2430, 2430, 2453, 2454, 2455,
      2422, 2296, 2444, 2445, 2423, 2423, 2296, 2446, 2296, 2447,       2431, 2431, 2307, 2307, 2432, 2432, 2307, 2433, 2433, 2307,
      2296, 2448, 2296, 2296, 2424, 2424, 2449, 2296, 2296, 2296,       2434, 2434, 2307, 2456, 2457, 2435, 2435, 2307, 2458, 2307,
      2450, 2296, 2296, 2296, 2296, 2296, 2296, 2451, 2452, 2296,       2459, 2307, 2460, 2307, 2307, 2436, 2436, 2461, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2453, 2296, 2296,       2307, 2462, 2307, 2307, 2307, 2307, 2307, 2307, 2463, 2464,
   
      2296, 2296, 2454, 2454, 2455, 2456, 2456, 2296, 2427, 2427,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2465, 2307,
      2428, 2428, 2429, 2429, 2296, 2457, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2466, 2466, 2467, 2468, 2468, 2307, 2439,
      2296, 2296, 2430, 2430, 2458, 2459, 2431, 2431, 2296, 2296,       2439, 2440, 2440, 2441, 2441, 2307, 2469, 2307, 2307, 2307,
      2460, 2296, 2296, 2296, 2432, 2432, 2296, 2296, 2461, 2296,       2307, 2307, 2307, 2442, 2442, 2470, 2471, 2443, 2443, 2307,
      2296, 2296, 2433, 2433, 2296, 2296, 2434, 2434, 2296, 2296,       2307, 2472, 2307, 2307, 2307, 2444, 2444, 2307, 2307, 2473,
      2435, 2435, 2296, 2296, 2296, 2296, 2436, 2436, 2296, 2296,       2307, 2307, 2307, 2445, 2445, 2307, 2307, 2446, 2446, 2307,
      2462, 2296, 2463, 2296, 2464, 2296, 2296, 2296, 2437, 2437,       2307, 2447, 2447, 2307, 2307, 2307, 2307, 2448, 2448, 2307,
      2296, 2296, 2296, 2296, 2438, 2438, 2296, 2296, 2296, 2296,       2307, 2474, 2307, 2475, 2307, 2476, 2307, 2307, 2307, 2449,
      2439, 2439, 2296, 2296, 2296, 2440, 2440, 2296, 2296, 2296,       2449, 2307, 2307, 2307, 2307, 2450, 2450, 2307, 2307, 2307,
      2296, 2296, 2296, 2441, 2441, 2442, 2442, 2443, 2443, 2465,       2307, 2451, 2451, 2307, 2307, 2307, 2452, 2452, 2307, 2307,
   
      2296, 2296, 2296, 2296, 2444, 2444, 2445, 2445, 2466, 2446,       2307, 2307, 2307, 2307, 2453, 2453, 2454, 2454, 2455, 2455,
      2446, 2296, 2447, 2447, 2296, 2448, 2448, 2296, 2296, 2449,       2477, 2307, 2307, 2307, 2307, 2456, 2456, 2457, 2457, 2478,
      2449, 2467, 2296, 2468, 2450, 2450, 2296, 2296, 2469, 2296,       2458, 2458, 2307, 2459, 2459, 2307, 2460, 2460, 2307, 2307,
      2470, 2296, 2451, 2451, 2452, 2452, 2296, 2296, 2296, 2296,       2461, 2461, 2479, 2307, 2480, 2462, 2462, 2307, 2307, 2481,
      2471, 2296, 2296, 2296, 2453, 2453, 2296, 2296, 2472, 2296,       2307, 2482, 2307, 2463, 2463, 2464, 2464, 2307, 2307, 2307,
      2455, 2455, 2473, 2296, 2457, 2457, 2296, 2296, 2474, 2475,       2307, 2483, 2307, 2307, 2307, 2465, 2465, 2307, 2307, 2484,
      2296, 2296, 2458, 2458, 2459, 2459, 2296, 2476, 2460, 2460,       2307, 2467, 2467, 2485, 2307, 2469, 2469, 2307, 2307, 2486,
      2296, 2477, 2296, 2296, 2296, 2461, 2461, 2296, 2296, 2296,       2487, 2307, 2307, 2470, 2470, 2471, 2471, 2307, 2488, 2472,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2472, 2307, 2489, 2307, 2307, 2307, 2473, 2473, 2307, 2307,
      2296, 2462, 2462, 2296, 2296, 2463, 2463, 2296, 2296, 2464,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
   
      2464, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2474, 2474, 2307, 2307, 2475, 2475, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2478, 2296, 2479, 2296, 2480,       2476, 2476, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2465, 2465, 2481, 2296, 2482, 2296, 2466,       2307, 2307, 2307, 2307, 2307, 2307, 2490, 2307, 2491, 2307,
      2466, 2483, 2296, 2296, 2484, 2467, 2467, 2296, 2468, 2468,       2492, 2307, 2307, 2307, 2477, 2477, 2493, 2307, 2494, 2307,
      2296, 2296, 2469, 2469, 2296, 2470, 2470, 2296, 2296, 2296,       2478, 2478, 2495, 2307, 2307, 2496, 2479, 2479, 2307, 2480,
      2296, 2296, 2471, 2471, 2296, 2296, 2485, 2296, 2296, 2472,       2480, 2307, 2307, 2481, 2481, 2307, 2482, 2482, 2307, 2307,
      2472, 2486, 2473, 2473, 2296, 2487, 2488, 2474, 2474, 2475,       2307, 2307, 2307, 2483, 2483, 2307, 2307, 2497, 2307, 2307,
      2475, 2296, 2489, 2490, 2476, 2476, 2491, 2477, 2477, 2296,       2484, 2484, 2498, 2485, 2485, 2307, 2499, 2500, 2486, 2486,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2487, 2487, 2307, 2501, 2502, 2488, 2488, 2503, 2489, 2489,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
   
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2478, 2478, 2296, 2296, 2479, 2479,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2492, 2480, 2480, 2296, 2493, 2296, 2481, 2481, 2494, 2482,       2307, 2307, 2307, 2307, 2307, 2490, 2490, 2307, 2307, 2491,
      2482, 2495, 2483, 2483, 2296, 2296, 2484, 2484, 2296, 2296,       2491, 2504, 2492, 2492, 2307, 2505, 2307, 2493, 2493, 2506,
      2296, 2496, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2485,       2494, 2494, 2507, 2495, 2495, 2307, 2307, 2496, 2496, 2307,
      2485, 2296, 2296, 2486, 2486, 2497, 2487, 2487, 2488, 2488,       2307, 2307, 2508, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2498, 2489, 2489, 2490, 2490, 2491, 2491, 2296, 2296, 2296,       2497, 2497, 2307, 2307, 2498, 2498, 2509, 2499, 2499, 2500,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2500, 2510, 2501, 2501, 2502, 2502, 2503, 2503, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
   
      2296, 2296, 2296, 2296, 2492, 2492, 2499, 2493, 2493, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2494, 2494, 2495, 2495, 2500, 2501, 2296, 2296, 2296, 2496,       2307, 2307, 2307, 2307, 2307, 2504, 2504, 2511, 2505, 2505,
      2496, 2296, 2502, 2503, 2504, 2505, 2506, 2507, 2296, 2296,       2307, 2506, 2506, 2507, 2507, 2512, 2513, 2307, 2307, 2307,
      2497, 2497, 2498, 2498, 2296, 2296, 2296, 2296, 2296, 2296,       2508, 2508, 2307, 2514, 2515, 2516, 2517, 2518, 2519, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2509, 2509, 2510, 2510, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2508, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2520,
      2296, 2499, 2499, 2509, 2500, 2500, 2501, 2501, 2296, 2510,       2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2502, 2502, 2503, 2503, 2504, 2504, 2505, 2505,       2307, 2307, 2511, 2511, 2521, 2512, 2512, 2513, 2513, 2307,
      2506, 2506, 2507, 2507, 2296, 2296, 2296, 2296, 2296, 2296,       2522, 2307, 2307, 2514, 2514, 2515, 2515, 2516, 2516, 2517,
   
      2296, 2296, 2511, 2296, 2296, 2296, 2296, 2296, 2296, 2296,       2517, 2518, 2518, 2519, 2519, 2307, 2307, 2307, 2307, 2307,
      2512, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2513,       2307, 2307, 2307, 2523, 2307, 2307, 2307, 2307, 2307, 2307,
      2508, 2508, 2296, 2296, 2296, 2514, 2296, 2296, 2296, 2515,       2307, 2524, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2509, 2509, 2296, 2510, 2510, 2296,       2525, 2520, 2520, 2307, 2307, 2307, 2526, 2307, 2307, 2307,
      2296, 2296, 2296, 2296, 2296, 2516, 2296, 2296, 2517, 2511,       2527, 2307, 2307, 2307, 2307, 2521, 2521, 2307, 2522, 2522,
      2511, 2296, 2518, 2296, 2519, 2296, 2520, 2521, 2512, 2512,       2307, 2307, 2307, 2307, 2307, 2307, 2528, 2307, 2307, 2529,
      2296, 2522, 2296, 2296, 2296, 2296, 2296, 2296, 2513, 2513,       2523, 2523, 2307, 2530, 2307, 2531, 2307, 2532, 2533, 2524,
      2296, 2523, 2524, 2514, 2514, 2296, 2525, 2526, 2515, 2515,       2524, 2307, 2534, 2307, 2307, 2307, 2307, 2307, 2307, 2525,
      2296, 2527, 2296, 2296, 2296, 2296, 2528, 2529, 2530, 2296,       2525, 2307, 2535, 2536, 2526, 2526, 2307, 2537, 2538, 2527,
      2531, 2516, 2516, 2296, 2532, 2517, 2517, 2533, 2518, 2518,       2527, 2307, 2539, 2307, 2307, 2307, 2307, 2540, 2541, 2542,
   
      2534, 2519, 2519, 2535, 2520, 2520, 2521, 2521, 2536, 2522,       2307, 2543, 2528, 2528, 2307, 2544, 2529, 2529, 2545, 2530,
      2522, 2296, 2537, 2296, 2538, 2296, 2539, 2540, 2523, 2523,       2530, 2546, 2531, 2531, 2547, 2532, 2532, 2533, 2533, 2548,
      2524, 2524, 2541, 2525, 2525, 2526, 2526, 2542, 2527, 2527,       2534, 2534, 2307, 2549, 2307, 2550, 2307, 2551, 2552, 2535,
      2296, 2296, 2543, 2544, 2528, 2528, 2529, 2529, 2530, 2530,       2535, 2536, 2536, 2553, 2537, 2537, 2538, 2538, 2554, 2539,
      2296, 2531, 2531, 2545, 2532, 2532, 2533, 2533, 2534, 2534,       2539, 2307, 2307, 2555, 2556, 2540, 2540, 2541, 2541, 2542,
      2535, 2535, 2536, 2536, 2546, 2537, 2537, 2547, 2538, 2538,       2542, 2307, 2543, 2543, 2557, 2544, 2544, 2545, 2545, 2546,
      2548, 2539, 2539, 2540, 2540, 2541, 2541, 2542, 2542, 2296,       2546, 2547, 2547, 2548, 2548, 2558, 2549, 2549, 2559, 2550,
      2549, 2543, 2543, 2544, 2544, 2550, 2545, 2545, 2546, 2546,       2550, 2560, 2551, 2551, 2552, 2552, 2553, 2553, 2554, 2554,
      2547, 2547, 2548, 2548, 2551, 2549, 2549, 2550, 2550, 2551,       2307, 2561, 2555, 2555, 2556, 2556, 2562, 2557, 2557, 2558,
      2551,    0, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2558, 2559, 2559, 2560, 2560, 2563, 2561, 2561, 2562, 2562,
   
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2563, 2563,    0, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
   
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
   
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
        2303, 2303, 2303
     } ;      } ;
   
 static yyconst short int yy_nxt[2613] =  static yyconst short int yy_nxt[2624] =
     {   0,      {   0,
      2292,   43,    9,   10,   44, 2292,   11,    8,    8,    9,       2303,   43,    9,   10,   44,  620,   11,    8,    8,    9,
        10,    8,    8,   11,    8,   12,   13,   14,   15,   16,         10,    8,    8,   11,    8,   12,   13,   14,   15,   16,
        17,   18,   19,   20,    8,   21,   22,   23,   24,   25,         17,   18,   19,   20,    8,   21,   22,   23,   24,   25,
        26,    8,   27,   28,   29,   30,   31,   32,   33,   34,         26,    8,   27,   28,   29,   30,   31,   32,   33,   34,
         8,    9,    9,    9,    9,   36,   36,   39,   39,   52,          8,    9,    9,    9,    9,   36,   36,   39,   39,   52,
       771,   58,   37,   45,  184,   59,   53,   61,   54,   60,         70,   58,   37,   45,  113,   59,   53,   71,   54,   60,
       122,  185,   46,  123,   47,   55,   48,   62,   49,   65,        189,  190,   46,   72,   47,   55,   48,   61,   49,   66,
        50,   51,   56,  772,   69,   63,   72,   64,   57,   75,         50,   51,   56,   73,  114,   62,  123,   63,   57,  124,
        66,   70,  118,   67,   73,   84,   68,   71,   76,   77,         67,   74,   76,   68,   92,   64,   69,   65,   75,   85,
        91,   74,   80,   87,   78,  125,   81,   88,  126,   85,         81,   77,   78,  196,   82,   88,   93,   79,   83,   89,
   
        82,   94,   92,   86,  112,  179,  119,   89,   93,   95,         95,   99,   94,   86,  119,  100,  197,   87,   96,   90,
        90,   43,   83,   98,   44,   96,  131,   99,   97,  107,         84,  115,   91,  116,   97,  117,  108,   98,  181,  118,
       162,  180,  163,  108,  113,  194,  132,  114,  773,  115,        109,  101,  102,  126,  103,  773,  127,   43,  120,  110,
       774,  116,  109,  100,  101,  117,  102,  137,  195,  110,         44,  104,  132,  138,  182,  105,  111,  139,  140,  106,
       170,  138,  139,  103,  171,  192,  174,  104,  187,  188,        107,  164,  133,  165,  172,  176,  201,  186,  173,  177,
       175,  105,  106,  172,  176,  199,  193,  173,  205,  200,        202,  194,  204,  178,  187,  207,  774,  174,  224,  208,
       202,  219,  206,  224,  213,  222,  247,  214,  220,  201,        203,  175,  195,  205,  221,  215,  225,  226,  216,  249,
       225,  203,  215,  223,  255,  207,  249,  226,  204,  216,        206,  222,  209,  217,  227,  123,  126,  257,  124,  127,
       122,  125,  263,  123,  126,  483,  248,  775,  250,  253,        218,  228,  251,  255,  256,  263,  264,  266,  775,  250,
       254,  260,  261,  484,  256,  266,  251,  457,  280,  306,        269,  283,  303,  304,  252,  487,  284,  258,  461,  270,
   
       307,  264,  252,  281,  267,  300,  301,  282,  283,  284,        285,  344,  253,  488,  305,  345,  267,  346,  254,  286,
       285,  286,  341,  287,  458,  288,  342,  302,  343,  369,        287,  288,  289,  438,  290,  462,  291,  309,  310,  372,
       370,  371,  260,  261,  531,  434,  464,  289,  290,  776,        373,  468,  374,  263,  264,  535,  439,  776,  292,  293,
       291,  311,  450,  451,  312,  465,  313,  372,  435,  306,        469,  294,  314,  454,  455,  315,  777,  316,  375,  309,
       307,  450,  451,  314,  532,  638,  315,  461,  555,  316,        310,  465,  454,  455,  317,  536,  643,  318,  560,  466,
       379,  639,  380,  381,  671,  462,  556,  627,  382,  582,        319,  382,  644,  383,  384,  676,  561,  605,  467,  385,
       383,  583,  584,  600,  463,  384,  612,  385,  386,  621,        587,  386,  588,  589,  617,  606,  387,  626,  388,  389,
       387,  601,  622,  585,  672,  682,  683,  779,  780,  613,        627,  390,  687,  688,  590,  677,  778,  618,  779,  739,
       781,  733,  782,  777,  783,  784,  623,  698,  699,  700,        780,  781,  782,  632,  628,  704,  705,  706,  707,  740,
       701,  734,  778,  785,  787,  788,  790,  791,  702,  792,        783,  785,  786,  787,  788,  789,  708,  790,  791,  784,
   
       793,  794,  703,  796,  704,  705,  706,  797,  798,  799,        709,  793,  710,  711,  712,  794,  796,  797,  798,  799,
       801,  802,  650,  803,  804,  805,  806,  808,  809,  810,        800,  802,  803,  804,  805,  807,  808,  655,  809,  810,
       812,  813,  814,  815,  817,  818,  819,  811,  665,  820,        811,  812,  814,  815,  816,  818,  819,  820,  821,  823,
       821,  822,  823,  825,  826,  827,  828,  829,  830,  831,        824,  825,  817,  670,  826,  827,  828,  829,  831,  832,
       832,  833,  834,  835,  836,  837,  838,  839,  840,  841,        833,  834,  835,  836,  837,  838,  839,  840,  841,  842,
       842,  843,  844,  845,  846,  847,  848,  850,  852,  853,        843,  844,  845,  846,  847,  848,  849,  850,  851,  852,
       854,  855,  857,  858,  860,  856,  862,  863,  864,  859,        853,  854,  856,  858,  859,  860,  861,  862,  864,  865,
       867,  865,  872,  868,  869,  873,  875,  861,  866,  877,        867,  863,  869,  870,  871,  866,  874,  872,  879,  875,
       878,  879,  880,  870,  715,  881,  882,  883,  885,  886,        876,  880,  882,  868,  873,  884,  885,  886,  887,  877,
       887,  888,  889,  890,  891,  892,  893,  894,  895,  896,        721,  888,  889,  890,  892,  893,  894,  895,  896,  897,
   
       897,  898,  899,  900,  901,  902,  903,  904,  740,  905,        898,  899,  900,  901,  902,  903,  904,  905,  906,  907,
       743,  906,  907,  908,  748,  750,  909,  910,  911,  912,        908,  909,  910,  911,  746,  912,  749,  913,  914,  915,
       913,  914,  915,  916,  917,  918,  919,  920,  921,  922,        754,  756,  916,  917,  918,  919,  920,  921,  922,  923,
       923,  924,  926,  927,  928,  929,  930,  931,  932,  933,        924,  925,  926,  927,  928,  929,  930,  931,  933,  934,
       934,  935,  936,  937,  938,  954,  956,  957,  958,  959,        935,  936,  937,  938,  939,  940,  941,  942,  943,  944,
       787,  960,  790,  939,  940,  941,  942,  943,  944,  945,        945,  961,  963,  964,  965,  966,  793,  967,  796,  946,
       946,  947,  948,  961,  962,  963,  949,  964,  796,  950,        947,  948,  949,  950,  951,  952,  953,  954,  955,  968,
       965,  966,  951,  952,  967,  801,  953,  968,  969,  971,        969,  970,  956,  971,  802,  957,  972,  973,  958,  959,
       973,  975,  808,  976,  977,  978,  979,  980,  982,  983,        974,  807,  960,  975,  976,  978,  980,  982,  814,  983,
       817,  818,  819,  984,  985,  987,  988,  825,  989,  990,        984,  985,  986,  987,  989,  990,  823,  824,  825,  991,
   
       991,  992,  993,  994,  995,  997,  998,  999, 1000, 1001,        992,  994,  995,  831,  996,  997,  998,  999, 1000, 1001,
      1002, 1003, 1004, 1005, 1006, 1011, 1012, 1013, 1014, 1015,       1002, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
      1007, 1016, 1017,  850,  852, 1018, 1019, 1020, 1021, 1022,       1013, 1018, 1019, 1020, 1021, 1022, 1014, 1023, 1024,  856,
      1008, 1009, 1023, 1024, 1025, 1010, 1026, 1027, 1028, 1029,        858, 1025, 1026, 1027, 1028, 1029, 1015, 1016, 1030, 1031,
      1030, 1031, 1032, 1033, 1034, 1035,  872, 1037,  875,  877,       1032, 1017, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
      1038, 1039, 1040, 1041, 1043, 1044,  885, 1045, 1046, 1047,       1041, 1042, 1043,  879, 1045,  882,  884, 1046, 1047, 1048,
      1048, 1049, 1050, 1052, 1053, 1054, 1055, 1056, 1057, 1058,       1049, 1051, 1052,  892, 1053, 1054, 1055, 1056, 1057, 1058,
      1059, 1060, 1061, 1062, 1063, 1065, 1066, 1067, 1068, 1069,       1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069,
      1071, 1072, 1074, 1076, 1078, 1079, 1080, 1082, 1083, 1084,       1070, 1071, 1073, 1074, 1075, 1076, 1077, 1079, 1080, 1082,
      1086, 1088, 1089, 1090, 1091, 1092,  926, 1094, 1095, 1096,       1084, 1086, 1087, 1088, 1090, 1091, 1092, 1094, 1096, 1097,
   
      1097, 1098, 1099, 1100, 1102, 1103, 1104, 1105, 1106, 1108,       1098, 1099, 1100,  933, 1102, 1103, 1104, 1105, 1106, 1107,
      1109, 1110, 1111, 1116, 1107, 1114, 1117, 1119, 1121, 1112,       1108, 1110, 1111, 1112, 1113, 1114, 1116, 1117, 1118, 1119,
      1118, 1122, 1123, 1124, 1120, 1127, 1113, 1128, 1115, 1129,       1124, 1115, 1122, 1125, 1127, 1129, 1120, 1126, 1130, 1131,
      1125, 1130,  956, 1131, 1132, 1134, 1135, 1126, 1136, 1137,       1132, 1128, 1135, 1121, 1136, 1123, 1137, 1133, 1138,  963,
      1138, 1139, 1141, 1142, 1144, 1145, 1146, 1143,  971,  973,       1139, 1140, 1142, 1143, 1134, 1144, 1145, 1146, 1147, 1149,
       975, 1147, 1148, 1150, 1152, 1153,  982, 1154, 1155, 1156,       1150, 1152, 1153, 1154, 1151,  978,  980,  982, 1155, 1156,
       987, 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1164,  997,       1158, 1160, 1161,  989, 1162, 1163, 1164,  994, 1165, 1166,
      1165, 1166, 1167, 1168, 1169, 1171, 1172, 1173, 1174, 1175,       1167, 1168, 1169, 1170, 1171, 1172, 1004, 1173, 1174, 1175,
      1176, 1178, 1183, 1180, 1184, 1186, 1177, 1181, 1188, 1179,       1176, 1177, 1179, 1180, 1181, 1182, 1183, 1184, 1186, 1191,
      1189, 1190, 1191, 1192, 1194, 1195, 1196, 1197, 1198, 1199,       1188, 1192, 1194, 1185, 1189, 1196, 1187, 1197, 1198, 1199,
   
      1200, 1201, 1202, 1204, 1205, 1206, 1208, 1209, 1203, 1210,       1200, 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210,
      1211, 1207, 1212, 1037, 1214, 1215, 1216, 1217, 1043, 1218,       1211, 1213, 1214, 1215, 1217, 1218, 1212, 1219, 1220, 1216,
      1219, 1221, 1222, 1223, 1225, 1226, 1052, 1228, 1230, 1231,       1221, 1045, 1223, 1224, 1225, 1226, 1051, 1227, 1228, 1230,
      1232, 1233, 1234, 1235, 1236, 1238, 1239, 1240, 1065, 1242,       1231, 1232, 1234, 1235, 1060, 1237, 1239, 1240, 1241, 1242,
      1243, 1245, 1247, 1071, 1248, 1074, 1076, 1078, 1249, 1250,       1243, 1244, 1245, 1247, 1248, 1249, 1073, 1251, 1252, 1254,
      1082, 1251, 1253, 1086, 1088, 1254, 1255, 1257, 1258, 1094,       1256, 1079, 1257, 1082, 1084, 1086, 1258, 1259, 1090, 1260,
      1259, 1260, 1261, 1262, 1263, 1264, 1102, 1265, 1266, 1267,       1262, 1094, 1096, 1263, 1264, 1266, 1267, 1102, 1268, 1269,
      1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1278, 1276,       1270, 1271, 1272, 1273, 1110, 1274, 1275, 1276, 1277, 1278,
      1280, 1281, 1282, 1283, 1284, 1285, 1277, 1286, 1287, 1288,       1279, 1280, 1281, 1282, 1283, 1284, 1287, 1285, 1289, 1290,
      1289, 1290, 1291, 1279, 1292, 1293, 1294, 1296, 1297, 1298,       1291, 1292, 1293, 1294, 1286, 1295, 1296, 1297, 1298, 1299,
   
      1134, 1299, 1300, 1301, 1302, 1303, 1141, 1305, 1306, 1307,       1300, 1288, 1301, 1302, 1303, 1305, 1306, 1307, 1142, 1308,
      1309, 1310, 1311, 1313, 1150, 1152, 1314, 1315, 1316, 1318,       1309, 1310, 1311, 1312, 1149, 1314, 1315, 1316, 1318, 1319,
      1319, 1320, 1321, 1322, 1323, 1324, 1326, 1327, 1328, 1329,       1320, 1322, 1158, 1160, 1323, 1324, 1325, 1327, 1328, 1329,
      1330, 1332, 1333, 1171, 1334, 1335, 1336, 1337, 1338, 1339,       1330, 1331, 1332, 1333, 1335, 1336, 1337, 1338, 1339, 1341,
      1340, 1341, 1342, 1343, 1183, 1344, 1186, 1188, 1346, 1348,       1342, 1179, 1343, 1344, 1345, 1346, 1347, 1348, 1349, 1350,
      1349, 1351, 1194, 1352, 1353, 1354, 1356, 1357, 1358, 1359,       1351, 1352, 1191, 1353, 1194, 1196, 1355, 1357, 1358, 1360,
      1361, 1355, 1362, 1363, 1364, 1360, 1366, 1367, 1368, 1369,       1202, 1362, 1363, 1364, 1365, 1367, 1368, 1369, 1370, 1372,
      1370, 1372, 1373, 1376, 1214, 1378, 1371, 1379, 1374, 1385,       1366, 1373, 1374, 1375, 1371, 1377, 1378, 1379, 1380, 1381,
      1386, 1380, 1221, 1388, 1389, 1225, 1390, 1381, 1228, 1230,       1383, 1384, 1387, 1223, 1389, 1382, 1390, 1385, 1396, 1397,
      1392, 1393, 1394, 1396, 1397, 1398, 1375, 1382, 1383, 1238,       1391, 1230, 1399, 1400, 1234, 1401, 1392, 1237, 1239, 1403,
   
      1399, 1401, 1384, 1242, 1402, 1245, 1247, 1403, 1405, 1407,       1404, 1405, 1407, 1408, 1409, 1386, 1393, 1394, 1247, 1410,
      1408, 1253, 1409, 1410, 1257, 1411, 1412, 1413, 1415, 1416,       1412, 1395, 1251, 1413, 1254, 1256, 1414, 1416, 1418, 1419,
      1417, 1418, 1420, 1421, 1422, 1423, 1424, 1425, 1426, 1427,       1262, 1420, 1421, 1266, 1422, 1423, 1424, 1426, 1427, 1428,
      1428, 1429, 1430, 1431, 1432, 1433, 1434, 1435, 1436, 1437,       1429, 1431, 1432, 1433, 1434, 1435, 1436, 1437, 1438, 1439,
      1438, 1439, 1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447,       1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449,
      1448, 1449, 1296, 1450, 1451, 1453, 1454, 1456, 1457, 1458,       1450, 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458, 1459,
      1305, 1460, 1462, 1309, 1463, 1464, 1313, 1465, 1466, 1468,       1460, 1305, 1461, 1462, 1464, 1465, 1467, 1468, 1469, 1314,
      1318, 1470, 1471, 1473, 1475, 1476, 1478, 1326, 1479, 1480,       1471, 1473, 1318, 1474, 1475, 1322, 1476, 1477, 1479, 1327,
      1482, 1483, 1332, 1484, 1485, 1486, 1487, 1488, 1489, 1490,       1481, 1482, 1484, 1486, 1487, 1489, 1335, 1490, 1491, 1493,
      1491, 1492, 1493, 1494, 1495, 1346, 1348, 1496, 1351, 1497,       1494, 1341, 1495, 1496, 1497, 1498, 1499, 1500, 1501, 1502,
   
      1499, 1501, 1502, 1503, 1504, 1498, 1506, 1508, 1511, 1516,       1503, 1504, 1505, 1506, 1355, 1357, 1507, 1360, 1362, 1508,
      1505, 1514, 1507, 1509, 1512, 1513, 1517, 1515, 1518, 1366,       1510, 1512, 1513, 1514, 1515, 1509, 1517, 1519, 1522, 1527,
      1519, 1520, 1521, 1524, 1525, 1526, 1527, 1530, 1522, 1531,       1516, 1525, 1518, 1520, 1523, 1524, 1528, 1526, 1529, 1377,
      1532, 1533, 1528, 1535, 1378, 1536, 1537, 1534, 1538, 1539,       1530, 1531, 1532, 1535, 1536, 1537, 1538, 1541, 1533, 1542,
      1540, 1541, 1544, 1546, 1388, 1542, 1547, 1548, 1392, 1549,       1543, 1544, 1539, 1546, 1389, 1547, 1548, 1545, 1549, 1550,
      1551, 1396, 1552, 1553, 1555, 1401, 1556, 1558, 1405, 1407,       1551, 1552, 1555, 1557, 1399, 1553, 1558, 1559, 1403, 1560,
      1559, 1561, 1562, 1563, 1564, 1566, 1415, 1567, 1568, 1569,       1562, 1407, 1563, 1564, 1566, 1412, 1567, 1569, 1416, 1418,
      1420, 1570, 1572, 1573, 1574, 1576, 1577, 1578, 1579, 1580,       1570, 1572, 1573, 1574, 1575, 1577, 1426, 1578, 1579, 1580,
      1581, 1582, 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590,       1431, 1581, 1583, 1584, 1585, 1587, 1588, 1589, 1590, 1591,
      1571, 1591, 1592, 1593, 1594, 1595, 1596, 1597, 1598, 1599,       1592, 1593, 1594, 1595, 1596, 1597, 1598, 1599, 1600, 1601,
   
      1600, 1601, 1602, 1453, 1604, 1456, 1605, 1607, 1460, 1462,       1582, 1602, 1603, 1604, 1605, 1606, 1607, 1608, 1609, 1610,
      1608, 1610, 1612, 1614, 1468, 1470, 1615, 1473, 1475, 1616,       1611, 1612, 1613, 1464, 1615, 1467, 1616, 1618, 1471, 1473,
      1478, 1617, 1618, 1482, 1619, 1620, 1621, 1622, 1624, 1625,       1619, 1621, 1623, 1625, 1479, 1481, 1626, 1484, 1486, 1627,
      1626, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1636, 1637,       1489, 1628, 1629, 1493, 1630, 1631, 1632, 1633, 1635, 1636,
      1638, 1639, 1501, 1641, 1642, 1644, 1648, 1640, 1645, 1646,       1637, 1639, 1640, 1641, 1642, 1643, 1644, 1645, 1647, 1648,
      1649, 1650, 1652, 1653, 1654, 1511, 1655, 1656, 1658, 1659,       1649, 1650, 1512, 1652, 1653, 1655, 1659, 1651, 1656, 1657,
      1660, 1661, 1663, 1665, 1667, 1668, 1670, 1662, 1664, 1666,       1660, 1661, 1663, 1664, 1665, 1522, 1666, 1667, 1669, 1670,
      1671, 1672, 1524, 1673, 1674, 1676, 1677, 1678, 1530, 1679,       1671, 1672, 1674, 1676, 1678, 1679, 1681, 1673, 1675, 1677,
      1680, 1682, 1683, 1684, 1685, 1687, 1688, 1689, 1690, 1691,       1682, 1683, 1535, 1684, 1685, 1687, 1688, 1689, 1541, 1690,
      1692, 1693, 1544, 1546, 1695, 1697, 1699, 1551, 1700, 1701,       1691, 1693, 1694, 1695, 1696, 1698, 1699, 1700, 1701, 1702,
   
      1555, 1702, 1558, 1703, 1561, 1704, 1706, 1708, 1566, 1709,       1703, 1704, 1555, 1557, 1706, 1708, 1710, 1562, 1711, 1712,
      1711, 1712, 1714, 1715, 1717, 1718, 1719, 1576, 1721, 1722,       1566, 1713, 1569, 1714, 1572, 1715, 1717, 1719, 1577, 1720,
      1723, 1724, 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1734,       1722, 1723, 1725, 1726, 1728, 1729, 1730, 1587, 1732, 1733,
      1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743, 1744, 1746,       1734, 1735, 1737, 1738, 1739, 1740, 1741, 1742, 1743, 1745,
      1747, 1748, 1749, 1750, 1604, 1752, 1607, 1753, 1610, 1612,       1747, 1748, 1749, 1750, 1751, 1752, 1753, 1754, 1755, 1757,
      1614, 1754, 1756, 1757, 1758, 1759, 1760, 1761, 1762, 1624,       1758, 1759, 1760, 1761, 1615, 1763, 1618, 1764, 1621, 1623,
      1764, 1766, 1628, 1767, 1768, 1770, 1771, 1772, 1773, 1636,       1625, 1765, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1635,
      1774, 1775, 1777, 1778, 1779, 1780, 1781, 1644, 1782, 1783,       1775, 1777, 1639, 1778, 1779, 1781, 1782, 1783, 1784, 1647,
      1648, 1784, 1785, 1652, 1786, 1787, 1788, 1789, 1658, 1790,       1785, 1786, 1788, 1789, 1790, 1791, 1792, 1655, 1793, 1794,
      1791, 1793, 1794, 1795, 1797, 1798, 1799, 1801, 1802, 1803,       1659, 1795, 1796, 1663, 1797, 1798, 1799, 1800, 1669, 1801,
   
      1804, 1805, 1670, 1806, 1807, 1808, 1809, 1676, 1810, 1811,       1802, 1804, 1805, 1806, 1808, 1809, 1810, 1812, 1813, 1814,
      1812, 1813, 1682, 1814, 1815, 1816, 1687, 1818, 1819, 1820,       1815, 1816, 1681, 1817, 1818, 1819, 1820, 1687, 1821, 1822,
      1821, 1817, 1822, 1823, 1695, 1697, 1699, 1825, 1826, 1827,       1823, 1824, 1693, 1825, 1826, 1827, 1698, 1829, 1830, 1831,
      1828, 1829, 1706, 1708, 1831, 1711, 1832, 1714, 1833, 1717,       1832, 1828, 1833, 1834, 1706, 1708, 1710, 1836, 1837, 1838,
      1834, 1835, 1721, 1837, 1838, 1840, 1726, 1841, 1842, 1844,       1839, 1840, 1717, 1719, 1842, 1722, 1843, 1725, 1844, 1728,
      1845, 1847, 1848, 1734, 1736, 1849, 1850, 1851, 1852, 1854,       1845, 1846, 1732, 1848, 1849, 1851, 1737, 1852, 1853, 1855,
      1855, 1856, 1857, 1746, 1858, 1859, 1861, 1862, 1752, 1864,       1856, 1858, 1859, 1745, 1747, 1860, 1861, 1862, 1863, 1865,
      1865, 1756, 1866, 1867, 1869, 1871, 1872, 1873, 1764, 1766,       1866, 1867, 1868, 1757, 1869, 1870, 1872, 1873, 1763, 1875,
      1874, 1876, 1770, 1877, 1879, 1880, 1881, 1882, 1777, 1883,       1876, 1767, 1877, 1878, 1880, 1882, 1883, 1884, 1775, 1777,
      1884, 1885, 1886, 1887, 1888, 1889, 1890, 1891, 1892, 1893,       1885, 1887, 1781, 1888, 1890, 1891, 1892, 1893, 1788, 1894,
   
      1894, 1895, 1896, 1793, 1897, 1898, 1797, 1899, 1900, 1801,       1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903, 1904,
      1901, 1902, 1903, 1904, 1905, 1906, 1907, 1908, 1909, 1910,       1905, 1906, 1907, 1804, 1908, 1909, 1808, 1910, 1911, 1812,
      1911, 1912, 1913, 1914, 1916, 1917, 1918, 1920, 1921, 1923,       1912, 1913, 1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921,
      1924, 1925, 1926, 1825, 1928, 1929, 1931, 1932, 1831, 1934,       1922, 1923, 1924, 1925, 1927, 1928, 1929, 1931, 1932, 1934,
      1935, 1936, 1938, 1837, 1939, 1840, 1940, 1941, 1844, 1942,       1935, 1936, 1937, 1836, 1939, 1940, 1942, 1943, 1842, 1945,
      1847, 1943, 1944, 1945, 1946, 1947, 1854, 1948, 1949, 1951,       1946, 1947, 1949, 1848, 1950, 1851, 1951, 1952, 1855, 1953,
      1952, 1953, 1861, 1955, 1864, 1956, 1958, 1960, 1869, 1871,       1858, 1954, 1955, 1956, 1957, 1958, 1865, 1959, 1960, 1962,
      1961, 1963, 1965, 1876, 1967, 1879, 1968, 1969, 1970, 1971,       1963, 1964, 1872, 1966, 1875, 1967, 1969, 1971, 1880, 1882,
      1972, 1973, 1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981,       1972, 1974, 1976, 1887, 1978, 1890, 1979, 1980, 1981, 1982,
      1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991,       1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992,
   
      1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,       1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
      2002, 1916, 2003, 2004, 1920, 2006, 1923, 2007, 2009, 2010,       2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
      1928, 2012, 1931, 2014, 1934, 2015, 2016, 1938, 2017, 2018,       2013, 1927, 2014, 2015, 1931, 2017, 1934, 2018, 2020, 2021,
      2019, 2021, 2022, 2023, 2024, 2025, 2026, 2027, 2028, 1951,       1939, 2023, 1942, 2025, 1945, 2026, 2027, 1949, 2028, 2029,
      2029, 2030, 1955, 2032, 1958, 1960, 2034, 1963, 1965, 1967,       2030, 2032, 2033, 2034, 2035, 2036, 2037, 2038, 2039, 1962,
      2035, 2036, 2037, 2038, 2039, 2040, 2041, 2042, 2043, 2044,       2040, 2041, 1966, 2043, 1969, 1971, 2045, 1974, 1976, 1978,
      2045, 2046, 2047, 2048, 2049, 2050, 2051, 2052, 2053, 2054,       2046, 2047, 2048, 2049, 2050, 2051, 2052, 2053, 2054, 2055,
      2055, 2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064,       2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065,
      2065, 2066, 2067, 2068, 2069, 2070, 2071, 2006, 2073, 2009,       2066, 2067, 2068, 2069, 2070, 2071, 2072, 2073, 2074, 2075,
      2074, 2012, 2014, 2076, 2078, 2079, 2080, 2081, 2021, 2082,       2076, 2077, 2078, 2079, 2080, 2081, 2082, 2017, 2084, 2020,
   
      2084, 2086, 2088, 2090, 2092, 2094, 2095, 2096, 2032, 2034,       2085, 2023, 2025, 2087, 2089, 2090, 2091, 2092, 2032, 2093,
      2097, 2098, 2099, 2100, 2101, 2102, 2103, 2104, 2105, 2106,       2095, 2097, 2099, 2101, 2103, 2105, 2106, 2107, 2043, 2045,
      2107, 2108, 2109, 2110, 2111, 2112, 2113, 2114, 2115, 2116,       2108, 2109, 2110, 2111, 2112, 2113, 2114, 2115, 2116, 2117,
      2117, 2118, 2119, 2120, 2122, 2123, 2124, 2125, 2126, 2127,       2118, 2119, 2120, 2121, 2122, 2123, 2124, 2125, 2126, 2127,
      2128, 2129, 2130, 2131, 2132, 2133, 2134, 2073, 2136, 2076,       2128, 2129, 2130, 2131, 2133, 2134, 2135, 2136, 2137, 2138,
      2078, 2137, 2139, 2140, 2141, 2084, 2086, 2088, 2090, 2092,       2139, 2140, 2141, 2142, 2143, 2144, 2145, 2084, 2147, 2087,
      2094, 2142, 2143, 2144, 2145, 2146, 2147, 2148, 2149, 2151,       2089, 2148, 2150, 2151, 2152, 2095, 2097, 2099, 2101, 2103,
      2152, 2153, 2154, 2155, 2156, 2157, 2158, 2160, 2161, 2162,       2105, 2153, 2154, 2155, 2156, 2157, 2158, 2159, 2160, 2162,
      2163, 2164, 2165, 2166, 2167, 2168, 2170, 2122, 2171, 2172,       2163, 2164, 2165, 2166, 2167, 2168, 2169, 2171, 2172, 2173,
      2173, 2175, 2176, 2177, 2178, 2180, 2181, 2182, 2183, 2184,       2174, 2175, 2176, 2177, 2178, 2179, 2181, 2133, 2182, 2183,
   
      2136, 2185, 2139, 2186, 2187, 2188, 2189, 2190, 2191, 2193,       2184, 2186, 2187, 2188, 2189, 2191, 2192, 2193, 2194, 2195,
      2194, 2195, 2197, 2151, 2198, 2200, 2201, 2203, 2204, 2206,       2147, 2196, 2150, 2197, 2198, 2199, 2200, 2201, 2202, 2204,
      2208, 2160, 2209, 2211, 2212, 2213, 2214, 2215, 2216, 2217,       2205, 2206, 2208, 2162, 2209, 2211, 2212, 2214, 2215, 2217,
      2170, 2218, 2220, 2222, 2175, 2223, 2225, 2227, 2180, 2228,       2219, 2171, 2220, 2222, 2223, 2224, 2225, 2226, 2227, 2228,
      2230, 2231, 2232, 2233, 2234, 2236, 2238, 2240, 2241, 2243,       2181, 2229, 2231, 2233, 2186, 2234, 2236, 2238, 2191, 2239,
      2193, 2244, 2246, 2197, 2248, 2200, 2250, 2203, 2252, 2206,       2241, 2242, 2243, 2244, 2245, 2247, 2249, 2251, 2252, 2254,
      2208, 2254, 2211, 2255, 2257, 2258, 2260, 2261, 2263, 2265,       2204, 2255, 2257, 2208, 2259, 2211, 2261, 2214, 2263, 2217,
      2220, 2222, 2267, 2225, 2227, 2269, 2230, 2270, 2271, 2273,       2219, 2265, 2222, 2266, 2268, 2269, 2271, 2272, 2274, 2276,
      2275, 2236, 2238, 2240, 2276, 2243, 2278, 2246, 2248, 2250,       2231, 2233, 2278, 2236, 2238, 2280, 2241, 2281, 2282, 2284,
      2252, 2254, 2280, 2257, 2282, 2260, 2284, 2263, 2265, 2267,       2286, 2247, 2249, 2251, 2287, 2254, 2289, 2257, 2259, 2261,
   
      2269, 2285, 2287, 2273, 2275, 2289, 2278, 2280, 2282, 2284,       2263, 2265, 2291, 2268, 2293, 2271, 2295, 2274, 2276, 2278,
      2291, 2287, 2289, 2291,    8,    8,   35,   35,   38,   38,       2280, 2296, 2298, 2284, 2286, 2300, 2289, 2291, 2293, 2295,
        40,   41,   41,  121,  227,  230,  233,  275,  337,  359,       2302, 2298, 2300, 2302,    8,    8,   35,   35,   38,   38,
       390,  393,  400,  403,  408,  423,  474,  494,  512,  514,         40,   41,   41,  122,  229,  232,  235,  278,  340,  362,
       523,  553,  558,  588,  598,  614,  626,  649,  664,  714,        393,  396,  403,  406,  412,  427,  478,  498,  516,  518,
       739,  742,  747,  749,  786,  789,  795,  800,  807,  816,        527,  558,  563,  593,  603,  619,  631,  654,  669,  720,
       824,  849,  851,  871,  874,  876,  884,  925,  955,  970,        745,  748,  753,  755,  792,  795,  801,  806,  813,  822,
       972,  974,  981,  986,  996, 1036, 1042, 1051, 1064, 1070,        830,  855,  857,  878,  881,  883,  891,  932,  962,  977,
      1073, 1075, 1077, 1081, 1085, 1087, 1093, 1101, 1133, 1140,        979,  981,  988,  993, 1003, 1044, 1050, 1059, 1072, 1078,
      1149, 1151, 1170, 1182, 1185, 1187, 1193, 1213, 1220, 1220,       1081, 1083, 1085, 1089, 1093, 1095, 1101, 1109, 1141, 1148,
   
      1224, 1227, 1229, 1237, 1241, 1244, 1246, 1252, 1256, 1295,       1157, 1159, 1178, 1190, 1193, 1195, 1201, 1222, 1229, 1229,
      1304, 1308, 1312, 1317, 1325, 1331, 1345, 1347, 1350, 1365,       1233, 1236, 1238, 1246, 1250, 1253, 1255, 1261, 1265, 1304,
      1377, 1387, 1391, 1395, 1400, 1404, 1406, 1414, 1419, 1452,       1313, 1317, 1321, 1326, 1334, 1340, 1354, 1356, 1359, 1361,
      1455, 1459, 1461, 1467, 1469, 1472, 1474, 1477, 1481, 1500,       1376, 1388, 1398, 1402, 1406, 1411, 1415, 1417, 1425, 1430,
      1510, 1523, 1529, 1543, 1545, 1550, 1554, 1557, 1560, 1565,       1463, 1466, 1470, 1472, 1478, 1480, 1483, 1485, 1488, 1492,
      1575, 1603, 1606, 1609, 1611, 1613, 1623, 1627, 1635, 1643,       1511, 1521, 1534, 1540, 1554, 1556, 1561, 1565, 1568, 1571,
      1647, 1651, 1657, 1669, 1675, 1681, 1686, 1694, 1696, 1698,       1576, 1586, 1614, 1617, 1620, 1622, 1624, 1634, 1638, 1646,
      1705, 1707, 1710, 1713, 1716, 1720, 1725, 1733, 1735, 1745,       1654, 1658, 1662, 1668, 1680, 1686, 1692, 1697, 1705, 1707,
      1603, 1751, 1606, 1755, 1763, 1765, 1769, 1776, 1792, 1796,       1709, 1716, 1718, 1721, 1724, 1727, 1731, 1736, 1744, 1746,
      1800, 1824, 1830, 1836, 1839, 1843, 1846, 1853, 1860, 1863,       1756, 1614, 1762, 1617, 1766, 1774, 1776, 1780, 1787, 1803,
   
      1868, 1870, 1875, 1878, 1915, 1919, 1922, 1927, 1930, 1933,       1807, 1811, 1835, 1841, 1847, 1850, 1854, 1857, 1864, 1871,
      1937, 1950, 1954, 1957, 1959, 1962, 1964, 1966, 2005, 2008,       1874, 1879, 1881, 1886, 1889, 1926, 1930, 1933, 1938, 1941,
      2011, 2013, 2020, 2031, 2033, 2072, 2075, 2077, 2083, 2085,       1944, 1948, 1961, 1965, 1968, 1970, 1973, 1975, 1977, 2016,
      2087, 2089, 2091, 2093, 2121, 2135, 2138, 2150, 2159, 2169,       2019, 2022, 2024, 2031, 2042, 2044, 2083, 2086, 2088, 2094,
      2174, 2179, 2192, 2196, 2199, 2202, 2205, 2207, 2210, 2219,       2096, 2098, 2100, 2102, 2104, 2132, 2146, 2149, 2161, 2170,
      2221, 2224, 2226, 2229, 2235, 2237, 2239, 2242, 2245, 2247,       2180, 2185, 2190, 2203, 2207, 2210, 2213, 2216, 2218, 2221,
      2249, 2251, 2253, 2256, 2259, 2262, 2264, 2266, 2268, 2272,       2230, 2232, 2235, 2237, 2240, 2246, 2248, 2250, 2253, 2256,
      2274, 2277, 2279, 2281, 2283, 2286, 2288, 2290,  770,  769,       2258, 2260, 2262, 2264, 2267, 2270, 2273, 2275, 2277, 2279,
       768,  767,  615,  766,  765,  764,  763,  762,  761,  760,       2283, 2285, 2288, 2290, 2292, 2294, 2297, 2299, 2301,  772,
       759,  758,  757,  756,  755,  754,  753,  599,  752,  751,        771,  770,  769,  768,  767,  766,  765,  764,  763,  762,
   
       750,  748,  746,  745,  744,  743,  589,  741,  740,  738,        761,  760,  759,  604,  758,  757,  756,  754,  752,  751,
       737,  736,  735,  732,  731,  730,  729,  728,  727,  726,        750,  749,  594,  747,  746,  744,  743,  742,  741,  738,
       725,  724,  723,  722,  721,  720,  719,  718,  717,  716,        737,  736,  735,  734,  733,  732,  731,  730,  729,  728,
       715,  713,  712,  711,  559,  710,  709,  708,  554,  707,        727,  726,  725,  724,  723,  722,  721,  719,  718,  717,
       697,  696,  695,  694,  693,  692,  691,  690,  689,  688,        564,  716,  715,  714,  559,  713,  703,  702,  701,  700,
       687,  686,  685,  684,  681,  680,  679,  678,  677,  676,        699,  698,  697,  696,  695,  694,  693,  692,  691,  690,
       675,  674,  673,  670,  524,  669,  668,  667,  666,  665,        689,  686,  685,  684,  683,  682,  681,  680,  679,  678,
       663,  662,  515,  513,  661,  660,  659,  658,  657,  656,        675,  528,  674,  673,  672,  671,  670,  668,  667,  519,
       655,  654,  653,  652,  651,  650,  648,  647,  646,  645,        517,  666,  665,  664,  663,  662,  661,  660,  659,  658,
       495,  644,  643,  642,  641,  640,  637,  636,  635,  634,        657,  656,  655,  653,  652,  651,  650,  499,  649,  648,
   
       633,  632,  631,  630,  629,  628,  627,  625,  475,  624,        647,  646,  645,  642,  641,  640,  639,  638,  637,  636,
       620,  619,  618,  617,  616,  615,  611,  610,  609,  608,        635,  634,  633,  632,  630,  479,  629,  625,  624,  623,
       607,  606,  605,  604,  603,  602,  599,  597,  596,  595,        622,  621,  620,  616,  615,  614,  613,  612,  611,  610,
       594,  593,  592,  591,  590,  589,  587,  586,  581,  580,        609,  608,  607,  604,  602,  601,  600,  599,  598,  597,
       579,  578,  577,  576,  575,  574,  573,  572,  571,  570,        596,  595,  594,  592,  591,  586,  585,  584,  583,  582,
       569,  568,  424,  567,  566,  565,  564,  563,  562,  561,        581,  580,  579,  578,  577,  576,  575,  574,  573,  428,
       560,  559,  557,  554,  552,  409,  551,  550,  549,  404,        572,  571,  570,  569,  568,  567,  566,  565,  564,  562,
       548,  401,  547,  546,  545,  544,  543,  394,  542,  391,        559,  557,  413,  556,  555,  554,  553,  407,  552,  404,
       541,  540,  539,  538,  537,  536,  535,  534,  533,  530,        551,  550,  549,  548,  547,  397,  546,  394,  545,  544,
       529,  528,  527,  526,  525,  524,  522,  521,  520,  519,        543,  542,  541,  540,  539,  538,  537,  534,  533,  532,
   
       518,  517,  516,  515,  513,  511,  510,  509,  360,  508,        531,  530,  529,  528,  526,  525,  524,  523,  522,  521,
       507,  506,  505,  504,  503,  502,  501,  500,  499,  498,        520,  519,  517,  515,  514,  513,  363,  512,  511,  510,
       497,  496,  495,  493,  492,  491,  490,  489,  488,  338,        509,  508,  507,  506,  505,  504,  503,  502,  501,  500,
       487,  486,  485,  482,  481,  480,  479,  478,  477,  476,        499,  497,  496,  495,  494,  493,  492,  341,  491,  490,
       475,  473,  472,  471,  470,  469,  468,  467,  466,  460,        489,  486,  485,  484,  483,  482,  481,  480,  479,  477,
       459,  456,  455,  454,  453,  452,  449,  448,  447,  446,        476,  475,  474,  473,  472,  471,  470,  464,  463,  460,
       445,  444,  443,  442,  441,  440,  439,  438,  437,  436,        459,  458,  457,  456,  453,  452,  451,  450,  449,  448,
       433,  432,  431,  430,  429,  428,  427,  426,  425,  424,        447,  446,  445,  444,  443,  442,  441,  440,  437,  436,
       422,  421,  276,  420,  419,  418,  417,  416,  415,  414,        435,  434,  433,  432,  431,  430,  429,  428,  426,  425,
       413,  412,  411,  410,  409,  407,  406,  405,  404,  402,        279,  424,  423,  422,  421,  420,  419,  418,  417,  416,
   
       401,  399,  398,  397,  396,  395,  394,  392,  391,  389,        415,  414,  413,  411,  410,  409,  408,  407,  405,  404,
       388,  378,  377,  376,  375,  374,  373,  368,  234,  367,        402,  401,  400,  399,  398,  397,  395,  394,  392,  391,
       231,  366,  228,  365,  364,  363,  362,  361,  360,  358,        381,  380,  379,  378,  377,  376,  371,  236,  370,  233,
       357,  356,  355,  354,  353,  352,  351,  350,  349,  348,        369,  230,  368,  367,  366,  365,  364,  363,  361,  360,
       347,  346,  345,  344,  340,  339,  338,  336,  335,  334,        359,  358,  357,  356,  355,  354,  353,  352,  351,  350,
       333,  332,  331,  330,  329,  328,  327,  326,  325,  324,        349,  348,  347,  343,  342,  341,  339,  338,  337,  336,
       323,  322,  321,  320,  319,  318,  317,  310,  309,  308,        335,  334,  333,  332,  331,  330,  329,  328,  327,  326,
       305,  304,  303,  299,  298,  297,  296,  295,  294,  293,        325,  324,  323,  322,  321,  320,  313,  312,  311,  308,
       292,  279,  278,  277,  276,  274,  273,  272,  271,  270,        307,  306,  302,  301,  300,  299,  298,  297,  296,  295,
       269,  268,  265,  262,  259,  258,  257,  246,  245,  244,        282,  281,  280,  279,  277,  276,  275,  274,  273,  272,
   
       243,  242,  241,  240,  239,  238,  237,  236,  235,  234,        271,  268,  265,  262,  261,  260,  259,  248,  247,  246,
       232,  231,  229,  228,  221,  218,  217,  212,  211,  210,        245,  244,  243,  242,  241,  240,  239,  238,  237,  236,
       209,  208,  198,  197,  196,  191,  190,  189,  186,  183,        234,  233,  231,  230,  223,  220,  219,  214,  213,  212,
       182,  181,  178,  177,  169,  168,  167,  166,  165,  164,        211,  210,  200,  199,  198,  193,  192,  191,  188,  185,
       161,  160,  159,  158,  157,  156,  155,  154,  153,  152,        184,  183,  180,  179,  171,  170,  169,  168,  167,  166,
       151,  150,  149,  148,  147,  146,  145,  144,  143,  142,        163,  162,  161,  160,  159,  158,  157,  156,  155,  154,
       141,  140,  136,  135,  134,  133,  130,  129,  128,  127,        153,  152,  151,  150,  149,  148,  147,  146,  145,  144,
        42,  124,  120,  111,   79,   42, 2292,    7, 2292, 2292,        143,  142,  141,  137,  136,  135,  134,  131,  130,  129,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,        128,   42,  125,  121,  112,   80,   42, 2303,    7, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
   
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
        2303, 2303, 2303
     } ;      } ;
   
 static yyconst short int yy_chk[2613] =  static yyconst short int yy_chk[2624] =
     {   0,      {   0,
         0,   11,    1,    1,   11,    0,    1,    2,    2,    2,          0,   11,    1,    1,   11,  620,    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,          2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
         2,    3,    4,    5,    6,    3,    4,    5,    6,   13,          2,    3,    4,    5,    6,    3,    4,    5,    6,   13,
       620,   15,    4,   12,   92,   15,   13,   16,   14,   15,         18,   15,    4,   12,   31,   15,   13,   18,   14,   15,
        36,   92,   12,   36,   12,   14,   12,   16,   12,   17,         95,   95,   12,   18,   12,   14,   12,   16,   12,   17,
        12,   12,   14,  621,   18,   16,   19,   16,   14,   20,         12,   12,   14,   19,   31,   16,   36,   16,   14,   36,
        17,   18,   33,   17,   19,   23,   17,   18,   20,   20,         17,   19,   20,   17,   25,   16,   17,   16,   19,   23,
        25,   19,   22,   24,   20,   39,   22,   24,   39,   23,         22,   20,   20,  100,   22,   24,   25,   20,   22,   24,
   
        22,   26,   25,   23,   31,   88,   33,   24,   25,   26,         26,   27,   25,   23,   33,   27,  100,   23,   26,   24,
        24,   43,   22,   27,   43,   26,   49,   27,   26,   29,         22,   32,   24,   32,   26,   32,   29,   26,   89,   32,
        77,   88,   77,   29,   31,   99,   49,   32,  622,   32,         29,   27,   28,   39,   28,  621,   39,   43,   33,   29,
       623,   32,   29,   27,   28,   32,   28,   54,   99,   29,         43,   28,   49,   54,   89,   28,   29,   54,   54,   28,
        84,   54,   54,   28,   84,   98,   85,   28,   94,   94,         28,   78,   49,   78,   85,   86,  104,   93,   85,   86,
        85,   28,   28,   84,   85,  103,   98,   84,  105,  103,        104,   99,  105,   86,   93,  106,  622,   85,  117,  106,
       104,  114,  105,  117,  111,  116,  140,  111,  114,  103,        104,   85,   99,  105,  115,  112,  117,  118,  112,  141,
       117,  104,  111,  116,  143,  105,  141,  117,  104,  111,        105,  115,  106,  112,  118,  123,  126,  144,  123,  126,
       122,  125,  149,  122,  125,  333,  140,  624,  141,  142,        112,  118,  142,  143,  143,  149,  149,  151,  623,  141,
       142,  147,  147,  333,  143,  151,  141,  312,  163,  177,        153,  165,  175,  175,  142,  336,  165,  144,  315,  153,
   
       177,  149,  141,  163,  151,  173,  173,  163,  164,  164,        165,  207,  142,  336,  175,  207,  151,  207,  142,  166,
       164,  164,  205,  164,  312,  164,  205,  173,  205,  236,        166,  166,  166,  292,  166,  315,  166,  179,  179,  238,
       236,  237,  260,  260,  380,  289,  316,  164,  164,  625,        238,  319,  239,  263,  263,  383,  292,  624,  166,  166,
       164,  181,  304,  304,  181,  316,  181,  237,  289,  306,        319,  166,  183,  307,  307,  183,  625,  183,  239,  309,
       306,  450,  450,  181,  380,  488,  181,  315,  412,  181,        309,  318,  454,  454,  183,  383,  492,  183,  416,  318,
       244,  488,  244,  244,  526,  315,  412,  627,  244,  439,        183,  246,  492,  246,  246,  530,  416,  458,  318,  246,
       244,  439,  439,  454,  315,  244,  465,  244,  244,  472,        443,  246,  443,  443,  469,  458,  246,  476,  246,  246,
       244,  454,  472,  439,  526,  536,  536,  629,  630,  465,        476,  246,  540,  540,  443,  530,  626,  469,  627,  586,
       631,  581,  632,  628,  633,  634,  472,  551,  551,  551,        628,  629,  630,  632,  476,  556,  556,  556,  556,  586,
       551,  581,  628,  635,  636,  637,  638,  639,  551,  640,        633,  634,  635,  636,  637,  638,  556,  639,  640,  633,
   
       641,  642,  551,  643,  551,  551,  551,  644,  645,  646,        556,  641,  556,  556,  556,  642,  643,  644,  645,  646,
       647,  648,  650,  651,  652,  653,  654,  655,  656,  657,        647,  648,  649,  650,  651,  652,  653,  655,  656,  657,
       658,  659,  660,  661,  662,  663,  663,  657,  665,  666,        658,  659,  660,  661,  662,  663,  664,  665,  666,  667,
       667,  668,  669,  670,  671,  672,  673,  674,  675,  676,        668,  668,  662,  670,  671,  672,  673,  674,  675,  676,
       677,  678,  679,  680,  681,  682,  683,  684,  685,  686,        677,  678,  679,  680,  681,  682,  683,  684,  685,  686,
       687,  688,  689,  690,  691,  692,  693,  694,  695,  696,        687,  688,  689,  690,  691,  692,  693,  694,  695,  696,
       697,  698,  699,  700,  701,  698,  702,  703,  704,  700,        697,  698,  699,  700,  701,  702,  703,  704,  705,  706,
       706,  705,  707,  706,  706,  708,  709,  701,  705,  710,        707,  704,  708,  709,  710,  706,  712,  711,  713,  712,
       711,  712,  713,  706,  715,  716,  717,  718,  719,  720,        712,  714,  715,  707,  711,  716,  717,  718,  719,  712,
       721,  722,  723,  724,  725,  726,  727,  728,  729,  730,        721,  722,  723,  724,  725,  726,  727,  728,  729,  730,
   
       731,  732,  733,  734,  735,  736,  737,  738,  740,  741,        731,  732,  733,  734,  735,  736,  737,  738,  739,  740,
       743,  744,  745,  746,  748,  750,  751,  752,  753,  754,        741,  742,  743,  744,  746,  747,  749,  750,  751,  752,
       755,  756,  757,  758,  759,  760,  761,  762,  763,  764,        754,  756,  757,  758,  759,  760,  761,  762,  763,  764,
       765,  766,  767,  768,  769,  770,  771,  772,  773,  774,        765,  766,  767,  768,  769,  770,  771,  772,  773,  774,
       775,  776,  777,  778,  779,  781,  782,  783,  784,  785,        775,  776,  777,  778,  779,  780,  781,  782,  783,  784,
       787,  788,  790,  779,  780,  780,  780,  780,  780,  780,        785,  787,  788,  789,  790,  791,  793,  794,  796,  785,
       780,  780,  780,  791,  792,  793,  780,  794,  796,  780,        786,  786,  786,  786,  786,  786,  786,  786,  786,  797,
       797,  798,  780,  780,  799,  801,  780,  802,  803,  804,        798,  799,  786,  800,  802,  786,  803,  804,  786,  786,
       805,  806,  808,  809,  810,  811,  812,  813,  814,  815,        805,  807,  786,  808,  809,  810,  811,  812,  814,  815,
       817,  818,  818,  820,  821,  822,  823,  825,  826,  827,        816,  817,  818,  819,  820,  821,  823,  824,  824,  826,
   
       828,  829,  830,  831,  832,  833,  834,  835,  836,  837,        827,  828,  829,  831,  832,  833,  834,  835,  836,  837,
       838,  839,  840,  841,  841,  842,  843,  844,  845,  846,        838,  839,  840,  841,  842,  843,  844,  845,  846,  847,
       841,  847,  848,  850,  852,  853,  854,  855,  856,  857,        847,  848,  849,  850,  851,  852,  847,  853,  854,  856,
       841,  841,  858,  859,  860,  841,  861,  862,  863,  864,        858,  859,  860,  861,  862,  863,  847,  847,  864,  865,
       865,  866,  867,  868,  869,  870,  872,  873,  875,  877,        866,  847,  867,  868,  869,  870,  871,  872,  873,  874,
       878,  879,  880,  881,  882,  883,  885,  886,  887,  888,        875,  876,  877,  879,  880,  882,  884,  885,  886,  887,
       889,  890,  891,  892,  893,  894,  895,  896,  897,  898,        888,  889,  890,  892,  893,  894,  895,  896,  897,  898,
       899,  900,  901,  902,  903,  904,  905,  906,  907,  908,        899,  900,  901,  902,  903,  904,  905,  906,  907,  908,
       909,  910,  911,  912,  913,  914,  915,  916,  917,  918,        909,  910,  911,  912,  913,  914,  915,  916,  917,  918,
       919,  920,  921,  922,  923,  924,  926,  927,  928,  929,        919,  920,  921,  922,  923,  924,  925,  926,  927,  928,
   
       930,  931,  932,  933,  934,  935,  936,  937,  938,  939,        929,  930,  931,  933,  934,  935,  936,  937,  938,  939,
       940,  941,  942,  944,  938,  943,  945,  946,  947,  942,        940,  941,  942,  943,  944,  945,  946,  947,  948,  949,
       945,  948,  949,  950,  946,  951,  942,  952,  943,  953,        951,  945,  950,  952,  953,  954,  949,  952,  955,  956,
       950,  954,  956,  957,  958,  959,  960,  950,  961,  962,        957,  953,  958,  949,  959,  950,  960,  957,  961,  963,
       963,  964,  965,  966,  967,  968,  969,  966,  971,  973,        964,  965,  966,  967,  957,  968,  969,  970,  971,  972,
       975,  976,  977,  978,  979,  980,  982,  983,  984,  985,        973,  974,  975,  976,  973,  978,  980,  982,  983,  984,
       987,  988,  989,  990,  991,  992,  993,  994,  995,  997,        985,  986,  987,  989,  990,  991,  992,  994,  995,  996,
       998,  999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,        997,  998,  999, 1000, 1001, 1002, 1004, 1005, 1006, 1007,
      1008, 1009, 1011, 1010, 1012, 1013, 1008, 1010, 1014, 1009,       1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1018,
      1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,       1017, 1019, 1020, 1015, 1017, 1021, 1016, 1022, 1023, 1024,
   
      1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1027, 1033,       1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
      1034, 1030, 1035, 1037, 1038, 1039, 1040, 1041, 1043, 1044,       1035, 1036, 1037, 1038, 1039, 1040, 1035, 1041, 1042, 1038,
      1045, 1046, 1047, 1048, 1049, 1050, 1052, 1053, 1054, 1055,       1043, 1045, 1046, 1047, 1048, 1049, 1051, 1052, 1053, 1054,
      1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1065, 1066,       1055, 1056, 1057, 1058, 1060, 1061, 1062, 1063, 1064, 1065,
      1067, 1068, 1069, 1071, 1072, 1074, 1076, 1078, 1079, 1080,       1066, 1067, 1068, 1069, 1070, 1071, 1073, 1074, 1075, 1076,
      1082, 1083, 1084, 1086, 1088, 1089, 1090, 1091, 1092, 1094,       1077, 1079, 1080, 1082, 1084, 1086, 1087, 1088, 1090, 1091,
      1095, 1096, 1097, 1098, 1099, 1100, 1102, 1103, 1104, 1105,       1092, 1094, 1096, 1097, 1098, 1099, 1100, 1102, 1103, 1104,
      1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1113,       1105, 1106, 1107, 1108, 1110, 1111, 1112, 1113, 1114, 1115,
      1115, 1116, 1117, 1118, 1119, 1120, 1113, 1121, 1122, 1123,       1116, 1117, 1118, 1119, 1120, 1121, 1122, 1121, 1123, 1124,
      1124, 1125, 1126, 1114, 1127, 1128, 1129, 1130, 1131, 1132,       1125, 1126, 1127, 1128, 1121, 1129, 1130, 1131, 1132, 1133,
   
      1134, 1135, 1136, 1137, 1138, 1139, 1141, 1142, 1143, 1144,       1134, 1122, 1135, 1136, 1137, 1138, 1139, 1140, 1142, 1143,
      1145, 1146, 1147, 1148, 1150, 1152, 1153, 1154, 1155, 1156,       1144, 1145, 1146, 1147, 1149, 1150, 1151, 1152, 1153, 1154,
      1157, 1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166,       1155, 1156, 1158, 1160, 1161, 1162, 1163, 1164, 1165, 1166,
      1167, 1168, 1169, 1171, 1172, 1173, 1174, 1175, 1176, 1177,       1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176,
      1178, 1179, 1180, 1181, 1183, 1184, 1186, 1188, 1189, 1190,       1177, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1187,
      1191, 1192, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201,       1188, 1189, 1191, 1192, 1194, 1196, 1197, 1198, 1199, 1200,
      1202, 1197, 1203, 1204, 1205, 1201, 1206, 1207, 1207, 1208,       1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211,
      1209, 1210, 1211, 1212, 1214, 1215, 1209, 1216, 1211, 1218,       1206, 1212, 1213, 1214, 1210, 1215, 1216, 1216, 1217, 1218,
      1219, 1217, 1220, 1222, 1223, 1225, 1226, 1217, 1228, 1230,       1219, 1220, 1221, 1223, 1224, 1218, 1225, 1220, 1227, 1228,
      1231, 1232, 1233, 1234, 1235, 1236, 1211, 1217, 1217, 1238,       1226, 1229, 1231, 1232, 1234, 1235, 1226, 1237, 1239, 1240,
   
      1239, 1240, 1217, 1242, 1243, 1245, 1247, 1248, 1249, 1250,       1241, 1242, 1243, 1244, 1245, 1220, 1226, 1226, 1247, 1248,
      1251, 1253, 1254, 1255, 1257, 1258, 1259, 1260, 1261, 1262,       1249, 1226, 1251, 1252, 1254, 1256, 1257, 1258, 1259, 1260,
      1263, 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1271, 1272,       1262, 1263, 1264, 1266, 1267, 1268, 1269, 1270, 1271, 1272,
      1273, 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1281, 1282,       1273, 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1281, 1282,
      1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292,       1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292,
      1293, 1294, 1296, 1297, 1298, 1299, 1300, 1301, 1302, 1303,       1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300, 1301, 1302,
      1305, 1306, 1307, 1309, 1310, 1311, 1313, 1314, 1315, 1316,       1303, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312, 1314,
      1318, 1319, 1320, 1321, 1322, 1323, 1324, 1326, 1327, 1328,       1315, 1316, 1318, 1319, 1320, 1322, 1323, 1324, 1325, 1327,
      1329, 1330, 1332, 1333, 1334, 1335, 1336, 1337, 1338, 1339,       1328, 1329, 1330, 1331, 1332, 1333, 1335, 1336, 1337, 1338,
      1340, 1341, 1342, 1343, 1344, 1346, 1348, 1349, 1351, 1352,       1339, 1341, 1342, 1343, 1344, 1345, 1346, 1347, 1348, 1349,
   
      1353, 1354, 1355, 1355, 1356, 1352, 1357, 1358, 1359, 1362,       1350, 1351, 1352, 1353, 1355, 1357, 1358, 1360, 1362, 1363,
      1356, 1361, 1357, 1358, 1360, 1360, 1363, 1361, 1364, 1366,       1364, 1365, 1366, 1366, 1367, 1363, 1368, 1369, 1370, 1373,
      1367, 1368, 1369, 1370, 1371, 1371, 1372, 1373, 1369, 1374,       1367, 1372, 1368, 1369, 1371, 1371, 1374, 1372, 1375, 1377,
      1374, 1375, 1372, 1376, 1378, 1379, 1380, 1375, 1381, 1382,       1378, 1379, 1380, 1381, 1382, 1382, 1383, 1384, 1380, 1385,
      1383, 1384, 1385, 1386, 1388, 1384, 1389, 1390, 1392, 1393,       1385, 1386, 1383, 1387, 1389, 1390, 1391, 1386, 1392, 1393,
      1394, 1396, 1397, 1398, 1399, 1401, 1402, 1403, 1405, 1407,       1394, 1395, 1396, 1397, 1399, 1395, 1400, 1401, 1403, 1404,
      1408, 1409, 1410, 1411, 1412, 1413, 1415, 1416, 1417, 1418,       1405, 1407, 1408, 1409, 1410, 1412, 1413, 1414, 1416, 1418,
      1420, 1421, 1422, 1423, 1424, 1425, 1426, 1427, 1428, 1429,       1419, 1420, 1421, 1422, 1423, 1424, 1426, 1427, 1428, 1429,
      1430, 1431, 1432, 1433, 1434, 1435, 1436, 1437, 1438, 1439,       1431, 1432, 1433, 1434, 1435, 1436, 1437, 1438, 1439, 1440,
      1421, 1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448,       1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, 1450,
   
      1449, 1450, 1451, 1453, 1454, 1456, 1457, 1458, 1460, 1462,       1432, 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458, 1459,
      1463, 1464, 1465, 1466, 1468, 1470, 1471, 1473, 1475, 1476,       1460, 1461, 1462, 1464, 1465, 1467, 1468, 1469, 1471, 1473,
      1478, 1479, 1480, 1482, 1483, 1484, 1485, 1486, 1487, 1488,       1474, 1475, 1476, 1477, 1479, 1481, 1482, 1484, 1486, 1487,
      1489, 1490, 1491, 1492, 1493, 1494, 1495, 1496, 1497, 1498,       1489, 1490, 1491, 1493, 1494, 1495, 1496, 1497, 1498, 1499,
      1498, 1499, 1501, 1502, 1503, 1504, 1506, 1499, 1505, 1505,       1500, 1501, 1502, 1503, 1504, 1505, 1506, 1507, 1508, 1509,
      1507, 1507, 1508, 1509, 1509, 1511, 1512, 1513, 1514, 1515,       1509, 1510, 1512, 1513, 1514, 1515, 1517, 1510, 1516, 1516,
      1515, 1516, 1517, 1518, 1519, 1520, 1521, 1516, 1517, 1518,       1518, 1518, 1519, 1520, 1520, 1522, 1523, 1524, 1525, 1526,
      1522, 1522, 1524, 1525, 1526, 1527, 1528, 1528, 1530, 1531,       1526, 1527, 1528, 1529, 1530, 1531, 1532, 1527, 1528, 1529,
      1532, 1533, 1534, 1534, 1535, 1536, 1537, 1538, 1539, 1540,       1533, 1533, 1535, 1536, 1537, 1538, 1539, 1539, 1541, 1542,
      1541, 1542, 1544, 1546, 1547, 1548, 1549, 1551, 1552, 1553,       1543, 1544, 1545, 1545, 1546, 1547, 1548, 1549, 1550, 1551,
   
      1555, 1556, 1558, 1559, 1561, 1562, 1563, 1564, 1566, 1567,       1552, 1553, 1555, 1557, 1558, 1559, 1560, 1562, 1563, 1564,
      1568, 1569, 1570, 1571, 1572, 1573, 1574, 1576, 1577, 1578,       1566, 1567, 1569, 1570, 1572, 1573, 1574, 1575, 1577, 1578,
      1579, 1580, 1581, 1582, 1583, 1584, 1585, 1586, 1587, 1588,       1579, 1580, 1581, 1582, 1583, 1584, 1585, 1587, 1588, 1589,
      1589, 1590, 1591, 1592, 1593, 1594, 1595, 1596, 1597, 1598,       1590, 1591, 1592, 1593, 1594, 1595, 1596, 1597, 1598, 1599,
      1599, 1600, 1601, 1602, 1604, 1605, 1607, 1608, 1610, 1612,       1600, 1601, 1602, 1603, 1604, 1605, 1606, 1607, 1608, 1609,
      1614, 1615, 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1624,       1610, 1611, 1612, 1613, 1615, 1616, 1618, 1619, 1621, 1623,
      1625, 1626, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1636,       1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1635,
      1637, 1638, 1639, 1640, 1640, 1641, 1642, 1644, 1645, 1646,       1636, 1637, 1639, 1640, 1641, 1642, 1643, 1644, 1645, 1647,
      1648, 1649, 1650, 1652, 1653, 1654, 1655, 1656, 1658, 1659,       1648, 1649, 1650, 1651, 1651, 1652, 1653, 1655, 1656, 1657,
      1660, 1661, 1662, 1662, 1663, 1664, 1664, 1665, 1666, 1666,       1659, 1660, 1661, 1663, 1664, 1665, 1666, 1667, 1669, 1670,
   
      1667, 1668, 1670, 1671, 1672, 1673, 1674, 1676, 1677, 1678,       1671, 1672, 1673, 1673, 1674, 1675, 1675, 1676, 1677, 1677,
      1679, 1680, 1682, 1683, 1684, 1685, 1687, 1688, 1689, 1690,       1678, 1679, 1681, 1682, 1683, 1684, 1685, 1687, 1688, 1689,
      1691, 1685, 1692, 1693, 1695, 1697, 1699, 1700, 1701, 1702,       1690, 1691, 1693, 1694, 1695, 1696, 1698, 1699, 1700, 1701,
      1703, 1704, 1706, 1708, 1709, 1711, 1712, 1714, 1715, 1717,       1702, 1696, 1703, 1704, 1706, 1708, 1710, 1711, 1712, 1713,
      1718, 1719, 1721, 1722, 1723, 1724, 1726, 1727, 1728, 1729,       1714, 1715, 1717, 1719, 1720, 1722, 1723, 1725, 1726, 1728,
      1730, 1731, 1732, 1734, 1736, 1737, 1738, 1739, 1740, 1741,       1729, 1730, 1732, 1733, 1734, 1735, 1737, 1738, 1739, 1740,
      1742, 1743, 1744, 1746, 1747, 1748, 1749, 1750, 1752, 1753,       1741, 1742, 1743, 1745, 1747, 1748, 1749, 1750, 1751, 1752,
      1754, 1756, 1757, 1758, 1759, 1760, 1761, 1762, 1764, 1766,       1753, 1754, 1755, 1757, 1758, 1759, 1760, 1761, 1763, 1764,
      1767, 1768, 1770, 1771, 1772, 1773, 1774, 1775, 1777, 1778,       1765, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1775, 1777,
      1779, 1780, 1781, 1782, 1783, 1784, 1785, 1786, 1787, 1788,       1778, 1779, 1781, 1782, 1783, 1784, 1785, 1786, 1788, 1789,
   
      1789, 1790, 1791, 1793, 1794, 1795, 1797, 1798, 1799, 1801,       1790, 1791, 1792, 1793, 1794, 1795, 1796, 1797, 1798, 1799,
      1802, 1803, 1804, 1805, 1806, 1807, 1808, 1809, 1810, 1811,       1800, 1801, 1802, 1804, 1805, 1806, 1808, 1809, 1810, 1812,
      1812, 1813, 1814, 1815, 1816, 1817, 1817, 1818, 1819, 1820,       1813, 1814, 1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822,
      1821, 1822, 1823, 1825, 1826, 1827, 1828, 1829, 1831, 1832,       1823, 1824, 1825, 1826, 1827, 1828, 1828, 1829, 1830, 1831,
      1833, 1834, 1835, 1837, 1838, 1840, 1841, 1842, 1844, 1845,       1832, 1833, 1834, 1836, 1837, 1838, 1839, 1840, 1842, 1843,
      1847, 1848, 1849, 1850, 1851, 1852, 1854, 1855, 1856, 1857,       1844, 1845, 1846, 1848, 1849, 1851, 1852, 1853, 1855, 1856,
      1858, 1859, 1861, 1862, 1864, 1865, 1866, 1867, 1869, 1871,       1858, 1859, 1860, 1861, 1862, 1863, 1865, 1866, 1867, 1868,
      1872, 1873, 1874, 1876, 1877, 1879, 1880, 1881, 1882, 1883,       1869, 1870, 1872, 1873, 1875, 1876, 1877, 1878, 1880, 1882,
      1884, 1885, 1886, 1887, 1888, 1889, 1890, 1891, 1892, 1893,       1883, 1884, 1885, 1887, 1888, 1890, 1891, 1892, 1893, 1894,
      1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903,       1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903, 1904,
   
      1904, 1905, 1906, 1907, 1908, 1909, 1910, 1911, 1912, 1913,       1905, 1906, 1907, 1908, 1909, 1910, 1911, 1912, 1913, 1914,
      1914, 1916, 1917, 1918, 1920, 1921, 1923, 1924, 1925, 1926,       1915, 1916, 1917, 1918, 1919, 1920, 1921, 1922, 1923, 1924,
      1928, 1929, 1931, 1932, 1934, 1935, 1936, 1938, 1939, 1940,       1925, 1927, 1928, 1929, 1931, 1932, 1934, 1935, 1936, 1937,
      1941, 1942, 1943, 1944, 1945, 1946, 1947, 1948, 1949, 1951,       1939, 1940, 1942, 1943, 1945, 1946, 1947, 1949, 1950, 1951,
      1952, 1953, 1955, 1956, 1958, 1960, 1961, 1963, 1965, 1967,       1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1962,
      1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1977,       1963, 1964, 1966, 1967, 1969, 1971, 1972, 1974, 1976, 1978,
      1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987,       1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988,
      1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,       1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
      1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006, 2007, 2009,       1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
      2010, 2012, 2014, 2015, 2016, 2017, 2018, 2019, 2021, 2022,       2009, 2010, 2011, 2012, 2013, 2014, 2015, 2017, 2018, 2020,
   
      2023, 2024, 2025, 2026, 2027, 2028, 2029, 2030, 2032, 2034,       2021, 2023, 2025, 2026, 2027, 2028, 2029, 2030, 2032, 2033,
      2035, 2036, 2037, 2038, 2039, 2040, 2041, 2042, 2043, 2044,       2034, 2035, 2036, 2037, 2038, 2039, 2040, 2041, 2043, 2045,
      2045, 2046, 2047, 2048, 2049, 2050, 2051, 2052, 2053, 2054,       2046, 2047, 2048, 2049, 2050, 2051, 2052, 2053, 2054, 2055,
      2055, 2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064,       2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065,
      2065, 2066, 2067, 2068, 2069, 2070, 2071, 2073, 2074, 2076,       2066, 2067, 2068, 2069, 2070, 2071, 2072, 2073, 2074, 2075,
      2078, 2079, 2080, 2081, 2082, 2084, 2086, 2088, 2090, 2092,       2076, 2077, 2078, 2079, 2080, 2081, 2082, 2084, 2085, 2087,
      2094, 2095, 2096, 2097, 2098, 2099, 2100, 2101, 2102, 2103,       2089, 2090, 2091, 2092, 2093, 2095, 2097, 2099, 2101, 2103,
      2104, 2105, 2106, 2107, 2108, 2109, 2110, 2111, 2112, 2113,       2105, 2106, 2107, 2108, 2109, 2110, 2111, 2112, 2113, 2114,
      2114, 2115, 2116, 2117, 2118, 2119, 2120, 2122, 2123, 2124,       2115, 2116, 2117, 2118, 2119, 2120, 2121, 2122, 2123, 2124,
      2125, 2126, 2127, 2128, 2129, 2130, 2131, 2132, 2133, 2134,       2125, 2126, 2127, 2128, 2129, 2130, 2131, 2133, 2134, 2135,
   
      2136, 2137, 2139, 2140, 2141, 2142, 2143, 2144, 2145, 2146,       2136, 2137, 2138, 2139, 2140, 2141, 2142, 2143, 2144, 2145,
      2147, 2148, 2149, 2151, 2152, 2153, 2154, 2155, 2156, 2157,       2147, 2148, 2150, 2151, 2152, 2153, 2154, 2155, 2156, 2157,
      2158, 2160, 2161, 2162, 2163, 2164, 2165, 2166, 2167, 2168,       2158, 2159, 2160, 2162, 2163, 2164, 2165, 2166, 2167, 2168,
      2170, 2171, 2172, 2173, 2175, 2176, 2177, 2178, 2180, 2181,       2169, 2171, 2172, 2173, 2174, 2175, 2176, 2177, 2178, 2179,
      2182, 2183, 2184, 2185, 2186, 2187, 2188, 2189, 2190, 2191,       2181, 2182, 2183, 2184, 2186, 2187, 2188, 2189, 2191, 2192,
      2193, 2194, 2195, 2197, 2198, 2200, 2201, 2203, 2204, 2206,       2193, 2194, 2195, 2196, 2197, 2198, 2199, 2200, 2201, 2202,
      2208, 2209, 2211, 2212, 2213, 2214, 2215, 2216, 2217, 2218,       2204, 2205, 2206, 2208, 2209, 2211, 2212, 2214, 2215, 2217,
      2220, 2222, 2223, 2225, 2227, 2228, 2230, 2231, 2232, 2233,       2219, 2220, 2222, 2223, 2224, 2225, 2226, 2227, 2228, 2229,
      2234, 2236, 2238, 2240, 2241, 2243, 2244, 2246, 2248, 2250,       2231, 2233, 2234, 2236, 2238, 2239, 2241, 2242, 2243, 2244,
      2252, 2254, 2255, 2257, 2258, 2260, 2261, 2263, 2265, 2267,       2245, 2247, 2249, 2251, 2252, 2254, 2255, 2257, 2259, 2261,
   
      2269, 2270, 2271, 2273, 2275, 2276, 2278, 2280, 2282, 2284,       2263, 2265, 2266, 2268, 2269, 2271, 2272, 2274, 2276, 2278,
      2285, 2287, 2289, 2291, 2293, 2293, 2294, 2294, 2295, 2295,       2280, 2281, 2282, 2284, 2286, 2287, 2289, 2291, 2293, 2295,
      2296, 2297, 2297, 2298, 2299, 2300, 2301, 2302, 2303, 2304,       2296, 2298, 2300, 2302, 2304, 2304, 2305, 2305, 2306, 2306,
      2305, 2306, 2307, 2308, 2309, 2310, 2311, 2312, 2313, 2314,       2307, 2308, 2308, 2309, 2310, 2311, 2312, 2313, 2314, 2315,
      2315, 2316, 2317, 2318, 2319, 2320, 2321, 2322, 2323, 2324,       2316, 2317, 2318, 2319, 2320, 2321, 2322, 2323, 2324, 2325,
      2325, 2326, 2327, 2328, 2329, 2330, 2331, 2332, 2333, 2334,       2326, 2327, 2328, 2329, 2330, 2331, 2332, 2333, 2334, 2335,
      2335, 2336, 2337, 2338, 2339, 2340, 2341, 2342, 2343, 2344,       2336, 2337, 2338, 2339, 2340, 2341, 2342, 2343, 2344, 2345,
      2345, 2346, 2347, 2348, 2349, 2350, 2351, 2352, 2353, 2354,       2346, 2347, 2348, 2349, 2350, 2351, 2352, 2353, 2354, 2355,
      2355, 2356, 2357, 2358, 2359, 2360, 2361, 2362, 2363, 2364,       2356, 2357, 2358, 2359, 2360, 2361, 2362, 2363, 2364, 2365,
      2365, 2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373, 2373,       2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373, 2374, 2375,
   
      2374, 2375, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2383,       2376, 2377, 2378, 2379, 2380, 2381, 2382, 2383, 2384, 2384,
      2384, 2385, 2386, 2387, 2388, 2389, 2390, 2391, 2392, 2393,       2385, 2386, 2387, 2388, 2389, 2390, 2391, 2392, 2393, 2394,
      2394, 2395, 2396, 2397, 2398, 2399, 2400, 2401, 2402, 2403,       2395, 2396, 2397, 2398, 2399, 2400, 2401, 2402, 2403, 2404,
      2404, 2405, 2406, 2407, 2408, 2409, 2410, 2411, 2412, 2413,       2405, 2406, 2407, 2408, 2409, 2410, 2411, 2412, 2413, 2414,
      2414, 2415, 2416, 2417, 2418, 2419, 2420, 2421, 2422, 2423,       2415, 2416, 2417, 2418, 2419, 2420, 2421, 2422, 2423, 2424,
      2424, 2425, 2426, 2427, 2428, 2429, 2430, 2431, 2432, 2433,       2425, 2426, 2427, 2428, 2429, 2430, 2431, 2432, 2433, 2434,
      2434, 2435, 2436, 2437, 2438, 2439, 2440, 2441, 2442, 2443,       2435, 2436, 2437, 2438, 2439, 2440, 2441, 2442, 2443, 2444,
      2444, 2445, 2446, 2447, 2448, 2449, 2450, 2451, 2452, 2453,       2445, 2446, 2447, 2448, 2449, 2450, 2451, 2452, 2453, 2454,
      2454, 2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, 2463,       2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, 2463, 2464,
      2464, 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, 2473,       2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, 2473, 2474,
   
      2474, 2475, 2476, 2477, 2478, 2479, 2480, 2481, 2482, 2483,       2475, 2476, 2477, 2478, 2479, 2480, 2481, 2482, 2483, 2484,
      2484, 2485, 2486, 2487, 2488, 2489, 2490, 2491, 2492, 2493,       2485, 2486, 2487, 2488, 2489, 2490, 2491, 2492, 2493, 2494,
      2494, 2495, 2496, 2497, 2498, 2499, 2500, 2501, 2502, 2503,       2495, 2496, 2497, 2498, 2499, 2500, 2501, 2502, 2503, 2504,
      2504, 2505, 2506, 2507, 2508, 2509, 2510, 2511, 2512, 2513,       2505, 2506, 2507, 2508, 2509, 2510, 2511, 2512, 2513, 2514,
      2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 2523,       2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 2523, 2524,
      2524, 2525, 2526, 2527, 2528, 2529, 2530, 2531, 2532, 2533,       2525, 2526, 2527, 2528, 2529, 2530, 2531, 2532, 2533, 2534,
      2534, 2535, 2536, 2537, 2538, 2539, 2540, 2541, 2542, 2543,       2535, 2536, 2537, 2538, 2539, 2540, 2541, 2542, 2543, 2544,
      2544, 2545, 2546, 2547, 2548, 2549, 2550, 2551,  619,  618,       2545, 2546, 2547, 2548, 2549, 2550, 2551, 2552, 2553, 2554,
       617,  616,  615,  613,  612,  611,  610,  609,  608,  607,       2555, 2556, 2557, 2558, 2559, 2560, 2561, 2562, 2563,  618,
       606,  605,  604,  603,  602,  601,  600,  599,  597,  596,        617,  616,  615,  614,  613,  612,  611,  610,  609,  608,
   
       595,  594,  593,  592,  591,  590,  589,  587,  586,  585,        607,  606,  605,  604,  602,  601,  600,  599,  598,  597,
       584,  583,  582,  580,  579,  578,  577,  576,  575,  574,        596,  595,  594,  592,  591,  590,  589,  588,  587,  585,
       573,  572,  571,  570,  569,  568,  567,  566,  565,  564,        584,  583,  582,  581,  580,  579,  578,  577,  576,  575,
       563,  562,  561,  560,  559,  557,  556,  555,  554,  552,        574,  573,  572,  571,  570,  569,  568,  567,  566,  565,
       550,  549,  548,  547,  546,  545,  544,  543,  542,  541,        564,  562,  561,  560,  559,  557,  555,  554,  553,  552,
       540,  539,  538,  537,  535,  534,  533,  532,  531,  530,        551,  550,  549,  548,  547,  546,  545,  544,  543,  542,
       529,  528,  527,  525,  524,  522,  521,  520,  519,  518,        541,  539,  538,  537,  536,  535,  534,  533,  532,  531,
       517,  516,  515,  513,  511,  510,  509,  508,  507,  506,        529,  528,  526,  525,  524,  523,  522,  521,  520,  519,
       505,  504,  503,  502,  501,  500,  499,  498,  497,  496,        517,  515,  514,  513,  512,  511,  510,  509,  508,  507,
       495,  493,  492,  491,  490,  489,  487,  486,  485,  484,        506,  505,  504,  503,  502,  501,  500,  499,  497,  496,
   
       483,  482,  481,  480,  479,  478,  477,  476,  475,  473,        495,  494,  493,  491,  490,  489,  488,  487,  486,  485,
       471,  470,  469,  468,  467,  466,  464,  463,  462,  461,        484,  483,  482,  481,  480,  479,  477,  475,  474,  473,
       460,  459,  458,  457,  456,  455,  453,  452,  449,  448,        472,  471,  470,  468,  467,  466,  465,  464,  463,  462,
       447,  446,  445,  444,  443,  442,  441,  440,  438,  437,        461,  460,  459,  457,  456,  453,  452,  451,  450,  449,
       436,  435,  434,  433,  432,  431,  430,  429,  428,  427,        448,  447,  446,  445,  444,  442,  441,  440,  439,  438,
       426,  425,  424,  422,  421,  420,  419,  418,  417,  416,        437,  436,  435,  434,  433,  432,  431,  430,  429,  428,
       415,  414,  413,  411,  410,  409,  407,  406,  405,  404,        426,  425,  424,  423,  422,  421,  420,  419,  418,  417,
       402,  401,  399,  398,  397,  396,  395,  394,  392,  391,        415,  414,  413,  411,  410,  409,  408,  407,  405,  404,
       389,  388,  387,  386,  385,  384,  383,  382,  381,  379,        402,  401,  400,  399,  398,  397,  395,  394,  392,  391,
       378,  377,  376,  375,  374,  373,  372,  371,  370,  369,        390,  389,  388,  387,  386,  385,  384,  382,  381,  380,
   
       368,  367,  366,  365,  364,  363,  362,  361,  360,  358,        379,  378,  377,  376,  375,  374,  373,  372,  371,  370,
       357,  356,  355,  354,  353,  352,  351,  350,  349,  348,        369,  368,  367,  366,  365,  364,  363,  361,  360,  359,
       347,  346,  345,  344,  343,  342,  341,  340,  339,  338,        358,  357,  356,  355,  354,  353,  352,  351,  350,  349,
       336,  335,  334,  332,  331,  330,  329,  328,  327,  326,        348,  347,  346,  345,  344,  343,  342,  341,  339,  338,
       325,  324,  323,  322,  321,  320,  319,  318,  317,  314,        337,  335,  334,  333,  332,  331,  330,  329,  328,  327,
       313,  311,  310,  309,  308,  305,  303,  302,  301,  300,        326,  325,  324,  323,  322,  321,  320,  317,  316,  314,
       299,  298,  297,  296,  295,  294,  293,  292,  291,  290,        313,  312,  311,  308,  306,  305,  304,  303,  302,  301,
       288,  287,  286,  285,  284,  283,  282,  281,  280,  279,        300,  299,  298,  297,  296,  295,  294,  293,  291,  290,
       278,  277,  276,  274,  273,  272,  271,  270,  269,  268,        289,  288,  287,  286,  285,  284,  283,  282,  281,  280,
       267,  266,  265,  264,  263,  262,  259,  258,  257,  256,        279,  277,  276,  275,  274,  273,  272,  271,  270,  269,
   
       255,  254,  253,  252,  251,  250,  249,  248,  247,  246,        268,  267,  266,  265,  262,  261,  260,  259,  258,  257,
       245,  243,  242,  241,  240,  239,  238,  235,  234,  232,        256,  255,  254,  253,  252,  251,  250,  249,  248,  247,
       231,  229,  228,  226,  225,  224,  223,  222,  221,  220,        245,  244,  243,  242,  241,  240,  237,  236,  234,  233,
       219,  218,  217,  216,  215,  214,  213,  212,  211,  210,        231,  230,  228,  227,  226,  225,  224,  223,  222,  221,
       209,  208,  207,  206,  204,  203,  202,  201,  200,  199,        220,  219,  218,  217,  216,  215,  214,  213,  212,  211,
       198,  197,  196,  195,  194,  193,  192,  191,  190,  189,        210,  209,  208,  206,  205,  204,  203,  202,  201,  200,
       188,  187,  186,  185,  184,  183,  182,  180,  179,  178,        199,  198,  197,  196,  195,  194,  193,  192,  191,  190,
       176,  175,  174,  172,  171,  170,  169,  168,  167,  166,        189,  188,  187,  186,  185,  184,  182,  181,  180,  178,
       165,  162,  161,  160,  159,  158,  157,  156,  155,  154,        177,  176,  174,  173,  172,  171,  170,  169,  168,  167,
       153,  152,  150,  148,  146,  145,  144,  139,  138,  137,        164,  163,  162,  161,  160,  159,  158,  157,  156,  155,
   
       136,  135,  134,  133,  132,  131,  130,  129,  128,  127,        154,  152,  150,  148,  147,  146,  145,  140,  139,  138,
       124,  120,  119,  118,  115,  113,  112,  110,  109,  108,        137,  136,  135,  134,  133,  132,  131,  130,  129,  128,
       107,  106,  102,  101,  100,   97,   96,   95,   93,   91,        125,  121,  120,  119,  116,  114,  113,  111,  110,  109,
        90,   89,   87,   86,   83,   82,   81,   80,   79,   78,        108,  107,  103,  102,  101,   98,   97,   96,   94,   92,
        76,   75,   74,   73,   72,   71,   70,   69,   68,   67,         91,   90,   88,   87,   84,   83,   82,   81,   80,   79,
        66,   65,   64,   63,   62,   61,   60,   59,   58,   57,         77,   76,   75,   74,   73,   72,   71,   70,   69,   68,
        56,   55,   53,   52,   51,   50,   48,   47,   46,   45,         67,   66,   65,   64,   63,   62,   61,   60,   59,   58,
        41,   37,   34,   30,   21,   10,    7, 2292, 2292, 2292,         57,   56,   55,   53,   52,   51,   50,   48,   47,   46,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,         45,   41,   37,   34,   30,   21,   10,    7, 2303, 2303,
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
   
      2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292,       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
      2292, 2292       2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303,
        2303, 2303, 2303
     } ;      } ;
   
 static yy_state_type yy_last_accepting_state;  static yy_state_type yy_last_accepting_state;
Line 1746
 
Line 1752
 #define REJECT reject_used_but_not_detected  #define REJECT reject_used_but_not_detected
 #define yymore() yymore_used_but_not_detected  #define yymore() yymore_used_but_not_detected
 #define YY_MORE_ADJ 0  #define YY_MORE_ADJ 0
   #define YY_RESTORE_YY_MORE_OFFSET
 char *yytext;  char *yytext;
 #line 1 "loader.l"  #line 1 "loader.l"
 #define INITIAL 0  #define INITIAL 0
 #line 2 "loader.l"  #line 2 "loader.l"
 /*  /*
  * static char *rcsid_object_c =   * static char *rcsid_object_c =
  *   "$Id: loader.c,v 1.19 2001/11/27 04:33:46 michtoen Exp $";   *   "$Id: loader.c,v 1.20 2001/12/03 07:51:39 mwedel Exp $";
  */   */
   
 /*  /*
Line 1797
 
Line 1804
 /* If you change this list (add/delete/rename), also update the list  /* If you change this list (add/delete/rename), also update the list
  * in crossedit/Attr.c, around line 360.  That list is the variables   * in crossedit/Attr.c, around line 360.  That list is the variables
  * that can be set in crossedit for various objects.   * that can be set in crossedit for various objects.
    * Realistically, these are not needed anymore - they were perhaps useful
    * at one point when both the loader and saver might have used them.
    * The only thing they are used for at all right now is some of the
    * get_ob_diff code uses these and indexes with the V_.. fields.
    * Most of the more recent changes just put the names write in the
    * get_ob_diff, which then also means you odn't really need to worry
    * about the V_ flags.
  */   */
 static char *variable_const[NR_OF_VARIABLES] = {  static char *variable_const[NR_OF_VARIABLES] = {
   "Object","name","race","slaying","msg","endmsg",    "Object","name","race","slaying","msg","endmsg",
Line 1834
 
Line 1848
   "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","sub_type", "sub_type2","casting_speed",    "weapontype","sub_type", "sub_type2","casting_speed",
     "elevation",
 /* 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 1933
 
Line 1948
 static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));  static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
 #endif  #endif
   
   #ifdef YY_NEED_STRLEN
   static int yy_flex_strlen YY_PROTO(( yyconst char * ));
   #endif
   
 #ifndef YY_NO_INPUT  #ifndef YY_NO_INPUT
 #ifdef __cplusplus  #ifdef __cplusplus
 static int yyinput YY_PROTO(( void ));  static int yyinput YY_PROTO(( void ));
Line 2058
 
Line 2077
 YY_DECL  YY_DECL
  {   {
  register yy_state_type yy_current_state;   register yy_state_type yy_current_state;
  register char *yy_cp, *yy_bp;   register char *yy_cp = NULL, *yy_bp = NULL;
  register int yy_act;   register int yy_act;
   
 #line 174 "loader.l"  #line 182 "loader.l"
   
   
   
Line 2123
 
Line 2142
  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 >= 2293 )   if ( yy_current_state >= 2304 )
  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] != 2578 );   while ( yy_base[yy_current_state] != 2589 );
   
 yy_find_action:  yy_find_action:
  yy_act = yy_accept[yy_current_state];   yy_act = yy_accept[yy_current_state];
Line 2160
 
Line 2179
 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 184 "loader.l"  #line 192 "loader.l"
 { BEGIN( MESSAGE ); msgbuf[0]='\0'; }  { BEGIN( MESSAGE ); msgbuf[0]='\0'; }
  YY_BREAK   YY_BREAK
 case 2:  case 2:
Line 2168
 
Line 2187
 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 185 "loader.l"  #line 193 "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 2181
 
Line 2200
  YY_BREAK   YY_BREAK
 case 3:  case 3:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 194 "loader.l"  #line 202 "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 195 "loader.l"  #line 203 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') {   if (*yv=='\0') {
Line 2199
 
Line 2218
  YY_BREAK   YY_BREAK
 case 5:  case 5:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 205 "loader.l"  #line 213 "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 2208
 
Line 2227
  YY_BREAK   YY_BREAK
 case 6:  case 6:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 210 "loader.l"  #line 218 "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 211 "loader.l"  #line 219 "loader.l"
 FREE_AND_COPY(op->slaying, yval());  FREE_AND_COPY(op->slaying, yval());
  YY_BREAK   YY_BREAK
 case 8:  case 8:
Line 2221
 
Line 2240
 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 212 "loader.l"  #line 220 "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 215 "loader.l"  #line 223 "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 2251
 
Line 2270
  YY_BREAK   YY_BREAK
 case 10:  case 10:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 237 "loader.l"  #line 245 "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 238 "loader.l"  #line 246 "loader.l"
 {  {
  if (strcmp (yval(), "NONE") == 0) {   if (strcmp (yval(), "NONE") == 0) {
      op->animation_id = 0;       op->animation_id = 0;
Line 2272
 
Line 2291
 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 248 "loader.l"  #line 256 "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 2284
 
Line 2303
 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 254 "loader.l"  #line 262 "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 255 "loader.l"  #line 263 "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 256 "loader.l"  #line 264 "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 257 "loader.l"  #line 265 "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 258 "loader.l"  #line 266 "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 259 "loader.l"  #line 267 "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 2318
 
Line 2337
  YY_BREAK   YY_BREAK
 case 19:  case 19:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 264 "loader.l"  #line 272 "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 265 "loader.l"  #line 273 "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 268 "loader.l"  #line 276 "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 269 "loader.l"  #line 277 "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 270 "loader.l"  #line 278 "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 271 "loader.l"  #line 279 "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 272 "loader.l"  #line 280 "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 273 "loader.l"  #line 281 "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 274 "loader.l"  #line 282 "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 275 "loader.l"  #line 283 "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 276 "loader.l"  #line 284 "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 277 "loader.l"  #line 285 "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 278 "loader.l"  #line 286 "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 279 "loader.l"  #line 287 "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 280 "loader.l"  #line 288 "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 281 "loader.l"  #line 289 "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 282 "loader.l"  #line 290 "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 283 "loader.l"  #line 291 "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 284 "loader.l"  #line 292 "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 285 "loader.l"  #line 293 "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 286 "loader.l"  #line 294 "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 287 "loader.l"  #line 295 "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 288 "loader.l"  #line 296 "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 289 "loader.l"  #line 297 "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 290 "loader.l"  #line 298 "loader.l"
 op->level = IVAL;  op->level = IVAL;
  YY_BREAK   YY_BREAK
 case 44:  case 44:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 291 "loader.l"  #line 299 "loader.l"
 op->direction = IVAL;  op->direction = IVAL;
  YY_BREAK   YY_BREAK
 case 45:  case 45:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 292 "loader.l"  #line 300 "loader.l"
 op->type = IVAL;  op->type = IVAL;
  YY_BREAK   YY_BREAK
 case 46:  case 46:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 293 "loader.l"  #line 301 "loader.l"
 op->material = IVAL;  op->material = IVAL;
  YY_BREAK   YY_BREAK
 case 47:  case 47:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 294 "loader.l"  #line 302 "loader.l"
 op->value = IVAL;  op->value = IVAL;
  YY_BREAK   YY_BREAK
 case 48:  case 48:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 295 "loader.l"  #line 303 "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 296 "loader.l"  #line 304 "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 297 "loader.l"  #line 305 "loader.l"
 op->attacktype = IVAL;  op->attacktype = IVAL;
  YY_BREAK   YY_BREAK
 case 51:  case 51:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 298 "loader.l"  #line 306 "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 299 "loader.l"  #line 307 "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 300 "loader.l"  #line 308 "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 301 "loader.l"  #line 309 "loader.l"
 op->invisible = IVAL;  op->invisible = IVAL;
  YY_BREAK   YY_BREAK
 case 55:  case 55:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 302 "loader.l"  #line 310 "loader.l"
 op->magic = IVAL;  op->magic = IVAL;
  YY_BREAK   YY_BREAK
 case 56:  case 56:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 303 "loader.l"  #line 311 "loader.l"
 op->state = IVAL;  op->state = IVAL;
  YY_BREAK   YY_BREAK
 case 57:  case 57:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 304 "loader.l"  #line 312 "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 305 "loader.l"  #line 313 "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 306 "loader.l"  #line 314 "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 307 "loader.l"  #line 315 "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 308 "loader.l"  #line 316 "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 309 "loader.l"  #line 317 "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 310 "loader.l"  #line 318 "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 311 "loader.l"  #line 319 "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 312 "loader.l"  #line 320 "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 313 "loader.l"  #line 321 "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 314 "loader.l"  #line 322 "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 315 "loader.l"  #line 323 "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 316 "loader.l"  #line 324 "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 317 "loader.l"  #line 325 "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 318 "loader.l"  #line 326 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NEUTRAL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NEUTRAL, IVAL);
  YY_BREAK   YY_BREAK
 case 72:  case 72:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 319 "loader.l"  #line 327 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_ATTACK, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_ATTACK, IVAL);
  YY_BREAK   YY_BREAK
 case 73:  case 73:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 320 "loader.l"  #line 328 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_DAMAGE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_DAMAGE, IVAL);
  YY_BREAK   YY_BREAK
 case 74:  case 74:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 321 "loader.l"  #line 329 "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 2608
 
Line 2627
  YY_BREAK   YY_BREAK
 case 75:  case 75:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 330 "loader.l"  #line 338 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_GENERATOR, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_GENERATOR, IVAL);
  YY_BREAK   YY_BREAK
 case 76:  case 76:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 331 "loader.l"  #line 339 "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 77:  case 77:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 332 "loader.l"  #line 340 "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 78:  case 78:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 333 "loader.l"  #line 341 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_TREASURE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_TREASURE, IVAL);
  YY_BREAK   YY_BREAK
 case 79:  case 79:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 334 "loader.l"  #line 342 "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 80:  case 80:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 335 "loader.l"  #line 343 "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 81:  case 81:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 336 "loader.l"  #line 344 "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 82:  case 82:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 337 "loader.l"  #line 345 "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 83:  case 83:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 338 "loader.l"  #line 346 "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 84:  case 84:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 339 "loader.l"  #line 347 "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 2663
 
Line 2682
  YY_BREAK   YY_BREAK
 case 85:  case 85:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 345 "loader.l"  #line 353 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_REFLECTING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_REFLECTING, IVAL);
  YY_BREAK   YY_BREAK
 case 86:  case 86:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 346 "loader.l"  #line 354 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CHANGING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CHANGING, IVAL);
  YY_BREAK   YY_BREAK
 case 87:  case 87:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 347 "loader.l"  #line 355 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SPLITTING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SPLITTING, IVAL);
  YY_BREAK   YY_BREAK
 case 88:  case 88:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 348 "loader.l"  #line 356 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_HITBACK, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_HITBACK, IVAL);
  YY_BREAK   YY_BREAK
 case 89:  case 89:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 349 "loader.l"  #line 357 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_STARTEQUIP, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_STARTEQUIP, IVAL);
  YY_BREAK   YY_BREAK
 case 90:  case 90:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 350 "loader.l"  #line 358 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_BLOCKSVIEW, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_BLOCKSVIEW, IVAL);
  YY_BREAK   YY_BREAK
 case 91:  case 91:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 351 "loader.l"  #line 359 "loader.l"
 op->arch->editable = IVAL;  op->arch->editable = IVAL;
  YY_BREAK   YY_BREAK
 case 92:  case 92:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 352 "loader.l"  #line 360 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_UNDEAD, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_UNDEAD, IVAL);
  YY_BREAK   YY_BREAK
 case 93:  case 93:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 353 "loader.l"  #line 361 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SCARED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SCARED, IVAL);
  YY_BREAK   YY_BREAK
 case 94:  case 94:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 354 "loader.l"  #line 362 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_UNAGGRESSIVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_UNAGGRESSIVE, IVAL);
  YY_BREAK   YY_BREAK
 case 95:  case 95:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 355 "loader.l"  #line 363 "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 96:  case 96:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 356 "loader.l"  #line 364 "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 97:  case 97:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 357 "loader.l"  #line 365 "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 98:  case 98:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 358 "loader.l"  #line 366 "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 2742
 
Line 2761
  YY_BREAK   YY_BREAK
 case 99:  case 99:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 368 "loader.l"  #line 376 "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 100:  case 100:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 369 "loader.l"  #line 377 "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 101:  case 101:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 370 "loader.l"  #line 378 "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 102:  case 102:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 371 "loader.l"  #line 379 "loader.l"
 op->stats.luck = IVAL;  op->stats.luck = IVAL;
  YY_BREAK   YY_BREAK
 case 103:  case 103:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 372 "loader.l"  #line 380 "loader.l"
 op->run_away = IVAL;  op->run_away = IVAL;
  YY_BREAK   YY_BREAK
 case 104:  case 104:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 373 "loader.l"  #line 381 "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 105:  case 105:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 374 "loader.l"  #line 382 "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 106:  case 106:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 375 "loader.l"  #line 383 "loader.l"
 op->pick_up = IVAL;  op->pick_up = IVAL;
  YY_BREAK   YY_BREAK
 case 107:  case 107:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 376 "loader.l"  #line 384 "loader.l"
 op->anim_speed = IVAL;  op->anim_speed = IVAL;
  YY_BREAK   YY_BREAK
 case 108:  case 108:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 377 "loader.l"  #line 385 "loader.l"
 op->weight_limit = IVAL;  op->weight_limit = IVAL;
  YY_BREAK   YY_BREAK
 case 109:  case 109:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 378 "loader.l"  #line 386 "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 110:  case 110:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 379 "loader.l"  #line 387 "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 111:  case 111:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 380 "loader.l"  #line 388 "loader.l"
 op->will_apply = IVAL;  op->will_apply = IVAL;
  YY_BREAK   YY_BREAK
 case 112:  case 112:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 381 "loader.l"  #line 389 "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 113:  case 113:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 382 "loader.l"  #line 390 "loader.l"
 op->can_apply = IVAL;  op->can_apply = IVAL;
  YY_BREAK   YY_BREAK
 case 114:  case 114:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 383 "loader.l"  #line 391 "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 115:  case 115:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 384 "loader.l"  #line 392 "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 116:  case 116:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 385 "loader.l"  #line 393 "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 117:  case 117:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 386 "loader.l"  #line 394 "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 118:  case 118:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 387 "loader.l"  #line 395 "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 119:  case 119:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 388 "loader.l"  #line 396 "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 120:  case 120:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 389 "loader.l"  #line 397 "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 121:  case 121:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 390 "loader.l"  #line 398 "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 122:  case 122:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 391 "loader.l"  #line 399 "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 123:  case 123:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 392 "loader.l"  #line 400 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_XRAYS, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_XRAYS, IVAL);
  YY_BREAK   YY_BREAK
 case 124:  case 124:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 393 "loader.l"  #line 401 "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 125:  case 125:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 394 "loader.l"  #line 402 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_LIFESAVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_LIFESAVE, IVAL);
  YY_BREAK   YY_BREAK
 case 126:  case 126:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 395 "loader.l"  #line 403 "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 127:  case 127:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 396 "loader.l"  #line 404 "loader.l"
 {  {
  SET_OR_CLEAR_FLAG(op, FLAG_SLEEP, IVAL);   SET_OR_CLEAR_FLAG(op, FLAG_SLEEP, IVAL);
  LOG(llevDebug," Warning: Object %s has sleep set in arch.\n",op->name);   /*(LOG(llevDebug," Warning: Object %s has sleep set in arch.\n",op->name);*/
      }       }
  YY_BREAK   YY_BREAK
 case 128:  case 128:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 400 "loader.l"  #line 408 "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 129:  case 129:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 401 "loader.l"  #line 409 "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 130:  case 130:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 402 "loader.l"  #line 410 "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 131:  case 131:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 405 "loader.l"  #line 413 "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 132:  case 132:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 407 "loader.l"  #line 415 "loader.l"
 SET_RESIST(op, ATNR_PHYSICAL, IVAL);  SET_RESIST(op, ATNR_PHYSICAL, IVAL);
  YY_BREAK   YY_BREAK
 case 133:  case 133:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 408 "loader.l"  #line 416 "loader.l"
 SET_RESIST(op, ATNR_MAGIC, IVAL);  SET_RESIST(op, ATNR_MAGIC, IVAL);
  YY_BREAK   YY_BREAK
 case 134:  case 134:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 409 "loader.l"  #line 417 "loader.l"
 SET_RESIST(op, ATNR_FIRE, IVAL);  SET_RESIST(op, ATNR_FIRE, IVAL);
  YY_BREAK   YY_BREAK
 case 135:  case 135:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 410 "loader.l"  #line 418 "loader.l"
 SET_RESIST(op, ATNR_ELECTRICITY, IVAL);  SET_RESIST(op, ATNR_ELECTRICITY, IVAL);
  YY_BREAK   YY_BREAK
 case 136:  case 136:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 411 "loader.l"  #line 419 "loader.l"
 SET_RESIST(op, ATNR_COLD, IVAL);  SET_RESIST(op, ATNR_COLD, IVAL);
  YY_BREAK   YY_BREAK
 case 137:  case 137:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 412 "loader.l"  #line 420 "loader.l"
 SET_RESIST(op, ATNR_CONFUSION, IVAL);  SET_RESIST(op, ATNR_CONFUSION, IVAL);
  YY_BREAK   YY_BREAK
 case 138:  case 138:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 413 "loader.l"  #line 421 "loader.l"
 SET_RESIST(op, ATNR_ACID, IVAL);  SET_RESIST(op, ATNR_ACID, IVAL);
  YY_BREAK   YY_BREAK
 case 139:  case 139:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 414 "loader.l"  #line 422 "loader.l"
 SET_RESIST(op, ATNR_DRAIN, IVAL);  SET_RESIST(op, ATNR_DRAIN, IVAL);
  YY_BREAK   YY_BREAK
 case 140:  case 140:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 415 "loader.l"  #line 423 "loader.l"
 SET_RESIST(op, ATNR_WEAPONMAGIC, IVAL);  SET_RESIST(op, ATNR_WEAPONMAGIC, IVAL);
  YY_BREAK   YY_BREAK
 case 141:  case 141:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 416 "loader.l"  #line 424 "loader.l"
 SET_RESIST(op, ATNR_GHOSTHIT, IVAL);  SET_RESIST(op, ATNR_GHOSTHIT, IVAL);
  YY_BREAK   YY_BREAK
 case 142:  case 142:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 417 "loader.l"  #line 425 "loader.l"
 SET_RESIST(op, ATNR_POISON, IVAL);  SET_RESIST(op, ATNR_POISON, IVAL);
  YY_BREAK   YY_BREAK
 case 143:  case 143:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 418 "loader.l"  #line 426 "loader.l"
 SET_RESIST(op, ATNR_SLOW, IVAL);  SET_RESIST(op, ATNR_SLOW, IVAL);
  YY_BREAK   YY_BREAK
 case 144:  case 144:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 419 "loader.l"  #line 427 "loader.l"
 SET_RESIST(op, ATNR_PARALYZE, IVAL);  SET_RESIST(op, ATNR_PARALYZE, IVAL);
  YY_BREAK   YY_BREAK
 case 145:  case 145:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 420 "loader.l"  #line 428 "loader.l"
 SET_RESIST(op, ATNR_TURN_UNDEAD, IVAL);  SET_RESIST(op, ATNR_TURN_UNDEAD, IVAL);
  YY_BREAK   YY_BREAK
 case 146:  case 146:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 421 "loader.l"  #line 429 "loader.l"
 SET_RESIST(op, ATNR_FEAR, IVAL);  SET_RESIST(op, ATNR_FEAR, IVAL);
  YY_BREAK   YY_BREAK
 case 147:  case 147:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 422 "loader.l"  #line 430 "loader.l"
 SET_RESIST(op, ATNR_CANCELLATION, IVAL);  SET_RESIST(op, ATNR_CANCELLATION, IVAL);
  YY_BREAK   YY_BREAK
 case 148:  case 148:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 423 "loader.l"  #line 431 "loader.l"
 SET_RESIST(op, ATNR_DEPLETE, IVAL);  SET_RESIST(op, ATNR_DEPLETE, IVAL);
  YY_BREAK   YY_BREAK
 case 149:  case 149:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 424 "loader.l"  #line 432 "loader.l"
 SET_RESIST(op, ATNR_DEATH, IVAL);  SET_RESIST(op, ATNR_DEATH, IVAL);
  YY_BREAK   YY_BREAK
 case 150:  case 150:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 425 "loader.l"  #line 433 "loader.l"
 SET_RESIST(op, ATNR_CHAOS, IVAL);  SET_RESIST(op, ATNR_CHAOS, IVAL);
  YY_BREAK   YY_BREAK
 case 151:  case 151:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 426 "loader.l"  #line 434 "loader.l"
 SET_RESIST(op, ATNR_COUNTERSPELL, IVAL);  SET_RESIST(op, ATNR_COUNTERSPELL, IVAL);
  YY_BREAK   YY_BREAK
 case 152:  case 152:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 427 "loader.l"  #line 435 "loader.l"
 SET_RESIST(op, ATNR_GODPOWER, IVAL);  SET_RESIST(op, ATNR_GODPOWER, IVAL);
  YY_BREAK   YY_BREAK
 case 153:  case 153:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 428 "loader.l"  #line 436 "loader.l"
 SET_RESIST(op, ATNR_HOLYWORD, IVAL);  SET_RESIST(op, ATNR_HOLYWORD, IVAL);
  YY_BREAK   YY_BREAK
 case 154:  case 154:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 429 "loader.l"  #line 437 "loader.l"
 SET_RESIST(op, ATNR_BLIND, IVAL);  SET_RESIST(op, ATNR_BLIND, IVAL);
  YY_BREAK   YY_BREAK
 case 155:  case 155:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 430 "loader.l"  #line 438 "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 156:  case 156:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 433 "loader.l"  #line 441 "loader.l"
 set_protection(op, IVAL, RESIST_IMMUNE);  set_protection(op, IVAL, RESIST_IMMUNE);
  YY_BREAK   YY_BREAK
 case 157:  case 157:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 434 "loader.l"  #line 442 "loader.l"
 set_protection(op, IVAL, RESIST_PROT);  set_protection(op, IVAL, RESIST_PROT);
  YY_BREAK   YY_BREAK
 case 158:  case 158:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 435 "loader.l"  #line 443 "loader.l"
 set_protection(op, IVAL, RESIST_VULN);  set_protection(op, IVAL, RESIST_VULN);
  YY_BREAK   YY_BREAK
 case 159:  case 159:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 437 "loader.l"  #line 445 "loader.l"
 op->move_type = IVAL;  op->move_type = IVAL;
  YY_BREAK   YY_BREAK
 case 160:  case 160:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 438 "loader.l"  #line 446 "loader.l"
 op->move_status = IVAL;  op->move_status = IVAL;
  YY_BREAK   YY_BREAK
 case 161:  case 161:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 439 "loader.l"  #line 447 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CONFUSED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CONFUSED, IVAL);
  YY_BREAK   YY_BREAK
 case 162:  case 162:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 440 "loader.l"  #line 448 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_STEALTH, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_STEALTH, IVAL);
  YY_BREAK   YY_BREAK
 case 163:  case 163:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 441 "loader.l"  #line 449 "loader.l"
 add_button_link(op, op->map, IVAL);  add_button_link(op, op->map, IVAL);
  YY_BREAK   YY_BREAK
 case 164:  case 164:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 442 "loader.l"  #line 450 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CURSED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CURSED, IVAL);
  YY_BREAK   YY_BREAK
 case 165:  case 165:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 443 "loader.l"  #line 451 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_DAMNED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_DAMNED, IVAL);
  YY_BREAK   YY_BREAK
 case 166:  case 166:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 444 "loader.l"  #line 452 "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 167:  case 167:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 445 "loader.l"  #line 453 "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 168:  case 168:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 446 "loader.l"  #line 454 "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 169:  case 169:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 447 "loader.l"  #line 455 "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 170:  case 170:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 448 "loader.l"  #line 456 "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 171:  case 171:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 449 "loader.l"  #line 457 "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 3116
 
Line 3135
  YY_BREAK   YY_BREAK
 case 172:  case 172:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 453 "loader.l"  #line 461 "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 173:  case 173:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 454 "loader.l"  #line 462 "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 174:  case 174:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 455 "loader.l"  #line 463 "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 175:  case 175:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 456 "loader.l"  #line 464 "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 176:  case 176:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 457 "loader.l"  #line 465 "loader.l"
 op->expmul = FVAL;  op->expmul = FVAL;
  YY_BREAK   YY_BREAK
 case 177:  case 177:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 458 "loader.l"  #line 466 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_UNIQUE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_UNIQUE, IVAL);
  YY_BREAK   YY_BREAK
 case 178:  case 178:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 459 "loader.l"  #line 467 "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 179:  case 179:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 460 "loader.l"  #line 468 "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 180:  case 180:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 461 "loader.l"  #line 469 "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 181:  case 181:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 462 "loader.l"  #line 470 "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 182:  case 182:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 463 "loader.l"  #line 471 "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 183:  case 183:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 464 "loader.l"  #line 472 "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 184:  case 184:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 465 "loader.l"  #line 473 "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 185:  case 185:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 466 "loader.l"  #line 474 "loader.l"
 op->glow_radius = IVAL;  op->glow_radius = IVAL;
  YY_BREAK   YY_BREAK
 case 186:  case 186:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 467 "loader.l"  #line 475 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_BLIND, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_BLIND, IVAL);
  YY_BREAK   YY_BREAK
 case 187:  case 187:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 468 "loader.l"  #line 476 "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 188:  case 188:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 469 "loader.l"  #line 477 "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 189:  case 189:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 470 "loader.l"  #line 478 "loader.l"
 op->randomitems = find_treasurelist(yval());  op->randomitems = find_treasurelist(yval());
  YY_BREAK   YY_BREAK
 case 190:  case 190:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 471 "loader.l"  #line 479 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_DUST, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_DUST, IVAL);
  YY_BREAK   YY_BREAK
 case 191:  case 191:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 472 "loader.l"  #line 480 "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 192:  case 192:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 473 "loader.l"  #line 481 "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 193:  case 193:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 475 "loader.l"  #line 483 "loader.l"
 { /* Some archetypes have these values in them */ }  { /* Some archetypes have these values in them */ }
  YY_BREAK   YY_BREAK
 case 194:  case 194:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 476 "loader.l"  #line 484 "loader.l"
 { /* Probably the pupland archetypes - I imagined */ }  { /* Probably the pupland archetypes - I imagined */ }
  YY_BREAK   YY_BREAK
 case 195:  case 195:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 477 "loader.l"  #line 485 "loader.l"
 { /* That these are for the new combat code */ }  { /* That these are for the new combat code */ }
  YY_BREAK   YY_BREAK
 case 196:  case 196:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 478 "loader.l"  #line 486 "loader.l"
 { /* just ignore for now */ }  { /* just ignore for now */ }
  YY_BREAK   YY_BREAK
 case 197:  case 197:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 479 "loader.l"  #line 487 "loader.l"
 { }  { }
  YY_BREAK   YY_BREAK
 case 198:  case 198:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 480 "loader.l"  #line 488 "loader.l"
 op->weapontype = FVAL;  op->weapontype = FVAL;
  YY_BREAK   YY_BREAK
 case 199:  case 199:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 481 "loader.l"  #line 489 "loader.l"
 op->sub_type1 = (char) IVAL;  op->sub_type1 = (char) IVAL;
  YY_BREAK   YY_BREAK
 case 200:  case 200:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 482 "loader.l"  #line 490 "loader.l"
 op->sub_type2 = (char) IVAL;  op->sub_type2 = (char) IVAL;
  YY_BREAK   YY_BREAK
 case 201:  case 201:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 483 "loader.l"  #line 491 "loader.l"
 op->casting_speed = FVAL;  op->casting_speed = FVAL;
  YY_BREAK   YY_BREAK
 case 202:  case 202:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 484 "loader.l"  #line 492 "loader.l"
   op->elevation = IVAL;
    YY_BREAK
   case 203:
   YY_RULE_SETUP
   #line 494 "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 3276
 
Line 3300
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 203:  case 204:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 492 "loader.l"  #line 502 "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 3288
 
Line 3312
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 204:  case 205:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 500 "loader.l"  #line 510 "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 3300
 
Line 3324
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 205:  case 206:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 508 "loader.l"  #line 518 "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 3312
 
Line 3336
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 206:  case 207:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 516 "loader.l"  #line 526 "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 3324
 
Line 3348
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 207:  case 208:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 524 "loader.l"  #line 534 "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 3336
 
Line 3360
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 208:  case 209:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 532 "loader.l"  #line 542 "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 3348
 
Line 3372
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 209:  case 210:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 540 "loader.l"  #line 550 "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 3360
 
Line 3384
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 210:  case 211:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 548 "loader.l"  #line 558 "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 3372
 
Line 3396
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 211:  case 212:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 556 "loader.l"  #line 566 "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 3384
 
Line 3408
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 212:  case 213:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 564 "loader.l"  #line 574 "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 3396
 
Line 3420
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 213:  case 214:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 572 "loader.l"  #line 582 "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 3408
 
Line 3432
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 214:  case 215:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 580 "loader.l"  #line 590 "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 3420
 
Line 3444
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 215:  case 216:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 588 "loader.l"  #line 598 "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 3432
 
Line 3456
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 216:  case 217:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 596 "loader.l"  #line 606 "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 3444
 
Line 3468
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 217:  case 218:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 604 "loader.l"  #line 614 "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 3456
 
Line 3480
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 218:  case 219:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 612 "loader.l"  #line 622 "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 3468
 
Line 3492
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 219:  case 220:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 620 "loader.l"  #line 630 "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 3480
 
Line 3504
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 220:  case 221:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 628 "loader.l"  #line 638 "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 3492
 
Line 3516
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 221:  case 222:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 636 "loader.l"  #line 646 "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 3504
 
Line 3528
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 222:  case 223:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 644 "loader.l"  #line 654 "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 3516
 
Line 3540
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 223:  case 224:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 652 "loader.l"  #line 662 "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 3528
 
Line 3552
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 224:  case 225:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 660 "loader.l"  #line 670 "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 3540
 
Line 3564
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 225:  case 226:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 668 "loader.l"  #line 678 "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 3552
 
Line 3576
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 226:  case 227:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 676 "loader.l"  #line 686 "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 3564
 
Line 3588
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 227:  case 228:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 684 "loader.l"  #line 694 "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 3576
 
Line 3600
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 228:  case 229:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 692 "loader.l"  #line 702 "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 3588
 
Line 3612
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 229:  case 230:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 700 "loader.l"  #line 710 "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 3600
 
Line 3624
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 230:  case 231:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 708 "loader.l"  #line 718 "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 3612
 
Line 3636
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 231:  case 232:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 716 "loader.l"  #line 726 "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 3624
 
Line 3648
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 232:  case 233:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 724 "loader.l"  #line 734 "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 3636
 
Line 3660
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 233:  case 234:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 732 "loader.l"  #line 742 "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 3648
 
Line 3672
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 234:  case 235:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 740 "loader.l"  #line 750 "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 3660
 
Line 3684
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 235:  case 236:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 748 "loader.l"  #line 758 "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 3672
 
Line 3696
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 236:  case 237:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 756 "loader.l"  #line 766 "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 3684
 
Line 3708
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 237:  case 238:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 764 "loader.l"  #line 774 "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 3696
 
Line 3720
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 238:  case 239:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 772 "loader.l"  #line 782 "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 3708
 
Line 3732
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 239:  case 240:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 780 "loader.l"  #line 790 "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 3720
 
Line 3744
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 240:  case 241:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 788 "loader.l"  #line 798 "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 3732
 
Line 3756
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 241:  case 242:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 796 "loader.l"  #line 806 "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 3744
 
Line 3768
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 242:  case 243:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 804 "loader.l"  #line 814 "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 3756
 
Line 3780
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 243:  case 244:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 812 "loader.l"  #line 822 "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 3768
 
Line 3792
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 244:  case 245:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 820 "loader.l"  #line 830 "loader.l"
 { char *yv=yval();  { char *yv=yval();
  if (*yv=='\0') LOG(llevError,"Event (timer) without val\n");   if (*yv=='\0') LOG(llevError,"Event (timer) without val\n");
  else   else
Line 3779
 
Line 3803
  };   };
  }   }
  YY_BREAK   YY_BREAK
 case 245:  case 246:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 827 "loader.l"  #line 837 "loader.l"
 { char *yv=yval();  { char *yv=yval();
  if (*yv=='\0') LOG(llevError,"Event (timer) without plugin\n");   if (*yv=='\0') LOG(llevError,"Event (timer) without plugin\n");
  else   else
Line 3790
 
Line 3814
  };   };
  }   }
  YY_BREAK   YY_BREAK
 case 246:  case 247:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 834 "loader.l"  #line 844 "loader.l"
 { char *yv=yval();  { char *yv=yval();
  if (*yv=='\0') LOG(llevError,"Event (timer) without options\n");   if (*yv=='\0') LOG(llevError,"Event (timer) without options\n");
  else   else
Line 3801
 
Line 3825
  };   };
  }   }
  YY_BREAK   YY_BREAK
 case 247:  case 248:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 842 "loader.l"  #line 852 "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 3813
 
Line 3837
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 248:  case 249:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 850 "loader.l"  #line 860 "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 3825
 
Line 3849
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 249:  case 250:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 858 "loader.l"  #line 868 "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 3837
 
Line 3861
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 250:  case 251:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 866 "loader.l"  #line 876 "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 3849
 
Line 3873
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 251:  case 252:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 874 "loader.l"  #line 884 "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 3861
 
Line 3885
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 252:  case 253:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 882 "loader.l"  #line 892 "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 3873
 
Line 3897
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 253:  case 254:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 890 "loader.l"  #line 900 "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 3885
 
Line 3909
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 254:  case 255:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 898 "loader.l"  #line 908 "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 3897
 
Line 3921
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 255:  case 256:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 906 "loader.l"  #line 916 "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 3909
 
Line 3933
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 256:  case 257:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 914 "loader.l"  #line 924 "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 3921
 
Line 3945
                                                 };                                                  };
      }       }
  YY_BREAK   YY_BREAK
 case 257:  case 258:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 923 "loader.l"  #line 933 "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 258:  case 259:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 924 "loader.l"  #line 934 "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 926 "loader.l"  #line 936 "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 259:  case 260:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 928 "loader.l"  #line 938 "loader.l"
 { yyerror( "Unrecognized string"); lex_error= -1; }  { yyerror( "Unrecognized string"); lex_error= -1; }
  YY_BREAK   YY_BREAK
 case 260:  case 261:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 929 "loader.l"  #line 939 "loader.l"
 ECHO;  ECHO;
  YY_BREAK   YY_BREAK
   
Line 3956
 
Line 3980
   
  /* Undo the effects of YY_DO_BEFORE_ACTION. */   /* Undo the effects of YY_DO_BEFORE_ACTION. */
  *yy_cp = yy_hold_char;   *yy_cp = yy_hold_char;
    YY_RESTORE_YY_MORE_OFFSET
   
  if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )   if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
  {   {
Line 4101
 
Line 4126
  { /* Don't try to fill the buffer, so this is an EOF. */   { /* Don't try to fill the buffer, so this is an EOF. */
  if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )   if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
  {   {
  /* We matched a singled characater, the EOB, so   /* We matched a single character, the EOB, so
  * treat this as a final EOF.   * treat this as a final EOF.
  */   */
  return EOB_ACT_END_OF_FILE;   return EOB_ACT_END_OF_FILE;
Line 4128
 
Line 4153
  /* don't do the read, it's not guaranteed to return an EOF,   /* don't do the read, it's not guaranteed to return an EOF,
  * just force an EOF   * just force an EOF
  */   */
  yy_n_chars = 0;   yy_current_buffer->yy_n_chars = yy_n_chars = 0;
   
  else   else
  {   {
Line 4183
 
Line 4208
  /* Read in more data. */   /* Read in more data. */
  YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),   YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
  yy_n_chars, num_to_read );   yy_n_chars, num_to_read );
   
    yy_current_buffer->yy_n_chars = yy_n_chars;
  }   }
   
  if ( yy_n_chars == 0 )   if ( yy_n_chars == 0 )
Line 4235
 
Line 4262
  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 >= 2293 )   if ( yy_current_state >= 2304 )
  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 4270
 
Line 4297
  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 >= 2293 )   if ( yy_current_state >= 2304 )
  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 == 2292);   yy_is_jam = (yy_current_state == 2303);
   
  return yy_is_jam ? 0 : yy_current_state;   return yy_is_jam ? 0 : yy_current_state;
  }   }
Line 4308
 
Line 4335
   
  yy_cp += (int) (dest - source);   yy_cp += (int) (dest - source);
  yy_bp += (int) (dest - source);   yy_bp += (int) (dest - source);
    yy_current_buffer->yy_n_chars =
  yy_n_chars = yy_current_buffer->yy_buf_size;   yy_n_chars = yy_current_buffer->yy_buf_size;
   
  if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )   if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Line 4346
 
Line 4374
   
  else   else
  { /* need more input */   { /* need more input */
  yytext_ptr = yy_c_buf_p;   int offset = yy_c_buf_p - yytext_ptr;
  ++yy_c_buf_p;   ++yy_c_buf_p;
   
  switch ( yy_get_next_buffer() )   switch ( yy_get_next_buffer() )
  {   {
    case EOB_ACT_LAST_MATCH:
    /* This happens because yy_g_n_b()
    * sees that we've accumulated a
    * token and flags that we need to
    * try matching the token before
    * proceeding.  But for input(),
    * there's no matching to consider.
    * So convert the EOB_ACT_LAST_MATCH
    * to EOB_ACT_END_OF_FILE.
    */
   
    /* Reset buffer status. */
    yyrestart( yyin );
   
    /* fall through */
   
  case EOB_ACT_END_OF_FILE:   case EOB_ACT_END_OF_FILE:
  {   {
  if ( yywrap() )   if ( yywrap() )
  {  
  yy_c_buf_p =  
  yytext_ptr + YY_MORE_ADJ;  
  return EOF;   return EOF;
  }  
   
  if ( ! yy_did_buffer_switch_on_eof )   if ( ! yy_did_buffer_switch_on_eof )
  YY_NEW_FILE;   YY_NEW_FILE;
Line 4370
 
Line 4410
  }   }
   
  case EOB_ACT_CONTINUE_SCAN:   case EOB_ACT_CONTINUE_SCAN:
  yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;   yy_c_buf_p = yytext_ptr + offset;
  break;   break;
   
  case EOB_ACT_LAST_MATCH:  
 #ifdef __cplusplus  
  YY_FATAL_ERROR(  
  "unexpected last match in yyinput()" );  
 #else  
  YY_FATAL_ERROR(  
  "unexpected last match in input()" );  
 #endif  
  }   }
  }   }
  }   }
Line 4545
 
Line 4576
 #endif  #endif
   
  {   {
    if ( ! b )
    return;
   
  b->yy_n_chars = 0;   b->yy_n_chars = 0;
   
  /* We always need two end-of-buffer characters.  The first causes   /* We always need two end-of-buffer characters.  The first causes
Line 4604
 
Line 4638
   
 #ifndef YY_NO_SCAN_STRING  #ifndef YY_NO_SCAN_STRING
 #ifdef YY_USE_PROTOS  #ifdef YY_USE_PROTOS
 YY_BUFFER_STATE yy_scan_string( yyconst char *str )  YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
 #else  #else
 YY_BUFFER_STATE yy_scan_string( str )  YY_BUFFER_STATE yy_scan_string( yy_str )
 yyconst char *str;  yyconst char *yy_str;
 #endif  #endif
  {   {
  int len;   int len;
  for ( len = 0; str[len]; ++len )   for ( len = 0; yy_str[len]; ++len )
  ;   ;
   
  return yy_scan_bytes( str, len );   return yy_scan_bytes( yy_str, len );
  }   }
 #endif  #endif
   
Line 4735
 
Line 4769
  { \   { \
  /* Undo effects of setting up yytext. */ \   /* Undo effects of setting up yytext. */ \
  yytext[yyleng] = yy_hold_char; \   yytext[yyleng] = yy_hold_char; \
  yy_c_buf_p = yytext + n - YY_MORE_ADJ; \   yy_c_buf_p = yytext + n; \
  yy_hold_char = *yy_c_buf_p; \   yy_hold_char = *yy_c_buf_p; \
  *yy_c_buf_p = '\0'; \   *yy_c_buf_p = '\0'; \
  yyleng = n; \   yyleng = n; \
Line 4761
 
Line 4795
  }   }
 #endif  #endif
   
   #ifdef YY_NEED_STRLEN
   #ifdef YY_USE_PROTOS
   static int yy_flex_strlen( yyconst char *s )
   #else
   static int yy_flex_strlen( s )
   yyconst char *s;
   #endif
    {
    register int n;
    for ( n = 0; s[n]; ++n )
    ;
   
    return n;
    }
   #endif
   
   
 #ifdef YY_USE_PROTOS  #ifdef YY_USE_PROTOS
 static void *yy_flex_alloc( yy_size_t size )  static void *yy_flex_alloc( yy_size_t size )
Line 4807
 
Line 4857
  return 0;   return 0;
  }   }
 #endif  #endif
 #line 929 "loader.l"  #line 939 "loader.l"
   
   
   
Line 4925
 
Line 4975
   
 /* Start of C code */  /* Start of C code */
   
 char *variables[NR_OF_VARIABLES];  
   
 /* This array equates the FLAG_ values with the V_ values.  Use -1 to  /* This array equates the FLAG_ values with the V_ values.  Use -1 to
  * put gaps in the array that should not be processed.   * put gaps in the array that should not be processed.
  * The order matches the order of the define values in 'define.h'.   * The order matches the order of the define values in 'define.h'.
Line 5002
 
Line 5050
  */   */
   
 void init_vars() {  void init_vars() {
   int i;  
   for(i=0;i<NR_OF_VARIABLES;i++)  
     variables[i]=add_string(variable_const[i]);  
 }  }
 /*  /*
  * Returns a pointer to a static string which contains all variables   * Returns a pointer to a static string which contains all variables
Line 5393
 
Line 5438
     sprintf(buf2,"weapontype %d\n",op->weapontype);      sprintf(buf2,"weapontype %d\n",op->weapontype);
     strcat(buf,buf2);      strcat(buf,buf2);
   }    }
     if (op->elevation && op->elevation != op2->elevation) {
       sprintf(buf2,"elevation %d\n", op->elevation);
     }
   
   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]) !=
Line 5475
 
Line 5523
   
   
   
   


Legend:
line(s) removed in v.1.19 
line(s) changed
 line(s) added in v.1.20

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