Difference for common/loader.c from version 1.12 to 1.13


version 1.12 version 1.13
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.12 2001/04/09 06:59:46 mwedel Exp $   * $Header: /cvsroot/crossfire/crossfire/common/loader.c,v 1.13 2001/06/13 10:48:43 michtoen Exp $
  */   */
   
 #define FLEX_SCANNER  #define FLEX_SCANNER
Line 285
 
Line 285
  *yy_cp = '\0'; \   *yy_cp = '\0'; \
  yy_c_buf_p = yy_cp;   yy_c_buf_p = yy_cp;
   
 #define YY_NUM_RULES 198  #define YY_NUM_RULES 230
 #define YY_END_OF_BUFFER 199  #define YY_END_OF_BUFFER 231
 static yyconst short int yy_accept[1707] =  static yyconst short int yy_accept[1951] =
     {   0,      {   0,
       197,  197,    3,    3,  199,  197,  195,  197,  197,  197,        229,  229,    3,    3,    6,    6,  231,  229,  227,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,    3,    3,    3,  197,  197,  196,  197,  195,        229,  229,  229,  229,    3,    3,    3,    6,    6,    6,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  228,  229,  227,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
   
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,    3,    3,    3,    3,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,    3,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,          3,    3,    3,    6,    6,    6,    6,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
   
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,   40,   40,  197,   41,   41,    3,   39,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
        39,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,   61,   61,  229,   62,   62,    3,    6,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,         60,   60,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,   13,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,   29,   29,        229,  229,  229,  229,  229,  229,  229,   34,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,         50,   50,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
         1,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
   
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,    1,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,   31,   31,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,   38,        229,   52,   52,  229,  229,  229,  229,  229,  229,  229,
        38,  197,  197,  197,  197,  197,    3,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,   59,   59,  229,  229,  229,  229,  229,    3,
       197,  197,  197,  197,  197,  197,  197,  197,   26,   26,          6,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,   24,   24,  197,  197,  197,  197,   37,   37,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
        23,   23,  197,  197,   35,   35,  197,  197,  197,  197,        229,  229,   47,   47,  229,   45,   45,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,   27,        229,  229,   58,   58,  229,   44,   44,  229,  229,   56,
   
        27,  197,  197,  197,  197,  197,  197,  197,  197,  197,         56,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,   48,   48,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,   12,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,   28,   28,  197,        229,  229,   33,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,   22,   22,  197,        229,  229,   49,   49,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,   25,   25,   95,   95,  197,    3,  197,        229,  229,  229,   43,   43,  229,  229,  229,  229,  229,
       197,  197,  197,  197,    9,    9,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,   46,
   
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,         46,  116,  116,  229,    3,    6,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,   30,   30,  229,  229,  229,  229,  229,  229,  229,
       197,   21,   21,  197,  197,  197,   36,   36,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,   42,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,         42,  229,  229,  229,   57,   57,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,   99,   99,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,    5,    5,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,   42,        229,  229,  229,  229,  120,  120,  229,  229,  229,  229,
        42,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,   26,   26,  229,  229,  229,  229,
       197,    6,    6,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,   63,   63,  229,
   
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,   27,
       197,  197,  197,   45,   45,  197,  197,  197,  197,  197,         27,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,    3,   57,   57,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,   66,   66,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,    3,    6,   78,   78,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,   33,   33,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,   54,   54,
       197,   43,   43,  197,   55,   55,  197,  197,  197,   30,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
   
        30,   32,   32,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,   64,   64,  229,   76,   76,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,   51,   51,   53,   53,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  124,  124,  197,   18,   18,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,   56,   56,  197,  197,  168,  168,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,   47,   47,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  145,  145,
       197,  197,  197,  120,  120,    3,    2,  197,  197,  197,        229,   39,   39,  229,  229,  229,  229,  229,   77,   77,
       197,  128,  128,  197,  197,  197,  197,  197,  197,  197,        229,  229,  189,  189,  229,  229,  229,  229,  229,   68,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,         68,  229,  229,  229,  229,  229,  229,  141,  141,    3,
       197,  197,  197,  197,  161,  161,  162,  162,  197,  197,          2,    6,  229,  229,  229,  229,  149,  149,  229,  229,
   
       173,  173,  197,   66,   66,   69,   69,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  153,  153,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        182,  182,  183,  183,  229,  229,  194,  194,  229,   87,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,         87,   90,   90,  229,  229,  229,  229,  229,  229,  174,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        174,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,    4,    4,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,   25,   25,  229,
       197,   90,   90,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,   89,   89,  174,  174,   59,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
   
        59,  197,  197,  197,  197,   48,   48,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  111,  111,  229,
        58,   58,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       193,  193,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  110,  110,  195,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        195,   80,   80,  229,  229,  229,  229,   69,   69,  229,
       197,  197,   67,   67,  197,  197,  197,  197,   85,   85,          6,  229,  229,   79,   79,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  187,  187,  197,        229,  229,  229,  214,  214,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
        15,   15,  197,  197,  197,  197,   70,   70,  197,   60,        229,  229,  229,  229,  229,  229,   88,   88,  229,  229,
        60,   61,   61,  106,  106,  197,  197,   63,   63,   62,        229,  229,  106,  106,  229,  229,  229,  229,  229,  229,
        62,  197,  197,  197,  197,  189,  189,  197,  197,  197,        229,  208,  208,  229,  229,  229,  229,  229,  229,  229,
   
       197,  197,  197,  103,  103,  197,  197,  197,  197,  197,        229,  229,  229,  229,   36,   36,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,         91,   91,  229,   81,   81,   82,   82,  127,  127,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,   84,   84,   83,   83,  229,  229,  229,  229,  210,
       197,  197,  197,  197,  197,    7,    7,  197,  197,  197,        210,  229,  229,  229,  229,  229,  229,  124,  124,  229,
       197,  197,  159,  159,  197,  197,  197,  197,  197,   64,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
        64,   96,   96,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,   78,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
        78,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,   28,
       197,   49,   49,   83,   83,  158,  158,  197,  197,  197,         28,  229,  229,  229,  229,  229,  229,  180,  180,  229,
        88,   88,   71,   71,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,   85,   85,  117,  117,  229,    6,
   
         8,  197,  197,  183,  183,  197,  121,  121,  178,  178,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,   17,   17,  197,  197,        229,  229,  229,  229,  229,   99,   99,  229,  229,  229,
       122,  122,  197,   46,   46,   34,   34,  197,  197,   94,        229,  229,  229,  229,  229,  229,  229,   70,   70,  104,
        94,  197,  197,  188,  188,  197,  197,  197,  197,  197,        104,  179,  179,  229,  229,  229,  229,  109,  109,   92,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,         92,  229,  229,  229,  229,  229,  229,   29,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        204,  204,  229,  142,  142,  199,  199,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,   38,   38,  229,  229,  143,  143,  229,
       197,  197,  100,  100,  197,  197,  197,  197,  197,  197,         67,   67,   55,   55,  229,  229,  115,  115,  229,  229,
       197,  197,   75,   75,  197,  197,   65,   65,  197,  197,        209,  209,  229,  229,  229,  229,  229,  229,  229,  229,
        11,   11,  197,  197,  197,  197,  197,  197,  110,  110,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
   
       197,  197,  197,  197,  191,  191,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  160,  160,  105,        229,  229,  229,  229,  229,  229,  229,  229,  229,  121,
       105,   44,   44,   72,   72,  197,  197,  197,  197,  197,        121,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,   54,   54,  197,  197,   73,   73,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  177,  177,  197,  197,  197,   14,   14,  197,  197,         96,   96,  229,  229,   86,   86,  229,    6,  229,   32,
       197,  197,  197,  197,  197,  197,  101,  101,  197,  197,         32,  229,  229,  229,  229,  229,  229,  131,  131,  229,
       197,  154,  154,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  212,  212,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  181,  181,  126,  126,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,   65,   65,   93,   93,  229,  229,  229,  229,  229,
       197,  197,  197,  197,   20,   20,  197,   84,   84,  197,        229,  229,  229,   75,   75,  229,  229,   94,   94,  229,
   
       197,   98,   98,  197,  197,  197,  104,  104,   76,   76,        229,  198,  198,  229,  229,  229,   35,   35,  229,  229,
       197,   50,   50,   74,   74,  197,   87,   87,  197,  197,        229,  229,  229,  229,  229,  229,  122,  122,  229,  229,
       192,  192,  197,  197,  197,  197,  197,  197,  197,  197,        229,  175,  175,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,   81,   81,  176,  176,  197,  197,  197,   80,   80,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,   16,   16,  197,  157,  157,  197,  107,  107,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,   10,   10,  197,  197,  197,  197,  197,        229,  229,  229,  229,   41,   41,  229,  105,  105,  229,
       197,  197,  197,   82,   82,  197,  197,  197,  197,  197,        229,  229,  119,  119,  229,  229,  229,    6,    5,    6,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        125,  125,   97,   97,  229,   71,   71,   95,   95,  229,
       197,  197,  197,  197,  197,  197,  197,  197,  197,  197,        108,  108,  229,  229,  213,  213,  229,  229,  229,  229,
   
       197,   19,   19,  197,   86,   86,  197,  155,  155,  108,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       108,  197,  197,  197,  197,  197,  197,  197,  197,  114,        229,  229,  229,  229,  229,  229,  102,  102,  197,  197,
       114,  197,  197,  170,  170,  197,  197,  197,  197,  182,        229,  229,  229,  101,  101,  229,  229,   37,   37,  229,
       182,  197,  197,  197,  197,  197,  197,   68,   68,  185,        178,  178,  229,  128,  128,  229,  229,  229,   31,   31,
       185,   79,   79,  197,  197,  197,  197,  197,  123,  123,        229,  229,  229,  229,  229,  229,  229,  229,  103,  103,
       127,  127,  197,   53,   53,  197,  126,  126,  197,  186,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       186,  197,  197,  135,  135,  197,  197,  197,  133,  133,        229,  229,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  197,  197,  197,  143,  143,  131,  131,        229,  229,  229,  229,  229,  229,  229,  229,  229,  218,
       197,  197,  197,  197,  197,  197,  197,  197,  140,  140,        218,  229,  229,  229,  229,  229,  229,   40,   40,  229,
       197,  197,  197,  197,  125,  125,  197,  197,  167,  167,        229,  107,  107,  229,  176,  176,  129,  129,    6,    6,
   
       197,  197,  197,  197,  197,  197,  172,  172,  117,  117,          6,    6,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  113,  113,  197,  197,  197,  197,  197,  197,        135,  135,  229,  229,  191,  191,  229,  229,  229,  229,
       197,  165,  165,  197,  197,  197,  197,   51,   51,  197,        229,  203,  203,  229,  229,  229,  229,  229,  229,   89,
       197,  197,  197,  151,  151,  197,  147,  147,  197,  197,         89,  206,  206,  100,  100,  229,  229,  229,  229,  229,
       146,  146,  197,  136,  136,  197,  197,  197,  197,  197,        144,  144,  148,  148,  229,   74,   74,  229,  147,  147,
       130,  130,  197,  197,  197,  197,  197,  163,  163,  197,        229,  207,  207,  229,  229,  156,  156,  229,  229,  229,
        91,   91,  197,  197,  197,  190,  190,  102,  102,  197,        154,  154,  229,  229,  229,  229,  229,  229,  164,  164,
       197,  197,  166,  166,  197,  119,  119,  197,  169,  169,        152,  152,  229,  229,  229,  229,  229,  229,  229,  229,
       197,  197,  197,  164,  164,  197,   97,   97,  197,   52,        161,  161,  229,  229,  229,  229,  229,  219,  219,  216,
        52,  197,  197,   93,   93,  197,  197,  197,  197,  197,        216,  224,  224,  229,  221,  221,  229,  229,  229,  146,
   
       197,  197,  197,  197,  197,  197,  139,  139,  197,  197,        146,  229,  229,    6,    6,    6,    6,    6,    6,    6,
        77,   77,  197,  111,  111,  194,  194,  197,  115,  115,          6,    6,  229,  188,  188,  229,  229,  229,  229,  229,
       112,  112,  116,  116,  171,  171,  197,  118,  118,  197,        229,  193,  193,  138,  138,  229,  229,  134,  134,  229,
       175,  175,  181,  181,  197,  197,  197,  197,  197,  145,        229,  229,  229,  229,  229,  229,  229,  186,  186,  229,
       145,  197,  197,  197,  197,  197,  197,  197,  197,  197,        229,  229,  229,   72,   72,  229,  229,  229,  229,  172,
       156,  156,  184,  184,  179,  179,  197,  109,  109,   92,        172,  229,  168,  168,  229,  229,  167,  167,  229,  157,
        92,  197,  197,  197,  197,  138,  138,  149,  149,  150,        157,  229,  229,  229,  229,  229,  151,  151,  229,  229,
       150,  152,  152,  141,  141,  129,  129,  197,  197,  180,        229,  229,  229,  217,  217,  229,  225,  225,  223,  223,
       180,  197,  134,  134,  197,  197,  197,  197,  197,  197,        229,  184,  184,  229,  229,  229,  229,  229,  229,  112,
       197,  197,  197,  197,  197,  132,  132,  142,  142,  137,        112,    6,    6,    6,    6,    6,    6,    6,    6,    6,
   
       137,  144,  144,  148,  148,    0        229,  229,  229,  211,  211,  123,  123,  229,  229,  229,
         187,  187,  229,  229,  140,  140,  229,  190,  190,  229,
         229,  229,  185,  185,  229,  118,  118,  229,   73,   73,
         229,  229,  114,  114,  229,  229,  229,  229,  229,  229,
         229,  229,  229,  229,  229,  160,  160,  229,  229,  222,
         222,  229,   98,   98,  229,  229,  229,  229,  229,  229,
         229,  229,  229,  229,    6,    6,    6,    6,    6,   10,
           6,    6,    6,    6,  229,  132,  132,  215,  215,  229,
         136,  136,  133,  133,  137,  137,  229,  192,  192,  229,
         139,  139,  229,  196,  196,  202,  202,  229,  229,  229,
   
         229,  229,  166,  166,  229,  229,  229,  229,  229,  229,
         229,  229,  229,  220,  220,  229,  229,  229,  229,  229,
         229,  229,  229,  229,  229,    6,    6,    6,    6,   18,
           6,   22,    6,    6,   14,    6,  177,  177,  205,  205,
         229,  200,  200,  229,  130,  130,  113,  113,  229,  229,
         229,  229,  159,  159,  170,  170,  171,  171,  173,  173,
         162,  162,  150,  150,  229,  229,  229,  229,  229,  229,
         229,  229,    9,  229,  229,  229,  229,    6,    8,    6,
           6,   24,    6,   20,    6,  229,  201,  201,  229,  155,
         155,  229,  229,  229,  229,  229,  229,  229,  229,   17,
   
         229,    4,  229,   21,  229,  229,   13,  229,    6,   16,
           6,  229,  229,  229,  229,  229,  229,  229,    7,  229,
         229,   23,  229,   19,  229,    6,   12,  229,  229,  229,
         153,  153,  163,  163,  158,  158,  229,   15,  229,  229,
         165,  165,  169,  169,  229,   11,  229,  226,  226,    0
     } ;      } ;
   
 static yyconst int yy_ec[256] =  static yyconst int yy_ec[256] =
Line 519
 
