Difference for common/loader.c from version 1.48 to 1.49


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


Legend:
line(s) removed in v.1.48 
line(s) changed
 line(s) added in v.1.49

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