Line 545
         1,    1,    1          1,    1,    1
     } ;      } ;
   
 static yyconst short int yy_base[1901] =  static yyconst short int yy_base[2158] =
     {   0,      {   0,
         0,    6,   37,   38, 1921,    0, 1922, 1917,    0,   41,          0,    6,   37,   38,   39,   43, 2220,    0, 2221, 2216,
        30,   37,   45,   52,   59,   60,   66,   66, 1898,   82,          0,   46,   35,   44,   45,   37,   56,   51,   69,   68,
        80,   83,   49,   91,   89,  108,  107, 1897,   47,  114,       2197,   74,   75,   83,   89,   95,   72,  111,   97, 2196,
        46, 1915,    0,   91, 1895,    0, 1912, 1922,   98,    0,         79,  116,   94, 2214,    0,  110, 2194,    0,  131, 2193,
      1912, 1897, 1896, 1888,   36, 1883, 1882, 1896, 1885,   90,          0, 2210, 2221,  135,    0, 2210, 2195, 2194, 2186,   94,
      1898, 1884, 1879, 1883, 1871, 1876, 1884, 1888, 1875, 1887,       2181, 2180, 2194, 2183,  106, 2196, 2182, 2177, 2181, 2169,
      1864, 1873, 1878, 1872, 1870, 1883, 1864, 1862, 1886, 1875,       2174, 2182, 2186, 2173, 2185, 2162, 2171, 2176, 2170, 2168,
      1866,   85, 1878, 1862, 1857, 1853, 1868, 1870,  107,  108,       2181, 2162, 2160, 2184, 2173, 2164,   33, 2176, 2160, 2155,
      1865, 1858, 1865, 1869, 1853, 1857,   35, 1858,  114, 1862,       2151, 2166, 2168,  121,  120, 2163, 2156, 2163, 2167, 2151,
      1841, 1848,  126,  129, 1848, 1860, 1855,  136,  141,  137,       2155,   87, 2156,  116, 2160, 2139, 2146,  134,  133, 2146,
   
      1858, 1838, 1852, 1840,  143, 1843, 1842,  131, 1858, 1843,        139, 2154,  145,  149,  146, 2157, 2137, 2151, 2139,  154,
       137, 1856, 1849, 1854,    0,  159,    0, 1844, 1852, 1824,       2142, 2141,   99, 2157, 2142,  147, 2155, 2148, 2153,    0,
      1832, 1832, 1835, 1827, 1840, 1825, 1825, 1835, 1837, 1818,        158,    0, 2143,    0,  167,    0, 2142, 2150, 2122, 2130,
       107,  163, 1816,  150, 1839, 1828, 1812,  165,  167, 1826,       2130, 2133, 2125, 2138, 2123, 2123, 2133, 2135, 2116,  154,
       165, 1826, 1824, 1823, 1804, 1823, 1825, 1822, 1828, 1808,        172,  153,  174, 2138, 2127, 2111,  179,  181, 2125,  180,
      1800, 1825,  166,  183, 1796, 1798, 1812, 1811, 1804, 1805,       2125, 2123, 2122, 2103, 2122, 2124, 2121, 2127, 2107, 2099,
      1808, 1807,  160, 1792, 1805, 1804,  177, 1803, 1803,  203,       2124,  182,  194, 2095, 2097, 2111, 2110, 2103, 2104, 2107,
      1800, 1800, 1804, 1778, 1797, 1782, 1792, 1788, 1803, 1777,       2106,  197, 2091, 2104, 2103,  188, 2102, 2102,  214, 2099,
      1791, 1791, 1782, 1784, 1792, 1773, 1790, 1764, 1783, 1764,       2099, 2103, 2077, 2096, 2081, 2091, 2087, 2102, 2076, 2090,
      1791, 1780, 1775,  174, 1782, 1787, 1763, 1768, 1778, 1773,       2090, 2081, 2083, 2091, 2072, 2080, 2088, 2062, 2081, 2062,
   
      1770, 1771, 1758, 1773, 1752, 1758, 1760, 1770, 1774, 1761,       2089, 2078, 2073,  189, 2080, 2085, 2061, 2066, 2076, 2071,
      1755, 1771, 1770,    0, 1769, 1738,    0, 1767, 1748,    0,       2068, 2069, 2056, 2071, 2050, 2056, 2058, 2068, 2072, 2059,
      1765, 1754,  181,  186, 1763, 1736, 1753, 1755, 1754, 1742,       2053, 2069, 2068,    0, 2067, 2036,    0, 2065, 2046, 2058,
       222, 1727, 1756, 1743, 1754, 1727, 1742, 1745, 1740, 1749,          0, 2062, 2051,  210,  168, 2060, 2033, 2050, 2052, 2051,
      1738, 1747, 1738, 1739,  201, 1922, 1744, 1717, 1742, 1721,       2039,  233, 2024, 2053, 2040, 2051, 2024, 2039, 2042, 2037,
      1721, 1739, 1719, 1714, 1731, 1725, 1711, 1727,    0, 1732,       2036, 2045, 2034, 2043, 2034, 2035,  217, 2221, 2040, 2013,
      1706, 1711, 1729, 1711, 1708, 1702, 1706, 1707, 1717, 1696,       2038, 2017, 2017, 2035, 2015, 2010, 2027, 2021, 2007, 2023,
      1704, 1706,  191, 1695, 1698, 1698, 1711, 1698, 1690, 1713,          0, 2028, 2002, 2007, 2025, 2007, 2004, 1998, 2002, 2003,
      1704, 1706, 1687, 1686, 1687, 1686, 1681,  205, 1700,  218,       2013, 1992, 2000, 2002,  198, 1991, 1994, 1994, 2007, 1994,
      1922, 1704, 1698, 1679, 1687, 1694,  209,  182, 1699, 1690,       1986, 2009, 2000, 2002, 1983, 1982, 1983, 1982, 1977,  226,
   
      1684, 1691, 1672, 1689, 1688, 1687, 1691, 1680, 1689, 1668,       1996,  228, 2221, 2000, 1994, 1975, 1983, 1990,  230,  170,
      1677, 1662, 1679, 1674,  169, 1669, 1661, 1676,    0, 1680,       1995, 1986, 1980, 1987, 1968, 1985, 1984, 1983, 1987, 1976,
      1670, 1653, 1668, 1651, 1665, 1657, 1673, 1667, 1661, 1646,       1985, 1964, 1973, 1958, 1975, 1970, 1958,  231, 1964, 1956,
      1669, 1656, 1661, 1640, 1651, 1654, 1653, 1657, 1633,    0,       1971,    0, 1975, 1965, 1948, 1963, 1946, 1960, 1952, 1968,
      1660, 1646, 1653, 1657, 1656, 1631, 1630, 1653, 1628, 1626,       1962, 1956, 1941, 1964, 1951, 1956, 1935, 1946, 1949, 1948,
      1640, 1644, 1648, 1624, 1630, 1639, 1638, 1619, 1621,  207,       1952, 1928,    0, 1955, 1941, 1948, 1952, 1951, 1926, 1925,
      1635, 1622, 1620, 1632, 1617, 1626, 1611, 1620,    0, 1633,       1924, 1947, 1922, 1920, 1934, 1938, 1942, 1918, 1924, 1933,
      1618,    0, 1631, 1606, 1621, 1614, 1618,    0, 1626, 1616,       1932, 1913, 1915,  178, 1929, 1916, 1914, 1926, 1911, 1920,
         0, 1624, 1598, 1615,    0, 1621, 1603, 1619,  184, 1606,       1905, 1914,    0, 1927, 1912,    0, 1925, 1900, 1915, 1908,
      1617, 1607, 1609, 1591, 1613, 1602, 1603, 1596, 1599,    0,       1902, 1911,    0, 1919, 1909,    0, 1917, 1891, 1908,    0,
   
      1608, 1587, 1581, 1591, 1590, 1589, 1576, 1577, 1580, 1582,       1914, 1896, 1912,  229, 1899, 1910, 1900, 1902, 1884, 1906,
      1575, 1574, 1586, 1575, 1589,  227, 1593, 1586, 1591, 1590,       1895, 1896, 1889, 1892,    0, 1901, 1880, 1874, 1884, 1883,
      1575, 1574, 1581, 1586, 1585, 1574,  225, 1922, 1559, 1582,       1882, 1869, 1870, 1873, 1875, 1868, 1867, 1879, 1868, 1882,
       228, 1561, 1551, 1567, 1554, 1569, 1566, 1561,  212, 1574,        248, 1886, 1879, 1884, 1883, 1868, 1867, 1874, 1879, 1878,
      1548, 1558, 1565, 1565, 1544,  235, 1542,    0, 1567, 1558,       1867,  230, 2221, 1852, 1875,  237, 1854, 1844, 1860, 1847,
      1565, 1546, 1555, 1537, 1533, 1551, 1540, 1539, 1538, 1556,       1862, 1859, 1854,  223, 1867, 1841, 1851, 1858, 1858, 1837,
      1537,  247, 1529, 1548, 1542, 1551, 1525,    0, 1549, 1539,        246, 1835,    0, 1860, 1851, 1858, 1839, 1848, 1830, 1826,
      1547, 1520, 1545, 1521, 1534, 1532, 1532, 1540, 1516, 1518,       1844, 1827, 1832, 1831, 1830, 1848, 1829,  262, 1821, 1840,
      1523, 1511, 1529,    0, 1534,    0, 1533, 1532, 1519, 1530,        258, 1844, 1818,    0, 1842, 1832, 1840, 1813, 1838, 1814,
      1508, 1514, 1518, 1506,    0, 1525, 1524,  224, 1502, 1501,       1827, 1825, 1825, 1833, 1809, 1811, 1816, 1804, 1822,    0,
   
      1494, 1499, 1495, 1493, 1499, 1495, 1495,  230, 1497, 1503,       1827,    0, 1826, 1825, 1812, 1815, 1822, 1800, 1806, 1810,
      1502, 1492, 1491, 1499, 1483, 1488, 1506, 1505, 1490, 1486,       1798,    0, 1817, 1816,  245, 1794, 1793, 1786, 1791, 1787,
      1502,    0, 1501, 1489, 1499, 1498,    0, 1497, 1479, 1470,       1785, 1791, 1787, 1787,  241, 1789, 1795, 1794, 1784, 1783,
      1488, 1493, 1486, 1475, 1479, 1489, 1480, 1467, 1479, 1467,       1791, 1775, 1780, 1773, 1797, 1796, 1781, 1777, 1793,    0,
      1465, 1466, 1457, 1461, 1463, 1459, 1459, 1468, 1467,  202,       1792, 1780, 1790, 1789,    0, 1788, 1770, 1761, 1779, 1784,
      1469, 1451, 1463, 1451, 1471, 1443,    0, 1469, 1468, 1448,       1777, 1766, 1770, 1780, 1771, 1758, 1770, 1758, 1756, 1757,
      1460, 1457, 1464, 1463, 1439, 1436,    0, 1460, 1440, 1448,       1748, 1752, 1754, 1750, 1750, 1759, 1758,  258, 1760, 1742,
      1436, 1451, 1441, 1430, 1437, 1427, 1434, 1444, 1439,    0,       1754, 1742, 1762, 1734,    0, 1760, 1759, 1739, 1751, 1748,
      1448, 1447, 1421, 1420, 1438, 1430, 1417, 1431, 1430, 1418,       1755, 1754, 1730, 1727,    0, 1751, 1731, 1739, 1727, 1742,
      1413,    0, 1437,  245, 1411, 1430, 1428, 1433, 1402, 1404,       1732, 1721, 1728, 1718, 1725, 1735, 1730,    0, 1739, 1738,
   
      1418, 1429, 1408, 1427, 1409, 1411, 1400, 1401, 1422, 1408,       1712, 1711, 1729, 1721, 1708, 1722, 1721, 1709, 1704,    0,
        58,  102,  121,    0,  181,  245,  256,  257,  260,  261,       1728,  266, 1702, 1721, 1719, 1724, 1718, 1692, 1694, 1708,
       256,  252,  233,  265,  245,  267,  268,    0,  270,  262,         49,   71,  148,  173,  192,  189,  210,  251,  274,  262,
       253,  274,  256,  276,  259,  248,  258,  259,  267,  265,        257,  278,  256,    0,  281,  272,  283,  284,  285,  286,
       258,  284,  280,  280,  279,  265,  265,  273,  286,  287,        281,  277,  258,  290,  270,  292,  293,  272,    0,  297,
       281,  282,  286,  286,  287,  298,  299,  280,  291,  302,        288,  279,  300,  282,  302,  285,  274,  284,  285,  293,
       303,  304,  305,  276,  287,  299,    0,  309,  301,  311,        291,  284,  310,  306,  306,  305,  291,  291,  299,  312,
       298,  313,  298,  292,  299,  311,  309,  310,  320,  298,        313,  307,  308,  312,  312,  313,  319,  325,  326,  307,
       292,  295,  318,  320,  316,  301,  322,  304,  324,  325,        318,  329,  330,  331,  332,  303,  314,  326,    0,  336,
       332,    0,  333,  324,    0,  335,  309,  320,  328,    0,        328,  338,  325,  340,  325,  319,  326,  338,  336,  337,
   
       339,    0,  340,  341,  336,  343,  344,  345,  325,  339,        347,  325,  319,  322,  345,  347,  343,  328,  349,  331,
       348,  349,  340,  334,  335,  334,  354,  355,  331,  334,        351,  352,  359,    0,  360,  351,    0,  362,  336,  347,
       335,  334,  341,  340,  362,  353,  346,  340,  361,  370,        355,    0,  366,    0,  367,  368,  363,  370,  371,  372,
       337,  368,  341,  356,  371,    0,  372,  346,    0,  374,        352,  366,  375,  376,  367,  361,  362,  361,  381,  382,
       375,  367,  362,  363,    0,  390,  392,  365,    0,  396,        358,  361,  362,  361,  368,  367,  389,  380,  373,  367,
       387,  375,  400,  401,  402,    0,  403,  397,  394,  406,        388,  397,  364,  395,  420,  368,  383,  398,    0,  399,
       407,  408,  388,    0,  410,  411, 1922,  403,  395,  415,        373,    0,  401,  402,  394,  389,  408,  391,    0,  419,
       408,    0,  417,  398,  398,  403,  404,  412,  393,  419,        420,  395,    0,  424,  417,  404,  430,  431,  432,    0,
       425,  420,  410,  412,  399,  425,  431,  418,  427,  435,        433,  427,  424,  436,  438,  439,  419,    0,  441,  442,
       436,  437,  429,  416,    0,  441,    0,  442,  424,  444,       2221,  432,  437,  429,  449,  442,    0,  451,  432,  432,
   
         0,  445,  446,    0,  447,    0,  448,  449,  429,  439,        437,  438,  446,  427,  453,  459,  454,  444,  446,  433,
       424,  456,  447,    0,  458,  449,  430,  451,  437,  463,        459,  465,  452,  461,  469,  470,  471,  463,  450,  447,
       441,  465,  466,  467,  449,  462,  444,  462,  449,  461,          0,  476,    0,  477,  459,  479,    0,  480,  481,    0,
       474,  467,  459,  477,  478,  465,  480,  481,  482,  458,        482,    0,  483,  486,  464,  474,  460,  491,  482,    0,
       484,  485,  486,  470,  488,  489,  490,  462,  487,  493,        493,  484,  465,  486,  472,  498,  476,  500,  501,  502,
       482,    0,  495,  496,  491,  490,  473,  474,  487,  492,        484,  497,  479,  497,  484,  496,  509,  502,  494,  512,
       503,  495,  485,  496,  489,  489,  501,  493,  505,  504,        513,  500,  515,  516,  517,  493,  519,  520,  521,  505,
       495,  505,  503,  497,  501,  515,  516,  507,  500,  518,        523,  524,  525,  497,  522,  528,  517,    0,  530,  531,
       530,    0,  531,  519,  509,  534,  525,  526,  526,  525,        526,  525,  508,  509,  522,  527,  538,  530,  520,  531,
       526,  541,  523,  543,  520,    0,  545,    0,  546,    0,        524,  524,  536,  528,  540,  539,  530,  540,  538,  532,
   
       547,  531,  549,  550,  551,    0,  552,  536,  545,  555,        536,  550,  551,  542,  535,  553,  565,    0,  566,  547,
         0,  556,  547,  531,  549,  530,  547,  534,  563,  540,        557,  549,  564,  560,  562,  552,  577,  568,  568,  569,
         0,  565,  543,  557,  561,  569,  545,  571,  553,  550,        568,  561,  571,  586,  568,  588,  566,    0,  591,    0,
       554,  555,  562,  569,  573,  578,  580,  581,  584,  586,        592,    0,  593,  577,  595,  596,  597,    0,  598,  582,
       587,  588,    0,  589,  590,  591,  566,  588,    0,  594,        579,  592,  602,    0,  603,  594,  578,  596,  577,  594,
       586,  587,  596,  598,  589,  600,  581,    0,  602,  603,        581,  610,  587,    0,  612,  590,  604,  608,  616,  592,
       604,  605,  589,  586,  608,  585,  596,  611,  602,  613,        618,  600,  597,  601,  602,  609,  616,  620,  625,  627,
         0,  614,  615,  592,  617,  618,    0,  619,  610,    0,        628,  631,  633,  624,  635,  636,    0,  637,  638,  639,
       621,    0,  622,    0,  623,  618,  625,    0,  626,    0,        614,  636,    0,  642,  634,  635,  644,  646,  637,  648,
       627,  603,  615,  630,  606,    0,  632,  625,  621,  635,        629,    0,  650,  651,  652,  653,  637,  634,  656,  633,
   
       617,  627,  621,    0,  639,  640,  614,  624,  629,  623,        644,  659,  650,  661,    0,  662,  663,  640,  665,  666,
       633,  632,  633,  629,  643,  633,  645,  647,  644,  649,          0,  667,  658,    0,  669,    0,  670,    0,  671,  666,
       633,  637,  649,  643,  636,  650,  640,  634,  651,  647,        673,    0,  674,    0,  675,  651,  663,  678,  654,    0,
       645,  663,  670,  661,  658,    0,  673,  674,  650,  676,        680,  673,  669,  683,  665,  675,  669,    0,  687,  688,
       660,  657,    0,  679,  680,  681,  668,  673,  684,    0,        662,  672,  677,  671,  681,  680,  681,  677,  691,  681,
       685,    0,  686,  657,  688,  689,  690,  681,  692,  693,        693,  695,  692,  697,  681,  685,  697,  691,  684,  698,
       684,  695,  696,  676,  680,  699,  694,  701,  689,    0,        688,  682,  699,  695,  693,  711,  718,  698,  695,  715,
       703,  699,  687,  678,  684,  689,  700,  687,  697,  693,        702,  717,  694,  705,  703,  709,  714,  719,  716,    0,
       707,    0,  714,    0,  715,    0,  716,  717,  718,  719,        731,  732,  708,  734,  718,  722,  716,    0,  738,  739,
         0,  720,    0,  721,  722,  699,  717,  725,  726,  726,        740,  727,  732,  743,    0,  744,    0,  745,  716,  722,
   
      1922,  728,  720,    0,  731,  713,    0,  733,    0,  734,        748,  749,  750,  741,  752,  753,  744,  755,  756,  736,
       735,  726,  737,  738,  729,  734,    0,  743,  744,  746,        740,  759,  754,  761,  749,    0,  763,  759,  747,  738,
         0,  747,  734,    0,  749,    0,  750,  751,  722,    0,        744,  749,  760,  747,  757,  753,  767,    0,  774,    0,
       753,  754,  746,    0,  756,  744,  742,  759,  760,  751,        775,    0,  776,  777,  778,  773,  780,    0,  781,    0,
       753,  746,  764,  755,  742,  743,  758,  769,  761,  752,        782,  783,  760,  778,  786,  787,  787, 2221,  789,  781,
       764,  753,  765,  764,  757,  752,  761,  765,  772,  758,          0,  792,  774,    0,  794,    0,  795,  796,  787,  798,
       772,  759,  763,  755,  776,  773,  782,  765,  766,  763,        799,  790,  795,    0,  804,  805,  807,    0,  808,  795,
       773,  772,    0,  794,  772,  789,  797,  798,  799,  783,          0,  810,    0,  811,  812,  783,    0,  814,  815,  807,
       801,  802,    0,  803,  777,  805,    0,  806,  807,  808,          0,  817,  805,  803,  820,  821,  812,  814,  807,  825,
         0,  809,  810,  793,  812,  813,  805,  815,    0,  816,        816,  803,  804,  819,  830,  822,  813,  825,  814,  826,
   
       807,  798,  819,  812,    0,  821,  799,  814,  804,  825,        825,  818,  813,  822,  826,  833,  819,  833,  820,  824,
       807,  815,  828,  809,  813,  822,  811,    0,  833,    0,        816,  837,  834,  843,  826,  827,  824,  834,  833,    0,
       834,    0,  835,    0,  836,  837,  818,  819,  820,  825,        855,  839,  851,  833,  838,  851,  861,  841,  843,  854,
       836,  843,  844,    0,  845,  847,  848,    0,  849,  850,        853,  843,  860,  868,  869,  870,  854,  851,  873,  874,
       851,    0,  852,  844,  848,  855,    0,  856,  850,  858,          0,  875,  849,  877,    0,  878,  879,  880,  882,    0,
       849,  860,  851,  862,  863,  864,    0,  865,  857,  867,        883,  884,  868,  887,  888,  880,  890,    0,  891,  882,
       858,    0,  869,  870,  871,  848,  856,  874,  875,  867,        873,  894,  887,    0,  896,  874,  889,  879,  900,  882,
       867,  854,  879,  854,  856,  869,  873,  865,  860,  886,        890,  903,  884,  888,  897,  886,    0,  908,    0,  909,
       887,  864,  870,  863,  869,  885,  877,  881,  876,  897,        889,    0,  911,    0,  912,  913,  894,  895,  896,  901,
       893,  879,  890,  884,    0,  902,  903,    0,  904,  905,        912,  919,  920,    0,  921,  923,  924,    0,  925,  926,
   
       906,    0,  907,  898,  909,  910,    0,  911,    0,  912,        927,    0,  928,  920,  924,  931,    0,  932,  926,  934,
       903,    0,  914,    0,  915,  916,    0,  917,  901,  893,        925,  936,  927,  938,  939,  940,    0,  941,  933,  943,
         0,  920,  905,  896,  917,  898,  925,  926,  927,  928,        934,    0,  945,  946,  947,  924,  932,  950,  951,  943,
       912,  913,  931,  912,  933,  906,  912,  927,  923,  919,        943,  930,  955,  930,  932,  945,  949,  941,  936,  962,
       933,    0,  940,    0,  941,  942,  943,  944,    0,  945,        963,  940,  946,  939,  945,  961,  953,  957,  952,  973,
       946,  930,    0,  948,  932,    0,  950,  928,    0,  952,        969,  955,  946,  969,  965,  979,  980,  981,  982,  955,
       934,  954,  955,    0,  956,  957,  958,  950,  960,  951,        984,  973,  976,  970,    0,  988,  989,    0,  990,  991,
       962,  949,  947,    0,  965,  966,  967,  951,  969,  970,        967,  993,    0,  994,  985,  996,  997,  998, 2221,  994,
       947,  962,  973,  949,  975,  953,  977,  978,  966,  952,          0, 1001,    0, 1002,  994,    0, 1005,    0, 1006, 1007,
       961,  963,  983,  954,  977,  967,  987,  962,  970,  990,          0, 1008,  992,  984,    0, 1011,  996,  987, 1008,  989,
   
       981,    0,  992,  993,    0,  994,  995,    0,  996,    0,       1016, 1017, 1020, 1021, 1005, 1006, 1024, 1005, 1006, 1027,
       997,  979,  999,  983,  978, 1002, 1003,  981,  982,    0,       1000, 1006, 1021, 1017, 1013, 1027,    0, 1034,    0, 1035,
      1006, 1007, 1008,    0, 1009,  993, 1011, 1012,  994,    0,       1036, 1037, 1038,    0, 1039, 1040, 1024,    0, 1042, 1026,
      1014, 1015,  997, 1017, 1001, 1010,  999,    0, 1021,    0,          0, 1044, 1022,    0, 1046, 1028, 1048, 1049,    0, 1050,
      1022,    0, 1023, 1024, 1025, 1016, 1027, 1003,    0, 1029,       1051, 1052, 1044, 1054, 1045, 1056, 1043, 1041,    0, 1059,
         0, 1030, 1031,    0, 1032, 1033,    0, 1034, 1016,    0,       1060, 1061, 1045, 1063, 1064, 1041, 1056, 1067, 1043, 1069,
      1036, 1020, 1038,    0, 1039, 1040, 1024, 1042,    0, 1043,       1047, 1071, 1072, 1060, 1046, 1055, 1057, 1077, 1048, 1071,
      1030, 1022, 1046, 1037, 1048, 1035,    0, 1050,    0, 1051,       1061, 1081, 1056, 1064, 1084, 1069, 1086, 1087, 1088,    0,
      1038, 1043, 1031, 1049, 1056, 1026, 1052, 1059,    0, 1060,       1089, 1090, 1091, 1092, 1083, 1094, 1085,    0, 1096, 1097,
      1042, 1044, 1063, 1064,    0, 1065, 1066, 1042,    0, 1068,       1093,    0, 1099, 1100,    0, 1101,    0, 1102, 1082, 1094,
   
      1069, 1070, 1071, 1072, 1057, 1074,    0, 1075,    0, 1076,       1099, 1095, 1087, 1110, 1094, 1089, 1113, 1114, 1092, 1093,
      1077, 1078,    0, 1079, 1080, 1081, 1082, 1083, 1067, 1085,          0, 1119, 1120, 1121,    0, 1122, 1106, 1125, 1126, 1108,
      1066,    0, 1087, 1088, 1089, 1090, 1091,    0, 1092, 1093,       1109,    0, 1129, 1130, 1112, 1132, 1116, 1125, 1114,    0,
      1069, 1085, 1096,    0, 1097, 1092,    0, 1099, 1080, 1077,       1136,    0, 1137,    0, 1138, 1139, 1140, 1131, 1142, 1118,
         0, 1102, 1103,    0, 1104, 1097, 1081, 1084, 1099, 1092,          0, 1144,    0, 1145, 1146,    0, 1147, 1148,    0, 1149,
         0, 1110, 1101, 1095, 1113, 1105, 1109,    0, 1116, 1117,       1131,    0, 1151, 1135, 1153,    0, 1154, 1155, 1139, 1157,
         0, 1118, 1119, 1120, 1121,    0, 1122,    0, 1123, 1124,          0, 1158, 1145, 1137, 1161, 1152, 1163, 1150,    0, 1165,
      1125, 1126,    0, 1127, 1128,    0, 1129, 1130,    0, 1131,          0, 1166, 1153, 1158, 1146, 1164, 1171, 1141, 1167, 1174,
      1132, 1133, 1115,    0, 1135, 1136,    0, 1137, 1138,    0,          0, 1175, 1157, 1159, 1178, 1179, 1180,    0, 1181,    0,
      1139, 1140, 1141,    0, 1142, 1118, 1125, 1124, 1146, 1133,       1182,    0, 1183, 1184,    0, 1185, 1163, 1187, 1188,    0,
   
      1148, 1149, 1150, 1151, 1152, 1153,    0, 1154, 1145, 1144,       1189, 1184, 1191, 1171, 1169, 1189, 1176, 1167, 1178, 1176,
         0, 1157, 1158,    0, 1159,    0, 1160, 1161,    0, 1162,       1182, 1188, 1178,    0, 1204, 1205, 1206, 1207, 1210, 1195,
         0, 1163,    0, 1164,    0, 1165, 1166,    0, 1167, 1168,       1212,    0, 1213,    0, 1214, 1215, 1216,    0, 1217, 1218,
         0, 1169,    0, 1170, 1171, 1172, 1159, 1174, 1165,    0,       1214, 1220, 1221, 1222, 1206, 1224, 1205,    0, 1226, 1227,
      1176, 1152, 1178, 1179, 1180, 1181, 1182, 1183, 1178, 1171,       1228, 1229, 1230,    0, 1231, 1232, 1208, 1224, 1235,    0,
         0, 1186,    0, 1187,    0, 1188, 1189,    0, 1190,    0,       1236, 1231,    0, 1238, 1219, 1216,    0, 1241, 1242,    0,
      1191, 1172, 1193, 1177, 1165,    0, 1196,    0, 1197,    0,       1243, 1236, 1220, 1223, 1238, 1231,    0, 1249, 1240, 1234,
      1198,    0, 1199,    0, 1200,    0, 1201, 1193, 1195,    0,       1252, 1244, 1248,    0, 1255, 1256,    0, 1257,    0, 1258,
      1204, 1186,    0, 1206, 1190, 1208, 1209, 1210, 1211, 1212,       1259,    0, 1260, 1261, 1241, 1253, 1244, 1259, 1254,    0,
      1213, 1214, 1215, 1216, 1217,    0, 1218,    0, 1219,    0,       1269, 1253, 1265, 1247, 1252, 1274, 1257, 1259, 1270, 1269,
   
      1220,    0, 1221,    0, 1222, 1922, 1224, 1226, 1228, 1229,       1282, 1283, 1285,    0, 1286,    0, 1287, 1288, 1289, 1290,
      1231, 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240,          0, 1291, 1292, 1269,    0, 1294, 1295,    0, 1296, 1297,
      1241, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250,       1298, 1280,    0, 1300, 1301,    0, 1302, 1303,    0, 1304,
      1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260,       1305, 1306,    0, 1307, 1283, 1290, 1289, 1311, 1298, 1313,
      1261, 1262, 1263, 1264, 1265, 1266, 1267, 1268, 1269, 1270,       1314, 1315, 1316, 1317, 1318,    0, 1319, 1310, 1309,    0,
      1271, 1272, 1273, 1274, 1275, 1276, 1277, 1278, 1279, 1280,       1322, 1323,    0, 1324, 1304, 1301, 1321, 1308, 1323, 1300,
      1281, 1282, 1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290,       1311, 1309, 1315, 1320, 1305, 1328, 1324, 1338, 1340, 2221,
      1291, 1292, 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300,       1342, 1316, 1345, 1335, 1348,    0, 1349,    0, 1350, 1351,
      1301, 1302, 1303, 1304, 1305, 1307, 1308, 1309, 1310, 1311,          0, 1352,    0, 1353,    0, 1354, 1347,    0, 1356, 1357,
      1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 1320, 1321,          0, 1358, 1359,    0, 1360,    0, 1361, 1362, 1363, 1350,
   
      1322, 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1330, 1331,       1365, 1356,    0, 1367, 1343, 1369, 1370, 1371, 1372, 1373,
      1332, 1333, 1334, 1335, 1336, 1337, 1338, 1339, 1340, 1341,       1374, 1369, 1362,    0, 1377, 1361, 1373, 1355, 1360, 1373,
      1342, 1343, 1344, 1345, 1346, 1347, 1348, 1349, 1350, 1351,       1383, 1364, 1366, 1377, 1376, 1389, 1375, 1392, 1394, 2221,
      1352, 1353, 1354, 1355, 1356, 1357, 1358, 1359, 1360, 1361,       1396, 2221, 1398, 1400, 2221, 1392,    0, 1403,    0, 1404,
      1362, 1363, 1364, 1365, 1366, 1367, 1368, 1369, 1370, 1371,       1382,    0, 1406, 1407,    0, 1408,    0, 1409, 1390, 1411,
      1372, 1373, 1374, 1375, 1376, 1377, 1378, 1379, 1380, 1381,       1395, 1383,    0, 1414,    0, 1415,    0, 1416,    0, 1417,
      1382, 1383, 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391,          0, 1418,    0, 1419, 1411, 1413, 1392, 1415, 1411, 1425,
      1392, 1393, 1394, 1395, 1396, 1397, 1398, 1399, 1400, 1401,       1427, 1429, 2221, 1431, 1405, 1434, 1424, 1437, 2221, 1439,
      1402, 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411,       1441, 2221, 1443, 2221, 1422, 1432,    0, 1447, 1429,    0,
      1412, 1413, 1414, 1415, 1416, 1417, 1418, 1419, 1420, 1421       1449, 1433, 1451, 1452, 1453, 1454, 1440, 1457, 1459, 2221,
   
        1461, 2221, 1463, 2221, 1465, 1467, 2221, 1459, 1470, 2221,
        1472, 1453, 1475, 1476, 1477, 1478, 1479, 1480, 2221, 1482,
        1484, 2221, 1486, 2221, 1465, 1489, 2221, 1466, 1492, 1493,
           0, 1494,    0, 1495,    0, 1496, 1497, 2221, 1499, 1501,
           0, 1502,    0, 1503, 1504, 2221, 1506,    0, 1507, 2221,
        1509, 1511, 1513, 1515, 1516, 1518, 1519, 1520, 1521, 1522,
        1523, 1524, 1525, 1526, 1527, 1528, 1529, 1530, 1531, 1532,
        1533, 1534, 1535, 1536, 1537, 1538, 1539, 1540, 1541, 1542,
        1543, 1544, 1545, 1546, 1547, 1548, 1549, 1550, 1551, 1552,
        1553, 1554, 1555, 1556, 1557, 1558, 1559, 1560, 1561, 1562,
   
        1563, 1564, 1565, 1566, 1567, 1568, 1569, 1570, 1571, 1572,
        1573, 1574, 1575, 1576, 1577, 1578, 1579, 1580, 1581, 1582,
        1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1591, 1592,
        1593, 1595, 1596, 1597, 1598, 1599, 1600, 1601, 1602, 1603,
        1604, 1605, 1606, 1607, 1608, 1609, 1610, 1611, 1612, 1613,
        1614, 1615, 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1623,
        1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633,
        1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643,
        1644, 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653,
        1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663,
   
        1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673,
        1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683,
        1684, 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692, 1693,
        1694, 1695, 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703,
        1704, 1705, 1706, 1707, 1708, 1709, 1710, 1711, 1712, 1713,
        1714, 1715, 1716, 1717, 1718, 1719, 1720
     } ;      } ;
   
 static yyconst short int yy_def[1901] =  static yyconst short int yy_def[2158] =
     {   0,      {   0,
      1707, 1706, 1708, 1708, 1706, 1709, 1706, 1710, 1709, 1709,       1951, 1950, 1952, 1952, 1953, 1953, 1950, 1954, 1950, 1955,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1711, 1711, 1711, 1709, 1710, 1706, 1709, 1709,       1954, 1954, 1954, 1954, 1956, 1956, 1956, 1957, 1957, 1957,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1955, 1950, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
   
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1712, 1709, 1713, 1711, 1711, 1711, 1711, 1714, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1958, 1954, 1959, 1956,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1956, 1956, 1956, 1957, 1957, 1957, 1957, 1960, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1715, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1961, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1716, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
   
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1717, 1709,       1962, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1712, 1712, 1709, 1713, 1713, 1711, 1714,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1963, 1954,
      1714, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1958, 1958, 1954, 1959, 1959, 1956, 1957,
      1709, 1709, 1718, 1709, 1719, 1709, 1709, 1709, 1709, 1720,       1960, 1960, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1721, 1709, 1709, 1709, 1706, 1722, 1709, 1709, 1709,       1954, 1954, 1954, 1964, 1954, 1965, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1715, 1715,       1954, 1966, 1954, 1967, 1954, 1954, 1954, 1950, 1968, 1954,
      1709, 1709, 1723, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1961, 1961, 1954, 1954, 1969, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1706, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
   
      1709, 1709, 1709, 1709, 1709, 1709, 1724, 1709, 1709, 1709,       1954, 1954, 1950, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1716, 1716,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1970, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1725, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1717,       1954, 1962, 1962, 1954, 1954, 1954, 1954, 1954, 1954, 1971,
      1717, 1709, 1709, 1726, 1727, 1709, 1711, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1728, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1963, 1963, 1954, 1954, 1972, 1973, 1954, 1956,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1718, 1718,       1957, 1954, 1954, 1954, 1954, 1954, 1974, 1954, 1954, 1954,
      1709, 1719, 1719, 1709, 1709, 1709, 1709, 1720, 1720, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1721, 1721, 1709, 1709, 1722, 1722, 1709, 1729, 1709, 1709,       1954, 1954, 1964, 1964, 1954, 1965, 1965, 1954, 1954, 1954,
      1730, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1723,       1954, 1954, 1966, 1966, 1954, 1967, 1967, 1954, 1954, 1968,
   
      1723, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1968, 1954, 1975, 1954, 1954, 1976, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1731, 1709,       1954, 1954, 1954, 1954, 1969, 1969, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1706, 1709, 1732,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1733,       1954, 1954, 1954, 1977, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1724, 1724, 1709,       1954, 1954, 1950, 1954, 1978, 1954, 1954, 1954, 1954, 1954,
      1734, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1979, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1725, 1725, 1709,       1954, 1954, 1970, 1970, 1954, 1980, 1954, 1954, 1954, 1954,
      1709, 1709, 1735, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1726, 1726, 1727, 1727, 1709, 1711, 1736,       1954, 1954, 1954, 1971, 1971, 1954, 1954, 1954, 1981, 1954,
      1709, 1709, 1709, 1709, 1728, 1728, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1972,
   
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1972, 1973, 1973, 1954, 1956, 1957, 1982, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1974, 1974, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1729, 1729, 1709, 1709, 1709, 1730, 1730, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1737, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1975,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1975, 1954, 1954, 1954, 1976, 1976, 1954, 1954, 1954, 1983,
      1709, 1709, 1709, 1709, 1738, 1709, 1731, 1731, 1739, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1740, 1741, 1709, 1709, 1732, 1732, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1733,       1954, 1954, 1984, 1954, 1977, 1977, 1985, 1954, 1954, 1954,
      1733, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1986, 1987, 1954, 1954, 1978, 1978, 1954, 1954, 1954, 1954,
      1709, 1734, 1734, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1979, 1979, 1954,
   
      1709, 1742, 1709, 1743, 1709, 1709, 1709, 1709, 1744, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1980,
      1709, 1745, 1709, 1735, 1735, 1709, 1709, 1709, 1709, 1746,       1980, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1747, 1711, 1736, 1736, 1709,       1988, 1954, 1989, 1954, 1954, 1954, 1954, 1954, 1990, 1954,
      1709, 1709, 1709, 1748, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1991, 1954, 1981, 1981, 1954, 1954, 1954, 1954, 1992,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1993, 1956, 1957, 1982, 1982,
      1709, 1709, 1709, 1709, 1709, 1749, 1750, 1709, 1709, 1751,       1954, 1954, 1954, 1954, 1994, 1954, 1954, 1954, 1954, 1954,
      1709, 1752, 1753, 1709, 1709, 1709, 1737, 1737, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1754, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1995, 1996, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1997, 1954, 1998, 1999, 1954, 1954, 1954, 1983, 1983,
      1709, 1738, 1738, 1709, 1739, 1739, 1709, 1709, 1709, 1740,       1954, 1954, 1954, 2000, 1954, 1954, 1954, 1954, 1954, 1954,
   
      1740, 1741, 1741, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1755, 1709, 1709, 1709,       1954, 1954, 1954, 1984, 1984, 1954, 1985, 1985, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1986, 1986, 1987, 1987, 1954, 1954, 1954, 1954, 1954,
      1709, 1756, 1709, 1709, 1709, 1742, 1742, 1709, 1743, 1743,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 2001, 1954,
      1709, 1709, 1709, 1709, 1744, 1744, 1709, 1709, 1745, 1745,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1757, 1758, 1759, 1746, 1746, 1709, 1709, 1709,       1954, 1954, 1954, 2002, 1954, 1954, 1954, 1954, 1988, 1988,
      1709, 1760, 1709, 1747, 1747, 1711, 1706, 1709, 1709, 1761,       1954, 1989, 1989, 1954, 1954, 1954, 1954, 1954, 1990, 1990,
      1709, 1748, 1748, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1991, 1991, 1954, 1954, 2003, 2004, 2005, 1992,
      1762, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1992, 1954, 1954, 1954, 1954, 2006, 1954, 1993, 1993, 1956,
      1709, 1709, 1709, 1709, 1749, 1749, 1750, 1750, 1709, 1709,       1950, 1957, 1954, 1954, 2007, 1954, 1994, 1994, 1954, 1954,
   
      1751, 1751, 1763, 1752, 1752, 1753, 1753, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 2008, 1954, 1954, 1954, 1954,
      1709, 1764, 1709, 1754, 1754, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1765, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1995, 1995, 1996, 1996, 1954, 1954, 1997, 1997, 2009, 1998,
      1709, 1709, 1709, 1766, 1709, 1709, 1709, 1709, 1767, 1709,       1998, 1999, 1999, 1954, 1954, 1954, 1954, 2010, 1954, 2000,
      1768, 1769, 1770, 1709, 1709, 1771, 1772, 1709, 1709, 1709,       2000, 1954, 1954, 1954, 1954, 1954, 1954, 2011, 1954, 1954,
      1709, 1755, 1755, 1773, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 2012,
      1774, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 2013, 1954, 2014, 2015, 2016, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 2017, 2018, 1954, 1954, 1954, 1954, 2001, 2001, 2019,
      1709, 1756, 1756, 1709, 1709, 1775, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 2020, 1954, 1954, 1954,
      1709, 1776, 1709, 1709, 1709, 1757, 1757, 1758, 1758, 1759,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
   
      1759, 1709, 1709, 1777, 1778, 1760, 1760, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 2002, 2002, 1954,
      1761, 1761, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 2021, 1954, 1954, 1954,
      1762, 1762, 1709, 1709, 1709, 1709, 1709, 1779, 1709, 1709,       1954, 1954, 1954, 2022, 1954, 1954, 1954, 2003, 2003, 2004,
      1709, 1709, 1709, 1709, 1709, 1780, 1781, 1782, 1709, 1709,       2004, 2005, 2005, 1954, 1954, 2023, 2024, 2006, 2006, 1954,
      1709, 1783, 1763, 1763, 1784, 1709, 1709, 1709, 1764, 1764,       1957, 1954, 1954, 2007, 2007, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1785, 1709, 1709, 1786, 1709, 1765, 1765, 1787,       1954, 1954, 1954, 2008, 2008, 1954, 1954, 1954, 1954, 1954,
      1788, 1709, 1709, 1709, 1709, 1709, 1709, 1789, 1709, 1709,       2025, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 2026, 2027,
      1766, 1766, 1790, 1709, 1791, 1792, 1767, 1767, 1709, 1768,       2028, 1954, 1954, 1954, 1954, 2029, 2009, 2009, 2030, 1954,
      1768, 1769, 1769, 1770, 1770, 1709, 1793, 1771, 1771, 1772,       1954, 1954, 2010, 2010, 1954, 1954, 2031, 1954, 1954, 2032,
      1772, 1709, 1709, 1794, 1709, 1773, 1773, 1709, 1709, 1709,       1954, 2011, 2011, 2033, 2034, 1954, 1954, 1954, 1954, 1954,
   
      1709, 1709, 1709, 1774, 1774, 1709, 1709, 1709, 1709, 1709,       1954, 2035, 1954, 1954, 2012, 2012, 2036, 1954, 2037, 2038,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       2013, 2013, 1954, 2014, 2014, 2015, 2015, 2016, 2016, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       2039, 2017, 2017, 2018, 2018, 1954, 1954, 2040, 1954, 2019,
      1709, 1709, 1795, 1709, 1709, 1775, 1775, 1709, 1709, 1709,       2019, 1954, 1954, 1954, 1954, 1954, 1954, 2020, 2020, 1954,
      1709, 1709, 1776, 1776, 1709, 1796, 1709, 1709, 1797, 1777,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1777, 1778, 1778, 1709, 1709, 1798, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1799, 1709, 1709, 1709, 1709, 1800, 1709, 1779,       1954, 1954, 1954, 1954, 1954, 1954, 2041, 1954, 1954, 1954,
      1779, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 2021,
      1709, 1780, 1780, 1781, 1781, 1782, 1782, 1801, 1802, 1803,       2021, 1954, 1954, 1954, 1954, 1954, 1954, 2022, 2022, 1954,
      1783, 1783, 1784, 1784, 1804, 1709, 1709, 1709, 1709, 1785,       2042, 1954, 1954, 2043, 2023, 2023, 2024, 2024, 1954, 1957,
   
      1706, 1805, 1709, 1786, 1786, 1709, 1787, 1787, 1788, 1788,       1954, 2044, 1954, 1954, 1954, 1954, 1954, 1954, 2045, 1954,
      1806, 1709, 1709, 1807, 1709, 1709, 1789, 1789, 1709, 1808,       1954, 1954, 1954, 2046, 1954, 2025, 2025, 1954, 1954, 1954,
      1790, 1790, 1709, 1791, 1791, 1792, 1792, 1709, 1709, 1793,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 2026, 2026, 2027,
      1793, 1709, 1709, 1794, 1794, 1709, 1709, 1709, 1809, 1709,       2027, 2028, 2028, 2047, 2048, 1954, 2049, 2029, 2029, 2030,
      1709, 1709, 1810, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       2030, 2050, 1954, 1954, 1954, 1954, 2031, 1950, 2051, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       2032, 2032, 1954, 2033, 2033, 2034, 2034, 2052, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       2053, 1954, 1954, 2035, 2035, 1954, 2054, 2036, 2036, 1954,
      1709, 1709, 1795, 1795, 1709, 1709, 1811, 1709, 1812, 1709,       2037, 2037, 2038, 2038, 1954, 1954, 2039, 2039, 1954, 1954,
      1709, 1813, 1796, 1796, 1709, 1709, 1797, 1797, 1709, 1814,       2040, 2040, 1954, 1954, 1954, 2055, 1954, 1954, 1954, 2056,
      1798, 1798, 1815, 1709, 1816, 1817, 1709, 1818, 1799, 1799,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
   
      1709, 1709, 1819, 1709, 1800, 1800, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1801, 1801, 1802,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 2041,
      1802, 1803, 1803, 1804, 1804, 1709, 1709, 1709, 1709, 1709,       2041, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1820, 1821, 1805, 1805, 1709, 1709, 1806, 1806, 1709,       1954, 1954, 1954, 2057, 1954, 2058, 1954, 1954, 1954, 2059,
      1822, 1807, 1807, 1709, 1709, 1823, 1808, 1808, 1709, 1824,       2042, 2042, 1954, 1954, 2043, 2043, 1954, 1957, 2060, 2044,
      1709, 1825, 1709, 1709, 1709, 1826, 1809, 1809, 1709, 1709,       2044, 2061, 1954, 2062, 2063, 1954, 2064, 2045, 2045, 1954,
      1709, 1810, 1810, 1709, 1709, 1709, 1709, 1827, 1709, 1709,       1954, 2065, 1954, 2046, 2046, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 2047, 2047, 2048, 2048,
      1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 2049, 2049, 2050, 2050, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1709, 1709, 1811, 1811, 1828, 1812, 1812, 1709,       1954, 2066, 2067, 2051, 2051, 1954, 1954, 2052, 2052, 1954,
   
      1829, 1813, 1813, 1709, 1830, 1831, 1814, 1814, 1815, 1815,       2068, 2053, 2053, 1954, 1954, 2069, 2054, 2054, 1954, 2070,
      1709, 1816, 1816, 1817, 1817, 1709, 1818, 1818, 1709, 1709,       1954, 2071, 1954, 1954, 1954, 2072, 2055, 2055, 1954, 1954,
      1819, 1819, 1709, 1709, 1709, 1709, 1832, 1709, 1709, 1833,       1954, 2056, 2056, 1954, 1954, 1954, 1954, 2073, 1954, 1954,
      1709, 1709, 1709, 1709, 1834, 1709, 1709, 1709, 1709, 1709,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1820, 1820, 1821, 1821, 1835, 1836, 1837, 1822, 1822,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1823, 1823, 1709, 1824, 1824, 1709, 1825, 1825,       1954, 1954, 1954, 1954, 1954, 1954, 1954, 2074, 1954, 1954,
      1709, 1838, 1839, 1826, 1826, 1709, 1840, 1709, 1841, 1709,       1954, 1954, 1954, 1954, 2057, 2057, 2075, 2058, 2058, 1954,
      1842, 1709, 1709, 1827, 1827, 1843, 1709, 1709, 1709, 1844,       1954, 2076, 2059, 2059, 1954, 2077, 2078, 1957, 1950, 1957,
      1709, 1709, 1709, 1709, 1709, 1709, 1845, 1846, 1709, 1709,       2060, 2060, 2061, 2061, 1954, 2062, 2062, 2063, 2063, 1954,
      1709, 1709, 1709, 1709, 1709, 1709, 1847, 1709, 1709, 1709,       2064, 2064, 1954, 1954, 2065, 2065, 1954, 1954, 1954, 1954,
   
      1709, 1828, 1828, 1848, 1829, 1829, 1709, 1830, 1830, 1831,       2079, 1954, 1954, 2080, 1954, 1954, 1954, 1954, 1954, 2081,
      1831, 1709, 1849, 1709, 1709, 1709, 1709, 1709, 1709, 1832,       1954, 1954, 1954, 1954, 1954, 1954, 2066, 2066, 2067, 2067,
      1832, 1850, 1851, 1833, 1833, 1709, 1709, 1852, 1709, 1834,       2082, 2083, 2084, 2068, 2068, 1954, 1954, 2069, 2069, 1954,
      1834, 1709, 1709, 1709, 1709, 1709, 1709, 1835, 1835, 1836,       2070, 2070, 1954, 2071, 2071, 1954, 2085, 2086, 2072, 2072,
      1836, 1837, 1837, 1853, 1709, 1709, 1709, 1709, 1838, 1838,       1954, 2087, 1954, 2088, 1954, 2089, 1954, 1954, 2073, 2073,
      1839, 1839, 1854, 1840, 1840, 1709, 1841, 1841, 1709, 1842,       2090, 1954, 1954, 1954, 2091, 1954, 1954, 1954, 1954, 1954,
      1842, 1709, 1709, 1843, 1843, 1855, 1709, 1856, 1844, 1844,       1954, 2092, 2093, 1954, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1709, 1857, 1709, 1858, 1709, 1845, 1845, 1846, 1846,       1954, 2094, 1954, 1954, 1954, 1954, 1954, 2095, 2096, 2074,
      1709, 1709, 1709, 1709, 1859, 1709, 1709, 1709, 1847, 1847,       2074, 2097, 1954, 2098, 1954, 1954, 1954, 2075, 2075, 2099,
      1709, 1709, 1860, 1709, 1848, 1848, 1861, 1709, 1849, 1849,       1954, 2076, 2076, 1954, 2077, 2077, 2078, 2078, 1957, 1957,
   
      1709, 1709, 1862, 1863, 1709, 1709, 1850, 1850, 1851, 1851,       1957, 1957, 1954, 2100, 1954, 1954, 1954, 1954, 1954, 1954,
      1709, 1864, 1852, 1852, 1709, 1865, 1709, 1866, 1709, 1709,       2079, 2079, 2101, 2102, 2080, 2080, 1954, 1954, 2103, 1954,
      1709, 1853, 1853, 1867, 1709, 1868, 1709, 1854, 1854, 1869,       1954, 2081, 2081, 1954, 1954, 1954, 1954, 1954, 1954, 2082,
      1709, 1709, 1870, 1855, 1855, 1709, 1856, 1856, 1709, 1709,       2082, 2083, 2083, 2084, 2084, 2104, 1954, 1954, 1954, 1954,
      1857, 1857, 1709, 1858, 1858, 1709, 1709, 1709, 1709, 1709,       2085, 2085, 2086, 2086, 2105, 2087, 2087, 1954, 2088, 2088,
      1859, 1859, 1709, 1709, 1871, 1709, 1709, 1860, 1860, 1872,       1954, 2089, 2089, 1954, 1954, 2090, 2090, 2106, 1954, 2107,
      1861, 1861, 1709, 1873, 1874, 1862, 1862, 1863, 1863, 1709,       2091, 2091, 1954, 1954, 2108, 1954, 2109, 1954, 2092, 2092,
      1875, 1876, 1864, 1864, 1877, 1865, 1865, 1878, 1866, 1866,       2093, 2093, 1954, 1954, 1954, 1954, 2110, 1954, 1954, 1954,
      1709, 1879, 1709, 1867, 1867, 1880, 1868, 1868, 1881, 1869,       2094, 2094, 1954, 1954, 2111, 1954, 2112, 2095, 2095, 2096,
      1869, 1709, 1709, 1870, 1870, 1709, 1709, 1709, 1882, 1709,       2096, 2097, 2097, 2113, 2098, 2098, 1954, 2114, 1954, 2099,
   
      1709, 1709, 1709, 1709, 1709, 1709, 1871, 1871, 1709, 1709,       2099, 1954, 2115, 1957, 1957, 1957, 1957, 1957, 1957, 1957,
      1872, 1872, 1883, 1873, 1873, 1874, 1874, 1884, 1875, 1875,       1957, 1957, 1954, 2100, 2100, 1954, 1954, 2116, 2117, 1954,
      1876, 1876, 1877, 1877, 1878, 1878, 1885, 1879, 1879, 1709,       1954, 2101, 2101, 2102, 2102, 1954, 2118, 2103, 2103, 1954,
      1880, 1880, 1881, 1881, 1886, 1887, 1709, 1709, 1709, 1882,       1954, 2119, 1954, 2120, 1954, 1954, 1954, 2104, 2104, 2121,
      1882, 1709, 1888, 1889, 1890, 1891, 1892, 1893, 1709, 1709,       1954, 2122, 1954, 2105, 2105, 2123, 1954, 1954, 2124, 2106,
      1883, 1883, 1884, 1884, 1885, 1885, 1894, 1886, 1886, 1887,       2106, 1954, 2107, 2107, 1954, 1954, 2108, 2108, 1954, 2109,
      1887, 1709, 1895, 1709, 1709, 1888, 1888, 1889, 1889, 1890,       2109, 1954, 1954, 1954, 1954, 1954, 2110, 2110, 1954, 1954,
      1890, 1891, 1891, 1892, 1892, 1893, 1893, 1709, 1709, 1894,       2125, 1954, 1954, 2111, 2111, 2126, 2112, 2112, 2113, 2113,
      1894, 1709, 1895, 1895, 1709, 1709, 1709, 1709, 1709, 1709,       1954, 2114, 2114, 2127, 1954, 1954, 1954, 1954, 1954, 2115,
      1896, 1897, 1898, 1899, 1900, 1896, 1896, 1897, 1897, 1898,       2115, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957,
   
      1898, 1899, 1899, 1900, 1900,    0, 1706, 1706, 1706, 1706,       1954, 2128, 2129, 2116, 2116, 2117, 2117, 1954, 2130, 2131,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       2118, 2118, 2132, 1954, 2119, 2119, 2133, 2120, 2120, 1954,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       2134, 1954, 2121, 2121, 2135, 2122, 2122, 2136, 2123, 2123,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1954, 1954, 2124, 2124, 1954, 1954, 1954, 2137, 1954, 1954,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1954, 1954, 1954, 1954, 1954, 2125, 2125, 1954, 1954, 2126,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       2126, 2138, 2127, 2127, 1954, 1954, 1954, 1954, 1954, 1954,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1954, 1954, 1954, 1954, 1957, 1957, 1957, 1957, 1957, 1950,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1957, 1957, 1957, 1957, 2139, 2128, 2128, 2129, 2129, 2140,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       2130, 2130, 2131, 2131, 2132, 2132, 1954, 2133, 2133, 2141,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       2134, 2134, 1954, 2135, 2135, 2136, 2136, 2142, 2143, 1954,
   
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1954, 1954, 2137, 2137, 1954, 2144, 2145, 2146, 2147, 2148,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       2149, 1954, 1954, 2138, 2138, 1954, 1954, 1954, 1954, 1954,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1954, 1954, 1954, 1954, 1954, 1957, 1957, 1957, 1957, 1950,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1957, 1950, 1957, 1957, 1950, 1957, 2139, 2139, 2140, 2140,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1954, 2141, 2141, 2150, 2142, 2142, 2143, 2143, 1954, 2151,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1954, 1954, 2144, 2144, 2145, 2145, 2146, 2146, 2147, 2147,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       2148, 2148, 2149, 2149, 1954, 1954, 1954, 1954, 1954, 1954,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1954, 1954, 1950, 1954, 1954, 1954, 1954, 1957, 1950, 1957,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,       1957, 1950, 1957, 1950, 1957, 1954, 2150, 2150, 1954, 2151,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706       2151, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1950,
   
        1954, 1950, 1954, 1950, 1954, 1954, 1950, 1954, 1957, 1950,
        1957, 1954, 1954, 1954, 2152, 2153, 2154, 1954, 1950, 1954,
        1954, 1950, 1954, 1950, 1954, 1957, 1950, 1954, 2155, 2156,
        2152, 2152, 2153, 2153, 2154, 2154, 1954, 1950, 1954, 1954,
        2155, 2155, 2156, 2156, 1954, 1950, 2157, 2157, 2157,    0,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
   
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
   
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950
     } ;      } ;
   
 static yyconst short int yy_nxt[1956] =  static yyconst short int yy_nxt[2255] =
     {   0,      {   0,
      1706,   39,    7,    8,   40,    9,    6,    6,    7,    8,       1950,   44,    9,   10,   45,   11,    8,    8,    9,   10,
         6,    9,    6,   10,   11,   12,   13,   14,   15,   16,          8,   11,    8,   12,   13,   14,   15,   16,   17,   18,
        17,   18,    6,   19,   20,   21,   22,   23,   24,    6,         19,   20,    8,   21,   22,   23,   24,   25,   26,    8,
        25,   26,   27,   28,   29,   30,   31,   32,    6,    7,         27,   28,   29,   30,   31,   32,   33,   34,    8,    9,
         7,   48,   34,   34,   50,  123,  173,  112,   49,   35,          9,    9,   36,   36,   39,    9,   53,   62,   39,   37,
        41,   51,   54,  174,  106,  124,   55,   86,   52,   42,        760,   55,   59,   54,   40,   46,   60,   63,   56,  161,
        56,   43,   57,   44,   53,   45,   60,   46,   47,   87,         61,  162,   69,   65,   47,   57,   48,   64,   49,   70,
       113,   64,   58,   67,  107,   88,   70,   61,   65,  748,         50,   58,   51,   52,   66,   71,   72,   67,   75,   98,
        62,   68,   59,   63,   66,   71,   72,   79,   69,   75,         68,   80,   84,   99,   73,   81,  111,   76,   77,   82,
        82,   73,  116,   76,   83,  117,   93,   77,   89,   39,         87,   74,  761,   78,   88,  117,   85,   91,  182,  100,
   
        94,   80,   40,  750,   84,   81,   90,   85,  233,   78,         86,   83,   94,  132,   89,  183,  112,   90,  106,   92,
       129,  152,   91,  153,  130,   92,   95,   96,  101,   97,         95,  121,  107,  133,  122,   93,   96,  217,  118,   97,
       160,  108,  102,  109,  161,  110,   98,  234,  164,  111,        101,  108,  102,  113,  218,  114,  138,  115,  109,  103,
        99,  103,  165,  162,  100,  181,  166,  163,  104,  176,        139,  116,  125,  104,  169,  126,   44,  105,  170,   45,
       177,  183,  191,  188,  194,  751,  182,  189,  195,  207,        173,  185,  186,  190,  174,  192,  195,  171,  175,  763,
       201,  240,  192,  202,  184,  211,  208,  190,  203,  193,        201,  172,  198,  204,  191,  244,  199,  205,  193,  121,
       116,  196,  212,  117,  235,  204,  245,  246,  247,  213,        202,  211,  122,  196,  212,  221,  200,  203,  125,  213,
       241,  250,  264,  284,  285,  236,  457,  265,  290,  291,        206,  126,  222,  246,  245,  252,  214,  250,  251,  223,
       251,  266,  615,  237,  458,  286,  248,  349,  350,  238,        257,  258,  259,  365,  247,  520,  262,  453,  276,  302,
       267,  268,  269,  270,  323,  271,  524,  272,  324,  438,        303,  764,  248,  277,  253,  263,  454,  278,  249,  366,
   
       325,  351,  245,  246,  525,  411,  427,  428,  439,  273,        260,  279,  280,  281,  282,  521,  283,  765,  284,  336,
       274,  686,  275,  294,  503,  295,  435,  352,  412,  290,        296,  297,  426,  337,  766,  338,  363,  364,  257,  258,
       291,  687,  296,  578,  436,  297,  427,  428,  298,  359,        285,  286,  298,  287,  306,  427,  307,  442,  443,  302,
       635,  360,  361,  437,  504,  569,  579,  362,  551,  363,        303,  442,  443,  308,  596,  767,  309,  450,  473,  310,
       552,  553,  587,  570,  364,  588,  365,  366,  604,  367,        373,  542,  374,  375,  587,  451,  474,  597,  376,  543,
       636,  727,  554,  605,  646,  647,  752,  753,  754,  589,        377,  656,  588,  605,  452,  378,  606,  379,  380,  569,
       728,  755,  757,  758,  759,  761,  762,  763,  765,  766,        381,  570,  571,  623,  627,  667,  668,  708,  624,  628,
       767,  629,  760,  768,  769,  770,  771,  773,  774,  775,        607,  657,  749,  572,  768,  770,  771,  709,  772,  774,
       776,  777,  778,  779,  780,  781,  782,  783,  784,  785,        775,  750,  635,  776,  777,  778,  779,  781,  782,  783,
       786,  787,  788,  789,  790,  791,  792,  793,  794,  796,        785,  786,  787,  789,  790,  791,  792,  784,  650,  793,
   
       798,  799,  800,  802,  803,  805,  807,  808,  809,  810,        794,  795,  796,  798,  799,  800,  801,  802,  803,  804,
       668,  811,  812,  813,  815,  816,  817,  818,  819,  820,        805,  806,  807,  808,  809,  810,  811,  812,  813,  814,
       821,  822,  823,  824,  825,  826,  827,  828,  829,  830,        815,  816,  817,  818,  819,  820,  822,  824,  825,  826,
       831,  832,  833,  834,  693,  835,  696,  836,  837,  838,        828,  829,  831,  833,  834,  835,  836,  690,  837,  838,
       701,  703,  839,  840,  841,  842,  843,  844,  845,  846,        839,  841,  842,  843,  844,  845,  846,  847,  848,  849,
       847,  848,  849,  850,  851,  853,  854,  855,  856,  857,        850,  851,  852,  853,  854,  855,  856,  857,  858,  859,
       858,  859,  860,  861,  862,  863,  864,  865,  881,  883,        860,  715,  861,  718,  862,  863,  864,  723,  725,  865,
       884,  885,  886,  737,  887,  740,  866,  867,  868,  869,        866,  867,  868,  869,  870,  871,  872,  873,  874,  875,
       870,  871,  872,  873,  874,  875,  888,  889,  890,  876,        876,  877,  879,  880,  881,  882,  883,  884,  885,  886,
       891,  746,  877,  892,  893,  878,  879,  750,  894,  880,        887,  888,  889,  890,  891,  907,  909,  915,  916,  917,
   
       895,  897,  899,  901,  757,  902,  903,  904,  905,  907,        760,  918,  763,  892,  893,  894,  895,  896,  897,  898,
       908,  765,  766,  767,  909,  910,  912,  913,  773,  914,        899,  900,  901,  919,  920,  921,  902,  922,  923,  903,
       915,  916,  917,  918,  919,  920,  922,  923,  924,  925,        770,  924,  904,  905,  925,  774,  906,  910,  926,  927,
       926,  927,  928,  929,  930,  931,  936,  937,  938,  939,        911,  929,  931,  933,  781,  934,  935,  936,  912,  937,
       940,  932,  796,  798,  941,  942,  802,  944,  805,  807,        939,  940,  789,  790,  791,  913,  914,  941,  942,  943,
       945,  933,  934,  946,  947,  948,  935,  950,  951,  815,        945,  946,  798,  947,  948,  949,  950,  951,  952,  953,
       952,  953,  954,  955,  956,  957,  959,  960,  961,  962,        955,  956,  957,  958,  959,  960,  961,  962,  963,  964,
       963,  964,  965,  966,  967,  968,  969,  970,  972,  973,        969,  970,  971,  972,  973,  965,  974,  822,  824,  975,
       974,  975,  976,  978,  979,  981,  983,  985,  986,  987,        976,  828,  978,  831,  833,  966,  967,  979,  980,  981,
       989,  991,  992,  993,  994,  995,  853,  997,  998,  999,        968,  982,  984,  985,  841,  986,  987,  988,  989,  990,
   
      1000, 1001, 1002, 1003, 1005, 1006, 1007, 1008, 1009, 1011,        991,  993,  994,  995,  996,  997,  998,  999, 1000, 1001,
      1012, 1013, 1014, 1019, 1010, 1017, 1020, 1022, 1024, 1015,       1002, 1003, 1004, 1006, 1007, 1008, 1009, 1010, 1012, 1013,
      1021, 1025, 1026, 1027, 1023, 1030, 1016, 1031, 1018, 1032,       1015, 1017, 1019, 1020, 1021, 1023, 1025, 1026, 1027, 1028,
      1028, 1033,  883, 1034, 1035, 1037, 1038, 1029, 1039, 1040,       1029,  879, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1039,
      1041, 1042, 1044, 1045, 1046, 1047,  897,  899,  901, 1048,       1040, 1041, 1042, 1043, 1045, 1046, 1047, 1048, 1053, 1044,
      1049, 1051, 1053,  907, 1054, 1055, 1056,  912, 1057, 1058,       1051, 1054, 1056, 1058, 1049, 1055, 1059, 1060, 1061, 1057,
      1059, 1060, 1061, 1062, 1063, 1064,  922, 1065, 1066, 1067,       1064, 1050, 1065, 1052, 1066, 1062, 1067,  909, 1070, 1068,
      1068, 1069, 1071, 1072, 1073, 1074, 1075, 1076, 1078, 1083,       1072, 1073, 1063, 1069, 1075, 1076, 1078, 1079, 1081, 1082,
      1080, 1085, 1087, 1077, 1081, 1088, 1079, 1089, 1090, 1092,       1083, 1071, 1084, 1085, 1077, 1086, 1087, 1089, 1090, 1091,
       944, 1094, 1095, 1096, 1097,  950, 1098, 1099, 1101, 1102,       1074, 1092,  929,  931,  933, 1093, 1094, 1096, 1098,  939,
   
      1103, 1105, 1106,  959, 1108, 1110, 1111, 1112, 1113, 1114,       1099, 1100, 1101, 1102,  945, 1103, 1104, 1105, 1106, 1107,
      1115, 1116, 1118, 1119, 1120,  972, 1122, 1123, 1125, 1127,       1108, 1109, 1110,  955, 1111, 1112, 1113, 1114, 1115, 1117,
       978, 1128,  981,  983,  985, 1129, 1131,  989,  991, 1132,       1118, 1119, 1120, 1121, 1122, 1124, 1129, 1126, 1131, 1133,
      1133, 1135, 1136,  997, 1137, 1138, 1139, 1140, 1141, 1142,       1123, 1127, 1134, 1125, 1135, 1136, 1137, 1139,  978, 1141,
      1005, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151,       1142, 1143, 1144,  984, 1145, 1146, 1148, 1149, 1150, 1152,
      1152, 1153, 1156, 1154, 1158, 1159, 1160, 1161, 1162, 1163,       1153,  993, 1155, 1157, 1158, 1159, 1160, 1161, 1162, 1163,
      1155, 1164, 1165, 1166, 1167, 1168, 1169, 1157, 1170, 1171,       1165, 1166, 1167, 1006, 1169, 1170, 1172, 1174, 1012, 1175,
      1172, 1174, 1175, 1176, 1037, 1177, 1178, 1179, 1180, 1181,       1015, 1017, 1019, 1176, 1178, 1023, 1025, 1179, 1180, 1182,
      1044, 1182, 1184, 1185, 1186, 1188, 1051, 1053, 1189, 1190,       1183, 1031, 1184, 1185, 1186, 1187, 1188, 1189, 1039, 1190,
      1192, 1193, 1194, 1195, 1196, 1197, 1198, 1200, 1201, 1202,       1191, 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, 1200,
   
      1203, 1204, 1206, 1207, 1071, 1208, 1209, 1210, 1211, 1212,       1203, 1201, 1205, 1206, 1207, 1208, 1209, 1210, 1202, 1211,
      1213, 1214, 1215, 1216, 1217, 1083, 1085, 1087, 1219, 1221,       1212, 1213, 1214, 1215, 1216, 1204, 1217, 1218, 1219, 1221,
      1223, 1092, 1094, 1225, 1226, 1227, 1232, 1233, 1101, 1235,       1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231,
      1236, 1228, 1105, 1237, 1108, 1110, 1239, 1240, 1241, 1243,       1232, 1233, 1081, 1234, 1235, 1236, 1237, 1238, 1239, 1089,
      1244, 1229, 1230, 1245, 1118, 1246, 1231, 1248, 1122, 1249,       1240, 1242, 1243, 1244, 1246, 1096, 1098, 1247, 1248, 1249,
      1125, 1127, 1250, 1251, 1131, 1252, 1253, 1135, 1254, 1255,       1251, 1252, 1253, 1254, 1255, 1256, 1257, 1259, 1260, 1261,
      1256, 1258, 1259, 1260, 1261, 1263, 1264, 1265, 1266, 1267,       1262, 1263, 1265, 1266, 1117, 1267, 1268, 1269, 1270, 1271,
      1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1276, 1277,       1272, 1273, 1274, 1275, 1276, 1129, 1131, 1133, 1278, 1280,
      1278, 1279, 1280, 1281, 1282, 1283, 1284, 1285, 1286, 1287,       1281, 1283, 1139, 1141, 1285, 1286, 1287, 1292, 1293, 1148,
      1288, 1289, 1290, 1291, 1292, 1174, 1293, 1294, 1296, 1297,       1295, 1296, 1288, 1152, 1297, 1155, 1157, 1299, 1300, 1301,
   
      1299, 1300, 1301, 1303, 1184, 1304, 1305, 1188, 1306, 1308,       1303, 1304, 1289, 1290, 1305, 1165, 1306, 1291, 1308, 1169,
      1192, 1310, 1311, 1313, 1315, 1316, 1318, 1200, 1319, 1320,       1309, 1172, 1174, 1310, 1311, 1178, 1312, 1313, 1182, 1314,
      1322, 1323, 1206, 1324, 1325, 1326, 1327, 1328, 1329, 1330,       1315, 1316, 1318, 1319, 1320, 1321, 1323, 1324, 1325, 1326,
      1331, 1332, 1333, 1334, 1219, 1221, 1223, 1225, 1335, 1336,       1327, 1328, 1329, 1330, 1331, 1332, 1333, 1334, 1335, 1336,
      1337, 1338, 1339, 1340, 1343, 1345, 1235, 1341, 1346, 1347,       1337, 1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346,
      1239, 1348, 1350, 1243, 1351, 1352, 1354, 1248, 1355, 1357,       1347, 1348, 1349, 1350, 1351, 1352, 1221, 1353, 1354, 1355,
      1358, 1360, 1361, 1362, 1363, 1365, 1258, 1366, 1367, 1368,       1356, 1357, 1358, 1359, 1360, 1361, 1362, 1363, 1364, 1366,
      1263, 1369, 1371, 1372, 1373, 1375, 1376, 1377, 1378, 1379,       1367, 1369, 1370, 1371, 1372, 1374, 1242, 1375, 1376, 1246,
      1380, 1381, 1382, 1383, 1384, 1385, 1386, 1387, 1388, 1370,       1377, 1378, 1379, 1382, 1251, 1384, 1380, 1385, 1387, 1389,
      1389, 1390, 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1398,       1390, 1392, 1259, 1393, 1394, 1396, 1397, 1265, 1398, 1399,
   
      1399, 1400, 1401, 1296, 1403, 1299, 1404, 1406, 1303, 1407,       1400, 1401, 1402, 1403, 1404, 1405, 1406, 1407, 1408, 1278,
      1409, 1411, 1308, 1310, 1412, 1313, 1315, 1413, 1318, 1414,       1280, 1409, 1283, 1285, 1410, 1411, 1412, 1413, 1414, 1415,
      1415, 1322, 1416, 1417, 1418, 1419, 1421, 1422, 1423, 1425,       1418, 1420, 1295, 1416, 1421, 1422, 1299, 1423, 1425, 1303,
      1426, 1427, 1428, 1429, 1431, 1432, 1433, 1434, 1435, 1436,       1426, 1427, 1429, 1308, 1430, 1432, 1433, 1435, 1436, 1437,
      1437, 1343, 1345, 1439, 1441, 1443, 1350, 1444, 1445, 1354,       1438, 1440, 1318, 1441, 1442, 1443, 1323, 1444, 1446, 1447,
      1446, 1357, 1447, 1360, 1448, 1450, 1452, 1365, 1453, 1455,       1448, 1450, 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458,
      1456, 1458, 1459, 1461, 1462, 1463, 1375, 1465, 1466, 1467,       1459, 1460, 1461, 1462, 1463, 1445, 1464, 1465, 1466, 1467,
      1468, 1470, 1471, 1472, 1473, 1474, 1475, 1476, 1478, 1480,       1468, 1469, 1470, 1471, 1472, 1473, 1474, 1475, 1476, 1477,
      1481, 1482, 1483, 1484, 1485, 1486, 1487, 1488, 1490, 1491,       1478, 1479, 1481, 1482, 1483, 1484, 1485, 1486, 1487, 1366,
      1492, 1493, 1494, 1403, 1496, 1406, 1497, 1409, 1411, 1498,       1489, 1369, 1490, 1491, 1493, 1374, 1494, 1496, 1498, 1378,
   
      1500, 1501, 1502, 1503, 1504, 1505, 1506, 1421, 1508, 1510,       1379, 1499, 1382, 1384, 1500, 1503, 1387, 1389, 1504, 1392,
      1425, 1511, 1512, 1514, 1515, 1431, 1516, 1517, 1518, 1519,       1505, 1506, 1396, 1507, 1508, 1509, 1510, 1512, 1513, 1501,
      1520, 1521, 1439, 1441, 1443, 1523, 1524, 1525, 1526, 1527,       1502, 1514, 1516, 1517, 1518, 1519, 1520, 1521, 1523, 1524,
      1450, 1452, 1529, 1455, 1530, 1458, 1531, 1461, 1532, 1533,       1525, 1526, 1527, 1528, 1529, 1418, 1420, 1531, 1533, 1535,
      1465, 1535, 1536, 1538, 1470, 1539, 1540, 1542, 1543, 1545,       1425, 1536, 1537, 1429, 1538, 1432, 1539, 1435, 1540, 1542,
      1546, 1478, 1480, 1547, 1548, 1549, 1550, 1552, 1553, 1554,       1544, 1440, 1545, 1547, 1548, 1550, 1551, 1553, 1554, 1555,
      1555, 1490, 1556, 1557, 1559, 1560, 1496, 1562, 1563, 1500,       1450, 1557, 1558, 1559, 1560, 1562, 1563, 1564, 1565, 1566,
      1564, 1565, 1567, 1569, 1570, 1571, 1508, 1510, 1572, 1574,       1567, 1568, 1570, 1572, 1573, 1574, 1575, 1576, 1577, 1578,
      1514, 1575, 1577, 1578, 1580, 1581, 1582, 1583, 1523, 1585,       1579, 1580, 1582, 1583, 1584, 1585, 1586, 1587, 1589, 1591,
      1586, 1588, 1589, 1529, 1591, 1592, 1593, 1595, 1535, 1596,       1481, 1593, 1594, 1596, 1597, 1598, 1599, 1489, 1601, 1602,
   
      1538, 1597, 1598, 1542, 1599, 1545, 1600, 1601, 1602, 1603,       1493, 1603, 1496, 1498, 1604, 1606, 1608, 1613, 1605, 1610,
      1604, 1552, 1605, 1606, 1608, 1609, 1610, 1559, 1612, 1562,       1611, 1615, 1616, 1617, 1618, 1619, 1620, 1621, 1607, 1612,
      1613, 1615, 1617, 1567, 1569, 1618, 1620, 1622, 1574, 1624,       1512, 1623, 1625, 1516, 1626, 1609, 1627, 1629, 1630, 1631,
      1577, 1626, 1580, 1627, 1629, 1630, 1585, 1632, 1588, 1634,       1523, 1632, 1633, 1634, 1635, 1636, 1637, 1531, 1533, 1535,
      1591, 1635, 1636, 1595, 1637, 1638, 1639, 1641, 1642, 1643,       1639, 1640, 1641, 1642, 1643, 1542, 1544, 1645, 1547, 1646,
      1644, 1645, 1646, 1647, 1648, 1608, 1649, 1650, 1612, 1652,       1550, 1647, 1553, 1648, 1649, 1557, 1651, 1652, 1654, 1562,
      1615, 1617, 1654, 1620, 1622, 1624, 1626, 1656, 1629, 1657,       1655, 1656, 1658, 1659, 1661, 1662, 1570, 1572, 1663, 1664,
      1632, 1634, 1659, 1661, 1662, 1663, 1664, 1641, 1665, 1667,       1665, 1666, 1668, 1669, 1670, 1671, 1582, 1672, 1673, 1675,
      1669, 1671, 1673, 1675, 1677, 1678, 1679, 1652, 1654, 1656,       1676, 1678, 1589, 1591, 1593, 1680, 1596, 1681, 1683, 1684,
      1681, 1659, 1661, 1682, 1684, 1685, 1686, 1667, 1669, 1671,       1601, 1685, 1691, 1692, 1686, 1693, 1694, 1695, 1696, 1697,
   
      1673, 1675, 1677, 1687, 1688, 1681, 1689, 1684, 1690, 1691,       1698, 1699, 1687, 1700, 1701, 1615, 1702, 1703, 1705, 1688,
      1692, 1693, 1694, 1695, 1697, 1699, 1701, 1703, 1705, 1697,       1689, 1707, 1708, 1709, 1623, 1625, 1710, 1712, 1629, 1713,
      1699, 1701, 1703, 1705,    6,    6,   33,   33,   36,   37,       1714, 1716, 1717, 1719, 1720, 1721, 1722, 1639, 1724, 1725,
        37,  115,  214,  217,  220,  259,  319,  340,  369,  372,       1727, 1728, 1645, 1730, 1731, 1732, 1734, 1651, 1735, 1654,
       378,  381,  385,  400,  448,  468,  484,  486,  495,  522,       1736, 1737, 1658, 1738, 1661, 1739, 1740, 1741, 1742, 1743,
       527,  557,  567,  580,  592,  614,  628,  667,  692,  695,       1668, 1744, 1745, 1747, 1748, 1749, 1675, 1751, 1678, 1680,
       700,  702,  736,  739,  745,  749,  756,  764,  772,  795,       1752, 1683, 1754, 1755, 1757, 1759, 1760, 1756, 1762, 1763,
       797,  801,  804,  806,  814,  852,  882,  896,  898,  900,       1691, 1765, 1766, 1767, 1768, 1769, 1770, 1758, 1764, 1771,
       906,  911,  921,  943,  949,  958,  971,  977,  980,  982,       1772, 1773, 1774, 1775, 1777, 1761, 1779, 1705, 1707, 1780,
       984,  988,  990,  996, 1004, 1036, 1043, 1050, 1052, 1070,       1782, 1784, 1712, 1786, 1787, 1716, 1789, 1719, 1790, 1792,
   
      1082, 1084, 1086, 1091, 1093, 1100, 1100, 1104, 1107, 1109,       1793, 1724, 1795, 1727, 1797, 1730, 1798, 1799, 1734, 1800,
      1117, 1121, 1124, 1126, 1130, 1134, 1173, 1183, 1187, 1191,       1801, 1802, 1804, 1805, 1806, 1807, 1808, 1809, 1810, 1811,
      1199, 1205, 1218, 1220, 1222, 1224, 1234, 1238, 1242, 1247,       1747, 1812, 1813, 1751, 1815, 1754, 1816, 1817, 1818, 1819,
      1257, 1262, 1295, 1298, 1302, 1307, 1309, 1312, 1314, 1317,       1820, 1821, 1822, 1823, 1824, 1825, 1826, 1827, 1828, 1829,
      1321, 1342, 1344, 1349, 1353, 1356, 1359, 1364, 1374, 1402,       1830, 1769, 1770, 1831, 1832, 1833, 1834, 1835, 1836, 1838,
      1405, 1408, 1410, 1420, 1424, 1430, 1438, 1440, 1442, 1449,       1777, 1779, 1840, 1782, 1784, 1786, 1841, 1789, 1843, 1792,
      1451, 1454, 1457, 1460, 1464, 1469, 1477, 1479, 1489, 1495,       1844, 1795, 1797, 1846, 1848, 1849, 1850, 1851, 1804, 1852,
      1499, 1507, 1509, 1513, 1522, 1528, 1534, 1537, 1541, 1544,       1854, 1856, 1858, 1860, 1862, 1864, 1865, 1866, 1815, 1867,
      1551, 1558, 1561, 1566, 1568, 1573, 1576, 1579, 1584, 1587,       1868, 1869, 1870, 1871, 1872, 1873, 1874, 1875, 1876, 1877,
      1590, 1594, 1607, 1611, 1614, 1616, 1619, 1621, 1623, 1625,       1878, 1879, 1880, 1881, 1882, 1829, 1830, 1831, 1832, 1883,
   
      1628, 1631, 1633, 1640, 1651, 1653, 1655, 1658, 1660, 1666,       1884, 1834, 1835, 1885, 1838, 1840, 1886, 1843, 1888, 1846,
      1668, 1670, 1672, 1674, 1676, 1680, 1683, 1696, 1698, 1700,       1848, 1889, 1891, 1892, 1893, 1854, 1856, 1858, 1860, 1862,
      1702, 1704,  747,  746,  744,  743,  742,  741,  740,  738,       1864, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902,
       737,  735,  734,  733,  732,  731,  730,  729,  593,  726,       1872, 1873, 1903, 1904, 1905, 1906, 1907, 1908, 1878, 1879,
       725,  724,  723,  722,  721,  720,  719,  718,  717,  581,       1909, 1910, 1881, 1882, 1883, 1884, 1911, 1912, 1888, 1913,
       716,  715,  714,  713,  712,  711,  710,  709,  708,  707,       1891, 1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921, 1922,
       706,  568,  705,  704,  703,  701,  699,  698,  697,  696,       1899, 1900, 1901, 1902, 1903, 1904, 1923, 1924, 1906, 1907,
       558,  694,  693,  691,  690,  689,  688,  685,  684,  683,       1925, 1909, 1910, 1926, 1927, 1928, 1929, 1930, 1932, 1934,
       682,  681,  680,  679,  678,  677,  676,  675,  674,  673,       1936, 1918, 1919, 1937, 1938, 1921, 1922, 1923, 1924, 1939,
       672,  671,  670,  669,  668,  666,  665,  664,  528,  663,       1926, 1927, 1940, 1942, 1944, 1932, 1934, 1936, 1937, 1938,
   
       662,  661,  523,  660,  659,  658,  657,  656,  655,  654,       1945, 1946, 1947, 1942, 1944, 1945, 1946, 1949, 1949,    8,
       653,  652,  651,  650,  649,  648,  645,  644,  643,  642,          8,   35,   35,   38,   38,   41,   42,   42,  120,  124,
       641,  640,  639,  638,  637,  634,  496,  633,  632,  631,        224,  227,  231,  271,  332,  353,  383,  386,  393,  396,
       630,  629,  627,  626,  487,  485,  625,  624,  623,  622,        400,  415,  463,  484,  500,  502,  512,  540,  545,  575,
       621,  620,  619,  618,  617,  616,  615,  613,  612,  611,        585,  598,  610,  634,  649,  689,  714,  717,  722,  724,
       469,  610,  609,  608,  607,  606,  603,  602,  601,  600,        759,  762,  769,  773,  780,  788,  797,  821,  823,  827,
       599,  598,  597,  596,  595,  594,  593,  591,  449,  590,        830,  832,  840,  878,  908,  928,  930,  932,  938,  944,
       586,  585,  584,  583,  582,  581,  577,  576,  575,  574,        954,  977,  983,  992, 1005, 1011, 1014, 1016, 1018, 1022,
       573,  572,  571,  568,  566,  565,  564,  563,  562,  561,       1024, 1030, 1038, 1080, 1088, 1095, 1097, 1116, 1128, 1130,
       560,  559,  558,  556,  555,  550,  549,  548,  547,  546,       1132, 1138, 1140, 1147, 1147, 1151, 1154, 1156, 1164, 1168,
   
       545,  544,  543,  542,  541,  540,  539,  538,  537,  401,       1171, 1173, 1177, 1181, 1220, 1241, 1245, 1250, 1258, 1264,
       536,  535,  534,  533,  532,  531,  530,  529,  528,  526,       1277, 1279, 1282, 1284, 1294, 1298, 1302, 1307, 1317, 1322,
       523,  521,  386,  520,  519,  382,  518,  379,  517,  516,       1365, 1368, 1373, 1381, 1383, 1386, 1388, 1391, 1395, 1417,
       515,  514,  373,  513,  370,  512,  511,  510,  509,  508,       1419, 1424, 1428, 1431, 1434, 1439, 1449, 1480, 1488, 1492,
       507,  506,  505,  502,  501,  500,  499,  498,  497,  496,       1495, 1497, 1511, 1515, 1522, 1530, 1532, 1534, 1541, 1543,
       494,  493,  492,  491,  490,  489,  488,  487,  485,  483,       1546, 1549, 1552, 1556, 1561, 1569, 1571, 1581, 1588, 1590,
       482,  341,  481,  480,  479,  478,  477,  476,  475,  474,       1592, 1595, 1600, 1614, 1622, 1624, 1628, 1638, 1644, 1650,
       473,  472,  471,  470,  469,  467,  466,  465,  464,  463,       1653, 1657, 1660, 1667, 1674, 1677, 1679, 1682, 1690, 1704,
       462,  320,  461,  460,  459,  456,  455,  454,  453,  452,       1706, 1711, 1715, 1718, 1723, 1726, 1729, 1733, 1746, 1750,
       451,  450,  449,  447,  446,  445,  444,  443,  442,  441,       1753, 1776, 1778, 1781, 1783, 1785, 1788, 1791, 1794, 1796,
   
       440,  434,  433,  432,  431,  430,  429,  426,  425,  424,       1803, 1814, 1837, 1839, 1842, 1845, 1847, 1853, 1855, 1857,
       423,  422,  421,  420,  419,  418,  417,  416,  415,  414,       1859, 1861, 1863, 1887, 1890, 1931, 1933, 1935, 1941, 1943,
       413,  410,  409,  408,  407,  406,  405,  404,  403,  402,       1948,  758,  757,  756,  755,  754,  753,  752,  751,  611,
       401,  399,  398,  260,  397,  396,  395,  394,  393,  392,        748,  747,  746,  745,  744,  743,  742,  741,  740,  739,
       391,  390,  389,  388,  387,  386,  384,  383,  382,  380,        599,  738,  737,  736,  735,  734,  733,  732,  731,  730,
       379,  377,  376,  375,  374,  373,  371,  370,  368,  358,        729,  728,  586,  727,  726,  725,  723,  721,  720,  719,
       357,  356,  355,  354,  353,  348,  221,  347,  218,  346,        718,  576,  716,  715,  713,  712,  711,  710,  707,  706,
       215,  345,  344,  343,  342,  341,  339,  338,  337,  336,        705,  704,  703,  702,  701,  700,  699,  698,  697,  696,
       335,  334,  333,  332,  331,  330,  329,  328,  327,  326,        695,  694,  693,  692,  691,  690,  688,  687,  686,  546,
       322,  321,  320,  318,  317,  316,  315,  314,  313,  312,        685,  684,  683,  541,  682,  681,  680,  679,  678,  677,
   
       311,  310,  309,  308,  307,  306,  305,  304,  303,  302,        676,  675,  674,  673,  672,  671,  670,  669,  666,  665,
       301,  300,  299,  293,  292,  289,  288,  287,  283,  282,        664,  663,  662,  661,  660,  659,  658,  655,  513,  654,
       281,  280,  279,  278,  277,  276,  263,  262,  261,  260,        653,  652,  651,  650,  648,  647,  646,  503,  501,  645,
       258,  257,  256,  255,  254,  253,  252,  249,  244,  243,        644,  643,  642,  641,  640,  639,  638,  637,  636,  635,
       242,  239,  232,  231,  230,  229,  228,  227,  226,  225,        633,  632,  631,  485,  630,  629,  626,  625,  622,  621,
       224,  223,  222,  221,  219,  218,  216,  215,  210,  209,        620,  619,  618,  617,  616,  615,  614,  613,  612,  611,
       206,  205,  200,  199,  198,  197,  187,  186,  185,  180,        609,  464,  608,  604,  603,  602,  601,  600,  599,  595,
       179,  178,  175,  172,  171,  170,  169,  168,  167,  159,        594,  593,  592,  591,  590,  589,  586,  584,  583,  582,
       158,  157,  156,  155,  154,  151,  150,  149,  148,  147,        581,  580,  579,  578,  577,  576,  574,  573,  568,  567,
       146,  145,  144,  143,  142,  141,  140,  139,  138,  137,        566,  565,  564,  563,  562,  561,  560,  559,  558,  557,
   
       136,  135,  134,  133,  132,  131,  128,  127,  126,  125,        556,  555,  416,  554,  553,  552,  551,  550,  549,  548,
       122,  121,  120,  119,   38,  118,  114,  105,   74,   38,        547,  546,  544,  541,  539,  401,  538,  537,  397,  536,
      1706,    5, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,        394,  535,  534,  533,  532,  531,  387,  530,  384,  529,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,        528,  527,  526,  525,  524,  523,  522,  519,  518,  517,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,        516,  515,  514,  513,  511,  510,  509,  508,  507,  506,
      1706, 1706, 1706, 1706, 1706        505,  504,  503,  501,  499,  498,  354,  497,  496,  495,
         494,  493,  492,  491,  490,  489,  488,  487,  486,  485,
         483,  482,  481,  480,  479,  478,  333,  477,  476,  475,
         472,  471,  470,  469,  468,  467,  466,  465,  464,  462,
         461,  460,  459,  458,  457,  456,  455,  449,  448,  447,
   
         446,  445,  444,  441,  440,  439,  438,  437,  436,  435,
         434,  433,  432,  431,  430,  429,  428,  425,  424,  423,
         422,  421,  420,  419,  418,  417,  416,  414,  413,  272,
         412,  411,  410,  409,  408,  407,  406,  405,  404,  403,
         402,  401,  399,  398,  397,  395,  394,  392,  391,  390,
         389,  388,  387,  385,  384,  382,  372,  371,  370,  369,
         368,  367,  362,  232,  361,  360,  228,  359,  225,  358,
         357,  356,  355,  354,  352,  351,  350,  349,  348,  347,
         346,  345,  344,  343,  342,  341,  340,  339,  335,  334,
         333,  331,  330,  329,  328,  327,  326,  325,  324,  323,
   
         322,  321,  320,  319,  318,  317,  316,  315,  314,  313,
         312,  311,  305,  304,  301,  300,  299,  295,  294,  293,
         292,  291,  290,  289,  288,  275,  274,  273,  272,  270,
         269,  268,  267,  266,  265,  264,  261,  256,  255,  254,
         243,  242,  241,  240,  239,  238,  237,  236,  235,  234,
         233,  232,  230,  229,  228,  226,  225,  220,  219,  216,
         215,  210,  209,  208,  207,  197,  194,  189,  188,  187,
         184,  181,  180,  179,  178,  177,  176,  168,  167,  166,
         165,  164,  163,  160,  159,  158,  157,  156,  155,  154,
         153,  152,  151,  150,  149,  148,  147,  146,  145,  144,
   
         143,  142,  141,  140,  137,  136,  135,  134,  131,  130,
         129,  128,   43,  127,  123,  119,  110,   79,   43, 1950,
           7, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950
     } ;      } ;
   
 static yyconst short int yy_chk[1956] =  static yyconst short int yy_chk[2255] =
     {   0,      {   0,
         0,    9,    1,    1,    9,    1,    2,    2,    2,    2,          0,   11,    1,    1,   11,    1,    2,    2,    2,    2,
         2,    2,    2,    2,    2,    2,    2,    2,    2,    2,          2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
         2,    2,    2,    2,    2,    2,    2,    2,    2,    2,          2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
         2,    2,    2,    2,    2,    2,    2,    2,    2,    3,          2,    2,    2,    2,    2,    2,    2,    2,    2,    3,
         4,   11,    3,    4,   12,   45,   87,   31,   11,    4,          4,    5,    3,    4,    5,    6,   13,   16,    6,    4,
        10,   12,   13,   87,   29,   45,   13,   23,   12,   10,        621,   14,   15,   13,    6,   12,   15,   16,   14,   77,
        13,   10,   14,   10,   12,   10,   15,   10,   10,   23,         15,   77,   18,   17,   12,   14,   12,   16,   12,   18,
        31,   16,   14,   17,   29,   23,   18,   15,   16,  611,         12,   14,   12,   12,   17,   18,   19,   17,   20,   27,
        15,   17,   14,   15,   16,   18,   18,   21,   17,   20,         17,   22,   23,   27,   19,   22,   31,   20,   20,   22,
        22,   18,   34,   20,   22,   34,   25,   20,   24,   39,         24,   19,  622,   20,   24,   33,   23,   25,   92,   27,
   
        25,   21,   39,  612,   22,   21,   24,   22,  131,   20,         23,   22,   26,   50,   24,   92,   31,   24,   29,   25,
        50,   72,   24,   72,   50,   24,   25,   26,   27,   26,         26,   36,   29,   50,   36,   25,   26,  113,   33,   26,
        79,   30,   27,   30,   79,   30,   26,  131,   80,   30,         28,   29,   28,   32,  113,   32,   55,   32,   29,   28,
        26,   27,   80,   79,   26,   93,   80,   79,   27,   89,         55,   32,   39,   28,   84,   39,   44,   28,   84,   44,
        89,   94,   99,   98,  100,  613,   93,   98,  100,  108,         85,   94,   94,   98,   85,   99,  101,   84,   85,  623,
       105,  134,   99,  105,   94,  111,  108,   98,  105,   99,        104,   84,  103,  105,   98,  140,  103,  105,   99,  121,
       116,  100,  111,  116,  132,  105,  138,  138,  139,  111,        104,  110,  121,  101,  110,  116,  103,  104,  125,  110,
       134,  141,  153,  163,  163,  132,  315,  153,  167,  167,        105,  125,  116,  141,  140,  143,  110,  142,  142,  116,
       141,  153,  615,  132,  315,  163,  139,  223,  223,  132,        147,  147,  148,  235,  141,  374,  150,  310,  162,  176,
       154,  154,  154,  154,  194,  154,  389,  154,  194,  298,        176,  624,  141,  162,  143,  150,  310,  162,  141,  235,
   
       194,  224,  245,  245,  389,  273,  288,  288,  298,  154,        148,  163,  163,  163,  163,  374,  163,  625,  163,  204,
       154,  550,  154,  170,  360,  170,  297,  224,  273,  290,        172,  172,  285,  204,  626,  204,  234,  234,  257,  257,
       290,  550,  170,  439,  297,  170,  427,  427,  170,  231,        163,  163,  172,  163,  179,  285,  179,  300,  300,  302,
       498,  231,  231,  297,  360,  431,  439,  231,  416,  231,        302,  442,  442,  179,  454,  627,  179,  309,  328,  179,
       416,  416,  446,  431,  231,  446,  231,  231,  462,  231,        242,  404,  242,  242,  446,  309,  328,  454,  242,  404,
       498,  594,  416,  462,  508,  508,  616,  617,  618,  446,        242,  515,  446,  461,  309,  242,  461,  242,  242,  431,
       594,  619,  620,  621,  622,  623,  624,  625,  626,  627,        242,  431,  431,  478,  481,  525,  525,  568,  478,  481,
       627,  629,  622,  630,  631,  632,  633,  634,  635,  636,        461,  515,  612,  431,  628,  629,  630,  568,  631,  632,
       637,  638,  639,  640,  641,  642,  643,  644,  645,  646,        633,  612,  635,  636,  637,  638,  639,  640,  641,  642,
       647,  648,  649,  650,  651,  652,  653,  654,  655,  656,        643,  644,  645,  646,  647,  647,  648,  642,  650,  651,
   
       657,  658,  659,  660,  661,  662,  663,  664,  665,  666,        652,  653,  654,  655,  656,  657,  658,  659,  660,  661,
       668,  669,  670,  671,  672,  673,  674,  675,  676,  677,        662,  663,  664,  665,  666,  667,  668,  669,  670,  671,
       678,  679,  680,  681,  682,  683,  684,  685,  686,  687,        672,  673,  674,  675,  676,  677,  678,  679,  680,  681,
       688,  689,  690,  691,  693,  694,  696,  697,  698,  699,        682,  683,  684,  685,  686,  687,  688,  690,  691,  692,
       701,  703,  704,  705,  706,  707,  708,  709,  710,  711,        693,  694,  695,  696,  697,  698,  699,  700,  701,  702,
       712,  713,  714,  715,  716,  717,  718,  719,  720,  721,        703,  704,  705,  706,  707,  708,  709,  710,  711,  712,
       722,  723,  724,  725,  726,  727,  728,  729,  731,  732,        713,  715,  716,  718,  719,  720,  721,  723,  725,  726,
       733,  734,  735,  737,  738,  740,  729,  730,  730,  730,        727,  728,  729,  730,  731,  732,  733,  734,  735,  736,
       730,  730,  730,  730,  730,  730,  741,  742,  743,  730,        737,  738,  739,  740,  741,  742,  743,  744,  745,  746,
       744,  746,  730,  747,  748,  730,  730,  750,  751,  730,        747,  748,  749,  750,  751,  753,  754,  756,  757,  758,
   
       752,  753,  754,  755,  757,  758,  759,  760,  761,  762,        760,  761,  763,  751,  752,  752,  752,  752,  752,  752,
       763,  765,  766,  766,  768,  769,  770,  771,  773,  774,        752,  752,  752,  764,  765,  766,  752,  767,  768,  752,
       775,  776,  777,  778,  779,  780,  781,  782,  783,  784,        770,  771,  752,  752,  772,  774,  752,  755,  775,  776,
       785,  786,  787,  788,  789,  789,  790,  791,  792,  793,        755,  777,  778,  779,  781,  782,  783,  784,  755,  785,
       794,  789,  796,  798,  799,  800,  802,  803,  805,  807,        786,  787,  789,  790,  790,  755,  755,  792,  793,  794,
       808,  789,  789,  809,  810,  811,  789,  812,  813,  815,        795,  796,  798,  799,  800,  801,  802,  803,  804,  805,
       816,  817,  818,  819,  820,  821,  822,  823,  824,  825,        806,  807,  808,  809,  810,  811,  812,  813,  814,  814,
       826,  827,  828,  829,  830,  831,  832,  833,  834,  835,        815,  816,  817,  818,  819,  814,  820,  822,  824,  825,
       836,  837,  838,  839,  840,  841,  842,  843,  844,  845,        826,  828,  829,  831,  833,  814,  814,  834,  835,  836,
       846,  847,  848,  849,  850,  851,  853,  854,  855,  856,        814,  837,  838,  839,  841,  842,  843,  844,  845,  846,
   
         847,  848,  849,  850,  851,  852,  853,  854,  855,  856,
       857,  858,  859,  860,  861,  862,  863,  864,  865,  866,        857,  858,  859,  860,  861,  862,  863,  864,  865,  866,
       867,  868,  869,  871,  865,  870,  872,  873,  874,  869,        867,  868,  869,  870,  871,  872,  873,  874,  875,  876,
       872,  875,  876,  877,  873,  878,  869,  879,  870,  880,        877,  879,  880,  881,  882,  883,  884,  885,  886,  887,
       877,  881,  883,  884,  885,  886,  887,  877,  888,  889,        888,  889,  890,  891,  892,  893,  894,  895,  897,  891,
       890,  891,  892,  893,  894,  895,  897,  899,  901,  902,        896,  898,  899,  900,  895,  898,  901,  902,  903,  899,
       903,  904,  905,  907,  908,  909,  910,  912,  913,  914,        904,  895,  905,  896,  906,  903,  907,  909,  911,  910,
       915,  916,  917,  918,  919,  920,  922,  923,  924,  925,        912,  913,  903,  910,  914,  914,  915,  916,  917,  918,
       926,  927,  928,  929,  930,  931,  932,  933,  934,  936,        919,  911,  920,  921,  914,  922,  923,  924,  925,  926,
       935,  937,  938,  933,  935,  939,  934,  940,  941,  942,        913,  927,  929,  931,  933,  934,  935,  936,  937,  939,
       944,  945,  946,  947,  948,  950,  951,  952,  953,  954,  
         940,  941,  942,  943,  945,  946,  947,  948,  949,  950,
       955,  956,  957,  959,  960,  961,  962,  963,  964,  965,        951,  952,  953,  955,  956,  957,  958,  959,  960,  961,
       966,  967,  968,  969,  970,  972,  973,  974,  975,  976,        962,  963,  964,  965,  966,  967,  969,  968,  970,  971,
       978,  979,  981,  983,  985,  986,  987,  989,  991,  992,        966,  968,  972,  967,  973,  974,  975,  976,  978,  979,
       993,  994,  995,  997,  998,  999, 1000, 1001, 1002, 1003,        980,  981,  982,  984,  985,  986,  987,  988,  989,  990,
      1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,        991,  993,  994,  995,  996,  997,  998,  999, 1000, 1001,
      1015, 1016, 1017, 1016, 1018, 1019, 1020, 1021, 1022, 1023,       1002, 1003, 1004, 1006, 1007, 1008, 1009, 1010, 1012, 1013,
      1016, 1024, 1025, 1026, 1027, 1028, 1029, 1017, 1030, 1031,       1015, 1017, 1019, 1020, 1021, 1023, 1025, 1026, 1027, 1028,
      1032, 1033, 1034, 1035, 1037, 1038, 1039, 1040, 1041, 1042,       1029, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1039, 1040,
      1044, 1045, 1046, 1047, 1048, 1049, 1051, 1053, 1054, 1055,       1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050,
      1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065,  
        1051, 1050, 1052, 1053, 1054, 1055, 1056, 1057, 1050, 1058,
      1066, 1067, 1068, 1069, 1071, 1072, 1073, 1074, 1075, 1076,       1059, 1060, 1061, 1062, 1063, 1051, 1064, 1065, 1066, 1067,
      1077, 1078, 1079, 1080, 1081, 1083, 1085, 1087, 1088, 1089,       1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077,
      1090, 1092, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1102,       1078, 1079, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1089,
      1103, 1097, 1105, 1106, 1108, 1110, 1111, 1112, 1113, 1114,       1090, 1091, 1092, 1093, 1094, 1096, 1098, 1099, 1100, 1101,
      1115, 1097, 1097, 1116, 1118, 1119, 1097, 1120, 1122, 1123,       1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111,
      1125, 1127, 1128, 1129, 1131, 1132, 1133, 1135, 1136, 1137,       1112, 1113, 1114, 1115, 1117, 1118, 1119, 1120, 1121, 1122,
      1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147,       1123, 1124, 1125, 1126, 1127, 1129, 1131, 1133, 1134, 1135,
      1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157,       1136, 1137, 1139, 1141, 1142, 1143, 1144, 1145, 1146, 1147,
      1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167,       1149, 1150, 1144, 1152, 1153, 1155, 1157, 1158, 1159, 1160,
      1168, 1169, 1170, 1171, 1172, 1174, 1175, 1176, 1177, 1178,  
        1161, 1162, 1144, 1144, 1163, 1165, 1166, 1144, 1167, 1169,
      1179, 1180, 1181, 1182, 1184, 1185, 1186, 1188, 1189, 1190,       1170, 1172, 1174, 1175, 1176, 1178, 1179, 1180, 1182, 1183,
      1192, 1193, 1194, 1195, 1196, 1197, 1198, 1200, 1201, 1202,       1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, 1192, 1193,
      1203, 1204, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213,       1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203,
      1214, 1215, 1216, 1217, 1219, 1221, 1223, 1225, 1226, 1227,       1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213,
      1228, 1229, 1230, 1231, 1232, 1233, 1235, 1231, 1236, 1237,       1214, 1215, 1216, 1217, 1218, 1219, 1221, 1222, 1223, 1224,
      1239, 1240, 1241, 1243, 1244, 1245, 1246, 1248, 1249, 1250,       1225, 1226, 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1234,
      1251, 1252, 1253, 1254, 1255, 1256, 1258, 1259, 1260, 1261,       1235, 1236, 1237, 1238, 1239, 1240, 1242, 1243, 1244, 1246,
      1263, 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1271, 1272,       1247, 1248, 1248, 1249, 1251, 1252, 1248, 1253, 1254, 1255,
      1273, 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1281, 1264,       1256, 1257, 1259, 1260, 1261, 1262, 1263, 1265, 1266, 1267,
      1282, 1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1291,  
        1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1276, 1278,
      1292, 1293, 1294, 1296, 1297, 1299, 1300, 1301, 1303, 1304,       1280, 1281, 1283, 1285, 1286, 1287, 1288, 1289, 1290, 1291,
      1305, 1306, 1308, 1310, 1311, 1313, 1315, 1316, 1318, 1319,       1292, 1293, 1295, 1291, 1296, 1297, 1299, 1300, 1301, 1303,
      1320, 1322, 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1330,       1304, 1305, 1306, 1308, 1309, 1310, 1311, 1312, 1313, 1314,
      1331, 1332, 1333, 1334, 1335, 1336, 1337, 1338, 1339, 1340,       1315, 1316, 1318, 1319, 1320, 1321, 1323, 1324, 1325, 1326,
      1341, 1343, 1345, 1346, 1347, 1348, 1350, 1351, 1352, 1354,       1327, 1328, 1329, 1330, 1331, 1332, 1333, 1334, 1335, 1336,
      1355, 1357, 1358, 1360, 1361, 1362, 1363, 1365, 1366, 1367,       1337, 1338, 1339, 1340, 1341, 1324, 1342, 1343, 1344, 1345,
      1368, 1369, 1370, 1371, 1372, 1373, 1375, 1376, 1377, 1378,       1346, 1347, 1348, 1349, 1350, 1351, 1352, 1353, 1354, 1355,
      1379, 1380, 1381, 1382, 1383, 1384, 1385, 1386, 1387, 1388,       1356, 1357, 1358, 1359, 1360, 1361, 1362, 1363, 1364, 1366,
      1389, 1390, 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1398,       1367, 1369, 1370, 1371, 1372, 1374, 1375, 1376, 1377, 1378,
      1399, 1400, 1401, 1403, 1404, 1406, 1407, 1409, 1411, 1412,  
        1378, 1380, 1382, 1384, 1380, 1385, 1387, 1389, 1390, 1392,
      1413, 1414, 1415, 1416, 1417, 1418, 1419, 1421, 1422, 1423,       1393, 1394, 1396, 1397, 1398, 1399, 1400, 1401, 1402, 1380,
      1425, 1426, 1427, 1428, 1429, 1431, 1432, 1433, 1434, 1435,       1380, 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411,
      1436, 1437, 1439, 1441, 1443, 1444, 1445, 1446, 1447, 1448,       1412, 1413, 1414, 1415, 1416, 1418, 1420, 1421, 1422, 1423,
      1450, 1452, 1453, 1455, 1456, 1458, 1459, 1461, 1462, 1463,       1425, 1426, 1427, 1429, 1430, 1432, 1433, 1435, 1436, 1437,
      1465, 1466, 1467, 1468, 1470, 1471, 1472, 1473, 1474, 1475,       1438, 1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448,
      1476, 1478, 1480, 1481, 1482, 1483, 1484, 1485, 1486, 1487,       1450, 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458, 1459,
      1488, 1490, 1491, 1492, 1493, 1494, 1496, 1497, 1498, 1500,       1460, 1461, 1462, 1463, 1464, 1465, 1466, 1467, 1468, 1469,
      1501, 1502, 1503, 1504, 1505, 1506, 1508, 1510, 1511, 1512,       1470, 1471, 1472, 1473, 1474, 1475, 1476, 1477, 1478, 1479,
      1514, 1515, 1516, 1517, 1518, 1519, 1520, 1521, 1523, 1524,       1481, 1482, 1483, 1484, 1485, 1486, 1487, 1489, 1490, 1491,
      1525, 1526, 1527, 1529, 1530, 1531, 1532, 1533, 1535, 1536,  
        1493, 1494, 1496, 1498, 1499, 1500, 1501, 1503, 1499, 1502,
      1538, 1539, 1540, 1542, 1543, 1545, 1546, 1547, 1548, 1549,       1502, 1504, 1505, 1506, 1507, 1508, 1509, 1510, 1500, 1502,
      1550, 1552, 1553, 1554, 1555, 1556, 1557, 1559, 1560, 1562,       1512, 1513, 1514, 1516, 1517, 1501, 1518, 1519, 1520, 1521,
      1563, 1564, 1565, 1567, 1569, 1570, 1571, 1572, 1574, 1575,       1523, 1524, 1525, 1526, 1527, 1528, 1529, 1531, 1533, 1535,
      1577, 1578, 1580, 1581, 1582, 1583, 1585, 1586, 1588, 1589,       1536, 1537, 1538, 1539, 1540, 1542, 1544, 1545, 1547, 1548,
      1591, 1592, 1593, 1595, 1596, 1597, 1598, 1599, 1600, 1601,       1550, 1551, 1553, 1554, 1555, 1557, 1558, 1559, 1560, 1562,
      1602, 1603, 1604, 1605, 1606, 1608, 1609, 1610, 1612, 1613,       1563, 1564, 1565, 1566, 1567, 1568, 1570, 1572, 1573, 1574,
      1615, 1617, 1618, 1620, 1622, 1624, 1626, 1627, 1629, 1630,       1575, 1576, 1577, 1578, 1579, 1580, 1582, 1583, 1584, 1585,
      1632, 1634, 1635, 1636, 1637, 1638, 1639, 1641, 1642, 1643,       1586, 1587, 1589, 1591, 1593, 1594, 1596, 1597, 1598, 1599,
      1644, 1645, 1646, 1647, 1648, 1649, 1650, 1652, 1654, 1656,       1601, 1602, 1603, 1604, 1602, 1605, 1606, 1607, 1608, 1609,
      1657, 1659, 1661, 1662, 1663, 1664, 1665, 1667, 1669, 1671,  
        1610, 1611, 1602, 1612, 1613, 1615, 1616, 1617, 1618, 1602,
      1673, 1675, 1677, 1678, 1679, 1681, 1682, 1684, 1685, 1686,       1602, 1619, 1620, 1621, 1623, 1625, 1626, 1627, 1629, 1630,
      1687, 1688, 1689, 1690, 1691, 1692, 1693, 1694, 1695, 1697,       1631, 1632, 1633, 1634, 1635, 1636, 1637, 1639, 1640, 1641,
      1699, 1701, 1703, 1705, 1707, 1707, 1708, 1708, 1709, 1710,       1642, 1643, 1645, 1646, 1647, 1648, 1649, 1651, 1652, 1654,
      1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, 1718, 1719,       1655, 1656, 1658, 1659, 1661, 1662, 1663, 1664, 1665, 1666,
      1720, 1721, 1722, 1723, 1724, 1725, 1726, 1727, 1728, 1729,       1668, 1669, 1670, 1671, 1672, 1673, 1675, 1676, 1678, 1680,
      1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737, 1738, 1739,       1681, 1683, 1684, 1685, 1686, 1687, 1688, 1685, 1689, 1689,
      1740, 1741, 1742, 1743, 1744, 1745, 1746, 1747, 1748, 1749,       1691, 1692, 1693, 1694, 1695, 1696, 1696, 1686, 1689, 1697,
      1750, 1751, 1752, 1753, 1754, 1755, 1756, 1757, 1758, 1759,       1698, 1699, 1700, 1701, 1702, 1688, 1703, 1705, 1707, 1708,
      1760, 1761, 1762, 1763, 1764, 1765, 1766, 1767, 1768, 1769,       1709, 1710, 1712, 1713, 1714, 1716, 1717, 1719, 1720, 1721,
      1770, 1771, 1772, 1773, 1774, 1775, 1776, 1777, 1778, 1779,  
        1722, 1724, 1725, 1727, 1728, 1730, 1731, 1732, 1734, 1735,
      1780, 1781, 1782, 1783, 1784, 1785, 1785, 1786, 1787, 1788,       1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743, 1744, 1745,
      1789, 1790, 1791, 1792, 1793, 1794, 1795, 1796, 1797, 1798,       1747, 1748, 1749, 1751, 1752, 1754, 1755, 1756, 1757, 1758,
      1799, 1800, 1801, 1802, 1803, 1804, 1805, 1806, 1807, 1808,       1759, 1760, 1761, 1762, 1763, 1764, 1765, 1766, 1767, 1768,
      1809, 1810, 1811, 1812, 1813, 1814, 1815, 1816, 1817, 1818,       1768, 1769, 1769, 1771, 1771, 1772, 1773, 1773, 1774, 1775,
      1819, 1820, 1821, 1822, 1823, 1824, 1825, 1826, 1827, 1828,       1777, 1779, 1780, 1782, 1784, 1786, 1787, 1789, 1790, 1792,
      1829, 1830, 1831, 1832, 1833, 1834, 1835, 1836, 1837, 1838,       1793, 1795, 1797, 1798, 1799, 1800, 1801, 1802, 1804, 1805,
      1839, 1840, 1841, 1842, 1843, 1844, 1845, 1846, 1847, 1848,       1806, 1807, 1808, 1809, 1810, 1811, 1812, 1813, 1815, 1816,
      1849, 1850, 1851, 1852, 1853, 1854, 1855, 1856, 1857, 1858,       1817, 1818, 1819, 1820, 1821, 1821, 1822, 1823, 1824, 1825,
      1859, 1860, 1861, 1862, 1863, 1864, 1865, 1866, 1867, 1868,       1826, 1826, 1827, 1828, 1828, 1829, 1829, 1831, 1831, 1833,
      1869, 1870, 1871, 1872, 1873, 1874, 1875, 1876, 1877, 1878,  
        1833, 1834, 1834, 1836, 1838, 1840, 1841, 1843, 1844, 1846,
      1879, 1880, 1881, 1882, 1883, 1884, 1885, 1886, 1887, 1888,       1848, 1849, 1850, 1851, 1852, 1854, 1856, 1858, 1860, 1862,
      1889, 1890, 1891, 1892, 1893, 1894, 1895, 1896, 1897, 1898,       1864, 1865, 1866, 1867, 1868, 1869, 1870, 1870, 1871, 1871,
      1899, 1900,  610,  609,  608,  607,  606,  605,  604,  603,       1872, 1872, 1874, 1874, 1875, 1876, 1876, 1877, 1878, 1878,
       602,  601,  600,  599,  598,  597,  596,  595,  593,  591,       1880, 1880, 1881, 1881, 1883, 1883, 1885, 1886, 1888, 1889,
       590,  589,  588,  587,  586,  585,  584,  583,  582,  581,       1891, 1892, 1893, 1894, 1895, 1896, 1896, 1897, 1898, 1898,
       579,  578,  577,  576,  575,  574,  573,  572,  571,  570,       1899, 1899, 1901, 1901, 1903, 1903, 1905, 1905, 1906, 1906,
       569,  568,  566,  565,  564,  563,  562,  561,  560,  559,       1908, 1909, 1909, 1911, 1911, 1912, 1913, 1914, 1915, 1916,
       558,  556,  555,  554,  553,  552,  551,  549,  548,  547,       1917, 1918, 1918, 1920, 1920, 1921, 1921, 1923, 1923, 1925,
       546,  545,  544,  543,  542,  541,  540,  539,  538,  537,       1926, 1926, 1928, 1929, 1930, 1932, 1934, 1936, 1937, 1937,
       536,  535,  534,  533,  532,  531,  530,  529,  528,  526,  
        1939, 1939, 1940, 1942, 1944, 1945, 1945, 1947, 1949, 1951,
       525,  524,  523,  521,  520,  519,  518,  517,  516,  515,       1951, 1952, 1952, 1953, 1953, 1954, 1955, 1955, 1956, 1957,
       514,  513,  512,  511,  510,  509,  507,  506,  505,  504,       1958, 1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967,
       503,  502,  501,  500,  499,  497,  496,  494,  493,  492,       1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1977,
       491,  490,  489,  488,  487,  485,  483,  482,  481,  480,       1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987,
       479,  478,  477,  476,  475,  474,  473,  472,  471,  470,       1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
       469,  467,  466,  465,  464,  463,  461,  460,  459,  458,       1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
       457,  456,  455,  454,  453,  452,  451,  450,  449,  447,       2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
       445,  444,  443,  442,  441,  440,  438,  437,  436,  435,       2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026, 2027,
       434,  433,  432,  430,  429,  426,  425,  424,  423,  422,       2028, 2029, 2030, 2031, 2031, 2032, 2033, 2034, 2035, 2036,
       421,  420,  419,  418,  417,  415,  414,  413,  412,  411,  
        2037, 2038, 2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046,
       410,  409,  408,  407,  406,  405,  404,  403,  402,  401,       2047, 2048, 2049, 2050, 2051, 2052, 2053, 2054, 2055, 2056,
       399,  398,  397,  396,  395,  394,  393,  392,  391,  390,       2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2066,
       388,  387,  386,  384,  383,  382,  380,  379,  377,  376,       2067, 2068, 2069, 2070, 2071, 2072, 2073, 2074, 2075, 2076,
       375,  374,  373,  371,  370,  368,  367,  366,  365,  364,       2077, 2078, 2079, 2080, 2081, 2082, 2083, 2084, 2085, 2086,
       363,  362,  361,  359,  358,  357,  356,  355,  354,  353,       2087, 2088, 2089, 2090, 2091, 2092, 2093, 2094, 2095, 2096,
       352,  351,  350,  349,  348,  347,  346,  345,  344,  343,       2097, 2098, 2099, 2100, 2101, 2102, 2103, 2104, 2105, 2106,
       342,  341,  339,  338,  337,  336,  335,  334,  333,  332,       2107, 2108, 2109, 2110, 2111, 2112, 2113, 2114, 2115, 2116,
       331,  330,  329,  328,  327,  326,  325,  324,  323,  322,       2117, 2118, 2119, 2120, 2121, 2122, 2123, 2124, 2125, 2126,
       321,  320,  318,  317,  316,  314,  313,  312,  311,  310,       2127, 2128, 2129, 2130, 2131, 2132, 2133, 2134, 2135, 2136,
       309,  308,  307,  306,  305,  304,  303,  302,  301,  300,  
        2137, 2138, 2139, 2140, 2141, 2142, 2143, 2144, 2145, 2146,
       299,  296,  295,  294,  293,  292,  289,  287,  286,  285,       2147, 2148, 2149, 2150, 2151, 2152, 2153, 2154, 2155, 2156,
       284,  283,  282,  281,  280,  279,  278,  277,  276,  275,       2157,  620,  619,  618,  617,  616,  615,  614,  613,  611,
       274,  272,  271,  270,  269,  268,  267,  266,  265,  264,        609,  608,  607,  606,  605,  604,  603,  602,  601,  600,
       263,  262,  261,  260,  258,  257,  256,  255,  254,  253,        599,  597,  596,  595,  594,  593,  592,  591,  590,  589,
       252,  251,  250,  249,  248,  247,  244,  243,  242,  241,        588,  587,  586,  584,  583,  582,  581,  580,  579,  578,
       240,  239,  238,  237,  236,  235,  234,  233,  232,  230,        577,  576,  574,  573,  572,  571,  570,  569,  567,  566,
       229,  228,  227,  226,  225,  222,  221,  219,  218,  216,        565,  564,  563,  562,  561,  560,  559,  558,  557,  556,
       215,  213,  212,  211,  210,  209,  208,  207,  206,  205,        555,  554,  553,  552,  551,  550,  549,  548,  547,  546,
       204,  203,  202,  201,  200,  199,  198,  197,  196,  195,        544,  543,  542,  541,  539,  538,  537,  536,  535,  534,
       193,  192,  191,  190,  189,  188,  187,  186,  185,  184,  
         533,  532,  531,  530,  529,  528,  527,  526,  524,  523,
       183,  182,  181,  180,  179,  178,  177,  176,  175,  174,        522,  521,  520,  519,  518,  517,  516,  514,  513,  511,
       173,  172,  171,  169,  168,  166,  165,  164,  162,  161,        510,  509,  508,  507,  506,  505,  504,  503,  501,  499,
       160,  159,  158,  157,  156,  155,  152,  151,  150,  149,        498,  497,  496,  495,  494,  493,  492,  491,  490,  489,
       148,  147,  146,  145,  144,  143,  142,  140,  137,  136,        488,  487,  486,  485,  483,  482,  480,  479,  477,  476,
       135,  133,  130,  129,  128,  127,  126,  125,  124,  123,        475,  474,  473,  472,  471,  470,  469,  468,  467,  466,
       122,  121,  120,  119,  118,  114,  113,  112,  110,  109,        465,  464,  462,  460,  459,  458,  457,  456,  455,  453,
       107,  106,  104,  103,  102,  101,   97,   96,   95,   92,        452,  451,  450,  449,  448,  447,  445,  444,  441,  440,
        91,   90,   88,   86,   85,   84,   83,   82,   81,   78,        439,  438,  437,  436,  435,  434,  433,  432,  430,  429,
        77,   76,   75,   74,   73,   71,   70,   69,   68,   67,        428,  427,  426,  425,  424,  423,  422,  421,  420,  419,
        66,   65,   64,   63,   62,   61,   60,   59,   58,   57,  
         418,  417,  416,  414,  413,  412,  411,  410,  409,  408,
        56,   55,   54,   53,   52,   51,   49,   48,   47,   46,        407,  406,  405,  403,  402,  401,  399,  398,  397,  395,
        44,   43,   42,   41,   37,   35,   32,   28,   19,    8,        394,  392,  391,  390,  389,  388,  387,  385,  384,  382,
         5, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,        381,  380,  379,  378,  377,  376,  375,  373,  372,  371,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,        370,  369,  368,  367,  366,  365,  364,  363,  362,  361,
      1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706,        360,  359,  358,  357,  356,  355,  354,  352,  351,  350,
      1706, 1706, 1706, 1706, 1706        349,  348,  347,  346,  345,  344,  343,  342,  341,  340,
         339,  338,  337,  336,  335,  334,  333,  331,  330,  329,
         327,  326,  325,  324,  323,  322,  321,  320,  319,  318,
         317,  316,  315,  314,  313,  312,  311,  308,  307,  306,
   
         305,  304,  301,  299,  298,  297,  296,  295,  294,  293,
         292,  291,  290,  289,  288,  287,  286,  284,  283,  282,
         281,  280,  279,  278,  277,  276,  275,  274,  273,  272,
         270,  269,  268,  267,  266,  265,  264,  263,  262,  261,
         260,  259,  256,  255,  254,  253,  252,  251,  250,  249,
         248,  247,  246,  245,  244,  243,  241,  240,  239,  238,
         237,  236,  233,  232,  230,  229,  228,  226,  225,  223,
         222,  221,  220,  219,  218,  217,  216,  215,  214,  213,
         212,  211,  210,  209,  208,  207,  206,  205,  203,  202,
         201,  200,  199,  198,  197,  196,  195,  194,  193,  192,
   
         191,  190,  189,  188,  187,  186,  185,  184,  183,  182,
         181,  180,  178,  177,  175,  174,  173,  171,  170,  169,
         168,  167,  166,  165,  164,  161,  160,  159,  158,  157,
         156,  155,  154,  153,  152,  151,  149,  146,  145,  144,
         139,  138,  137,  136,  135,  134,  133,  132,  131,  130,
         129,  128,  127,  123,  119,  118,  117,  115,  114,  112,
         111,  109,  108,  107,  106,  102,  100,   97,   96,   95,
          93,   91,   90,   89,   88,   87,   86,   83,   82,   81,
          80,   79,   78,   76,   75,   74,   73,   72,   71,   70,
          69,   68,   67,   66,   65,   64,   63,   62,   61,   60,
   
          59,   58,   57,   56,   54,   53,   52,   51,   49,   48,
          47,   46,   42,   40,   37,   34,   30,   21,   10,    7,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950,
        1950, 1950, 1950, 1950
     } ;      } ;
   
 static yy_state_type yy_last_accepting_state;  static yy_state_type yy_last_accepting_state;
Line 1399
 
Line 1547
 #line 2 "loader.l"  #line 2 "loader.l"
 /*  /*
  * static char *rcsid_object_c =   * static char *rcsid_object_c =
  *   "$Id: loader.c,v 1.12 2001/04/09 06:59:46 mwedel Exp $";   *   "$Id: loader.c,v 1.13 2001/06/13 10:48:43 michtoen Exp $";
  */   */
   
 /*  /*
Line 1479
 
Line 1627
   "is_wooded","is_hilly","has_ready_skill","has_ready_weapon",    "is_wooded","is_hilly","has_ready_skill","has_ready_weapon",
   "no_skill_ident","glow_radius","is_blind","can_see_in_dark",    "no_skill_ident","glow_radius","is_blind","can_see_in_dark",
   "is_cauldron","randomitems","is_dust", "no_steal", "one_hit","berserk",    "is_cauldron","randomitems","is_dust", "no_steal", "one_hit","berserk",
   /* GROS - These are hooks for script events */
     "script_load","script_apply","script_say","script_trigger", "script_time",
     "script_attack","script_drop", "script_throw", "script_stop", "script_death", "current_weapon_script",
     "start_script_load", "start_script_apply","start_script_say","start_script_trigger","start_script_time",
     "start_script_attack","start_script_drop","start_script_throw","start_script_stop", "start_script_death",
     "end_script_load", "end_script_apply","end_script_say","end_script_trigger","end_script_time",
     "end_script_attack","end_script_drop","end_script_throw","end_script_stop", "end_script_death",
 #ifdef NPC_PROG  #ifdef NPC_PROG
   "npc_status","npc_program",    "npc_status","npc_program",
 #endif  #endif
Line 1491
 
Line 1646
   
 static int lex_error;  static int lex_error;
 static char msgbuf[HUGE_BUF];  static char msgbuf[HUGE_BUF];
   /* GROS: To contain the script embedded inside objects */
   static char scriptbuf[HUGE_BUF];
   
 #define FREE_AND_COPY(sv,nv) { if (sv) free_string(sv); sv=add_string(nv); }  #define FREE_AND_COPY(sv,nv) { if (sv) free_string(sv); sv=add_string(nv); }
 #define SET_OR_CLEAR_FLAG(op, flag, val) \  #define SET_OR_CLEAR_FLAG(op, flag, val) \
Line 1533
 
Line 1690
   
 #define MESSAGE 1  #define MESSAGE 1
   
   #define SCRIPT 2
   
 /* Don't have to link with -lfl with this */  /* Don't have to link with -lfl with this */
 /* need yy_push_state, yy_pop_state */  /* need yy_push_state, yy_pop_state */
 #define YY_STACK_USED 1  #define YY_STACK_USED 1
Line 1689
 
Line 1848
  register char *yy_cp = NULL, *yy_bp = NULL;   register char *yy_cp = NULL, *yy_bp = NULL;
  register int yy_act;   register int yy_act;
   
 #line 151 "loader.l"  #line 162 "loader.l"
   
   
   
Line 1751
 
Line 1910
  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 >= 1707 )   if ( yy_current_state >= 1951 )
  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] != 1922 );   while ( yy_base[yy_current_state] != 2221 );
   
 yy_find_action:  yy_find_action:
  yy_act = yy_accept[yy_current_state];   yy_act = yy_accept[yy_current_state];
Line 1788
 
Line 1947
 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 161 "loader.l"  #line 172 "loader.l"
 { BEGIN( MESSAGE ); msgbuf[0]='\0'; }  { BEGIN( MESSAGE ); msgbuf[0]='\0'; }
  YY_BREAK   YY_BREAK
 case 2:  case 2:
Line 1796
 
Line 1955
 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 162 "loader.l"  #line 173 "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 1809
 
Line 1968
  YY_BREAK   YY_BREAK
 case 3:  case 3:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 171 "loader.l"  #line 182 "loader.l"
 {strcat(msgbuf, yytext); strcat(msgbuf,"\n"); }  {strcat(msgbuf, yytext); strcat(msgbuf,"\n"); }
  YY_BREAK   YY_BREAK
 case 4:  case 4:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 184 "loader.l"
   { BEGIN( SCRIPT ); scriptbuf[0]='\0'; }
    YY_BREAK
   case 5:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 185 "loader.l"
   { BEGIN( INITIAL );
    op->script_str_load=add_string(scriptbuf);
    /* Just print a warning so we can be reasonably safe
    * about not overflowing the buffer.
    */
    if (strlen(op->script_str_load) > (HUGE_BUF/2))
        LOG(llevDebug, "\n\tWarning script length > %d (max allowed=%d): %d\n>%.80s<\n",
    HUGE_BUF/2, HUGE_BUF, strlen(op->script_str_load),op->script_str_load);
        }
    YY_BREAK
   case 6:
   YY_RULE_SETUP
   #line 194 "loader.l"
   {strcat(scriptbuf, yytext); strcat(scriptbuf,"\n"); }
    YY_BREAK
   case 7:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 196 "loader.l"
   { BEGIN( SCRIPT ); scriptbuf[0]='\0'; }
    YY_BREAK
   case 8:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 197 "loader.l"
   { BEGIN( INITIAL );
    op->script_str_apply=add_string(scriptbuf);
    /* Just print a warning so we can be reasonably safe
    * about not overflowing the buffer.
    */
    if (strlen(op->script_str_apply) > (HUGE_BUF/2))
        LOG(llevDebug, "\n\tWarning script length > %d (max allowed=%d): %d\n>%.80s<\n",
    HUGE_BUF/2, HUGE_BUF, strlen(op->script_str_apply),op->script_str_apply);
        }
    YY_BREAK
   case 9:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 207 "loader.l"
   { BEGIN( SCRIPT ); scriptbuf[0]='\0'; }
    YY_BREAK
   case 10:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 208 "loader.l"
   { BEGIN( INITIAL );
    op->script_str_say=add_string(scriptbuf);
    /* Just print a warning so we can be reasonably safe
    * about not overflowing the buffer.
    */
    if (strlen(op->script_str_say) > (HUGE_BUF/2))
        LOG(llevDebug, "\n\tWarning script length > %d (max allowed=%d): %d\n>%.80s<\n",
    HUGE_BUF/2, HUGE_BUF, strlen(op->script_str_say),op->script_str_say);
        }
    YY_BREAK
   case 11:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 218 "loader.l"
   { BEGIN( SCRIPT ); scriptbuf[0]='\0'; }
    YY_BREAK
   case 12:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 219 "loader.l"
   { BEGIN( INITIAL );
    op->script_str_trigger=add_string(scriptbuf);
    /* Just print a warning so we can be reasonably safe
    * about not overflowing the buffer.
    */
    if (strlen(op->script_str_trigger) > (HUGE_BUF/2))
        LOG(llevDebug, "\n\tWarning script length > %d (max allowed=%d): %d\n>%.80s<\n",
    HUGE_BUF/2, HUGE_BUF, strlen(op->script_str_trigger),op->script_str_trigger);
        }
    YY_BREAK
   case 13:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 229 "loader.l"
   { BEGIN( SCRIPT ); scriptbuf[0]='\0'; }
    YY_BREAK
   case 14:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 230 "loader.l"
   { BEGIN( INITIAL );
    op->script_str_time=add_string(scriptbuf);
    /* Just print a warning so we can be reasonably safe
    * about not overflowing the buffer.
    */
    if (strlen(op->script_str_time) > (HUGE_BUF/2))
        LOG(llevDebug, "\n\tWarning script length > %d (max allowed=%d): %d\n>%.80s<\n",
    HUGE_BUF/2, HUGE_BUF, strlen(op->script_str_time),op->script_str_time);
        }
    YY_BREAK
   case 15:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 240 "loader.l"
   { BEGIN( SCRIPT ); scriptbuf[0]='\0'; }
    YY_BREAK
   case 16:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 241 "loader.l"
   { BEGIN( INITIAL );
    op->script_str_attack=add_string(scriptbuf);
    /* Just print a warning so we can be reasonably safe
    * about not overflowing the buffer.
    */
    if (strlen(op->script_str_attack) > (HUGE_BUF/2))
        LOG(llevDebug, "\n\tWarning script length > %d (max allowed=%d): %d\n>%.80s<\n",
    HUGE_BUF/2, HUGE_BUF, strlen(op->script_str_attack),op->script_str_attack);
        }
    YY_BREAK
   case 17:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 251 "loader.l"
   { BEGIN( SCRIPT ); scriptbuf[0]='\0'; }
    YY_BREAK
   case 18:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 252 "loader.l"
   { BEGIN( INITIAL );
    op->script_str_drop=add_string(scriptbuf);
    /* Just print a warning so we can be reasonably safe
    * about not overflowing the buffer.
    */
    if (strlen(op->script_str_drop) > (HUGE_BUF/2))
        LOG(llevDebug, "\n\tWarning script length > %d (max allowed=%d): %d\n>%.80s<\n",
    HUGE_BUF/2, HUGE_BUF, strlen(op->script_str_drop),op->script_str_drop);
        }
    YY_BREAK
   case 19:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 262 "loader.l"
   { BEGIN( SCRIPT ); scriptbuf[0]='\0'; }
    YY_BREAK
   case 20:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 263 "loader.l"
   { BEGIN( INITIAL );
    op->script_str_throw=add_string(scriptbuf);
    /* Just print a warning so we can be reasonably safe
    * about not overflowing the buffer.
    */
    if (strlen(op->script_str_throw) > (HUGE_BUF/2))
        LOG(llevDebug, "\n\tWarning script length > %d (max allowed=%d): %d\n>%.80s<\n",
    HUGE_BUF/2, HUGE_BUF, strlen(op->script_str_throw),op->script_str_throw);
        }
    YY_BREAK
   case 21:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 273 "loader.l"
   { BEGIN( SCRIPT ); scriptbuf[0]='\0'; }
    YY_BREAK
   case 22:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 274 "loader.l"
   { BEGIN( INITIAL );
    op->script_str_stop=add_string(scriptbuf);
    /* Just print a warning so we can be reasonably safe
    * about not overflowing the buffer.
    */
    if (strlen(op->script_str_stop) > (HUGE_BUF/2))
        LOG(llevDebug, "\n\tWarning script length > %d (max allowed=%d): %d\n>%.80s<\n",
    HUGE_BUF/2, HUGE_BUF, strlen(op->script_str_stop),op->script_str_stop);
        }
    YY_BREAK
   case 23:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 284 "loader.l"
   { BEGIN( SCRIPT ); scriptbuf[0]='\0'; }
    YY_BREAK
   case 24:
   *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
   yy_c_buf_p = yy_cp -= 1;
   YY_DO_BEFORE_ACTION; /* set up yytext again */
   YY_RULE_SETUP
   #line 285 "loader.l"
   { BEGIN( INITIAL );
    op->script_str_death=add_string(scriptbuf);
    /* Just print a warning so we can be reasonably safe
    * about not overflowing the buffer.
    */
    if (strlen(op->script_str_death) > (HUGE_BUF/2))
        LOG(llevDebug, "\n\tWarning script length > %d (max allowed=%d): %d\n>%.80s<\n",
    HUGE_BUF/2, HUGE_BUF, strlen(op->script_str_death),op->script_str_death);
        }
    YY_BREAK
   case 25:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 174 "loader.l"  #line 295 "loader.l"
 { char *yv=yval();  { char *yv=yval();
   
  if (*yv=='\0') {   if (*yv=='\0') {
Line 1825
 
Line 2229
  op->name = add_string(yv);   op->name = add_string(yv);
      }       }
  YY_BREAK   YY_BREAK
 case 5:  case 26:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 184 "loader.l"  #line 305 "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");
  else FREE_AND_COPY(op->name, yv);   else FREE_AND_COPY(op->name, yv);
      }       }
  YY_BREAK   YY_BREAK
 case 6:  case 27:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 189 "loader.l"  #line 310 "loader.l"
 FREE_AND_COPY(op->race,yval());  FREE_AND_COPY(op->race,yval());
  YY_BREAK   YY_BREAK
 case 7:  case 28:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 190 "loader.l"  #line 311 "loader.l"
 FREE_AND_COPY(op->slaying, yval());  FREE_AND_COPY(op->slaying, yval());
  YY_BREAK   YY_BREAK
 case 8:  case 29:
 *yy_cp = yy_hold_char; /* undo effects of setting up yytext */  *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
 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 191 "loader.l"  #line 312 "loader.l"
 LOG(llevError,"Got depreciated Inventory command?\n");  LOG(llevError,"Got depreciated Inventory command?\n");
  YY_BREAK   YY_BREAK
 case 9:  case 30:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 194 "loader.l"  #line 315 "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 1877
 
Line 2281
  }   }
      }       }
  YY_BREAK   YY_BREAK
 case 10:  case 31:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 216 "loader.l"  #line 337 "loader.l"
 op->other_arch=find_archetype(yval());  op->other_arch=find_archetype(yval());
  YY_BREAK   YY_BREAK
 case 11:  case 32:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 217 "loader.l"  #line 338 "loader.l"
 {   {
  if (strcmp (yval(), "NONE") == 0) {   if (strcmp (yval(), "NONE") == 0) {
      op->animation_id = 0;       op->animation_id = 0;
Line 1895
 
Line 2299
  }   }
      }       }
  YY_BREAK   YY_BREAK
 case 12:  case 33:
 *yy_cp = yy_hold_char; /* undo effects of setting up yytext */  *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
 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 227 "loader.l"  #line 348 "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
         */          */
  ismore=1;   ismore=1;
      }       }
  YY_BREAK   YY_BREAK
 case 13:  case 34:
 *yy_cp = yy_hold_char; /* undo effects of setting up yytext */  *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
 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 233 "loader.l"  #line 354 "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 35:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 234 "loader.l"  #line 355 "loader.l"
 op->last_heal = IVAL;  op->last_heal = IVAL;
  YY_BREAK   YY_BREAK
 case 15:  case 36:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 235 "loader.l"  #line 356 "loader.l"
 op->last_sp = IVAL;  op->last_sp = IVAL;
  YY_BREAK   YY_BREAK
 case 16:  case 37:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 236 "loader.l"  #line 357 "loader.l"
 op->last_grace = IVAL;  op->last_grace = IVAL;
  YY_BREAK   YY_BREAK
 case 17:  case 38:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 237 "loader.l"  #line 358 "loader.l"
 op->last_eat = IVAL;  op->last_eat = IVAL;
  YY_BREAK   YY_BREAK
 case 18:  case 39:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 238 "loader.l"  #line 359 "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);
  if ((map_flags & MAP_STYLE) && (FABS(op->speed)<=MIN_ACTIVE_SPEED)) update_ob_speed(op);   if ((map_flags & MAP_STYLE) && (FABS(op->speed)<=MIN_ACTIVE_SPEED)) update_ob_speed(op);
      }       }
  YY_BREAK   YY_BREAK
 case 19:  case 40:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 243 "loader.l"  #line 364 "loader.l"
 op->speed_left = FVAL;  op->speed_left = FVAL;
  YY_BREAK   YY_BREAK
 case 20:  case 41:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 244 "loader.l"  #line 365 "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 42:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 247 "loader.l"  #line 368 "loader.l"
 op->face = &new_faces[FindFace(yval(), 0)];  op->face = &new_faces[FindFace(yval(), 0)];
  YY_BREAK   YY_BREAK
 case 22:  case 43:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 248 "loader.l"  #line 369 "loader.l"
 op->stats.Str = IVAL;  op->stats.Str = IVAL;
  YY_BREAK   YY_BREAK
 case 23:  case 44:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 249 "loader.l"  #line 370 "loader.l"
 op->stats.Dex = IVAL;  op->stats.Dex = IVAL;
  YY_BREAK   YY_BREAK
 case 24:  case 45:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 250 "loader.l"  #line 371 "loader.l"
 op->stats.Con = IVAL;  op->stats.Con = IVAL;
  YY_BREAK   YY_BREAK
 case 25:  case 46:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 251 "loader.l"  #line 372 "loader.l"
 op->stats.Wis = IVAL;  op->stats.Wis = IVAL;
  YY_BREAK   YY_BREAK
 case 26:  case 47:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 252 "loader.l"  #line 373 "loader.l"
 op->stats.Cha = IVAL;  op->stats.Cha = IVAL;
  YY_BREAK   YY_BREAK
 case 27:  case 48:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 253 "loader.l"  #line 374 "loader.l"
 op->stats.Int = IVAL;  op->stats.Int = IVAL;
  YY_BREAK   YY_BREAK
 case 28:  case 49:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 254 "loader.l"  #line 375 "loader.l"
 op->stats.Pow = IVAL;  op->stats.Pow = IVAL;
  YY_BREAK   YY_BREAK
 case 29:  case 50:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 255 "loader.l"  #line 376 "loader.l"
 op->stats.hp = IVAL;  op->stats.hp = IVAL;
  YY_BREAK   YY_BREAK
 case 30:  case 51:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 256 "loader.l"  #line 377 "loader.l"
 op->stats.maxhp = IVAL;  op->stats.maxhp = IVAL;
  YY_BREAK   YY_BREAK
 case 31:  case 52:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 257 "loader.l"  #line 378 "loader.l"
 op->stats.sp = IVAL;  op->stats.sp = IVAL;
  YY_BREAK   YY_BREAK
 case 32:  case 53:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 258 "loader.l"  #line 379 "loader.l"
 op->stats.maxsp = IVAL;  op->stats.maxsp = IVAL;
  YY_BREAK   YY_BREAK
 case 33:  case 54:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 259 "loader.l"  #line 380 "loader.l"
 op->stats.grace = IVAL;  op->stats.grace = IVAL;
  YY_BREAK   YY_BREAK
 case 34:  case 55:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 260 "loader.l"  #line 381 "loader.l"
 op->stats.maxgrace = IVAL;  op->stats.maxgrace = IVAL;
  YY_BREAK   YY_BREAK
 case 35:  case 56:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 261 "loader.l"  #line 382 "loader.l"
 op->stats.exp = atol(yval());  op->stats.exp = atol(yval());
  YY_BREAK   YY_BREAK
 case 36:  case 57:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 262 "loader.l"  #line 383 "loader.l"
 op->stats.food = IVAL;  op->stats.food = IVAL;
  YY_BREAK   YY_BREAK
 case 37:  case 58:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 263 "loader.l"  #line 384 "loader.l"
 op->stats.dam = IVAL;  op->stats.dam = IVAL;
  YY_BREAK   YY_BREAK
 case 38:  case 59:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 264 "loader.l"  #line 385 "loader.l"
 op->stats.wc = IVAL;  op->stats.wc = IVAL;
  YY_BREAK   YY_BREAK
 case 39:  case 60:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 265 "loader.l"  #line 386 "loader.l"
 op->stats.ac = IVAL;  op->stats.ac = IVAL;
  YY_BREAK   YY_BREAK
 case 40:  case 61:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 266 "loader.l"  #line 387 "loader.l"
 {op->x = IVAL; op->ox= op->x; }  {op->x = IVAL; op->ox= op->x; }
  YY_BREAK   YY_BREAK
 case 41:  case 62:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 267 "loader.l"  #line 388 "loader.l"
 {op->y = IVAL; op->oy= op->y; }  {op->y = IVAL; op->oy= op->y; }
  YY_BREAK   YY_BREAK
 case 42:  case 63:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 268 "loader.l"  #line 389 "loader.l"
 op->nrof= atol(yval());  op->nrof= atol(yval());
  YY_BREAK   YY_BREAK
 case 43:  case 64:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 269 "loader.l"  #line 390 "loader.l"
 op->level = IVAL;  op->level = IVAL;
  YY_BREAK   YY_BREAK
 case 44:  case 65:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 270 "loader.l"  #line 391 "loader.l"
 op->direction = IVAL;  op->direction = IVAL;
  YY_BREAK   YY_BREAK
 case 45:  case 66:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 271 "loader.l"  #line 392 "loader.l"
 op->type = IVAL;  op->type = IVAL;
  YY_BREAK   YY_BREAK
 case 46:  case 67:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 272 "loader.l"  #line 393 "loader.l"
 op->material = IVAL;  op->material = IVAL;
  YY_BREAK   YY_BREAK
 case 47:  case 68:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 273 "loader.l"  #line 394 "loader.l"
 op->value = IVAL;  op->value = IVAL;
  YY_BREAK   YY_BREAK
 case 48:  case 69:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 274 "loader.l"  #line 395 "loader.l"
 op->weight = atol(yval());  op->weight = atol(yval());
  YY_BREAK   YY_BREAK
 case 49:  case 70:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 275 "loader.l"  #line 396 "loader.l"
 op->carrying = atol(yval());  op->carrying = atol(yval());
  YY_BREAK   YY_BREAK
 case 50:  case 71:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 276 "loader.l"  #line 397 "loader.l"
 op->attacktype = IVAL;  op->attacktype = IVAL;
  YY_BREAK   YY_BREAK
 case 51:  case 72:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 277 "loader.l"  #line 398 "loader.l"
 op->path_attuned = IVAL;  op->path_attuned = IVAL;
  YY_BREAK   YY_BREAK
 case 52:  case 73:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 278 "loader.l"  #line 399 "loader.l"
 op->path_repelled = IVAL;  op->path_repelled = IVAL;
  YY_BREAK   YY_BREAK
 case 53:  case 74:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 279 "loader.l"  #line 400 "loader.l"
 op->path_denied = IVAL;  op->path_denied = IVAL;
  YY_BREAK   YY_BREAK
 case 54:  case 75:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 280 "loader.l"  #line 401 "loader.l"
 op->invisible = IVAL;  op->invisible = IVAL;
  YY_BREAK   YY_BREAK
 case 55:  case 76:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 281 "loader.l"  #line 402 "loader.l"
 op->magic = IVAL;  op->magic = IVAL;
  YY_BREAK   YY_BREAK
 case 56:  case 77:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 282 "loader.l"  #line 403 "loader.l"
 op->state = IVAL;  op->state = IVAL;
  YY_BREAK   YY_BREAK
 case 57:  case 78:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 283 "loader.l"  #line 404 "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 79:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 284 "loader.l"  #line 405 "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 80:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 285 "loader.l"  #line 406 "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 81:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 286 "loader.l"  #line 407 "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 82:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 287 "loader.l"  #line 408 "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 83:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 288 "loader.l"  #line 409 "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 84:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 289 "loader.l"  #line 410 "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 85:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 290 "loader.l"  #line 411 "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 86:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 291 "loader.l"  #line 412 "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 87:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 292 "loader.l"  #line 413 "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 88:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 293 "loader.l"  #line 414 "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 89:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 294 "loader.l"  #line 415 "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 90:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 295 "loader.l"  #line 416 "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 91:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 296 "loader.l"  #line 417 "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 92:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 297 "loader.l"  #line 418 "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 2219
 
Line 2623
  else CLEAR_FLAG(op, FLAG_FRIENDLY);   else CLEAR_FLAG(op, FLAG_FRIENDLY);
      }       }
  YY_BREAK   YY_BREAK
 case 72:  case 93:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 306 "loader.l"  #line 427 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_GENERATOR, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_GENERATOR, IVAL);
  YY_BREAK   YY_BREAK
 case 73:  case 94:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 307 "loader.l"  #line 428 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_THROWN, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_THROWN, IVAL);
  YY_BREAK   YY_BREAK
 case 74:  case 95:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 308 "loader.l"  #line 429 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_AUTO_APPLY, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_AUTO_APPLY, IVAL);
  YY_BREAK   YY_BREAK
 case 75:  case 96:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 309 "loader.l"  #line 430 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_TREASURE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_TREASURE, IVAL);
  YY_BREAK   YY_BREAK
 case 76:  case 97:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 310 "loader.l"  #line 431 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_APPLY_ONCE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_APPLY_ONCE, IVAL);
  YY_BREAK   YY_BREAK
 case 77:  case 98:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 311 "loader.l"  #line 432 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SEE_INVISIBLE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SEE_INVISIBLE, IVAL);
  YY_BREAK   YY_BREAK
 case 78:  case 99:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 312 "loader.l"  #line 433 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CAN_ROLL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CAN_ROLL, IVAL);
  YY_BREAK   YY_BREAK
 case 79:  case 100:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 313 "loader.l"  #line 434 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_TURNABLE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_TURNABLE, IVAL);
  YY_BREAK   YY_BREAK
 case 80:  case 101:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 314 "loader.l"  #line 435 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_USED_UP, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_USED_UP, IVAL);
  YY_BREAK   YY_BREAK
 case 81:  case 102:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 315 "loader.l"  #line 436 "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 2274
 
Line 2678
  else CLEAR_FLAG(op, FLAG_IDENTIFIED);   else CLEAR_FLAG(op, FLAG_IDENTIFIED);
      }       }
  YY_BREAK   YY_BREAK
 case 82:  case 103:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 321 "loader.l"  #line 442 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_REFLECTING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_REFLECTING, IVAL);
  YY_BREAK   YY_BREAK
 case 83:  case 104:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 322 "loader.l"  #line 443 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CHANGING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CHANGING, IVAL);
  YY_BREAK   YY_BREAK
 case 84:  case 105:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 323 "loader.l"  #line 444 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SPLITTING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SPLITTING, IVAL);
  YY_BREAK   YY_BREAK
 case 85:  case 106:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 324 "loader.l"  #line 445 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_HITBACK, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_HITBACK, IVAL);
  YY_BREAK   YY_BREAK
 case 86:  case 107:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 325 "loader.l"  #line 446 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_STARTEQUIP, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_STARTEQUIP, IVAL);
  YY_BREAK   YY_BREAK
 case 87:  case 108:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 326 "loader.l"  #line 447 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_BLOCKSVIEW, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_BLOCKSVIEW, IVAL);
  YY_BREAK   YY_BREAK
 case 88:  case 109:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 327 "loader.l"  #line 448 "loader.l"
 op->arch->editable = IVAL;  op->arch->editable = IVAL;
  YY_BREAK   YY_BREAK
 case 89:  case 110:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 328 "loader.l"  #line 449 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_UNDEAD, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_UNDEAD, IVAL);
  YY_BREAK   YY_BREAK
 case 90:  case 111:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 329 "loader.l"  #line 450 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SCARED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SCARED, IVAL);
  YY_BREAK   YY_BREAK
 case 91:  case 112:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 330 "loader.l"  #line 451 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_UNAGGRESSIVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_UNAGGRESSIVE, IVAL);
  YY_BREAK   YY_BREAK
 case 92:  case 113:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 331 "loader.l"  #line 452 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_REFL_MISSILE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_REFL_MISSILE, IVAL);
  YY_BREAK   YY_BREAK
 case 93:  case 114:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 332 "loader.l"  #line 453 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_REFL_SPELL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_REFL_SPELL, IVAL);
  YY_BREAK   YY_BREAK
 case 94:  case 115:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 333 "loader.l"  #line 454 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_MAGIC, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_MAGIC, IVAL);
  YY_BREAK   YY_BREAK
 case 95:  case 116:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 334 "loader.l"  #line 455 "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 2353
 
Line 2757
  }   }
      }       }
  YY_BREAK   YY_BREAK
 case 96:  case 117:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 344 "loader.l"  #line 465 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_WAS_WIZ, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_WAS_WIZ, IVAL);
  YY_BREAK   YY_BREAK
 case 97:  case 118:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 345 "loader.l"  #line 466 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_FIX_PLAYER, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_FIX_PLAYER, IVAL);
  YY_BREAK   YY_BREAK
 case 98:  case 119:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 346 "loader.l"  #line 467 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_TEAR_DOWN, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_TEAR_DOWN, IVAL);
  YY_BREAK   YY_BREAK
 case 99:  case 120:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 347 "loader.l"  #line 468 "loader.l"
 op->stats.luck = IVAL;  op->stats.luck = IVAL;
  YY_BREAK   YY_BREAK
 case 100:  case 121:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 348 "loader.l"  #line 469 "loader.l"
 op->run_away = IVAL;  op->run_away = IVAL;
  YY_BREAK   YY_BREAK
 case 101:  case 122:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 349 "loader.l"  #line 470 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_PASS_THRU, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_PASS_THRU, IVAL);
  YY_BREAK   YY_BREAK
 case 102:  case 123:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 350 "loader.l"  #line 471 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CAN_PASS_THRU, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CAN_PASS_THRU, IVAL);
  YY_BREAK   YY_BREAK
 case 103:  case 124:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 351 "loader.l"  #line 472 "loader.l"
 op->pick_up = IVAL;  op->pick_up = IVAL;
  YY_BREAK   YY_BREAK
 case 104:  case 125:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 352 "loader.l"  #line 473 "loader.l"
 op->anim_speed = IVAL;  op->anim_speed = IVAL;
  YY_BREAK   YY_BREAK
 case 105:  case 126:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 353 "loader.l"  #line 474 "loader.l"
 op->weight_limit = IVAL;  op->weight_limit = IVAL;
  YY_BREAK   YY_BREAK
 case 106:  case 127:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 354 "loader.l"  #line 475 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_DROP, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_DROP, IVAL);
  YY_BREAK   YY_BREAK
 case 107:  case 128:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 355 "loader.l"  #line 476 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_PRETEXT, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_PRETEXT, IVAL);
  YY_BREAK   YY_BREAK
 case 108:  case 129:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 356 "loader.l"  #line 477 "loader.l"
 op->will_apply = IVAL;  op->will_apply = IVAL;
  YY_BREAK   YY_BREAK
 case 109:  case 130:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 357 "loader.l"  #line 478 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_RANDOM_MOVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_RANDOM_MOVE, IVAL);
  YY_BREAK   YY_BREAK
 case 110:  case 131:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 358 "loader.l"  #line 479 "loader.l"
 op->can_apply = IVAL;  op->can_apply = IVAL;
  YY_BREAK   YY_BREAK
 case 111:  case 132:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 359 "loader.l"  #line 480 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CAST_SPELL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CAST_SPELL, IVAL);
  YY_BREAK   YY_BREAK
 case 112:  case 133:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 360 "loader.l"  #line 481 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_SCROLL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_SCROLL, IVAL);
  YY_BREAK   YY_BREAK
 case 113:  case 134:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 361 "loader.l"  #line 482 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_WAND, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_WAND, IVAL);
  YY_BREAK   YY_BREAK
 case 114:  case 135:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 362 "loader.l"  #line 483 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_BOW, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_BOW, IVAL);
  YY_BREAK   YY_BREAK
 case 115:  case 136:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 363 "loader.l"  #line 484 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_ARMOUR, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_ARMOUR, IVAL);
  YY_BREAK   YY_BREAK
 case 116:  case 137:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 364 "loader.l"  #line 485 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_WEAPON, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_WEAPON, IVAL);
  YY_BREAK   YY_BREAK
 case 117:  case 138:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 365 "loader.l"  #line 486 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_RING, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_RING, IVAL);
  YY_BREAK   YY_BREAK
 case 118:  case 139:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 366 "loader.l"  #line 487 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_WAND, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_WAND, IVAL);
  YY_BREAK   YY_BREAK
 case 119:  case 140:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 367 "loader.l"  #line 488 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_BOW, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_BOW, IVAL);
  YY_BREAK   YY_BREAK
 case 120:  case 141:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 368 "loader.l"  #line 489 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_XRAYS, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_XRAYS, IVAL);
  YY_BREAK   YY_BREAK
 case 121:  case 142:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 369 "loader.l"  #line 490 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_FLOOR, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_FLOOR, IVAL);
  YY_BREAK   YY_BREAK
 case 122:  case 143:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 370 "loader.l"  #line 491 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_LIFESAVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_LIFESAVE, IVAL);
  YY_BREAK   YY_BREAK
 case 123:  case 144:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 371 "loader.l"  #line 492 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_STRENGTH, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_STRENGTH, IVAL);
  YY_BREAK   YY_BREAK
 case 124:  case 145:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 372 "loader.l"  #line 493 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SLEEP, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SLEEP, IVAL);
  YY_BREAK   YY_BREAK
 case 125:  case 146:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 373 "loader.l"  #line 494 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_STAND_STILL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_STAND_STILL, IVAL);
  YY_BREAK   YY_BREAK
 case 126:  case 147:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 374 "loader.l"  #line 495 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_RANDOM_MOVE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_RANDOM_MOVE, IVAL);
  YY_BREAK   YY_BREAK
 case 127:  case 148:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 375 "loader.l"  #line 496 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_ONLY_ATTACK, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_ONLY_ATTACK, IVAL);
  YY_BREAK   YY_BREAK
 /* armour is loaded for compatiblity reasons */  /* armour is loaded for compatiblity reasons */
 case 128:  case 149:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 378 "loader.l"  #line 499 "loader.l"
 SET_RESIST(op, ATNR_PHYSICAL, IVAL);  SET_RESIST(op, ATNR_PHYSICAL, IVAL);
  YY_BREAK   YY_BREAK
 /* Start of various attacktypes */  /* Start of various attacktypes */
 case 129:  case 150:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 380 "loader.l"  #line 501 "loader.l"
 SET_RESIST(op, ATNR_PHYSICAL, IVAL);  SET_RESIST(op, ATNR_PHYSICAL, IVAL);
  YY_BREAK   YY_BREAK
 case 130:  case 151:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 381 "loader.l"  #line 502 "loader.l"
 SET_RESIST(op, ATNR_MAGIC, IVAL);  SET_RESIST(op, ATNR_MAGIC, IVAL);
  YY_BREAK   YY_BREAK
 case 131:  case 152:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 382 "loader.l"  #line 503 "loader.l"
 SET_RESIST(op, ATNR_FIRE, IVAL);  SET_RESIST(op, ATNR_FIRE, IVAL);
  YY_BREAK   YY_BREAK
 case 132:  case 153:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 383 "loader.l"  #line 504 "loader.l"
 SET_RESIST(op, ATNR_ELECTRICITY, IVAL);  SET_RESIST(op, ATNR_ELECTRICITY, IVAL);
  YY_BREAK   YY_BREAK
 case 133:  case 154:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 384 "loader.l"  #line 505 "loader.l"
 SET_RESIST(op, ATNR_COLD, IVAL);  SET_RESIST(op, ATNR_COLD, IVAL);
  YY_BREAK   YY_BREAK
 case 134:  case 155:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 385 "loader.l"  #line 506 "loader.l"
 SET_RESIST(op, ATNR_CONFUSION, IVAL);  SET_RESIST(op, ATNR_CONFUSION, IVAL);
  YY_BREAK   YY_BREAK
 case 135:  case 156:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 386 "loader.l"  #line 507 "loader.l"
 SET_RESIST(op, ATNR_ACID, IVAL);  SET_RESIST(op, ATNR_ACID, IVAL);
  YY_BREAK   YY_BREAK
 case 136:  case 157:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 387 "loader.l"  #line 508 "loader.l"
 SET_RESIST(op, ATNR_DRAIN, IVAL);  SET_RESIST(op, ATNR_DRAIN, IVAL);
  YY_BREAK   YY_BREAK
 case 137:  case 158:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 388 "loader.l"  #line 509 "loader.l"
 SET_RESIST(op, ATNR_WEAPONMAGIC, IVAL);  SET_RESIST(op, ATNR_WEAPONMAGIC, IVAL);
  YY_BREAK   YY_BREAK
 case 138:  case 159:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 389 "loader.l"  #line 510 "loader.l"
 SET_RESIST(op, ATNR_GHOSTHIT, IVAL);  SET_RESIST(op, ATNR_GHOSTHIT, IVAL);
  YY_BREAK   YY_BREAK
 case 139:  case 160:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 390 "loader.l"  #line 511 "loader.l"
 SET_RESIST(op, ATNR_POISON, IVAL);  SET_RESIST(op, ATNR_POISON, IVAL);
  YY_BREAK   YY_BREAK
 case 140:  case 161:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 391 "loader.l"  #line 512 "loader.l"
 SET_RESIST(op, ATNR_SLOW, IVAL);  SET_RESIST(op, ATNR_SLOW, IVAL);
  YY_BREAK   YY_BREAK
 case 141:  case 162:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 392 "loader.l"  #line 513 "loader.l"
 SET_RESIST(op, ATNR_PARALYZE, IVAL);  SET_RESIST(op, ATNR_PARALYZE, IVAL);
  YY_BREAK   YY_BREAK
 case 142:  case 163:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 393 "loader.l"  #line 514 "loader.l"
 SET_RESIST(op, ATNR_TURN_UNDEAD, IVAL);  SET_RESIST(op, ATNR_TURN_UNDEAD, IVAL);
  YY_BREAK   YY_BREAK
 case 143:  case 164:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 394 "loader.l"  #line 515 "loader.l"
 SET_RESIST(op, ATNR_FEAR, IVAL);  SET_RESIST(op, ATNR_FEAR, IVAL);
  YY_BREAK   YY_BREAK
 case 144:  case 165:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 395 "loader.l"  #line 516 "loader.l"
 SET_RESIST(op, ATNR_CANCELLATION, IVAL);  SET_RESIST(op, ATNR_CANCELLATION, IVAL);
  YY_BREAK   YY_BREAK
 case 145:  case 166:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 396 "loader.l"  #line 517 "loader.l"
 SET_RESIST(op, ATNR_DEPLETE, IVAL);  SET_RESIST(op, ATNR_DEPLETE, IVAL);
  YY_BREAK   YY_BREAK
 case 146:  case 167:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 397 "loader.l"  #line 518 "loader.l"
 SET_RESIST(op, ATNR_DEATH, IVAL);  SET_RESIST(op, ATNR_DEATH, IVAL);
  YY_BREAK   YY_BREAK
 case 147:  case 168:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 398 "loader.l"  #line 519 "loader.l"
 SET_RESIST(op, ATNR_CHAOS, IVAL);  SET_RESIST(op, ATNR_CHAOS, IVAL);
  YY_BREAK   YY_BREAK
 case 148:  case 169:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 399 "loader.l"  #line 520 "loader.l"
 SET_RESIST(op, ATNR_COUNTERSPELL, IVAL);  SET_RESIST(op, ATNR_COUNTERSPELL, IVAL);
  YY_BREAK   YY_BREAK
 case 149:  case 170:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 400 "loader.l"  #line 521 "loader.l"
 SET_RESIST(op, ATNR_GODPOWER, IVAL);  SET_RESIST(op, ATNR_GODPOWER, IVAL);
  YY_BREAK   YY_BREAK
 case 150:  case 171:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 401 "loader.l"  #line 522 "loader.l"
 SET_RESIST(op, ATNR_HOLYWORD, IVAL);  SET_RESIST(op, ATNR_HOLYWORD, IVAL);
  YY_BREAK   YY_BREAK
 case 151:  case 172:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 402 "loader.l"  #line 523 "loader.l"
 SET_RESIST(op, ATNR_BLIND, IVAL);  SET_RESIST(op, ATNR_BLIND, IVAL);
  YY_BREAK   YY_BREAK
 case 152:  case 173:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 403 "loader.l"  #line 524 "loader.l"
 SET_RESIST(op, ATNR_INTERNAL, IVAL);  SET_RESIST(op, ATNR_INTERNAL, IVAL);
  YY_BREAK   YY_BREAK
 /* Old style resistances */  /* Old style resistances */
 case 153:  case 174:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 406 "loader.l"  #line 527 "loader.l"
 set_protection(op, IVAL, RESIST_IMMUNE);  set_protection(op, IVAL, RESIST_IMMUNE);
  YY_BREAK   YY_BREAK
 case 154:  case 175:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 407 "loader.l"  #line 528 "loader.l"
 set_protection(op, IVAL, RESIST_PROT);  set_protection(op, IVAL, RESIST_PROT);
  YY_BREAK   YY_BREAK
 case 155:  case 176:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 408 "loader.l"  #line 529 "loader.l"
 set_protection(op, IVAL, RESIST_VULN);  set_protection(op, IVAL, RESIST_VULN);
  YY_BREAK   YY_BREAK
 case 156:  case 177:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 410 "loader.l"  #line 531 "loader.l"
 op->move_type = IVAL;  op->move_type = IVAL;
  YY_BREAK   YY_BREAK
 case 157:  case 178:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 411 "loader.l"  #line 532 "loader.l"
 op->move_status = IVAL;  op->move_status = IVAL;
  YY_BREAK   YY_BREAK
 case 158:  case 179:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 412 "loader.l"  #line 533 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CONFUSED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CONFUSED, IVAL);
  YY_BREAK   YY_BREAK
 case 159:  case 180:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 413 "loader.l"  #line 534 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_STEALTH, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_STEALTH, IVAL);
  YY_BREAK   YY_BREAK
 case 160:  case 181:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 414 "loader.l"  #line 535 "loader.l"
 add_button_link(op, op->map, IVAL);  add_button_link(op, op->map, IVAL);
  YY_BREAK   YY_BREAK
 case 161:  case 182:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 415 "loader.l"  #line 536 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CURSED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CURSED, IVAL);
  YY_BREAK   YY_BREAK
 case 162:  case 183:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 416 "loader.l"  #line 537 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_DAMNED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_DAMNED, IVAL);
  YY_BREAK   YY_BREAK
 case 163:  case 184:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 417 "loader.l"  #line 538 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SEE_ANYWHERE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SEE_ANYWHERE, IVAL);
  YY_BREAK   YY_BREAK
 case 164:  case 185:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 418 "loader.l"  #line 539 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_KNOWN_MAGICAL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_KNOWN_MAGICAL, IVAL);
  YY_BREAK   YY_BREAK
 case 165:  case 186:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 419 "loader.l"  #line 540 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_KNOWN_CURSED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_KNOWN_CURSED, IVAL);
  YY_BREAK   YY_BREAK
 case 166:  case 187:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 420 "loader.l"  #line 541 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_CAN_USE_SKILL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_CAN_USE_SKILL, IVAL);
  YY_BREAK   YY_BREAK
 case 167:  case 188:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 421 "loader.l"  #line 542 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_BEEN_APPLIED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_BEEN_APPLIED, IVAL);
  YY_BREAK   YY_BREAK
 case 168:  case 189:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 422 "loader.l"  #line 543 "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);
      }       }
  YY_BREAK   YY_BREAK
 case 169:  case 190:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 426 "loader.l"  #line 547 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_ROD, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_ROD, IVAL);
  YY_BREAK   YY_BREAK
 case 170:  case 191:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 427 "loader.l"  #line 548 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_ROD, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_ROD, IVAL);
  YY_BREAK   YY_BREAK
 case 171:  case 192:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 428 "loader.l"  #line 549 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_HORN, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_HORN, IVAL);
  YY_BREAK   YY_BREAK
 case 172:  case 193:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 429 "loader.l"  #line 550 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_USE_HORN, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_USE_HORN, IVAL);
  YY_BREAK   YY_BREAK
 case 173:  case 194:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 430 "loader.l"  #line 551 "loader.l"
 op->expmul = FVAL;  op->expmul = FVAL;
  YY_BREAK   YY_BREAK
 case 174:  case 195:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 431 "loader.l"  #line 552 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_UNIQUE, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_UNIQUE, IVAL);
  YY_BREAK   YY_BREAK
 case 175:  case 196:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 432 "loader.l"  #line 553 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_MAKE_INVIS, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_MAKE_INVIS, IVAL);
  YY_BREAK   YY_BREAK
 case 176:  case 197:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 433 "loader.l"  #line 554 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_INV_LOCKED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_INV_LOCKED, IVAL);
  YY_BREAK   YY_BREAK
 case 177:  case 198:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 434 "loader.l"  #line 555 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_WOODED, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_WOODED, IVAL);
  YY_BREAK   YY_BREAK
 case 178:  case 199:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 435 "loader.l"  #line 556 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_HILLY, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_HILLY, IVAL);
  YY_BREAK   YY_BREAK
 case 179:  case 200:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 436 "loader.l"  #line 557 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_SKILL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_SKILL, IVAL);
  YY_BREAK   YY_BREAK
 case 180:  case 201:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 437 "loader.l"  #line 558 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_READY_WEAPON, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_READY_WEAPON, IVAL);
  YY_BREAK   YY_BREAK
 case 181:  case 202:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 438 "loader.l"  #line 559 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_SKILL_IDENT, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_SKILL_IDENT, IVAL);
  YY_BREAK   YY_BREAK
 case 182:  case 203:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 439 "loader.l"  #line 560 "loader.l"
 op->glow_radius = IVAL;  op->glow_radius = IVAL;
  YY_BREAK   YY_BREAK
 case 183:  case 204:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 440 "loader.l"  #line 561 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_BLIND, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_BLIND, IVAL);
  YY_BREAK   YY_BREAK
 case 184:  case 205:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 441 "loader.l"  #line 562 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_SEE_IN_DARK, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_SEE_IN_DARK, IVAL);
  YY_BREAK   YY_BREAK
 case 185:  case 206:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 442 "loader.l"  #line 563 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_IS_CAULDRON, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_IS_CAULDRON, IVAL);
  YY_BREAK   YY_BREAK
 case 186:  case 207:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 443 "loader.l"  #line 564 "loader.l"
 op->randomitems = find_treasurelist(yval());  op->randomitems = find_treasurelist(yval());
  YY_BREAK   YY_BREAK
 case 187:  case 208:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 444 "loader.l"  #line 565 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_DUST, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_DUST, IVAL);
  YY_BREAK   YY_BREAK
 case 188:  case 209:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 445 "loader.l"  #line 566 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_NO_STEAL, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_NO_STEAL, IVAL);
  YY_BREAK   YY_BREAK
 case 189:  case 210:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 446 "loader.l"  #line 567 "loader.l"
 SET_OR_CLEAR_FLAG(op, FLAG_ONE_HIT, IVAL);  SET_OR_CLEAR_FLAG(op, FLAG_ONE_HIT, IVAL);
  YY_BREAK   YY_BREAK
 case 190:  case 211:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 448 "loader.l"  #line 569 "loader.l"
 { /* Some archetypes have these values in them */ }  { /* Some archetypes have these values in them */ }
  YY_BREAK   YY_BREAK
 case 191:  case 212:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 449 "loader.l"  #line 570 "loader.l"
 { /* Probably the pupland archetypes - I imagined */ }  { /* Probably the pupland archetypes - I imagined */ }
  YY_BREAK   YY_BREAK
 case 192:  case 213:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 450 "loader.l"  #line 571 "loader.l"
 { /* That these are for the new combat code */ }  { /* That these are for the new combat code */ }
  YY_BREAK   YY_BREAK
 case 193:  case 214:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 451 "loader.l"  #line 572 "loader.l"
 { /* just ignore for now */ }  { /* just ignore for now */ }
  YY_BREAK   YY_BREAK
 case 194:  case 215:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 452 "loader.l"  #line 573 "loader.l"
 { }  { }
  YY_BREAK   YY_BREAK
 case 195:  case 216:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 454 "loader.l"  #line 574 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (load) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->script_load, yv);
                                                           LOG(llevError, "Script name is:");
                                                           LOG(llevError, op->script_load);
                                                           LOG(llevError, "\n");
                                                           /*guile_run(op->script_load);*/
                                                   };
        }
    YY_BREAK
   case 217:
   YY_RULE_SETUP
   #line 586 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (apply) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->script_apply, yv);
                                                   };
        }
    YY_BREAK
   case 218:
   YY_RULE_SETUP
   #line 594 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (say) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->script_say, yv);
                                                   };
        }
    YY_BREAK
   case 219:
   YY_RULE_SETUP
   #line 602 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (drop) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->script_drop, yv);
                                                   };
        }
    YY_BREAK
   case 220:
   YY_RULE_SETUP
   #line 610 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (trigger) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->script_trigger, yv);
                                                   };
        }
    YY_BREAK
   case 221:
   YY_RULE_SETUP
   #line 618 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (time) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->script_time, yv);
                                                   };
        }
    YY_BREAK
   case 222:
   YY_RULE_SETUP
   #line 626 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (attack) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->script_attack, yv);
                                                   };
        }
    YY_BREAK
   case 223:
   YY_RULE_SETUP
   #line 634 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (throw) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->script_throw, yv);
                                                   };
        }
    YY_BREAK
   case 224:
   YY_RULE_SETUP
   #line 642 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (stop) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->script_stop, yv);
                                                   };
        }
    YY_BREAK
   case 225:
   YY_RULE_SETUP
   #line 650 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (death) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->script_death, yv);
                                                   };
        }
    YY_BREAK
   case 226:
   YY_RULE_SETUP
   #line 658 "loader.l"
   { char *yv=yval();
   
    if (*yv=='\0') LOG(llevError,"Script (current weapon) without val\n");
    else
                                                   {
                                                           FREE_AND_COPY(op->current_weapon_script, yv);
                                                   };
        }
    YY_BREAK
   case 227:
   YY_RULE_SETUP
   #line 667 "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 196:  case 228:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 455 "loader.l"  #line 668 "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):
 #line 457 "loader.l"  case YY_STATE_EOF(SCRIPT):
   #line 670 "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 197:  case 229:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 459 "loader.l"  #line 672 "loader.l"
 { yyerror( "Unrecognized string"); lex_error= -1; }  { yyerror( "Unrecognized string"); lex_error= -1; }
  YY_BREAK   YY_BREAK
 case 198:  case 230:
 YY_RULE_SETUP  YY_RULE_SETUP
 #line 460 "loader.l"  #line 673 "loader.l"
 ECHO;  ECHO;
  YY_BREAK   YY_BREAK
   
Line 3170
 
Line 3711
  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 >= 1707 )   if ( yy_current_state >= 1951 )
  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 3205
 
Line 3746
  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 >= 1707 )   if ( yy_current_state >= 1951 )
  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 == 1706);   yy_is_jam = (yy_current_state == 1950);
   
  return yy_is_jam ? 0 : yy_current_state;   return yy_is_jam ? 0 : yy_current_state;
  }   }
Line 3765
 
Line 4306
  return 0;   return 0;
  }   }
 #endif  #endif
 #line 460 "loader.l"  #line 673 "loader.l"
   
   
   
Line 3850
 
Line 4391
     }      }
   
     retval=lex_load(op, map_flags);      retval=lex_load(op, map_flags);
       if (op->current_weapon_script != NULL)
       {
           op->current_weapon = find_best_weapon_used_match(op, op->current_weapon_script);
           LOG(llevDebug, "CurrentWeapon Loaded !\n");
       };
   
 /*    LOG(llevDebug," load completed, object=%s\n",op->name);*/  /*    LOG(llevDebug," load completed, object=%s\n",op->name);*/
     return retval;      return retval;
 }  }
Line 3990
 
Line 4537
     strcat(buf,op->msg);      strcat(buf,op->msg);
     strcat(buf,"endmsg\n");      strcat(buf,"endmsg\n");
   }    }
     if(op->script_str_load && op->script_str_load!=op2->script_str_load) {
       strcat(buf,"start_script_load\n");
       strcat(buf,op->script_str_load);
       strcat(buf,"end_script_load\n");
     }
     if(op->script_str_apply && op->script_str_apply!=op2->script_str_apply) {
       strcat(buf,"start_script_apply\n");
       strcat(buf,op->script_str_apply);
       strcat(buf,"end_script_apply\n");
     }
     if(op->script_str_say && op->script_str_say!=op2->script_str_say) {
       strcat(buf,"start_script_say\n");
       strcat(buf,op->script_str_say);
       strcat(buf,"end_script_say\n");
     }
     if(op->script_str_trigger && op->script_str_trigger!=op2->script_str_trigger) {
       strcat(buf,"start_script_trigger\n");
       strcat(buf,op->script_str_trigger);
       strcat(buf,"end_script_trigger\n");
     }
     if(op->script_str_time && op->script_str_time!=op2->script_str_time) {
       strcat(buf,"start_script_time\n");
       strcat(buf,op->script_str_time);
       strcat(buf,"end_script_time\n");
     }
     if(op->script_str_attack && op->script_str_attack!=op2->script_str_attack) {
       strcat(buf,"start_script_attack\n");
       strcat(buf,op->script_str_attack);
       strcat(buf,"end_script_attack\n");
     }
     if(op->script_str_drop && op->script_str_drop!=op2->script_str_drop) {
       strcat(buf,"start_script_drop\n");
       strcat(buf,op->script_str_drop);
       strcat(buf,"end_script_drop\n");
     }
     if(op->script_str_throw && op->script_str_throw!=op2->script_str_throw) {
       strcat(buf,"start_script_throw\n");
       strcat(buf,op->script_str_throw);
       strcat(buf,"end_script_throw\n");
     }
     if(op->script_str_stop && op->script_str_stop!=op2->script_str_stop) {
       strcat(buf,"start_script_stop\n");
       strcat(buf,op->script_str_stop);
       strcat(buf,"end_script_stop\n");
     }
     if(op->script_str_death && op->script_str_death!=op2->script_str_death) {
       strcat(buf,"start_script_death\n");
       strcat(buf,op->script_str_death);
       strcat(buf,"end_script_death\n");
     }
   if(op->other_arch!=op2->other_arch&&op->other_arch!=NULL &&     if(op->other_arch!=op2->other_arch&&op->other_arch!=NULL &&
      op->other_arch->name) {       op->other_arch->name) {
     sprintf(buf2,"other_arch %s\n",op->other_arch->name);      sprintf(buf2,"other_arch %s\n",op->other_arch->name);
Line 4145
 
Line 4742
   if (op->will_apply!=op2->will_apply)    if (op->will_apply!=op2->will_apply)
     save_long(buf,variable_const[V_WILL_APPLY],op->will_apply);      save_long(buf,variable_const[V_WILL_APPLY],op->will_apply);
   
   /* GROS: Handle the various scripting event flags */
     if (op->script_load!=op2->script_load){
       sprintf(buf2,"script_load %s\n",(op->script_load));
       strcat(buf,buf2);
     };
     if (op->script_apply!=op2->script_apply){
       sprintf(buf2,"script_apply %s\n",(op->script_apply));
       strcat(buf,buf2);
     };
     if (op->script_say!=op2->script_say){
       sprintf(buf2,"script_say %s\n",(op->script_say));
       strcat(buf,buf2);
     };
     if (op->script_time!=op2->script_time){
       sprintf(buf2,"script_time %s\n",(op->script_time));
       strcat(buf,buf2);
     };
     if (op->script_trigger!=op2->script_trigger){
       sprintf(buf2,"script_trigger %s\n",(op->script_trigger));
       strcat(buf,buf2);
     };
     if (op->script_attack!=op2->script_attack){
       sprintf(buf2,"script_attack %s\n",(op->script_attack));
       strcat(buf,buf2);
     };
     if (op->script_drop!=op2->script_drop){
       sprintf(buf2,"script_drop %s\n",(op->script_drop));
       strcat(buf,buf2);
     };
     if (op->script_throw!=op2->script_throw){
       sprintf(buf2,"script_throw %s\n",(op->script_throw));
       strcat(buf,buf2);
     };
     if (op->script_stop!=op2->script_stop){
       sprintf(buf2,"script_stop %s\n",(op->script_stop));
       strcat(buf,buf2);
     };
     if (op->script_death!=op2->script_death){
       sprintf(buf2,"script_death %s\n",(op->script_death));
       strcat(buf,buf2);
     };
     if (op->current_weapon_script!=op2->current_weapon_script){
       sprintf(buf2,"current_weapon_script %s\n",(op->current_weapon_script));
       strcat(buf,buf2);
     };
   
 /* Mol(@meryl.csd.uu.se) 921108  Handle can_apply */  /* Mol(@meryl.csd.uu.se) 921108  Handle can_apply */
   if (op->can_apply!=op2->can_apply)    if (op->can_apply!=op2->can_apply)
     save_long(buf,variable_const[V_CAN_APPLY],op->can_apply);      save_long(buf,variable_const[V_CAN_APPLY],op->can_apply);


Legend:
line(s) removed in v.1.12 
line(s) changed
 line(s) added in v.1.13

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